2003-06-30
3 lines of code changed in:
* eval.c (mnew): ignore metaclasses have no influence, for rklass.
[ruby-talk:74706]
9 lines of code changed in:
Bug in '/' fixed by Tadashi Saito.
4 lines of code changed in:
import drb-2.0.4 (use LocalJumpeError#reason)
8 lines of code changed in:
2003-06-28
3 lines of code changed in:
* configure.in (rb_cv_stack_grow_dir): check stack growing direction.
* eval.c (rb_thread_restore_context): prior configuration macro.
* gc.c (ruby_stack_length): always return the address of lower edge.
* gc.c (rb_gc_mark_locations): remove margin. [ruby-dev:20462]
* gc.c (rb_gc, Init_stack): prior configuration macro.
* gc.c (Init_stack): add safety margin.
82 lines of code changed in:
* string.c (rb_str_split_m): remove white spaces on the head of
the last element, when limit is specified. [ruby-talk:74506]
7 lines of code changed in:
Changed according to Tadashi Saito's advice.
4 lines of code changed in:
1.From Tadashi Saito's advice
to_parts changed to split,assign removed, ** added,bugs in infinite? & nozero? fixed.
2.Rounding functionalities added
mode now accepts rounding mode.
round accepts second argument for Bankers' rounding.
735 lines of code changed in:
2003-06-27
3 lines of code changed in:
* io.c (io_fflush): need to check if closed after thread switch.
[ruby-dev:20351]
* io.c (fptr_finalize): ditto.
* string.c (rb_str_rindex_m): fixed wrong fix. should move backward
first only when matching from the end.
21 lines of code changed in:
2003-06-26
3 lines of code changed in:
* class.c (class_instance_method_list): get rid of warning about
arguement type mismatch, and inline method_list().
[ruby-core:01198]
27 lines of code changed in:
tk.rb :
* add and modify :
TkWidget.database_class, TkWidget.database_classname,
TkWidget#database_class, TkWidget#database_classname
* instances of a subclass of TkToplevel or TkFrame are
created with ":class=>subclass" option as default.
For example, the followings create similar objects.
(1) TkFrame.new(:class=>'XXX')
(2) class XXX < TkFrame; end; XXX.new
sample/tkoptdb.rb :
* add new part of sample script
154 lines of code changed in:
* class.c (rb_generic_class_instance_methods): merge argument
check (and warning) into one function; following DRY principle.
[ruby-core:01193]
24 lines of code changed in:
tkcanvas.rb :
* Although requiring manual control of GC, memory eating problem
of TkCanvas Items is fixed. Probably, a time when GC should run
is only after removing many canvas items. GC's cost is large
and the man who knows proper timing to start GC is the man who
create the script. So, Ruby/Tk doesn't start GC automatically.
tktext.rb :
* add some methods and bug fix
tk.rb :
* add widget destroy hook binding to TkBindTag::ALL
128 lines of code changed in:
2003-06-25
3 lines of code changed in:
* variable.c (autoload_delete): should delete Qundef from iv_tbl.
(ruby-bugs-ja PR#504)
11 lines of code changed in:
tk.rb :
* TkToplevel, TkFrame, TkPanedwindow, TkOptionDB : bug fix
* TkOptionDB : make it more secure to use procs defined on resourceDB
sample/tkoptdb.rb, sample/resource.ja, sample/resource.en :
* sample script how to use TkOptionDB.
resource.ja and resource.en are samples of resource definition file
which are read by tkoptdb.rb.
203 lines of code changed in:
* lib/yaml/types.rb: replaced Kernel::Hash reference with Object::Hash
from [ruby-talk:74270]
6 lines of code changed in:
* eval.c (rb_yield_0): show yielded block position not only yielding
point. [ruby-dev:20441]
17 lines of code changed in:
* lib/net/http.rb (HTTPHeader#proxy_basic_auth): missing `@'.
6 lines of code changed in:
* config.guess: have wrongly returned "alphaev56-unknown-linux-" on Linux/Alpha.
7 lines of code changed in:
2003-06-24
3 lines of code changed in:
* configure.in: always add -mieee for gcc/alpha. [ruby-dev:20429]
12 lines of code changed in:
* array.c (rb_ary_unshift_m): need to check number of arguments.
[ruby-talk:74189]
11 lines of code changed in:
* io.c (io_close): missing prototype.
* ext/socket/socket.c (bsock_do_not_rev_lookup_set): ditto.
* ext/win32ole/win32ole.c (foletype_guid, foletype_progid): ditto.
* error.c (syserr_initialize): length argument of sprintf() is an int.
16 lines of code changed in:
* MANIFEST: add wince files.
* ext/tk/MANIFEST: add sample/tkmenubutton.rb.
17 lines of code changed in:
tk.rb :
* TkRoot and TkToplevel : bug fix
23 lines of code changed in:
sorry, typo again.
1 lines of code changed in:
typo
1 lines of code changed in:
* dir.c (find_dirsep): get rid of warnings.
* eval.c (error_print): temporary value might be disposed by GC.
* hash.c (env_has_value, env_index): should not increment NULL.
* io.c (io_read, rb_io_sysread): not read when length is 0.
* io.c (rb_io_reopen): ensure initialized IO.
* io.c (rb_io_init_copy): sychronize file pointer.
* io.c (rb_io_s_pipe): make exception proof.
* string.c (rb_str_rindex_m): Fixnum 0 matched end of string.
75 lines of code changed in:
* io.c (rb_open_file): initialize flags.
4 lines of code changed in:
* string.c (rb_str_upto): generate sequence according to "succ"
order. formerly check was done by dictionary order.
[ruby-talk:74138]
* string.c (rb_string_value): fill constant empty string along
with setting ELTS_SHARED if str->ptr is NULL. [ruby-core:01179]
* string.c (rb_string_value_ptr): ditto.
* string.c (rb_check_string_type): ditto.
* string.c (str_gsub): move END(0) check before mbclen2().
* string.c (scan_once): reduce END(0) check.
* io.c (rb_io_initialize): accept fixnum mode.
* eval.c (error_print): replace strchr() by memchr(), einfo may
contain "\0".
* pack.c (pack_unpack): range check for "@" move; initialize check
for "m".
* error.c (syserr_initialize): avoid buffer overflow.
* file.c (rb_file_s_readlink): expand buffer until readlink
succeed.
113 lines of code changed in:
2003-06-23
3 lines of code changed in:
* time.c (time_arg): initialize v[6] even when argc is 10 to
avoid valgrind error.
6 lines of code changed in:
tk.rb :
* TkRoot.new and TkToplevel.new accept Wm commands as elements
of a hash argument.
e.g. TkRoot.new(:title=>'App Title')
TkToplevel.new(:parent=>Tk.root, :title=>'XXX', :class=>'ZZZ')
* TkMenu :: add some methods
* TkOptionMenubutton :: bug fix
sample/tktimer2.rb
* add comments about the usage of a TkTimer object.
sample/tkmenubutton.rb
* sample of TkMenubutton and TkOptionMenubutton
165 lines of code changed in:
typo in date, reported by daz.
2 lines of code changed in:
* eval.c (proc_invoke): forgot "break";
1 lines of code changed in:
* eval.c (proc_invoke): should not propagate distination tag if
tag is already handled in this level. (ruby-bugs-ja PR#501)
5 lines of code changed in:
* object.c (str_to_id): check for empty string before intern.
[ruby-talk:74006]
15 lines of code changed in:
tk.rb :
* TkRoot.new and TkToplevel.new accept Wm commands as elements
of a hash argument.
e.g. TkRoot.new(:title=>'App Title')
TkToplevel.new(:parent=>Tk.root, :title=>'XXX', :class=>'ZZZ')
sample/tktimer2.rb
* add comments about the usage of a TkTimer object.
52 lines of code changed in:
2003-06-21
3 lines of code changed in:
* object.c (rb_to_id): use rb_str_intern() instead of rb_intern()
directly, for sanity check.
7 lines of code changed in:
Ruby/Tk libraries except tk.rb :
* remove direct-accesses to a TkComm::INTERP
* remove direct-accesses to a TkComm::INITIALIZE_TARGETS
* use TkINTERP_SETUP_SCRIPTS constant for setting up the interpreter
tcltklib.c :
* support to create a safe interpreter with safe-Tk ( Tk8.x )
you can test it by the following
---------------------------------------------
require 'tk'
safeip = Tk::INTERP._eval('::safe::interpCreate')
Tk::INTERP._eval('::safe::loadTk ' + safeip)
Tk::INTERP._eval(safeip + ' eval button .b -text SlaveIP -command exit')
Tk::INTERP._eval(safeip + ' eval pack .b')
Tk.mainloop
---------------------------------------------
82 lines of code changed in:
* wince/Makefile.sub: undefine HAVE__SETJMP.
* wince/resource.rb: include winver.h in wince3.0.
7 lines of code changed in:
* eval.c (proc_invoke): should not propagate TAG_BREAK and
TAG_RETURN from orphan Proc object. [ruby-core:01148]
10 lines of code changed in:
tcltklib.c :
* Tk interpreter returns TAINTED strings.
12 lines of code changed in:
* parse.y (new_yield): distinguish "yield 1,2" and "yield [1,2]".
[ruby-dev:20360]
* eval.c (rb_eval): support new_yield() change.
* variable.c (rb_const_get_0): warn for Foo::BAR when BAR is a
toplevel constant (i.e. a constant defined under Object).
[ruby-list:36935]
* parse.y (no_blockarg): separate no block argument check and
ret_args argument processing.
* range.c (rb_range_beg_len): out_of_range check after adjusting
end point. [ruby-dev:20370]
* parse.y (call_args): the first argument to arg_cancat() should
be NODE_LIST. [ruby-core:01151]
* eval.c (rb_eval): should dispatch based on ID type.
* eval.c (rb_yield_0): should restore scope_vmode during yield.
[ruby-dev:20361]
149 lines of code changed in:
* defines.h (PATH_ENV): name of PATH environment. [new].
* defines.h (ENV_IGNORECASE): define for case insensitive platforms
to access environment variables.
* dln.c (dln_find_exe): use PATH_ENV instead of "PATH".
* hash.c (env_delete, rb_f_getenv, env_fetch, rb_env_path_tainted,
env_aset): ditto.
* ruby.c (proc_options): ditto.
55 lines of code changed in:
tcltklib.c :
* lib_do_one_event() : change default value of the argument
* lib_do_one_event() : returns true/false
* add TclTkLib::EventFlag::NONE ( == 0 )
* add set_no_event_wait() and get_no_event_wait()
* modify MANUAL.euc and README.euc
tk.rb :
* change default value of TkCore.do_one_event argument
* add TkCore.set_no_event_wait(wait) and TkCore.get_no_event_wait
* add Tk.exit ( == destroy root widget )
tkafter.rb :
* rename TkAfter => TkTimer ( TkAfter is an alias name now. )
* set_callback returns self
* continue() raises an exception, if already running or no procedure.
* skip() raises an exception, if not running.
sample/tktimer2.rb
* new sample for TkTimer class.
284 lines of code changed in:
* lib/csv.rb: Import csv module.
1340 lines of code changed in:
import from drb-2.0.4b3
7 lines of code changed in:
* rubytest.rb: add library path to include standard libraries.
5 lines of code changed in:
* hash.c (env_delete, rb_f_getenv, env_fetch): case insensitive to
access environment variables on DOSISH platforms.
14 lines of code changed in:
tk.rb :
* small bug fix
* rename 'no_create' option to 'without_creating'
* add TkWindow#pack_in, TkWindow#grid_in, TkWindow#place_in
* add TkWindow#bind_class and TkWindow#database_class
If defined specific_class (@db_class), bind_class returns @db_class.
In other case, bind_class returns TkWinow#class().
It is useful for binding.
TkWindow#database_class is defined for querying the option database.
It's same to TkWinfo.classname(self).
* add TkBindTag.new_by_name and TkDatabaseClass for binding to database class
* check varname whether already exsist or not. (TkVarAccess.new)
* TkTextWin#bbox returns an array of four numbers
* autoload TkDialog2, TkWarning2
* scan event callback arguments and convert to proper type
* TkBindTag.new accepts a block ( TkBindTag.new(context){callback} )
* If given taglist, TkWindow#bindtags(taglist) returns taglist
* add TkWindow#bindtags=(taglist)
* Tk.focue and Tk.focus_lastfor return nil if there is no target widget.
* Tk::Wm.client returns the argument string when setting name
* TkGrid.columnconfiginfo and rowconfiginfo given a slot return a number.
* TkWindow.grid_columnconfiginfo and grid_rowconfiginfo :: ditto
* rename and define alias :: TkOption ==> TkOptionDB
* define alias :: TkTimer ==> TkAfter
* some instance methods change from public to private
* some TkComm methods change to module functions
(help to treat return values from Tk)
* add support for -displayof option to some TkWinfo methods
* bind, bind_append and bind_remove :: returns the target of event-binding
* add Tk8.4 features
* add TkPaneWindow
tkdialog.rb:
* classes without showing at initialize : TkDialog2, TkWarning2
* add show method to reuse TkDialog object
* some instance methods change from public to private
* add new features for configuration
tktext.rb :
* small bug fix
* some methods return self
* add TkTextMark#+(mod) and TkTextMark#-(mod) (e.g. mark + '3 chars')
* add some methods
tkcanvas.rb :
* small bug fix
* some methods return self
tkentry.rb :
* some methods return self
* TkEntry#bbox returns an array of four numbers
* scan validatecommand arguments and convert to proper type
tkbgerror.rb :
* support to define a error handler by user
tcltklib.rb :
* reported by Ferenc Engard <engard@all.hu> on [ruby-talk:60759]
... and so on
1650 lines of code changed in:
import from drb-2.0.4b3
1353 lines of code changed in:
added changelogs about zlib
17 lines of code changed in:
This is a null commit to correct the previous log.
(zstream_run): In a particular situation, deflate/inflate will return Z_BUF_ERROR, even though another call is required by the zlib library.
0 lines of code changed in:
*** empty log message ***
5 lines of code changed in:
* ext/syck/rubyext.c (rb_syck_load_handler): merge key implemented.
* ext/syck/rubyext.c (transfer_find_i): removed use of String#=~ in favor
of Regexp#match.
* lib/yaml.rb: YAML::try_implicit returns.
* lib/yaml/rubytypes.rb: Regexps added for type matching.
* lib/yaml/emitter.rb: fix String + nil error.
112 lines of code changed in:
* ext/syck/gram.c: added grammar for certain empty sequence entries.
* ext/syck/handler.c, ext/syck/syck.c, ext/syck/syck.h: track bad anchors.
* ext/syck/token.c: added pause token, tag possible circular references.
* lib/yaml/rubytypes.rb: parsing YMD time as Date instance.
* ext/syck/rubyext.c: ditto. DomainType, PrivateType, BadAlias classes.
1045 lines of code changed in:
* win32/win32.c (rb_w32_opendir): need to set errno. [ruby-talk:73761]
8 lines of code changed in:
* eval.c: remove rb_cBlock.
35 lines of code changed in:
* numeric.c (rb_fix2uint): renamed from rb_fix2int on IA64.
5 lines of code changed in:
* eval.c (proc_invoke): format the message for localjump_error().
8 lines of code changed in:
* ext/dl/dl.c (rb_dl_callback): use rb_block_proc() instead of
rb_block_new().
* ext/win32ole/win32ole.c (ev_on_event): ditto.
9 lines of code changed in:
* eval.c (proc_alloc): re-unification of Block and Proc. Block
class is no longer available.
162 lines of code changed in:
* bcc32/Makefile.sub: undefine HAVE_GETGROUPS.
5 lines of code changed in:
* lib/rexml/quickpath.rb: escape '[' to avoid warning.
1 lines of code changed in:
2003-06-16
3 lines of code changed in:
* regex.c (calculate_must_string): should handle option_set
properly. [ruby-talk:73481]
* regex.c (re_compile_fastmap): a bug in flag manipulation.
[ruby-talk:73549]
13 lines of code changed in:
REXML hadn't been tested with Ruby 1.8.0, which was really, really,
unbelievably stupid of me. There were a lot of warnings and some errors
that were caused by Block vs. Proc differences; these have been fixed.
REXML passes all of the tests under Ruby 1.8.0.
28 lines of code changed in:
2003-06-14
3 lines of code changed in:
* eval.c (method_arity): should handle NODE_BMETHOD and
NODE_DMETHOD. [ruby-core:01138]
15 lines of code changed in:
* lib/net/ftp.rb (storebinary): seek correctly. Thanks, William Webber.
* lib/net/ftp.rb (putbinaryfile): rescue FTPPermError.
14 lines of code changed in:
tk.rb : add 'no_create' option to widget initialize method.
It allows to create ruby objects for widgets created on Tcl/Tk.
(e.g. TkButton.new('widgetname'=>'.bbb', 'no_create'=>true) )
It is useful for some Tcl/Tk Mega Widgets.
MANIFEST, README : forgot to commit when added tkmacpkg.rb and tkwinpkg.rb
28 lines of code changed in:
tk.rb : widget configure returns self (for method call chain)
tkmacpkg.rb : Mac resource (not new but not included untill now)
tkwinpkg.rb : Win DDE and registry (not new but not included untill now)
135 lines of code changed in:
* ext/syck/token.c: preserve newlines prepended to a block.
* ext/syck/implicit.c (syck_match_implicit): added !merge and !default.
* lib/yaml/constants.rb: remove '\z' escape.
* lib/yaml/emitter.rb: ensure reset of @seq_map shortcut flag.
* lib/yaml/encoding.rb: remove Unicode translation methods.
* lib/yaml/rubytypes.rb: improved round-tripping of Strings.
[ruby-core:1134]
1220 lines of code changed in:
* sample/test.rb: add block to proc to avoid warning.
1 lines of code changed in:
* lib/rexml/cdata.rb,lib/rexml/quickpath.rb,lib/rexml/parsers/baseparser.rb:
avoid warnings.
4 lines of code changed in:
2003-06-10
3 lines of code changed in:
* lib/irb/ruby-lex.rb: typo.
1 lines of code changed in:
* lib/irb/slex.rb: small cleanups. (ruby-bugs-ja PR#492)
* lib/irb/ruby-lex.rb: ditto.
11 lines of code changed in:
* lib/irb.rb (IRB::Irb::eval_input): warn and exit if $SAFE >=3
after input evaluation.
* lib/irb.rb (IRB::Irb::eval_input): untaint input string. now
irb works for levels 1 and 2.
* ext/syck/rubyext.c (syck_loader_transfer): should not use
rb_cProc directly, since type_proc may be Proc, Block, or
Method.
30 lines of code changed in:
The versions on the import were messed up; I imported an untranslated
source tree. This fixes that.
3 lines of code changed in:
Added the REXML files to the MANIFEST.
53 lines of code changed in:
Initial revision
6643 lines of code changed in:
fix : 100% CPU problem of Tk.mainloop
27 lines of code changed in:
renew Tk.mainloop
66 lines of code changed in:
2003-06-09
3 lines of code changed in:
* configure.in: checks presence of grp.h and setgroups().
7 lines of code changed in:
* process.c (proc_getgroups, proc_setgroups): raise
NotImplementedError unless available. [ruby-talk:73014]
17 lines of code changed in:
* wince/setup.mak: set SUBSYSTEM in each platform.
* wince/stdlib.c: fix mblen() bug.
14 lines of code changed in:
* parse.y (value_expr0): class and module statements should not be
warned for "void value expression". [ruby-talk:72989]
* gc.c (add_final): should determine type by respond_to?
* gc.c (define_final): ditto.
* io.c (rb_io_ctl): should not depend on respond_to?
* range.c (range_step): rb_check_string_type().
* process.c (proc_setgroups): new functions.
174 lines of code changed in:
2003-06-06
3 lines of code changed in:
* eval.c (error_print): needs to be exception proof.
* eval.c (error_handle, rb_longjmp): bails out when exception
reentered. (ruby-bugs-ja:PR#487), [ruby-core:01119],
[ruby-core:01122]
* eval.c (Init_Proc): pre-allocates critical error objects.
* parse.y (cmd_brace_block, do_block, brace_block): initialize block
variables at the beginning of the block. [ruby-talk:72521]
74 lines of code changed in:
* gc.c (define_final): eliminate rb_f_lambda() call.
* class.c (rb_scan_args): ditto.
* signal.c (sig_trap): ditto.
* hash.c (rb_hash_initialize): ditto.
* variable.c (rb_f_trace_var): ditto.
* ext/dl/dl.c (rb_dl_callback): ditto.
* ext/win32ole/win32ole.c (ev_on_event): ditto.
* eval.c (ruby_cleanup): $SAFE is turned off in the finalization.
Each END proc should preserve its own $SAFE level. [ruby-core:01119]
* marshal.c (marshal_load): remove unused variable "hash".
[ruby-core:01120]
* hash.c (env_str_new): freeze strings from ENV. [ruby-talk:72860]
* array.c (rb_ary_first): optional argument to retrieve first n
elements.
* array.c (rb_ary_last): optional argument to retrieve last n
elements.
53 lines of code changed in:
* eval.c (ruby_cleanup): $SAFE is turned off in the finalization.
Each END proc should preserve its own $SAFE level. [ruby-core:01119]
* marshal.c (marshal_load): remove unused variable "hash".
[ruby-core:01120]
* hash.c (env_str_new): freeze strings from ENV. [ruby-talk:72860]
* array.c (rb_ary_first): optional argument to retrieve first n
elements.
* array.c (rb_ary_last): optional argument to retrieve last n
elements.
104 lines of code changed in:
* lib/net/http.rb: define Net::HTTPResponse#to_ary for backward compatibility. [ruby-talk:72927]
* lib/net/protocol.rb: add warning.
24 lines of code changed in:
* ext/syck/rubyext.c (syck_parser_mark): was a bit heavy on the GC.
* lib/yaml.rb (YAML::transfer): added.
76 lines of code changed in:
* wince/stdlib.c: add mblen().
21 lines of code changed in:
* bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
(MISSING): link with missing/erf.c.
* missing.h (erf, erfc): fix prototype.
* missing/erf.c: new. [ruby-list:37753]
111 lines of code changed in:
* ext/curses/curses.c (window_s_allocate,curses_finalize):
avoid VC++ warnings.
7 lines of code changed in:
2003-06-05
3 lines of code changed in:
* math.c (math_erf,math_erfc): new function. [ruby-list:37753]
* eval.c (ruby_finalize): no longer need to turn off $DEBUG in the
finalizer. (ruby-bugs-ja PR#473)
36 lines of code changed in:
* ext/syck/rubyext.c: using GC nodes caused segfault. [ruby-core:1071]
45 lines of code changed in:
* ext/syck/token.c: directives choked on a period.
* ext/syck/gram.y: anchors work above a collection. [ruby-core:1071]
* ext/syck/handler.c, ext/syck/syck.c: ensure a fresh strtable between
parser iterations.
326 lines of code changed in:
* eval.c (rb_call_super): should search superclass method based on
orig_func, not last_func.
13 lines of code changed in:
2003-06-03
3 lines of code changed in:
* eval.c (rb_call): typo.
1 lines of code changed in:
* eval.c (rb_call_super): inheritance line adjustment moved from
rb_call(). [ruby-core:01113]
* eval.c (rb_eval): use rb_call_super() to follow DRY principle.
62 lines of code changed in:
2003-06-02
3 lines of code changed in:
* array.c (push_values_at): Array#values_at should work with
ranges too.
* range.c (rb_range_beg_len): length calculation was wrong.
* eval.c (rb_call): should set T_ICLASS in the frame->last_class.
[ruby-core:01110]
113 lines of code changed in:
context.rb typo, thank rubikichi-san
1 lines of code changed in:
* ext/digest/defs.h: better support for old Cygwin, again.
1 lines of code changed in:
* ext/digest/defs.h: better support for old Cygwin.
1 lines of code changed in:
* ext/digest/defs.h: avoid warnings on Cygwin.
3 lines of code changed in:
* configure.in: should not use def file, use ld with
--export-all-symbols option on Cygwin/MinGW.
* defines.h: ditto.
* cygwin/GNUmakefile.in: ditto.
27 lines of code changed in:
* wince/string_wce.c: add strpbrk() for hpcpro support.
* wince/setup.mak: add hpcpro(CE2.11) & armv4t(CE.NET) support.
* wince/resource.rb: ditto.
* wince/Makefile.sub: ditto.
57 lines of code changed in:
2003-06-01
4 lines of code changed in:
* variable.c (rb_autoload_load): autoloaded constants under a module
belong to the module. [ruby-core:01094], [ruby-dev:20309]
5 lines of code changed in:
May 2003 »