-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
12158 lines (7753 loc) · 406 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 Aug 29 02:40:45 2013 Aaron Patterson <[email protected]>
* ext/psych/lib/psych/scalar_scanner.rb: invalid floats should be
treated as strings.
[Fixes GH-156] https://github.com/tenderlove/psych/issues/156
* test/psych/test_string.rb: test for change
Wed Aug 28 17:20:07 2013 Nobuyoshi Nakada <[email protected]>
* thread_pthread.c (hpux_attr_getstackaddr): basic support for the
get_stack() under HP-UX. based on the patch by [email protected]
(Michal Rokos) at [ruby-core:56645]. [Feature #8793]
Wed Aug 28 11:24:20 2013 Michal Rokos <[email protected]>
* configure.in (sys/pstat.h): fix missing header check for
missing/setproctitle.c on HP-UX. [ruby-core:56644] [Bug #8792]
Wed Aug 28 04:54:33 2013 Eric Hodel <[email protected]>
* ext/openssl/ossl_ssl.c (ossl_ssl_read): Replace duplicate
wait_writable with wait_readable.
Tue Aug 27 17:18:40 2013 Nobuyoshi Nakada <[email protected]>
* lib/timeout.rb (Timeout#timeout): skip rescue clause only when no
exception class is given.
Tue Aug 27 17:02:58 2013 Nobuyoshi Nakada <[email protected]>
* io.c (copy_stream_body): should write in binary mode. based on a
patch by godfat (Lin Jen-Shin) at [ruby-core:56556].
[ruby-core:56518] [Bug #8767]
Tue Aug 27 17:02:33 2013 Nobuyoshi Nakada <[email protected]>
* io.c (copy_stream_body): move common open flags.
Tue Aug 27 16:56:50 2013 Nobuyoshi Nakada <[email protected]>
* enumerator.c (enumerator_size): use rb_check_funcall() instead of
respond_to? and call.
* enumerator.c (enumerator_each): ensure that argument array size
does not overflow at appending.
Tue Aug 27 16:46:05 2013 Nobuyoshi Nakada <[email protected]>
* array.c (rb_ary_index, rb_ary_rindex): use optimized equality to
improve performance. [Feature #8820]
* vm_insnhelper.c (rb_equal_opt): optimized equality function.
Tue Aug 27 16:11:05 2013 Nobuyoshi Nakada <[email protected]>
* vm_insnhelper.c (opt_eq_func): use RBASIC_CLASS() instead of HEAP_CLASS_OF().
* insns.def (opt_plus, opt_minus, opt_mult, opt_div, opt_mod, opt_lt),
(opt_gt, opt_ltlt, opt_aref, opt_aset, opt_length, opt_size),
(opt_empty_p, opt_succ): ditto.
Tue Aug 27 16:08:26 2013 Nobuyoshi Nakada <[email protected]>
* vm_eval.c (rb_check_funcall, rb_check_funcall_with_hook): constify
argv.
Tue Aug 27 13:03:33 2013 Koichi Sasada <[email protected]>
* ext/stringio/stringio.c (strio_read_nonblock): declare local
variables at the first of function.
Tue Aug 27 11:51:37 2013 Marc-Andre Lafortune <[email protected]>
* enumerator.c: Allow Enumerator size argument to be any callable.
Patch by Avdi Grimm. [bug #8641] [ruby-core:56032] [fix GH-362]
* test/ruby/test_enumerator.rb: Test for above
Tue Aug 27 11:46:31 2013 Koichi Sasada <[email protected]>
* gc.c (gc_profile_clear): do rest_sweep() before clearing
profile.current_record.
Tue Aug 27 07:35:05 2013 Aaron Patterson <[email protected]>
* io.c (io_read_nonblock): support non-blocking reads without raising
exceptions. As in: `io.read_nonblock(size, exception: false)`
[ruby-core:38666] [Feature #5138]
* ext/openssl/ossl_ssl.c (ossl_ssl_read_internal): ditto
* ext/stringio/stringio.c (strio_sysread): ditto
* io.c (rb_io_write_nonblock): support non-blocking writes without
raising an exception.
* ext/openssl/ossl_ssl.c (ossl_ssl_write_internal): ditto
* test/openssl/test_pair.rb (class OpenSSL): tests
* test/ruby/test_io.rb (class TestIO): ditto
* test/socket/test_nonblock.rb (class TestSocketNonblock): ditto
* test/stringio/test_stringio.rb (class TestStringIO): ditto
Tue Aug 27 05:24:34 2013 Eric Hodel <[email protected]>
* lib/rubygems: Import RubyGems 2.1.0 Release Candidate
* test/rubygems: ditto.
Mon Aug 26 16:24:58 2013 Nobuyoshi Nakada <[email protected]>
* parse.y (parser_nextc): warn carriage return in middle of line.
[ruby-core:56240] [Feature #8699]
Mon Aug 26 15:27:39 2013 Nobuyoshi Nakada <[email protected]>
* lib/timeout.rb (Timeout#timeout): should not be caught by rescue
clause. [Bug #8730]
Mon Aug 26 14:44:26 2013 Koichi Sasada <[email protected]>
* array.c (rb_ary_splice): use RARRAY_PTR_USE() without WB because
there are not new relations.
* enum.c (enum_sort_by): ditto.
* struct.c (setup_struct): use RARRAY_RAWPTR().
* vm_eval.c (yield_under): ditto.
* ext/pathname/pathname.c (path_entries): use RARRAY_AREF().
* ext/pathname/pathname.c (path_s_glob): ditto.
Mon Aug 26 13:11:10 2013 Kazuhiro NISHIYAMA <[email protected]>
* array.c (ary_ensure_room_for_push): fix typo in r42658.
Mon Aug 26 12:37:10 2013 Nobuyoshi Nakada <[email protected]>
* template/sizes.c.tmpl: generate automatically by extracting
RUBY_CHECK_SIZEOF from configure.in.
Mon Aug 26 10:16:59 2013 Kazuhiro NISHIYAMA <[email protected]>
* process.c (gcd_timetick_int): Renamed from gcd_timtick_int.
Sun Aug 25 21:02:15 2013 Tanaka Akira <[email protected]>
* sizes.c (Init_sizes): Define the size of clock_t.
Sun Aug 25 01:47:47 2013 Tanaka Akira <[email protected]>
* bignum.c (BARY_SHORT_MUL): Renamed from BARY_MUL1.
(bary_short_mul): Renamed from bary_mul1.
Sat Aug 24 10:35:09 2013 Tanaka Akira <[email protected]>
* process.c (rb_clock_gettime): The emulated clock names changed.
Fri Aug 23 22:22:07 2013 Tanaka Akira <[email protected]>
* process.c (rb_clock_gettime): Add a cast to fix compile error by
-Werror,-Wshorten-64-to-32.
Fri Aug 23 22:12:13 2013 Nobuyoshi Nakada <[email protected]>
* process.c (rb_intern): no symbol cache while initialization.
Fri Aug 23 22:07:45 2013 Nobuyoshi Nakada <[email protected]>
* configure.in (clock_t): needs time.h.
Fri Aug 23 21:37:28 2013 Tanaka Akira <[email protected]>
* process.c (reduce_factors): New function.
(timetick2dblnum): Use reduce_factors.
(timetick2integer): Ditto.
(make_clock_result): Follow the above change.
(rb_clock_gettime): Ditto.
Fri Aug 23 21:00:55 2013 Tanaka Akira <[email protected]>
* process.c (timetick_int_t): Renamed from timetick_giga_count_t.
(gcd_timtick_int): Renamed from gcd_ul and make the arguments
timetick_giga_count_t.
(reduce_fraction): Make the arguments timetick_int_t.
(timetick2integer): Ditto.
(make_clock_result): Ditto.
(timetick2dblnum): Fix the return type.
(rb_clock_gettime): Use timetick_int_t.
Fri Aug 23 20:50:40 2013 Tanaka Akira <[email protected]>
* process.c (gcd_ul): New function.
(reduce_fraction): Ditto.
(reduce_fraction): Ditto.
(timetick2dblnum): Ditto.
(timetick2integer): Ditto.
(make_clock_result): Use timetick2dblnum and timetick2integer.
(rb_clock_gettime): Follow the make_clock_result change.
Fri Aug 23 18:39:04 2013 Koichi Sasada <[email protected]>
* array.c (ary_make_shared): shared ary as shady. Need more effort to
make it normal object.
* array.c (rb_ary_modify): use RARRAY_PTR_USE() without WB because
there are not new relations.
* array.c (ary_ensure_room_for_unshift): use RARRAY_RAWPTR() because
there are not new relations.
Fri Aug 23 11:25:57 2013 Koichi Sasada <[email protected]>
* array.c: introduce ARY_SHARED_OCCUPIED(shared).
Fri Aug 23 11:07:08 2013 Nobuyoshi Nakada <[email protected]>
* win32/Makefile.sub (config.h): now SIZEOF_CLOCK_T is needed for
unsigned_clock_t.
Thu Aug 22 22:01:04 2013 Tanaka Akira <[email protected]>
* process.c (rb_clock_gettime): Strip "s" from unit names.
Thu Aug 22 20:14:59 2013 Tanaka Akira <[email protected]>
* process.c (unsigned_clock_t): Defined.
(rb_clock_gettime): Consider clock_t overflow for
ISO_C_CLOCK_BASED_CLOCK_PROCESS_CPUTIME_ID.
* configure.in: Check the size of clock_t.
Thu Aug 22 16:22:48 2013 Koichi Sasada <[email protected]>
* compile.c (build_postexe_iseq): fix to setup the local table.
Thu Aug 22 15:42:43 2013 Koichi Sasada <[email protected]>
* compile.c (rb_iseq_compile_node): accept NODE_IFUNC to support
custom compilation.
* compile.c (NODE_POSTEXE): compile to
"ONCE{ VMFrozenCore::core#set_postexe{...} }" with a new custom
compiler `build_postexe_iseq()'.
* vm.c (m_core_set_postexe): remove parameters (passed by a block).
Thu Aug 22 06:54:15 2013 Tanaka Akira <[email protected]>
* process.c (rb_clock_gettime): Change emulation symbols for
Process.clock_gettime.
Thu Aug 22 06:24:54 2013 Tanaka Akira <[email protected]>
* process.c (make_clock_result): Extracted from rb_clock_gettime.
Wed Aug 21 22:30:51 2013 Tanaka Akira <[email protected]>
* process.c (rb_clock_gettime): clock() based CLOCK_PROCESS_CPUTIME_ID
emulation implemented.
Wed Aug 21 21:02:37 2013 Tanaka Akira <[email protected]>
* process.c (rb_proc_times): Use RB_GC_GUARD to guard objects from GC.
Wed Aug 21 20:33:01 2013 Tanaka Akira <[email protected]>
* process.c (get_clk_tck): Extracted from rb_proc_times.
(rb_clock_gettime): times() based CLOCK_PROCESS_CPUTIME_ID emulation
is implemented.
Wed Aug 21 19:31:48 2013 Tanaka Akira <[email protected]>
* process.c: POSIX_GETTIMEOFDAY_CLOCK_REALTIME is renamed to
SUS_GETTIMEOFDAY_CLOCK_REALTIME.
Wed Aug 21 19:17:46 2013 Tanaka Akira <[email protected]>
* process.c (rb_clock_gettime): CLOCK_PROCESS_CPUTIME_ID emulation
using getrusage is implemented.
Wed Aug 21 17:34:27 2013 Tanaka Akira <[email protected]>
* gc.c (getrusage_time): Fallback clock_gettime to getrusage when
clock_gettime fails.
Reported by Eric Saxby. [ruby-core:56762] [Bug #8805]
Wed Aug 21 02:32:32 2013 Koichi Sasada <[email protected]>
* insns.def: fix regexp's once option behavior.
fix [ruby-trunk - Bug #6701]
* insns.def: remove `onceinlinecache' and introduce `once' instruction.
`once' doesn't use `setinlinecache' insn any more.
* vm_core.h: `union iseq_inline_storage_entry' to store once data.
* compile.c: catch up above changes.
* iseq.c: ditto.
* vm.c, vm_insnhelper.c: ditto. fix `m_core_set_postexe()' which
is depend on `onceinlinecache' insn.
* test/ruby/test_regexp.rb: add tests.
* iseq.c: ISEQ_MINOR_VERSION to 1 (should increment major?)
Wed Aug 21 02:30:15 2013 Koichi Sasada <[email protected]>
* gc.c (rb_gcdebug_print_obj_condition): add printing information.
Tue Aug 20 13:38:00 2013 Naohisa Goto <[email protected]>
* test/gdbm/test_gdbm.rb: skip TestGDBM#test_s_open_lock on Solaris.
On Solaris (and platforms which do not have flock and have lockf),
with GDBM 1.10, gdbm_open(3) blocks when opening already locked
gdbm file. [Bug #8790] [ruby-dev:47631]
Tue Aug 20 02:32:52 2013 Zachary Scott <[email protected]>
* lib/test/: [DOC] Document Test::Unit, hide most submodules and
classes from rdoc. Since lib/test is only present as a compatibility
layer with the legacy test suite many test/unit users will be using
minitest or the test/unit gem instead. It is recommended to use one
of these alternatives for writing new tests.
This patch was based on a patch submitted by Steve Klabnik.
[ruby-core:56694] [Bug #8778]
Tue Aug 20 02:10:19 2013 Zachary Scott <[email protected]>
* lib/rss/rss.rb: [DOC] Document for constants by Steve Klabnik
[ruby-core:56705] [Bug #8798]
Tue Aug 20 02:01:10 2013 Zachary Scott <[email protected]>
* lib/rss/xmlparser.rb: [DOC] Hide legacy constant from rdoc
Patch by Steve Klabnik [ruby-core:56708] [Bug #8799]
Tue Aug 20 01:52:05 2013 Zachary Scott <[email protected]>
* ext/socket/unixserver.c: [DOC] Document #accept
* ext/socket/tcpserver.c: ditto
* ext/socket/udpsocket.c: [DOC] Fix indentation of documentation
* ext/socket/socket.c: ditto
Patches by David Rodr'iguez [ruby-core:56734] [Bug #8802]
Tue Aug 20 01:19:22 2013 Tanaka Akira <[email protected]>
* configure.in: Define ac_cv_func_clock_gettime to yes for mingw*.
Mon Aug 19 21:31:35 2013 Tanaka Akira <[email protected]>
* include/ruby/defines.h: Fix a compilation error with
i586-mingw32msvc-gcc of gcc-mingw32 package on Debian squeeze.
ruby/missing.h should be included before include/ruby/win32.h
because struct timespec, used in the clock_gettime declaration in
include/ruby/win32.h, is defined in ruby/missing.h instead of
system headers.
Mon Aug 19 20:55:12 2013 Koichi Sasada <[email protected]>
* gc.c: fix around GC_DEBUG.
* gc.c (RVALUE::line): should be VALUE. On some environment
(such as mswin64), `int' introduces alignment mismatch.
* gc.c (newobj_of): add an assertion to check VALUE alignment.
* gc.c (aligned_malloc): `&' is low priority than `=='.
* gc.c: define GC_DEBUG everytime and use it as value 0 or 1.
Mon Aug 19 17:43:44 2013 Koichi Sasada <[email protected]>
* test/ruby/test_fiber.rb: collect garbage fibers immediately.
Mon Aug 19 17:41:49 2013 Koichi Sasada <[email protected]>
* test/profile_test_all.rb: add `failed?' information.
Mon Aug 19 17:00:53 2013 Nobuyoshi Nakada <[email protected]>
* process.c (retry_fork): retry with GC if ENOMEM occurred, to free
swap/kernel space.
Mon Aug 19 13:28:47 2013 NAKAMURA Usaku <[email protected]>
* include/ruby/win32.h (CLOCK_MONOTONIC): typo.
* win32/win32.c: removed duplicated declarations.
Mon Aug 19 13:03:08 2013 Nobuyoshi Nakada <[email protected]>
* configure.in (clock_gettime): should not overwrite cache variable
with different condition. otherwise -lrt is not linked and the link
fails, after reconfig.
Mon Aug 19 12:56:49 2013 Tanaka Akira <[email protected]>
* process.c (Init_process): Add constants: CLOCK_REALTIME_ALARM and
CLOCK_BOOTTIME_ALARM.
Sun Aug 18 20:17:41 2013 Kazuki Tsujimoto <[email protected]>
* variable.c, vm_method.c: remove dead code.
* test/ruby/test_fiber.rb, test/ruby/test_thread.rb:
change accordingly.
Sun Aug 18 19:32:26 2013 Kazuki Tsujimoto <[email protected]>
* error.c, file.c, gc.c, hash.c, thread.c, variable.c, vm_eval.c, bin/erb:
$SAFE=4 is obsolete.
Sun Aug 18 14:30:47 2013 Tanaka Akira <[email protected]>
* process.c (rb_clock_gettime): Rename POSIX_TIME_CLOCK_REALTIME to
ISO_C_TIME_CLOCK_REALTIME.
Sun Aug 18 14:22:45 2013 Tanaka Akira <[email protected]>
* configure.in: Revert r42604. It causes linking librt on systems
with newer glibc uselessly.
Sun Aug 18 13:18:38 2013 Tanaka Akira <[email protected]>
* process.c (Init_process): Add constants: CLOCK_REALTIME_COARSE,
CLOCK_MONOTONIC_COARSE and CLOCK_BOOTTIME.
Sun Aug 18 12:41:50 2013 Nobuyoshi Nakada <[email protected]>
* configure.in (clock_gettime): need to check with -lrt prior to check
for the function only. otherwise -lrt is not linked and the link
fails, when ac_cv_func_clock_gettime is cached as yes.
Sun Aug 18 10:05:12 2013 Tanaka Akira <[email protected]>
* bignum.c (rb_big2str1): Make an expression more explicit.
Sun Aug 18 03:18:45 2013 Tanaka Akira <[email protected]>
* bignum.c (rb_big2str1): Use power_level instead of bitsize(xn).
Sun Aug 18 00:44:58 2013 Tanaka Akira <[email protected]>
* bignum.c (BIGDIVREM_EXTRA_WORDS): Redefine to 1.
(bigdivrem_num_extra_words): Removed.
(bigdivrem_normal): Simplified.
(big2str_karatsuba): Ditto.
Sat Aug 17 23:25:19 2013 Benoit Daloze <[email protected]>
* test/ruby/test_time.rb: use the in_timezone() helper
and define it at the top with other helpers.
Sat Aug 17 22:20:47 2013 Nobuyoshi Nakada <[email protected]>
* time.c (time_mload): ignore auxiliary data, offset and zone, if
invalid. [ruby-core:56648] [Bug #8795]
Sat Aug 17 20:11:49 2013 Benoit Daloze <[email protected]>
* process.c: [DOC] MACH_ABSOLUTE_TIME_CLOCK_MONOTONIC is an
available emulation for a monotonic clock on Darwin.
https://developer.apple.com/library/mac/qa/qa1398/_index.html
Fri Aug 16 18:12:05 2013 Koichi Sasada <[email protected]>
* test/profile_test_all.rb: fix typo.
Fri Aug 16 18:09:20 2013 Koichi Sasada <[email protected]>
* test/profile_test_all.rb: remove space characters from test names.
Fri Aug 16 17:32:02 2013 Koichi Sasada <[email protected]>
* test/profile_test_all.rb: refactoring memory profiling tool for
test-all.
Add profiling targets /proc/meminfo and /proc/self/status.
* test/runner.rb: accept other than 'true'.
Fri Aug 16 11:23:35 2013 NAKAMURA Usaku <[email protected]>
* file.c (rb_file_size, rb_file_flock): improve performance of Windows.
* file.c (rb_file_truncate): removed unnecessary #ifdef.
* test/test_file.rb (TestFile#test_truncate_size): added an assertion
for File#size.
Fri Aug 16 10:07:59 2013 Tanaka Akira <[email protected]>
* bignum.c (bigdivrem_single1): Renamed from bigdivrem_single. Add
x_higher_bdigit argument.
(bigdivrem_single): Just call bigdivrem_single1.
(bigdivrem_restoring): Use bigdivrem_single1 to avoid memmove.
Fri Aug 16 09:17:00 2013 Tanaka Akira <[email protected]>
* bignum.c (bary_small_rshift): Specify the higher BDIGIT instead of
sign bit.
(big_shift3): Follow the above change.
Fri Aug 16 02:20:39 2013 Tanaka Akira <[email protected]>
* bignum.c (bary_mul_toom3): Reduce a branch.
Fri Aug 16 02:14:09 2013 NARUSE, Yui <[email protected]>
* process.c (rb_clock_gettime): add CLOCK_MONOTONIC support on OS X.
http://developer.apple.com/library/mac/qa/qa1398/_index.html
[Feature #8658]
Fri Aug 16 01:37:43 2013 Tanaka Akira <[email protected]>
* bignum.c (bigdivrem_single): Use shift when y is a power of two.
Fri Aug 16 01:09:33 2013 Tanaka Akira <[email protected]>
* bignum.c (bigdivrem_restoring): Use bigdivrem_single if non-topmost
BDIGITs of y are zero.
Fri Aug 16 00:33:12 2013 Tanaka Akira <[email protected]>
* bignum.c (rb_big2str1): Truncate topmost zeros of x.
Fri Aug 16 00:00:57 2013 Tanaka Akira <[email protected]>
* bignum.c (bary_divmod): Simplify an expression.
Thu Aug 15 23:26:12 2013 Tanaka Akira <[email protected]>
* bignum.c (bigdivrem_normal): Remove a local variable.
Thu Aug 15 23:08:32 2013 Tanaka Akira <[email protected]>
* bignum.c (big2str_karatsuba): Use bigdivrem_restoring directly to
reduce working buffer and memory copy.
(rb_big2str1): Allocate working buffer for big2str_karatsuba here.
Thu Aug 15 20:51:29 2013 NAKAMURA Usaku <[email protected]>
* io.c, internal.h (rb_io_flush_raw): new function to select calling
fsync() (on Windows).
* io.c (rb_io_flush_raw): use above function.
* file.c (rb_file_truncate): use above function.
* test/ruby/test_file.rb (TestFile#test_truncate_size): test for
above changes.
Thu Aug 15 18:39:31 2013 NAKAMURA Usaku <[email protected]>
* win32/win32.c (clock_gettime): improve precision when freq is less
than and nearly equals 10**9.
Thu Aug 15 17:43:15 2013 Koichi Sasada <[email protected]>
* gc.c (gc_lazy_sweep): remove heap_increment() here because heap_inc
may be 0.
Thu Aug 15 16:59:56 2013 NAKAMURA Usaku <[email protected]>
* io.c (rb_io_rewind): remove fsync() for Windows to improve the
performance.
Thu Aug 15 16:30:23 2013 NAKAMURA Usaku <[email protected]>
* test/fileutils/test_fileutils.rb (TestFileUtils#test_rmdir):
FileUtils.rmdir ignores Errno::ENOTEMPTY, so, in such cases, this
assertion is nonsense.
Thu Aug 15 15:49:35 2013 Tanaka Akira <[email protected]>
* process.c (rb_clock_gettime): [DOC] FreeBSD 7.1 supports
CLOCK_THREAD_CPUTIME_ID.
http://www.freebsd.org/releases/7.1R/relnotes.html
Thu Aug 15 14:30:23 2013 NAKAMURA Usaku <[email protected]>
* include/ruby/win32.h, win32/Makefile.sub, win32/win32.c
(clock_gettime): [experimental] emulates clock_gettime(2) of posix.
Thu Aug 15 02:32:40 2013 Zachary Scott <[email protected]>
* hash.c (rb_hash_aset): [DOC] Document key dup patch by @kachick
[Fixes GH-382] https://github.com/ruby/ruby/pull/382
Wed Aug 14 14:28:39 2013 NAKAMURA Usaku <[email protected]>
* proc.c (rb_mod_define_method): now they return the symbols of the
defined methods, not the methods/procs themselves.
[ruby-dev:42151] [Feature #3753]
* NEWS: documents about above change and def-expr (see r42337).
* test/ruby/test_module.rb: tests about above change.
Wed Aug 14 00:51:14 2013 Tanaka Akira <[email protected]>
* bignum.c (bigdivrem_restoring): xn argument removed.
(bigdivrem_normal): Follow the above change.
Wed Aug 14 00:18:39 2013 Tanaka Akira <[email protected]>
* bignum.c (big_div_struct): Remove xn and j field. Add zn field.
(bigdivrem1): Follow the above change.
(bigdivrem_restoring): Ditto.
Tue Aug 13 23:38:17 2013 Tanaka Akira <[email protected]>
* bignum.c (big_div_struct): ynzero field removed.
(bigdivrem1): Follow the above change.
(bigdivrem_restoring): Ditto.
Tue Aug 13 23:01:16 2013 Tanaka Akira <[email protected]>
* bignum.c (bigdivrem_restoring): Extracted from bigdivrem_normal.
Tue Aug 13 22:12:59 2013 Kenichi Kamiya <[email protected]>
* random.c (rb_random_ulong_limited): coerce before check negative.
[Fixes GH-379]
Tue Aug 13 21:52:15 2013 Kenichi Kamiya <[email protected]>
* object.c (Init_Object): undef Module#prepend_features on Class, as
well as Module#append_features. [Fixes GH-376]
* test_class.rb: Added test for above. And ensure type checking
on similar methods as module_function.
Tue Aug 13 08:52:18 2013 Zachary Scott <[email protected]>
* doc/syntax/literals.rdoc: [DOC] String literal concat by @cknadler
[Fixes GH-380] https://github.com/ruby/ruby/pull/380
Mon Aug 12 23:07:21 2013 Masaya Tarui <[email protected]>
* gc.c (gc_marks_test): inhibit gc for st's operation.
Mon Aug 12 15:59:50 2013 Nobuyoshi Nakada <[email protected]>
* parse.y (parser_whole_match_p): treat CR in middle of a line as a
mere whitespace.
Mon Aug 12 15:16:58 2013 Koichi Sasada <[email protected]>
* class.c (rb_prepend_module): make T_ICLASS object shady because
this T_ICLASS object seems to share method table with other class
objects. It was causes WB miss.
TODO: need to know the data structure.
* test/ruby/test_module.rb: add a test for WB miss.
Mon Aug 12 13:47:54 2013 Zachary Scott <[email protected]>
* process.c: [DOC] RDoc formatting of Process.clock_gettime
Mon Aug 12 13:29:09 2013 Zachary Scott <[email protected]>
* lib/yaml/dbm.rb: [DOC] Document call-seq for YAML::DBM
Mon Aug 12 12:57:26 2013 Zachary Scott <[email protected]>
* ext/dbm/extconf.rb: [DOC] Hide from RDoc
Some libraries might want to document extconf.rb so RDoc treats it
like any other ruby program. However, DBM users shouldn't care about
these methods.
Mon Aug 12 12:53:39 2013 Zachary Scott <[email protected]>
* ext/dbm/dbm.c: [DOC] Reformat headings of DBM class
Mon Aug 12 12:46:31 2013 Zachary Scott <[email protected]>
* lib/yaml.rb, lib/yaml/: [DOC] Document YAML::DBM#key and add
references to similar methods with more detail. This patch brings
lib/yaml to 100% documentation coverage.
Mon Aug 12 02:51:32 2013 NARUSE, Yui <[email protected]>
* ext/readline/readline.c (readline_s_set_input): on OS X with editline,
Readline.readline doesn't work because readline_get doesn't use
rl_getc. The difference is introduced by r42402 [ruby-dev:47509]
[Bug #8644]. Before it rb_io_stdio_file set ifp->stdio_file.
Therefore add manually setting the value.
* ext/readline/readline.c (readline_s_set_output): ditto.
Sun Aug 11 23:27:00 2013 Nobuyoshi Nakada <[email protected]>
* file.c (rb_str_encode_ospath): OS path encoding on Mac OS X is also
fixed.
Sun Aug 11 22:57:24 2013 Nobuyoshi Nakada <[email protected]>
* test/ruby/test_require.rb (assert_require_nonascii_path): OS path
encoding on Windows is fixed, so encoding of __FILE__ should be it.
[ruby-core:56498] [Bug #8764]
Sun Aug 11 19:11:45 2013 Kouhei Sutou <[email protected]>
* test/rexml/parser/test_sax2.rb: Expand abbreviated class name.
Sun Aug 11 19:06:03 2013 Kouhei Sutou <[email protected]>
* lib/rexml/sax2listener.rb (REXML::SAX2Listener#notationdecl): Fix
wrong number of arguments in the template listener.
[Bug #8731] [ruby-dev:47582]
Reported by Ippei Obayashi.
* test/rexml/parser/test_sax2.rb: Add tests for parsing notation
declarations with SAX2 API.
Sun Aug 11 18:44:04 2013 Kouhei Sutou <[email protected]>
* lib/rexml/sax2listener.rb (REXML::SAX2Listener#elementdecl): Fix wrong
examples. [Bug #8731] [ruby-dev:47582]
Reported by Ippei Obayashi.
Sun Aug 11 18:42:13 2013 Kouhei Sutou <[email protected]>
* lib/rexml/parsers/sax2parser.rb
(REXML::Parsers::SAX2Parser#handle_entitydecl): Extract.
Sun Aug 11 18:40:25 2013 Kouhei Sutou <[email protected]>
* lib/rexml/parsers/sax2parser.rb (REXML::Parsers::SAX2Parser#parse):
Fix wrong "%" position in parameter entity declaration event argument.
* test/rexml/parser/test_sax2.rb: Add tests for the above case.
Sun Aug 11 18:08:40 2013 Kouhei Sutou <[email protected]>
* lib/rexml/parsers/sax2parser.rb (REXML::Parsers::SAX2Parser#parse):
Support NDATA in external ID entity declaration.
* test/rexml/parser/test_sax2.rb: Add tests for the above case.
Sun Aug 11 18:07:39 2013 Kouhei Sutou <[email protected]>
* lib/rexml/parsers/baseparser.rb
(REXML::Parsers::BaseParser#pull_event): Support optional NDATA
in external ID entity declaration.
Sun Aug 11 17:54:07 2013 Kouhei Sutou <[email protected]>
* NEWS (REXML::Parsers::SAX2Parser): Add about this change.
* lib/rexml/parsers/sax2parser.rb (REXML::Parsers::SAX2Parser#parse):
Fix wrong number of arguments. Document says "an array of the
entity declaration" but it passes two or more arguments.
This is a bug but it break backward compatibility.
Reported by Ippei Obayashi. [Bug #8731] [ruby-dev:47582]
* lib/rexml/sax2listener.rb (REXML::SAX2Listener#entitydecl): ditto.
The listener template accepted two arguments.
* test/rexml/parser/test_sax2.rb: Add tests for external ID case.
Sun Aug 11 17:41:41 2013 Kouhei Sutou <[email protected]>
* test/rexml/parser/test_sax2.rb: Add SAX2 API test.
Sun Aug 11 15:10:40 2013 Nobuyoshi Nakada <[email protected]>
* parse.y (rb_enc_symname_type): allow ID_ATTRSET for ID_INSTANCE,
ID_GLOBAL, ID_CLASS, ID_JUNK too. [Bug #8756]
Sun Aug 11 13:17:00 2013 Charlie Somerville <[email protected]>
* include/ruby/encoding.h: Reduce ENCODING_INLINE_MAX to 127 as this
should be sufficient to represent all the encodings Ruby supports.
Sun Aug 11 11:54:38 2013 Tanaka Akira <[email protected]>
* process.c (rb_clock_gettime): New method.
This is accepted in the meeting:
https://bugs.ruby-lang.org/projects/ruby/wiki/DevelopersMeeting20130809
This method is accepted as a CRuby feature.
I.e. Other Ruby implementations don't need to implement it.
[ruby-core:56087] [Feature #8658]
Sun Aug 11 10:40:48 2013 Zachary Scott <[email protected]>
* lib/time.rb: [DOC] Correcting rdoc visibility of time.rb constants
Reported by Tanaka Akira [ruby-core:56517]
Sun Aug 11 04:48:14 2013 NARUSE, Yui <[email protected]>
* file.c (rb_str_normalize_ospath):
HFS Plus (Mac OS Extended) uses a variant of Normal Form D in which
U+2000 through U+2FFF, U+F900 through U+FAFF, and U+2F800 through
U+2FAFF are not decomposed (this avoids problems with round trip
conversions from old Mac text encodings).
http://developer.apple.com/library/mac/qa/qa1173/_index.html
Therefore fix r42457 to exclude the range.
Sun Aug 11 03:26:07 2013 Tanaka Akira <[email protected]>
* bignum.c (bitsize): Fix a conditional expression.
Sun Aug 11 02:44:03 2013 Zachary Scott <[email protected]>
* lib/time.rb: [DOC] Document constants by @markijbema [Fixes GH-377]
https://github.com/ruby/ruby/pull/377
Sun Aug 11 01:28:52 2013 Tanaka Akira <[email protected]>
* configure.in: Revert r42458.
It removes the HAVE_CLOCK_GETTIME from config.h.
http://www.rubyist.net/~akr/chkbuild/debian/ruby-trunk/log/20130809T044800Z.diff.html.gz
Sat Aug 10 13:53:22 2013 Nobuyoshi Nakada <[email protected]>
* parse.y (rb_id_attrset): allow other than ID_ATTRSET.
* parse.y (intern_str): ditto. try stem ID for ID_INSTANCE,
ID_GLOBAL, ID_CLASS, ID_JUNK too. [Bug #8756]
Sat Aug 10 12:49:50 2013 Kouhei Sutou <[email protected]>
* lib/rexml/parsers/baseparser.rb
(REXML::Parsers::BaseParser::CDATA_END): Use "\A" instead of "^".
It is not an used constant but I fix it. (Or should I remove it?)
Sat Aug 10 12:47:19 2013 Kouhei Sutou <[email protected]>
* lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser):
Fix wrong constant name. "]>" pattern match is the same but
it is used for "<!DOCTYPE" end mark not "<![CDATA[" end mark.
Sat Aug 10 12:43:15 2013 Kouhei Sutou <[email protected]>
* lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser):
Use "\A" instead of "^" in document type declaration patterns
because they are used as the head match in content not the head
match in line. They don't cause any problems in the current code
but it should be fixed.
Sat Aug 10 12:39:00 2013 Kouhei Sutou <[email protected]>
* test/rexml/parse/test_document_type_declaration.rb: Add tests for
parsing document type declaration.
Sat Aug 10 12:00:45 2013 Kouhei Sutou <[email protected]>
* lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser::SYSTEM):
Fix loose "head" match regular expression. It doesn't cause any
problem in the current code but it should be fixed because readers
may confuse it.
Patch by Ippei Obayashi. Thanks!!!
Sat Aug 10 11:58:24 2013 Kouhei Sutou <[email protected]>
* test/rexml/parse/test_notation_declaration.rb (#test_system_public):
Add a test for PUBLIC notation and SYSTEM notation order case.
Sat Aug 10 11:31:35 2013 Kouhei Sutou <[email protected]>
* lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser::PUBLIC):
Fix loose "head" match regular expression.
[Bug #8701] [ruby-dev:47551]
Patch by Ippei Obayashi. Thanks!!!
* test/rexml/parse/test_notation_declaration.rb (#test_system_public):
Add a test for the above case.
Sat Aug 10 09:20:21 2013 Zachary Scott <[email protected]>
* NEWS: [DOC] typo in example reported by @moretea
https://github.com/ruby/ruby/commit/a39e724#commitcomment-3831489
Sat Aug 10 09:19:04 2013 Zachary Scott <[email protected]>
* proc.c: [DOC] rdoc code formatting
Sat Aug 10 09:12:01 2013 Nobuyoshi Nakada <[email protected]>
* parse.y (rb_id_attrset): check if the argument is valid type as an
attribute.
Sat Aug 10 05:44:08 2013 Zachary Scott <[email protected]>
* lib/rss/trackback.rb: [DOC] Hide RSS::Trackback from rdoc
Patch by Steve Klabnik [Bug #8755] [ruby-core:56456]
Sat Aug 10 04:52:21 2013 Tanaka Akira <[email protected]>
* bignum.c (big_div_struct): Use size_t.
(bigdivrem1): Ditto.
(bigdivrem_num_extra_words): Ditto.
(bigdivrem_single): Ditto.
(bigdivrem_normal): Ditto.
(bary_divmod): Ditto.
Fri Aug 9 23:47:15 2013 Kouhei Sutou <[email protected]>
* lib/rss/rexmlparser.rb: Remove needless REXML version check.
Both RSS Parser and REXML are bundled in Ruby. RSS Parser can
always use the latest REXML. [Bug #8754] [ruby-core:56454]
Patch by Steve Klabnik. Thanks!!!
Fri Aug 9 22:51:10 2013 Nobuyoshi Nakada <[email protected]>
* configure.in (XLDFLAGS, LIBRUBYARG_STATIC): CoreFoundation framework
option is now needed always, regardless enable-shared.
[ruby-core:56467] [Bug #8759]
Fri Aug 9 22:20:51 2013 Nobuyoshi Nakada <[email protected]>
* ruby.c (load_file_internal): use rb_parser_compile_string_path and
rb_parser_compile_file_path, String path name versions. [Bug #8753]
Fri Aug 9 07:16:00 2013 Charlie Somerville <[email protected]>
* ext/io/console/console.c: delete redefinition of rb_cloexec_open.
drop support for 1.8 and 1.9 from the next release of io-console gem.
Fri Aug 9 19:13:54 2013 Koichi Sasada <[email protected]>
* NEWS: update about new methods for Binding.
Fri Aug 9 18:48:09 2013 Koichi Sasada <[email protected]>
* proc.c: add Binding#local_variable_get/set/defined?
to access local variables which a binding contains.
Most part of implementation by nobu.
* test/ruby/test_proc.rb: add a tests for above.
* vm.c, vm_core.h (rb_binding_add_dynavars): add a new function
to add a new environment to create space for new local variables.
Fri Aug 9 14:02:01 2013 SHIBATA Hiroshi <[email protected]>
* tool/make-snapshot: Fix order of priority for option parameter.
Fri Aug 9 12:06:49 2013 Nobuyoshi Nakada <[email protected]>
* file.c (rb_str_normalize_ospath): normalize to Normalization Form C
using CFString.
Fri Aug 9 10:53:57 2013 Kazuki Tsujimoto <[email protected]>
* time.c (get_timeval, get_new_timeval): use rb_obj_class()
instead of CLASS_OF() because CLASS_OF() may return
a singleton class.
Fri Aug 9 10:42:11 2013 Kazuki Tsujimoto <[email protected]>
* vm_insnhelper.c (vm_invoke_block): returning from lambda proc
now always exits from the Proc. [ruby-core:56193] [Feature #8693]
* NEWS, test/ruby/test_lambda.rb: ditto. Patch by nobu.
Fri Aug 9 00:10:32 2013 Nobuyoshi Nakada <[email protected]>
* enumerator.c (lazy_zip_func): fix non-single argument. fix
out-of-bound access and pack multiple yielded values.
[ruby-core:56383] [Bug #8735]
Thu Aug 8 23:01:20 2013 Nobuyoshi Nakada <[email protected]>
* object.c (rb_mod_singleton_p): new method Module#singleton_class? to
return whether the receiver is a singleton class or not.
[ruby-core:51087] [Feature #7609]
Thu Aug 8 21:56:44 2013 Tanaka Akira <[email protected]>
* time.c (time_overflow_p): Avoid signed integer overflow.
(rb_time_new): Fix overflow condition.
Thu Aug 8 19:58:02 2013 Koichi Sasada <[email protected]>
* thread.c (rb_threadptr_pending_interrupt_check_mask):
use RARRAY_RAWPTR() instead of RARRAY_PTR() because
there is no new reference.
Thu Aug 8 19:56:52 2013 Koichi Sasada <[email protected]>
* string.c (rb_str_format_m): use RARRAY_RAWPTR() instead of
RARRAY_PTR() because there is no new reference.
Thu Aug 8 19:55:51 2013 Koichi Sasada <[email protected]>
* include/ruby/ruby.h: define USE_RGENGC_LOGGING_WB_UNPROTECT.
Thu Aug 8 16:44:25 2013 Koichi Sasada <[email protected]>
* include/ruby/ruby.h: add old macro name `RUBY_EVENT_SWITCH'.
This macro name is obsolete because it is renamed to
RUBY_INTERNAL_EVENT_SWITCH, but it has compatibility problem
using this macro name like ruby-prof.
I want to remove this macro after ruby 2.1.
Thu Aug 8 15:37:53 2013 NAKAMURA Usaku <[email protected]>
* test/coverage/test_coverage.rb (TestCoverage#test_big_code): use `1'
instead of `p' to get rid of a side effect.
Kernel#p without any argument seems to do nothing, but flushes stdout.
and, if stdout is redirected to file, fsync() will be called on
Windows. so, when running test-all on Windows with redirection, such
as CI environment, this test took a lot of time.