1
1
---
2
2
layout : news_post
3
- title : " Ruby 3.4.0 preview2 Released "
3
+ title : " Ruby 3.4.0- preview2 릴리스 "
4
4
author : " naruse"
5
- translator :
5
+ translator : " shia "
6
6
date : 2024-10-07 00:00:00 +0000
7
- lang : en
7
+ lang : ko
8
8
---
9
9
10
10
{% assign release = site.data.releases | where: "version", "3.4.0-preview2" | first %}
11
- We are pleased to announce the release of Ruby {{ release.version }}.
11
+ Ruby {{ release.version }} 릴리스를 알리게 되어 기쁩니다 .
12
12
13
13
## Prism
14
14
15
- Switch the default parser from parse.y to Prism . [[ Feature #20564 ]]
15
+ parse.y에서 Prism으로 기본 파서를 변경했습니다 . [[ Feature #20564 ]]
16
16
17
- ## Language changes
17
+ ## 언어 변경
18
18
19
- * String literals in files without a ` frozen_string_literal ` comment now emit a deprecation warning
20
- when they are mutated .
21
- These warnings can be enabled with ` -W:deprecated ` or by setting ` Warning[:deprecated] = true ` .
22
- To disable this change, you can run Ruby with the ` --disable-frozen-string-literal `
23
- command line argument . [[ Feature #20205 ]]
19
+ * 파일에 ` frozen_string_literal ` 주석이 없을 때, 문자열 리터럴이 변경되면
20
+ 폐기 예정 경고를 출력합니다 .
21
+ 이 경고는 ` -W:deprecated ` 나 ` Warning[:deprecated] = true ` 설정을 통해 활성화할 수 있습니다 .
22
+ 이 변경을 무효화하고 싶다면 Ruby를 실행할 때 ` --disable-frozen-string-literal ` 커맨드라인 인수를
23
+ 사용하세요 . [[ Feature #20205 ]]
24
24
25
- * ` it ` is added to reference a block parameter . [[ Feature #18980 ]]
25
+ * 블록 인자를 가리키는 ` it ` 이 추가됩니다 . [[ Feature #18980 ]]
26
26
27
- * Keyword splatting ` nil ` when calling methods is now supported .
28
- ` **nil ` is treated similarly to ` **{} ` , passing no keywords ,
29
- and not calling any conversion methods. [[ Bug #20064 ]]
27
+ * 메서드 호출 시에 ` nil ` 에 키워드 스플랫을 지원합니다 .
28
+ ` **nil ` 은 ` **{} ` 와 비슷하게 동작하며, 키워드를 넘기지 않으며 ,
29
+ 어떤 변환 메서드도 호출하지 않습니다. [[ Bug #20064 ]]
30
30
31
- * Block passing is no longer allowed in index. [[ Bug #19918 ]]
31
+ * 블록을 인덱스로 사용할 수 없게 됩니다. [[ Bug #19918 ]]
32
32
33
- * Keyword arguments are no longer allowed in index. [[ Bug #20218 ]]
33
+ * 키워드 인수를 인덱스로 사용할 수 없게 됩니다. [[ Bug #20218 ]]
34
34
35
- ## Core classes updates
35
+ ## 코어 클래스 변경
36
36
37
- Note: We're only listing outstanding class updates .
37
+ 주의: 눈에 띄는 클래스 변경만을 포함합니다 .
38
38
39
39
* Exception
40
40
41
- * ` Exception#set_backtrace ` now accepts an array of ` Thread::Backtrace::Location ` .
42
- ` Kernel#raise ` , ` Thread#raise ` and ` Fiber#raise ` also accept this new format . [[ Feature #13557 ]]
41
+ * Exception#set_backtrace는 이제 ` Thread::Backtrace::Location ` 의 배열을 입력으로 받을 수 있습니다 .
42
+ ` Kernel#raise ` , ` Thread#raise ` 와 ` Fiber#raise ` 도 같은 형식의 입력을 받습니다 . [[ Feature #13557 ]]
43
43
44
44
* Range
45
45
46
- * ` Range#size ` now raises ` TypeError ` if the range is not iterable . [[ Misc #18984 ]]
46
+ * ` Range#size ` 는 이제 범위가 순회 가능하지 않다면 ` TypeError ` 를 던집니다 . [[ Misc #18984 ]]
47
47
48
48
49
49
50
- ## Compatibility issues
50
+ ## 호환성 문제
51
51
52
- Note: Excluding feature bug fixes .
52
+ 주의: 기능 버그 수정은 포함되어 있지 않습니다 .
53
53
54
- * Error messages and backtrace displays have been changed .
55
- * Use a single quote instead of a backtick as a opening quote . [[ Feature #16495 ]]
56
- * Display a class name before a method name (only when the class has a permanent name ). [[ Feature #19117 ]]
57
- * ` Kernel#caller ` , ` Thread::Backtrace::Location ` 's methods, etc. are also changed accordingly .
54
+ * 에러 메시지와 백트레이스의 출력 결과가 변경됩니다 .
55
+ * 인용 시작 부분을 나타내던 백틱 대신 작은 따옴표를 사용합니다 . [[ Feature #16495 ]]
56
+ * 메서드 이름 앞에 클래스 이름을 출력합니다(클래스가 불변하는 이름을 가지고 있다면 ). [[ Feature #19117 ]]
57
+ * ` Kernel#caller ` , ` Thread::Backtrace::Location ` 의 메서드 등도 마찬가지로 변경됩니다 .
58
58
59
59
```
60
60
Old:
@@ -66,42 +66,42 @@ Note: Excluding feature bug fixes.
66
66
from test.rb:2:in '<main>'
67
67
```
68
68
69
- * ` Hash#inspect ` rendering has changed . [[ Bug #20433 ]]
70
- * Symbol keys are displayed using the modern symbol key syntax : ` "{user: 1}" `
71
- * Other keys now have spaces around ` => ` : ` '{"user" => 1}' ` , while previously they didn't : ` '{"user"=>1}' `
69
+ * ` Hash#inspect ` 결과가 변경되었습니다 . [[ Bug #20433 ]]
70
+ * 심볼 키는 최신 심볼 키 구문을 사용하여 표시됩니다. 예시 : ` "{user: 1}" `
71
+ * 다른 키는 ` => ` 주변에 공백이 추가되었습니다. 예시 : ` '{"user" => 1}' ` . 이전에는 그렇지 않았습니다. 예시 : ` '{"user"=>1}' ` .
72
72
73
- ## C API updates
73
+ ## C API 변경
74
74
75
- * ` rb_newobj ` and ` rb_newobj_of ` (and corresponding macros ` RB_NEWOBJ ` , ` RB_NEWOBJ_OF ` , ` NEWOBJ ` , ` NEWOBJ_OF ` ) have been removed . [[ Feature #20265 ]]
76
- * Removed deprecated function ` rb_gc_force_recycle ` . [[ Feature #18290 ]]
75
+ * ` rb_newobj ` 와 ` rb_newobj_of ` (그리고 대응하는 매크로인 ` RB_NEWOBJ ` , ` RB_NEWOBJ_OF ` , ` NEWOBJ ` , ` NEWOBJ_OF ` )가 삭제됩니다 . [[ Feature #20265 ]]
76
+ * 폐기 예정인 ` rb_gc_force_recycle ` 함수가 삭제됩니다 . [[ Feature #18290 ]]
77
77
78
- ## Implementation improvements
78
+ ## 구현 개선
79
79
80
- * ` Array#each ` is rewritten in Ruby for better performance [[ Feature #20182 ]] .
80
+ * ` Array#each ` 를 더 나은 성능을 위해 Ruby로 재작성했습니다. [[ Feature #20182 ]]
81
81
82
- ## Miscellaneous changes
82
+ ## 그 이외의 변경
83
83
84
- * Passing a block to a method which doesn't use the passed block will show
85
- a warning on verbose mode ( ` -w ` ) .
84
+ * 상세 모드( ` -w ` )에서 메서드에 넘긴 블록이 사용되지 않았을 때
85
+ 경고를 출력합니다 .
86
86
[[ Feature #15554 ]]
87
87
88
- * Redefining some core methods that are specially optimized by the interpeter
89
- and JIT like ` String.freeze ` or ` Integer#+ ` now emits a performance class
90
- warning (` -W:performance ` or ` Warning[:performance] = true ` ).
88
+ * ` String.freeze ` 나 ` Integer#+ ` 처럼 인터프리터와 JIT이 특별히 최적화하는
89
+ 몇몇 코어 메서드를 재정의하면 성능 클래스
90
+ 경고 (` -W:performance ` 나 ` Warning[:performance] = true ` )를 출력합니다 .
91
91
[[ Feature #20429 ]]
92
92
93
- See GitHub releases like [ Logger] ( https://github.com/ruby/logger/releases ) or
94
- changelog for details of the default gems or bundled gems .
93
+ 기본 gem 또는 내장 gem에 대한 자세한 내용은 [ Logger] ( https://github.com/ruby/logger/releases ) 와 같은
94
+ GitHub 릴리스 또는 변경 로그에서 확인하세요 .
95
95
96
- See [ NEWS] (https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md)
97
- or [ commit logs ] (https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }})
98
- for more details .
96
+ 더 자세한 내용은 [ NEWS] (https://github.com/ruby/ruby/blob/{{ release.tag }}/NEWS.md)나
97
+ [ 커밋 로그 ] (https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }})를
98
+ 확인해 주세요 .
99
99
100
- With those changes, [ {{ release.stats.files_changed }} files changed , {{ release.stats.insertions }} insertions (+), {{ release.stats.deletions }} deletions (-)] (https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)
101
- since Ruby 3.3.0 !
100
+ 이러한 변경사항에 따라, Ruby 3.3.0 이후로 [ 파일 {{ release.stats.files_changed }}개 수정 , {{ release.stats.insertions }}줄 추가 (+), {{ release.stats.deletions }}줄 삭제 (-)] (https://github.com/ruby/ruby/compare/v3_3_0...{{ release.tag }}#file_bucket)가
101
+ 이루어졌습니다 !
102
102
103
103
104
- ## Download
104
+ ## 다운로드
105
105
106
106
* <{{ release.url.gz }}>
107
107
@@ -124,11 +124,11 @@ since Ruby 3.3.0!
124
124
SHA256: {{ release.sha256.zip }}
125
125
SHA512: {{ release.sha512.zip }}
126
126
127
- ## What is Ruby
127
+ ## Ruby는
128
128
129
- Ruby was first developed by Matz (Yukihiro Matsumoto) in 1993 ,
130
- and is now developed as Open Source. It runs on multiple platforms
131
- and is used all over the world especially for web development .
129
+ Ruby는 1993년에 Matz(마츠모토 유키히로) 씨가 처음 개발했고 ,
130
+ 현재는 오픈 소스로서 개발되고 있습니다. 여러 플랫폼에서 동작하며,
131
+ 특히 웹 개발에서 전 세계적으로 이용되고 있습니다 .
132
132
133
133
[ Feature #13557 ] : https://bugs.ruby-lang.org/issues/13557
134
134
[ Feature #15554 ] : https://bugs.ruby-lang.org/issues/15554
0 commit comments