opal 0.10.6 → 0.11.0.rc1
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 +5 -5
- data/.codeclimate.yml +19 -0
- data/.gitmodules +1 -1
- data/.jshintrc +1 -2
- data/.travis.yml +26 -18
- data/CHANGELOG.md +89 -23
- data/{CODE_OF_CONDUCT.md → CONDUCT.md} +0 -0
- data/Gemfile +19 -21
- data/HACKING.md +2 -0
- data/README.md +7 -6
- data/Rakefile +1 -1
- data/appveyor.yml +21 -4
- data/benchmark-ips/bm_case.rb +33 -0
- data/benchmark-ips/bm_constants_lookup.rb +13 -0
- data/benchmark-ips/bm_is_number.rb +29 -0
- data/benchmark-ips/bm_symbol_to_proc.rb +19 -0
- data/benchmark/bm_constant_lookup_big.rb +799 -0
- data/benchmark/bm_constant_lookup_small.rb +59 -0
- data/benchmark/bm_module_definition_big.rb +400 -0
- data/benchmark/bm_module_definition_small.rb +30 -0
- data/bin/opal-repl +23 -1
- data/docs/compiled_ruby.md +16 -14
- data/docs/faq.md +3 -3
- data/docs/rspec.md +2 -1
- data/docs/unsupported_features.md +6 -4
- data/examples/rack/Gemfile +1 -0
- data/examples/rack/app/application.rb +14 -3
- data/examples/rack/app/user.rb +2 -0
- data/examples/rack/config.ru +1 -1
- data/examples/rack/index.html.erb +1 -0
- data/lib/opal.rb +6 -1
- data/lib/opal/ast/builder.rb +17 -0
- data/lib/opal/ast/node.rb +30 -0
- data/lib/opal/builder.rb +14 -3
- data/lib/opal/builder_processors.rb +1 -0
- data/lib/opal/cli.rb +45 -59
- data/lib/opal/cli_options.rb +11 -7
- data/lib/opal/cli_runners.rb +1 -0
- data/lib/opal/cli_runners/applescript.rb +3 -3
- data/lib/opal/cli_runners/nashorn.rb +1 -0
- data/lib/opal/cli_runners/nodejs.rb +4 -1
- data/lib/opal/cli_runners/phantom.js +1 -2
- data/lib/opal/cli_runners/phantomjs.rb +3 -2
- data/lib/opal/cli_runners/server.rb +1 -0
- data/lib/opal/compiler.rb +145 -94
- data/lib/opal/config.rb +1 -0
- data/lib/opal/deprecations.rb +18 -0
- data/lib/opal/erb.rb +1 -0
- data/lib/opal/errors.rb +1 -0
- data/lib/opal/fragment.rb +1 -0
- data/lib/opal/hike_path_finder.rb +1 -0
- data/lib/opal/nodes.rb +3 -0
- data/lib/opal/nodes/arglist.rb +2 -1
- data/lib/opal/nodes/args/initialize_kwargs.rb +1 -0
- data/lib/opal/nodes/args/kwarg.rb +7 -7
- data/lib/opal/nodes/args/kwoptarg.rb +6 -7
- data/lib/opal/nodes/args/kwrestarg.rb +5 -5
- data/lib/opal/nodes/args/mlhsarg.rb +3 -2
- data/lib/opal/nodes/args/normarg.rb +6 -7
- data/lib/opal/nodes/args/optarg.rb +5 -7
- data/lib/opal/nodes/args/post_args.rb +6 -5
- data/lib/opal/nodes/args/post_kwargs.rb +1 -0
- data/lib/opal/nodes/args/restarg.rb +7 -7
- data/lib/opal/nodes/array.rb +1 -0
- data/lib/opal/nodes/base.rb +24 -3
- data/lib/opal/nodes/call.rb +167 -155
- data/lib/opal/nodes/call_special.rb +31 -217
- data/lib/opal/nodes/case.rb +36 -22
- data/lib/opal/nodes/class.rb +4 -3
- data/lib/opal/nodes/constants.rb +28 -48
- data/lib/opal/nodes/csend.rb +25 -0
- data/lib/opal/nodes/def.rb +49 -16
- data/lib/opal/nodes/defined.rb +170 -60
- data/lib/opal/nodes/definitions.rb +40 -133
- data/lib/opal/nodes/defs.rb +29 -0
- data/lib/opal/nodes/for.rb +52 -25
- data/lib/opal/nodes/hash.rb +12 -35
- data/lib/opal/nodes/helpers.rb +27 -54
- data/lib/opal/nodes/if.rb +21 -32
- data/lib/opal/nodes/inline_args.rb +12 -13
- data/lib/opal/nodes/iter.rb +61 -36
- data/lib/opal/nodes/literal.rb +189 -116
- data/lib/opal/nodes/logic.rb +20 -25
- data/lib/opal/nodes/masgn.rb +20 -18
- data/lib/opal/nodes/module.rb +10 -11
- data/lib/opal/nodes/node_with_args.rb +14 -17
- data/lib/opal/nodes/rescue.rb +37 -70
- data/lib/opal/nodes/runtime_helpers.rb +8 -3
- data/lib/opal/nodes/scope.rb +9 -5
- data/lib/opal/nodes/singleton_class.rb +4 -3
- data/lib/opal/nodes/super.rb +115 -87
- data/lib/opal/nodes/top.rb +7 -2
- data/lib/opal/nodes/variables.rb +46 -35
- data/lib/opal/nodes/while.rb +11 -1
- data/lib/opal/nodes/yield.rb +1 -17
- data/lib/opal/parser.rb +28 -770
- data/lib/opal/path_reader.rb +5 -1
- data/lib/opal/paths.rb +10 -4
- data/lib/opal/regexp_anchors.rb +1 -0
- data/lib/opal/rewriter.rb +60 -0
- data/lib/opal/rewriters/base.rb +60 -0
- data/lib/opal/rewriters/binary_operator_assignment.rb +144 -0
- data/lib/opal/rewriters/block_to_iter.rb +17 -0
- data/lib/opal/rewriters/break_finder.rb +34 -0
- data/lib/opal/rewriters/dot_js_syntax.rb +60 -0
- data/lib/opal/rewriters/explicit_writer_return.rb +58 -0
- data/lib/opal/rewriters/js_reserved_words.rb +111 -0
- data/lib/opal/rewriters/logical_operator_assignment.rb +155 -0
- data/lib/opal/rewriters/opal_engine_check.rb +42 -0
- data/lib/opal/rewriters/rubyspec/filters_rewriter.rb +67 -0
- data/lib/opal/server.rb +4 -0
- data/lib/opal/simple_server.rb +100 -0
- data/lib/opal/source_map.rb +1 -1
- data/lib/opal/util.rb +5 -5
- data/lib/opal/version.rb +2 -1
- data/lib/tilt/opal.rb +1 -0
- data/opal.gemspec +8 -7
- data/opal/README.md +1 -1
- data/opal/corelib/array.rb +137 -83
- data/opal/corelib/basic_object.rb +6 -6
- data/opal/corelib/class.rb +14 -11
- data/opal/corelib/complex.rb +5 -1
- data/opal/corelib/constants.rb +3 -3
- data/opal/corelib/enumerable.rb +129 -11
- data/opal/corelib/error.rb +35 -17
- data/opal/corelib/file.rb +65 -170
- data/opal/corelib/hash.rb +128 -13
- data/opal/corelib/helpers.rb +12 -15
- data/opal/corelib/io.rb +1 -0
- data/opal/corelib/kernel.rb +40 -21
- data/opal/corelib/marshal/read_buffer.rb +1 -1
- data/opal/corelib/method.rb +33 -13
- data/opal/corelib/module.rb +133 -81
- data/opal/corelib/number.rb +141 -25
- data/opal/corelib/numeric.rb +0 -8
- data/opal/corelib/process.rb +44 -4
- data/opal/corelib/random.rb +117 -0
- data/opal/corelib/random/seedrandom.js.rb +15 -0
- data/opal/corelib/range.rb +133 -10
- data/opal/corelib/regexp.rb +37 -9
- data/opal/corelib/runtime.js +601 -390
- data/opal/corelib/string.rb +39 -8
- data/opal/corelib/string/encoding.rb +51 -7
- data/opal/corelib/struct.rb +20 -0
- data/opal/corelib/time.rb +3 -3
- data/opal/corelib/variables.rb +1 -1
- data/opal/opal.rb +1 -0
- data/spec/filters/bugs/array.rb +5 -1
- data/spec/filters/bugs/basicobject.rb +2 -5
- data/spec/filters/bugs/bigdecimal.rb +8 -22
- data/spec/filters/bugs/class.rb +2 -1
- data/spec/filters/bugs/comparable.rb +5 -0
- data/spec/filters/bugs/date.rb +3 -3
- data/spec/filters/bugs/enumerable.rb +4 -11
- data/spec/filters/bugs/enumerator.rb +2 -4
- data/spec/filters/bugs/exception.rb +16 -2
- data/spec/filters/bugs/file.rb +8 -0
- data/spec/filters/bugs/float.rb +7 -1
- data/spec/filters/bugs/hash.rb +6 -2
- data/spec/filters/bugs/integer.rb +2 -0
- data/spec/filters/bugs/io.rb +8 -0
- data/spec/filters/bugs/kernel.rb +9 -138
- data/spec/filters/bugs/language.rb +89 -174
- data/spec/filters/bugs/marshal.rb +33 -35
- data/spec/filters/bugs/method.rb +0 -24
- data/spec/filters/bugs/module.rb +19 -55
- data/spec/filters/bugs/numeric.rb +0 -119
- data/spec/filters/bugs/pathname.rb +2 -0
- data/spec/filters/bugs/proc.rb +5 -4
- data/spec/filters/bugs/random.rb +7 -0
- data/spec/filters/bugs/range.rb +12 -120
- data/spec/filters/bugs/rational.rb +1 -1
- data/spec/filters/bugs/regexp.rb +2 -40
- data/spec/filters/bugs/set.rb +0 -1
- data/spec/filters/bugs/string.rb +5 -8
- data/spec/filters/bugs/stringscanner.rb +11 -19
- data/spec/filters/bugs/time.rb +7 -1
- data/spec/filters/bugs/unboundmethod.rb +1 -11
- data/spec/filters/unsupported/array.rb +5 -1
- data/spec/filters/unsupported/basicobject.rb +1 -1
- data/spec/filters/unsupported/bignum.rb +4 -1
- data/spec/filters/unsupported/class.rb +1 -1
- data/spec/filters/unsupported/delegator.rb +1 -1
- data/spec/filters/unsupported/enumerable.rb +1 -1
- data/spec/filters/unsupported/enumerator.rb +1 -1
- data/spec/filters/unsupported/file.rb +4 -0
- data/spec/filters/unsupported/fixnum.rb +1 -1
- data/spec/filters/unsupported/float.rb +4 -1
- data/spec/filters/unsupported/freeze.rb +27 -5
- data/spec/filters/unsupported/hash.rb +7 -15
- data/spec/filters/unsupported/integer.rb +1 -1
- data/spec/filters/unsupported/kernel.rb +2 -1
- data/spec/filters/unsupported/language.rb +6 -1
- data/spec/filters/unsupported/marshal.rb +1 -1
- data/spec/filters/unsupported/matchdata.rb +4 -1
- data/spec/filters/unsupported/math.rb +1 -1
- data/spec/filters/unsupported/pathname.rb +1 -1
- data/spec/filters/unsupported/privacy.rb +141 -9
- data/spec/filters/unsupported/proc.rb +1 -1
- data/spec/filters/unsupported/random.rb +4 -0
- data/spec/filters/unsupported/range.rb +7 -0
- data/spec/filters/unsupported/regexp.rb +25 -15
- data/spec/filters/unsupported/set.rb +1 -1
- data/spec/filters/unsupported/singleton.rb +1 -1
- data/spec/filters/unsupported/string.rb +110 -101
- data/spec/filters/unsupported/struct.rb +1 -1
- data/spec/filters/unsupported/symbol.rb +2 -1
- data/spec/filters/unsupported/taint.rb +22 -7
- data/spec/filters/unsupported/thread.rb +1 -1
- data/spec/filters/unsupported/time.rb +1 -1
- data/spec/lib/builder_spec.rb +17 -0
- data/spec/lib/cli_spec.rb +37 -8
- data/spec/lib/compiler/call_spec.rb +98 -66
- data/spec/lib/compiler_spec.rb +39 -30
- data/spec/lib/dependency_resolver_spec.rb +2 -2
- data/spec/lib/deprecations_spec.rb +16 -0
- data/spec/lib/fixtures/source_location_test.rb +7 -0
- data/spec/lib/rewriters/binary_operator_assignment_spec.rb +151 -0
- data/spec/lib/rewriters/block_to_iter_spec.rb +28 -0
- data/spec/lib/rewriters/dot_js_syntax_spec.rb +108 -0
- data/spec/lib/rewriters/explicit_writer_return_spec.rb +186 -0
- data/spec/lib/rewriters/js_reserved_words_spec.rb +116 -0
- data/spec/lib/rewriters/logical_operator_assignment_spec.rb +202 -0
- data/spec/lib/rewriters/opal_engine_check_spec.rb +82 -0
- data/spec/lib/rewriters/rubyspec/filters_rewriter_spec.rb +53 -0
- data/spec/lib/simple_server_spec.rb +54 -0
- data/spec/mspec-opal/formatters.rb +65 -17
- data/spec/mspec-opal/runner.rb +47 -67
- data/spec/opal/core/date_spec.rb +14 -0
- data/spec/opal/core/exception_spec.rb +10 -0
- data/spec/opal/core/hash/internals_spec.rb +10 -10
- data/spec/opal/core/kernel/rand_spec.rb +0 -4
- data/spec/opal/core/kernel/respond_to_spec.rb +5 -2
- data/spec/opal/core/language/constant_lookup_spec.rb +38 -0
- data/spec/opal/core/language/predefined_spec.rb +1 -1
- data/spec/opal/core/language/safe_navigator_spec.rb +7 -0
- data/spec/opal/core/language/send_spec.rb +1 -9
- data/spec/opal/core/language/string_spec.rb +8 -8
- data/spec/opal/core/language/versions/def_2_0_spec.rb +0 -4
- data/spec/opal/core/language_spec.rb +32 -0
- data/spec/opal/core/module/const_get_spec.rb +1 -1
- data/spec/opal/core/runtime/is_a_spec.rb +36 -0
- data/spec/opal/core/runtime/rescue_spec.rb +35 -0
- data/spec/opal/core/runtime_spec.rb +4 -4
- data/spec/opal/core/string_spec.rb +8 -8
- data/spec/opal/core/time_spec.rb +26 -17
- data/spec/opal/stdlib/erb/quoted.opalerb +1 -1
- data/spec/opal/stdlib/json/parse_spec.rb +4 -0
- data/spec/opal/stdlib/native/hash_spec.rb +16 -0
- data/spec/ruby_specs +2 -1
- data/spec/spec_helper.rb +1 -0
- data/spec/support/rewriters_helper.rb +24 -0
- data/stdlib/base64.rb +4 -2
- data/stdlib/bigdecimal/bignumber.js.rb +1 -1
- data/stdlib/date.rb +18 -19
- data/stdlib/json.rb +16 -4
- data/stdlib/nashorn/file.rb +15 -0
- data/stdlib/native.rb +21 -12
- data/stdlib/nodejs/dir.rb +1 -1
- data/stdlib/nodejs/file.rb +49 -20
- data/stdlib/nodejs/io.rb +22 -1
- data/stdlib/nodejs/{node_modules/js-yaml/dist/js-yaml.js → js-yaml-3-6-1.js} +815 -626
- data/stdlib/nodejs/kernel.rb +3 -1
- data/stdlib/nodejs/package.json +0 -1
- data/stdlib/nodejs/stacktrace.rb +163 -0
- data/stdlib/nodejs/yaml.rb +2 -1
- data/stdlib/opal-platform.rb +15 -0
- data/stdlib/opal/platform.rb +5 -13
- data/stdlib/pathname.rb +1 -1
- data/stdlib/strscan.rb +15 -1
- data/stdlib/yaml.rb +1 -1
- data/tasks/benchmarking.rake +9 -0
- data/tasks/building.rake +24 -20
- data/tasks/linting.rake +24 -13
- data/tasks/testing.rake +322 -205
- data/tasks/testing/mspec_special_calls.rb +44 -15
- data/tasks/testing/opal_rspec_smoketest.Gemfile +13 -0
- data/test/nodejs/fixtures/hello.rb +1 -0
- data/test/nodejs/test_file.rb +57 -0
- data/test/nodejs/test_io.rb +18 -0
- data/test/nodejs/test_opal_builder.rb +12 -0
- data/test/opal/unsupported_and_bugs.rb +9 -0
- metadata +127 -240
- data/lib/opal/parser/grammar.rb +0 -6157
- data/lib/opal/parser/grammar.y +0 -2011
- data/lib/opal/parser/keywords.rb +0 -66
- data/lib/opal/parser/lexer.rb +0 -1352
- data/lib/opal/parser/parser_scope.rb +0 -28
- data/lib/opal/parser/sexp.rb +0 -90
- data/lib/opal/sprockets.rb +0 -77
- data/lib/opal/sprockets/environment.rb +0 -23
- data/lib/opal/sprockets/erb.rb +0 -28
- data/lib/opal/sprockets/path_reader.rb +0 -36
- data/lib/opal/sprockets/processor.rb +0 -173
- data/lib/opal/sprockets/server.rb +0 -133
- data/lib/opal/sprockets/source_map_header_patch.rb +0 -41
- data/lib/opal/sprockets/source_map_server.rb +0 -117
- data/spec/filters/bugs/compiler_opal.rb +0 -5
- data/spec/filters/bugs/language_opal.rb +0 -88
- data/spec/filters/unsupported/module.rb +0 -8
- data/spec/lib/compiler/pre_processed_conditionals_spec.rb +0 -87
- data/spec/lib/lexer_spec.rb +0 -110
- data/spec/lib/parser/alias_spec.rb +0 -26
- data/spec/lib/parser/and_spec.rb +0 -13
- data/spec/lib/parser/aref_spec.rb +0 -10
- data/spec/lib/parser/attrasgn_spec.rb +0 -28
- data/spec/lib/parser/begin_spec.rb +0 -42
- data/spec/lib/parser/block_spec.rb +0 -12
- data/spec/lib/parser/break_spec.rb +0 -17
- data/spec/lib/parser/call_spec.rb +0 -201
- data/spec/lib/parser/class_spec.rb +0 -35
- data/spec/lib/parser/comments_spec.rb +0 -11
- data/spec/lib/parser/def_spec.rb +0 -109
- data/spec/lib/parser/if_spec.rb +0 -26
- data/spec/lib/parser/iter_spec.rb +0 -59
- data/spec/lib/parser/lambda_spec.rb +0 -219
- data/spec/lib/parser/literal_spec.rb +0 -118
- data/spec/lib/parser/masgn_spec.rb +0 -37
- data/spec/lib/parser/module_spec.rb +0 -27
- data/spec/lib/parser/not_spec.rb +0 -21
- data/spec/lib/parser/op_asgn1_spec.rb +0 -23
- data/spec/lib/parser/op_asgn2_spec.rb +0 -23
- data/spec/lib/parser/op_asgn_spec.rb +0 -17
- data/spec/lib/parser/or_spec.rb +0 -13
- data/spec/lib/parser/return_spec.rb +0 -22
- data/spec/lib/parser/sclass_spec.rb +0 -21
- data/spec/lib/parser/string_spec.rb +0 -286
- data/spec/lib/parser/super_spec.rb +0 -20
- data/spec/lib/parser/unary_spec.rb +0 -52
- data/spec/lib/parser/undef_spec.rb +0 -19
- data/spec/lib/parser/unless_spec.rb +0 -13
- data/spec/lib/parser/variables_spec.rb +0 -112
- data/spec/lib/parser/while_spec.rb +0 -15
- data/spec/lib/parser/yield_spec.rb +0 -20
- data/spec/lib/sprockets/erb_spec.rb +0 -38
- data/spec/lib/sprockets/path_reader_spec.rb +0 -41
- data/spec/lib/sprockets/processor_spec.rb +0 -79
- data/spec/lib/sprockets/server_spec.rb +0 -102
- data/spec/lib/sprockets_spec.rb +0 -39
- data/spec/lib/tilt/opal_spec.rb +0 -37
- data/spec/opal/core/language/block_spec.rb +0 -538
- data/spec/opal/core/language/proc_spec.rb +0 -263
- data/spec/opal/core/language/variables_spec.rb +0 -1366
- data/spec/opal/core/runtime/block_send_spec.rb +0 -28
- data/spec/opal/core/runtime/send_spec.rb +0 -34
- data/spec/support/parser_helpers.rb +0 -37
- data/stdlib/nodejs/node_modules/js-yaml/HISTORY.md +0 -277
- data/stdlib/nodejs/node_modules/js-yaml/LICENSE +0 -21
- data/stdlib/nodejs/node_modules/js-yaml/README.md +0 -288
- data/stdlib/nodejs/node_modules/js-yaml/bin/js-yaml.js +0 -140
- data/stdlib/nodejs/node_modules/js-yaml/bower.json +0 -23
- data/stdlib/nodejs/node_modules/js-yaml/dist/js-yaml.min.js +0 -3
- data/stdlib/nodejs/node_modules/js-yaml/examples/custom_types.js +0 -102
- data/stdlib/nodejs/node_modules/js-yaml/examples/custom_types.yml +0 -18
- data/stdlib/nodejs/node_modules/js-yaml/examples/dumper.js +0 -31
- data/stdlib/nodejs/node_modules/js-yaml/examples/dumper.json +0 -22
- data/stdlib/nodejs/node_modules/js-yaml/examples/sample_document.js +0 -18
- data/stdlib/nodejs/node_modules/js-yaml/examples/sample_document.yml +0 -197
- data/stdlib/nodejs/node_modules/js-yaml/index.js +0 -7
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml.js +0 -39
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/common.js +0 -62
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/dumper.js +0 -554
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/exception.js +0 -25
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/loader.js +0 -1581
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/mark.js +0 -78
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/schema.js +0 -103
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/schema/core.js +0 -18
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/schema/default_full.js +0 -25
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js +0 -28
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js +0 -17
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/schema/json.js +0 -25
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type.js +0 -61
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/binary.js +0 -133
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/bool.js +0 -37
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/float.js +0 -110
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/int.js +0 -183
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/js/function.js +0 -85
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js +0 -84
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js +0 -27
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/map.js +0 -8
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/merge.js +0 -12
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/null.js +0 -36
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/omap.js +0 -56
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/pairs.js +0 -61
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/seq.js +0 -8
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/set.js +0 -33
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/str.js +0 -8
- data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/timestamp.js +0 -98
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/HISTORY.md +0 -115
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/LICENSE +0 -21
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/README.md +0 -239
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/arguments.js +0 -36
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/choice.js +0 -22
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/constants.js +0 -59
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/help.js +0 -13
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/nargs.js +0 -33
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/parents.js +0 -28
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/prefix_chars.js +0 -23
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/sub_commands.js +0 -49
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/sum.js +0 -35
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/testformatters.js +0 -270
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/index.js +0 -1
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action.js +0 -146
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/append.js +0 -55
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/append/constant.js +0 -47
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/count.js +0 -40
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/help.js +0 -48
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/store.js +0 -50
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/store/constant.js +0 -43
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/store/false.js +0 -27
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/store/true.js +0 -26
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/subparsers.js +0 -148
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/version.js +0 -50
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action_container.js +0 -481
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/argparse.js +0 -14
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/argument/error.js +0 -50
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/argument/exclusive.js +0 -54
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/argument/group.js +0 -75
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/argument_parser.js +0 -1168
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/const.js +0 -18
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/help/added_formatters.js +0 -88
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/help/formatter.js +0 -798
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/namespace.js +0 -77
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/.npmignore +0 -2
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/.travis.yml +0 -8
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/README.markdown +0 -825
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/bower.json +0 -33
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/component.json +0 -11
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/foo.js +0 -10
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/gulpfile.js +0 -26
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/lib/underscore.string.js +0 -673
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/libpeerconnection.log +0 -0
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/package.json +0 -107
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore/LICENSE +0 -23
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore/README.md +0 -22
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore/package.json +0 -69
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore/underscore-min.js +0 -6
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore/underscore.js +0 -1415
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/package.json +0 -62
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/README.md +0 -73
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/bin/esparse.js +0 -117
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/bin/esvalidate.js +0 -177
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/esprima.js +0 -3908
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/package.json +0 -69
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/test/compat.js +0 -239
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/test/reflect.js +0 -422
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/test/run.js +0 -66
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/test/runner.js +0 -387
- data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/test/test.js +0 -20238
- data/stdlib/nodejs/node_modules/js-yaml/package.json +0 -83
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: d3c1ac220f86c552e522eaad298f9e4dcce4e8f6
|
|
4
|
+
data.tar.gz: 5294190e2a015e036d8824126837fb8ead1e219a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9c84a1b7d4c5c1e493dcdff3f8823141fac4048b96ac409ded2ce223b4e591d7fccbb00d7edd00f4cc8eafe76385c3caa8d540bf285cada64fc9d24ec5048072
|
|
7
|
+
data.tar.gz: 8e8a3ec7a272f221856d36787fe8edf774f418694fb28b18f30b3e38d8c10ee059154c2d3218b29300bd8e5818667ba3481bb2b499dfeae19641526477d60ee0
|
data/.codeclimate.yml
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
engines:
|
|
2
|
+
duplication:
|
|
3
|
+
enabled: true
|
|
4
|
+
config:
|
|
5
|
+
languages:
|
|
6
|
+
- ruby
|
|
7
|
+
ratings:
|
|
8
|
+
paths:
|
|
9
|
+
- "**.rb"
|
|
10
|
+
exclude_paths:
|
|
11
|
+
- "benchmark/*"
|
|
12
|
+
- "build/*"
|
|
13
|
+
- "coverage/*"
|
|
14
|
+
- "docs/*"
|
|
15
|
+
- "examples/*"
|
|
16
|
+
- "tasks/*"
|
|
17
|
+
- "spec/*"
|
|
18
|
+
- "test/*"
|
|
19
|
+
- "vendored-minitest/*"
|
data/.gitmodules
CHANGED
data/.jshintrc
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"undef" : true, // Prohibit the use of explicitly undeclared variables
|
|
11
11
|
"unused" : true, // Warn when you define and never use your variables
|
|
12
12
|
|
|
13
|
-
"predef" : ["Opal", "JSON", "Java", "callPhantom", "OpalNode"],
|
|
13
|
+
"predef" : ["Opal", "JSON", "Java", "callPhantom", "OpalNode", "jsyaml"],
|
|
14
14
|
|
|
15
15
|
"browser": true,
|
|
16
16
|
"node": true,
|
|
@@ -28,7 +28,6 @@
|
|
|
28
28
|
"-W030": false, // Expected an assignment or function call and instead saw an expression
|
|
29
29
|
"-W032": false, // Unnecessary semicolon
|
|
30
30
|
"-W033": false, // Missing semicolon
|
|
31
|
-
"-W067": false, // Bad invocation
|
|
32
31
|
"-W083": false, // Don't make functions within a loop
|
|
33
32
|
"-W093": false, // Did you mean to return a conditional instead of an assignment?
|
|
34
33
|
"-W098": false, // 'variable' is defined but never used
|
data/.travis.yml
CHANGED
|
@@ -6,49 +6,53 @@ cache:
|
|
|
6
6
|
bundler: true
|
|
7
7
|
directories:
|
|
8
8
|
- /home/travis/.nvm/
|
|
9
|
-
|
|
9
|
+
- smoke_test_opal_rspec
|
|
10
10
|
|
|
11
11
|
matrix:
|
|
12
12
|
fast_finish: true
|
|
13
13
|
|
|
14
14
|
include:
|
|
15
|
-
- rvm: 2.
|
|
16
|
-
|
|
15
|
+
# - rvm: 2.4.0
|
|
16
|
+
# env:
|
|
17
|
+
# - RUN=browser_test
|
|
18
|
+
# - SAUCE_USERNAME=elia
|
|
19
|
+
# # SAUCE_ACCESS_KEY:
|
|
20
|
+
# - secure: GT13SjzU8vmqKIyY2LAXje+ndqevTsX/w71JkZHRLTrDUl0qcIod7xsfahbzGt2gOZPYZUkKiVaPoUenhc/YeJ2jTJVHeHY9UEl2II+3tOtuvp2jLadA//aBbsB6/09d7lIZMzpa93TL2R/SncPxugYW9v2o8o8Lwd2iIzowT/g=
|
|
17
21
|
|
|
18
|
-
- rvm: 2.
|
|
19
|
-
env: RUN=jshint
|
|
22
|
+
- rvm: 2.4.0
|
|
23
|
+
env: RUN=jshint
|
|
20
24
|
|
|
21
|
-
- rvm: 2.
|
|
22
|
-
nvm: "0.10"
|
|
25
|
+
- rvm: 2.4.0
|
|
23
26
|
env: RUN=mspec_opal_nodejs
|
|
24
27
|
|
|
25
|
-
- rvm: 2.
|
|
26
|
-
nvm: "0.10"
|
|
28
|
+
- rvm: 2.4.0
|
|
27
29
|
env: RUN=mspec_ruby_nodejs TZ="/usr/share/zoneinfo/Pacific/Fiji"
|
|
28
30
|
|
|
29
|
-
- rvm: 2.
|
|
30
|
-
env: RUN=mspec_ruby_sprockets_phantomjs
|
|
31
|
-
|
|
32
|
-
- rvm: 2.3.7
|
|
31
|
+
- rvm: 2.4.0
|
|
33
32
|
env: RUN=minitest
|
|
34
33
|
|
|
35
|
-
- rvm: 2.
|
|
34
|
+
- rvm: 2.4.0
|
|
36
35
|
env: RUN=rspec RACK_VERSION='~> 2.0.0' CHECK_COVERAGE=true
|
|
37
36
|
|
|
37
|
+
- rvm: 2.4.0
|
|
38
|
+
env: RUN=smoke_test
|
|
39
|
+
|
|
38
40
|
- rvm: ruby-head
|
|
39
41
|
env: RUN=rspec
|
|
40
42
|
|
|
41
|
-
- rvm: 2.
|
|
43
|
+
- rvm: 2.3.3
|
|
44
|
+
env: RUN=rspec
|
|
45
|
+
|
|
46
|
+
- rvm: 2.2.5
|
|
42
47
|
env: RUN=rspec TILT_VERSION=2.0.1 SPROCKETS_VERSION='~> 3.7'
|
|
43
48
|
|
|
44
49
|
- rvm: 2.1.10
|
|
45
50
|
env: RUN=rspec RACK_VERSION='< 2.0'
|
|
46
51
|
|
|
47
52
|
- rvm: 2.0.0
|
|
48
|
-
nvm: "0.10"
|
|
49
53
|
env: RUN="rspec mspec_opal_nodejs" RACK_VERSION='< 2.0'
|
|
50
54
|
|
|
51
|
-
- rvm: jruby-9.
|
|
55
|
+
- rvm: jruby-9.1.7.0
|
|
52
56
|
env: RUN=rspec
|
|
53
57
|
|
|
54
58
|
- rvm: jruby-head
|
|
@@ -57,6 +61,7 @@ matrix:
|
|
|
57
61
|
allow_failures:
|
|
58
62
|
- rvm: ruby-head
|
|
59
63
|
- rvm: jruby-head
|
|
64
|
+
- env: RUN=smoke_test
|
|
60
65
|
|
|
61
66
|
|
|
62
67
|
before_install:
|
|
@@ -66,7 +71,7 @@ before_install:
|
|
|
66
71
|
- git submodule update --init
|
|
67
72
|
- npm install -g jshint
|
|
68
73
|
- npm install -g uglify-js
|
|
69
|
-
-
|
|
74
|
+
- type bundle || gem install bundler
|
|
70
75
|
- bundle config without doc
|
|
71
76
|
|
|
72
77
|
script:
|
|
@@ -77,3 +82,6 @@ notifications:
|
|
|
77
82
|
webhooks:
|
|
78
83
|
urls:
|
|
79
84
|
- https://webhooks.gitter.im/e/2ea12333adebda0c2289
|
|
85
|
+
|
|
86
|
+
# addons:
|
|
87
|
+
# sauce_connect: true
|
data/CHANGELOG.md
CHANGED
|
@@ -20,60 +20,127 @@ Whitespace conventions:
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
23
|
-
## [0.10.6](https://github.com/opal/opal/compare/v0.10.5...v0.10.6) - 2018-06-21
|
|
24
23
|
|
|
24
|
+
## [0.11.0] - Unreleased
|
|
25
25
|
|
|
26
|
-
### Changed
|
|
27
|
-
|
|
28
|
-
- Strip Regexp flags that are unsupported by browsers (backport), previously they were ignored, lately most of them now raise an error for unknown flags.
|
|
29
26
|
|
|
27
|
+
### Added
|
|
30
28
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
- Added support for complex (`0b1110i`) and rational (`0b1111r`) number literals. (#1487)
|
|
30
|
+
- Added 2.3.0 methods:
|
|
31
|
+
* `Array#bsearch_index`
|
|
32
|
+
* `Array#dig`
|
|
33
|
+
* `Enumerable#chunk_while`
|
|
34
|
+
* `Enumerable#grep_v`
|
|
35
|
+
* `Enumerable#slice_after`
|
|
36
|
+
* `Enumerable#slice_when`
|
|
37
|
+
* `Hash#>`
|
|
38
|
+
* `Hash#<`
|
|
39
|
+
* `Hash#>=`
|
|
40
|
+
* `Hash#>=`
|
|
41
|
+
* `Hash#dig`
|
|
42
|
+
* `Hash#fetch_values`
|
|
43
|
+
* `Hash#to_proc`
|
|
44
|
+
* `Struct#dig`
|
|
45
|
+
* `Kernel#itself`
|
|
46
|
+
- Added safe navigator (`&.`) support. (#1532)
|
|
47
|
+
- Added Random class with seed support. The following methods were reworked to use it:
|
|
48
|
+
* `Kernel.rand`
|
|
49
|
+
* `Kernel.srand`
|
|
50
|
+
* `Array#shuffle`
|
|
51
|
+
* `Array#shuffle!`
|
|
52
|
+
* `Array#sample`
|
|
53
|
+
- Added rudimental history support to `opal-repl`, just create the history file (`~/.opal-repl-history`) and it record the last 1000 lines
|
|
54
|
+
- Added `JS::Error` error class that can be used to catch any JS error.
|
|
55
|
+
- Added `Method#source_location` and `Method#comments`.
|
|
56
|
+
- Added a deprecation API that can be set to raise on deprecation with: `Opal.raise_on_deprecation = true`
|
|
57
|
+
- Added `Opal::SimpleServer` as the quickest way to get up and running with Opal: `rackup -ropal -ropal/simple_server -b 'Opal.append_path("app"); run Opal::SimpleServer.new'`
|
|
58
|
+
- Added `String#ascii_only?` (#1592)
|
|
59
|
+
- Added `StringScanner#matched_size` (#1595)
|
|
60
|
+
- Added `Hash#compare_by_identity` (#1657)
|
|
34
61
|
|
|
35
62
|
|
|
63
|
+
### Removed
|
|
36
64
|
|
|
65
|
+
- Dropped support for IE8 and below, and restricted Safari and Opera support to the last two versions
|
|
37
66
|
|
|
38
|
-
## [0.10.5](https://github.com/opal/opal/compare/v0.10.4...v0.10.5) - 2017-06-21
|
|
39
67
|
|
|
68
|
+
### Changed
|
|
40
69
|
|
|
41
|
-
|
|
70
|
+
- Removed self-written lexer/parser. Now uses parser/ast gems to convert source code to AST. (#1465)
|
|
71
|
+
- Migrated parser to 2.3. Bump RUBY_VERSION to 2.3.0.
|
|
72
|
+
- Changed to be 2.3 compliant:
|
|
73
|
+
* `Enumerable#chunk` (to take only a a block)
|
|
74
|
+
* `Enumerable#slice_before` (to raise proper argument errors)
|
|
75
|
+
* `Number#positive?` (to return false for 0)
|
|
76
|
+
- Use meaningful names for temporary variables in compiled JavaScript (e.g. for `def foo` was `TMP_123`, now `TMP_foo_123`)
|
|
77
|
+
- Dynamic require severity now defaults to `:ignore` meaning that by default a `LoadError` will be raised at runtime instead of compile time.
|
|
42
78
|
|
|
43
|
-
- Fix `Time#zone` for zones expressed numerically
|
|
44
79
|
|
|
80
|
+
### Deprecated
|
|
45
81
|
|
|
82
|
+
- `require 'opal/server` and `Opal::Server` are deprecated in favor of `require 'opal/sprockets/server'` and `Opal::Sprockets::Server` (now part of the opal-sprockets gem).
|
|
46
83
|
|
|
47
84
|
|
|
48
|
-
|
|
85
|
+
### Removed
|
|
49
86
|
|
|
87
|
+
- Removed `yaml` from stdlib, the older implementation was only available for NodeJS and not tested. Replace with `require 'nodejs/yaml'`
|
|
88
|
+
- Extracted sprockets support to `opal-sprockets` which should allow for wider support and less coupling (e.g. the `opal` gem will now be able to improve the compiler without worrying about `sprockets` updates). All the old behavior is preserved except for `Opal::Server` that has become `Opal::Sprockets::Server` (see Deprecated section above).
|
|
50
89
|
|
|
51
|
-
### Changed
|
|
52
90
|
|
|
53
|
-
|
|
54
|
-
- Always cache source-maps at build-time so they're available once enabled
|
|
91
|
+
### Fixed
|
|
55
92
|
|
|
93
|
+
- Newly compliant with the Ruby Spec Suite:
|
|
94
|
+
* `Module#class_variables`
|
|
95
|
+
* `Module#class_variable_get`
|
|
96
|
+
* `Module#class_variable_set`
|
|
97
|
+
* `Module#remove_class_variable`
|
|
98
|
+
* `Module#include?`
|
|
99
|
+
* `Numeric#step` (#1512)
|
|
100
|
+
|
|
101
|
+
- Improvements for Range class (#1486)
|
|
102
|
+
* Moved private/tainted/untrusted specs to not supported
|
|
103
|
+
* Conforming `Range#to_s` and `Range#inspect`
|
|
104
|
+
* Starting `Range#bsearch` implementation
|
|
105
|
+
* Simple `Range#step` implementation
|
|
106
|
+
* Fixing `Range#min` for empty Ranges
|
|
107
|
+
* Fixing `Range#last(n)` `Range#first(n)` and one edge case of `Range#each`
|
|
108
|
+
* Fixing some `Range#step` issues on String ranges
|
|
109
|
+
* Simple `Range#bsearch` implementation, passes about half the specs
|
|
110
|
+
* Minor styling improvements. Fixed size of `Range#step`.
|
|
111
|
+
* Compile complex ranges to "Range.new" so there will be a check for begin and end to be comparable.
|
|
112
|
+
|
|
113
|
+
- Fixed `defined?` for methods raising exceptions
|
|
114
|
+
- Fixed `Kernel#loop` (to catch `StopIteration` error)
|
|
115
|
+
- Fixed inheritance from the `Module` class.
|
|
116
|
+
- Fixed using `--preload` along with `--no-opal` for CLI
|
|
117
|
+
- Fixed `Integer("0")` raising `ArgumentError` instead of parsing as 0
|
|
118
|
+
- Fixed `JSON#parse` to raise `JSON::ParserError` for invalid input
|
|
119
|
+
- `Module#append_features` now detects cyclic includes
|
|
120
|
+
- `Process.clock_gettime(Process::CLOCK_MONOTONIC)` will now return true monotonic values or raise `Errno::EINVAL` if no monotonic clock is available
|
|
121
|
+
- Opal::Builder no longer always raises an error when a dependency isn't found and instead respects `dynamic_require_severity` value
|
|
56
122
|
|
|
57
123
|
|
|
58
124
|
|
|
59
125
|
## [0.10.3] - 2016-10-31
|
|
60
126
|
|
|
61
127
|
|
|
62
|
-
###
|
|
128
|
+
### Changed
|
|
129
|
+
|
|
130
|
+
- Avoid special utf-8 chars in method names, now they start with `$$`
|
|
63
131
|
|
|
64
|
-
- Fixed inheritance from the `Module` class (#1476)
|
|
65
|
-
- Fixed source map server with url-encoded paths
|
|
66
|
-
- Silence Sprockets 3.7 deprecations, full support for Sprockets 4 will be available in Opal 0.11
|
|
67
|
-
- Don't print the full stack trace with deprecation messages
|
|
68
132
|
|
|
69
133
|
|
|
70
134
|
|
|
71
135
|
## [0.10.2] - 2016-09-09
|
|
72
136
|
|
|
73
137
|
|
|
74
|
-
|
|
138
|
+
## Fixed
|
|
75
139
|
|
|
76
|
-
-
|
|
140
|
+
- Fixed inheritance from the `Module` class (#1476)
|
|
141
|
+
- Fixed source map server with url-encoded paths
|
|
142
|
+
- Silence Sprockets 3.7 deprecations, full support for Sprockets 4 will be available in Opal 0.11
|
|
143
|
+
- Don't print the full stack trace with deprecation messages
|
|
77
144
|
|
|
78
145
|
|
|
79
146
|
|
|
@@ -916,8 +983,7 @@ Whitespace conventions:
|
|
|
916
983
|
|
|
917
984
|
|
|
918
985
|
|
|
919
|
-
[0.
|
|
920
|
-
[0.10.4]: https://github.com/opal/opal/compare/v0.10.3...v0.10.4
|
|
986
|
+
[0.11.0]: https://github.com/opal/opal/compare/v0.10.3...HEAD
|
|
921
987
|
[0.10.3]: https://github.com/opal/opal/compare/v0.10.2...v0.10.3
|
|
922
988
|
[0.10.2]: https://github.com/opal/opal/compare/v0.10.1...v0.10.2
|
|
923
989
|
[0.10.1]: https://github.com/opal/opal/compare/v0.10.0...v0.10.1
|
|
File without changes
|
data/Gemfile
CHANGED
|
@@ -1,35 +1,33 @@
|
|
|
1
1
|
source 'https://rubygems.org'
|
|
2
2
|
gemspec
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
ruby_version = v[RUBY_VERSION]
|
|
7
|
-
|
|
8
|
-
tilt_version = ENV['TILT_VERSION']
|
|
9
|
-
rack_version = ENV['RACK_VERSION']
|
|
4
|
+
tilt_version = ENV['TILT_VERSION']
|
|
5
|
+
rack_version = ENV['RACK_VERSION']
|
|
10
6
|
sprockets_version = ENV['SPROCKETS_VERSION']
|
|
11
7
|
|
|
12
8
|
# Stick with older racc until
|
|
13
9
|
# https://github.com/tenderlove/racc/issues/22
|
|
14
10
|
# is solved.
|
|
15
11
|
gem 'racc', '< 1.4.10', platform: :jruby
|
|
16
|
-
gem 'json', '< 1.8.1', platform: :ruby if
|
|
12
|
+
gem 'json', '< 1.8.1', platform: :ruby if RUBY_VERSION.to_f == 2.1
|
|
17
13
|
gem 'rubysl', platform: :rbx
|
|
18
|
-
gem '
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
gem '
|
|
22
|
-
|
|
23
|
-
gem 'rack', rack_version if rack_version
|
|
24
|
-
gem 'tilt', tilt_version if tilt_version
|
|
14
|
+
gem 'coveralls', platform: :mri
|
|
15
|
+
gem 'puma' # Some browsers have problems with WEBrick
|
|
16
|
+
gem 'rack', rack_version if rack_version
|
|
17
|
+
gem 'tilt', tilt_version if tilt_version
|
|
25
18
|
gem 'sprockets', sprockets_version if sprockets_version
|
|
19
|
+
gem 'mspec', path: 'spec/mspec'
|
|
26
20
|
|
|
27
21
|
group :repl do
|
|
28
|
-
gem 'therubyracer', platform: :mri, require:
|
|
29
|
-
gem 'therubyrhino', platform: :jruby
|
|
22
|
+
gem 'therubyracer', platform: :mri, require: false
|
|
23
|
+
gem 'therubyrhino', platform: :jruby, require: false
|
|
30
24
|
end
|
|
31
25
|
|
|
32
|
-
|
|
26
|
+
group :browser do
|
|
27
|
+
gem 'selenium-webdriver', '>= 3.0.0.beta3.1', platform: :mri
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
group :development do
|
|
33
31
|
gem 'rb-fsevent'
|
|
34
32
|
gem 'guard', require: false
|
|
35
33
|
|
|
@@ -37,8 +35,8 @@ unless ENV['CI']
|
|
|
37
35
|
gem 'terminal-notifier-guard'
|
|
38
36
|
gem 'terminal-notifier'
|
|
39
37
|
end
|
|
40
|
-
end
|
|
38
|
+
end unless ENV['CI']
|
|
41
39
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
40
|
+
group :doc do
|
|
41
|
+
gem 'redcarpet'
|
|
42
|
+
end
|
data/HACKING.md
CHANGED
|
@@ -89,6 +89,8 @@ This command will execute tests marked as "bugs" from every file in the `spec/ru
|
|
|
89
89
|
|
|
90
90
|
Note: Opal has some bugs that may cause a shared state between tests. Sometimes green specs are green only in the inverted test suite, so after removing them from `/bugs`, run a regular test suite one more time to verify that everything is fine.
|
|
91
91
|
|
|
92
|
+
Also there are some specs in `spec/ruby/language/while_spec.rb` that cause an infinite loop. Make sure to comment them before running a whole inverted test suite.
|
|
93
|
+
|
|
92
94
|
## Benchmarking
|
|
93
95
|
|
|
94
96
|
There are two ways to benchmark Opal's performance: one way is to write a program (or a set of programs) that takes sufficently long time to execute, then measure the execution time, and the other is to execute a specific Ruby Spec Suite example (or a set of examples) multiple times, then measure the execution time. Let's call the former "Traditional Benchmarking", and the latter "The Ruby Spec Suite Benchmarking".
|
data/README.md
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# Opal
|
|
2
2
|
|
|
3
|
-
[](http://travis-ci.org/opal/opal)
|
|
3
|
+
[](http://travis-ci.org/opal/opal)
|
|
4
|
+
[](https://ci.appveyor.com/project/elia/opal/branch/master)
|
|
4
5
|
[](http://badge.fury.io/rb/opal)
|
|
5
6
|
[](https://codeclimate.com/github/opal/opal)
|
|
6
7
|
[](https://coveralls.io/github/opal/opal?branch=elia%2Fcoveralls)
|
|
@@ -154,7 +155,7 @@ Alternatively, you can just load up a rack instance using `rackup`, and
|
|
|
154
155
|
visit `http://localhost:9292/` in any web browser.
|
|
155
156
|
|
|
156
157
|
|
|
157
|
-
###
|
|
158
|
+
### RSpec
|
|
158
159
|
|
|
159
160
|
[RSpec][] tests can be run with:
|
|
160
161
|
|
|
@@ -187,11 +188,11 @@ Holds the **stdlib currently supported by Opal**. This includes `Observable`,
|
|
|
187
188
|
|
|
188
189
|
## Browser support
|
|
189
190
|
|
|
190
|
-
* Internet Explorer
|
|
191
|
+
* Internet Explorer 9+
|
|
191
192
|
* Firefox (Current - 1) or Current
|
|
192
193
|
* Chrome (Current - 1) or Current
|
|
193
|
-
* Safari
|
|
194
|
-
* Opera
|
|
194
|
+
* Safari (Current - 1) or Current
|
|
195
|
+
* Opera (Current - 1) or Current
|
|
195
196
|
|
|
196
197
|
Any problems encountered using the browsers listed above should be reported as bugs.
|
|
197
198
|
|
|
@@ -203,7 +204,7 @@ version of a browser is 24.x, we support the 24.x and 23.x versions.
|
|
|
203
204
|
as the last 2 versions of Opera. For example, if the current Opera version is 20.x,
|
|
204
205
|
then we support Opera 12.1x, 19.x and 20.x but not Opera 15.x through 18.x.
|
|
205
206
|
|
|
206
|
-
Cross-browser testing is sponsored by [
|
|
207
|
+
Cross-browser testing is sponsored by [SauceLabs](http://saucelabs.com).
|
|
207
208
|
|
|
208
209
|
## License
|
|
209
210
|
|
data/Rakefile
CHANGED
data/appveyor.yml
CHANGED
|
@@ -2,12 +2,29 @@ version: '{build}'
|
|
|
2
2
|
|
|
3
3
|
skip_tags: true
|
|
4
4
|
# AppVeyor automatically skips the build if the commit contains [ci skip] or [skip ci]
|
|
5
|
-
skip_commits:
|
|
6
|
-
|
|
5
|
+
#skip_commits:
|
|
6
|
+
# message: /\[ci skip\]/
|
|
7
7
|
|
|
8
|
-
clone_depth:
|
|
8
|
+
clone_depth: 10
|
|
9
9
|
|
|
10
|
+
environment:
|
|
11
|
+
ruby_version: '23'
|
|
12
|
+
|
|
13
|
+
install:
|
|
14
|
+
- git submodule update --init --recursive
|
|
15
|
+
# Take default Ruby out of path
|
|
16
|
+
- SET PATH=%PATH:C:\Ruby193\bin;=%
|
|
17
|
+
# Add Ruby to path from build matrix
|
|
18
|
+
- SET PATH=C:\Ruby%ruby_version%\bin;%PATH%
|
|
19
|
+
- ruby --version
|
|
20
|
+
- gem --version
|
|
21
|
+
- node --version
|
|
22
|
+
- gem install bundler --quiet --no-ri --no-rdoc
|
|
23
|
+
- bundler --version
|
|
24
|
+
- bundle
|
|
25
|
+
- choco install phantomjs --version 2.0.0 -y
|
|
26
|
+
|
|
10
27
|
build: off
|
|
11
28
|
|
|
12
29
|
test_script:
|
|
13
|
-
-
|
|
30
|
+
- bundle exec rake
|