ruby-next 0.7.0 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/README.md +16 -8
  4. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b3215bbbd87086368ad17287a6bc9b69a3fb6d5d28f3fb5364f2f85eef5a2e2e
4
- data.tar.gz: a35527c354c57dacc97b178aaf182610dbe528e28b509e83191219c98d4647cb
3
+ metadata.gz: f5626ab449756c03ea645d47a3f7349714fa92c5ae9b47b1b397e083ffc860df
4
+ data.tar.gz: c9c5a78f115b45c08975f013dd424aad52a7f18a0bd8268b609a617df0de89f2
5
5
  SHA512:
6
- metadata.gz: 21acb52c5919ecf3e1950c8df15c32b1bc27d3228a6513d78fa20e5a8b6a1eb993637b447604ac6c9b38690507d2f4e3d28688df732a0a67c07cd17b0e6680cd
7
- data.tar.gz: 0b2b034e5b3219b0f8f247d1d474950abe9e73a09eed885cb771227cb6cd8b51dc409898c603215c0b13c0fedb81572e09e81ebb122ffb3cdadf6f336d3c7b10
6
+ metadata.gz: 177deead076e6be424ca70543466897748a1663e9a68ecdd84f994b2e32a101ac8d8d029cc0f94548d7b45efe74dba8738913c600d830488e74efd7dfaa72e2c
7
+ data.tar.gz: 7c97bfa0c135d06688e6e65b248f11f91882b93d365478f712fad42bc7c3134246511e6102a078b18470919dd308d2268ab16ed06c29e4847829acb6a77a9f82
@@ -2,6 +2,18 @@
2
2
 
3
3
  ## master
4
4
 
5
+ ## 0.8.0 (2020-05-01) 🚩
6
+
7
+ - Add right-hand assignment support. ([@palkan][])
8
+
9
+ It is real: `13.divmod(5) => a, b`.
10
+
11
+ - Add endless methods support. ([@palkan][])
12
+
13
+ Now you can write `def foo() = :bar`.
14
+
15
+ ## 0.7.0 (2020-04-29)
16
+
5
17
  - Try to auto-transpile the source code on load in `.setup_gem_load_path` if transpiled files are missing. ([@palkan][])
6
18
 
7
19
  This would make it possible to install gems from source if transpiled files do not exist in the repository.
data/README.md CHANGED
@@ -62,12 +62,16 @@ $ gem install ruby-next
62
62
 
63
63
  # Call ruby with -ruby-next flag
64
64
  $ ruby -ruby-next -e "
65
- case {hello: 'martian'}
66
- in hello: hello if hello =~ /human/
67
- puts '🙂'
68
- in hello: 'martian'
69
- puts '👽'
70
- end
65
+ def greet(val) =
66
+ case val
67
+ in hello: hello if hello =~ /human/i
68
+ '🙂'
69
+ in hello: 'martian'
70
+ '👽'
71
+ end
72
+
73
+ greet(hello: 'martian') => greeting
74
+ puts greeting
71
75
  "
72
76
 
73
77
  => 👽
@@ -160,6 +164,8 @@ You can change the transpiler mode:
160
164
  - Via environmental variable `RUBY_NEXT_TRANSPILE_MODE=rewrite`.
161
165
  - Via CLI option ([see below](#cli)).
162
166
 
167
+ **NOTE:** For the time being, Unparser [doesn't support](https://github.com/mbj/unparser/pull/142) new Ruby 2.7 AST nodes, so we always use rewrite mode in Ruby 2.7+.
168
+
163
169
  ## CLI
164
170
 
165
171
  Ruby Next ships with the command-line interface (`ruby-next`) which provides the following functionality:
@@ -431,11 +437,13 @@ require "ruby-next/language/runtime"
431
437
 
432
438
  ### Supported edge features
433
439
 
434
- Not yet.
440
+ - "Endless" method definition (`def foo() = 42`) ([#16746](https://bugs.ruby-lang.org/issues/16746)).
441
+
442
+ - Right-hand assignment (`13.divmod(5) => a,b`) ([#15921](https://bugs.ruby-lang.org/issues/15921))
435
443
 
436
444
  ### Supported proposed features
437
445
 
438
- - _Method reference_ operator (`.:`) ([link](https://bugs.ruby-lang.org/issues/13581)).
446
+ - _Method reference_ operator (`.:`) ([#13581](https://bugs.ruby-lang.org/issues/13581)).
439
447
 
440
448
  ## Contributing
441
449
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-next
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vladimir Dementyev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-29 00:00:00.000000000 Z
11
+ date: 2020-05-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ruby-next-core
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 2.8.0.0
33
+ version: 2.8.0.4
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 2.8.0.0
40
+ version: 2.8.0.4
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: unparser
43
43
  requirement: !ruby/object:Gem::Requirement