forked from ruby/ruby
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
5195 lines (3235 loc) · 171 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Thu Jun 25 07:08:35 2015 Koichi Sasada <[email protected]>
* gc.c (obj_info, method_type_name): show method type name in a string
instead of a number.
Thu Jun 25 06:49:25 2015 Koichi Sasada <[email protected]>
* gc.c (obj_info): show more details for T_IMEMO/imemo_ment.
Thu Jun 25 06:40:46 2015 Koichi Sasada <[email protected]>
* vm_method.c (rb_method_definition_reset): need a WB for
VM_METHOD_TYPE_ATTRSET.
Thu Jun 25 03:33:21 2015 Koichi Sasada <[email protected]>
* gc.c (RGENGC_OBJ_INFO, obj_info): add a macro to enable/disable
rich obj_info() output.
At the default, the value of RGENGC_OBJ_INFO is
(RGENGC_DEBUG | RGENGC_CHECK_MODE).
* gc.c (RGENGC_OBJ_INFO): force enable it to debug #11244.
* gc.c (gc_mark_ptr): print more details with obj_info().
* gc.c (gc_mark_children): remove useless debug prints.
Thu Jun 25 02:40:33 2015 Eric Wong <[email protected]>
* ext/openssl/ossl_ssl.c (ossl_ssl_read_internal):
do not process kwargs in blocking mode
* test/openssl/test_ssl.rb: test sysread
Wed Jun 24 16:54:11 2015 Koichi Sasada <[email protected]>
* gc.c (gc_mark_children): add additional debug code for #11244.
Wed Jun 24 16:05:42 2015 Eric Wong <[email protected]>
* string.c (rb_str_justify): use RB_GC_GUARD
Wed Jun 24 14:25:17 2015 Koichi Sasada <[email protected]>
* gc.c (gc_mark_ptr): add a check code for #11244.
It should be removed later. But we can remain this check
because it is only a branch.
Wed Jun 24 12:49:11 2015 Nobuyoshi Nakada <[email protected]>
* string.c (rb_fstring_cstr): new function to make a fstring from
a string literal.
* internal.h (rb_fstring_lit): new macro to make a fstring from a
string literal.
* include/ruby/intern.h (rb_strlen_lit): new macro to get the
length of a string literal, borrowed from mruby/mruby@e4afd53.
Wed Jun 24 12:21:16 2015 SHIBATA Hiroshi <[email protected]>
* re.c: Update documentation for Regexp class.
[fix GH-937][ci skip] Patch by @davydovanton
Wed Jun 24 09:23:03 2015 Eric Wong <[email protected]>
* variable.c (generic_ivar_set): remove FL_ABLE check
(gen_ivar_copy): ditto
[ruby-core:69715]
Wed Jun 24 08:28:15 2015 Eric Wong <[email protected]>
* ext/socket/ancdata.c (bsock_recvmsg_internal): reduce stack use
[ruby-core:69595] [Feature #11263]
Tue Jun 23 14:32:42 2015 Nobuyoshi Nakada <[email protected]>
* error.c (name_err_receiver): raise ArgumentError if no receiver
is available on this exception object. [Feature #10881]
Tue Jun 23 09:48:34 2015 Eric Wong <[email protected]>
* dir.c (check_dirname): avoid volatile, use return value
(dir_s_chroot, dir_s_mkdir, dir_s_rmdir): adjust callers
Tue Jun 23 06:37:10 2015 Eric Wong <[email protected]>
* struct.c (struct_ivar_get): cache member definition in a subclass
Thanks to Sokolov Yura aka funny_falcon <[email protected]>
in https://bugs.ruby-lang.org/issues/10585
Tue Jun 23 04:58:06 2015 Eric Wong <[email protected]>
* benchmark/bm_vm2_struct_big_href_hi.rb: new benchmark
* benchmark/bm_vm2_struct_big_href_lo.rb: ditto
* benchmark/bm_vm2_struct_big_hset.rb: ditto
* benchmark/bm_vm2_struct_small_href.rb: ditto
* benchmark/bm_vm2_struct_small_hset.rb: ditto
Thanks to Sokolov Yura aka funny_falcon <[email protected]>
in https://bugs.ruby-lang.org/issues/10585
Mon Jun 22 18:08:48 2015 Naohisa Goto <[email protected]>
* test/lib/test/unit.rb (Test::Unit::Parallel#start_watchdog): removed
because it has been meaningless since r36385. [Bug #11288]
* test/lib/test/unit.rb (Test::Unit::Parallel#_run_parallel): delete
lines related to the removed start_watchdog method
Sun Jun 21 23:52:46 2015 Kazuhiro NISHIYAMA <[email protected]>
* NEWS: mention Array#bsearch_index and Hash#fetch_values.
Sun Jun 21 23:46:27 2015 Kazuhiro NISHIYAMA <[email protected]>
* NEWS: add a reference to a ticket.
Sun Jun 21 20:28:09 2015 Nobuyoshi Nakada <[email protected]>
* internal.h (roomof): extract from type_roomof, and move from
bignum.c.
Sun Jun 21 18:32:37 2015 Nobuyoshi Nakada <[email protected]>
* ruby_atomic.h (ATOMIC_PTR_CAS): define by generic CAS macro, not
via size_t, to suppress a warning by mingw gcc.
Sun Jun 21 05:31:41 2015 Shota Fukumori <[email protected]>
* ext/objspace/objspace_dump.c(dump_object): Return empty JSON object when
passed object is a special const, instead of SEGV.
Based patch by Kohei Suzuki (eagletmt). [ruby-core:69692] [Bug #11291]
* test/objspace/test_objspace.rb(test_dump_special_consts): Test for above fix.
Sat Jun 20 03:56:58 2015 Yusuke Endoh <[email protected]>
* enc/make_encmake.rb: the list of encoding extension libraries must
not include encinit.c itself. It caused "undefined reference to
Init_encinit".
Sat Jun 20 02:03:53 2015 Naohisa Goto <[email protected]>
* process.c (rb_execarg_parent_start1): new macro ALWAYS_NEED_ENVP
to generate envp_str anytime on Solaris 10 (or earlier version
of Solaris) to avoid calling execv() which is async-signal unsafe
on Solaris 10. [Bug #11265] [ruby-dev:49089]
* process.c (exec_with_sh, proc_exec_cmd): On Solaris 10,
because ALWAYS_NEED_ENVP is 1 and envp_str is always generated,
execv() in exec_with_sh() and proc_exec_cmd() are never called.
To guarantee this, execv() is replaced by a macro to print
out error message on Solaris 10.
* process.c (proc_exec_sh): Because proc_exec_sh() may be called
by rb_proc_exec() with envp_str = Qfalse, execl() is replaced
by a macro that calls execle() with "extern char **environ"
traditional global variable on Solaris 10.
TODO: This may be unsafe and should be changed in the future.
Although rb_proc_exec() is not used from inside current version
of ruby, it may be called by third-party extensions.
Sat Jun 20 01:10:13 2015 Kazuhiro NISHIYAMA <[email protected]>
* NEWS: mention about $SAFE.
Fri Jun 19 14:53:35 2015 Nobuyoshi Nakada <[email protected]>
* proc.c (rb_mod_define_method): now requires a block direct to
this method call. [ruby-core:69655] [Bug #11283]
Fri Jun 19 13:54:43 2015 Nobuyoshi Nakada <[email protected]>
* proc.c (rb_mod_define_method): get rid of inadvertent ID
creations at error.
Fri Jun 19 07:58:11 2015 Nobuyoshi Nakada <[email protected]>
* ext/extmk.rb: if no with-ext option is given, default to
enable everything. [ruby-dev:49108] [Bug #11280]
Fri Jun 19 06:30:07 2015 Koichi Sasada <[email protected]>
* bootstraptest/test_method.rb: remove a test because $SAFE=2 was
obsolete.
Please check btest, too.
Thu Jun 18 23:51:51 2015 Kazuhiro NISHIYAMA <[email protected]>
* bin/erb: $SAFE=3 is obsolete.
Thu Jun 18 23:45:11 2015 Kazuhiro NISHIYAMA <[email protected]>
* safe.c: removed needless doc related $SAFE=2
Thu Jun 18 23:38:07 2015 NAKAMURA Usaku <[email protected]>
* thread.c (rb_thread_safe_level): fix document. $SAFE=3 is obsolete.
[ci skip]
Thu Jun 18 23:25:51 2015 Nobuyoshi Nakada <[email protected]>
* ext/extmk.rb: configure intersection of with-ext and not
without-ext, as withouts is no longer true by default if
with-ext option is given. [ruby-dev:49108] [Bug #11280]
Thu Jun 18 23:20:46 2015 SHIBATA Hiroshi <[email protected]>
* include/ruby/ruby.h: $SAFE=2 is now obsolete.
* dir.c, ext/fiddle/handle.c, ext/socket/basicsocket.c, file.c
gc.c, io.c, process.c, safe.c, signal.c, win32/file.c:
removed code for $SAFE=2
* test/erb/test_erb.rb, test/fiddle/test_handle.rb
test/ruby/test_env.rb: removed tests for $SAFE=2.
Thu Jun 18 22:50:07 2015 Yusuke Endoh <[email protected]>
* enc/make_encmake.rb: added --transes and --no-transes options.
Thu Jun 18 18:24:12 2015 Eric Wong <[email protected]>
* test/socket/test_unix.rb: replace sleep with select
Thu Jun 18 17:59:06 2015 Koichi Sasada <[email protected]>
* vm.c (rb_vm_control_frame_id_and_class): remove useless codes.
`me' knows ID and owner class.
Thu Jun 18 16:58:35 2015 Koichi Sasada <[email protected]>
* method.h: constify rb_method_alias_struct::original_me and
rb_method_refined_struct::orig_me.
* class.c (move_refined_method): use RB_OBJ_WRITE() for
me->def->body.refined.orig_me.
Thu Jun 18 14:35:28 2015 Koichi Sasada <[email protected]>
* ext/objspace/objspace.c (count_imemo_objects): support imemo_ment.
Thu Jun 18 13:32:46 2015 Nobuyoshi Nakada <[email protected]>
* error.c (name_err_receiver): add NameError#receiver method.
[Feature #10881]
Thu Jun 18 10:00:06 2015 SHIBATA Hiroshi <[email protected]>
* safe.c: removed needless doc related $SAFE=3
Thu Jun 18 09:59:23 2015 SHIBATA Hiroshi <[email protected]>
* safe.c: rename old method name for $SAFE=3
Thu Jun 18 06:02:42 2015 Eric Wong <[email protected]>
* compile.c (get_exception_sym2type, iseq_build_from_ary_body):
rely on %+PRIsVALUE instead of calling rb_inspect directly
Wed Jun 17 20:59:25 2015 Nobuyoshi Nakada <[email protected]>
* common.mk (ENC_MK): needs fake.rb if cross compilation.
[ruby-dev:49098] [Bug #11272]
Wed Jun 17 20:23:29 2015 Tanaka Akira <[email protected]>
* ext/rbconfig/sizeof/extconf.rb: Check __float80.
Wed Jun 17 15:15:53 2015 NAKAMURA Usaku <[email protected]>
* safe.c (safe_setter): of course, don't have to warn the limitation of
$SAFE=3 after it's removed.
Wed Jun 17 14:29:43 2015 SHIBATA Hiroshi <[email protected]>
* include/ruby/ruby.h: $SAFE=3 is now obsolete.
* ext/socket/init.c, ext/socket/socket.c, ext/socket/tcpsocket.c
ext/socket/udpsocket.c, gc.c, object.c, re.c, safe.c: removed code
for $SAFE=3
* bootstraptest/test_method.rb, test/erb/test_erb.rb, test/ruby/test_dir.rb
test/ruby/test_file.rb, test/ruby/test_method.rb, test/ruby/test_regexp.rb
test/ruby/test_thread.rb: remove tests for $SAFE=3
Wed Jun 17 12:13:33 2015 SHIBATA Hiroshi <[email protected]>
* ChangeLog: added contributor name.
Wed Jun 17 10:57:28 2015 SHIBATA Hiroshi <[email protected]>
* lib/csv.rb: accept to use Range object for row selection.
contributed by Mitsutaka Mimura.
[Feature #11267][ruby-dev:49091]
Wed Jun 17 09:50:12 2015 Nobuyoshi Nakada <[email protected]>
* lib/rdoc/servlet.rb (documentation_search, root_search):
requires json for JSON.dump and fix sporadic failures due to
the loading order.
Tue Jun 16 19:19:53 2015 Tanaka Akira <[email protected]>
* ext/rbconfig/sizeof/extconf.rb: Check several types defined in C99
and x86_64 ABI.
* template/sizes.c.tmpl: Relax a pattern for types.
Tue Jun 16 17:37:01 2015 Koichi Sasada <[email protected]>
* test/objspace/test_objspace.rb: relax pattern because uncollectible
flag and marked flag can be false at major GC.
[Bug #10852]
Tue Jun 16 04:50:44 2015 Eric Wong <[email protected]>
* ext/socket/basicsocket.c (bsock_recv): document outbuf
* ext/socket/unixsocket.c (unix_recvfrom): ditto
* ext/socket/init.c (rsock_strbuf, recvfrom_locktmp): new functions
(rsock_s_recvfrom): support destination buffer as 3rd arg
(rsock_s_recvfrom_nonblock): ditto
* string.c (rb_str_locktmp_ensure): export for internal ext
* test/socket/test_nonblock.rb: test recv_nonblock
* test/socket/test_unix.rb: test recv
[ruby-core:69543] [Feature #11242]
Tue Jun 16 04:38:02 2015 Eric Wong <[email protected]>
* ext/socket/ancdata.c (bsock_sendmsg_internal,
bsock_recvmsg_internal):
support "exception: false" kwarg
* ext/socket/init.c (rsock_s_recvfrom_nonblock):
ditto
* ext/socket/init.c (rsock_s_recvfrom_nonblock): use rsock_opt_false_p
* ext/socket/socket.c (sock_connect_nonblock): ditto
* ext/socket/rubysocket.h (rsock_opt_false_p): new function
* ext/socket/basicsocket.c (bsock_recv_nonblock): update rdoc
* ext/socket/udpsocket.c (udp_recvfrom_nonblock): ditto
* test/socket/test_nonblock.rb: new tests
[ruby-core:69542] [Feature #11229]
Mon Jun 15 14:33:02 2015 Akinori MUSHA <[email protected]>
* lib/set.rb: Make Set#each and SortedSet#each generate a sized
enumerator. [GH-931] by kachick (Kenichi Kamiya)
* test/test_set.rb: Import tests from Set into SortedSet. [GH-931]
by kachick (Kenichi Kamiya)
Mon Jun 15 02:26:34 2015 NARUSE, Yui <[email protected]>
* lib/net/http.rb (Net::HTTP#connect): use connect_nonblock and
io/wait to eliminate timeout use. fix GH-899
Sat Jun 13 07:21:18 2015 KOSAKI Motohiro <[email protected]>
* thread.c (thread_start_func_2): don't interrupt when last thread
exit unless main thread is already exited. Otherwise main thread
could be wrongly interrupted when it uses rb_thread_call_without_gvl().
Patch by Takehiro Kubo. [Bug #11237][ruby-dev:49044][GH-898]
* test/-ext-/gvl/test_last_thread.rb: new test for the above fix.
* ext/-test-/gvl/call_without_gvl/call_without_gvl.c: new ext for
the above test.
* ext/-test-/gvl/call_without_gvl/extconf.rb: ditto.
Mon Jun 15 00:14:33 2015 Tanaka Akira <[email protected]>
* ext/pathname/lib/pathname.rb (descend): Blockless form supported.
(ascend): Ditto.
[ruby-core:68820] [Feature #11052] Patch by Piotr Szotkowski.
Sun Jun 14 20:09:25 2015 Tanaka Akira <[email protected]>
* time.c (time_getlocaltime): [DOC] Add examples of valid utc_offset
formats.
[ruby-core:68306] [Misc #10905] Patch by Charles Korn.
Sun Jun 14 18:49:56 2015 Tanaka Akira <[email protected]>
* ext/socket/raddrinfo.c (parse_numeric_port): Detect
port overflow.
(numeric_getaddrinfo): Use parse_numeric_port.
numeric_getaddrinfo fails if port is too big now.
This makes rb_getaddrinfo invokes the real getaddrinfo()
on such condition.
This change is related to [ruby-core:69355] [Bug #11179].
Sun Jun 14 17:26:03 2015 Tanaka Akira <[email protected]>
* enum.c (enum_chunk_while): New method Enumerable#chunk_while.
[ruby-core:67738] [Feature #10769] proposed by Tsuyoshi Sawada.
Sun Jun 14 17:20:40 2015 Nobuyoshi Nakada <[email protected]>
* file.c (rb_file_load_ok): try opening file without gvl not to
lock entire process. [Bug #11060]
Sun Jun 14 10:43:50 2015 NAKAMURA Usaku <[email protected]>
* tool/runruby.rb: just remove the lines of RUBY_VERSION check and raise
instead of replacing the check to `true`, for getting rid of a
warning `possibly useless use of true in void context`.
Sun Jun 14 10:13:55 2015 Kouhei Sutou <[email protected]>
* lib/rexml/source.rb (REXML::IOSource#scan): Fix a typo in
document. [fix GH-934]
Patch by Anton Davydov. Thanks!!!
Sun Jun 14 10:09:48 2015 Kouhei Sutou <[email protected]>
* lib/rexml/attlistdecl.rb (REXML::AttlistDecl): Fix a typo in
document. [fix GH-934]
Patch by Anton Davydov. Thanks!!!
Sun Jun 14 06:24:57 2015 Benoit Daloze <[email protected]>
* test/ruby/test_io.rb: add test for IO.binread fd leak.
See r50881.
Sun Jun 14 05:23:51 2015 Benoit Daloze <[email protected]>
* io.c (rb_io_s_binread): close fd if seek offset is invalid.
Sun Jun 14 04:40:32 2015 Benoit Daloze <[email protected]>
* test/lib/leakchecker.rb (check): refactor.
Sun Jun 14 04:34:14 2015 Benoit Daloze <[email protected]>
* test/lib/leakchecker.rb: Return false for no leaks.
Otherwise the GC could run for nothing.
Sun Jun 14 04:15:40 2015 Benoit Daloze <[email protected]>
* lib/delegate.rb: [DOC] Update SimpleDelegator example. [ci skip]
Sat Jun 13 20:28:14 2015 NARUSE, Yui <[email protected]>
* file.c (rb_stat_ino): get inode from the interval of struct st.
* win32/win32.c (stati64_set_inode): get nFilIndexHigh/Low, and set it
to the interval of struct st as inode.
* win32/win32.c (stati64_set_inode_handle): call stati64_set_inode.
* win32/win32.c (rb_w32_fstati64): call stati64_set_inode_handle.
* win32/win32.c (stati64_handle): call stati64_set_inode.
Sat Jun 13 19:44:53 2015 NAKAMURA Usaku <[email protected]>
* ext/io/console/depend (.list.chksum): revert a part of r50859, because
it was not mentioned at its commit log and it caused a build error on
Windows ($(MAKE) is already quoted).
Sat Jun 13 17:35:11 2015 NARUSE, Yui <[email protected]>
* vm_core.h (rb_thread_t): add th->name.
* vm.c (th_init): initialize th->name.
* thread.c (Init_Thread): add Thread.name and name=. [Feature #11251]
* thread.c (rb_thread_inspect): show thread's name if set.
* thread.c (rb_thread_getname): defined.
* thread.c (rb_thread_setname): ditto.
Sat Jun 13 11:39:43 2015 SHIBATA Hiroshi <[email protected]>
* lib/tempfile.rb: Fix typo. [fix GH-933] Patch by @Zorbash
Sat Jun 13 11:38:00 2015 SHIBATA Hiroshi <[email protected]>
* ext/openssl/ossl_ocsp.c: fix documentation on ocsp response cert status.
[fix GH-932] Patch by @chrisholmes
Sat Jun 13 11:35:19 2015 SHIBATA Hiroshi <[email protected]>
* ext/bigdecimal/bigdecimal.gemspec: Fix require paths for released gem.
[fix GH-929] Patch by @voxik
* ext/io/console/io-console.gemspec: ditto.
Sat Jun 13 00:45:08 2015 Marc-Andre Lafortune <[email protected]>
* lib/prime.rb: Return sized enumerators.
Patch by Kenichi Kamiya [GH-931]
Sat Jun 13 00:45:06 2015 Marc-Andre Lafortune <[email protected]>
* lib/prime.rb: Fix with_object with no block given
Sat Jun 13 00:44:59 2015 Marc-Andre Lafortune <[email protected]>
* lib/prime.rb: Have with_index accept an offset parameter.
Based on patch by T Yamada. [#11007]
Fri Jun 12 22:21:12 2015 Kazuhiro NISHIYAMA <[email protected]>
* test/ruby/test_extlibs.rb (TestExtLibs::check_existence): fix
error. [Bug #11255] [ruby-dev:49079]
Fri Jun 12 21:17:46 2015 NAKAMURA Usaku <[email protected]>
* pack.c (pack_{un,}pack): new template character `j` and `J`, pointer
with signed and unsigned integers.
* NEWS: mention about this feature.
[Feature #11215] [ruby-dev:49015]
Fri Jun 12 21:01:44 2015 NAKAMURA Usaku <[email protected]>
* file.c (File::SHARE_DELETE): new flag to be able to delete opened file
on Windows.
* include/win32/win32.c (O_SHARE_DELETE): new pseudo file mode flag.
* win32/win32.c (rb_w32_{w,}open): support above flag. [EXPERIMENTAL]
* NEWS: mention about this feature.
[Feature #11218] [ruby-dev:49022]
Fri Jun 12 18:21:45 2015 SHIBATA Hiroshi <[email protected]>
* ChangeLog: added missing commit message.
Fri Jun 12 18:20:37 2015 SHIBATA Hiroshi <[email protected]>
* sample/exyacc.rb: Fix some typos. [fix GH-927] Patch by @davydovanton
* sample/list.rb: ditto.
* sample/trick2013/kinaba/remarks.markdown: ditto.
Fri Jun 12 17:34:14 2015 Wojciech Mach <[email protected]>
* hash.c (rb_hash_fetch_values): add `Hash#fetch_values`.
[Feature #10017] [Fix GH-776]
Fri Jun 12 16:28:17 2015 Radan Skoric <[email protected]>
* array.c (rb_ary_bsearch_index): Implement Array#bsearch_index
method, which is similar to bsearch and returns the index or
nil. [Feature #10730]
Thu Jun 11 19:11:22 2015 SHIBATA Hiroshi <[email protected]>
* ext/zlib/zlib.c: Fix indentation for rdoc.
[Bug #11221][ruby-core:69465]
Thu Jun 11 16:23:37 2015 Koichi Sasada <[email protected]>
* method.h (METHOD_ENTRY_BASIC_SET): fix last commit (unbalanced parens).
Thu Jun 11 15:14:16 2015 NARUSE, Yui <[email protected]>
* configure.in: define SET_THREAD_NAME if it has pthread_set_name_np
for FreeBSD, and don't define it if both pthread_setname_np
and pthread_set_name_np don't exist.
* thread_pthread.c (SET_THREAD_NAME): don't define if they don't exist.
* thread_pthread.c (native_set_thread_name): run if SET_THREAD_NAME
is defined.
Thu Jun 11 15:53:31 2015 Koichi Sasada <[email protected]>
* method.h (METHOD_ENTRY_BASIC_SET): should clear last bit.
Thu Jun 11 14:34:45 2015 SHIBATA Hiroshi <[email protected]>
* lib/rubygems.rb: bump version to 2.4.7 and 2.4.8. these versions fixed
CVE-2015-3900.
* lib/rubygems/remote_fetcher.rb: ditto.
* test/rubygems/test_gem_remote_fetcher.rb: added testcase for CVE-2015-3900
Thu Jun 11 14:18:51 2015 SHIBATA Hiroshi <[email protected]>
* lib/rubygems.rb: bump version to 2.4.6. It's missing change at r49774.
Thu Jun 11 13:50:19 2015 Nobuyoshi Nakada <[email protected]>
* array.c (ary_ensure_room_for_push): check if array size will
exceed maximum size to get rid of buffer overflow.
[ruby-dev:49043] [Bug #11235]
* array.c (ary_ensure_room_for_unshift, rb_ary_splice): ditto.
Thu Jun 11 13:17:34 2015 NAKAMURA Usaku <[email protected]>
* test/test_cmath.rb (TestCMath#test_trigonometric_functions): should
not compare float values (in complex values) by `==`.
Thu Jun 11 08:52:01 2015 Koichi Sasada <[email protected]>
* method.h: embed rb_method_entry_t::attr::flags (5 bits) into
rb_method_entry_t::flags to make one word spare space.
Add some macros to access these flags.
* vm_method.c: use these macros.
* internal.h: define IMEMO_FL_USHIFT and IMEMO_FL_USER[0-4]
for T_IMEMO local flags.
Thu Jun 11 08:27:06 2015 Koichi Sasada <[email protected]>
* vm.c: use VM_ASSERT instead of assert().
* vm_args.c: ditto.
* vm_insnhelper.c: ditto.
* vm_method.c: ditto.
Thu Jun 11 08:16:48 2015 Koichi Sasada <[email protected]>
* vm_core.h: define VM_ASSERT() for assertion
enabled only when (VM_CHECK_MODE > 0).
* vm_insnhelper.c: move definition VM_CHECK_MODE
from vm_insnhelper.c to vm_core.h.
* vm.c: remove <assert.h>
Thu Jun 11 06:46:07 2015 Koichi Sasada <[email protected]>
* vm_insnhelper.c (check_frame): check type of cref_or_me first.
Thu Jun 11 04:34:39 2015 Kazuki Tanaka <[email protected]>
* test/test_cmath.rb: Add some assertions.
Thu Jun 11 00:34:39 2015 Nobuyoshi Nakada <[email protected]>
* template/fake.rb.in: expanded macro result may have spaces
between tokens. [ruby-dev:49047] [Bug #11243]
Wed Jun 10 22:27:32 2015 Naohisa Goto <[email protected]>
* lib/mkmf.rb: revert r50804 because of build failure when specifying
LDFLAGS during configure, observed on Solaris with GCC 4.6.
[Bug #11245]
Wed Jun 10 21:59:51 2015 Kazuhiro NISHIYAMA <[email protected]>
* README.ja.md: fix markup miss.
Wed Jun 10 11:06:25 2015 Nobuyoshi Nakada <[email protected]>
* template/fake.rb.in: turn into erb template from autoconf
template to fake more accurately.
* common.mk (fake.rb): needs preprocessed file now.
* version.c (Init_version): add dummy expression to
RUBY_ENGINE_VERSION.
Tue Jun 9 12:31:25 2015 Marc-Andre Lafortune <[email protected]>
* lib/prime.rb: Simplify and optimize EratosthenesSieve
Tue Jun 9 11:45:00 2015 Marc-Andre Lafortune <[email protected]>
* lib/prime.rb: Simplify and optimize EratosthenesSieve
based on patch by Ajay Kumar. [Fixes GH-921]
Mon Jun 8 05:09:58 2015 Koichi Sasada <[email protected]>
* gc.c (obj_info): print method id for T_IMEMO/ment.
Sun Jun 7 07:05:43 2015 Kazuki Tanaka <[email protected]>
* Move test cases from test/ruby/test_complex.rb to test/test_cmath.rb
Sat Jun 6 18:23:41 2015 Koichi Sasada <[email protected]>
* method.h: back to share rb_method_definition_t by
rb_method_entry_t.
r50728 changed sharing `def's to isolating `def's
on alias and so on. However, this change conflicts
future improvement plan. So I change back to sharing approach.
* method.h: move rb_method_definition_t::flags to
rb_method_entry_t::attr::flags.
rb_method_entry_t::attr is union with VALUE because this field
should have same size of VALUE. rb_method_entry_t is T_IMEMO).
And also add the following access macros to it's fields.
* METHOD_ENTRY_VISI(me)
* METHOD_ENTRY_BASIC(me)
* METHOD_ENTRY_SAFE(me)
* vm_method.c (rb_method_definition_addref): added instead of
rb_method_definition_clone().
Do not create new definition, but increment alias_count.
* class.c (clone_method): catch up this fix.
* class.c (method_entry_i): ditto.
* proc.c (mnew_internal): ditto.
* proc.c (mnew_missing): ditto.
* vm_eval.c: ditto.
* vm_insnhelper.c: ditto.
* vm_method.c: ditto.
Sat Jun 6 15:59:38 2015 Koichi Sasada <[email protected]>
* class.c: ins_methods_push() needs rb_method_visibility_t type on
2nd arg.
Sat Jun 6 15:05:47 2015 Koichi Sasada <[email protected]>
* class.c (ins_methods_push): Change type and name of parameters
to make more clear.
Sat Jun 6 08:52:13 2015 Eric Wong <[email protected]>
* test/socket/test_nonblock.rb: try to avoid EMSGSIZE
[ruby-core:69466]
Sat Jun 6 07:58:30 2015 Koichi Sasada <[email protected]>
* gc.c: remove struct mark_tbl_arg and pass objspace directly
to avoid indirect access overhead.
Sat Jun 6 07:08:45 2015 Eric Wong <[email protected]>
* ext/socket/ancdata.c (bsock_sendmsg_internal): drop redundant assignment
Sat Jun 6 01:00:06 2015 Naohisa Goto <[email protected]>
* ext/socket/ancdata.c (bsock_sendmsg_internal): all arguments are
parsed even on systems without HAVE_STRUCT_MSGHDR_MSG_CONTROL
to prevent SEGV caused by passing Qnil to RARRAY_LENINT and
to preserve behavior before r50776.
[Bug #11224] [ruby-core:69468] [Bug #11225] [ruby-core:69469]
Fri Jun 5 22:37:42 2015 Koichi Sasada <[email protected]>
* class.c (ins_methods_push): change 3rd parameter's type
from long to rb_method_visibility_t.
* class.c (ins_methods_i): catch up this fix.
* class.c (method_entry_i): cast to st_data_t instead of `long'.
Fri Jun 5 20:37:10 2015 Koichi Sasada <[email protected]>
* internal.h: move definition of rb_cref_t to method.h.
* eval_intern.h: move definition of rb_scope_visibility_t
to method.h.
* method.h: change rb_cref_t::scope_visi from VALUE to
rb_scope_visibility_t.
[Bug #11219]
* vm.c (vm_cref_new): accept rb_method_visibility_t directly.
* vm_insnhelper.c (rb_vm_rewrite_cref): don't use 0,
but METHOD_VISI_UNDEF.
* vm_method.c (rb_scope_visibility_set): don't need to use cast.
* vm_method.c (rb_scope_module_func_set): ditto.
Fri Jun 5 17:27:30 2015 Eric Wong <[email protected]>
* ext/socket/ancdata.c (bsock_sendmsg_internal): avoid msg_control
ptr if msg_controllen is zero to fix portability problems.
Fri Jun 5 09:17:45 2015 Eric Wong <[email protected]>
* ext/socket/ancdata.c (bsock_sendmsg_internal): fix build error
from r50776
Fri Jun 5 07:05:58 2015 Eric Wong <[email protected]>
* io.c (sym_wait_readable, sym_wait_writable): declare
(io_getpartial): use sym_wait_readable
(io_write_nonblock): use sym_wait_writable
(Init_IO): initialize sym_wait_*able
Fri Jun 5 06:43:00 2015 Eric Wong <[email protected]>
* doc/extension.rdoc: note rb_get_kwargs changes keywords_hash
[ruby-core:68507]
Fri Jun 5 05:50:29 2015 Eric Wong <[email protected]>
* ext/socket/ancdata.c (bsock_sendmsg_internal): use rb_scan_args
[ruby-core:69439] [Feature #11207]
Fri Jun 5 02:20:06 2015 Koichi Sasada <[email protected]>
* test/lib/envutil.rb (assert_no_memory_leak): change default value
of limit from 1.5 to 2.0. It is ad-hoc fix to solve test failure
in travis-ci.
Fri Jun 5 01:17:21 2015 Koichi Sasada <[email protected]>
* vm_insnhelper.c (vm_defined): no need to use cast.
Fri Jun 5 01:14:02 2015 Koichi Sasada <[email protected]>
* vm_insnhelper.c (vm_defined): show additional messages on rb_bug().
Fri Jun 5 01:06:02 2015 Koichi Sasada <[email protected]>
* vm_method.c (rb_add_method_iseq): use intermediate struct to
avoid initializing struct with variables.
[Bug #11217]
* method.h: add a comment about it.
Fri Jun 5 00:55:21 2015 Koichi Sasada <[email protected]>
* method.h: constify rb_method_refined_t::orig_me.
Also constify the following functions.
* rb_resolve_refined_method()
* rb_method_entry_with_refinements()
* rb_method_entry_without_refinements()
* rb_method_entry_copy()'s parameter.
* class.c: catch up this fix.
* vm_insnhelper.c: ditto.
* vm_method.c: ditto.
Thu Jun 4 12:47:54 SGT 2015 SHIBATA Hiroshi <[email protected]>
* array.c: Revert r50763. because "reentered" is not typo.
Thu Jun 4 11:12:29 2015 SHIBATA Hiroshi <[email protected]>
* ext/win32ole/win32ole.c: fix a typo. Patch by @davydovanton
[fix GH-923]
* include/ruby/st.h: ditto.
* include/ruby/util.h: ditto.
Thu Jun 4 10:54:30 2015 SHIBATA Hiroshi <[email protected]>
* array.c: fix a typo. Patch by @manish-shrivastava
[fix GH-922]
Thu Jun 4 09:52:02 2015 Eric Wong <[email protected]>
* ext/openssl/lib/openssl/ssl.rb: use io/nonblock instead of fcntl
[ruby-core:69382] [Feature #11190]
Thu Jun 4 07:22:45 2015 Koichi Sasada <[email protected]>
* method.h: introduce rb_method_refined_t for refined method entry.
* class.c (move_refined_method): catch up this fix.
* gc.c (mark_method_entry): ditto.
* vm_eval.c (vm_call0_body): ditto.
* vm_insnhelper.c (vm_call_method): ditto.
* vm_method.c: ditto.
Thu Jun 4 07:12:20 2015 Nobuyoshi Nakada <[email protected]>
* dir.c (dirent_match): match short names only when FNM_SHORTNAME
flag is given, for the backward compatibility, and the new
behavior is often dangerous. [ruby-core:69435] [Bug #11206]
Thu Jun 4 05:44:01 2015 Eric Wong <[email protected]>
* variable.c (special_generic_ivar): remove flag
(givar_i, rb_mark_generic_ivar_tbl): remove functions
(rb_free_generic_ivar, rb_ivar_lookup, rb_ivar_delete,
generic_ivar_set, rb_ivar_set, rb_ivar_defined,
rb_copy_generic_ivar, rb_ivar_foreach, rb_ivar_count,
rb_obj_remove_instance_variable):
adjust for lack of ivar support in special constants
* test/ruby/test_variable.rb: test ivars for special consts
* internal.h: remove rb_mark_generic_ivar_tbl decl
* gc.c (gc_mark_roots): remove rb_mark_generic_ivar_tbl call
[ruby-core:69441] [Feature #11208]
Thu Jun 4 05:13:34 2015 Koichi Sasada <[email protected]>
* vm_insnhelper.c (def_iseq_ptr): `iseqval' is not available any more.
Thu Jun 4 04:50:12 2015 Koichi Sasada <[email protected]>
* class.c (method_entry_i): mtbl should not have `me' as NULL.
Thu Jun 4 04:28:45 2015 Koichi Sasada <[email protected]>
* class.c (clone_method): do not use me->klass, but use explicitly
passed argument.
Thu Jun 4 04:10:43 2015 Koichi Sasada <[email protected]>
* vm_core.h (rb_vm_rewrite_cref_stack): rename to rb_vm_rewrite_cref().
* class.c (clone_method): use renamed name.
* vm_insnhelper.c (rb_vm_rewrite_cref): do not use `node' in variable
names.
Wed Jun 3 23:03:50 2015 Koichi Sasada <[email protected]>
* vm_method.c: rename `rb_frame_...' to `rb_scope_...'.
* eval_intern.h: move decl. of rb_scope_visibility_set() to method.h.
* load.c: catch up this fix.
Wed Jun 3 21:14:20 2015 Tanaka Akira <[email protected]>
* ext/rbconfig/sizeof/extconf.rb: Check C99 standard integer types.
Wed Jun 3 21:00:47 2015 Tanaka Akira <[email protected]>
* configure.in: Don't check __int128.
* ext/rbconfig/sizeof/extconf.rb: Check __int128.
* ext/rbconfig/sizeof/depend: sizes.c depends on
ext/rbconfig/sizeof/extconf.rb.
* template/sizes.c.tmpl: Detect check_sizeof.
Wed Jun 3 20:07:07 2015 Koichi Sasada <[email protected]>
* class.c (clone_method): remove redundant check for me->def != NULL.
Now, all `me` have `me->def`.
* proc.c (rb_method_entry_location): ditto.
* vm.c (rb_vm_check_redefinition_opt_method): ditto.
* vm.c (add_opt_method): ditto.
* vm_eval.c (vm_call0_body): ditto.
Wed Jun 3 19:24:12 2015 Koichi Sasada <[email protected]>
* vm_core.h: rename enum missing_reason to enum method_missing_reason.
* vm_core.h: use enum method_missing_reason for
rb_thread_t::method_missing_reason.
* vm_eval.c: catch up this fix.
* vm_insnhelper.c: ditto.
Wed Jun 3 16:17:21 2015 Aaron Patterson <[email protected]>
* vm.c: eagerly allocate `loading_table`. This eliminates the need to
do NULL checks when looking up the `loading_table` hash.
https://github.com/ruby/ruby/pull/918
* load.c: remove various NULL checks
Wed Jun 3 11:47:15 2015 Koichi Sasada <[email protected]>
* method.h: change fields order to gather frequent access fields.
* vm_insnhelper.c (vm_call_method): add LIKELY().
Wed Jun 03 10:35:45 2015 Koichi Sasada <[email protected]>
* method.h: split rb_method_definition_t::flag to several flags.
`flag' contains several categories of attributes and it makes us
confusion (at least, I had confused).
* rb_method_visibility_t (flags::visi)
* NOEX_UNDEF -> METHOD_VISI_UNDEF = 0
* NOEX_PUBLIC -> METHOD_VISI_PUBLIC = 1
* NOEX_PRIVATE -> METHOD_VISI_PRIVATE = 2
* NOEX_PROTECTED -> METHOD_VISI_PROTECTED = 3
* NOEX_SAFE(flag) -> safe (flags::safe, 3 bits)
* NOEX_BASIC -> basic (flags::basic, 1 bit)