-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog-0.60_to_1.1
3955 lines (2210 loc) · 129 KB
/
ChangeLog-0.60_to_1.1
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
Tue Aug 12 16:02:18 1997 Yukihiro Matsumoto <matz@netlab.co.jp>
* variable.c: option variables: $-0, $-p(readonly), $-v,
$-I(load_path), $-a(readonly), $-K, $-d, $-F, $-i, $-l.
* parse.y (yylex): ignore rd (ruby document) in the code.
Mon Aug 11 12:37:58 1997 Yukihiro Matsumoto <matz@netlab.co.jp>
* re.c (Init_Regexp): $-K as alias to the $KCODE.
* io.c (Init_IO): new virtual variable $-i for the value of -i
option.
* enum.c (Init_Enumerable): include? as alias of member?
Fri Aug 8 11:16:50 1997 Yukihiro Matsumoto <matz@netlab.co.jp>
* io.c (io_foreach): now the record separator can be specified.
* io.c (io_s_readlines): new method to read in whole file (or
command output) from path.
* ext/socket/socket.c (Init_socket): recvfrom did not work.
* ext/socket/socket.c (sock_send): forgot to check nil for false
value.
Thu Aug 7 11:40:01 1997 Yukihiro Matsumoto <matz@netlab.co.jp>
* variable.c (mod_constants): lists constants defined in the
modules/classes.
* variable.c (rb_const_set): no longer warns about constant
overriding by subclasses.
* eval.c (mod_eval): does eval() on module's context. local
variables are shared with outer scope.
* object.c (Init_Object): remove private_attr/public_attr.
Wed Aug 6 14:21:36 1997 Yukihiro Matsumoto <matz@netlab.co.jp>
* object.c (mod_attr): forgot to check nil for false value.
Mon Aug 4 11:50:28 1997 Yukihiro Matsumoto <matz@netlab.co.jp>
* object.c (class_s_new): need not to specify names to create
classes (or modules) dynamically.
* variable.c (rb_class_path): scan class constants for anonymous
classes/modules to make up paths.
Wed Jul 30 08:45:12 1997 Yukihiro Matsumoto <matz@netlab.co.jp>
* eval.c (rb_eval): stop to cache const value in nodes.
Sat Jul 26 03:17:22 1997 WATANABE Hirofumi <watanabe@ase.ptg.sony.co.jp>
* numeric.c (flo_to_s): wrong .0 at end.
Sat Jul 26 00:36:36 1997 Yukihiro Matsumoto <matz@netlab.co.jp>
* eval.c (error_print): always print exception type in the
toplevel exception handler.
* string.c (str_hash): wrong hash value.
Thu Jul 24 11:05:51 1997 Yukihiro Matsumoto <matz@netlab.co.jp>
* string.c (uscore_get): proper error message for unset $_.
Wed Jul 23 09:56:55 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* object.c (obj_methods): returns list of method names of the
specified object.
* class.c (mod_instance_methods): returns list of method names of
the class instance.
Fri Jul 11 22:38:55 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* object.c (class_superclass): returns class's superclass
itself. (1.1)
* object.c (obj_type): returns object's class itself. (1.1)
* class.c (mod_included_modules): list included modules.
* object.c (class_superclass): raises error for Object.
Thu Jul 3 09:54:02 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (SETUP_ARGS): save source position, remove nd_line().
* eval.c (rb_call): replace modulo by bit-masking.
* eval.c (POP_SCOPE): force recycle scope object to reduce gc rate.
* gc.c (obj_free): aboid calling run_final() when no finalizer is set.
* eval.c (PUSH_VARS): do not allocate the dynamic scope's end-mark
object.
Wed Jul 2 14:25:07 1997 KIMURA Koichi <kkimura@pure.cpdc.canon.co.jp>
* Native mswin32 support.
Tue Jul 1 09:59:00 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970701
* parse.y (mrhs): allow rest-star(*) in right hand side.
Tue Jun 24 19:04:31 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970624
Sat Jun 20 22:22:51 1997 Michio "Karl" Jinbo <karl@marcer.nagaokaut.ac.jp>
* eval.c: freebsd 3.0 <sys/select.h> support.
Fri Jun 20 01:24:45 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970620
* gc.c: eliminate uninitilalized field of Hash, Array etc., to
avoid dumping core.
Thu Jun 19 01:29:44 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970619
* string.c (str_split_method): wrong limit.
Sat Jun 14 01:54:16 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* class.c (rb_singleton_class): no singleton for special
constants (now raises exception).
* eval.c (ruby_init): cbase in TOPLEVEL_BINDING need to be
initialized.
Sat Jun 14 01:01:16 1997 maeda shugo <shugo@po.aianet.ne.jp>
* array.c (sort_2): wrong comparison.
Sat Jun 14 00:53:44 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* hash.c (hash_foreach): safe iteration.
Fri Jun 13 14:04:56 1997 Michio "Karl" Jinbo <karl@marcer.nagaokaut.ac.jp>
* configure.in: -Bshareable option for netbsd.
Fri Jun 13 01:16:22 1997 WATANABE Hirofumi <watanabe@ase.ptg.sony.co.jp>
* io.c (pipe_open): call io_unbuffered() only for writable pipes.
Thu Jun 12 01:14:15 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970612
* ext/socket/socket.c (sock_new): use io_unbuffered().
* ext/marshal/marshal.c (w_long): compact long format, which
supports 64 bit architectures (unless longs are >32 bit size).
* ext/marshal/marshal.c: allows recursive data for marshaling.
* parse.y (rb_intern): raise exception for non-internable string.
* ext/marshal/marshal.c (marshal_load): allows direct loading from
strings.
* ext/marshal/marshal.c (marshal_dump): allows direct dump to strings.
* ext/marshal/marshal.c (marshal_dump): interface changed.
Wed Jun 11 18:26:00 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* gc.c (rb_newobj): remove needless memset().
Mon Jun 9 13:03:43 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (rb_eval): reduce condition checks from while/until loop.
* eval.c (rb_eval): wrong jump point for `next'.
Fri Jun 6 11:47:39 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* ruby.c (ruby_set_argv): initialize dln_argv0 for dln_a_out.
* ext/socket/socket.c (open_unix): display path name for exceptions.
* ruby.c (proc_options): option -S did not work well.
Fri May 30 02:14:44 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970530
* eval.c (eval): set $! properly if exception raised in eval().
* io.c (io_write): now handles non T_FILE object.
* io.c (io_defset): $< can be anything which has `write' method.
Thu May 29 15:40:22 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (eval): $@ is always an array (not string).
* pack.c (pack_unpack): avoid corrupting memory for unexpected
input strings.
Wed May 28 12:46:13 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970528
* process.c (rb_waitpid): do not block other threads.
Tue May 27 12:02:31 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (ruby_init): split initialize and processing command line
options.
* ruby.c (ruby_options): ruby_init(0, 0, envp) dumps core.
Tue May 20 18:59:45 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* variable.c (rb_ivar_set): invalid instance variable access for
built-in object raises TypeError.
Fri May 16 17:32:21 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970516
* dir.c (push_globs): was freeing non heap pointer.
* gc.c: remove some duplicated prototypes.
* ext/kconv/kconv.c: fix prototypes.
Fri May 9 11:38:59 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970509
* gc.c (obj_free): avoid free(NULL).
* eval.c (rb_check_safe_str): argument missing for TypeError().
Thu May 8 01:14:28 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* file.c (file_s_dirname): need to return "." for path without
slashes.
Wed May 7 19:18:48 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* process.c (f_fork): child processe does not inherit parent's
itimer setting on linux. call setitimer() again in the child
process.
Sat May 3 02:49:43 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* ext/curses/curses.c: modified for portability and add to the
standard distribution.
Wed Apr 30 00:34:00 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* file.c (file_s_size): returns 0 for empty files (not FALSE).
Fri Apr 25 02:17:50 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970425
* eval.c (f_load): free unused name-table.
* eval.c (f_load): copy local variable name-table.
* gc.c (obj_free): avoid free(NULL).
* eval.c (rb_eval): forgot to make link from the scope object to
NODE_SCOPE. It may crash the interpreter.
Thu Apr 24 00:35:09 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* random.c (f_srand): save old seed anyway. srand() returns no
value on some systems.
* gc.c (obj_free): avoid double free of the local variable name
table.
* parse.y (top_local_setup): modify realloc to handle offset.
Tue Apr 22 12:58:26 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970422
Thu Apr 17 00:40:51 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* configure.in (rb_cv_bsdpgrp): proper check for BSD
setpgrp/setpgrp.
Wed Apr 16 16:14:02 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (proc_call): proc called in other thread must be orphan.
Tue Apr 15 10:46:31 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970415
* gc.c (obj_free): NODE_SCOPE marked from SCOPE object.
* gc.c (gc_mark): some nodes marked wrong.
* process.c (proc_getpgrp): wrong argument
Fri Apr 14 18:32:42 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970414
Fri Apr 12 01:20:12 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* ruby.h: String pointer changed to unsigned char.
Fri Apr 11 10:27:29 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970411
* Makefile.in: create libruby.a before linking ruby.
* string.c (str_strip_bang): >0x80 characters for isspace().
* eval.c (proc_call): set safe-level temporally
* eval.c (proc_s_new): save safe-level in the proc context.
* eval.c (rb_eval): no class/module extension in safe mode.
Thu Apr 10 02:10:41 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* gc.c (gc_mark): remove some pointer checks for speeding up.
* ruby.c (ruby_options): set $0 temporally for -r option.
* eval.c: built-in security feature.
* gc.c (gc_sweep): do not free nodes during compile.
* parse.y (yycompile): set flag when compiling.
Wed Apr 9 10:19:02 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* ruby.c: forgot to include <ctype.h> for isspace().
* file.c: provide S_ISREG for some platforms.
* io.c (Init_IO): added some $< operations.
* lib/ping.rb: check host upness using TCP echo.
Tue Apr 8 00:10:15 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* io.c (arg_read): bug with 0 length input.
Mon Apr 7 11:36:16 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* ext/fcntl/fcntl.c: module for fcntl constants.
* eval.c (rb_alias): bug when original was an alias.
* parse.y (primary): syntax to access singleton class.
* eval.c (mod_public_method): method's to specify visibitily of
the class methods. make_method_{public,private} removed.
Fri Apr 4 21:43:57 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970404
* gc.c (obj_free): finalizer added for experiment.
Thu Apr 3 02:12:31 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (thread_schedule): make Fatal rise on main_thread on
deadlocks.
* eval.c (thread_join): raise ThreadError instead of Fatal, in
case of deadlock.
* regex.c (re_compile_fastmap): uninitialized local variable.
* parse.y (parse_regx): new option //[nes] to specify character
code for regexp literals. Last specified code option is valid.
* re.c (reg_s_new): additional 3rd argument to specify compiled
regexp's character code.
* re.c (reg_new_1): regexp character code can be specified for
each regexp object.
Wed Apr 2 14:51:06 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (thread_create): handle uncaught throw.
* eval.c (thread_create): halt on some deadlock conditions.
* regex.c (is_in_list): wrong result for non-mbc higher-byte
characters.
* regex.c (re_match): wrong skip for multi-byte characters.
* regex.c (re_compile_fastmap): wrong fastmap in non-mbc mode.
* hash.c (Init_Hash): hash compatible features added to ENV.
Tue Apr 1 15:24:06 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (obj_extend): remove Object#extend as an iterator which
is in experimental state, since it unveils internal singleton
classes.
Mon Mar 31 14:29:39 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970331
Sun Mar 30 19:40:57 1997 WATANABE Hirofumi <watanabe@ase.ptg.sony.co.jp>
* parse.y (terms): avoided win32 gcc's optimization bug.
Sat Mar 29 11:21:58 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* struct.c (make_struct): St[val,..] creates new structure.
Fri Mar 28 11:24:51 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (obj_make_private): new method make_method_{public,private}
to change visibility of singleton methods.
* regex.c (re_compile_pattern): enables numeric literal >= 0x80 in
the character class.
* regex.c (re_compile_pattern): enabled numeric literal >= 0x80,
in multibyte mode.
* regex.c (re_compile_fastmap): modified exantn and charset(_not)
to set fastmap for higher bytes properly.
* regex.c (is_in_list): now matches numeric literals.
Thu Mar 27 13:34:20 1997 WATANABE Hirofumi <watanabe@ase.ptg.sony.co.jp>
* pack.c (pack_unpack): extra null byte after unpacked string.
Wed Mar 26 15:20:34 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* regex.c (re_compile_pattern): register numbers must be fit in a
byte (0 <= regnum <= 0xff).
* regex.c (re_compile_fastmap): forgot to set mbchar map for
charset_not if RE_MBCTYPE is on.
* regex.c (re_compile_pattern): set list bits for multi-byte
characters for \W, \S, \D in range expression.
* object.c (obj_is_kind_of): defined that nil itself is kind of
nil. TRUE is kind of TRUE, FALSE is kind of FALSE likewise.
This change makes `obj.kind_of?(eval(obj.type))' always true.
Tue Mar 25 14:08:43 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* lib/English.rb: provides nicer English alias for the variables.
* parse.y (expr): alias $var1 $var2 makes alias of the global
variable.
Mon Mar 24 18:23:20 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970324
Thu Mar 20 22:04:59 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (mod_modfunc): forget to clear method cache.
Wed Mar 19 17:06:55 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* parse.y (program): set methods' default private/public status
correctly under eval().
* eval.c (eval): set the_class correctly while evaluating string.
Tue Mar 18 12:23:53 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (eval): yield can be called from eval().
* version 1.0-970318
* parse.y (program): regexp in condition expression should do
matching operation with $_.
* re.c (reg_regsub): wrong substitution.
Fri Mar 14 14:36:28 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* hash.c (hash_invert): returns value to key mapping of the
associative array.
* ext/socket/extconf.rb: set environment variable SOCKS_SERVER to
compile with libsocks.a.
* ext/socket/socket.c (socks_s_open): SOCKSsocket class to access
internet via SOCKS library.
* sprintf.c (f_sprintf): unsigned formats display leading double
dots for imaginary sequence of signed bit to the left.
* sprintf.c (f_sprintf): correct width and precision formatting
for big integers.
* parse.y (yylex): enables negative hex/octal numbers and `_' in
non-decimal numbers.
* sprintf.c (f_sprintf): %u added for unsigned decimal format.
Thu Mar 13 10:24:27 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* sprintf.c (f_sprintf): wrong output for bignums.
* array.c (ary_reverse_each): iterates in reverse order.
* pack.c (pack_unpack): L unpacked signed long.
* io.c (f_backquote): now returns an empty string for no output.
Wed Mar 12 10:20:30 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* ext/socks/socks.c: socket module with socks library.
Mon Mar 10 20:44:22 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* re.c (reg_regsub): \& for substitution. \`, \', and \+ are
available also.
Thu Mar 6 01:47:03 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970306
* sample/rubydb.el (gud): ruby debugger emacs interface
* lib/debug.rb: ruby debugger
* parse.y (exprs): more accurate line number display.
Wed Mar 5 21:31:46 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970305
Tue Mar 4 12:28:32 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* ruby.c (proc_options): search through RUBYPATH and PATH for
option -S.
Mon Mar 3 22:44:55 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (thread_status): returns nil for exception terminated
threads.
* eval.c (thread_value): re-raise exceptions.
Sat Mar 1 00:59:47 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (rb_eval): restore $! value after rescue clause, to
re-raise exceptions correctly.
Fri Feb 28 16:43:38 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970228
Thu Feb 27 11:23:41 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (rb_yield_0): redo raises exception
* eval.c (thread_schedule): bug in interrupt handling by rescue.
Wed Feb 26 00:55:36 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (eval): forgot to restore dynamic local variable
bindings.
Tue Feb 25 11:22:08 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* ext/aix_ld.rb: AIX dynamic load support (not tested).
* eval.c (rb_eval): wrong return value for defined? super.
* error.c (exception): more error check.
* re.c (reg_regsub): wrong substitution when sub expanded to null
string.
Fri Feb 21 13:01:47 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970221
* eval.c (f_require): volatile added. register variable was
recycled, so that GC did not mark that variable.
* object.c (Init_Object): forget to mark main object (was mostly
ok, but made trouble with early GC.)
Thu Feb 20 11:50:50 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970220
Thu Feb 20 11:25:50 1997 Yasuo OHBA <jammy@shljapan.co.jp>
* lib/date.rb: update
Thu Feb 20 08:25:57 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* parse.y (yylex): forgot tokfix() before rb_intern().
* lib/tk.rb (TkVariable): give up using trace_var.
Wed Feb 19 00:24:35 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970219
* pack.c (pack_pack): packed by null for A specifier. must be
space filled.
* pack.c (pack_unpack): bug in skipping spaces
* gc.c (xmalloc): garbage collect for every 4 Meg. allocation.
* string.c (str_split_method): limit worked wrong way.
* io.c (io_gets_method): misunderstand 0xff in binary files when
$/ == nil.
* re.c (reg_regsub): re-implement.
* ext/socket/socket.c (thread_connect): remove O_NONBLOCK, which
is not defined on some platform like NeXT.
Mon Feb 17 13:08:30 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970217
* object.c (mod_eqq): === extended for subclass check (to use case
as typecase).
Sat Feb 15 02:07:22 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* regex.c (re_compile_pattern): wrong match backref at end of pattern.
* io.c (arg_read): now works beyond end of file.
Thu Feb 13 16:21:24 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* parse.y (expr): return/yield now accept normal argument format.
* parse.y (yylex): a star in `yield *x' must not be multiplication
operator.
Wed Feb 12 15:06:44 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* time.c (time_plus): bug in simple addition.
* eval.c (thread_raise): raise exceptions from outside.
* eval.c (Init_Thread): Thread#alive? -- alias for Thread#status.
Mon Feb 10 00:38:55 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* ruby.h (Data_Make_Struct): rename macros.
Sun Feb 8 11:48:13 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* io.c (f_syscall): argument offset was wrong.
Fri Feb 7 18:01:17 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970207
* eval.c: add volatiles to avoid variable crobbering by longjmp().
* eval.c (f_raise): 1st argument can be the GlobalExit object now.
* array.c (ary_unshift): no longer accept more than 2 args.
* eval.c (f_raise): bug if 2nd argument is the exception.
Tue Feb 4 00:37:29 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970204
* eval.c (eval): check compile errors by nerrs.
* eval.c (rb_eval): check syntax error by nerrs, not by the return
value, which may be NULL.
* eval.c (compile): Do not clear errinfo.
Mon Feb 3 10:13:06 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (obj_extend): move real inclusion to Module#extend_object
to allow redfinition.
* object.c (Init_Object): Kernel class is now Module. Object class
became the true root class.
* object.c (obj_inspect): remove useless buffer.
* hash.c (any_cmp): disable interrupts and context switching.
* st.c: remove ALLOW_INTS to disable interrupt during operations.
Fri Jan 31 22:10:08 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* hash.c (hash_rehash): re-register all key-value.
Thu Jan 30 02:14:49 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* io.c (io_reopen): re-implement according to clone() way.
* io.c (io_clone): copy IO object.
* struct.c (struct_eql): compare elements by eql?.
* io.c (io_mode_flags): detect "rb", "wb" etc.
* io.h (FMODE_BINMODE): added.
* ext/socket/socket.c (Init_socket): undef BasicSocket.new
* file.c (Init_File): File.new(path[,mode])
* io.c (Init_IO): IO.new(fd[,mode])
* eval.c (rb_method_boundp): forgot to enable priv argument.
* object.c (Init_Object): remove `=~' from Kernel class.
* ext/socket/socket.c (open_inet): initialize sockaddr before
calling bind(2).
* sample/ruby-mode.el (ruby-calculate-indent): skip comment lines
Wed Jan 29 18:43:22 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (Init_Thread): DEFER_INTS during initializing threads.
* hash.c (Init_Hash): Hash#eql? checks for object identity.
* eval.c (thread_set_critical): wrong value assigned.
Mon Jan 27 16:10:51 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* io.c (io_print): remove print_on().
* eval.c (f_missing): proper error message for undefined method
without argument
Sat Jan 25 23:32:32 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* string.c (str_sub_s): false alert - sub() does not modify string.
* array.c (ary_times): negative multiplication detected
* string.c (str_times): negative multiplication detected
Fri Jan 24 10:51:39 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* time.c (time_arg): month -> 0 == "jan" == "1" == "01", little bit
confusing but wanted to conform japanese style.
* version 1.0-970124
Fri Jan 24 09:52:49 1997 WATANABE Hirofumi <watanabe@ase.ptg.sony.co.jp>
* util.c (_fixpath): supports SJIS filenames on DJGPP.
Thu Jan 23 16:52:06 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* README.EXT: update. partially translated into English.
* ext/extmk.rb.in: inherit $LDFLAGS to the final link.
* ext/socket/socket.c (Init_socket): add various constants.
Mon Jan 23 11:40:59 1997 WATANABE Hirofumi <watanabe@ase.ptg.sony.co.jp>
* eval.c (Init_Thread): allocate main_thread first to avoid crash.
Thu Jan 23 02:09:26 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* gc.c (ObjectSpace): API modified. each_object method will do all
the iteration.
* eval.c (proc_call): wrong return from nested lambda.
* ext/GD/GD.c: debugged.
Wed Jan 22 16:12:25 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970122
* gc.c (gc_mark): forgot to mark match->str.
* ext/GD/GD.c: GD interface module.
* eval.c (PUSH_BLOCK): wrong value pushed as the block level.
Mon Jan 20 14:01:31 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (thread_run): no context switch in the critical section.
Mon Jan 20 09:40:59 1997 WATANABE Hirofumi <watanabe@ase.ptg.sony.co.jp>
* utils.c: supports 8+3 filenames
Sat Jan 18 01:23:03 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970118
* regex.c (PATFETCH): need cast to unsigned char.
* io.c (io_ctl): bug in case when arg is not a string.
* lib/tk.rb: forgot that Kernel#type returns the class name now.
* regex.c (re_search): "abc\n" =~ "^$" should not match.
Fri Jan 17 12:31:37 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970117
* ruby.c (ruby_options): constant PLATFORM, which is in the {cpu}-{os}
form, defined.
* configure.in: platform information embedded in the interpreter.
* regex.c (re_search): /^$/ did not match to "" by wrong exit condition.
* lib/thread.rb: re-write Mutex/Queue based on Thread.critical.
* eval.c (thread_set_critical): remove Thread.exclusive, add
Thread.critical = TRUE/FALSE instead.
* re.c (reg_search): re-compile pattern if needed
* regex.c (PATFETCH): do translate at compile time
Thu Jan 16 00:49:10 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* gc.c (gc_mark_frame): forgot to mark frame->cbase.
* regex.c (re_compile_pattern): /a$|b)/ causes error.
* regex.c (re_compile_pattern): /(^|b)/ causes error.
* version 1.0-970116
* re.c (Init_Regexp): set RE_CONTEXTUAL_INVALID_OPS flag.
Tue Jan 14 02:09:06 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (proc_call): Proc#callをイテレータとして呼んだ時に対応
* configure.in: nextstep対応?
* eval.c (rb_eval): a[b]=cで無駄な配列を割り当てない
* eval.c (f_send): イテレータとして呼ばれたらイテレータとしてメソッ
ドを呼ぶ.
* string.c (str_new4): match共有用の生成関数
* re.c (reg_search): matchの実体(文字列)をマッチを行った文字列と
copy-on-writeで共有
* string.c (str_hash): toupperをかける条件が違っていた
* array.c (sort_2): FixnumとStringを特別扱いして高速化
Mon Jan 13 11:03:53 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* eval.c (thread_create): threadが生成されるまで割込みを設定しない
* eval.c (Init_Thread): 割込みタイミングを100msecに
Sat Jan 11 00:17:05 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* regex.c (re_search): マッチに失敗する場合があった(本当に直ったか?)
* io.c (io_ioctl,io_fcntl): 第2引数を省略可能に
* io.c (io_ioctl,io_fcntl): 戻り値がIOだった.整数(システムコール
の戻り値)を返すようにした.
* io.c (io_ctl): 引数が整数の時に対応
* io.c (io_fcntl): file.cから移動
Fri Jan 10 17:01:47 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-970110
* ext/socket/socket.c (thread_connect): open(connect(2))で他の
threadをブロックしないように
* eval.c (thread_create): exitでないときにexitだと思い込む
Mon Jan 6 17:42:22 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* string.c (str_sub_s): 文字列長より長いoffsetの検出
* regex.c (re_search): 空にマッチするパターン後の$で失敗
Thu Jan 2 16:36:23 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* file.c (file_reopen): Fileのreopen(pathまたはIOで指定).
* io.c (io_reopen): IOのreopen(IOで指定) -- change classつき
Wed Jan 1 11:09:01 1997 Yukihiro Matsumoto <matz@caelum.co.jp>
* io.c (f_select): timeoutでnilを返す
Fri Dec 27 13:06:44 1996 Yukihiro Matsumoto <matz@caelum.co.jp>
* file.c (file_s_open): サブクラスではそのクラスのインスタンスを返
すように.
Fri Dec 27 08:58:27 1996 <ono@isl.nara.sharp.co.jp>
* numeric.c (flo_to_s): index()を使わない.strstr()に.
Thu Dec 26 01:34:17 1996 Yukihiro Matsumoto <matz@caelum.co.jp>
* lib/tk.rb: placeが使えるように
* pack.c (endian): マクロDYNAMIC_ENDIANを指定すると実行時にendian
を判定するように.
* eval.c (thread_alloc): 初期化忘れのメンバがあった.
Wed Dec 25 00:33:19 1996 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 1.0-961225
* io.c (Init_IO): newを無効化
* lib/tkthcore.rb: tk_call "global $foo; set foo 5"などもできるように
* eval.c (thread_restore_context): $~, $_でスタックを壊していた
* process.c (rb_waitpid): threadに一応対応
Tue Dec 24 15:20:58 1996 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.99.4-961224
* configure.in: charがunsignedかどうかもチェック
* regex.c (SIGN_EXTEND_CHAR): __CHAR_UNSIGNED__にも対応
* pack.c (pack_unpack): 明示的にsigned charを指定.
Mon Dec 23 14:41:23 1996 Yukihiro Matsumoto <matz@caelum.co.jp>
* ruby.c (load_file): 標準入力からのスクリプトで一時ファイルを使わ
ないように
* object.c (f_integer): `0x', `0'などでbaseを解釈するように.
Fri Dec 20 01:44:39 1996 Yukihiro Matsumoto <matz@caelum.co.jp>
* Makefile.in (flock.o): flockに対応
Thu Dec 19 20:13:32 1996 Yukihiro Matsumoto <matz@caelum.co.jp>
* version 0.99.4-961219
Wed Dec 18 00:06:48 1996 Yukihiro Matsumoto <matz@caelum.co.jp>
* glob.c (glob_filename): strrchrがマクロの場合に対応
* configure.in: <sys/select.h>をチェック
* ext/kconv/kconv.c: 1.62ベースに
* ext/kconv/kconv.c: Kconvモジュール
* string.c (str_substr): lenが元の文字列より長い時に対応
* parse.y (iterator): 「$bar do .. end」などは許さないように
* parse.y (iterator): FID(foo!,foo?)をdo形式のイテレータにできる.