Kouhei Sutou 2019-05-16 17:40:26 +0900 (Thu, 16 May 2019) Revision: 7a5ca0de68219f594ee202c5e2d1879f8f74b102 https://github.com/groonga/groonga/commit/7a5ca0de68219f594ee202c5e2d1879f8f74b102 Message: mruby: upgrade to 9b604abc8300d378bb32fb0e88d6f0831ed7e0d9 Summary: * Time#to_s format is changed: "Sat Jan 01 00:00:00 2039" -> "2039-01-01 00:00:00 +0900" * Float#to_s behavior on 1.0 is changed: "1" -> "1.0" * New mrbgem: mrbgem-metaprog * Upgrade mrbgems: * mruby-onig-regexp: 973b2ac4be1532155612627050a86c1237d9a29a -> ae787b162474db633bff870d78bb247eafd3aa20 * mruby-env: 57f0d737a4ece49dc5b6f1c7ee09b0bc8f8adf87 -> 056ae324451ef16a50c7887e117f0ea30921b71b * mruby-slop: 752d1a3e2bc4fdc40ee92d668812a99c8fc5e1cc -> 0aa5b832315ccd1ddc55f5391f2d8a1e9d6145b0 Modified files: Makefile.am lib/mrb.c lib/mrb/mrb_eval_context.c test/command/suite/ruby/eval/convert/string_to_time/over_int32.expected test/command/suite/sharding/logical_range_filter/filter/equal/range_index.expected test/command/suite/sharding/logical_range_filter/filter/in_values/range_index.expected test/command/suite/sharding/logical_range_filter/filter/match/reference_vector/range_index.expected test/command/suite/sharding/logical_range_filter/filter/match/vector/range_index.expected test/command/suite/sharding/logical_range_filter/filter/or_equals/range_index.expected vendor/mruby-source vendor/mruby/Makefile.am vendor/mruby/build_config.rb vendor/mruby/sources.am Modified: Makefile.am (+1 -1) =================================================================== --- Makefile.am 2019-05-16 17:10:02 +0900 (1fc7028ff) +++ Makefile.am 2019-05-16 17:40:26 +0900 (a0fb89304) @@ -123,7 +123,7 @@ update-files: cd data/html && $(MAKE) update-files update-mruby: - cd $(top_srcdir)/vendor/mruby && make update + cd vendor/mruby && make update update-nginx: @if test -z "$(NEW_NGINX_VERSION)"; then \ Modified: lib/mrb.c (+0 -22) =================================================================== --- lib/mrb.c 2019-05-16 17:10:02 +0900 (f2b0bab84) +++ lib/mrb.c 2019-05-16 17:40:26 +0900 (ad0473929) @@ -165,27 +165,6 @@ grn_mrb_expand_script_path(grn_ctx *ctx, const char *path, return GRN_TRUE; } -/* Borrowed from mruby-require. - * https://github.com/iij/mruby-require/blob/c8556d98f9877dd4d28ca251cdfa68f84dc8dd66/src/require.c#L51-L60 - * License: The MIT license - * Copyright (c) 2013 Internet Initiative Japan Inc. - */ -static void -grn_mrb_load_disable_stop(mrb_state *mrb, struct RProc *proc) -{ - /* For mruby at 3e67a116d1d4545c97e8042d094ba9eddd77b441. - * It runs all ensure codes on STOP. */ - mrb_irep *irep = proc->body.irep; - if (irep->iseq[irep->ilen - 1] == MKOP_A(OP_STOP, 0)) { - irep->iseq = mrb_realloc(mrb, - irep->iseq, - (irep->ilen + 1) * sizeof(mrb_code)); - irep->iseq[irep->ilen - 1] = MKOP_A(OP_LOADNIL, 0); - irep->iseq[irep->ilen] = MKOP_AB(OP_RETURN, 0, OP_R_NORMAL); - irep->ilen++; - } -} - mrb_value grn_mrb_load(grn_ctx *ctx, const char *path) { @@ -251,7 +230,6 @@ grn_mrb_load(grn_ctx *ctx, const char *path) struct RProc *proc; int arena_index; proc = mrb_generate_code(mrb, parser); - grn_mrb_load_disable_stop(mrb, proc); MRB_PROC_SET_TARGET_CLASS(proc, mrb->object_class); arena_index = mrb_gc_arena_save(mrb); result = mrb_yield_with_class(mrb, Modified: lib/mrb/mrb_eval_context.c (+1 -7) =================================================================== --- lib/mrb/mrb_eval_context.c 2019-05-16 17:10:02 +0900 (cd23c4eb1) +++ lib/mrb/mrb_eval_context.c 2019-05-16 17:40:26 +0900 (870893663) @@ -1,6 +1,7 @@ /* -*- c-basic-offset: 2 -*- */ /* Copyright(C) 2016 Brazil + Copyright(C) 2019 Kouhei Sutou <kou****@clear*****> This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public @@ -70,13 +71,6 @@ eval_context_compile(mrb_state *mrb, mrb_value self) } proc = mrb_generate_code(mrb, parser); - { - mrb_code *iseq = proc->body.irep->iseq; - while (GET_OPCODE(*iseq) != OP_STOP) { - iseq++; - } - *iseq = MKOP_AB(OP_RETURN, 1, OP_R_NORMAL); - } mrb_parser_free(parser); mrbc_context_free(mrb, compile_ctx); return mrb_obj_value(proc); Modified: test/command/suite/ruby/eval/convert/string_to_time/over_int32.expected (+1 -1) =================================================================== --- test/command/suite/ruby/eval/convert/string_to_time/over_int32.expected 2019-05-16 17:10:02 +0900 (5c9613e64) +++ test/command/suite/ruby/eval/convert/string_to_time/over_int32.expected 2019-05-16 17:40:26 +0900 (be9f1d8c0) @@ -1,4 +1,4 @@ plugin_register ruby/eval [[0,0.0,0.0],true] ruby_eval 'Groonga::Converter.convert("2039/1/1 00:00:00", Time).to_s' -[[0,0.0,0.0],{"value":"Sat Jan 01 00:00:00 2039"}] +[[0,0.0,0.0],{"value":"2039-01-01 00:00:00 +0900"}] Modified: test/command/suite/sharding/logical_range_filter/filter/equal/range_index.expected (+1 -1) =================================================================== --- test/command/suite/sharding/logical_range_filter/filter/equal/range_index.expected 2019-05-16 17:10:02 +0900 (33c9fd9e1) +++ test/command/suite/sharding/logical_range_filter/filter/equal/range_index.expected 2019-05-16 17:40:26 +0900 (ae26f57c6) @@ -71,6 +71,6 @@ logical_range_filter Logs timestamp --limit 1 --filter 'user_id == 2' ] ] ] -#|d| [logical_range_filter][range-index] <Logs_20150205>: hit ratio (1=4/4) >= threshold (0.2) +#|d| [logical_range_filter][range-index] <Logs_20150205>: hit ratio (1.0=4/4) >= threshold (0.2) log_level --level notice [[0,0.0,0.0],true] Modified: test/command/suite/sharding/logical_range_filter/filter/in_values/range_index.expected (+1 -1) =================================================================== --- test/command/suite/sharding/logical_range_filter/filter/in_values/range_index.expected 2019-05-16 17:10:02 +0900 (7e2d1746a) +++ test/command/suite/sharding/logical_range_filter/filter/in_values/range_index.expected 2019-05-16 17:40:26 +0900 (42360141e) @@ -76,6 +76,6 @@ logical_range_filter Logs timestamp --limit 2 --filter 'in_values(action, "R ] ] ] -#|d| [logical_range_filter][range-index] <Logs_20150205>: hit ratio (1=4/4) >= threshold (0.2) +#|d| [logical_range_filter][range-index] <Logs_20150205>: hit ratio (1.0=4/4) >= threshold (0.2) log_level --level notice [[0,0.0,0.0],true] Modified: test/command/suite/sharding/logical_range_filter/filter/match/reference_vector/range_index.expected (+1 -1) =================================================================== --- test/command/suite/sharding/logical_range_filter/filter/match/reference_vector/range_index.expected 2019-05-16 17:10:02 +0900 (590d8f1b9) +++ test/command/suite/sharding/logical_range_filter/filter/match/reference_vector/range_index.expected 2019-05-16 17:40:26 +0900 (1ed50c4c3) @@ -90,6 +90,6 @@ logical_range_filter Logs timestamp --limit 2 --filter 'user.tags @ "search" ] ] ] -#|d| [logical_range_filter][range-index] <Logs_20150205>: hit ratio (1=4/4) >= threshold (0.2) +#|d| [logical_range_filter][range-index] <Logs_20150205>: hit ratio (1.0=4/4) >= threshold (0.2) log_level --level notice [[0,0.0,0.0],true] Modified: test/command/suite/sharding/logical_range_filter/filter/match/vector/range_index.expected (+1 -1) =================================================================== --- test/command/suite/sharding/logical_range_filter/filter/match/vector/range_index.expected 2019-05-16 17:10:02 +0900 (c26623865) +++ test/command/suite/sharding/logical_range_filter/filter/match/vector/range_index.expected 2019-05-16 17:40:26 +0900 (408a8f776) @@ -76,6 +76,6 @@ logical_range_filter Logs timestamp --limit 1 --filter 'ids @ 4' ] ] ] -#|d| [logical_range_filter][range-index] <Logs_20150205>: hit ratio (1=4/4) >= threshold (0.2) +#|d| [logical_range_filter][range-index] <Logs_20150205>: hit ratio (1.0=4/4) >= threshold (0.2) log_level --level notice [[0,0.0,0.0],true] Modified: test/command/suite/sharding/logical_range_filter/filter/or_equals/range_index.expected (+1 -1) =================================================================== --- test/command/suite/sharding/logical_range_filter/filter/or_equals/range_index.expected 2019-05-16 17:10:02 +0900 (8763d192b) +++ test/command/suite/sharding/logical_range_filter/filter/or_equals/range_index.expected 2019-05-16 17:40:26 +0900 (10ca80c2c) @@ -76,6 +76,6 @@ logical_range_filter Logs timestamp --limit 2 --filter 'action == "Running" ] ] ] -#|d| [logical_range_filter][range-index] <Logs_20150205>: hit ratio (1=4/4) >= threshold (0.2) +#|d| [logical_range_filter][range-index] <Logs_20150205>: hit ratio (1.0=4/4) >= threshold (0.2) log_level --level notice [[0,0.0,0.0],true] Modified: vendor/mruby-source (+1 -1) =================================================================== --- vendor/mruby-source 2019-05-16 17:10:02 +0900 (fd9617cad) +++ vendor/mruby-source 2019-05-16 17:40:26 +0900 (9b604abc8) @@ -1 +1 @@ -Subproject commit fd9617cad0a5ba65934a896b8fe7908994babad6 +Subproject commit 9b604abc8300d378bb32fb0e88d6f0831ed7e0d9 Modified: vendor/mruby/Makefile.am (+2 -1) =================================================================== --- vendor/mruby/Makefile.am 2019-05-16 17:10:02 +0900 (c7c021ac4) +++ vendor/mruby/Makefile.am 2019-05-16 17:40:26 +0900 (e330469a2) @@ -11,7 +11,8 @@ DEFAULT_INCLUDES = \ -I$(srcdir)/../mruby-source/include \ -I$(srcdir)/../mruby-source/src \ -I$(srcdir)/../mruby-source/mrbgems/mruby-compiler/core \ - -I$(srcdir)/../mruby-source/mrbgems/mruby-io/include + -I$(srcdir)/../mruby-source/mrbgems/mruby-io/include \ + -I$(srcdir)/../mruby-source/mrbgems/mruby-time/include CFLAGS += \ $(NO_FLOAT_EQUAL_CFLAGS) \ Modified: vendor/mruby/build_config.rb (+21 -20) =================================================================== --- vendor/mruby/build_config.rb 2019-05-16 17:10:02 +0900 (fdef503d9) +++ vendor/mruby/build_config.rb 2019-05-16 17:40:26 +0900 (97ef8c80d) @@ -12,38 +12,39 @@ MRuby::Build.new do |conf| enable_debug + conf.gem :core => "mruby-array-ext" conf.gem :core => "mruby-compiler" - conf.gem :core => "mruby-sprintf" - conf.gem :core => "mruby-print" - conf.gem :core => "mruby-math" - conf.gem :core => "mruby-time" - conf.gem :core => "mruby-struct" conf.gem :core => "mruby-enum-ext" - conf.gem :core => "mruby-string-ext" - conf.gem :core => "mruby-numeric-ext" - conf.gem :core => "mruby-array-ext" + conf.gem :core => "mruby-enum-lazy" + conf.gem :core => "mruby-enumerator" + conf.gem :core => "mruby-fiber" conf.gem :core => "mruby-hash-ext" - conf.gem :core => "mruby-range-ext" - conf.gem :core => "mruby-proc-ext" - conf.gem :core => "mruby-symbol-ext" - conf.gem :core => "mruby-random" + conf.gem :core => "mruby-io" + conf.gem :core => "mruby-kernel-ext" + conf.gem :core => "mruby-math" + conf.gem :core => "mruby-metaprog" + conf.gem :core => "mruby-numeric-ext" conf.gem :core => "mruby-object-ext" conf.gem :core => "mruby-objectspace" - conf.gem :core => "mruby-fiber" - conf.gem :core => "mruby-enumerator" - conf.gem :core => "mruby-enum-lazy" + conf.gem :core => "mruby-print" + conf.gem :core => "mruby-proc-ext" + conf.gem :core => "mruby-random" + conf.gem :core => "mruby-range-ext" + conf.gem :core => "mruby-sprintf" + conf.gem :core => "mruby-string-ext" + conf.gem :core => "mruby-struct" + conf.gem :core => "mruby-symbol-ext" + conf.gem :core => "mruby-time" conf.gem :core => "mruby-toplevel-ext" - conf.gem :core => "mruby-kernel-ext" - conf.gem :core => "mruby-io" conf.gem :github => "mattn/mruby-onig-regexp", - :checksum_hash => "973b2ac4be1532155612627050a86c1237d9a29a" + :checksum_hash => "ae787b162474db633bff870d78bb247eafd3aa20" conf.gem :github => "iij/mruby-env", - :checksum_hash => "57f0d737a4ece49dc5b6f1c7ee09b0bc8f8adf87" + :checksum_hash => "056ae324451ef16a50c7887e117f0ea30921b71b" conf.gem :github => "kou/mruby-pp", :checksum_hash => "ddda20ca273ba532f2025d4ff7ddc8bb223ad8c2" conf.gem :github => "kou/mruby-slop", - :checksum_hash => "752d1a3e2bc4fdc40ee92d668812a99c8fc5e1cc" + :checksum_hash => "0aa5b832315ccd1ddc55f5391f2d8a1e9d6145b0" conf.gem :github => "ksss/mruby-file-stat", :checksum_hash => "12871584f2e5e2d24f5c54325d3ba3338414e2a4" conf.gem :github => "kou/mruby-tsort", Modified: vendor/mruby/sources.am (+22 -20) =================================================================== --- vendor/mruby/sources.am 2019-05-16 17:10:02 +0900 (42e6d8078) +++ vendor/mruby/sources.am 2019-05-16 17:40:26 +0900 (41d371994) @@ -31,33 +31,35 @@ libmruby_la_SOURCES = \ ../mruby-source/src/variable.c \ ../mruby-source/src/version.c \ ../mruby-source/src/vm.c \ + ../mruby-source/mrbgems/mruby-array-ext/src/array.c \ ../mruby-source/mrbgems/mruby-compiler/core/codegen.c \ ../mruby-source/mrbgems/mruby-compiler/core/node.h \ - ../mruby-source/mrbgems/mruby-sprintf/src/kernel.c \ - ../mruby-source/mrbgems/mruby-sprintf/src/sprintf.c \ - ../mruby-source/mrbgems/mruby-print/src/print.c \ + ../mruby-source/mrbgems/mruby-fiber/src/fiber.c \ + ../mruby-source/mrbgems/mruby-hash-ext/src/hash-ext.c \ + ../mruby-source/mrbgems/mruby-io/include/mruby/ext/io.h \ + ../mruby-source/mrbgems/mruby-io/src/file.c \ + ../mruby-source/mrbgems/mruby-io/src/file_test.c \ + ../mruby-source/mrbgems/mruby-io/src/io.c \ + ../mruby-source/mrbgems/mruby-io/src/mruby_io_gem.c \ + ../mruby-source/mrbgems/mruby-io/test/mruby_io_test.c \ + ../mruby-source/mrbgems/mruby-kernel-ext/src/kernel.c \ ../mruby-source/mrbgems/mruby-math/src/math.c \ - ../mruby-source/mrbgems/mruby-time/src/time.c \ - ../mruby-source/mrbgems/mruby-struct/src/struct.c \ - ../mruby-source/mrbgems/mruby-string-ext/src/string.c \ + ../mruby-source/mrbgems/mruby-metaprog/src/metaprog.c \ ../mruby-source/mrbgems/mruby-numeric-ext/src/numeric_ext.c \ - ../mruby-source/mrbgems/mruby-array-ext/src/array.c \ - ../mruby-source/mrbgems/mruby-hash-ext/src/hash-ext.c \ - ../mruby-source/mrbgems/mruby-range-ext/src/range.c \ + ../mruby-source/mrbgems/mruby-object-ext/src/object.c \ + ../mruby-source/mrbgems/mruby-objectspace/src/mruby_objectspace.c \ + ../mruby-source/mrbgems/mruby-print/src/print.c \ ../mruby-source/mrbgems/mruby-proc-ext/src/proc.c \ ../mruby-source/mrbgems/mruby-proc-ext/test/proc.c \ - ../mruby-source/mrbgems/mruby-symbol-ext/src/symbol.c \ ../mruby-source/mrbgems/mruby-random/src/mt19937ar.c \ ../mruby-source/mrbgems/mruby-random/src/mt19937ar.h \ ../mruby-source/mrbgems/mruby-random/src/random.c \ ../mruby-source/mrbgems/mruby-random/src/random.h \ - ../mruby-source/mrbgems/mruby-object-ext/src/object.c \ - ../mruby-source/mrbgems/mruby-objectspace/src/mruby_objectspace.c \ - ../mruby-source/mrbgems/mruby-fiber/src/fiber.c \ - ../mruby-source/mrbgems/mruby-kernel-ext/src/kernel.c \ - ../mruby-source/mrbgems/mruby-io/include/mruby/ext/io.h \ - ../mruby-source/mrbgems/mruby-io/src/file.c \ - ../mruby-source/mrbgems/mruby-io/src/file_test.c \ - ../mruby-source/mrbgems/mruby-io/src/io.c \ - ../mruby-source/mrbgems/mruby-io/src/mruby_io_gem.c \ - ../mruby-source/mrbgems/mruby-io/test/mruby_io_test.c + ../mruby-source/mrbgems/mruby-range-ext/src/range.c \ + ../mruby-source/mrbgems/mruby-sprintf/src/kernel.c \ + ../mruby-source/mrbgems/mruby-sprintf/src/sprintf.c \ + ../mruby-source/mrbgems/mruby-string-ext/src/string.c \ + ../mruby-source/mrbgems/mruby-struct/src/struct.c \ + ../mruby-source/mrbgems/mruby-symbol-ext/src/symbol.c \ + ../mruby-source/mrbgems/mruby-time/include/mruby/time.h \ + ../mruby-source/mrbgems/mruby-time/src/time.c -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://lists.osdn.me/mailman/archives/groonga-commit/attachments/20190516/30ea361d/attachment-0001.html>