-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
13520 lines (8594 loc) · 451 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
Mon Sep 30 23:14:36 2013 Zachary Scott <e@zzak.io>
* ext/objspace/objspace.c: [DOC] Cleaned up many rdoc formatting
issues and several duplicate grammar bugs.
Mon Sep 30 23:01:01 2013 Zachary Scott <e@zzak.io>
* ext/objspace/object_tracing.c: [DOC] Adjust rdoc formatting and fix
small grammar typo
Mon Sep 30 17:28:39 2013 Koichi Sasada <ko1@atdot.net>
* ext/objspace/object_tracing.c: [DOC] add some notes for
ObjectSpace::trace_object_allocations.
Mon Sep 30 16:46:58 2013 Koichi Sasada <ko1@atdot.net>
* ext/objspace/object_tracing.c: add new 3 methods to control tracing.
* ObjectSpace::trace_object_allocations_start
* ObjectSpace::trace_object_allocations_stop
* ObjectSpace::trace_object_allocations_clear
And some refactoring.
* test/objspace/test_objspace.rb: add a test for new methods.
* NEWS: add a description for new methods.
Mon Sep 30 11:18:04 2013 Koichi Sasada <ko1@atdot.net>
* gc.c (rb_gc_disable): do rest_sweep() before disable GC.
This fix may solve a failure of
TestTracepointObj#test_tracks_objspace_events
[test/-ext-/tracepoint/test_tracepoint.rb:43].
Mon Sep 30 10:40:20 2013 Shugo Maeda <shugo@ruby-lang.org>
* vm_method.c (rb_undef): raise a NameError if the original method
of a refined method is not defined.
* vm_insnhelper.c (rb_method_entry_eq): added NULL check to avoid SEGV.
* test/ruby/test_refinement.rb: related test.
Sun Sep 29 23:45:42 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (rb_id_attrset, intern_str): allow junk attrset ID for
Struct.
* parse.y (rb_id_attrset): fix inconsistency with literals, allow
ID_ATTRSET and return it itself, but ID_JUNK cannot make ID_ATTRSET.
and raise a NameError instead of rb_bug() for invalid argument.
Sun Sep 29 18:45:05 2013 Kazuki Tsujimoto <kazuki@callcc.net>
* vm_insnhelper.c (vm_callee_setup_arg_complex, vm_yield_setup_block_args):
clear keyword arguments to prevent GC bug which occurs
while marking VM stack.
[ruby-dev:47729] [Bug #8964]
* test/ruby/test_keyword.rb: tests for the above.
Sat Sep 28 23:25:56 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* math.c (math_log, math_log2, math_log10): fix for Bignum argument.
numbits should be add only when right shifted.
Sat Sep 28 14:30:29 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
* test/dl/test_base.rb: {libc, libm} detection now handle GNU/Hurd
correctly. Patch by Gabriele Giacone (1o5g4r8o@gmail.com).
[Bug #8937][ruby-core:57311]
* test/fiddle/helper.rb: ditto.
Sat Sep 28 00:19:41 2013 Shugo Maeda <shugo@ruby-lang.org>
* ext/curses/extconf.rb: check the size of chtype.
* ext/curses/curses.c (NUM2CH, CH2NUM): use proper macros for
the size of chtype.
[ruby-core:56090] [Bug #8659]
Fri Sep 27 18:33:23 2013 Koichi Sasada <ko1@atdot.net>
* gc.c: add two GC tuning environment variables.
RUBY_GC_MALLOC_LIMIT_MAX and RUBY_GC_MALLOC_LIMIT_GROWTH_FACTOR.
See r43067 for details.
* gc.c (rb_gc_set_params): refactoring. And change verbose notation.
Mostly duplicated functions get_envparam_int/double is not cool.
Please rewrite it.
* test/ruby/test_gc.rb: fix a test for this change.
Fri Sep 27 17:44:41 2013 Koichi Sasada <ko1@atdot.net>
* gc.c (GC_MALLOC_LIMIT): 8,000,000 -> 8 * 1,024 * 1,024.
Fri Sep 27 17:19:39 2013 Koichi Sasada <ko1@atdot.net>
* gc.c (gc_before_sweep): cast to size_t to suppress warnings.
Fri Sep 27 17:07:55 2013 Koichi Sasada <ko1@atdot.net>
* gc.c: add some fine-grained profiling codes to tuning marking phase.
If you enable RGENGC_PRINT_TICK to 1, then profiling results by RDTSC
(on x86/amd64 environment) are printed at last.
Thanks Yoshii-san.
Fri Sep 27 16:32:27 2013 Koichi Sasada <ko1@atdot.net>
* gc.c: simplify threshold of GC caused by malloc_increase.
Now, malloc_limit is increased/decreased by mysterious logic.
This fix simplify malloc_limit increase/decrease logic such as:
if (malloc_increase > malloc_limit) /* so many malloc */
malloc_limit += malloc_limit * (GC_MALLOC_LIMIT_FACTOR-1);
else
malloc_limit -= malloc_limit * (GC_MALLOC_LIMIT_FACTOR-1)/4;
Default value of GC_MALLOC_LIMIT_FACTOR is 1.8.
malloc_limit is bounded by GC_MALLOC_LIMIT_MAX (256MB by default).
This logic runs at gc_before_sweep(). So there are no effect from
caused by lazy sweep. And we can remove malloc_increase2.
* gc.c (HEAP_MIN_SLOTS, FREE_MIN, HEAP_GROWTH_FACTOR): rename to
GC_HEAP_MIN_SLOTS, GC_FREE_MIN, GC_HEAP_GROWTH_FACTOR respectively.
Check them by `#ifndef' so you can specify these values outside gc.c.
* gc.c (ruby_gc_params_t): add initial_malloc_limit_factor and
initial_malloc_limit_max.
* gc.c (vm_malloc_prepare, vm_xrealloc): use vm_malloc_increase to
add and check malloc_increase.
Fri Sep 27 01:05:00 2013 Zachary Scott <e@zzak.io>
* re.c: [DOC] arguments of Regexp::union receive #to_regexp [Bug #8205]
Fri Sep 27 00:39:27 2013 Zachary Scott <e@zzak.io>
* struct.c: [DOC] grammar of ArgumentError in Struct.new [Bug #8936]
Patch by Prathamesh Sonpatki
Thu Sep 26 22:11:56 2013 Zachary Scott <e@zzak.io>
* ext/bigdecimal/bigdecimal.c: [DOC] several fixes by @chastell
This includes fixing the capitalization of Infinity, return value of
example "BigDecimal.new('NaN') == 0.0", and code style in example.
[Fixes GH-398] https://github.com/ruby/ruby/pull/398
Thu Sep 26 22:08:11 2013 Zachary Scott <e@zzak.io>
* lib/observer.rb: [DOC] syntax improvement in example by @chastell
[Fixes GH-400] https://github.com/ruby/ruby/pull/400
Thu Sep 26 22:03:15 2013 Zachary Scott <e@zzak.io>
* ext/digest/digest.c: [DOC] typo in overview by @chastell
[Fixes GH-399] https://github.com/ruby/ruby/pull/399
Thu Sep 26 22:00:42 2013 Zachary Scott <e@zzak.io>
* ext/openssl/ossl.c: [DOC] typo in example by @zoranzaric
[Fixes GH-401] https://github.com/ruby/ruby/pull/401
Thu Sep 26 21:07:49 2013 Akinori MUSHA <knu@iDaemons.org>
* misc/ruby-electric.el (ruby-electric-delete-backward-char): Add
support for smartparens-mode.
* misc/ruby-electric.el (ruby-electric-cua-replace-region-maybe)
(ruby-electric-cua-delete-region-maybe): New functions that
combine `ruby-electric-cua-*-region` with
`ruby-electric-cua-*-region-p`, using a slightly better way to
detect if it is in cua-mode.
Thu Sep 26 16:51:00 2013 Shota Fukumori <her@sorah.jp>
* insns.def (opt_regexpmatch2): Check String#=~ hasn't overridden
before calling rb_reg_match().
* test/ruby/test_string.rb: Test for above.
* vm.c (vm_init_redefined_flag): Add BOP flag for String#=~
[ruby-core:57385] [Bug #8953]
Thu Sep 26 16:43:42 2013 Akinori MUSHA <knu@iDaemons.org>
* misc/ruby-electric.el: Avoid use of the interactive function
`self-insert-command` which fires `post-self-insert-hook` and
`post-command-hook`, to make the ruby-electric commands work
nicely with those minor modes that make use of them to do
similar input assistance, such as electric-pair-mode,
autopair-mode and smartparens-mode.
Thu Sep 26 16:24:00 2013 Charlie Somerville <charliesome@ruby-lang.org>
* insns.def (opt_regexpmatch1): check Regexp#=~ is not defined before
calling rb_reg_match()
* test/ruby/test_regexp.rb: add test
* vm.c (ruby_vm_redefined_flag): change type to short[]
* vm.c (vm_redefinition_check_flag): return REGEXP_REDEFINED_OP_FLAG if
klass == rb_cRegexp
* vm.c (vm_init_redefined_flag): setup BOP flag for Regexp#=~
* vm_insnhelper.h: add REGEXP_REDEFINED_OP_FLAG
[ruby-core:57385] [Bug #8953]
Thu Sep 26 14:46:49 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (mark_locations_array): disable AddressSanitizer. based on a
patch by halfie (Ruby Guy) at [ruby-core:57372].
[ruby-core:56155] [Bug #8680]
Wed Sep 25 17:41:29 2013 Koichi Sasada <ko1@atdot.net>
* README.EXT, README.EXT.ja: remove description of RARRAY_PTR()
and add a caution of accessing internal data structure directly.
Also add a description of rb_ary_store().
[Bug #8399]
Wed Sep 25 17:12:08 2013 Koichi Sasada <ko1@atdot.net>
* include/ruby/ruby.h: rename RARRAY_RAWPTR() to RARRAY_CONST_PTR().
RARRAY_RAWPTR(ary) returns (const VALUE *) type pointer and
usecase of this macro is not acquire raw pointer, but acquire
read-only pointer. So we rename to better name.
RSTRUCT_RAWPTR() is also renamed to RSTRUCT_CONST_PTR()
(I expect that nobody use it).
* array.c, compile.c, cont.c, enumerator.c, gc.c, proc.c, random.c,
string.c, struct.c, thread.c, vm_eval.c, vm_insnhelper.c:
catch up this change.
Wed Sep 25 16:58:33 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* internal.h (rb_float_value, rb_float_new): move inline functions
from ruby/ruby.h.
* numeric.c (rb_float_value, rb_float_new): define external functions
for extension libraries.
Wed Sep 25 15:37:02 2013 Koichi Sasada <ko1@atdot.net>
* test/rdoc/test_rdoc_generator_darkfish.rb: add a guard for windows.
Wed Sep 25 09:53:11 2013 Eric Hodel <drbrain@segment7.net>
* lib/rubygems: Fix CVE-2013-4363. Miscellaneous minor improvements.
* test/rubygems: Tests for the above.
Tue Sep 24 17:38:56 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_inspect): get rid of out-of-bound access.
* string.c (rb_str_inspect): when a UTF-16/32 string doesn't have a
BOM, inspect as a dummy encoding string.
Tue Sep 24 17:15:10 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* enc/encdb.c (ENC_DUMMY_UNICODE): make BOM-encodings dummy.
* encoding.c (enc_autoload): keep dummy encodings dummy.
Tue Sep 24 16:41:15 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/win32/lib/win32/registry.rb (Win32::Registry#write): data size
is in bytes, not chars. terminators should be placed automatically.
Tue Sep 24 16:39:36 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/win32/lib/win32/registry.rb (Win32::Registry#each_value): encode
name.
* ext/win32/lib/win32/registry.rb (Win32::Registry#each_key): ditto.
* ext/win32/lib/win32/registry.rb (Win32::Registry#export_string):
encode to locale encoding if default internal is not set.
Tue Sep 24 16:35:09 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/win32/lib/win32/registry.rb (Win32::Registry::API#EnumKey):
size of the name is in WCHARs, not in bytes.
Tue Sep 24 14:07:00 2013 Charlie Somerville <charliesome@ruby-lang.org>
* gc.c (free_method_cache_entry_i): unused function
* gc.c (rb_free_mc_table): ditto
* internal.h (method_cache_entry_t): unused struct
* vm_method.c (verify_method_cache): remove unused variable
* vm_method.c (rb_method_entry): ditto
Tue Sep 24 14:01:00 2013 Charlie Somerville <charliesome@ruby-lang.org>
* class.c (class_alloc): remove mc_tbl
* gc.c (obj_free): ditto
* internal.h (struct rb_classext_struct): ditto
* method.h (rb_method_entry): remove ent param
* vm_method.c: restore the global method cache. Per class cache tables
turned out to be far too slow.
[ruby-core:57289] [Bug #8930]
Tue Sep 24 12:51:07 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/win32/lib/win32/registry.rb (Win32::Registry::API): need
Constants.
* ext/win32/lib/win32/registry.rb (Win32::Registry::API#EnumValue):
size of the name is in WCHARs, not in bytes.
Mon Sep 23 22:16:09 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* enc/encdb.c, enc/utf_16_32.h (ENC_DUMMY_UNICODE): Unicode with BOM
must be based on big endian variants, so that actual encodings would
work. [ruby-core:57318] [Bug #8940]
Mon Sep 23 12:11:26 2013 Masaki Matsushita <glass.saga@gmail.com>
* hash.c (env_each_pair): do not call rb_assoc_new() if
it isn't needed.
Mon Sep 23 10:42:30 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/ruby/test_module.rb (TestModule#test_include_toplevel): test
for top level main.include. based on a part of the patch by
kyrylo at [GH-395].
Mon Sep 23 05:07:49 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/intern.h (rb_ary_cat): move from internal.h, since it
is described in README.EXT.
Sun Sep 22 20:55:20 2013 Kazuki Tsujimoto <kazuki@callcc.net>
* vm_insnhelper.c (vm_make_proc_with_iseq): fix bug message.
This is follow up to changes in r42637.
Sun Sep 22 20:35:38 2013 Kazuki Tsujimoto <kazuki@callcc.net>
* ext/-test-/tracepoint/tracepoint.c (Init_tracepoint): prevent from GC.
Sun Sep 22 19:00:28 2013 Benoit Daloze <eregontp@gmail.com>
* benchmark/bm_app_answer.rb: revert r42990, benchmark scripts should
be self-contained and avoid dependencies, especially such small one.
See https://github.com/ruby/ruby/pull/393#issuecomment-24861301.
Sat Sep 21 20:11:06 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* process.c (rb_fork_internal): remove cloexec setting on pipes
created by rb_cloexec_pipe. patch by normalperson (Eric Wong) at
[ruby-core:56523]. [Bug #8769]
Sat Sep 21 01:04:25 2013 Zachary Scott <e@zzak.io>
* lib/benchmark.rb: [DOC] grammar of Benchmark#bm [Bug #8888]
Patch by Prathamesh Sonpatki
Sat Sep 21 00:50:02 2013 Zachary Scott <e@zzak.io>
* enumerator.c: [DOC] Enumerator#each arguments documentation [GH-388]
Patch by @kachick https://github.com/ruby/ruby/pull/388
Sat Sep 21 00:49:16 2013 Zachary Scott <e@zzak.io>
* enum.c: [DOC] Enumerable#to_a accepts arguments [GH-388]
Patch by @kachick https://github.com/ruby/ruby/pull/388
Sat Sep 21 00:47:44 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_conv_enc_opts): make sure to scan coderange to get
rid of unnecessary conversion.
Sat Sep 21 00:21:08 2013 Zachary Scott <e@zzak.io>
* ext/openssl/lib/openssl/ssl.rb: [DOC] Document OpenSSL::SSLServer
Based on a patch by Rafal Lisowski [Bug #8758]
Fri Sep 20 23:54:03 2013 Zachary Scott <e@zzak.io>
* lib/gserver.rb: [DOC] correct gserver.rb license [Bug #8913]
Fri Sep 20 23:48:34 2013 Zachary Scott <e@zzak.io>
* ext/psych/yaml/yaml.h: [DOC] merge upstream typo fix by @GreenGeorge
https://github.com/tenderlove/psych/pull/161
Fri Sep 20 23:37:40 2013 Zachary Scott <e@zzak.io>
* lib/securerandom.rb: [DOC] SecureRandom.hex length argument
[Fixes GH-394] Patch by @avdi https://github.com/ruby/ruby/pull/394
Fri Sep 20 23:34:48 2013 Zachary Scott <e@zzak.io>
* benchmark/bm_app_answer.rb: removed duplicate code [Fixes GH-393]
Patch by @gouravtiwari https://github.com/ruby/ruby/pull/393
Fri Sep 20 23:24:08 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (btest, btest-ruby, test-knownbug): add $(RUN_OPTS) to
ruby to be run, so that tests are runnable before making exts.
* common.mk (test-sample): ditto, and use $(MINIRUBY) as rubytest.rb
does not need extension libraries.
* tool/rubytest.rb: pass $(RUN_OPTS) to testing ruby using --run-opt.
Fri Sep 20 15:01:46 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (intern_str): sigil only names are junk, at least one
identifier character is needed. [ruby-dev:47723] [Bug #8928]
* parse.y (rb_enc_symname_type): fix out of bound access.
Fri Sep 20 14:14:32 2013 Tanaka Akira <akr@fsij.org>
* ext/-test-/printf/printf.c (printf_test_call): Fix an end of buffer
argument.
Thu Sep 19 16:59:02 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (lambda): adjust position to the beginning of the block.
Thu Sep 19 16:25:06 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vsnprintf.c (BSD_vfprintf): initialize cp so that size is 0 in the
commented case. fix an accidental bug at r16716.
Thu Sep 19 14:33:14 2013 Koichi Sasada <ko1@atdot.net>
* NEWS: add a news for r42974.
Thu Sep 19 14:12:02 2013 Koichi Sasada <ko1@atdot.net>
* include/ruby/ruby.h: make Symbol objects frozen.
[Feature #8906]
I want to freeze this good day, too.
* test/ruby/test_eval.rb: catch up this change.
* test/ruby/test_symbol.rb: add a test to check frozen symbols.
Thu Sep 19 09:11:33 2013 Eric Hodel <drbrain@segment7.net>
* NEWS: Update for RDoc 4.1.0.preview.1 and RubyGems 2.2.0.preview.1
Thu Sep 19 08:59:41 2013 Eric Hodel <drbrain@segment7.net>
* lib/rdoc/markdown/literals_1_9.rb: Fix trailing whitespace.
Previously kpeg (which generates this file) added trailing
whitespace, but this bug is now fixed.
* lib/rdoc/markdown.rb: ditto.
Thu Sep 19 08:33:14 2013 Eric Hodel <drbrain@segment7.net>
* lib/rdoc: Update to RDoc 4.1.0.preview.1
RDoc 4.1.0 contains a number of enhancements including a new default
style and accessibility support. You can see the changelog here:
https://github.com/rdoc/rdoc/blob/v4.1.0.preview.1/History.rdoc
* test/rdoc: ditto.
Thu Sep 19 07:16:26 2013 Aaron Patterson <aaron@tenderlovemaking.com>
* ext/psych/lib/psych.rb: updating Psych version
* ext/psych/psych.gemspec: ditto
Thu Sep 19 06:39:40 2013 Eric Hodel <drbrain@segment7.net>
* lib/rubygems/dependency_resolver.rb: Switch the iterative resolver
algorithm from recursive to iterative to avoid possible
SystemStackError.
Thu Sep 19 06:29:30 2013 Eric Hodel <drbrain@segment7.net>
* lib/rubygems: Update to RubyGems 2.2.0.preview.1
This brings several new features to RubyGems summarized here:
https://github.com/rubygems/rubygems/blob/v2.2.0.preview.1/History.txt
* test/rubygems: ditto.
Wed Sep 18 23:14:58 2013 Masaki Matsushita <glass.saga@gmail.com>
* string.c (rb_str_enumerate_lines): make String#each_line and
#lines not raise invalid byte sequence error when it is called
with an argument. The patch also causes performance improvement.
[ruby-dev:47549] [Bug #8698]
* test/ruby/test_m17n_comb.rb (test_str_each_line): remove
assertions which check that String#each_line and #lines will
raise an error if the receiver includes invalid byte sequence.
Wed Sep 18 16:32:15 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* proc.c (mnew_from_me): allocate structs after allocated wrapper
object successfully, to get rid of potential memory leak.
Tue Sep 17 15:54:03 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/shell/command-processor.rb (Shell::CommandProcessor#find_system_command):
return executable file only, should ignore directories and
unexecutable files. [ruby-core:57235] [Bug #8918]
* lib/test/unit/assertions.rb (Test::Unit::Assertions#assert_throw):
assertion for throw. MiniTest::Assertions#assert_throws discards
the caught value.
* lib/test/unit/assertions.rb (Test::Unit::Assertions#assert_nothing_thrown):
returns the result of the given block.
Tue Sep 17 12:55:58 2013 Eric Hodel <drbrain@segment7.net>
* doc/regexp.rdoc: [DOC] Replace paragraphs in verbatim sections with
plain paragraphs to improve readability as ri and HTML.
Mon Sep 16 07:32:35 2013 Tadayoshi Funaba <tadf@dotrb.org>
* complex.c: removed meaningless lines.
* rational.c: ditto.
Mon Sep 16 00:44:23 2013 Masaki Matsushita <glass.saga@gmail.com>
* ext/socket/mkconstants.rb: define MSG_FASTOPEN.
[ruby-core:57138] [Feature #8897]
Sun Sep 15 13:31:23 2013 Tadayoshi Funaba <tadf@dotrb.org>
* rational.c (nurat_div): reverted r28844, r28886 and r28887.
REASON: Nobuyoshi Nakada <nobu@ruby-lang.org>'s commits are buggy.
So Rational#/ may produce exact number with inexact number.
Moreover, without reducing.
REALLY NONSENSE COMMITS.
A bug report by me [ruby-dev:44710] is also caused by this behavior.
Kenta Murata <mrkn@mrkn.jp> patched it up.
But he did not fix the origin.
Today, the bug is still alive in ruby 1.9.3 and 2.0.0.
Sat Sep 14 06:08:10 2013 Eric Hodel <drbrain@segment7.net>
* dir.c (dir_s_glob): [DOC] Improve wording and layout.
* dir.c (file_s_fnmatch): ditto.
* dir.c (Init_Dir): [DOC] Document File::Constants::FNM_XXX
constants. (These won't show up in RDoc until a new RDoc is
imported.)
Thu Sep 12 14:58:58 2013 NARUSE, Yui <naruse@ruby-lang.org>
* lib/uri/generic.rb (URI::Generic.find_proxy): return nil if
http_proxy environment variable is empty string.
[ruby-core:57140] [Bug #8898]
Fri Sep 13 10:40:28 2013 Eric Hodel <drbrain@segment7.net>
* lib/rubygems: Update to RubyGems 2.1.3
Fixed installing platform gems
Restored concurrent requires
Fixed installing gems with extensions with --install-dir
Fixed `gem fetch -v` to install the latest version
Fixed installing gems with "./" in their files entries
* test/rubygems/test_gem_package.rb: Tests for the above.
* NEWS: Updated for RubyGems 2.1.3
Thu Sep 12 22:40:03 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (RUBY_CHECK_SIGNEDNESS): macro to check signedness of a
type.
* configure.in (size_t): must be unsigned.
[ruby-core:57149] [Feature #8890]
Thu Sep 12 22:37:08 2013 Anton Ovchinnikov <revolver112@gmail.com>
* ext/bigdecimal/bigdecimal.c, ext/digest/md5/md5.c,
ext/json/fbuffer/fbuffer.h, ext/json/generator/generator.c:
Eliminate less-than-zero checks for unsigned variables.
According to section 4.1.5 of C89 standard, size_t is an unsigned
type. These checks were found with 'cppcheck' static analysis tool.
[ruby-core:57117] [Feature #8890]
Thu Sep 12 21:35:46 2013 Naohisa Goto <ngotogenome@gmail.com>
* Makefile.in (libruby-static.a): change LDFLAGS order. LDFLAGS may
include library path that should be specified before LIBS.
[ruby-dev:47707] [Bug #8901]
Thu Sep 12 20:07:29 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vsnprintf.c (MAXEXP, MAXFRACT): calculate depending on constants in
float.h.
* vsnprintf.c (BSD_vfprintf): limit length for cvt() to get rid of
buffer overflow. [ruby-core:57023] [Bug #8864]
* vsnprintf.c (exponent): make expbuf size more precise.
Wed Sep 11 17:30:45 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (RUNRUBY): append -- only after runruby.rb, not
cross-compiling baseruby, so that $(RUN_OPT) can be command line
options. [ruby-dev:47703] [Bug #8893]
Wed Sep 11 07:55:17 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
* thread.c (rb_mutex_unlock): Mutex#unlock no longer raise
an exception even if uses on trap. [Bug #8891]
Tue Sep 10 14:37:01 2013 Shota Fukumori <sorah@tubusu.net>
* vm_backtrace.c (vm_backtrace_to_ary): Ignore the second argument if
it is nil. [Bug #8884] [ruby-core:57094]
* test/ruby/test_backtrace.rb (test_caller_with_nil_length):
Test for above.
Tue Sep 10 12:39:17 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* class.c (method_entry_i): should exclude refined methods from
instance method list. [ruby-core:57080] [Bug #8881]
Tue Sep 10 12:05:04 2013 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* io.c (rb_f_printf): [DOC] add missing parenthesis in rdoc.
Tue Sep 10 10:08:00 2013 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* NEWS: Update RubyGems note.
Tue Sep 10 09:51:22 2013 Eric Hodel <drbrain@segment7.net>
* lib/rubygems: Update to RubyGems 2.1.0. Fixes CVE-2013-4287.
See http://rubygems.rubyforge.org/rubygems-update/CVE-2013-4287_txt.html
for CVE information.
See http://rubygems.rubyforge.org/rubygems-update/History_txt.html#label-2.1.0+%2F+2013-09-09
for release notes.
* test/rubygems: Tests for the above.
Mon Sep 9 21:31:45 2013 Tanaka Akira <akr@fsij.org>
* process.c: Remove spaces between SI prefix and unit to follow
SI brochure.
http://www.bipm.org/en/si/si_brochure/
https://www.nmij.jp/library/units/si/
* time.c: Ditto.
* ext/socket/ancdata.c: Ditto.
Mon Sep 9 16:55:59 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_method.c (rb_add_refined_method_entry): clear cache in the
refined class since refining a method entry is modifying the class.
[ruby-core:57079] [Bug #8880]
Mon Sep 9 09:14:58 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* tool/rbinstall.rb (Gem::Specification#initialize): default date to
RUBY_RELEASE_DATE. [ruby-core:57072] [Bug #8878]
* tool/rbinstall.rb (Gem::Specification#to_ruby): add date.
Sun Sep 8 16:01:54 2013 Tanaka Akira <akr@fsij.org>
* rational.c (f_gcd): Relax the condition to use GMP.
Sun Sep 8 13:56:38 2013 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (folevariant_initialize): check type of
element of array.
* test/win32ole/test_win32ole_variant.rb (test_s_new_ary): ditto.
Sat Sep 7 21:33:10 2013 Tanaka Akira <akr@fsij.org>
* math.c (math_log): Test the sign for bignums.
(math_log2): Ditto.
(math_log10): Ditto.
Sat Sep 7 20:25:47 2013 Tanaka Akira <akr@fsij.org>
* math.c (math_log): Support bignums bigger than 2**1024.
(math_log2): Ditto.
(math_log10): Ditto.
Sat Sep 7 15:36:00 2013 Charlie Somerville <charliesome@ruby-lang.org>
* vm_eval.c (vm_call0): fix prototype, the id parameter should be of
type ID, not VALUE
* vm_insnhelper.c (check_match): the rb_funcall family of functions
does not care about refinements. We need to use
rb_method_entry_with_refinements instead to call === with
refinements. Thanks to Jon Conley for reporting this bug.
[ruby-core:57051] [Bug #8872]
* test/ruby/test_refinement.rb: add test
Sat Sep 7 13:49:40 2013 Kazuki Tsujimoto <kazuki@callcc.net>
* variable.c (classname): the name of class that has
non class id should not be nil. This bug was introduced
in r36577.
* test/thread/test_cv.rb: test for change.
Sat Sep 7 13:29:22 2013 Kazuki Tsujimoto <kazuki@callcc.net>
* lib/find.rb (Find.find): respect the encodings of arguments.
[ruby-dev:47530] [Feature #8657]
* test/test_find.rb: add tests.
Sat Sep 7 10:40:32 2013 Tanaka Akira <akr@fsij.org>
* ext/socket/mkconstants.rb (TCP_FASTOPEN): Defined for TCP fast open.
[ruby-core:57048] [Feature #8871] patch by Masaki Matsushita.
Fri Sep 6 23:53:31 2013 Masaki Matsushita <glass.saga@gmail.com>
* common.mk: use RUNRUBY instead of MINIRUBY because MINIRUBY can't
require extension libraries. The patch is from nobu
(Nobuyoshi Nakada).
* ext/thread/extconf.rb: for build ext/thread/thread.c.
* include/ruby/intern.h: ditto.
* thread.c: ditto.
* lib/thread.rb: removed and replaced by ext/thread/thread.c.
* ext/thread/thread.c: Queue, SizedQueue and ConditionVariable
implementations in C. This patch is based on patches from panaggio
(Ricardo Panaggio) and funny_falcon (Yura Sokolov) and ko1
(Koichi Sasada). [ruby-core:31513] [Feature #3620]
* test/thread/test_queue.rb (test_queue_thread_raise): add a test for
ensuring that killed thread should be removed from waiting threads.
It is based on a code by ko1 (Koichi Sasada). [ruby-core:45950]
Fri Sep 6 22:47:12 2013 Tanaka Akira <akr@fsij.org>
* configure.in: Define ac_cv_func_clock_getres to yes for mingw*.
Fri Sep 6 21:04:10 2013 Tanaka Akira <akr@fsij.org>
* rational.c: Include gmp.h if GMP is used.
(GMP_GCD_DIGITS): New macro.
(rb_gcd_gmp): New function.
(f_gcd_normal): Renamed from f_gcd.
(rb_gcd_normal): New function.
(f_gcd): Invoke rb_gcd_gmp or f_gcd_normal.
* internal.h (rb_gcd_normal): Declared.
(rb_gcd_gmp): Ditto.
* ext/-test-/rational: New directory.
* test/-ext-/rational: New directory.
Fri Sep 6 14:23:22 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (clock_getres): required as well as clock_gettime().
[ruby-dev:47699] [Bug #8869]
Fri Sep 6 11:45:27 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* transcode.c (rb_econv_append): new function to append a string data
with converting its encoding. split from rb_econv_substr_append.
Fri Sep 6 02:37:22 2013 Aaron Patterson <aaron@tenderlovemaking.com>
* ext/psych/lib/psych/visitors/yaml_tree.rb: use double quotes when
strings start with special characters.
https://github.com/tenderlove/psych/issues/157
* test/psych/test_string.rb: test for change.
Fri Sep 6 00:05:14 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* class.c (rewrite_cref_stack): remove recursion.
Thu Sep 5 18:05:00 2013 Charlie Somerville <charliesome@ruby-lang.org>
* string.c (fstring_cmp): take string encoding into account when
comparing fstrings [ruby-core:57037] [Bug #8866]
* test/ruby/test_string.rb: add test
Thu Sep 5 17:25:49 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_fstring, rb_str_free): use st_data_t instead of VALUE.
* string.c (rb_fstring): get rid of duplicating already frozen object.
* parse.y (str_suffix_gen): freeze in advance to reduce objects.
Thu Sep 5 14:01:22 2013 Eric Hodel <drbrain@segment7.net>
* lib/optparse.rb: The Integer acceptable now allows binary and
hexadecimal numbers per the documentation. [ruby-trunk - Bug #8865]
DecimalInteger, OctalInteger, DecimalNumeric now validate their input
before converting to a number. [ruby-trunk - Bug #8865]
* test/optparse/test_acceptable.rb: Tests for the above, tests for all
numeric acceptables for existing behavior.
Thu Sep 5 13:49:00 2013 Charlie Somerville <charliesome@ruby-lang.org>
* include/ruby/ruby.h: add RSTRING_FSTR flag
* internal.h: add rb_fstring() prototype
* parse.y (str_suffix_gen): deduplicate frozen string literals
* string.c (rb_fstring): deduplicate frozen string literals
* string.c (rb_str_free): delete fstrings from frozen_strings table when
they are GC'd
* string.c (Init_String): initialize frozen_strings table
* test/ruby/test_string.rb: test frozen strings are deduplicated
Thu Sep 5 12:48:00 2013 Kenta Murata <mrkn@cookpad.com>
* configure.in (with_gmp): set with_gmp no if it is empty.
Thu Sep 5 10:41:00 2013 Charlie Somerville <charliesome@ruby-lang.org>
* vm_insnhelper.c (vm_getivar): use class sequence to check class
identity, instead of pointer + vm state
* vm_insnhelper.c (vm_setivar): ditto
Thu Sep 5 08:20:58 2013 Tanaka Akira <akr@fsij.org>
* bignum.c (GMP_DIV_DIGITS): New macro.
(bary_divmod_gmp): New function.
(rb_big_divrem_gmp): Ditto.
(bary_divmod_branch): Ditto.
(bary_divmod): Use bary_divmod_branch.
(bigdivrem): Ditto.
* internal.h (rb_big_divrem_gmp): Declared.
Thu Sep 5 06:22:42 2013 Tanaka Akira <akr@fsij.org>
* bignum.c (bary_divmod_normal): Reduce temporary array allocations.
Thu Sep 5 02:17:06 2013 Tanaka Akira <akr@fsij.org>
* bignum.c (rb_big_divrem_normal): Add GC guards.
Thu Sep 5 00:38:32 2013 Tanaka Akira <akr@fsij.org>
* bignum.c (rb_big_divrem_normal): New function.
* internal.h (rb_big_divrem_normal): Declared.
* ext/-test-/bignum/div.c: New file.
* test/-ext-/bignum/test_div.rb: New file.
Thu Sep 5 00:08:44 2013 Tanaka Akira <akr@fsij.org>
* bignum.c (bigdivrem_normal): Removed.
(bary_divmod_normal): New function.
(bary_divmod): Use bary_divmod_normal.
(bigdivrem): Use bary_divmod_normal.
Wed Sep 4 23:02:12 2013 Tanaka Akira <akr@fsij.org>
* bignum.c (bigdivrem): Useless declaration removed.
Wed Sep 4 22:56:49 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (NUM_STEP_GET_INF): split from NUM_STEP_SCAN_ARGS(), since
inf is not used in num_step_size().
Wed Sep 4 20:22:43 2013 Tanaka Akira <akr@fsij.org>
* bignum.c (bigdivrem_normal): Add assertions.
Wed Sep 4 19:18:40 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* internal.h (vm_state_version_t): prefer LONG_LONG to uint64_t.
Wed Sep 4 16:28:14 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* internal.h (vm_state_version_t): use uint64_t when it is larger than
LONG_LONG, and fallback to unsigned long.
Wed Sep 4 15:37:05 2013 NARUSE, Yui <naruse@ruby-lang.org>
* enc/trans/utf8_mac-tbl.rb: fix r42789.
Fix conversion table and logic. [ruby-dev:47680]
Wed Sep 4 14:08:00 2013 Charlie Somerville <charliesome@ruby-lang.org>
* class.c, compile.c, eval.c, gc.h, insns.def, internal.h, method.h,
variable.c, vm.c, vm_core.c, vm_insnhelper.c, vm_insnhelper.h,
vm_method.c: Implement class hierarchy method cache invalidation.
[ruby-core:55053] [Feature #8426] [GH-387]
Wed Sep 4 11:13:40 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (str_gsub): use BEG(0) for whole matched position not
return value from rb_reg_search(), for \K matching.
[ruby-dev:47694] [Bug #8856]
Wed Sep 4 11:11:37 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (SOLIBS): LIBRUBY_SO also needs linking with gmp, to
run worker processes in test-all on non-ELF platforms.
Tue Sep 3 23:01:41 2013 Kouhei Sutou <kou@cozmixng.org>
* test/rexml/parser/test_tree.rb
(TestTreeParser::TestInvalid#test_unmatched_close_tag):
Compute expected value from test value.
Tue Sep 3 22:59:58 2013 Kouhei Sutou <kou@cozmixng.org>
* lib/rexml/parsers/treeparser.rb (REXML::Parsers::TreeParser#parse):
Add source information to parse exception on no close tag error.
[Bug #8844] [ruby-dev:47672]
Patch by Ippei Obayashi. Thanks!!!
* test/rexml/parser/test_tree.rb: Add a test for the above case.
Tue Sep 3 22:57:57 2013 Kouhei Sutou <kou@cozmixng.org>
* test/rexml/parser/test_tree.rb: Fix test name to describe test
content.
Tue Sep 3 22:54:46 2013 Kouhei Sutou <kou@cozmixng.org>
* lib/rexml/parsers/treeparser.rb (REXML::Parsers::TreeParser#parse):
Remove needless nested parse exception information.
[Bug #8844] [ruby-dev:47672]
Reported by Ippei Obayashi. Thanks!!!
* test/rexml/parser/test_tree.rb: Add a test for the above case.
Tue Sep 3 22:03:49 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_enc_str_new_cstr): new function to create a string from
the C-string pointer with the specified encoding.
Tue Sep 3 21:41:37 2013 Akira Matsuda <ronnie@dio.jp>
* eval.c (Init_eval): Make Module#include and Module#prepend public
[Feature #8846]
* test/ruby/test_module.rb (class TestModule): Test for above
Tue Sep 3 21:35:19 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread_pthread.c (sys/dyntune.h): for gettune().
* thread_pthread.c (hpux_attr_getstackaddr): fix missing *.
[ruby-core:56983] [Feature #8793]
Tue Sep 3 20:12:46 2013 Tanaka Akira <akr@fsij.org>
* bignum.c (GMP_STR2BIG_DIGITS): New macro.