opal 1.6.0.rc1 → 1.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +84 -0
- data/Gemfile +1 -0
- data/UNRELEASED.md +0 -47
- data/docs/async.md +5 -17
- data/docs/releasing.md +3 -4
- data/lib/opal/builder.rb +2 -1
- data/lib/opal/builder_scheduler.rb +1 -1
- data/lib/opal/version.rb +1 -1
- data/opal/corelib/constants.rb +2 -2
- data/spec/lib/builder_spec.rb +10 -0
- data/stdlib/await.rb +0 -7
- data/tasks/building.rake +6 -2
- metadata +9 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1c701c29f145e065c4abcaf8ab8884b6c72bc2d4b7f1a4c20dd293e05b4ab824
|
4
|
+
data.tar.gz: c42cd06d101ed3cab5b7c116f87bb8de200b1eaacee107228f2cad20a6bde94d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cb68516917eccc5b981fed3f71b31ddd96378a0bc5d7a56d3d8d0728b80dee4dbe0fb7f00b998e4c85a87cd8a6925268046b817f9741ef015ef17f8d7e18f922
|
7
|
+
data.tar.gz: f296bfaa2d953d3b966bda9b6ae3ebff0b43d711c60a4816810adcc091afcec09608a3c7895b156b8267bfac99dd67e93f9868100356939e92bbd9609a715a60
|
data/CHANGELOG.md
CHANGED
@@ -10,11 +10,90 @@ Changes are grouped as follows:
|
|
10
10
|
- **Removed** for deprecated features removed in this release.
|
11
11
|
- **Fixed** for any bug fixes.
|
12
12
|
- **Security** to invite users to upgrade in case of vulnerabilities.
|
13
|
+
- **Performance** changes related to speed and efficiency.
|
13
14
|
|
14
15
|
|
15
16
|
|
16
17
|
|
17
18
|
|
19
|
+
## [1.6.1](https://github.com/opal/opal/compare/v1.6.0...v1.6.1) - 2022-12-09
|
20
|
+
|
21
|
+
|
22
|
+
<!--
|
23
|
+
### Internal
|
24
|
+
### Changed
|
25
|
+
### Added
|
26
|
+
### Removed
|
27
|
+
### Deprecated
|
28
|
+
### Performance
|
29
|
+
### Fixed
|
30
|
+
-->
|
31
|
+
|
32
|
+
### Fixed
|
33
|
+
|
34
|
+
- Fix builder.dup breaking Tilt support ([#2479](https://github.com/opal/opal/pull/2479))
|
35
|
+
|
36
|
+
### Changed
|
37
|
+
|
38
|
+
- Build also opal variants for the CDN: opal/mini.js etc. ([#2489](https://github.com/opal/opal/pull/2489))
|
39
|
+
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
## [1.6.0](https://github.com/opal/opal/compare/v1.5.1...v1.6.0) - 2022-11-24
|
44
|
+
|
45
|
+
|
46
|
+
### Changed
|
47
|
+
|
48
|
+
- No longer truncate stacktraces to 15 lines ([#2440](https://github.com/opal/opal/pull/2440))
|
49
|
+
- Mark async/await as non-experimental ([#2477](https://github.com/opal/opal/pull/2477))
|
50
|
+
|
51
|
+
### Performance
|
52
|
+
|
53
|
+
- Improve method block performance for runtime ([#2449](https://github.com/opal/opal/pull/2449))
|
54
|
+
- Uninline non-typical argument handling ([#2419](https://github.com/opal/opal/pull/2419))
|
55
|
+
- Logic optimization of runtime.js ([#2415](https://github.com/opal/opal/pull/2415))
|
56
|
+
- Windows support for `performance:compare` CI check ([#2450](https://github.com/opal/opal/pull/2450))
|
57
|
+
- Improve block performance for even more cases ([#2465](https://github.com/opal/opal/pull/2465))
|
58
|
+
|
59
|
+
### Added
|
60
|
+
|
61
|
+
- Added support for `#freeze` and `#frozen?` (#2444, #2468)
|
62
|
+
- Add CLI support for ESM, at least for Chrome, NodeJS, QuickJS and GJS ([#2435](https://github.com/opal/opal/pull/2435))
|
63
|
+
- Support exit in Chrome CLI Runner, both sync and async ([#2439](https://github.com/opal/opal/pull/2439))
|
64
|
+
- Make sure the Server CLI Runner can pick up changes in sources ([#2436](https://github.com/opal/opal/pull/2436))
|
65
|
+
- Delegate and ruby2_keywords ([#2446](https://github.com/opal/opal/pull/2446))
|
66
|
+
- Source code can now be embedded in the compiled file to improve development/debugging, e.g. RSpec reports, `Proc#source_location` ([#2440](https://github.com/opal/opal/pull/2440))
|
67
|
+
- Added `Kernel#caller_locations` ([#2440](https://github.com/opal/opal/pull/2440))
|
68
|
+
- `Opal::Builder::Prefork` for blazingly fast multicore compilation times (#2263, #2462, #2454, #2469, #2475)
|
69
|
+
- Add `Opal::BuilderProcessors::RubyERBProcessor` ([#2470](https://github.com/opal/opal/pull/2470))
|
70
|
+
|
71
|
+
### Fixed
|
72
|
+
|
73
|
+
- Closure tracking support fixes a whole array of bugs handling `break` / `next` / `retry` / … ([#2357](https://github.com/opal/opal/pull/2357))
|
74
|
+
- Fix an edge case of if in the most complex form not returning ([#2433](https://github.com/opal/opal/pull/2433))
|
75
|
+
- `String#length` is now available when using `opal/mini` ([#2438](https://github.com/opal/opal/pull/2438))
|
76
|
+
- Auto-await produced invalid code ([#2440](https://github.com/opal/opal/pull/2440))
|
77
|
+
- Fix `Enumerable#collect_concat` and `#flat_map` implementation ([#2440](https://github.com/opal/opal/pull/2440))
|
78
|
+
- Improved await support for PromiseV1 ([#2440](https://github.com/opal/opal/pull/2440))
|
79
|
+
- Compilation error occurs while compiling `being/end` returning a `case/when` ([#2459](https://github.com/opal/opal/pull/2459))
|
80
|
+
- Ensure UTF-8 encoding of `.sourcesContent` of source maps ([#2451](https://github.com/opal/opal/pull/2451))
|
81
|
+
- Benchmarks require string/unpack ([#2453](https://github.com/opal/opal/pull/2453))
|
82
|
+
- Fix compilation of a call: `gets&.chomp` ([#2473](https://github.com/opal/opal/pull/2473))
|
83
|
+
- Fix specs on Windows ([#2460](https://github.com/opal/opal/pull/2460))
|
84
|
+
- Make opal CLI tool work again with pipes ([#2474](https://github.com/opal/opal/pull/2474))
|
85
|
+
|
86
|
+
### Internal
|
87
|
+
|
88
|
+
- GitHub Workflows security hardening ([#2432](https://github.com/opal/opal/pull/2432))
|
89
|
+
- Retry if file cache write operation exits with Zlib::BufError ([#2463](https://github.com/opal/opal/pull/2463))
|
90
|
+
- Eliminate redundant `var constructor` in `allocate_class` ([#2452](https://github.com/opal/opal/pull/2452))
|
91
|
+
- Fix `performance:compare` asset size calculation ([#2457](https://github.com/opal/opal/pull/2457))
|
92
|
+
- Fix a few specs after the Opal RSpec 1.0 (alpha) release (#2471, #2472)
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
|
18
97
|
## [1.5.1](https://github.com/opal/opal/compare/v1.5.0...v1.5.1) - 2022-07-20
|
19
98
|
|
20
99
|
|
@@ -24,6 +103,11 @@ Changes are grouped as follows:
|
|
24
103
|
- Fix exception during `Hash#each_value` if keys get deleted during loop ([#2427](https://github.com/opal/opal/pull/2427))
|
25
104
|
- Fix scan_until and check_until implementation of StringScanner ([#2420](https://github.com/opal/opal/pull/2420))
|
26
105
|
|
106
|
+
## New Contributors
|
107
|
+
* @Leon0402 made their first contribution in https://github.com/opal/opal/pull/2420
|
108
|
+
|
109
|
+
**Full Changelog**: https://github.com/opal/opal/compare/v1.5.0...v1.5.1
|
110
|
+
|
27
111
|
|
28
112
|
|
29
113
|
|
data/Gemfile
CHANGED
@@ -10,6 +10,7 @@ rack_version = ENV['RACK_VERSION']
|
|
10
10
|
sprockets_version = ENV['SPROCKETS_VERSION']
|
11
11
|
|
12
12
|
gem 'json', '< 1.8.1', platform: :ruby if ruby_version < v['2.2']
|
13
|
+
gem 'psych', '< 5.0.0', platform: :ruby if ruby_version < v['3.2a']
|
13
14
|
gem 'rack-test', '< 0.8' if ruby_version <= v['2.0']
|
14
15
|
gem 'coveralls', platform: :mri
|
15
16
|
|
data/UNRELEASED.md
CHANGED
@@ -7,50 +7,3 @@
|
|
7
7
|
### Performance
|
8
8
|
### Fixed
|
9
9
|
-->
|
10
|
-
|
11
|
-
### Changed
|
12
|
-
|
13
|
-
- No longer truncate stacktraces to 15 lines (#2440)
|
14
|
-
|
15
|
-
### Performance
|
16
|
-
|
17
|
-
- Improve method block performance for runtime (#2449)
|
18
|
-
- Uninline non-typical argument handling (#2419)
|
19
|
-
- Logic optimization of runtime.js (#2415)
|
20
|
-
- Windows support for `performance:compare` CI check (#2450)
|
21
|
-
- Improve block performance for even more cases (#2465)
|
22
|
-
|
23
|
-
### Added
|
24
|
-
|
25
|
-
- Added support for `#freeze` and `#frozen?` (#2444, #2468)
|
26
|
-
- Add CLI support for ESM, at least for Chrome, NodeJS, QuickJS and GJS (#2435)
|
27
|
-
- Support exit in Chrome CLI Runner, both sync and async (#2439)
|
28
|
-
- Make sure the Server CLI Runner can pick up changes in sources (#2436)
|
29
|
-
- Delegate and ruby2_keywords (#2446)
|
30
|
-
- Source code can now be embedded in the compiled file to improve development/debugging, e.g. RSpec reports, `Proc#source_location` (#2440)
|
31
|
-
- Added `Kernel#caller_locations` (#2440)
|
32
|
-
- `Opal::Builder::Prefork` for blazingly fast multicore compilation times (#2263, #2462, #2454, #2469, #2475)
|
33
|
-
- Add `Opal::BuilderProcessors::RubyERBProcessor` (#2470)
|
34
|
-
|
35
|
-
### Fixed
|
36
|
-
|
37
|
-
- Closure tracking support fixes a whole array of bugs handling `break` / `next` / `retry` / … (#2357)
|
38
|
-
- Fix an edge case of if in the most complex form not returning (#2433)
|
39
|
-
- `String#length` is now available when using `opal/mini` (#2438)
|
40
|
-
- Auto-await produced invalid code (#2440)
|
41
|
-
- Fix `Enumerable#collect_concat` and `#flat_map` implementation (#2440)
|
42
|
-
- Improved await support for PromiseV1 (#2440)
|
43
|
-
- Compilation error occurs while compiling `being/end` returning a `case/when` (#2459)
|
44
|
-
- Ensure UTF-8 encoding of `.sourcesContent` of source maps (#2451)
|
45
|
-
- Benchmarks require string/unpack (#2453)
|
46
|
-
- Fix compilation of a call: `gets&.chomp` (#2473)
|
47
|
-
- Fix specs on Windows (#2460)
|
48
|
-
- Make opal CLI tool work again with pipes (#2474)
|
49
|
-
|
50
|
-
### Internal
|
51
|
-
|
52
|
-
- GitHub Workflows security hardening (#2432)
|
53
|
-
- Retry if file cache write operation exits with Zlib::BufError (#2463)
|
54
|
-
- Eliminate redundant `var constructor` in `allocate_class` (#2452)
|
55
|
-
- Fix `performance:compare` asset size calculation (#2457)
|
56
|
-
- Fix a few specs after the Opal RSpec 1.0 (alpha) release (#2471, #2472)
|
data/docs/async.md
CHANGED
@@ -1,16 +1,5 @@
|
|
1
1
|
# Asynchronous code (PromiseV2 / async / await)
|
2
2
|
|
3
|
-
Please be aware that this functionality is marked as experimental and may change
|
4
|
-
in the future.
|
5
|
-
|
6
|
-
In order to disable the warnings that will be shown if you use those experimental
|
7
|
-
features, add the following line before requiring `promise/v2` or `await` and after
|
8
|
-
requiring `opal`.
|
9
|
-
|
10
|
-
```ruby
|
11
|
-
`Opal.config.experimental_features_severity = 'ignore'`
|
12
|
-
```
|
13
|
-
|
14
3
|
## PromiseV2
|
15
4
|
|
16
5
|
In Opal 1.2 we introduced PromiseV2 which is to replace the default Promise in Opal 2.0
|
@@ -52,7 +41,7 @@ require "await"
|
|
52
41
|
|
53
42
|
def wait_5_seconds
|
54
43
|
puts "Let's wait 5 seconds..."
|
55
|
-
sleep(5).
|
44
|
+
sleep(5).__await__
|
56
45
|
puts "Done!"
|
57
46
|
end
|
58
47
|
|
@@ -60,14 +49,11 @@ wait_5_seconds.__await__
|
|
60
49
|
```
|
61
50
|
|
62
51
|
It's important to understand what happens under the hood: every scope in which `#__await__` is
|
63
|
-
encountered will become async, which means that it will return a
|
52
|
+
encountered will become async, which means that it will return a PromiseV2 that will resolve
|
64
53
|
to a value. This includes methods, blocks and the top scope. This means, that `#__await__` is
|
65
54
|
infectious and you need to remember to `#__await__` everything along the way, otherwise
|
66
55
|
a program will finish too early and the values may be incorrect.
|
67
56
|
|
68
|
-
[You can take a look at how we ported Minitest to support asynchronous tests.](https://github.com/opal/opal/pull/2221/commits/8383c7b45a94fe4628778f429508b9c08c8948b0) Take note, that
|
69
|
-
it was ported to use `#await` while the finally accepted version uses `#__await__`.
|
70
|
-
|
71
57
|
It is certainly correct to `#__await__` any value, including non-Promises, for instance
|
72
58
|
`5.__await__` will correctly resolve to `5` (except that it will make the scope an async
|
73
59
|
function, with all the limitations described above).
|
@@ -76,6 +62,8 @@ The `await` stdlib module includes a few useful functions, like async-aware `eac
|
|
76
62
|
function and `sleep` that doesn't block the thread. It also includes a method `#await`
|
77
63
|
which is an alias of `#itself` - it makes sense to auto-await that method.
|
78
64
|
|
65
|
+
[You can take a look at how we ported Minitest to support asynchronous tests.](https://github.com/opal/opal/pull/2221/files#diff-bdc8868ad4476bff7b25475f1b19059ac684d64c6531a645b3ba0aef0c466d0f).
|
66
|
+
|
79
67
|
This approach is certainly incompatible with what Ruby does, but due to a dynamic nature
|
80
68
|
of Ruby and a different model of JavaScript this was the least invasive way to catch up
|
81
69
|
with the latest JavaScript trends and support `Promise` heavy APIs and asynchronous code.
|
@@ -106,4 +94,4 @@ require "await"
|
|
106
94
|
p i
|
107
95
|
sleep i
|
108
96
|
end
|
109
|
-
```
|
97
|
+
```
|
data/docs/releasing.md
CHANGED
@@ -18,14 +18,14 @@ _This guide is a work-in-progress._
|
|
18
18
|
- Commit the updated changelog along with the version bump using this commit message:
|
19
19
|
"Release v1.2.3"
|
20
20
|
- Push the commit and run `bin/rake release` to release the new version to Rubygems
|
21
|
-
- Go to GitHub releases and create a new release from the latest tag pasting the contents from CHANGELOG.md
|
21
|
+
- Go to GitHub releases and create a new release from the latest tag pasting the contents from CHANGELOG.md (or UNRELEASED.md for pre-releases)
|
22
22
|
|
23
23
|
## Opal docs
|
24
24
|
|
25
25
|
- Open `opal-docs` and run `bin/build v1.2.3`
|
26
26
|
- Then run `bin/deploy`
|
27
27
|
|
28
|
-
## Opal site
|
28
|
+
## [skip for pre-releases] Opal site
|
29
29
|
|
30
30
|
- Open `opal.github.io` and update the opal version in the `Gemfile`
|
31
31
|
- run `bin/build`
|
@@ -35,9 +35,8 @@ _This guide is a work-in-progress._
|
|
35
35
|
|
36
36
|
- Run `bin/release v1.2.3`
|
37
37
|
|
38
|
-
## Prepare for the next release
|
38
|
+
## [skip for minor-releases] Prepare for the next release
|
39
39
|
|
40
|
-
- Skip this step if releasing a stable release
|
41
40
|
- Create a new pull request that:
|
42
41
|
- Updates a version to `v1.x.0.dev` in both `lib/opal/version.rb` and `opal/corelib/constants.rb`
|
43
42
|
- Remember to merge that PR before merging anything else next once we decide to not release any more point releases from `master`.
|
data/lib/opal/builder.rb
CHANGED
@@ -123,6 +123,7 @@ module Opal
|
|
123
123
|
@compiler_options = other.compiler_options.dup
|
124
124
|
@missing_require_severity = other.missing_require_severity.to_sym
|
125
125
|
@processed = other.processed.dup
|
126
|
+
@scheduler = other.scheduler.dup.tap { |i| i.builder = self }
|
126
127
|
end
|
127
128
|
|
128
129
|
def to_s
|
@@ -175,7 +176,7 @@ module Opal
|
|
175
176
|
attr_reader :processed
|
176
177
|
|
177
178
|
attr_accessor :processors, :path_reader, :stubs, :prerequired, :preload,
|
178
|
-
:compiler_options, :missing_require_severity, :cache
|
179
|
+
:compiler_options, :missing_require_severity, :cache, :scheduler
|
179
180
|
|
180
181
|
def esm?
|
181
182
|
@compiler_options[:esm]
|
data/lib/opal/version.rb
CHANGED
data/opal/corelib/constants.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
::RUBY_PLATFORM = 'opal'
|
2
2
|
::RUBY_ENGINE = 'opal'
|
3
3
|
::RUBY_VERSION = '3.1.0'
|
4
|
-
::RUBY_ENGINE_VERSION = '1.6.
|
5
|
-
::RUBY_RELEASE_DATE = '2022-
|
4
|
+
::RUBY_ENGINE_VERSION = '1.6.1'
|
5
|
+
::RUBY_RELEASE_DATE = '2022-12-09'
|
6
6
|
::RUBY_PATCHLEVEL = 0
|
7
7
|
::RUBY_REVISION = '0'
|
8
8
|
::RUBY_COPYRIGHT = 'opal - Copyright (C) 2013-2022 Adam Beynon and the Opal contributors'
|
data/spec/lib/builder_spec.rb
CHANGED
@@ -68,6 +68,16 @@ RSpec.describe Opal::Builder do
|
|
68
68
|
b2.send(m).should_not equal(builder.send(m))
|
69
69
|
end
|
70
70
|
end
|
71
|
+
|
72
|
+
it 'processes dependencies correctly' do
|
73
|
+
b2 = builder
|
74
|
+
2.times do
|
75
|
+
b2 = b2.dup
|
76
|
+
source = 'require "json"'
|
77
|
+
b2.build_str(source, 'bar.rb')
|
78
|
+
b2.to_s.should include("$to_json")
|
79
|
+
end
|
80
|
+
end
|
71
81
|
end
|
72
82
|
|
73
83
|
describe 'requiring a native .js file' do
|
data/stdlib/await.rb
CHANGED
@@ -1,13 +1,6 @@
|
|
1
1
|
# helpers: coerce_to
|
2
2
|
# await: await
|
3
3
|
|
4
|
-
if `Opal.config.experimental_features_severity == 'warning'`
|
5
|
-
warn 'Await functionality is a technology preview, which means it may change its behavior ' \
|
6
|
-
'in the future unless this warning is removed. If you are interested in this part, ' \
|
7
|
-
'please make sure you track the async/await/promises tag on Opal issues: ' \
|
8
|
-
'https://github.com/opal/opal/issues?q=label%3Aasync%2Fawait%2Fpromises'
|
9
|
-
end
|
10
|
-
|
11
4
|
%x{
|
12
5
|
var AsyncFunction = Object.getPrototypeOf(async function() {}).constructor;
|
13
6
|
}
|
data/tasks/building.rake
CHANGED
@@ -15,6 +15,7 @@ DESC
|
|
15
15
|
task :dist do
|
16
16
|
require 'opal/util'
|
17
17
|
require 'opal/config'
|
18
|
+
require 'fileutils'
|
18
19
|
|
19
20
|
Opal::Config.arity_check_enabled = false
|
20
21
|
Opal::Config.const_missing_enabled = false
|
@@ -23,7 +24,8 @@ task :dist do
|
|
23
24
|
|
24
25
|
build_dir = ENV['DIR'] || 'build'
|
25
26
|
files = ENV['FILES'] ? ENV['FILES'].split(',') :
|
26
|
-
Dir['{opal,stdlib}/*.rb'].map { |lib| File.basename(lib, '.rb') }
|
27
|
+
Dir['{opal,stdlib}/*.rb'].map { |lib| File.basename(lib, '.rb') } +
|
28
|
+
Dir['opal/opal/*.rb'].map { |lib| 'opal/' + File.basename(lib, '.rb') }
|
27
29
|
formats = (ENV['FORMATS'] || 'js,min,gz').split(',')
|
28
30
|
|
29
31
|
mkdir_p build_dir unless File.directory? build_dir
|
@@ -36,7 +38,7 @@ task :dist do
|
|
36
38
|
$stdout.flush
|
37
39
|
|
38
40
|
# Set requirable to true, unless building opal. This allows opal to be auto-loaded.
|
39
|
-
requirable = (
|
41
|
+
requirable = (%w[opal opal/mini opal/base].include? lib)
|
40
42
|
builder = Opal::Builder.build(lib, requirable: requirable)
|
41
43
|
|
42
44
|
src = builder.to_s if (formats & %w[js min gz]).any?
|
@@ -44,6 +46,8 @@ task :dist do
|
|
44
46
|
min = Opal::Util.uglify src if (formats & %w[min gz]).any?
|
45
47
|
gzp = Opal::Util.gzip min if (formats & %w[gz]).any?
|
46
48
|
|
49
|
+
FileUtils.mkdir_p(File.dirname("#{build_dir}/#{lib}.js"))
|
50
|
+
|
47
51
|
File.open("#{build_dir}/#{lib}.js", 'w+') { |f| f << src }
|
48
52
|
File.open("#{build_dir}/#{lib}.min.js", 'w+') { |f| f << min } if min
|
49
53
|
File.open("#{build_dir}/#{lib}.min.js.gz", 'w+') { |f| f << gzp } if gzp
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: opal
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.6.
|
4
|
+
version: 1.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Elia Schito
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: exe
|
12
12
|
cert_chain: []
|
13
|
-
date: 2022-
|
13
|
+
date: 2022-12-09 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: ast
|
@@ -1169,10 +1169,10 @@ licenses:
|
|
1169
1169
|
metadata:
|
1170
1170
|
homepage_uri: https://opalrb.com/
|
1171
1171
|
bug_tracker_uri: https://github.com/opal/opal/issues
|
1172
|
-
changelog_uri: https://github.com/opal/opal/blob/v1.6.
|
1173
|
-
readme_uri: https://github.com/opal/opal/blob/v1.6.
|
1174
|
-
api_documentation_uri: http://opalrb.com/docs/api/v1.6.
|
1175
|
-
guides_uri: http://opalrb.com/docs/guides/v1.6.
|
1172
|
+
changelog_uri: https://github.com/opal/opal/blob/v1.6.1/CHANGELOG.md
|
1173
|
+
readme_uri: https://github.com/opal/opal/blob/v1.6.1/README.md
|
1174
|
+
api_documentation_uri: http://opalrb.com/docs/api/v1.6.1/index.html
|
1175
|
+
guides_uri: http://opalrb.com/docs/guides/v1.6.1/index.html
|
1176
1176
|
chat_uri: https://gitter.im/opal/opal
|
1177
1177
|
source_code_uri: https://github.com/opal/opal
|
1178
1178
|
post_install_message:
|
@@ -1186,11 +1186,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
1186
1186
|
version: '2.3'
|
1187
1187
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
1188
1188
|
requirements:
|
1189
|
-
- - "
|
1189
|
+
- - ">="
|
1190
1190
|
- !ruby/object:Gem::Version
|
1191
|
-
version:
|
1191
|
+
version: '0'
|
1192
1192
|
requirements: []
|
1193
|
-
rubygems_version: 3.3.
|
1193
|
+
rubygems_version: 3.3.26
|
1194
1194
|
signing_key:
|
1195
1195
|
specification_version: 4
|
1196
1196
|
summary: Ruby runtime and core library for JavaScript
|