opal 1.0.0.beta1 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 177badfdfa61374be53c577fbff53d85bbc9cfc56e3484c1c8f655acb999a25c
4
- data.tar.gz: 7e90a56d44fad14c1179ff6b1d480cd88a15bef1f47014557c4937eaf6fc6611
3
+ metadata.gz: b19165946a12d9809dfc921cb6a493f43341604eee8be9e88a464dd7544be303
4
+ data.tar.gz: 89bb5ea2d36bc47b12694506c1473f03e367fae8e5568e304c8ee1f2e9ec4019
5
5
  SHA512:
6
- metadata.gz: 8570dc8f8cefd28d8b22350fb62bb61814d523b06850c4f1813b46add943794e04aac4e82fef56cbc891ac3fdb989587fb57239db802d5af875c0ae59d591823
7
- data.tar.gz: b4f312923cd14c347fddf33c469fda80ce585f7224d7877666b41be1717c0231515f36c408580c18e8422bd2aac5f87856c972025a11f78252097b48d944be5c
6
+ metadata.gz: 0fdd6c709d32eea146ed3bee706d9306c4aab8646dde7f7188a5d16a4c1970a58889211c7f6f1d2cce7491e7e942b73444412817a8ecab395901e446ef27a6ce
7
+ data.tar.gz: a827e8d5f9a640dee5cf24dd7b5b5b9c7a5cbe0cead3138d8827e6efa27a930fc99e90848467011a583970b4bd9b8bb0b8c66b3d0fa6d36334144d4c05be2d18
@@ -15,8 +15,7 @@ Changes are grouped as follows:
15
15
 
16
16
 
17
17
 
18
- ## [Unreleased](https://github.com/opal/opal/compare/v0.11.4...HEAD) - unreleased
19
-
18
+ ## [1.0.0](https://github.com/opal/opal/compare/v0.11.4...v1.0.0) - 2019-05-12
20
19
 
21
20
  <!--
22
21
  Whitespace conventions:
@@ -149,6 +148,16 @@ Whitespace conventions:
149
148
  - Fixed compilation of empty/whitespace-only x-strings ([#1811](https://github.com/opal/opal/pull/1811))
150
149
  - Fix `||=` assignments on constants when the constant is not yet defined ([#1935](https://github.com/opal/opal/pull/1935))
151
150
  - Fix `String#chomp` to return an empty String when `arg == self` ([#1936](https://github.com/opal/opal/pull/1936))
151
+ - Fix methods of `Comparable` when `<=>` does not return Numeric ([#1945](https://github.com/opal/opal/pull/1945))
152
+ - Fix `Class#native_alias` error message ([#1946](https://github.com/opal/opal/pull/1946))
153
+ - Fix `gmt_offset` (alias `utc_offset`) should return 0 if the date is UTC ([#1941](https://github.com/opal/opal/pull/1941))
154
+ - `exceptionDetails.stackTrace` can be undefined ([#1955](https://github.com/opal/opal/pull/1955))
155
+ - Implement `String#each_codepoint` and `String#codepoints` (#1944, #1947)
156
+ - [internal] Terminate statement with semi-colon and remove unecessary semi-colon ([#1948](https://github.com/opal/opal/pull/1948))
157
+ - Some steps toward "strict mode" ([#1953](https://github.com/opal/opal/pull/1953))
158
+ - Preserve `Exception.stack`, in some cases the backtrace was lost ([#1963](https://github.com/opal/opal/pull/1963))
159
+ - Make `String#ascii_only?` a little less wrong ([#1951](https://github.com/opal/opal/pull/1951))
160
+ - Minor fixes to `::Native` ([#1957](https://github.com/opal/opal/pull/1957))
152
161
 
153
162
 
154
163
 
data/README.md CHANGED
@@ -1,23 +1,31 @@
1
- # Opal
2
-
3
- [![Build Status (Linux)](https://img.shields.io/travis/opal/opal/master.svg?style=flat)](https://travis-ci.org/opal/opal)
4
- [![Build Status (Windows)](https://ci.appveyor.com/api/projects/status/jtsvwl8tfgn3u67n/branch/master?svg=true)](https://ci.appveyor.com/project/elia/opal/branch/master)
5
- [![Gem Version](https://img.shields.io/gem/v/opal.svg?style=flat)](https://badge.fury.io/rb/opal)
6
- [![Code Climate](https://img.shields.io/codeclimate/github/opal/opal.svg?style=flat)](https://codeclimate.com/github/opal/opal)
7
- [![Coverage Status](https://coveralls.io/repos/opal/opal/badge.svg?branch=master&service=github)](https://coveralls.io/github/opal/opal?branch=elia%2Fcoveralls)
8
-
9
-
10
- Opal is a Ruby to JavaScript source-to-source compiler. It also has an
11
- implementation of the Ruby corelib.
12
-
13
- Opal is [hosted on GitHub](https://github.com/opal/opal). Chat is available on *Gitter* at [opal/opal](https://gitter.im/opal/opal) (also available as IRC at `irc.gitter.im`).
14
- Ask questions on [stackoverflow (tag #opalrb)](https://stackoverflow.com/questions/ask?tags=opalrb). Get the [Opalist newsletter](http://opalist.co) for updates and community news.
15
-
16
- [![Inline docs](https://inch-ci.org/github/opal/opal.svg?branch=master&style=flat)](https://opalrb.com/docs)
17
- [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/opal/opal?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
18
- [![Stack Overflow](https://img.shields.io/badge/stackoverflow-%23opalrb-orange.svg?style=flat)](https://stackoverflow.com/questions/ask?tags=opalrb)
19
- [![Backers on Open Collective](https://opencollective.com/opal/backers/badge.svg)](#backers)
20
- [![Sponsors on Open Collective](https://opencollective.com/opal/sponsors/badge.svg)](#sponsors)
1
+ <h1 align="center">
2
+ <img src="https://secure.gravatar.com/avatar/88298620949a6534d403da2e356c9339?s=420"
3
+ align="center" title="Opal logo by Elia Schito" width="105" height="105" />
4
+ <br/>
5
+ Opal <br/>
6
+ <img src="https://img.shields.io/badge/Opal-Ruby%20💛%20JavaScript-yellow.svg?logo=ruby&style=social&logoColor=777"/>
7
+ </h1>
8
+
9
+ <p align="center">
10
+ <em><strong>Opal</strong> is a Ruby to JavaScript source-to-source compiler.<br>
11
+ It also has an implementation of the Ruby <code>corelib</code> and <code>stdlib</code>.</em>
12
+ </p>
13
+
14
+ <p align="center">
15
+ <strong>Community:</strong><br>
16
+ <a href="https://stackoverflow.com/questions/ask?tags=opalrb"><img src="https://img.shields.io/badge/stackoverflow-%23opalrb-orange.svg?style=flat" alt="Stack Overflow" title="" /></a>
17
+ <a href="#backers"><img src="https://opencollective.com/opal/backers/badge.svg" alt="Backers on Open Collective" title="" /></a>
18
+ <a href="#sponsors"><img src="https://opencollective.com/opal/sponsors/badge.svg" alt="Sponsors on Open Collective" title="" /></a>
19
+ <a href="https://gitter.im/opal/opal?utm_source=badge&amp;utm_medium=badge&amp;utm_campaign=pr-badge"><img src="https://badges.gitter.im/Join%20Chat.svg" alt="Gitter" title="" /></a>
20
+ <a href="https://opalrb.com/docs"><img src="https://img.shields.io/badge/docs-updated-blue.svg" alt="Documentation" title="" /></a>
21
+ <br>
22
+ <strong>Code:</strong><br>
23
+ <a href="https://badge.fury.io/rb/opal"><img src="https://img.shields.io/gem/v/opal.svg?style=flat" alt="Gem Version" title="" /></a>
24
+ <a href="https://travis-ci.org/opal/opal"><img src="https://img.shields.io/travis/opal/opal/master.svg?style=flat" alt="Build Status (Linux)" title="" /></a>
25
+ <a href="https://ci.appveyor.com/project/elia/opal/branch/master"><img src="https://ci.appveyor.com/api/projects/status/jtsvwl8tfgn3u67n/branch/master?svg=true" alt="Build Status (Windows)" title="" /></a>
26
+ <a href="https://codeclimate.com/github/opal/opal"><img src="https://img.shields.io/codeclimate/maintainability-percentage/opal/opal.svg" alt="Code Climate" title="" /></a>
27
+ <a href="https://coveralls.io/github/opal/opal?branch=elia%2Fcoveralls"><img src="https://coveralls.io/repos/opal/opal/badge.svg?branch=master&amp;service=github" alt="Coverage Status" title="" /></a>
28
+ </p>
21
29
 
22
30
  ## Usage
23
31
 
@@ -130,4 +130,12 @@ Whitespace conventions:
130
130
  - Fix `||=` assignments on constants when the constant is not yet defined (#1935)
131
131
  - Fix `String#chomp` to return an empty String when `arg == self` (#1936)
132
132
  - Fix methods of `Comparable` when `<=>` does not return Numeric (#1945)
133
- - Fix Class#native_alias error message (#1946)
133
+ - Fix `Class#native_alias` error message (#1946)
134
+ - Fix `gmt_offset` (alias `utc_offset`) should return 0 if the date is UTC (#1941)
135
+ - `exceptionDetails.stackTrace` can be undefined (#1955)
136
+ - Implement `String#each_codepoint` and `String#codepoints` (#1944, #1947)
137
+ - [internal] Terminate statement with semi-colon and remove unecessary semi-colon (#1948)
138
+ - Some steps toward "strict mode" (#1953)
139
+ - Preserve `Exception.stack`, in some cases the backtrace was lost (#1963)
140
+ - Make `String#ascii_only?` a little less wrong (#1951)
141
+ - Minor fixes to `::Native` (#1957)
@@ -91,7 +91,7 @@ CDP(options, function(client) {
91
91
  Runtime.exceptionThrown(function(exception) {
92
92
  var exceptionDetails = exception.exceptionDetails,
93
93
  properties = exceptionDetails.exception.preview.properties,
94
- stackTrace = exceptionDetails.stackTrace.callFrames,
94
+ stackTrace = exceptionDetails.stackTrace ? exceptionDetails.stackTrace.callFrames : [],
95
95
  name, message, trace = [], i;
96
96
 
97
97
 
@@ -3,5 +3,5 @@
3
3
  module Opal
4
4
  # WHEN RELEASING:
5
5
  # Remember to update RUBY_ENGINE_VERSION in opal/corelib/constants.rb too!
6
- VERSION = '1.0.0.beta1'
6
+ VERSION = '1.0.0'
7
7
  end
@@ -33,7 +33,7 @@ Gem::Specification.new do |spec|
33
33
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
34
34
  spec.require_paths = ['lib']
35
35
 
36
- spec.required_ruby_version = '>= 2.0.0'
36
+ spec.required_ruby_version = '>= 2.3'
37
37
 
38
38
  spec.add_dependency 'ast', '>= 2.3.0'
39
39
  spec.add_dependency 'parser', '= 2.5.3.0'
@@ -1,8 +1,8 @@
1
1
  RUBY_PLATFORM = 'opal'
2
2
  RUBY_ENGINE = 'opal'
3
3
  RUBY_VERSION = '2.5.3'
4
- RUBY_ENGINE_VERSION = '1.0.0.beta1'
5
- RUBY_RELEASE_DATE = '2019-02-24'
4
+ RUBY_ENGINE_VERSION = '1.0.0'
5
+ RUBY_RELEASE_DATE = '2019-05-12'
6
6
  RUBY_PATCHLEVEL = 0
7
7
  RUBY_REVISION = 0
8
8
  RUBY_COPYRIGHT = 'opal - Copyright (C) 2013-2019 Adam Beynon and the Opal contributors'
@@ -61,6 +61,7 @@ class Exception < `Error`
61
61
 
62
62
  var cloned = #{clone};
63
63
  cloned.message = str;
64
+ cloned.stack = self.stack;
64
65
  return cloned;
65
66
  }
66
67
  end
@@ -81,8 +82,10 @@ class Exception < `Error`
81
82
 
82
83
  if (backtrace === nil) {
83
84
  self.backtrace = nil;
85
+ self.stack = '';
84
86
  } else if (backtrace.$$is_string) {
85
87
  self.backtrace = [backtrace];
88
+ self.stack = backtrace;
86
89
  } else {
87
90
  if (backtrace.$$is_array) {
88
91
  for (i = 0, ii = backtrace.length; i < ii; i++) {
@@ -100,6 +103,7 @@ class Exception < `Error`
100
103
  }
101
104
 
102
105
  self.backtrace = backtrace;
106
+ self.stack = backtrace.join('\n');
103
107
  }
104
108
 
105
109
  return backtrace;
@@ -63,7 +63,7 @@
63
63
  missing_require_severity: 'error', // error, warning, ignore
64
64
  unsupported_features_severity: 'warning', // error, warning, ignore
65
65
  enable_stack_trace: true // true, false
66
- }
66
+ };
67
67
 
68
68
  // Minify common function calls
69
69
  var $hasOwn = Object.hasOwnProperty;
@@ -90,7 +90,7 @@
90
90
  if (obj.$$is_number) return (obj * 2)+1;
91
91
  if (obj.$$id != null) {
92
92
  return obj.$$id;
93
- };
93
+ }
94
94
  $defineProperty(obj, '$$id', Opal.uid());
95
95
  return obj.$$id;
96
96
  };
@@ -109,7 +109,7 @@
109
109
  // Pops an exception from the stack and updates `$!`.
110
110
  Opal.pop_exception = function() {
111
111
  Opal.gvars["!"] = Opal.exceptions.pop() || nil;
112
- }
112
+ };
113
113
 
114
114
  // Inspect any kind of object, including non Ruby ones
115
115
  Opal.inspect = function(obj) {
@@ -125,7 +125,7 @@
125
125
  else {
126
126
  return obj.$inspect();
127
127
  }
128
- }
128
+ };
129
129
 
130
130
  function $defineProperty(object, name, initialValue) {
131
131
  if (typeof(object) === "string") {
@@ -239,7 +239,7 @@
239
239
 
240
240
  result = const_get_name(cref, name); if (result != null) return result;
241
241
  result = const_missing(cref, name, skip_missing); if (result != null) return result;
242
- }
242
+ };
243
243
 
244
244
  // Look for the constant relative to a cref or call `#const_missing` (when the
245
245
  // constant is prefixed by `::`).
@@ -453,10 +453,10 @@
453
453
  // If superclass has metaclass then we have explicitely inherit it.
454
454
  Opal.build_class_singleton_class(klass);
455
455
  }
456
- };
456
+ }
457
457
 
458
458
  return klass;
459
- }
459
+ };
460
460
 
461
461
 
462
462
  function find_existing_class(scope, name) {
@@ -528,7 +528,7 @@
528
528
  }
529
529
 
530
530
  return klass;
531
- }
531
+ };
532
532
 
533
533
  // Define new module (or return existing module). The given `scope` is basically
534
534
  // the current `self` value the `module` statement was defined in. If this is
@@ -575,7 +575,7 @@
575
575
  $setPrototype(module, Opal.Module.prototype);
576
576
 
577
577
  return module;
578
- }
578
+ };
579
579
 
580
580
  function find_existing_module(scope, name) {
581
581
  var module = const_get_name(scope, name);
@@ -612,7 +612,7 @@
612
612
  Opal.const_set(scope, name, module);
613
613
 
614
614
  return module;
615
- }
615
+ };
616
616
 
617
617
  // Return the singleton class for the passed object.
618
618
  //
@@ -687,7 +687,7 @@
687
687
  $defineProperty(mod, '$$class', Opal.Module);
688
688
 
689
689
  return meta;
690
- }
690
+ };
691
691
 
692
692
  // Build the singleton class for a Ruby (non class) Object.
693
693
  //
@@ -711,7 +711,7 @@
711
711
 
712
712
  Opal.is_method = function(prop) {
713
713
  return (prop[0] === '$' && prop[1] !== '$');
714
- }
714
+ };
715
715
 
716
716
  Opal.instance_methods = function(mod) {
717
717
  var exclude = [], results = [], ancestors = Opal.ancestors(mod);
@@ -745,7 +745,7 @@
745
745
  }
746
746
 
747
747
  return results;
748
- }
748
+ };
749
749
 
750
750
  Opal.own_instance_methods = function(mod) {
751
751
  var results = [],
@@ -771,22 +771,22 @@
771
771
  }
772
772
 
773
773
  return results;
774
- }
774
+ };
775
775
 
776
776
  Opal.methods = function(obj) {
777
777
  return Opal.instance_methods(Opal.get_singleton_class(obj));
778
- }
778
+ };
779
779
 
780
780
  Opal.own_methods = function(obj) {
781
781
  return Opal.own_instance_methods(Opal.get_singleton_class(obj));
782
- }
782
+ };
783
783
 
784
784
  Opal.receiver_methods = function(obj) {
785
785
  var mod = Opal.get_singleton_class(obj);
786
786
  var singleton_methods = Opal.own_instance_methods(mod);
787
787
  var instance_methods = Opal.own_instance_methods(mod.$$super);
788
788
  return singleton_methods.concat(instance_methods);
789
- }
789
+ };
790
790
 
791
791
  // Returns an object containing all pairs of names/values
792
792
  // for all class variables defined in provided +module+
@@ -808,7 +808,7 @@
808
808
  }
809
809
 
810
810
  return result;
811
- }
811
+ };
812
812
 
813
813
  // Sets class variable with specified +name+ to +value+
814
814
  // in provided +module+
@@ -832,7 +832,7 @@
832
832
  module.$$cvars[name] = value;
833
833
 
834
834
  return value;
835
- }
835
+ };
836
836
 
837
837
  function isRoot(proto) {
838
838
  return proto.hasOwnProperty('$$iclass') && proto.hasOwnProperty('$$root');
@@ -976,7 +976,7 @@
976
976
  includer.$$own_included_modules = own_included_modules(includer);
977
977
 
978
978
  Opal.const_cache_version++;
979
- }
979
+ };
980
980
 
981
981
  Opal.prepend_features = function(module, prepender) {
982
982
  // Here we change the ancestors chain from
@@ -1064,7 +1064,7 @@
1064
1064
  prepender.$$own_prepended_modules = own_prepended_modules(prepender);
1065
1065
 
1066
1066
  Opal.const_cache_version++;
1067
- }
1067
+ };
1068
1068
 
1069
1069
  function flush_methods_in(module) {
1070
1070
  var proto = module.$$prototype,
@@ -1222,7 +1222,7 @@
1222
1222
  module.$$ancestors = result;
1223
1223
 
1224
1224
  return result;
1225
- }
1225
+ };
1226
1226
 
1227
1227
  Opal.included_modules = function(module) {
1228
1228
  var result = [], mod = null, proto = Object.getPrototypeOf(module.$$prototype);
@@ -1235,7 +1235,7 @@
1235
1235
  }
1236
1236
 
1237
1237
  return result;
1238
- }
1238
+ };
1239
1239
 
1240
1240
 
1241
1241
  // Method Missing
@@ -1608,7 +1608,7 @@
1608
1608
  else {
1609
1609
  return Opal.hash2([], {});
1610
1610
  }
1611
- }
1611
+ };
1612
1612
 
1613
1613
  // Used to get a list of rest keyword arguments. Method takes the given
1614
1614
  // keyword args, i.e. the hash literal passed to the method containing all
@@ -1624,7 +1624,7 @@
1624
1624
  Opal.kwrestargs = function(given_args, used_args) {
1625
1625
  var keys = [],
1626
1626
  map = {},
1627
- key = null,
1627
+ key ,
1628
1628
  given_map = given_args.$$smap;
1629
1629
 
1630
1630
  for (key in given_map) {
@@ -1672,12 +1672,12 @@
1672
1672
  }
1673
1673
 
1674
1674
  return recv.$method_missing.apply(recv, [method].concat(args));
1675
- }
1675
+ };
1676
1676
 
1677
1677
  Opal.lambda = function(block) {
1678
1678
  block.$$is_lambda = true;
1679
1679
  return block;
1680
- }
1680
+ };
1681
1681
 
1682
1682
  // Used to define methods on an object. This is a helper method, used by the
1683
1683
  // compiled source to define methods on special case objects when the compiler
@@ -1759,7 +1759,7 @@
1759
1759
  else if (singleton_of && singleton_of.$singleton_method_added && !singleton_of.$singleton_method_added.$$stub) {
1760
1760
  singleton_of.$singleton_method_added(jsid.substr(1));
1761
1761
  }
1762
- }
1762
+ };
1763
1763
 
1764
1764
  // Define a singleton method on the given object (see Opal.def).
1765
1765
  Opal.defs = function(obj, jsid, body) {
@@ -2342,10 +2342,10 @@
2342
2342
 
2343
2343
  // Initialization
2344
2344
  // --------------
2345
- function $BasicObject() {};
2346
- function $Object() {};
2347
- function $Module() {};
2348
- function $Class() {};
2345
+ function $BasicObject() {}
2346
+ function $Object() {}
2347
+ function $Module() {}
2348
+ function $Class() {}
2349
2349
 
2350
2350
  Opal.BasicObject = BasicObject = Opal.allocate_class('BasicObject', null, $BasicObject);
2351
2351
  Opal.Object = _Object = Opal.allocate_class('Object', Opal.BasicObject, $Object);
@@ -2398,7 +2398,7 @@
2398
2398
 
2399
2399
 
2400
2400
  // Nil
2401
- function $NilClass() {};
2401
+ function $NilClass() {}
2402
2402
  Opal.NilClass = Opal.allocate_class('NilClass', Opal.Object, $NilClass);
2403
2403
  Opal.const_set(_Object, 'NilClass', Opal.NilClass);
2404
2404
  nil = Opal.nil = new Opal.NilClass();
@@ -691,7 +691,18 @@ class String < `String`
691
691
  end
692
692
 
693
693
  def ascii_only?
694
- `self.match(/[ -~\n]*/)[0] === self`
694
+ # non-ASCII-compatible encoding must return false
695
+ # NOTE: Encoding::UTF_16LE is also non-ASCII-compatible encoding,
696
+ # but since the default encoding in JavaScript is UTF_16LE,
697
+ # we cannot return false otherwise the following will (incorrectly) return false: "hello".ascii_only?
698
+ # In other words, we cannot tell the difference between:
699
+ # - "hello".force_encoding("UTF-16LE")
700
+ # - "hello"
701
+ # The problem is that "ascii_only" should return false in the first case and true in the second case.
702
+ if encoding == Encoding::UTF_16BE
703
+ return false
704
+ end
705
+ `/^[\x00-\x7F]*$/.test(self)`
695
706
  end
696
707
 
697
708
  def match(pattern, pos = undefined, &block)
@@ -181,6 +181,22 @@ class String
181
181
  self
182
182
  end
183
183
 
184
+ def each_codepoint(&block)
185
+ return enum_for :each_codepoint unless block_given?
186
+ %x{
187
+ for (var i = 0, length = self.length; i < length; i++) {
188
+ #{yield `self.codePointAt(i)`};
189
+ }
190
+ }
191
+ self
192
+ end
193
+
194
+ def codepoints(&block)
195
+ # If a block is given, which is a deprecated form, works the same as each_codepoint.
196
+ return each_codepoint(&block) if block_given?
197
+ each_codepoint.to_a
198
+ end
199
+
184
200
  def encode(encoding)
185
201
  dup.force_encoding(encoding)
186
202
  end
@@ -427,7 +427,7 @@ class Time < `Date`
427
427
  end
428
428
 
429
429
  def gmt_offset
430
- `-self.getTimezoneOffset() * 60`
430
+ `self.is_utc ? 0 : -self.getTimezoneOffset() * 60`
431
431
  end
432
432
 
433
433
  def strftime(format)
@@ -127,7 +127,7 @@ module Native
127
127
  # @example
128
128
  #
129
129
  # class Element
130
- # include Native::Helpers
130
+ # extend Native::Helpers
131
131
  #
132
132
  # alias_native :add_class, :addClass
133
133
  # alias_native :show
@@ -208,7 +208,6 @@ module Native
208
208
  def self.included(base)
209
209
  warn 'Including ::Native is deprecated. Please include Native::Wrapper instead.'
210
210
  base.include Wrapper
211
- base.extend Helpers
212
211
  end
213
212
  end
214
213
 
@@ -38,7 +38,7 @@
38
38
 
39
39
  var ObjectToString = Object.prototype.toString;
40
40
 
41
- var NODE = ObjectToString.call(this.process) === "[object process]";
41
+ var NODE = ObjectToString.call(process) === "[object process]";
42
42
 
43
43
  // https://github.com/v8/v8/blob/cab94bbe3d532d85705950ed049a294050fcb4c9/src/messages.js#L1112-L1124 [converted to JS]
44
44
  function GetTypeName(receiver, requireConstructor) {
@@ -352,6 +352,7 @@ task :minitest_node_nodejs do
352
352
  nodejs/test_dir.rb
353
353
  nodejs/test_env.rb
354
354
  nodejs/test_io.rb
355
+ nodejs/test_error.rb
355
356
  nodejs/test_file_encoding.rb
356
357
  nodejs/test_opal_builder.rb
357
358
  ]
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.0.0.beta1
4
+ version: 1.0.0
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: 2019-03-02 00:00:00.000000000 Z
13
+ date: 2019-05-12 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: ast
@@ -735,10 +735,10 @@ licenses:
735
735
  - MIT
736
736
  metadata:
737
737
  bug_tracker_uri: https://github.com/opal/opal/issues
738
- changelog_uri: https://github.com/opal/opal/blob/v1.0.0.beta1/CHANGELOG.md
739
- readme_uri: https://github.com/opal/opal/blob/v1.0.0.beta1/README.md
740
- api_documentation_uri: http://opalrb.com/docs/api/v1.0.0.beta1/index.html
741
- guides_uri: http://opalrb.com/docs/guides/v1.0.0.beta1/index.html
738
+ changelog_uri: https://github.com/opal/opal/blob/v1.0.0/CHANGELOG.md
739
+ readme_uri: https://github.com/opal/opal/blob/v1.0.0/README.md
740
+ api_documentation_uri: http://opalrb.com/docs/api/v1.0.0/index.html
741
+ guides_uri: http://opalrb.com/docs/guides/v1.0.0/index.html
742
742
  homepage_uri: https://opalrb.com/
743
743
  chat_uri: https://gitter.im/opal/opal
744
744
  source_code_uri: https://github.com/opal/opal
@@ -750,14 +750,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
750
750
  requirements:
751
751
  - - ">="
752
752
  - !ruby/object:Gem::Version
753
- version: 2.0.0
753
+ version: '2.3'
754
754
  required_rubygems_version: !ruby/object:Gem::Requirement
755
755
  requirements:
756
- - - ">"
756
+ - - ">="
757
757
  - !ruby/object:Gem::Version
758
- version: 1.3.1
758
+ version: '0'
759
759
  requirements: []
760
- rubygems_version: 3.0.2
760
+ rubygems_version: 3.0.3
761
761
  signing_key:
762
762
  specification_version: 4
763
763
  summary: Ruby runtime and core library for JavaScript