2004-09-30
3 lines of code changed in:
* ext/tcltklib/tcltklib.c (ip_init): bug fix
* ext/tk/tkutil.c (get_eval_string_core): accept a Regexp object
* ext/tk/lib/multi-tk.rb: fix bug on 'exit' operation
* ext/tk/lib/tk/text.rb: 'tksearch' accepts a Regexp object as a
matting pattern argument
133 lines of code changed in:
* array.c (rb_ary_delete): comparison may change the capacity.
[ruby-dev:24348]
* array.c (rb_ary_fill): fill should honor length argument.
[ruby-dev:24346]
* array.c (rb_ary_replace): should not use ptr from shared array.
[ruby-dev:24345]
* ext/socket/socket.c (s_accept): don't retry for EWOULDBLOCK.
[ruby-talk:113807]
* array.c (flatten): element size might change during comparison.
[ruby-dev:24343]
132 lines of code changed in:
2004-09-29
3 lines of code changed in:
* enum.c (sort_by_i): internally used object must not be changed
outside. [ruby-dev:24368]
6 lines of code changed in:
add ML reference.
1 lines of code changed in:
* eval.c (rb_call0): invoke finalizers periodically.
* gc.c (gc_sweep): defer running finalizers.
* gc.c (rb_gc_finalize_deferred): run deferred finalizers.
75 lines of code changed in:
2004-09-27
3 lines of code changed in:
* parse.y [ripper]: missing ';'.
5 lines of code changed in:
* intern.h, struct.c (rb_struct_s_members, rb_struct_members): public
accessors. [ruby-dev:24342]
* marshal.c (w_object, r_object0): use accessors.
28 lines of code changed in:
2004-09-26
3 lines of code changed in:
synchronized with date2 3.6.1
81 lines of code changed in:
* hash.c: iterator functions for hash_foreach() should return enum
st_retval.
24 lines of code changed in:
* struct.c (rb_struct_s_members): wrong call of struct_members.
[ruby-dev:24333]
* eval.c (proc_invoke): propagate DVAR_DONT_RECYCLE on termination
to avoid double call to rb_gc_force_recycle(). [ruby-dev:24311]
36 lines of code changed in:
2004-09-24
3 lines of code changed in:
* parse.y (rb_parser_append_print): should handle prelude.
[llama@u01.gate0]
* parse.y (rb_parser_while_loop): ditto.
* array.c (rb_ary_subseq): original object might be modified after
sharing data creation. [ruby-dev:24327]
* array.c (rb_ary_replace): ditto.
* array.c (ary_make_shared): freeze shared array. [ruby-dev:24325]
* struct.c (struct_members): always check struct size and size of
members list in the class. [ruby-dev:24320]
* string.c (rb_str_sub_bang): check if string is not modified
during iteration. [ruby-dev:24315]
196 lines of code changed in:
* ext/ripper/Makefile.dev: removed.
* ext/ripper/ripper.rb.in: moved to lib/ripper/core.rb.in.
* ext/ripper/lib/ripper/core.rb: new file.
* ext/ripper/lib/ripper/core.rb.in: new file.
* ext/ripper/tools/generate-ripper_rb.rb: change comment.
* test/ripper/*.rb: on_scan removed.
* test/ripper/*.rb: event name changed: on__ -> on_.
513 lines of code changed in:
* eval.c: remove debug print.
0 lines of code changed in:
* hash.c (rb_hash_rehash): replace st_foreach() by its deep
checking counterpart. [ruby-dev:24310]
76 lines of code changed in:
* parse.y [ripper]: on__scan event removed.
* parse.y [ripper]: event name is changed: on__XXX -> on_XXX.
* ext/ripper/eventids2.c: ditto.
* ext/ripper/ripper.rb.in: ditto.
* ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
* ext/ripper/lib/ripper/tokenizer: ditto.
* ext/ripper/lib/ripper/filter: new file.
* sample/ripper/colorize.rb: new file.
* sample/ripper/strip-comment.rb: new file.
349 lines of code changed in:
* hash.c (hash_alloc): was using tbl pointer without
initialization.
7 lines of code changed in:
* hash.c (rb_hash_rehash): add iteration check. [ruby-dev:24301]
* st.c (st_foreach): add deep check.
* hash.c (rb_hash_fetch): returns KeyError instead of IndexError.
* hash.c (env_fetch): ditto.
101 lines of code changed in:
* win32/win32.c (rb_w32_call_handler): workaround for Ctrl-C.
5 lines of code changed in:
2004-09-22
3 lines of code changed in:
* parse.y: remove global variables ruby_eval_tree and
ruby_eval_tree_begin.
* array.c (rb_ary_collect_bang): element size might change during
comparison. [ruby-dev:24300]
* array.c (rb_ary_reject_bang): ditto. [ruby-dev:24300]
* array.c (rb_ary_eql): ditto. [ruby-dev:24300]
94 lines of code changed in:
Add documentation to fork()
16 lines of code changed in:
should use 'c' for 'unsigned char ref'.
2 lines of code changed in:
* enum.c (enum_sort_by): do not use qsort directly. use
rb_ary_sort_bang() instead. [ruby-dev:24291]
* enum.c (enum_sort_by): pedantic type check added.
[ruby-dev:24291]
* hash.c (rb_hash_foreach_iter): check iter_lev after each
iteration. [ruby-dev:24289]
* array.c (rb_ary_and): element size might change during
comparison. [ruby-dev:24290]
* array.c (rb_ary_or): ditto. [ruby-dev:24292]
* array.c (rb_ary_equal): wrong fix. [ruby-dev:24286]
232 lines of code changed in:
* ext/ripper/lib/ripper/tokenizer.rb: fix typo.
4 lines of code changed in:
* test/ripper/test_scanner_events.rb: tokens must be reordered.
* ext/ripper/lib/ripper/tokenizer.rb: ditto.
64 lines of code changed in:
* parse.y [ripper]: do not delay dispatching.
* ext/ripper/lib/ripper/tokenizer.rb: sort tokens by right order.
43 lines of code changed in:
* ext/ripper/MANIFEST: add lib/ripper/tokenizer.rb.
1 lines of code changed in:
* ext/ripper/lib/ripper/tokenizer.rb: new file.
11 lines of code changed in:
* test/ripper/test_scanner_events.rb: test #lineno and #column.
63 lines of code changed in:
* parse.y [ripper]: delayed heredocument events should be dispatched after EOF.
8 lines of code changed in:
* parse.y [ripper]: adjust lineno and columns for multi-line strings.
* parse.y [ripper]: delay heredocument events until seeing end-of-line.
* parse.y [ripper]: event on__heredoc_contentn -> on__tstring_content.
* ext/ripper/eventids2.c: ditto.
* ext/ripper/lib/ripper.rb: sync with eventids2.c.
* test/ripper/test_scanner_events.rb: test it.
* ext/ripper/tools/generate-ripper_rb.rb: show basename of input.
* ext/ripper/Makefile.dev: support objdir build.
104 lines of code changed in:
* parse.y [ripper]: remove Ripper#pos.
* parse.y [ripper]: Ripper#column should return the column of the current token.
8 lines of code changed in:
* parse.y [ripper]: unify old_lex_p and token_head.
* test/ripper/test_scanner_events.rb: now \r\n is saved correctly.
* parse.y: new macro lex_goto_eol() for next change.
87 lines of code changed in:
* parse.y [ripper]: adjust line number for heredoc. [ruby-dev:24272]
22 lines of code changed in:
2004-09-20
3 lines of code changed in:
* ext/ripper/ripper.rb.in: new const Ripper::PARSER_EVENT_TABLE.
* ext/ripper/ripper.rb.in: new const Ripper::SCANNER_EVENT_TABLE.
* ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
259 lines of code changed in:
* test/ripper/test_scanner_events.rb: test spaces before heredoc mark.
27 lines of code changed in:
* parse.y [ripper]: spaces before heredoc marker was lost.
* keywords: rb_reserved_word() should be defined only in ruby core.
* lex.c: sync with keywords.
* ext/ripper/ripper.rb.in (parse): fix typo.
* ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
26 lines of code changed in:
* ext/zlib/zlib.c (gzfile_read_raw): call readpartial at first.
(Zlib::GzipReader#readpartial): new method.
124 lines of code changed in:
* parse.y: add prototypes for Microsoft compiler.
* ext/ripper/depend (parse.obj): lex.c exists at hdrdir.
* {bcc32,win32,wince}/Makefile.sub (YACC, YFLAGS, parse.c):
use bison.
19 lines of code changed in:
* array.c (rb_ary_delete): element comparison might change array
size. [ruby-dev:24273]
* parse.y: make ruby parser reentrant. merge ripper parser to the
real one. this change makes ruby require bison.
* file.c (rb_file_truncate): clear stdio buffer before truncating
the file. [ruby-dev:24191]
* ext/digest/digest.c: use rb_obj_class() instead of CLASS_OF
which might return singleton class. [ruby-dev:24202]
566 lines of code changed in:
* ext/tk/lib/multi-tk.rb: improve exit operation
71 lines of code changed in:
2004-09-17
3 lines of code changed in:
* ext/tcltklib/tcltklib.c: fix SEGV when (thread_)vwait or (thread_)tkwait
* ext/tk/lib/tk.rb: add alias wait_window to wait_destroy
* ext/tk/lib/multi-tk.rb: support calling 'mainloop' on slave interpreters
(however, the 'real' eventloop must be run on the Default Master IP)
* ext/tk/lib/remote-tk.rb: follow the changes of ext/tk/lib/multi-tk.rb
* ext/tk/sample/remote-ip_sample2.rb: ditto
* ext/tk/sample/tkoptdb-safeTk.rb: ditto
586 lines of code changed in:
added 'const char *' to use the type specifier 'S' instead of 'char *'.
3 lines of code changed in:
2004-09-16
3 lines of code changed in:
* lib/webrick/cgi.rb (WEBrick::CGI#start): should set REMOTE_USER
to request.user attribute.
* lib/webrick/httpservlet/filehandler.rb
(WEBrick::HTTPServlet::FileHandler#initialize): should expand
the pathname of document root directory.
11 lines of code changed in:
2004-09-15
3 lines of code changed in:
* ext/tk/lib/tkoptdb-safeTk.rb: fix a bug depend on the changes of MultiTkIp
8 lines of code changed in:
* ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string was en-bugged by the
previous changes.
49 lines of code changed in:
Add simple formatter to ri
76 lines of code changed in:
* parse.y [ripper]: Add rdoc.
55 lines of code changed in:
* parse.y [ripper]: space event is on__sp, not on__lwsp. [ruby-dev:24257]
* ext/ripper/eventids2.c: ditto.
* ext/ripper/lib/ripper.rb: ditto.
* ext/ripper/depend (ripper.o): No action is needed. [ruby-dev:24260]
* ext/ripper/depend: Borland make does not accept pipes in Makefile rules. [ruby-dev:24589]
* ext/ripper/depend: separate rules for developpers.
* ext/ripper/Makefile.dev: new file.
* ext/ripper/MANIFEST: add Makefile.dev.
* ext/ripper/tools/generate-eventids1.rb: read from file, not stdin.
* ext/ripper/extconf.rb: clean ripper.E.
* ext/ripper/tools/generate-ripper_rb.rb: #include ids1/ids2 function was lost.
* ext/ripper/tools/generate-ripper_rb.rb: SCANNER_EVENTS wrongly contained parser events.
* ext/ripper/lib/ripper.rb: ditto.
140 lines of code changed in:
2004-09-14
3 lines of code changed in:
* ext/tcltklib/tcltklib.c: fix SEGV
* ext/tk/lib/multi-tk.rb: improve safe-level handling of argument proc
* ext/tk/sample/multi-ip_sample.rb: rename of old 'safe-tk.rb'
* ext/tk/sample/safe-tk.rb: new sample script
249 lines of code changed in:
* ext/openssl/ossl_x509name.c (ossl_x509name_to_s): add optional
second argument to specify the output format (see also
X509_NAME_print_ex).
* ext/openssl/ossl_x509name.c (ossl_x509name_init): new constants:
OpenSSL::X509::Name::COMPAT, OpenSSL::X509::Name::RFC2253,
OpenSSL::X509::ONELINE, OpenSSL::X509::MULTILINE.
* ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name::RFC2253DN):
new module to provide the parse for RFC2253 DN format.
* ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name.parse_rfc2253):
new method to parse RFC2253 DN format.
232 lines of code changed in:
* eval.c (blk_copy_prev): need frame_dup(). [ruby-dev:24103]
22 lines of code changed in:
* ext/tk/lib/multi-tk.rb: MultiTkIp.new_master and new_slave accept
safe-level value argument
81 lines of code changed in:
* win32/win32.c (rb_w32_getpid): don't need to use _getpid() on
mswin32 and mingw32.
6 lines of code changed in:
* object.c (nil_inspect): fix typo.
4 lines of code changed in:
ChangeLog
1 lines of code changed in:
* ext/ripper/depend: (nmake hack) prepend "./" to ripper.c to avoid {$(srcdir)}.
8 lines of code changed in:
* ext/ripper/tools/list-parse-event-ids.rb: does not use getopts.
* ext/ripper/tools/list-scan-event-ids.rb: ditto.
26 lines of code changed in:
* ext/Setup: add ripper.
* ext/Setup.atheos: ditto.
* ext/Setup.dj: ditto.
* ext/Setup.emx: ditto.
* ext/Setup.nt: ditto.
* ext/Setup.x68: ditto.
20 lines of code changed in:
* ext/ripper: ripper extention added.
* ext/ripper/MANIFEST: new file.
* ext/ripper/README: new file.
* ext/ripper/depend: new file.
* ext/ripper/extconf.rb: new file.
* ext/ripper/eventids2.c: new file.
* ext/ripper/ripper.rb.in: new file.
* ext/ripper/lib/ripper.rb: new file.
* ext/ripper/test/check-event-arity.rb: new file.
* ext/ripper/test/check-event-coverage.sh: new file.
* ext/ripper/test/check-scanner-event-coverage.rb: new file.
* ext/ripper/test/list-called-events.rb: new file.
* ext/ripper/test/src_rb: new file.
* ext/ripper/test/validate.rb: new file.
* ext/ripper/tools/generate-eventids1.rb: new file.
* ext/ripper/tools/generate-param-macros.rb: new file.
* ext/ripper/tools/generate-ripper_rb.rb: new file.
* ext/ripper/tools/list-parse-event-ids.rb: new file.
* ext/ripper/tools/list-scan-event-ids.rb: new file.
* ext/ripper/tools/preproc.rb: new file.
* ext/ripper/tools/strip.rb: new file.
* test/ripper: ripper tests added.
* test/ripper/dummyparser.rb: new file.
* test/ripper/test_parser_events.rb: new file.
* test/ripper/test_scanner_events.rb: new file.
3271 lines of code changed in:
* ext/tcltklib/tcltklib.c: improve control of preserv/release tcltkip
* ext/tcltklib/tcltklib.c: store original 'exit' command
* ext/tk/tkutil.c: fix(?) SEGV
216 lines of code changed in:
2004-09-13
3 lines of code changed in:
* parse.y: fix file header.
7 lines of code changed in:
* parse.y: ripper merged.
* lex.c: ditto.
* keywords: ditto.
2714 lines of code changed in:
* util.c (ruby_strdup): remove unnecessary code. (xmalloc never
returns NULL.)
* util.c (ruby_getcwd): fix memory leak on failure.
12 lines of code changed in:
2004-09-12
3 lines of code changed in:
* ext/tcltklib/tcltklib.c: add TclTkIp#allow_ruby_exit? and allow_ruby_exit=
* ext/tk/lib/multi-tk.rb: ditto.
* ext/tk/lib/remote-tk.rb: ditto.
* ext/tcltklib/MANUAL.euc: ditto.
* ext/tcltklib/MANUAL.eng: ditto.
* ext/tcltklib/tcltklib.c: fix some reasons of SEGV
* ext/tk/tkutil.c: ditto.
* ext/tk/lib/multi-tk.rb: ditto.
* ext/tk/lib/tk/timer.rb: ditto.
1018 lines of code changed in:
2004-09-11
3 lines of code changed in:
Fix up cross-file class merging
11 lines of code changed in:
* ext/tcltklib/tcltklib.c (lib_merge_tklist): fix suspicious
pointer conversion.
6 lines of code changed in:
* bcc32/Makefile.sub: bccwin32 port starts to use RTL dll.
(need to rebuild all) [ruby-dev:24138]
* win32/win32.{h,c}: ditto.
15 lines of code changed in:
* lib/fileutils.rb (mkdir_p): should pass mode argument to Dir.mkdir. [ruby-dev:24242]
* test/fileutils/test_fileutils.rb: test it.
16 lines of code changed in:
2004-09-10
3 lines of code changed in:
James Buck's patch for call-seq
11 lines of code changed in:
* ext/tcltklib/tcltklib.c (ip_init): change flag value for setting 'argv' and 'argv0' variable
* ext/tk/lib/remote-tk.rb: follow changes of multi-tk.rb
43 lines of code changed in:
2004-09-09
3 lines of code changed in:
Allow spaces around parameter to define_method_under
7 lines of code changed in:
* ext/stringio/stringio.c (strio_write): zero fill a gap if exsts.
[ruby-dev:24190]
15 lines of code changed in:
2004-09-08
3 lines of code changed in:
* ext/tcltklib/tcltklib.c (ip_init): cannot create a IP at level 4
* ext/tk/lib/multi-tk.rb: improve 'exit' operation, security check, and error treatment
* ext/tk/lib/multi-tk.rb: allow a trusted slave IP to create slave IPs.
* ext/tk/lib/tk/listbox.rb: add TkListbox#value, value=, clear, and erase
* ext/tk/lib/tk/text.rb: add TkText#clear and erase
277 lines of code changed in:
don't modify $/
6 lines of code changed in:
test_ungetc_paragraph: restore $/.
12 lines of code changed in:
add test for [ruby-dev:24060], [ruby-dev:24065], [ruby-dev:24103],
[ruby-dev:24190], [ruby-dev:24191], [ruby-dev:24194], [ruby-dev:24197],
[ruby-dev:24202], [ruby-dev:24213], [ruby-dev:24223] and [ruby-dev:24228].
110 lines of code changed in:
2004-09-07
3 lines of code changed in:
* {bcc32,win32,wince}/Makefile.sub (config.h): add fcntl.
* win32/win32.[ch] (fcntl): ditto.
* win32/win32.c (rb_w32_connect): support nonblocking mode.
* ext/socket/socket.c (wait_connectable, ruby_connect): support
nonblocking connect on various platforms.
107 lines of code changed in:
* ext/tk/lib/tk/menu.rb(TkOptionMenubutton#insert): call correct method
5 lines of code changed in:
2004-09-06
3 lines of code changed in:
* eval.c (cvar_cbase): singletons should refer outer cvar scope.
[ruby-dev:24223]
* eval.c (rb_load): should preserve previous ruby_wrapper value.
[ruby-dev:24226]
10 lines of code changed in:
2004-09-04
3 lines of code changed in:
* eval.c (cvar_cbase): class variables cause SEGV in
instance_eval() for fixnums and symbols. [ruby-dev:24213]
8 lines of code changed in:
* struct.c (make_struct): remove redefining constant when
conflict. [ruby-dev:24210]
43 lines of code changed in:
* ext/tk/lib/tk.rb: Tk.after makes TkCore::INTERP.tk_cmd_tbl grow [ruby-dev:24207]
19 lines of code changed in:
* ext/tcltklib/tcltklib.c: fix typo [ruby-talk:111266]
* ext/tk/lib/tk/text.rb: fix typo
* ext/tk/lib/multi-tk.rb: improve safe-level treatment on slave IPs
207 lines of code changed in:
2004-09-03
3 lines of code changed in:
* ext/extmk.rb (extmake): extact target prefix from Makefiles.
* ext/extmk.rb: already built-in libraries satisfy dependencies.
[ruby-dev:24028]
15 lines of code changed in:
2004-09-01
4 lines of code changed in:
* ext/tk/lib/tk/spinbox.rb: fix typo
5 lines of code changed in:
* process.c (rb_proc_exec): label cannot precede variable declarations.
5 lines of code changed in: