2018-01-01から1ヶ月間の記事一覧

ruby-trunk-changes r62111 - r62123

今日は UnboundMethod#bind で作った Method の super_method が SEGV する不具合の修正や Windows での pipe を含む IO の reopen などでの不具合修正(?)などがありました。 usa: r62111 2018-01-30 21:03:28 +0900 r62098 で make showflags で BASERUBY …

ruby-trunk-changes r62092 - r62110

今日は net/pop の frozen_string_literal: true 化で dup が漏れてたところの修正と tool/vcs.rb を 1.9 の BASERUBY でも動くようにする追加修正などがありました。 eregon: r62092 2018-01-30 01:07:35 +0900 mspec に upstream の変更をマージしています…

ruby-trunk-changes r62079 - r62091

今日は VM 命令の実装の insns.def からの自動生成でバイナリサイズを削減しパフォーマンスを向上する変更などがありました。 nobu: r62079 2018-01-28 23:05:39 +0900 parse.y の parser_append_options() で変数 default_location へのポインタを & で作っ…

ruby-trunk-changes r62074 - r62078

今日は内部的な構造体の型の変更などであまり大きな変更はありませんでした。 k0kubun: r62074 2018-01-27 22:50:28 +0900 r62051 で追加された insns.def の命令の attribute の handles_frame について insns.def の先頭のコメントに追記しています。つい…

ruby-trunk-changes r62058 - r62073

今日は for 文で to_ary メソッドによる変換が可能なオブジェクトを複数の変数に splat して代入できるようにする変更や、Windows 環境での nan() の代替実装を使う場合のコンパイルエラーの修正などがありました。 nobu: r62058 2018-01-26 22:27:56 +0900 …

ruby-trunk-changes r62040 - r62057

今日は NameError.new でキーワード引数 receiver と key を受け付けるようにする変更や Hash#transform_keys! で既存の別の key に変更した時の不具合修正などがありました。 nobu: r62040 2018-01-25 22:10:14 +0900 coderange (文字列内のバイト列が Enco…

ruby-trunk-changes r62025 - r62039

今日は Kernel#system で子プロセスの異常終了時に例外を発生させるようにする :exception オプションの追加などがありました。 k0kubun: r62025 2018-01-24 23:11:25 +0900 Kernel#system のオプション引数に :exception を追加して、これに真を指定したら…

ruby-trunk-changes r62014 - r62024

今日はブロック引数への暗黙の to_proc メソッド呼び出しに Refinements が効くようにする変更や、拡張ライブラリ socket の Windows 版での例外メッセージの Encoding の不具合修正などがありました。 nobu: r62014 2018-01-23 23:17:25 +0900 parse.y の s…

ruby-trunk-changes r62007 - r62013

今日は mkmf.rb で linker の警告をエラー扱いしなくする変更や parse.y のリファクタリングなどがありました。 nobu: r62007 2018-01-22 21:34:51 +0900 mkmf.rb で linker のオプションを決める時に -Werror をつけて linker の警告もエラー扱いにするよう…

ruby-trunk-changes r62002 - r62006

今日も主に parse.y のリファクタリングなどがありました。 nobu: r62002 2018-01-22 00:26:19 +0900 parse.y の enum lex_state_e に EXPR_NONE という定数を追加しています。 明示的に 0 と定義しているから初期化用か番兵的に使うためのかな? nobu: r6200…

ruby-trunk-changes r61984 - r62001

今日も主に parse.y のリファクタリングというか実装方針の変更がありました。 mame: r61984 2018-01-21 01:21:20 +0900 parse.y の const_path_field() や top_const_field() といったマクロで本体と ripper の差異を吸収していたのをやめて const_decl() …

ruby-trunk-changes r61956 - r61983

今日は parser.y の DSL の拡張や変更、parse.y のリファクタリングのほか configure.ac を複数のファイルに分割するという変更などがありました。 kazu: r61956 2018-01-19 21:15:56 +0900 r61812 で標準添付ライブラリ net/protocol で write の複数引数渡…

ruby-trunk-changes r61936 - r61955

今日は parse.y のなかの ripper 向けの処理をコメント内で DSL で記述するようにする変更などがありました。 nobu: r61936 2018-01-19 00:48:55 +0900 compile.c の ibf_dump_object_list() で VALUE の配列を確保するのに rb_ary_tmp_new() を直接呼んでい…

ruby-trunk-changes r61889 - r61935

今日はヒアドキュメントの終了トークンがとても長い時の不具合修正や、export するシンボルの追加などがありました。 hsbt: r61889 2018-01-17 22:15:13 +0900 node.c, random.c, thread.c のコメントの typo 修正。 nobu: r61890 2018-01-18 00:28:37 +0900…

ruby-trunk-changes r61876 - r61888

今日も主に parse.y のリファクタリングや iseq.c のリファクタリングなどがありました。 mame: r61876 2018-01-17 00:12:09 +0900 r61875 で node_buffer_elem_t の最後の配列のサイズを省略するのはあきらめましたが、struct node_buffer_struct に node_b…

ruby-trunk-changes r61855 - r61875

今日は主に parse.y のリファクタリングがありました。 mame: r61855 2018-01-15 23:01:16 +0900 メソッド呼び出しを obj::meth のように "::" の記法でした時に引数のかっことの間に空白が入り {...} のブロックを渡した時の syntax のテストを追加していま…

ruby-trunk-changes r61815 - r61853

今日は主に parse.y のリファクタリング続きや、memory alignment についてコンパイラのサポートが可能なら使うようにする変更などがありました。 mame: r61815 2018-01-14 22:51:35 +0900 parse.y でポインタの変数名などに p という名前を使っていたのを p…

ruby-trunk-changes r61805 - r61814

今日は標準添付ライブラリ net/http の最適化や、構造体末尾に配列を置く手法のリファクタリングなどがありました。 mame: r61805 2018-01-13 21:09:24 +0900 r61804 で internal.h に定義した可変のつもりの配列サイズの指定を定数化した FLEX_ARY_LEN を n…

ruby-trunk-changes r61791 - r61804

今日は parse.y のリファクタリングなどがありました。 hsbt: r61791 2018-01-12 22:05:09 +0900 template/unicode_norm_gen.tmpl のコメントの typo 修正。 shyouhei: r61792 2018-01-12 22:14:53 +0900 r61746 の tool/ruby_vm/views/_insn_stack_increase…

ruby-trunk-changes r61768 - r61790

今日は parse.y のリファクタリングや VM 用ソースの生成ツールの置き換え、標準添付ライブラリ matrix の新メソッド追加などがありました。 mame: r61768 2018-01-11 22:42:15 +0900 parse.y の構造体メンバーのコメント追加と paren_nest の管理方法のリフ…

ruby-trunk-changes r61759 - r61767

今日は Array#min, Array#max で比較の結果同じ大きさと判定されたオブジェクトがあった時にどっちが返されるかの位置による依存が変わっていたのを修正する変更などがありました。 mame: r61759 2018-01-10 22:30:22 +0900 rubyspec で Etc.getlogin のテス…

ruby-trunk-changes r61748 - r61758

今日は昨日入れた succinct bitvector での get_insns_info() の実装の 32 bit 環境向けの修正や VM 用コード生成ツール変更の revert などがありました。 ko1: r61748 2018-01-10 02:09:23 +0900 r61739 で get_insns_info() のデフォルトの実装を succinct…

ruby-trunk-changes r61685 - r61747

今日はなぜか大量のコミットがあり、ブロックパラメータの blk.call の最適化の追加修正、NODE の位置情報のつけかたの整理ほか parse.y のリファクタリング、VM のソースコード生成のツールの刷新、get_insns_info() に succinct bitvector というアルゴリ…

ruby-trunk-changes r61653 - r61684

今日は標準添付ライブラリ net/* の最適化やブロック引数への call メソッドの呼び出しの最適化などがありました。 nobu: r61653 2018-01-07 20:51:29 +0900 case 文の when 節に対応する NODE_WHEN の行番号を when の引数の行にあわせるようにしています。…

ruby-trunk-changes r61641 - r61652

今日は Exception#full_message のハイライトつきの時のエスケープシーケンスの付けかたの修正などがありました。 mrkn: r61641 2018-01-07 10:20:10 +0900 doc/NEWS-2.5.0 の例外のバックトレースの順序の反転やハイライトの有無は $stderr が端末かどうか…

ruby-trunk-changes r61617 - r61640

今日は Stack consistency error の不具合修正、ブロック引数で受け取ったブロックを call メソッドで呼び出した時も Proc オブジェクト化しないようにする最適化などがありました。 nobu: r61617 2018-01-05 23:23:22 +0900 VM 命令へのコンパイル時の unre…

ruby-trunk-changes r61597 - r61616

今日は NODE の種類の整理や rb_ast_t の構造体のリファクタリングや、Struct の :keyword_init オプションを使ったインスタンスの Marshal.load の不具合修正などがありました。 mame: r61597 2018-01-04 21:47:22 +0900 正規表現リテラルの式展開を最初の1…

ruby-trunk-changes r61578 - r61596

今日も古いコンパイラ対策などがありました。 nobu: r61578 2018-01-03 22:58:27 +0900 AST を VM 命令列にコンパイル中にデバッグやエラー時に disassemble する時に label の表示に VM スタックのその時点での深さも表示するようにしています。 nobu: r615…

ruby-trunk-changes r61571 - r61577

今日は主に昨日の変更の再修正などがありました。 ko1: r61571 2018-01-03 00:29:58 +0900 r61565 のうち vm_block_iseq() のほうの修正は revert して、かわりに呼び元のひとつである rb_raw_obj_info() でチェックして呼び出さないようにしています。 vm_b…

ruby-trunk-changes r61536 - r61570

今日は get_insn_info() の実装を切り替えできるようにするリファクタリングや、いくつかの関数で前提が不十分で未初期化領域や解放済み領域へのアクセスの可能性があった不具合修正が多くありました。 mame: r61536 2018-01-01 21:51:21 +0900 r61534 の st…