-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
8893 lines (5564 loc) · 302 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
Sat Apr 14 08:38:20 2012 Eric Hodel <drbrain@segment7.net>
* encoding.c (rb_enc_codepoint_len): Use UNREACHABLE to avoid "control
reaches end of non-void function" warnings. [ruby-trunk - Bug #6066]
* re.c (name_to_backref_number): ditto.
* object.c (rb_Float): ditto.
* io.c (io_readpartial): ditto.
* io.c (io_read_nonblock): ditto.
* pack.c (rb_uv_to_utf8): ditto.
* proc.c (rb_method_entry_arity): ditto.
* vm_method.c (rb_f_notimplement): ditto.
* struct.c (rb_struct_aset_id): ditto.
* class.c (rb_scan_args): ditto.
* process.c (rlimit_resource_type): ditto.
* process.c (rlimit_resource_value): ditto.
* process.c (p_uid_switch): ditto.
* process.c (p_gid_switch): ditto.
* ext/digest/digest.c (rb_digest_instance_update): ditto.
* ext/digest/digest.c (rb_digest_instance_finish): ditto.
* ext/digest/digest.c (rb_digest_instance_reset): ditto.
* ext/digest/digest.c (rb_digest_instance_block_length): ditto.
* ext/bigdecimal/bigdecimal.c (BigDecimalCmp): ditto.
* ext/dl/handle.c (rb_dlhandle_close): ditto.
* ext/tk/tcltklib.c (pending_exception_check0): ditto.
* ext/tk/tcltklib.c (pending_exception_check1): ditto.
* ext/tk/tcltklib.c (ip_cancel_eval_core): ditto.
* ext/tk/tcltklib.c (lib_get_reltype_name): ditto.
* ext/tk/tcltklib.c (create_dummy_encoding_for_tk_core): ditto.
* ext/tk/tkutil/tkutil.c (tk_hash_kv): ditto.
* ext/openssl/ossl_ssl.c (ossl_ssl_session_reused): ditto.
* ext/openssl/ossl_pkey_ec.c (ossl_ec_key_dsa_verify_asn1): ditto.
* ext/openssl/ossl_pkey_ec.c (ossl_ec_point_is_at_infinit): ditto.
* ext/openssl/ossl_pkey_ec.c (ossl_ec_point_is_on_curve): ditto.
* ext/fiddle/conversions.c (generic_to_value): ditto.
* ext/socket/raddrinfo.c (rsock_io_socket_addrinfo): ditto.
* ext/socket/socket.c (sock_s_getnameinfo): ditto.
* ext/ripper/eventids2.c (ripper_token2eventid): ditto.
* cont.c (return_fiber): ditto.
* dmydln.c (dln_load): ditto.
* vm_insnhelper.c (vm_search_normal_superclass): ditto.
* bignum.c (big_fdiv): ditto.
* marshal.c (r_symlink): ditto.
* marshal.c (r_symbol): ditto.
Fri Apr 13 17:12:09 2012 NARUSE, Yui <naruse@ruby-lang.org>
* hash.c (inspect_i): keep string's coderange.
Fri Apr 13 15:26:51 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (rb_hash_aset, rb_hash_update, rb_hash_update_by): use
st_update() to reduce evaluation of hash values.
Fri Apr 13 15:17:36 2012 NARUSE, Yui <naruse@ruby-lang.org>
* lib/webrick/server.rb (WEBrick::GenericServer#stop): fix r35303;
this method is to deny new connections, not shutdown yet.
* lib/webrick/server.rb (WEBrick::GenericServer#start):
re-raise exception only when the exception is Interrupt (^C).
Thu Apr 12 19:51:45 2012 Tadayoshi Funaba <tadf@dotrb.org>
* ext/date/date_core.c: added some notes.
Wed Apr 11 17:16:49 2012 Koichi Sasada <ko1@atdot.net>
* compile.c (compile_array, compile_array_):
Divide big array (or hash) literals into several blocks and
concatetene them. There was a problem that a big array (hash)
literal causes SystemStackError exception (stack overflow)
because VM push all contents of the literal onto VM stack to
make an array (or hash). To solve this issue, we make several
arrays (hashes) and concatenate them to make a big array (hash)
object. [ruby-dev:37701] [Bug #982]
* compile.c (iseq_compile_each, setup_args): use modified
compile_array.
* vm.c (m_core_hash_from_ary, m_core_hash_merge_ary,
m_core_hash_merge_ptr): added for above change.
* id.c (Init_id), parse.y: add core method ids.
* bootstraptest/test_literal.rb: add simple tests.
* bootstraptest/test_eval.rb: remove rescue clause to catch
SystemStackError exception.
* test/ruby/test_literal.rb: add tests to check no stack overflow.
Thu Apr 12 07:10:37 2012 Eric Hodel <drbrain@segment7.net>
* lib/uri/generic.rb (module URI): URI now downcases the scheme to
follow RFC 2396 section 3.1. [ruby-trunk - Feature #4551]
* test/uri/test_generic.rb (class URI): Test for above
Thu Apr 12 06:15:44 2012 Eric Hodel <drbrain@segment7.net>
* lib/net/protocol.rb (module Net): Added ReadTimeout to match
OpenTimeout. ReadTimeout is now raised by rbuf_fill instead of
Timeout::Error to help users distinguish what type of timeout
occurred. [ruby-trunk - Feature #6088]
* lib/net/pop.rb (module Net): Updated documentation for ReadTimeout
and OpenTimeout.
* lib/net/http.rb (module Net): ditto
* lib/net/smtp.rb (module Net): ditto
* lib/net/telnet.rb (module Net): Net::ReadTimeout is now raised in
waitfor to match Net::Protocol.
* test/net/http/test_http.rb: Updated Timeout::Error expectation to
Net::ReadTimeout.
* test/net/ftp/test_ftp.rb: ditto
Thu Apr 12 05:27:01 2012 Eric Hodel <drbrain@segment7.net>
* lib/webrick/server.rb (module WEBrick::GenericServer): A server
will now continue only when a StandardError subclass is raised. For
other exception types the error will be logged at the fatal level and
the server will safely stop. Based on a patch by Alex Young.
[ruby-trunk - Feature #6236]
* test/webrick/test_server.rb: Test for new exception handling
behavior. Join the server thread instead of busy-waiting for it to
shut down to remove race conditions.
Thu Apr 12 03:50:44 2012 NARUSE, Yui <naruse@ruby-lang.org>
* lib/test/unit.rb (Test::Unit:Runner::Worker#_run_suites):
call GC.start before running the test suites.
Wed Apr 11 22:31:19 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (rb_check_id_cstr): new function to check if ID is
registered with NUL-terminated C string.
* sprintf.c (rb_str_format): avoid inadvertent symbol creation.
Wed Apr 11 20:28:36 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com>
* io.c (rb_io_eof): use eof() instead of io_fillbuf(). It's because
io_unread() doesn't work properly when reading CRLF with read(length)
and mode 'r'.
[ruby-core:44189][Bug #6271]
* test/ruby/test_io_m17n.rb (TestIO_M17N#test_read_crlf_and_eof):
test for above.
Wed Apr 11 07:38:33 2012 Eric Hodel <drbrain@segment7.net>
* ext/digest/sha2/lib/sha2.rb (Digest#block_length): Fixed method name
in documentation examples. Patch by naleski via
https://github.com/ruby/ruby/pull/115
Wed Apr 11 07:33:13 2012 Eric Hodel <drbrain@segment7.net>
* pack.c (pack_pack): Warn when an invalid character is found in the
format string when $VERBOSE is true. [ruby-trunk - Feature #5219]
* pack.c (pack_unpack): ditto
* test/ruby/test_pack.rb (class TestPack): Test for warnings on
invalid format characters.
Wed Apr 11 06:11:10 2012 Eric Hodel <drbrain@segment7.net>
* string.c (rb_str_tr): Documented use of \ to escape characters.
[ruby-trunk - Bug #6161]
* string.c (rb_str_count): ditto
Wed Apr 11 05:14:51 2012 Eric Hodel <drbrain@segment7.net>
* lib/abbrev.rb: Clarified that Abbrev.abbrev returns a Hash instead
of an Array. Patch by Andrei Bocan. [ruby-trunk - Bug #6107]
Wed Apr 11 03:02:24 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com>
* ext/ripper/lib/ripper/sexp.rb: fix spelling. patched by
Jonathan Hinkle via https://github.com/ruby/ruby/pull/116
Tue Apr 10 19:07:04 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* error.c (rb_enc_raise): new function to raise an exception with
the message in the given encoding. patched by now (Nikolai
Weibull) at [ruby-core:41160]. [Feature #5650]
Tue Apr 10 18:19:32 2012 NARUSE, Yui <naruse@ruby-lang.org>
* lib/net/http.rb (Net::HTTP#send_request_with_body_stream):
use IO.copy_stream for requests using body_stream.
patched by Eric Wong. [ruby-core:40898] [Feature #5605]
Tue Apr 10 16:53:21 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread_pthread.c: add prototype declarations for older Mac OS X.
[ruby-core:43376][Bug #6170]
Tue Apr 10 15:35:21 2012 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_set_sequence): show a hint if there are duplicated
"when" clauses. [ruby-core:41502] [ruby-trunk - Feature #5716]
Tue Apr 10 09:57:00 2012 Eric Hodel <drbrain@segment7.net>
* string.c (rb_str_split_m): Documented behavior of split on the empty
string. [ruby-trunk - Feature #3575]
Tue Apr 10 09:48:31 2012 Eric Hodel <drbrain@segment7.net>
* ext/zlib/zlib.c (rb_deflate_s_deflate): Fixed ruby example replacing
NO_FLUSH with FINISH. [ruby-trunk - Bug #6273]
Mon Apr 9 23:10:26 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (isUNCRoot, winnt_stat): support long UNC.
[ruby-core:30623][Feature #3399]
Mon Apr 9 15:16:01 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (string_content, parser_yylex): count brace nesting to
dispatch embexpr_end. [ruby-core:43775][Bug #6211]
Mon Apr 9 13:06:58 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* hash.c (rb_hash_set_default_proc): Accept nil, patch by Run Paint
[Feature #4234]
* test/ruby/test_hash.rb: test for above.
Mon Apr 9 08:01:15 2012 Tadayoshi Funaba <tadf@dotrb.org>
* ext/date/date_strftime.c: gets the value with range() consistetly.
* ext/date/date_strftime.c (range): now just replaces the given item.
Mon Apr 9 06:58:01 2012 Tadayoshi Funaba <tadf@dotrb.org>
* complex.c (nucomp_expt): [ruby-core:44170].
Mon Apr 9 02:52:03 2012 NARUSE, Yui <naruse@ruby-lang.org>
* complex.c (nucomp_expt): the result of f_complex_new2 may be a fixnum
with mathn. [ruby-core:44170] [Bug #6267]
Sun Apr 8 22:46:01 2012 NARUSE, Yui <naruse@ruby-lang.org>
* ext/json/generator/generator.c (generate_json_bignum):
add RB_GC_GUARD.
http://fb.rubyci.org/~chkbuild/ruby-trunk/log/20120407T210301Z.diff.html.gz
Sun Apr 8 07:26:40 2012 NARUSE, Yui <naruse@ruby-lang.org>
* lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler): get keys
and fetch values from it to prevent @timeout_info's error
"can't add a new key into hash during iteration".
Sun Apr 8 06:51:57 2012 NARUSE, Yui <naruse@ruby-lang.org>
* io.c (io_unread): cast as long the value for extra_max.
[ruby-core:44137] [Bug #6257]
Sun Apr 8 06:46:48 2012 NARUSE, Yui <naruse@ruby-lang.org>
* lib/webrick/httpresponse.rb (WEBrick::HTTPResponse#send_body_io):
use readpartial to get data even if the response is streaming data and
each data is smaller than @buffer_size.
patched by yu nobuoka. [ruby-dev:45471] [Bug #6230]
Sat Apr 7 22:35:36 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com>
* include/ruby/win32.h (rb_w32_aspawn_flags): add the declaration of
new function.
* process.c (enum): add EXEC_OPTION_PGROUP and move the position
above for the usage in proc_spawn_n().
* process.c (proc_spawn_n): add an argument to pass new option
`new_pgroup`. The option specifies CREATE_NEW_PROCESS_GROUP flag to
CreateProcessW(). This flag is necessary for the usage of
Process.kill on the subprocess on Windows.
* process.c (rb_exec_arg_addopt): ditto.
* process.c (rb_spawn_process): ditto.
* process.c (documentation for rb_f_spawn): add documentation for new
option `new_pgroup` of spawn.
* test/ruby/test_process.rb (TestProcess#test_execopts_new_pgroup):
add tests for option `new_pgroup`.
* test/ruby/test_thread.rb
(TestThreadGroup#test_thread_timer_and_interrupt):
add option `new_pgroup: true` to spawn on Windows. It's needed for
Process.kill on a subprocess.
* win32/win32.c (CreateChild): add an argument to pass
dwCreationFlags of CreateProcessW().
* win32/win32.c (rb_w32_spawn): ditto.
* win32/win32.c (rb_w32_aspawn_flags): add new function to pass
dwCreationFlags.
* win32/win32.c (rb_w32_aspawn): refactor to move the content to
rb_w32_aspawn_flags().
[ruby-core:43245][Bug #6131]
Sat Apr 7 22:32:00 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com>
* test/ruby/test_thread.rb
(TestThreadGroup#test_thread_timer_and_interrupt): skip on Windows.
Process.kill cannot kill a subprocess if CREATE_NEW_PROCESS_GROUP
flag is not specified in a call to CreateProcessW().
* win32/win32.c (CreateChild): revert the usage of
CREATE_NEW_PROCESS_GROUP flag for compatibility.
[ruby-core:43245][Bug #6131]
Sat Apr 7 10:28:40 2012 Aaron Patterson <aaron@tenderlovemaking.com>
* ext/psych/lib/psych.rb: bumping up psych version to match release.
* ext/psych/psych.gemspec: ditto
Sat Apr 7 02:07:00 2012 Aaron Patterson <aaron@tenderlovemaking.com>
* ext/psych/parser.c: fall back to any encoding if the external
encoding is wrong. [ruby-core:44163]
* test/psych/test_encoding.rb: fix test
Fri Apr 6 16:24:24 2012 Martin Duerst <duerst@it.aoyama.ac.jp>
* struct.c (documentation for rb_struct_members_m):
fix 'array of strings' to 'array of symbols'
[ruby-core:44152][Bug #6264]
Fri Apr 6 14:27:04 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* Makefile.in ($(LIBRUBY_A)): fix typo.
Thu Apr 5 13:26:15 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* missing/alloca.c (xmalloc, xfree): use ruby version, not
depending on RUBY_LIB_PREFIX. [ruby-dev:45492][Bug #6255]
Wed Apr 4 13:06:39 2012 NARUSE, Yui <naruse@ruby-lang.org>
* lib/ftp/ftp.rb (Net::FTP#close): restore original read_timeout.
Wed Apr 4 10:33:31 2012 NARUSE, Yui <naruse@ruby-lang.org>
* lib/ftp/ftp.rb (Net::FTP#close): ignore exceptions from shutdown and
read on closing.
Wed Apr 4 01:48:35 2012 NARUSE, Yui <naruse@ruby-lang.org>
* lib/ftp/ftp.rb (Net::FTP#close): close socket more gracefully.
* lib/ftp/ftp.rb (Net::BufferedSocket#shutdown): added.
* test/net/ftp/test_ftp.rb (FTPTest#create_ftp_server): wait socket
with shutdown and read.
Tue Apr 3 19:00:52 2012 NAKAMURA Usaku <usa@ruby-lang.org>
* test/net/ftp/test_ftp.rb (FTPTest#create_ftp_server): should wait
a little before closing socket because if the client call
Net::FTP#getmultiline the socket is suddenly closed by the server in
the getline loop.
Tue Apr 3 18:33:38 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* process.c (setreuid, setregid): suppress warnings.
[ruby-core:43374][Bug #6169]
Tue Apr 3 10:18:27 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* enumerator.c (inspect_enumerator): suppress uninitialized
instance variable warnings. [ruby-dev:45449][Bug #6214]
patched by no6v (Nobuhiro IMAI).
Mon Apr 2 13:25:08 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/optparse/ac.rb: autoconf-like options.
Mon Apr 2 10:34:00 2012 eregon <eregontp@gmail.com>
* string.c (rb_str_start_with, rb_str_end_with): raise an error if
an argument is not convertible to a String.
[ruby-core:40623][Bug #5536]
Mon Apr 2 03:35:25 2012 NARUSE, Yui <naruse@ruby-lang.org>
* lib/webrick/server.rb (WEBrick::GenericServer): close socket only if
the socket is not closed yet.
Sun Apr 1 23:03:18 2012 NARUSE, Yui <naruse@ruby-lang.org>
* lib/net/ftp.rb (Net::BufferedSocket): should delegate send() to @io
for Net::FTP#abort and Net::FTP#status.
Sun Apr 1 00:41:56 2012 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb: fixed the domain name in examples.
Sat Mar 31 21:39:45 2012 NARUSE, Yui <naruse@ruby-lang.org>
* lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler): dup to prevent
@timeout_info's "can't add a new key into hash during iteration".
Sat Mar 31 14:22:59 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (hash_default_value): extract from rb_hash_aref(), to be
shared with rb_hash_shift(), so that overriding Hash#default
will be respected.
Sat Mar 31 14:16:02 2012 Sokolov Yura (funny-falcon) <funny.falcon@gmail.com>
* hash.c: do not allocate st_table when it is not necessary.
Sat Mar 31 13:42:39 2012 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb (read_timeout=, open_timeout=): supported timeout.
Sat Mar 31 13:20:40 2012 Sokolov Yura (funny-falcon) <funny.falcon@gmail.com>
* hash.c: remove unnecessary checks for Qundef in hash iterations.
since hash use st_foreach_check for iterations, such checks are
needless.
Sat Mar 31 12:05:01 2012 Martin Bosslet <Martin.Bosslet@googlemail.com>
* ext/openssl/ossl_x509cert.c: Fix doc typo.
Sat Mar 31 10:13:24 2012 Sokolov Yura (funny-falcon) <funny.falcon@gmail.com>
* st.c (st_foreach_check, st_foreach): remove ancient check. This
check are from initial ordered hash commit when first entry were
created with entry->fore = entry->back = entry.
* st.c (st_delete): use real_entries in st_delete for packed tables
Sat Mar 31 07:53:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* st.c (st_foreach_check): remove the entry by replacing with never
when ST_DELETE.
* hash.c (st_foreach_safe): since table is not for VALUE, Qundef is
not special value, so use 0 instead. therefore this function can be
applied to only st_table which 0 is invalid as keys, e.g., IDs.
* hash.c: Qundef cannot be passed from st_foreach_check().
* hash.c, marshal.c, object.c, variable.c: fix callback argument types
of iterators.
Thu Mar 29 23:50:15 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* st.c (st_update): pass pointer to key to the callback function.
Thu Mar 29 16:36:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* st.c (st_update): add existing parameter to the callback function.
Thu Mar 29 16:35:32 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/test/unit.rb (terminal_width, del_status_line, put_status):
extract as methods.
Thu Mar 29 10:20:18 2012 Martin Bosslet <Martin.Bosslet@googlemail.com>
* ext/openssl/ossl_pkcs7.c: fix crash when parsing garbage data.
* test/openssl/test_pkcs7.rb: assert correct behavior for it.
Thanks to Matt Venables for reporting the issue.
[ruby-core:43250][Bug #6134]
Thu Mar 29 10:16:05 2012 NAKAMURA Usaku <usa@ruby-lang.org>
* thread_win32.c (TIME_QUANTUM_USEC): 10ms(= old setting) [experimental]
cf. [Bug #6098]
Thu Mar 29 10:12:12 2012 NAKAMURA Usaku <usa@ruby-lang.org>
* thread.c (rb_threadptr_execute_interrupts_common): use defined
TIME_QUANTUM_USEC instead of a magic number. there is no meanings
to use different values for checking interval of interruption and
thread switching limits.
cf. [Bug #6098]
Thu Mar 29 09:26:17 2012 Martin Bosslet <Martin.Bosslet@googlemail.com>
* test/openssl/test_x509cert.rb: exclude test that fails when issuing
a certificate with RSA signature and DSS1 digest for earlier
OpenSSL versions when used in conjunction with OpenSSL 1.0.1.
Thanks, Vit Ondruch, for reporting the issue.
[ruby-core:42949][Bug #6089]
Thu Mar 29 08:25:35 2012 Martin Bosslet <Martin.Bosslet@googlemail.com>
* NEWS: add note about unified behavior of encoding nil values in
instances of OpenSSL::ASN1::ASN1Data.
Thu Mar 29 07:45:36 2012 Martin Bosslet <Martin.Bosslet@googlemail.com>
* ext/openssl/ossl_asn1.c: raise TypeError when trying to encode nil
values for Primitive instances.
* test/openssl/test_asn1.rb: Assert consistent behavior when
encoding nil values: Primitives raise TypeError, Constructives
raise NoMethodError.
Fixes [ruby-core:43009][Bug #6102]
Wed Mar 28 16:39:59 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* process.c (obj2uid, obj2gid): allow strings as input user/group id.
[ruby-core:40923][Feature #5610]
Wed Mar 28 15:06:18 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* marshal.c (r_symreal): default to ASCII-8BIT for non-ascii symbols,
otherwise it should be converted to US-ASCII in rb_intern_str() if
possible. [ruby-core:43762][Bug #6209]
Wed Mar 28 08:44:24 2012 Aaron Patterson <aaron@tenderlovemaking.com>
* ext/psych/lib/psych.rb: updating version to match gem
* ext/psych/psych.gemspec: ditto
* ext/psych/lib/psych/visitors/to_ruby.rb: fixing deprecation warning
Tue Mar 27 23:44:11 2012 NAKAMURA Usaku <usa@ruby-lang.org>
* io.c (io_unread): fixed memory leak. report by nagachika via IRC.
Tue Mar 27 22:44:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (verconf.h): separate load path specific stuff from
config.h.
Tue Mar 27 22:43:40 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/Makefile.sub: fix config.h path to include.
Tue Mar 27 17:08:08 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* win32/win32.c (check_if_dir): fix memory leak.
Tue Mar 27 13:13:51 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (str_new_empty): should copy also the encoding as an
empty substring. [ruby-dev:45441][Bug #6206]
Mon Mar 26 23:43:04 2012 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb (parse227, parse228, parse229): don't use $~.
Mon Mar 26 23:34:40 2012 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb (parse227, parse228, parse229): don't use local
variables defined by named capture for other Ruby implementations
such as Rubinius.
Mon Mar 26 23:19:03 2012 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb (parse_pasv_port): refactored.
Mon Mar 26 19:49:49 2012 Shugo Maeda <shugo@ruby-lang.org>
* test/net/ftp/test_ftp.rb: add the test, which was forgotten in the
previous commit.
Mon Mar 26 19:37:27 2012 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb (parse227, parse228, parse229): refactored.
Mon Mar 26 11:46:23 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c (inspect_enumerator): show method arguments of
lazy enumerators correctly.
Mon Mar 26 13:51:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (check_if_dir, check_if_wdir): fix for Visual C++
not to use S_ISDIR(). [Feature #2408][ruby-core:26925]
* ruby.c (load_file_internal): ditto.
Mon Mar 26 11:46:01 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.c (load_file_internal): bail out if the script is a directory.
[Feature #2408][ruby-core:26925]
* win32/win32.c (rb_w32_open, rb_w32_wopen): check if the file is a
directory when access denied, to set errno to EISDIR.
Sun Mar 25 18:13:14 2012 NARUSE, Yui <naruse@ruby-lang.org>
* string.c (tr_setup_table): fix multiple non latin argument for
non latin (over 256 characters) tr-like methods.
[ruby-core:43371] [Bug #6167]
Sun Mar 25 00:46:06 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator (lazy_initialize): set the instance variable "receiver"
to include the receiver to the return value of inspect on a lazy
enumerator directly created by Enumerator::Lazy.new.
* enumerator (RETURN_LAZY): don't set the instance variable "receiver".
Sat Mar 24 23:59:00 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator (enumerator_inspect): include the original receiver and
method name of Enumerator::Lazy in the result of inspect.
[ruby-core:43345] [Bug #6159]
* enumerator (InitVM_Enumerator): don't use rb_define_alias for
some methods such as collect in order to make rb_frame_this_func()
return the correct method names.
Sat Mar 24 22:22:18 2012 Sambasiva Rao Suda <sambasivarao@gmail.org>
* time.c (time_init_1): Time.new will accept seconds as string or
int. [ruby-core:43569][Bug #6193]
Fri Mar 23 15:12:12 2012 Martin Duerst <duerst@it.aoyama.ac.jp>
* transcode.c (documentation for str_encode): Explain
that transcoding to the same encoding is a no-op
(i.e. no exceptions, no replacements,...).
[ruby-core:43557][Bug #6190]
Fri Mar 23 13:19:20 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_str_to_inum): must be ASCII compatible encoding as
well as String#hex and String#oct. [ruby-core:43566][Bug #6192]
* string.c (rb_must_asciicompat): check if ASCII compatible.
Thu Mar 22 23:14:36 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* transcode.c (str_encode_bang, encoded_dup): if nothing was
transcoded, just set encoding but leave coderange unchanged as
force_encoding. [ruby-core:43557][Bug #6190]
Thu Mar 22 22:30:44 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com>
* io.c (static int io_fflush): add the definition.
Use it in set_binary_mode_with_seek_cur().
* io.c (set_binary_mode_with_seek_cur): refactoring to split the
content into io_unread(). Fix the possibility of buffer overflow.
* io.c (io_unread): add new implementation for Windows. Previous one
caused invalid cursor position using IO#pos with OS text mode. New
one fixes the bug.
* test/ruby/test_io_m17n.rb
(TestIO_M17N#test_pos_dont_move_cursor_position): add a test for
above bug.
[ruby-core:43497] [Bug #6179]
Thu Mar 22 19:55:08 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (rb_w32_fstat, rb_w32_fstati64): convert FILETIME
to time_t directly, not to be affected by TZ unnecessarily.
* win32/win32.c (unixtime_to_filetime): convert time_t to FILETIME
simply.
Thu Mar 22 13:43:31 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/openssl/ossl_pkey_rsa.c (rsa_generate): fix argument type.
[Bug #6094]
Thu Mar 22 11:14:10 2012 NAKAMURA Usaku <usa@ruby-lang.org>
* test/ruby/test_io.rb (TestIO#test_pos_with_getc): updated.
see [ruby-core:43550]
Wed Mar 21 17:57:57 2012 NARUSE, Yui <naruse@ruby-lang.org>
* regcomp.c: Merge Onigmo 3d855b30d574536d3ae600260208c6624ae4791c.
[Bug#6143] [Bug#6144] [Bug#6145]
Wed Mar 21 17:01:55 2012 NAKAMURA Usaku <usa@ruby-lang.org>
* test/ruby/test_io.rb (TestIO#test_pos_with_getc): added.
see [Bug #6179][ruby-core:43518]
Mon Mar 19 17:18:51 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c (lazy_flat_map_func): convert the block value to
Array if it doesn't respond to each. [ruby-core:43334]
[Bug #6155]
Mon Mar 19 16:34:14 2012 Shugo Maeda <shugo@ruby-lang.org>
* enum.c (zip_i): variadic argument needs explicit cast on the
platforms where VALUE is longer than int.
Mon Mar 19 15:36:41 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c (enumerable_lazy): add an example of take and first
to the documentation. [ruby-core:43344] [Bug #6158]
add the description of the behavior when a block is given to zip
or cycle.
Mon Mar 19 15:20:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (iseq_specialized_instruction): DRY and replace chain
of if-else with switch for special instructions. based on a
patch by Vasfed. https://github.com/ruby/ruby/pull/105
Mon Mar 19 15:05:54 2012 URABE Shyouhei <shyouhei@ruby-lang.org>
* test/test_pty.rb: same as r29280, skip tests when PTY allocation
failed (that's not our fault).
Sun Mar 18 23:21:17 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (aligned_free): fix condition for free. memalign() and
posix_memalign() are not defined together normally.
Sun Mar 18 18:31:45 2012 Yuki Sonoda (Yugui) <yugui@yugui.jp>
* gc.c (aligned_malloc, aligned_free): added fallback implementations
for platforms like OSX Leopard.
Sun Mar 18 17:17:48 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big_pow): estimate result bit size more precisely.
[ruby-core:30735][Feature #3429]
Sun Mar 18 17:17:36 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (free_method_entry_i): method entry may be in
unlinked_method_entry_list. [ruby-core:43383][Bug #6171]
Sun Mar 18 15:27:31 2012 Tanaka Akira <akr@fsij.org>
* compile.c: typo fix by Run Paint Run Run.
[ruby-core:28368] [Bug #2824]
Sun Mar 18 10:01:02 2012 Kazuki Tsujimoto <kazuki@callcc.net>
* lib/profiler.rb: support calling singleton methods of
an instance of BasicObject.
Sat Mar 17 06:56:58 2012 Eric Hodel <drbrain@segment7.net>
* object.c: Fix indentation of Class#inherited example.
Sat Mar 17 01:46:05 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* string.c (trnext): fix bug with string ending with '\\'.
[ruby-dev:45374][Bug #6160]
* test/ruby/test_string.rb (TestString#test_delete): test for
above.
Fri Mar 16 20:06:24 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (trnext): should advance char-wise.
[ruby-core:43335][Bug #6156]
Fri Mar 16 17:42:05 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (block_append_gen): fix unreachable warning line number.
should warn at the code, not jump.
Fri Mar 16 17:33:08 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* enum.c (enum_take): allocate buffer array before iteration, as well
as enum_first did.
* enum.c (enum_first): remove duplication.
Fri Mar 16 14:43:18 2012 Yuki Sonoda (Yugui) <yugui@yugui.jp>
* load.c (ruby_init_ext): don't free the given pointer itself.
It is not guaranteed even that the pointer is on heap.
Fri Mar 16 14:37:57 2012 Shugo Maeda <shugo@ruby-lang.org>
* vm_eval.c (rb_mod_module_eval): fix the documentation of
class_eval to mention class variable lookup. [ruby-core:40649]
[Bug #5544]
Fri Mar 16 14:27:11 2012 Shugo Maeda <shugo@ruby-lang.org>
* vm_eval.c (rb_mod_module_eval): fix the documentation of
class_eval to mention constant lookup. [ruby-core:41718]
[Bug #5777]
Fri Mar 16 14:10:45 2012 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb (initialize): raise Net::IMAP::Error when the
connection is closed without a greeting response.
[ruby-core:40938] [Bug #5616]
Fri Mar 16 13:50:12 2012 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb (rfc822_text): ignore [] after RFC822.
[ruby-core:40945] [Bug #5620]
Fri Mar 16 12:00:42 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_insnhelper.c (argument_error): use line number at the beginning
of lambda, not the first code of its body.
[ruby-core:43314][Bug #6151]
* iseq.c (rb_iseq_first_lineno): constified.
Fri Mar 16 11:20:07 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c (lazy_take): don't enumerate an extra value.
[ruby-dev:45370] [Bug #6152]
Fri Mar 16 06:30:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* enumerator.c (lazy_zip_func): variadic argument needs explicit cast
on the platforms where VALUE is longer than int.
* enumerator.c (lazy_init_iterator): no need to check overflow twice.
Fri Mar 16 05:47:09 2012 Eric Hodel <drbrain@segment7.net>
* enumerator.c (lazy_init_iterator): Fix type error (int vs long).
Thu Mar 15 23:13:36 2012 Shugo Maeda <shugo@ruby-lang.org>
* enum.c (rb_enum_values_pack): rename from enum_values_pack, and
remove static.
* enumerator.c (lazy_init_iterator, lazy_init_yielder,
lazy_select_func, lazy_reject_func, lazy_grep_func): handle
multiple values correctly.
* enumerator.c (lazy_grep): change the behavior when a block is
given, to be consistent with Enumerable#grep.
Thu Mar 15 19:12:31 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c (lazy_zip): rescue StopIteration returned by
Enumerator#next.
Thu Mar 15 18:19:53 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c (lazy_zip, lazy_cycle): Enumerator::Lazy#{zip,cycle}
should be eager when a block is given, to be consistent with
Enumerable#{zip,cycle}.
Thu Mar 15 17:45:27 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c (InitVM_Enumerator): renamed Enumerable::Lazy to
Enumerator::Lazy.
Thu Mar 15 16:37:38 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c (enumerable_lazy): added cycle to the documentation.
Thu Mar 15 15:37:42 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parser_yylex): fix warning line number.
Thu Mar 15 15:19:38 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* enumerator.c (lazy_cycle): check argument number overflow before
creating temporary array.
Thu Mar 15 15:04:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* util.c (ruby_strtod): no need to check same digit for hexdigit
twice. [ruby-dev:45363][Bug #6146]
* parse.y (sym_check_asciionly): check ascii compatibility before
scanning for code range.
* parse.y (intern_str): set to us-ascii if ascii only.
[ruby-dev:45363][Bug #6146]
* file.c (ruby_enc_find_basename): allow NULL as alllen.
[ruby-dev:45363][Bug #6146]
Thu Mar 15 14:49:31 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_conv_enc_opts): default to original encoding.
Thu Mar 15 13:47:17 2012 NAKAMURA Usaku <usa@ruby-lang.org>
* hash.c (env_str_new, rb_f_getenv, env_fetch): use rb_str_conv_enc()
instead of rb_str_encode() to simplify the code.
Thu Mar 15 12:44:50 2012 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c, include/ruby/win32.h (rb_w32_ugetenv): new API to
accept and to return UTF-8 strings.
* win32/win32.c (rb_w32_getenv): follow above change.
* win32/win32.c (rb_w32_get_environ): returns UTF-8 environment area.
* hash.c (env_str_new, rb_f_getenv, env_fetch): follow above changes.
[Bug #5570] [ruby-core:40737]
Thu Mar 15 10:57:27 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c (lazy_cycle): add Enumerable::Lazy#cycle.
Thu Mar 15 10:31:40 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/ruby/test_arity.rb (TestArity#err_mess): use assert_raise.
Thu Mar 15 07:03:52 2012 Eric Hodel <drbrain@segment7.net>
* vm_eval.c (check_funcall): Raise ArgumentError if respond_to?
requires more than three arguments. [Bug #6000]
* test/ruby/test_object.rb (class TestObject): Test for respond_to?
requiring more than three arguments.
Thu Mar 15 06:08:06 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* include/ruby/intern.h: Add rb_check_arity, rb_error_arity [#6085]
* array.c: Use rb_check_arity / rb_error_arity
* class.c: ditto
* enumerator.c: ditto
* eval.c: ditto
* file.c: ditto
* hash.c: ditto
* numeric.c: ditto
* proc.c: ditto
* process.c: ditto
* random.c: ditto
* re.c: ditto
* signal.c: ditto
* string.c: ditto
* struct.c: ditto
* transcode.c: ditto
* vm_eval.c: ditto
* vm_insnhelper.c: ditto & implementation of rb_error_arity
* test/ruby/test_arity.rb: tests for above
Thu Mar 15 06:08:05 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* vm_insnhelper.c: improve number of arguments error in case of
optional parameters (issue #6085)
* include/ruby/intern.h: define UNLIMITED_ARGUMENTS
* test/ruby/test_arity.rb: test for above
Thu Mar 15 00:58:04 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c (enumerable_lazy): fix the documentation of
Enumerable#lazy.
Wed Mar 14 22:01:06 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c (lazy_init_iterator): break when Qundef is returned
to make obj.drop(3).take(2) work properly.
* enumerator.c (lazy_take_while): add Enumerable::Lazy#take_while.
* enumerator.c (lazy_drop): add Enumerable::Lazy#drop.
* enumerator.c (lazy_drop_while): add Enumerable::Lazy#drop_while.
* enumerator.c (InitVM_Enumerator): add Enumerable::Lazy#force as an
alias of to_a.
Wed Mar 14 19:28:40 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c (lazy_take): add Enumerable::Lazy#take.
Wed Mar 14 18:40:36 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c: use long for array indices.
Wed Mar 14 18:25:18 2012 Shugo Maeda <shugo@ruby-lang.org>
* enumerator.c: moved the comment of StopIteration.
Wed Mar 14 17:55:29 2012 NAKAMURA Usaku <usa@ruby-lang.org>
* numeric.c (flodivmod): must go through the same pass if HAVE_FMOD or
not. this is a bugfix of r35013.
Wed Mar 14 16:41:55 2012 NAKAMURA Usaku <usa@ruby-lang.org>