opal 0.3.37 → 0.3.38

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.
Files changed (51) hide show
  1. data/CHANGELOG.md +11 -0
  2. data/Gemfile +0 -8
  3. data/README.md +7 -6
  4. data/bin/opal +18 -10
  5. data/config.ru +8 -21
  6. data/lib/assets/javascripts/opal-parser.js.erb +3 -60
  7. data/lib/assets/javascripts/opal/array.rb +87 -43
  8. data/lib/assets/javascripts/opal/basic_object.rb +4 -0
  9. data/lib/assets/javascripts/opal/boolean.rb +5 -3
  10. data/lib/assets/javascripts/opal/class.rb +19 -4
  11. data/lib/assets/javascripts/opal/comparable.rb +1 -1
  12. data/lib/assets/javascripts/opal/enumerable.rb +32 -0
  13. data/lib/assets/javascripts/opal/error.rb +1 -1
  14. data/lib/assets/javascripts/opal/hash.rb +166 -103
  15. data/lib/assets/javascripts/opal/json.rb +3 -2
  16. data/lib/assets/javascripts/opal/kernel.rb +9 -1
  17. data/lib/assets/javascripts/opal/native.rb +29 -0
  18. data/lib/assets/javascripts/opal/nil_class.rb +9 -1
  19. data/lib/assets/javascripts/opal/numeric.rb +6 -4
  20. data/lib/assets/javascripts/opal/parser.js +57 -0
  21. data/lib/assets/javascripts/opal/proc.rb +5 -5
  22. data/lib/assets/javascripts/opal/regexp.rb +1 -1
  23. data/lib/assets/javascripts/opal/runtime.js +13 -0
  24. data/lib/assets/javascripts/opal/string.rb +14 -3
  25. data/lib/assets/javascripts/opal/time.rb +1 -1
  26. data/lib/opal.rb +1 -1
  27. data/lib/opal/parser.rb +39 -13
  28. data/lib/opal/processor.rb +13 -2
  29. data/lib/opal/version.rb +1 -1
  30. data/opal.gemspec +3 -0
  31. data/spec/core/array/fill_spec.rb +26 -0
  32. data/spec/core/array/try_convert_spec.rb +15 -0
  33. data/spec/core/enumerable/each_slice_spec.rb +24 -0
  34. data/spec/core/enumerable/group_by_spec.rb +16 -0
  35. data/spec/core/module/const_get_spec.rb +34 -0
  36. data/spec/core/module/undef_method_spec.rb +67 -0
  37. data/spec/core/nil/to_h_spec.rb +10 -0
  38. data/spec/core/proc/element_reference_spec.rb +21 -0
  39. data/spec/{core → core_ext}/array/to_json_spec.rb +0 -0
  40. data/spec/core_ext/method_missing_spec.rb +43 -0
  41. data/spec/core_ext/native/fixtures/classes.rb +5 -0
  42. data/spec/core_ext/native/initialize_spec.rb +8 -0
  43. data/spec/core_ext/native/method_missing_spec.rb +7 -0
  44. data/spec/core_ext/native/to_native_spec.rb +7 -0
  45. data/spec/grammar/parser_spec.rb +1 -1
  46. data/spec/language/super_spec.rb +20 -0
  47. data/spec/language/variables_spec.rb +69 -0
  48. data/spec/spec_helper.rb +9 -5
  49. metadata +66 -8
  50. data/lib/assets/javascripts/opal/core.rb +0 -36
  51. data/spec/autorun.rb +0 -3
data/spec/spec_helper.rb CHANGED
@@ -1,6 +1,6 @@
1
- #= require opal
2
- #= require opal-parser
3
- #= require opal-spec
1
+ require 'opal'
2
+ require 'opal-parser'
3
+ require 'opal-spec'
4
4
 
5
5
  module Kernel
6
6
  def opal_eval(str)
@@ -15,6 +15,10 @@ module Kernel
15
15
  def opal_eval_compiled(javascript)
16
16
  `eval(javascript)`
17
17
  end
18
- end
19
18
 
20
- OpalSpec::Runner.autorun
19
+ # Used for splitting specific ruby version tests. For now we allow all test
20
+ # groups to run (as opal isnt really a specific ruby version as such?)
21
+ def ruby_version_is(version, &block)
22
+ block.call
23
+ end
24
+ end
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: 0.3.37
4
+ version: 0.3.38
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-15 00:00:00.000000000 Z
12
+ date: 2013-02-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: sprockets
@@ -27,6 +27,38 @@ dependencies:
27
27
  - - ! '>='
28
28
  - !ruby/object:Gem::Version
29
29
  version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: opal-spec
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ~>
36
+ - !ruby/object:Gem::Version
37
+ version: 0.2.10
38
+ type: :development
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: 0.2.10
46
+ - !ruby/object:Gem::Dependency
47
+ name: racc
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
30
62
  description: Ruby runtime and core library for javascript.
31
63
  email: adam.beynon@gmail.com
32
64
  executables:
@@ -36,6 +68,7 @@ extra_rdoc_files: []
36
68
  files:
37
69
  - .gitignore
38
70
  - .travis.yml
71
+ - CHANGELOG.md
39
72
  - CONTRIBUTING.md
40
73
  - Gemfile
41
74
  - LICENSE
@@ -50,15 +83,16 @@ files:
50
83
  - lib/assets/javascripts/opal/boolean.rb
51
84
  - lib/assets/javascripts/opal/class.rb
52
85
  - lib/assets/javascripts/opal/comparable.rb
53
- - lib/assets/javascripts/opal/core.rb
54
86
  - lib/assets/javascripts/opal/date.rb
55
87
  - lib/assets/javascripts/opal/enumerable.rb
56
88
  - lib/assets/javascripts/opal/error.rb
57
89
  - lib/assets/javascripts/opal/hash.rb
58
90
  - lib/assets/javascripts/opal/json.rb
59
91
  - lib/assets/javascripts/opal/kernel.rb
92
+ - lib/assets/javascripts/opal/native.rb
60
93
  - lib/assets/javascripts/opal/nil_class.rb
61
94
  - lib/assets/javascripts/opal/numeric.rb
95
+ - lib/assets/javascripts/opal/parser.js
62
96
  - lib/assets/javascripts/opal/proc.rb
63
97
  - lib/assets/javascripts/opal/racc.rb
64
98
  - lib/assets/javascripts/opal/range.rb
@@ -78,7 +112,6 @@ files:
78
112
  - lib/opal/scope.rb
79
113
  - lib/opal/version.rb
80
114
  - opal.gemspec
81
- - spec/autorun.rb
82
115
  - spec/core/array/allocate_spec.rb
83
116
  - spec/core/array/append_spec.rb
84
117
  - spec/core/array/assoc_spec.rb
@@ -102,6 +135,7 @@ files:
102
135
  - spec/core/array/empty_spec.rb
103
136
  - spec/core/array/equal_value_spec.rb
104
137
  - spec/core/array/fetch_spec.rb
138
+ - spec/core/array/fill_spec.rb
105
139
  - spec/core/array/first_spec.rb
106
140
  - spec/core/array/flatten_spec.rb
107
141
  - spec/core/array/include_spec.rb
@@ -137,7 +171,7 @@ files:
137
171
  - spec/core/array/take_while_spec.rb
138
172
  - spec/core/array/to_a_spec.rb
139
173
  - spec/core/array/to_ary_spec.rb
140
- - spec/core/array/to_json_spec.rb
174
+ - spec/core/array/try_convert_spec.rb
141
175
  - spec/core/array/uniq_spec.rb
142
176
  - spec/core/array/unshift_spec.rb
143
177
  - spec/core/array/zip_spec.rb
@@ -164,6 +198,7 @@ files:
164
198
  - spec/core/enumerable/detect_spec.rb
165
199
  - spec/core/enumerable/drop_spec.rb
166
200
  - spec/core/enumerable/drop_while_spec.rb
201
+ - spec/core/enumerable/each_slice_spec.rb
167
202
  - spec/core/enumerable/each_with_index_spec.rb
168
203
  - spec/core/enumerable/each_with_object_spec.rb
169
204
  - spec/core/enumerable/entries_spec.rb
@@ -173,6 +208,7 @@ files:
173
208
  - spec/core/enumerable/first_spec.rb
174
209
  - spec/core/enumerable/fixtures/classes.rb
175
210
  - spec/core/enumerable/grep_spec.rb
211
+ - spec/core/enumerable/group_by_spec.rb
176
212
  - spec/core/enumerable/select_spec.rb
177
213
  - spec/core/enumerable/take_spec.rb
178
214
  - spec/core/enumerable/to_a_spec.rb
@@ -254,12 +290,15 @@ files:
254
290
  - spec/core/module/alias_method_spec.rb
255
291
  - spec/core/module/ancestors_spec.rb
256
292
  - spec/core/module/append_features_spec.rb
293
+ - spec/core/module/const_get_spec.rb
294
+ - spec/core/module/undef_method_spec.rb
257
295
  - spec/core/nil/and_spec.rb
258
296
  - spec/core/nil/inspect_spec.rb
259
297
  - spec/core/nil/nil_spec.rb
260
298
  - spec/core/nil/or_spec.rb
261
299
  - spec/core/nil/to_a_spec.rb
262
300
  - spec/core/nil/to_f_spec.rb
301
+ - spec/core/nil/to_h_spec.rb
263
302
  - spec/core/nil/to_i_spec.rb
264
303
  - spec/core/nil/to_json_spec.rb
265
304
  - spec/core/nil/to_s_spec.rb
@@ -305,6 +344,7 @@ files:
305
344
  - spec/core/numeric/upto_spec.rb
306
345
  - spec/core/numeric/zero_spec.rb
307
346
  - spec/core/proc/call_spec.rb
347
+ - spec/core/proc/element_reference_spec.rb
308
348
  - spec/core/proc/proc_tricks_spec.rb
309
349
  - spec/core/range/begin_spec.rb
310
350
  - spec/core/range/case_compare_spec.rb
@@ -366,6 +406,12 @@ files:
366
406
  - spec/core/time/month_spec.rb
367
407
  - spec/core/time/now_spec.rb
368
408
  - spec/core/time/saturday_spec.rb
409
+ - spec/core_ext/array/to_json_spec.rb
410
+ - spec/core_ext/method_missing_spec.rb
411
+ - spec/core_ext/native/fixtures/classes.rb
412
+ - spec/core_ext/native/initialize_spec.rb
413
+ - spec/core_ext/native/method_missing_spec.rb
414
+ - spec/core_ext/native/to_native_spec.rb
369
415
  - spec/grammar/alias_spec.rb
370
416
  - spec/grammar/and_spec.rb
371
417
  - spec/grammar/array_spec.rb
@@ -463,12 +509,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
463
509
  version: '0'
464
510
  requirements: []
465
511
  rubyforge_project:
466
- rubygems_version: 1.8.24
512
+ rubygems_version: 1.8.23
467
513
  signing_key:
468
514
  specification_version: 3
469
515
  summary: Ruby runtime and core library for javascript
470
516
  test_files:
471
- - spec/autorun.rb
472
517
  - spec/core/array/allocate_spec.rb
473
518
  - spec/core/array/append_spec.rb
474
519
  - spec/core/array/assoc_spec.rb
@@ -492,6 +537,7 @@ test_files:
492
537
  - spec/core/array/empty_spec.rb
493
538
  - spec/core/array/equal_value_spec.rb
494
539
  - spec/core/array/fetch_spec.rb
540
+ - spec/core/array/fill_spec.rb
495
541
  - spec/core/array/first_spec.rb
496
542
  - spec/core/array/flatten_spec.rb
497
543
  - spec/core/array/include_spec.rb
@@ -527,7 +573,7 @@ test_files:
527
573
  - spec/core/array/take_while_spec.rb
528
574
  - spec/core/array/to_a_spec.rb
529
575
  - spec/core/array/to_ary_spec.rb
530
- - spec/core/array/to_json_spec.rb
576
+ - spec/core/array/try_convert_spec.rb
531
577
  - spec/core/array/uniq_spec.rb
532
578
  - spec/core/array/unshift_spec.rb
533
579
  - spec/core/array/zip_spec.rb
@@ -554,6 +600,7 @@ test_files:
554
600
  - spec/core/enumerable/detect_spec.rb
555
601
  - spec/core/enumerable/drop_spec.rb
556
602
  - spec/core/enumerable/drop_while_spec.rb
603
+ - spec/core/enumerable/each_slice_spec.rb
557
604
  - spec/core/enumerable/each_with_index_spec.rb
558
605
  - spec/core/enumerable/each_with_object_spec.rb
559
606
  - spec/core/enumerable/entries_spec.rb
@@ -563,6 +610,7 @@ test_files:
563
610
  - spec/core/enumerable/first_spec.rb
564
611
  - spec/core/enumerable/fixtures/classes.rb
565
612
  - spec/core/enumerable/grep_spec.rb
613
+ - spec/core/enumerable/group_by_spec.rb
566
614
  - spec/core/enumerable/select_spec.rb
567
615
  - spec/core/enumerable/take_spec.rb
568
616
  - spec/core/enumerable/to_a_spec.rb
@@ -644,12 +692,15 @@ test_files:
644
692
  - spec/core/module/alias_method_spec.rb
645
693
  - spec/core/module/ancestors_spec.rb
646
694
  - spec/core/module/append_features_spec.rb
695
+ - spec/core/module/const_get_spec.rb
696
+ - spec/core/module/undef_method_spec.rb
647
697
  - spec/core/nil/and_spec.rb
648
698
  - spec/core/nil/inspect_spec.rb
649
699
  - spec/core/nil/nil_spec.rb
650
700
  - spec/core/nil/or_spec.rb
651
701
  - spec/core/nil/to_a_spec.rb
652
702
  - spec/core/nil/to_f_spec.rb
703
+ - spec/core/nil/to_h_spec.rb
653
704
  - spec/core/nil/to_i_spec.rb
654
705
  - spec/core/nil/to_json_spec.rb
655
706
  - spec/core/nil/to_s_spec.rb
@@ -695,6 +746,7 @@ test_files:
695
746
  - spec/core/numeric/upto_spec.rb
696
747
  - spec/core/numeric/zero_spec.rb
697
748
  - spec/core/proc/call_spec.rb
749
+ - spec/core/proc/element_reference_spec.rb
698
750
  - spec/core/proc/proc_tricks_spec.rb
699
751
  - spec/core/range/begin_spec.rb
700
752
  - spec/core/range/case_compare_spec.rb
@@ -756,6 +808,12 @@ test_files:
756
808
  - spec/core/time/month_spec.rb
757
809
  - spec/core/time/now_spec.rb
758
810
  - spec/core/time/saturday_spec.rb
811
+ - spec/core_ext/array/to_json_spec.rb
812
+ - spec/core_ext/method_missing_spec.rb
813
+ - spec/core_ext/native/fixtures/classes.rb
814
+ - spec/core_ext/native/initialize_spec.rb
815
+ - spec/core_ext/native/method_missing_spec.rb
816
+ - spec/core_ext/native/to_native_spec.rb
759
817
  - spec/grammar/alias_spec.rb
760
818
  - spec/grammar/and_spec.rb
761
819
  - spec/grammar/array_spec.rb
@@ -1,36 +0,0 @@
1
- require 'opal/class'
2
- require 'opal/basic_object'
3
- require 'opal/kernel'
4
- require 'opal/nil_class'
5
- require 'opal/boolean'
6
- require 'opal/error'
7
- require 'opal/regexp'
8
- require 'opal/comparable'
9
- require 'opal/enumerable'
10
- require 'opal/array'
11
- require 'opal/hash'
12
- require 'opal/string'
13
- require 'opal/numeric'
14
- require 'opal/proc'
15
- require 'opal/range'
16
- require 'opal/time'
17
- require 'opal/date'
18
- require 'opal/json'
19
-
20
- # regexp matches
21
- $~ = nil
22
-
23
- $/ = "\n"
24
-
25
- RUBY_ENGINE = 'opal'
26
- RUBY_PLATFORM = 'opal'
27
- RUBY_VERSION = '1.9.2'
28
- OPAL_VERSION = `__opal.version`
29
-
30
- def to_s
31
- 'main'
32
- end
33
-
34
- def include(mod)
35
- Object.include mod
36
- end
data/spec/autorun.rb DELETED
@@ -1,3 +0,0 @@
1
- #= require opal
2
- #= require opal-spec
3
- #= require_tree .