opal 0.3.34 → 0.3.35

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.
data/Rakefile CHANGED
@@ -3,21 +3,21 @@ require 'opal-spec'
3
3
 
4
4
  desc "Build opal.js into ./build"
5
5
  task :opal => [:dir] do
6
- File.open('build/opal.js', 'w+') { |o| o.puts Opal.runtime }
6
+ File.open('build/opal.js', 'w+') { |o| o.puts Opal.process('opal') }
7
7
  end
8
8
 
9
9
  desc "Build opal-parser.js into ./build"
10
10
  task :parser => [:dir] do
11
- File.open('build/opal-parser.js', 'w+') { |o| o.puts Opal.parser_code }
11
+ File.open('build/opal-parser.js', 'w+') { |o| o.puts Opal.process('opal-parser') }
12
12
  end
13
13
 
14
14
  desc "Build specs ready to run"
15
15
  task :build_specs => [:dir] do
16
16
  Opal.append_path File.join(File.dirname(__FILE__), 'spec')
17
17
 
18
- File.open('build/specs.js', 'w+') do |out|
19
- out.puts Opal.process('spec_helper')
20
- end
18
+ File.open('build/core_spec.js', 'w+') { |o| o.puts Opal.process('core_spec') }
19
+ File.open('build/grammar_spec.js', 'w+') { |o| o.puts Opal.process('grammar_spec') }
20
+ File.open('build/specs.js', 'w+') { |o| o.puts Opal.process('spec_helper') }
21
21
  end
22
22
 
23
23
  task :default => [:build_specs, :parser, :test]
@@ -3,7 +3,7 @@
3
3
 
4
4
  // We need (some) of the libs from our real ruby parser (not in sprockets load path)
5
5
  <% ['/grammar', '/lexer', '/parser', '/scope', ''].each do |f| %>
6
- <%= Opal.parse File.read(File.join Opal.lib_dir, "opal#{f}.rb") %>
6
+ <%= Opal.parse File.read(File.join Opal.core_dir, '..', '..', "opal#{f}.rb") %>
7
7
  <% end %>
8
8
 
9
9
  (function() {
@@ -0,0 +1,37 @@
1
+ #= require_self
2
+ #= require opal/class
3
+ #= require opal/basic_object
4
+ #= require opal/kernel
5
+ #= require opal/nil_class
6
+ #= require opal/boolean
7
+ #= require opal/error
8
+ #= require opal/regexp
9
+ #= require opal/comparable
10
+ #= require opal/enumerable
11
+ #= require opal/array
12
+ #= require opal/hash
13
+ #= require opal/string
14
+ #= require opal/numeric
15
+ #= require opal/proc
16
+ #= require opal/range
17
+ #= require opal/time
18
+ #= require opal/date
19
+ #= require opal/json
20
+
21
+ # regexp matches
22
+ $~ = nil
23
+
24
+ $/ = "\n"
25
+
26
+ RUBY_ENGINE = 'opal'
27
+ RUBY_PLATFORM = 'opal'
28
+ RUBY_VERSION = '1.9.2'
29
+ OPAL_VERSION = `__opal.version`
30
+
31
+ def to_s
32
+ 'main'
33
+ end
34
+
35
+ def include(mod)
36
+ Object.include mod
37
+ end
@@ -1,4 +1,5 @@
1
1
  require 'opal/parser'
2
+ require 'opal/processor'
2
3
  require 'opal/version'
3
4
 
4
5
  # Opal is a ruby to javascript compiler, with a runtime for running
@@ -17,22 +18,6 @@ module Opal
17
18
  Parser.new.parse str, file
18
19
  end
19
20
 
20
- # Returns opal runtime js code (string)
21
- #
22
- # Opal.runtime
23
- # # => "(function() { Opal = {}; ... })();"
24
- #
25
- # @return [String] returns opal runtime/corelib as a string
26
- def self.runtime
27
- process('opal').rstrip
28
- end
29
- # Returns parser prebuilt for js-environments.
30
- #
31
- # @return [String]
32
- def self.parser_code
33
- process('opal-parser')
34
- end
35
-
36
21
  def self.core_dir
37
22
  File.join File.dirname(__FILE__), 'assets', 'javascripts'
38
23
  end
@@ -41,25 +26,16 @@ module Opal
41
26
  paths << path
42
27
  end
43
28
 
44
- def self.lib_dir
45
- File.join File.dirname(__FILE__)
46
- end
47
-
48
- # Private, don't access these directly
29
+ # Private, don't add to these directly (use .append_path instead).
49
30
  def self.paths
50
- @paths ||= []
31
+ @paths ||= [Opal.core_dir]
51
32
  end
52
33
 
53
34
  # Build ruby/opal file at fname
54
35
  def self.process(fname)
55
- require 'opal/processor'
56
-
57
36
  env = Sprockets::Environment.new
58
37
  paths.each { |p| env.append_path p }
59
38
 
60
39
  env[fname].to_s
61
40
  end
62
41
  end
63
-
64
- # Add corelib to assets path
65
- Opal.append_path Opal.core_dir
@@ -14,6 +14,7 @@ module Opal
14
14
  end
15
15
 
16
16
  def prepare
17
+ # ...
17
18
  end
18
19
 
19
20
  def evaluate(scope, locals, &block)
@@ -24,3 +25,6 @@ end
24
25
 
25
26
  Tilt.register 'rb', Opal::Processor
26
27
  Sprockets.register_engine '.rb', Opal::Processor
28
+
29
+ Tilt.register 'opal', Opal::Processor
30
+ Sprockets.register_engine '.opal', Opal::Processor
@@ -1,3 +1,3 @@
1
1
  module Opal
2
- VERSION = '0.3.34'
2
+ VERSION = '0.3.35'
3
3
  end
@@ -13,5 +13,7 @@ Gem::Specification.new do |s|
13
13
  s.files = `git ls-files`.split("\n")
14
14
  s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
15
15
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
16
- s.require_paths = ['lib']
16
+ s.require_paths = ['lib']
17
+
18
+ s.add_runtime_dependency 'sprockets'
17
19
  end
@@ -0,0 +1,10 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>Opal corelib and runtime specs (core)</title>
5
+ </head>
6
+ <body>
7
+ <script type="text/javascript" src="../build/specs.js"></script>
8
+ <script type="text/javascript" src="../build/core_spec.js"></script>
9
+ </body>
10
+ </html>
@@ -0,0 +1,2 @@
1
+ #= require_tree ./core
2
+ #= require_tree ./language
@@ -0,0 +1,11 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>Opal corelib and runtime specs (grammar)</title>
5
+ </head>
6
+ <body>
7
+ <script type="text/javascript" src="../build/specs.js"></script>
8
+ <script type="text/javascript" src="../build/opal-parser.js"></script>
9
+ <script type="text/javascript" src="../build/grammar_spec.js"></script>
10
+ </body>
11
+ </html>
@@ -0,0 +1 @@
1
+ #= require_tree ./grammar
@@ -1,10 +1,12 @@
1
- <!doctype html>
1
+ <!DOCTYPE html>
2
2
  <html>
3
3
  <head>
4
4
  <title>Opal corelib and runtime specs</title>
5
- <script type="text/javascript" src="../build/specs.js"></script>
6
- <script type="text/javascript" src="../build/opal-parser.js"></script>
7
5
  </head>
8
6
  <body>
7
+ <script type="text/javascript" src="../build/specs.js"></script>
8
+ <script type="text/javascript" src="../build/opal-parser.js"></script>
9
+ <script type="text/javascript" src="../build/core_spec.js"></script>
10
+ <script type="text/javascript" src="../build/grammar_spec.js"></script>
9
11
  </body>
10
12
  </html>
@@ -1,6 +1,5 @@
1
1
  #= require opal
2
2
  #= require opal-spec
3
- #= require_tree .
4
3
 
5
4
  module Kernel
6
5
  def opal_eval(str)
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.34
4
+ version: 0.3.35
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,7 +10,18 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
  date: 2013-02-05 00:00:00.000000000Z
13
- dependencies: []
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: sprockets
16
+ requirement: &70122599320160 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *70122599320160
14
25
  description: Ruby runtime and core library for javascript.
15
26
  email: adam.beynon@gmail.com
16
27
  executables:
@@ -28,13 +39,12 @@ files:
28
39
  - bin/opal
29
40
  - lib/assets/javascripts/opal-parser.js.erb
30
41
  - lib/assets/javascripts/opal.js.erb
31
- - lib/assets/javascripts/opal/alpha.rb
32
42
  - lib/assets/javascripts/opal/array.rb
33
43
  - lib/assets/javascripts/opal/basic_object.rb
34
44
  - lib/assets/javascripts/opal/boolean.rb
35
45
  - lib/assets/javascripts/opal/class.rb
36
46
  - lib/assets/javascripts/opal/comparable.rb
37
- - lib/assets/javascripts/opal/core.js
47
+ - lib/assets/javascripts/opal/core.rb
38
48
  - lib/assets/javascripts/opal/date.rb
39
49
  - lib/assets/javascripts/opal/enumerable.rb
40
50
  - lib/assets/javascripts/opal/error.rb
@@ -59,6 +69,7 @@ files:
59
69
  - lib/opal/scope.rb
60
70
  - lib/opal/version.rb
61
71
  - opal.gemspec
72
+ - spec/core.html
62
73
  - spec/core/array/allocate_spec.rb
63
74
  - spec/core/array/append_spec.rb
64
75
  - spec/core/array/assoc_spec.rb
@@ -336,8 +347,6 @@ files:
336
347
  - spec/core/string/to_sym_spec.rb
337
348
  - spec/core/string/underscore_spec.rb
338
349
  - spec/core/string/upcase_spec.rb
339
- - spec/core/strscan/check_spec.rb
340
- - spec/core/strscan/scan_spec.rb
341
350
  - spec/core/symbol/to_proc_spec.rb
342
351
  - spec/core/time/at_spec.rb
343
352
  - spec/core/time/day_spec.rb
@@ -348,6 +357,8 @@ files:
348
357
  - spec/core/time/month_spec.rb
349
358
  - spec/core/time/now_spec.rb
350
359
  - spec/core/time/saturday_spec.rb
360
+ - spec/core_spec.rb
361
+ - spec/grammar.html
351
362
  - spec/grammar/alias_spec.rb
352
363
  - spec/grammar/and_spec.rb
353
364
  - spec/grammar/array_spec.rb
@@ -379,10 +390,13 @@ files:
379
390
  - spec/grammar/op_asgn1_spec.rb
380
391
  - spec/grammar/op_asgn2_spec.rb
381
392
  - spec/grammar/or_spec.rb
393
+ - spec/grammar/parser_spec.rb
382
394
  - spec/grammar/return_spec.rb
383
395
  - spec/grammar/sclass_spec.rb
384
396
  - spec/grammar/self_spec.rb
385
397
  - spec/grammar/str_spec.rb
398
+ - spec/grammar/strscan/check_spec.rb
399
+ - spec/grammar/strscan/scan_spec.rb
386
400
  - spec/grammar/super_spec.rb
387
401
  - spec/grammar/true_spec.rb
388
402
  - spec/grammar/undef_spec.rb
@@ -390,6 +404,7 @@ files:
390
404
  - spec/grammar/while_spec.rb
391
405
  - spec/grammar/xstr_spec.rb
392
406
  - spec/grammar/yield_spec.rb
407
+ - spec/grammar_spec.rb
393
408
  - spec/index.html
394
409
  - spec/language/alias_spec.rb
395
410
  - spec/language/and_spec.rb
@@ -422,7 +437,6 @@ files:
422
437
  - spec/language/variables_spec.rb
423
438
  - spec/language/while_spec.rb
424
439
  - spec/language/yield_spec.rb
425
- - spec/parser/simple_spec.rb
426
440
  - spec/spec_helper.rb
427
441
  homepage: http://opalrb.org
428
442
  licenses: []
@@ -449,6 +463,7 @@ signing_key:
449
463
  specification_version: 3
450
464
  summary: Ruby runtime and core library for javascript
451
465
  test_files:
466
+ - spec/core.html
452
467
  - spec/core/array/allocate_spec.rb
453
468
  - spec/core/array/append_spec.rb
454
469
  - spec/core/array/assoc_spec.rb
@@ -726,8 +741,6 @@ test_files:
726
741
  - spec/core/string/to_sym_spec.rb
727
742
  - spec/core/string/underscore_spec.rb
728
743
  - spec/core/string/upcase_spec.rb
729
- - spec/core/strscan/check_spec.rb
730
- - spec/core/strscan/scan_spec.rb
731
744
  - spec/core/symbol/to_proc_spec.rb
732
745
  - spec/core/time/at_spec.rb
733
746
  - spec/core/time/day_spec.rb
@@ -738,6 +751,8 @@ test_files:
738
751
  - spec/core/time/month_spec.rb
739
752
  - spec/core/time/now_spec.rb
740
753
  - spec/core/time/saturday_spec.rb
754
+ - spec/core_spec.rb
755
+ - spec/grammar.html
741
756
  - spec/grammar/alias_spec.rb
742
757
  - spec/grammar/and_spec.rb
743
758
  - spec/grammar/array_spec.rb
@@ -769,10 +784,13 @@ test_files:
769
784
  - spec/grammar/op_asgn1_spec.rb
770
785
  - spec/grammar/op_asgn2_spec.rb
771
786
  - spec/grammar/or_spec.rb
787
+ - spec/grammar/parser_spec.rb
772
788
  - spec/grammar/return_spec.rb
773
789
  - spec/grammar/sclass_spec.rb
774
790
  - spec/grammar/self_spec.rb
775
791
  - spec/grammar/str_spec.rb
792
+ - spec/grammar/strscan/check_spec.rb
793
+ - spec/grammar/strscan/scan_spec.rb
776
794
  - spec/grammar/super_spec.rb
777
795
  - spec/grammar/true_spec.rb
778
796
  - spec/grammar/undef_spec.rb
@@ -780,6 +798,7 @@ test_files:
780
798
  - spec/grammar/while_spec.rb
781
799
  - spec/grammar/xstr_spec.rb
782
800
  - spec/grammar/yield_spec.rb
801
+ - spec/grammar_spec.rb
783
802
  - spec/index.html
784
803
  - spec/language/alias_spec.rb
785
804
  - spec/language/and_spec.rb
@@ -812,5 +831,4 @@ test_files:
812
831
  - spec/language/variables_spec.rb
813
832
  - spec/language/while_spec.rb
814
833
  - spec/language/yield_spec.rb
815
- - spec/parser/simple_spec.rb
816
834
  - spec/spec_helper.rb
@@ -1,17 +0,0 @@
1
- # regexp matches
2
- $~ = nil
3
-
4
- $/ = "\n"
5
-
6
- RUBY_ENGINE = 'opal'
7
- RUBY_PLATFORM = 'opal'
8
- RUBY_VERSION = '1.9.2'
9
- OPAL_VERSION = `__opal.version`
10
-
11
- def to_s
12
- 'main'
13
- end
14
-
15
- def include(mod)
16
- Object.include mod
17
- end
@@ -1,18 +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