Wed Sep 17 18:51:02 2003 Minero Aoki * test/strscan/test_stringscanner.rb: require test/unit. Wed Sep 17 18:35:34 2003 Minero Aoki * test/strscan/test_stringscanner.rb: new file. Wed Sep 17 18:03:30 2003 GOTOU Yuuzou * ext/openssl: all files are reviewed to simplify and avoid memory leak. * ext/openssl/extconf.rb: add check for assert.h. * ext/openssl/ossl.c (ossl_buf2str): new function to convert C buffer to String and free buffer. * ext/openssl/ossl.c (ossl_x509_ary2sk): new function to convert Array of OpenSSL::X509 to STACK_OF(X509) with exception safe. * ext/openssl/ossl.c (ossl_to_der, ossl_to_der_if_possible): new functions to convert object to DER string. * ext/openssl/ossl.h: ditto. * ext/openssl/ossl_bio.c (ossl_membio2str): new function to convert BIO to String object and free BIO. * ext/openssl/ossl_bio.h: ditto. * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_to_der): add for "to_der". * ext/openssl/ossl_x509name.c (ossl_x509name_to_der): ditto. * ext/openssl/ossl_x509ext.c (ossl_x509ext_to_der): ditto. * ext/openssl/ossl_x509ext.c (create_ext_from_array): removed and reimplement in openssl/x509.rb. * ext/openssl/ossl_x509attr.c: reimplemented and disable some method temporarily. this class doesn't work fine without ASN.1 data support;-) I'll rewrite in near future. * ext/openssl/lib/openssl/x509.c (X509::Attribute): get rid off unused code. * ext/openssl/lib/openssl/x509.c (X509::ExtensionFactory): refine all. Mon Sep 16 22:25:06 2003 NAKAMURA, Hiroshi * test/csv/test_csv.rb: add negative tests of row_sep. Tue Sep 16 18:02:36 2003 Yukihiro Matsumoto * regex.c (re_compile_pattern): should not translate character class range edge. [ruby-list:38393] Tue Sep 16 16:47:56 2003 WATANABE Hirofumi * MANIFEST: add test/csv/mac.csv. * win32/Makefile.sub, bcc32/Makefile.sub (test): add phony NUL target. Mon Sep 15 19:02:52 2003 NAKAMURA, Hiroshi * lib/csv.rb: add extra pamameter to specify row(record) separater character. To parse Mac's CR separated CSV, do like this. CSV.open("mac.csv", "r", ?,, ?\r) { |row| p row.to_a } The 3rd parameter in this example ?, is for column separater and the 4th ?\r is for row separater. Row separater is nil by default. Nil separater means "\r\n" or "\n". * test/csv/test_csv.rb: add tests for above feature. * test/csv/mac.csv: added. Sample CR separated CSV file. Fri Sep 12 22:41:48 2003 Michal Rokos * ext/openssl/ossl.c: move ASN.1 stuff to ossl_asn1.[ch] * ext/openssl/ossl.c: move BIO stuff to ossl_bio.[ch] * ext/openssl/ossl_asn1.[ch]: new files * ext/openssl/ossl_bio.[ch]: new files Fri Sep 12 12:30:41 2003 Nobuyoshi Nakada * intern.h (rb_disable_super, rb_enable_super): replace with dummy expressions instead of prototypes. the functions remain yet for binary compatibility. [ruby-talk:81758] Fri Sep 12 12:09:54 2003 Yukihiro Matsumoto * bignum.c (rb_big_and): convert argument using 'to_int'. * bignum.c (rb_big_or): ditto. * bignum.c (rb_big_xor): ditto. Fri Sep 11 22:06:14 2003 David Black * lib/scanf.rb: Took out useless @matched_item variable; some small refactoring. Thu Sep 11 08:43:44 2003 Yukihiro Matsumoto * eval.c (rb_f_require): allow "require" on $SAFE>0, if feature name is not tainted. * lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser::stream): Supports StringIO. Wed Sep 10 22:47:30 2003 GOTOU Yuuzou * ext/openssl/ossl.h: add a workaround for win32 platform. libeay32.dll doesn't export functions defined in conf_api.h. * ext/openssl/ossl_config.c (ossl_config_initialize): ditto. * ext/openssl/ossl_config.c (ossl_config_add_value): ditto. * ext/openssl/ossl_config.c (set_conf_section_i): should check if the argument is Array. Wed Sep 10 22:41:54 2003 Tietew * eval.c (win32_get_exception_list): avoid VC7 warning. [ruby-win32:577] Tue Sep 9 10:39:51 2003 Nobuyoshi Nakada * eval.c (struct tag): dst should be VALUE. Tue Sep 9 10:39:51 2003 Nobuyoshi Nakada * eval.c (localjump_destination): stop at the scope where the current block was created. [ruby-dev:21353] Tue Sep 9 05:17:04 2003 GOTOU Yuuzou * ext/openssl/ossl_config.rb: avoid compile error in OpenSSL-0.9.6. Tue Sep 9 02:41:35 2003 Michal Rokos * ext/openssl/ossl_config.c: Refine compatibility. Tue Sep 9 01:50:45 2003 GOTOU Yuuzou * lib/webrick/httpserver.rb (HTTPServer#access_log): add "\n" to the message. * lib/webrick/log.rb (BasicLog#log): add "\n" only if needed. Mon Sep 8 22:15:33 2003 Hidetoshi NAGAI * ext/tk/lib/multi-tk.rb: modify security check at creating a new interpreter Mon Sep 8 20:00:12 2003 Nobuyoshi Nakada * lib/optparse.rb, lib/optparse/version.rb: search also all capital versions. Mon Sep 8 19:26:33 2003 GOTOU Yuuzou * ext/openssl/ossl.h: include openssl/conf.h and openssl/conf_api.h. * ext/openssl/ossl_config.c: refine all with backward compatibility. * ext/openssl/ossl_config.h: export GetConfigPtr() and DupConfigPtr(). * ext/openssl/ossl_x509.c: added new constants under X509 module. DEFAULT_CERT_AREA, DEFAULT_CERT_DIR, DEFAULT_CERT_FILE, DEFAULT_CERT_DIR_ENV, DEFAULT_CERT_FILE_ENV and DEFAULT_PRIVATE_DIR. * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_free): don't free the members of the struct. it's left to GC. * ext/openssl/ossl_x509ext.c (ossl_x509_set_config): add for config=. * ext/openssl/ossl_x509ext.c (Xossl_x509extfactory_initialize): add attr readers: issuer_certificate, subject_certificate, subject_request, crl and config. Mon Sep 8 18:26:41 2003 GOTOU Yuuzou * lib/webrick/accesslog.rb (AccessLog::setup_params): use req.port instead of config[:Port] or req.request_uri.port. * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): ditto. * lib/webrick/httpservlet/filehandler.rb (FileHandler#dir_list): ditto. * lib/webrick/config.rb: :Listen option never be used. * lib/webrick/server.rb (GenericServer#initialize): don't use :Listen option and add warning message. * lib/webrick/log.rb (BasicLog#<<): shortcut of log(INFO, ...). * lib/webrick/httpserver.rb (HTTPServer#accesslog): use << for logging. Sun Sep 7 16:08:28 2003 Hidetoshi NAGAI * ext/tcltklib/tcltklib.c (lib_mainloop_core): fixed signal-trap bug * ext/tk/lib/*.rb : Ruby/Tk works at $SAFE == 4 Fri Sep 6 02:26:34 2003 NAKAMURA, Hiroshi * test/ruby/test_*.rb: assert_same, assert_match, and so on. Sat Sep 6 18:45:46 2003 Mauricio Fernandez * parse.y (assignable): call rb_compile_error(), not rb_bug(). [ruby-core:01523] Sat Sep 6 17:40:41 2003 GOTOU Yuuzou * ext/openssl/ruby_missing.c: rid of unnecessary backward compatibility stuff. and remove DEFINE_ALLOC_WRAPPER from all sources. * ext/openssl/ossl_x509ext.c (X509::Extension.new): new method. * ext/openssl/ossl_x509ext.c (X509::Extension#oid=): new method. * ext/openssl/ossl_x509ext.c (X509::Extension#value=): new method. * ext/openssl/ossl_x509ext.c (X509::Extension#critical=): new method. Sat Sep 6 01:23:22 2003 NAKAMURA Usaku * win32/win32.c (CreateChild): need to quote cmd if RUBYSHELL is set. * win32/win32.c (CreateChild): fix condition about whether to call shell or not. Sat Sep 6 00:36:20 2003 Nobuyoshi Nakada * Makefile.in (test): phony target. * lib/mkmf.rb (have_library, find_library): configure by library name. * lib/optparse.rb (OptionParser#order, #permute, #parse): allow an array as argument. * test/ruby/test_*.rb: moved invariants to left side in assert_equal, and use assert_nil, assert_raises and so on. * win32/win32.c (isInternalCmd): distinguish command.com and cmd.exe. * win32/win32.c (make_cmdvector): a character just after wildcard was ignored. [ruby-core:01518] Fri Sep 5 20:27:08 2003 NAKAMURA, Hiroshi * test/ruby/test_*.rb: replace 'assert(a == b)' with assert_equal(a, b)' Fri Sep 5 18:00:51 2003 GOTOU Yuuzou * ext/openssl/lib/openssl/x509.rb: new method X509::Name::parse. * ext/openssl/ossl_digest.c: add ossl_digest_new(). * ext/openssl/ossl_digest.h: ditto. * ext/openssl/ossl_cipher.c: add ossl_cipher_new(). * ext/openssl/ossl_cipher.h: ditto. Fri Sep 5 15:32:04 2003 Nobuyoshi Nakada * misc/ruby-mode.el (ruby-font-lock-maybe-here-docs): should not search delimiter forward if found in backward. Fri Sep 5 13:32:48 2003 Nobuyoshi Nakada * test/runner.rb: arguments should be keys. Fri Sep 5 12:09:55 2003 WATANABE Hirofumi * test/ruby/test_system.rb (test_system): check existence of ruby interpreter. Fri Sep 5 11:32:17 2003 Nobuyoshi Nakada * lib/optparse.rb (--version): fix assignment/reference order. * lib/optparse.rb (OptionParser#help): new; OptionParser#to_s may be deprecated in future. * lib/optparse/version.rb (OptionParser#show_version): hide Object. * test/runner.rb: fix optparse usage. * test/runner.rb: glob all testsuits if no tests given. Fri Sep 5 10:42:58 2003 NAKAMURA, Hiroshi * test/runner.rb: added. gets testcases from command line and runs it. * test/ruby/test_gc.rb: remove useless part which was for dumping test result. Fri Sep 5 09:28:59 2003 NAKAMURA, Hiroshi * test/ruby/test_gc.rb: added. splitter.rb which I made to split sample/test.rb into test/ruby/test_* kindly removed GC test (the last section in the original test) to reduce things to be worried. Fri Sep 5 03:00:04 2003 Nobuyoshi Nakada * test/ruby/test_iterator.rb (test_block_in_arg): add no block given tests. * test/ruby/test_iterator.rb (test_ljump): uncomment LocalJumpError test. Wed Sep 5 01:10:11 2003 NAKAMURA, Hiroshi * test/ruby: tests for ruby itself. * test/ruby/test_*.rb: split sample/test.rb into 28 test/unit testcases. some tests could not be translates... search '!!' mark to see it. * test/csv/test_csv.rb: should require 'csv', not '../lib/csv'. test runner should set load path correctly. Wed Sep 5 01:03:59 2003 NAKAMURA, Hiroshi * test/csv/test_csv.rb: close opened files for CSV::IOBuf explicitly. opened file cannot be removed under win32 box. Thu Sep 4 23:59:40 2003 Nobuyoshi Nakada * parse.y (tokadd_string): newlines have no special meanings in %w/%W, otherwise they are ignored only when interpolation is enabled. [ruby-dev:21325] Wed Sep 4 19:38:25 2003 NAKAMURA, Hiroshi * ext/io/wait/.cvsignore: added. * ext/openssl/.cvsignore: added. Wed Sep 4 19:28:24 2003 NAKAMURA, Hiroshi * sample/openssl: added. Sample of standard distribution library should be locate in sample/{module_name}/*. * ext/openssl/sample/*: removed. move to sample/openssl/*. Wed Sep 4 18:02:15 2003 NAKAMURA, Hiroshi * test/csv/test_csv.rb: use remove_const to reduce warnings. use Dir.tmpdir to locate working files. Thu Sep 4 17:41:31 2003 Nobuyoshi Nakada * misc/ruby-mode.el (ruby-here-doc-beg-re): underscore also is valid delimiter. * misc/ruby-mode.el (ruby-here-doc-end-match): must quote arbitrary string to use as regexp. * misc/ruby-mode.el (ruby-font-lock-maybe-here-docs): must not call `ruby-here-doc-end-match' unless `ruby-here-doc-beg-re' matched. Wed Sep 4 15:40:07 2003 NAKAMURA, Hiroshi * test/csv/test_csv.rb: run on test/unit original layer. Thu Sep 4 12:54:50 2003 why the lucky stiff * ext/syck/token.c: headerless documents with root-level spacing now honored. Thu Sep 4 00:06:14 2003 Yukihiro Matsumoto * eval.c (mark_frame_adj): need to adjust argv pointer if using system's alloca. [ruby-core:01503] Wed Sep 3 21:33:20 2003 NAKAMURA, Hiroshi * test: add test directory. Test::Unit aware testcases and needed files should be located in this directory. dir/file name convention; test/{module_name}/test_{testcase_name}.rb test/{module_name}/{needed_files} someday, someone will write testrunner which searches test_*.rb and run testcases automatically. * test/csv/*: add testcase for lib/csv.rb. Wed Sep 3 01:37:09 2003 Yukihiro Matsumoto * io.c (rb_f_gets): should call next_argv() before type check current_file. [ruby-list:38336] Tue Sep 2 20:37:15 2003 GOTOU Yuuzou * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): warning for skipping server verification. Tue Sep 2 23:36:57 2003 Yukihiro Matsumoto * eval.c (proc_invoke): should retrieve retval when pcall is true. Tue Sep 2 14:09:20 2003 Yukihiro Matsumoto * ext/socket/extconf.rb: check s6_addr8 in in6_addr (Tru64 UNIX). the patch is submitted by nmu . * ext/socket/getaddrinfo.c (getaddrinfo): should use in6_addr8 on some platforms. * ext/socket/getnameinfo.c (getnameinfo): ditto. Tue Sep 2 14:02:19 2003 Hidetoshi NAGAI * ext/tcltklib/tcltklib.c (ip_invoke): fixed bug on passing a exception * ext/tk/lib/{tk.rb, tkcanvas.rb, tkfont.rb, tktext.rb} : bug fix and improvement of font control Tue Sep 2 09:51:36 2003 Nobuyoshi Nakada * eval.c (rb_eval): should not handle exceptions within rescue argument. [ruby-talk:80804] Tue Sep 2 00:44:37 2003 Nobuyoshi Nakada * re.c (rb_memsearch): fix overrun. [ruby-talk:80759] Tue Sep 2 00:41:27 2003 Nobuyoshi Nakada * ext/iconv/iconv.c (map_charset): use lower case keys. * ext/iconv/iconv.c (iconv_fail): just yield error and return the result if a block is given. * ext/iconv/iconv.c (iconv_convert): yield error and append the result if a block is given. * ext/iconv/charset_alias.rb (charset_alias): optional third argument. * ext/iconv/charset_alias.rb (charset_alias): use CP932 instead of SHIFT_JIS on cygwin. Mon Sep 1 18:34:25 2003 Nobuyoshi Nakada * eval.c (rb_eval): make tail recursion in ELSE clause of RESCUE a jump. Mon Sep 1 18:00:02 2003 Yukihiro Matsumoto * parse.y (aref_args): forgot to call NEW_SPLAT(). reported by Dave Butcher. * eval.c (Init_Thread): protect thgroup_default. suggested by Guy Decoux in [ruby-talk:80623] Mon Sep 1 16:59:10 2003 Nobuyoshi Nakada * eval.c (rb_thread_switch): add RESTORE_EXIT; exit by another thread termination. * eval.c (rb_thread_start_0): should not error_print() within terminated thread, because $stderr used by it might be overriden now. [ruby-dev:21280] Sun Aug 31 22:46:55 2003 WATANABE Hirofumi * eval.c (TAG_DST()): take no argument. * process.c (p_gid_sw_ensure): return VALUE. Sun Aug 31 22:27:10 2003 Hidetoshi NAGAI * process.c (p_gid_sw_ensure): lack of function type Sun Aug 31 12:25:06 2003 Nobuyoshi Nakada * lib/optparse.rb: --version takes an optional argument; "all" or a list of package names. Sun Aug 31 10:17:02 2003 Tadayoshi Funaba * lib/date/format.rb: yyyy/mm is not an acceptable format. * lib/time.rb: follow above. Sat Aug 30 14:25:43 2003 Yukihiro Matsumoto * eval.c (rb_iter_break): should not call TAG_JUMP directly. Sat Aug 30 03:58:21 2003 Yukihiro Matsumoto * eval.c (struct BLOCK): remove BLOCKTAG, use scope instead. * eval.c (POP_TAG): no longer propagate retval. retval is now set directly by localjump_destination(). * eval.c (localjump_destination): new function to cast return/break local jump. * eval.c (rb_yield_0): stop TAG_RETURN/TAG_BREAK escaping. Fri Aug 29 22:35:00 2003 Shigeo Kobayashi * bigdecimal.c *.html: The 2nd arg. for add,sub,mult, and div is 0, then result will be the same as +,-,*,/ respectively. Fri Aug 29 17:30:15 2003 Hidetoshi NAGAI * process.c: bug fix * process.c: add rb_secure(2) to methods of Process::{UID,GID,Sys} * process.c: deny handling IDs during evaluating the block given to the Process::{UID,GID}.switch method * ext/tcltklib/tcltklib.c : some methods have no effect if on slave-IP * ext/tcltklib/tcltklib.c : can create a interpreter without Tk * ext/tcltklib/tcltklib.c : bug fix on handling exceptions * ext/tcltklib/MANUAL.euc : modify * ext/tk/lib/tk.rb : freeze some core modules * ext/tk/lib/multi-tk.rb : more secure * ext/tk/lib/tk.rb: TkVariable.new(array) --> treat the array as the Tk's list * ext/tk/lib/tk.rb: improve accessibility of TkVariable object * ext/tk/lib/tk.rb, ext/tk/lib/tkfont.rb, ext/tk/lib/tkcanvas.rb, ext/tk/lib/tktext.rb : fix bug of font handling * ext/tk/lib/tkfont.rb TkFont.new() accepts compound fonts Thu Aug 28 22:07:12 2003 Yukihiro Matsumoto * variable.c (rb_autoload_load): call const_missing if autoloading constant is not defined to allow hook. * eval.c (rb_eval): use rb_const_get_from() instead of rb_const_get_at(). * eval.c (is_defined): forgot to check NODE_COLON3. Thu Aug 28 17:30:24 2003 Yukihiro Matsumoto * variable.c (rb_const_get_0): should check constants defined in included modules, if klass is Object. [ruby-talk:79302] * numeric.c (check_uint): check should be done using UINT_MAX, not INT_MAX. this fix is submitted by Lyle Johnson in [ruby-core:01486] Thu Aug 28 05:02:52 2003 Yukihiro Matsumoto * parse.y (singleton): typo fixed (ruby-bugs-ja PR#562) Thu Aug 28 02:37:45 2003 Yukihiro Matsumoto * eval.c (rb_eval): *a = [1,2] now assigns [[1,2]] to a. consistent with *a = [1], which set [[1]] to a. * node.h: merge NODE_RESTARY to NODE_SPLAT. * parse.y: rules simplified a bit by removing NODE_RESTARY. * sample/test.rb: updated for new assignment behavior. Wed Aug 27 22:33:24 2003 Nobuyoshi Nakada * error.c (rb_bug): should not use other methods; this function is not for ordinary use. [ruby-dev:21259] Wed Aug 27 15:07:57 2003 Minero Aoki * lib/net/smtp.rb (check_response): AUTH CRAM-MD5 returns 334 response. [ruby-list:38279] Wed Aug 27 05:10:15 2003 NAKAMURA Usaku * win32/win32.c (map_errno): support winsock error. * win32/win32.c (pipe_exec, CreateChild, poll_child_status, waitpid, kill, link, rb_w32_rename, unixtime_to_filetime, rb_w32_utime): pass errno to map_errno(). * win32/win32.c (rb_w32_select, rb_w32_accept, rb_w32_bind, rb_w32_connect, rb_w32_getpeername, rb_w32_getsockname, rb_w32_getsockopt, rb_w32_ioctlsocket, rb_w32_listen, rb_w32_recv, rb_w32_recvfrom, rb_w32_send, rb_w32_sendto, rb_w32_setsockopt, rb_w32_shutdown, rb_w32_socket, rb_w32_gethostbyaddr, rb_w32_gethostbyname, rb_w32_gethostname, rb_w32_getprotobyname, rb_w32_getprotobynumber, rb_w32_getservbyname, rb_w32_getservbyport, rb_w32_fclose, rb_w32_close): use map_errno(). * win32/win32.h: add winsock errors. Tue Aug 26 23:53:23 2003 Yukihiro Matsumoto * lib/ostruct.rb (OpenStruct::method_missing): prohibit modifying frozen OpenStruct. [ruby-talk:80214] Tue Aug 26 20:03:50 2003 Nobuyoshi Nakada * lib/mkmf.rb (create_tmpsrc): add the hook for source. [ruby-list:38122] Tue Aug 26 15:59:53 2003 why the lucky stiff * implicit.c (syck_type_id_to_taguri): corrected detection of x-private types. Sun Aug 24 01:02:48 2003 Nobuyoshi Nakada * file.c (file_expand_path): performance improvement. [ruby-talk:79748] Sat Aug 23 23:41:16 2003 Yukihiro Matsumoto * file.c (rb_file_s_expand_path): avoid calling rb_scan_args() for apparent cases. [ruby-talk:79748] Sat Aug 23 18:56:53 2003 Nobuyoshi Nakada * ext/nkf/nkf.c (rb_nkf_putchar): should use rb_str_resize() to just resize a string, rb_str_cat() disallows NULL. [ruby-dev:21237] Sat Aug 23 16:48:41 2003 Keiju Ishitsuka * lib/irb/ruby-lex.rb: bug fix for "foo" !~ /bar/. [ruby-talk:79942] Sat Aug 23 15:59:58 2003 Nobuyoshi Nakada * eval.c (rb_eval, rb_iterate, block_pass): reduce PUSH/POP_TAG and EXEC_TAG() for retry. [ruby-dev:21216] Sat Aug 23 02:32:33 2003 Yukihiro Matsumoto * eval.c (rb_yield_splat): should check if "values" is array. * enum.c (each_with_index_i): typo. Fri Aug 22 17:07:05 2003 Yukihiro Matsumoto * enum.c (inject_i): use rb_yield_values. * enum.c (each_with_index_i): ditto. * eval.c (rb_yield_splat): new function to call "yield *values". * string.c (rb_str_scan): use rb_yield_splat(). Fri Aug 22 06:13:22 2003 why the lucky stiff * ext/syck/rubyext.c: refactoring of the transfer method dispatch. added yaml_org_handler for faster dispatch of transfers to base types. * lib/yaml/rubytypes.rb: removed handling of builtins from Ruby library. * ext/syck/token.c: quoted and block scalars are now implicit !str * ext/syck/implicit.c: empty string detected as !null. Fri Aug 22 01:00:31 2003 Nobuyoshi Nakada * eval.c (block_pass): improve passing current block. Tue Aug 21 00:13:00 2003 Shigeo Kobayashi * ext/bigdecimal/bigdecimal.c: Int. overflow bug in multiplication fixed, and VpNmlz() speed up. Wed Aug 20 16:44:49 2003 Nobuyoshi Nakada * ext/socket/socket.c (ruby_connect): many systems seem to have a problem in select() after EINPROGRESS. [ruby-list:38080] Wed Aug 20 01:31:17 2003 why the lucky stiff * ext/syck/syck.h: Parser definition problems on HP-UX. [ruby-talk:79389] * ext/syck/handler.c (syck_hdlr_get_anchor): Memory leak. * ext/syck/syck.s (syck_io_file_read): Bad arguments to fread. * ext/syck/rubyext.c: Tainting issues. Tue Aug 19 23:20:00 2003 Shigeo Kobayashi * ext/bigdecimal/bigdecimal.c .h .html: to_s("+") implemented. * ext/bigdecimal/lib/bigdecimal/math.rb: E implemented. Tue Aug 19 07:47:09 2003 GOTOU Yuuzou * lib/webrick/ssl.rb: new file; SSL/TLS enhancement for GenericServer. * lib/webrick/https.rb: SSLSocket handling is moved to webrick/ssl.rb. * lib/webrick/compat.rb (File::fnmatch): remove old migration code. * lib/webrick/httpserver.rb (HTTPServer#run): ditto. * lib/webrick/server.rb (GenericServer#listen): the body of this method is pull out as Utils::create_lisnteners. * lib/webrick/utils.rb (Utils::create_lisnteners): new method. * lib/webrick/server.rb (GenericServer#start): should rescue unknown errors. and refine comments. * ext/openssl/lib/openssl/ssl.rb (SSLServer#accept): should close socket if SSLSocket raises error. Tue Aug 19 11:19:33 2003 Shugo Maeda * io.c (next_argv): should not call GetOpenFile() if rb_stdout is not a IO (T_FILE). Tue Aug 19 07:47:09 2003 GOTOU Yuuzou * ext/openssl/ossl_ssl.c: sync_close is moved to SSLSocket as a builtin. * ext/openssl/lib/openssl/buffering.rb (Buffering#close): ditto. * ext/openssl/lib/openssl/buffering.rb (Buffering#puts): should add a return to the tails of each line. * ext/openssl/lib/openssl/ssl.rb: new class OpenSSL::SSL::SSLServer. * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): use sync_close. * ext/openssl/sample/echo_svr.rb: use SSLServer. * ext/openssl/sample/echo_cli.rb: add example of SSLSocket#sync_close. Tue Aug 19 01:24:34 2003 Nobuyoshi Nakada * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): Mac OS X standard headers are inconsistent at this macro. [ruby-core:01432] * ext/curses/extconf.rb: check if _XOPEN_SOURCE_EXTENDED breaks. * ext/tcltklib/stubs.c: Status macro in X11/Xthreads.h bothers winspool.h * instruby.rb: make list at first instead of iterator. [ruby-talk:79347] Mon Aug 18 11:23:11 2003 Nobuyoshi Nakada * dir.c (glob_helper): preserve raw order for **. Sun Aug 17 23:39:55 2003 Nobuyoshi Nakada * ext/openssl/extconf.rb (HAVE_VA_ARGS_MACRO): need to compile. Sun Aug 17 17:10:03 2003 GOTOU Yuuzou * ext/openssl/lib/openssl/ssl.rb (SSLSocket#sync_close=): add a method to specify if the underlying IO will be closed in SSLSocket#close. * ext/openssl/lib/openssl/buffering.rb: add forwarders to setsockopt, getsockopt and fcntl. * ext/openssl/lib/net/protocols.rb: enable sync for SSLSocket. Sun Aug 17 11:32:04 2003 Nobuyoshi Nakada * ext/extmk.rb (extmake): should not force to remake Makefile when installation and so on. Sat Aug 16 23:58:18 2003 Nobuyoshi Nakada * marshal.c (w_symbol, w_object): get rid of warnings. * re.c (rb_memsearch): ditto. * time.c (time_dump): ditto. * ext/extmk.rb (extmake): not continue making when extconf.rb failed. * ext/openssl/extconf.rb: check __VA_ARGS__ macro more precisely. * ext/openssl/ossl.h: remove version.h dependency. * ext/openssl/ruby_missing.h: ditto. * lib/mkmf.rb (pkg_config): use --libs output except with only-L for other options. [ruby-list:38099] * lib/mkmf.rb (create_makefile): separate rule for static library from shared object. * win32/Makefile.sub, bcc32/Makefile.sub, wince/Makefile.sub: define exec_prefix and libdir. Fri Aug 15 23:15:00 2003 Shigeo Kobayashi * ext/bigdecimal/bigdecimal.c .h: Bug in combination of limit & div method fixed. * ext/bigdecimal/lib/bigdecimal/math.rb: atan() & sqrt() added. Fri Aug 15 12:01:43 2003 Nobuyoshi Nakada * configure.in (HUGE_ST_INO): check whether struct stat.st_ino is larger than long. [ruby-dev:21194] http://www.geocities.co.jp/SiliconValley-PaloAlto/1409/ruby/beos.html * error.c (syserr_eqq): errno might exceed Fixnum limit. * error.c (Init_Exception): moved base initialization from init_syserr(). * inits.c (rb_call_inits): postpone initializing errnos until Bignum is available. Fri Aug 15 12:01:43 2003 Nobuyoshi Nakada * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): needed to let keyname() and so on be declared. * ext/curses/curses.c (curses_resizeterm, window_resize): arguments conflicted with macros in term.h. * ext/curses/curses.c (Curses module methods): ensure initialized. [ruby-dev:21191] Fri Aug 15 02:08:53 2003 Yukihiro Matsumoto * gc.c (id2ref): recycle check should be done by klass == 0. [ruby-core:01408] Fri Aug 15 01:34:23 2003 Michal Rokos * ext/openssl/ossl_pkey.c: move generate_cb here * ext/openssl/ossl_pkey_{dh|dsa|rsa}.c: adapt to this cb * ext/openssl/openssl_missing.[ch]: add (0.9.6x, x * ext/bigdecimal/bigdecimal.c: Bug in div method fixed. * ext/bigdecimal/lib/bigdecimal/math.rb: Newly added. * ext/bigdecimal/sample/pi.rb: Changed so as to use math.rb. Thu Aug 14 21:19:14 2003 Yukihiro Matsumoto * eval.c (Init_Thread): Continuation#[] added. [ruby-talk:79028] Thu Aug 14 20:03:34 2003 Masaki Suketa * ext/win32ole/win32ole.c (OLE_FREE): should not call ole_message_loop. * ext/win32ole/win32ole.c (ole_event_free): ditto. * ext/win32ole/win32ole.c (ole_initialize): stop calling OleUninitialize at exit. Thu Aug 14 11:27:37 2003 NAKAMURA Usaku * gc.c (rb_data_object_alloc): check type of 1st argument. [ruby-dev:21192] Thu Aug 14 00:21:14 2003 Yukihiro Matsumoto * parse.y (mlhs_node): should allow "::Foo" (colon3) as lhs. * parse.y (lhs): ditto. * parse.y (yylex): should return tCOLON3 right after kCLASS. [ruby-talk:78918] * error.c (exc_initialize): was converting argument to string too eagerly. Only check was needed. [ruby-talk:78958] Wed Aug 13 23:31:00 2003 Shigeo Kobayashi * ext/bigdecimal/bigdecimal.c .h .html: Ambiguity of BigDecimal::limit removed. Wed Aug 13 19:21:34 2003 Christian Neukirchen * lib/webrick/https.rb (HTTPServer#run): should set syncing-mode to SSLSocket. [ruby-talk:78919] Wed Aug 13 18:13:49 2003 Yukihiro Matsumoto * eval.c (POP_BLOCK): turn on BLOCK_LEFT flag when leaving block. * eval.c (proc_invoke): unpack return/break destination when block is already left. Wed Aug 13 15:58:31 2003 WATANABE Hirofumi * object.c (rb_class_s_alloc): add function prototype to avoid VC++ warning. Wed Aug 13 13:50:59 2003 NAKAMURA Usaku * ext/Win32API/Win32API.c (Win32API_initialize): should pass some class to first argument of Data_Wrap_Struct(). (ruby-bugs PR#1109) Tue Aug 12 16:55:11 2003 Nobuyoshi Nakada * Makefile.in: static link libraries to LIBRUBY_SO with static linked ext. [ruby-dev:21157] * ext/extmk.rb (extmake): sort extension library initialization order. * ext/extmk.rb (extmake): compact $extlibs. Tue Aug 12 02:48:56 2003 Yukihiro Matsumoto * eval.c (THREAD_SAVE_CONTEXT): should explicitly turn off the flag before calling getcontext(2). * eval.c (struct thread): add member to save backing store on IA64. (ruby-bugs PR1086) * eval.c (thread_mark): mark IA64 backing store region. * eval.c (thread_free): free saved IA64 backing store. * eval.c (rb_thread_save_context): save IA64 backing store as well. * eval.c (rb_thread_restore_context): restore IA64 backing store. * eval.c (THREAD_ALLOC): initialize IA64 members. Mon Aug 11 22:31:50 2003 NAKAMURA, Hiroshi * lib/debug.rb(debug_command): inspection command should inspect resulting value even if it's nil. [ruby-dev:21180] by OMAE, jun . * lib/debug.rb(debug_command): incomplete regexp. Mon Aug 11 17:33:07 2003 Yukihiro Matsumoto * eval.c (rb_call_super): do not use rb_block_given_p() for check. [ruby-talk:78656] * eval.c (BEGIN_CALLARGS): push ITER_NOT only when ITER_PRE. Sun Aug 10 10:43:05 2003 GOTOU Yuuzou * ext/openssl/lib/openssl/buffering.rb: increase BLOCK_SIZE from 1k to 16k bytes. [ruby-talk:78603] * ext/openssl/ossl_ssl.c (ossl_sslctx_s_alloc): enable partial write to allow interruption in SSLSocket#write. Sun Aug 10 00:34:16 2003 WATANABE Hirofumi * cygwin/GNUmakefile: remove unnecessary '--drive-name=$(CC)' for ccache. Sat Aug 9 10:36:21 2003 Yukihiro Matsumoto * marshal.c (w_object): do not dump generic instance variable when marshal_dump is defined. Sat Aug 9 00:35:00 2003 Shigeo Kobayashi * ext/bigdecimal.c: F style output(like 1234.56789) implemented to to_s method. * ext/bigdecimal_??.html: F style output(like 1234.56789) implemented to to_s method. Fri Aug 8 12:33:17 2003 WATANABE Hirofumi * bcc32/Makefile.sub: rubyw.exe should be a Windows GUI program. add the -aa option to WLDFLAGS. Fri Aug 8 11:29:26 2003 Koji Arai * marshal.c (w_object): should set `c_arg' at first. Fri Aug 8 03:22:28 2003 GOTOU Yuuzou * lib/webrick/httputils.rb (FormData#list): should not take a side effect for the receiver. Thu Aug 7 14:40:37 2003 WATANABE Hirofumi * cygwin/GNUmakefile: better --disbale-shared option support. * cygwin/GNUmakefile: add forwarding DLL target for cygwin. Thu Aug 7 14:21:05 2003 Corinna Vinschen * configure.in: Fix Cygwin specific naming of libraries to be net distribution compliant. (ruby-bugs PR#1077) cygwin-ruby18.dll -> cygruby18.dll Thu Aug 7 12:51:38 2003 Yukihiro Matsumoto * eval.c (rb_f_at_exit): should not be called without a block. block_given check added. Thu Aug 7 06:46:06 2003 Yukihiro Matsumoto * eval.c (rb_call0): forgot to pop ruby_class. * eval.c (rb_call0): update ruby_class as well as ruby_cref. (ruby-bugs-ja PR#540) Thu Aug 7 04:52:50 2003 Yukihiro Matsumoto * eval.c (rb_yield_0): remove ruby_frame->cbase and unify to ruby_cref. [ruby-talk:78141] Thu Aug 7 04:19:15 2003 Akinori MUSHA * gc.c: FreeBSD/ia64's mcontext_t is a bit different from that of Linux/ia64. This makes gc.c compile but miniruby coredumps for the moment. Wed Aug 7 00:15:00 2003 Shigeo Kobayashi * ext/bigdecimal.c: Comparison results adjusted to Float's. * ext/bigdecimal.c: Use rb_num_coerce_????(x,y) instead of own. Wed Aug 6 22:58:00 2003 Nathaniel Talbott * lib/test/unit/testcase.rb: Added equality checking. * lib/test/unit/testsuite.rb: Added equality checking. * lib/test/unit/assertions.rb: Fixed a warning. Wed Aug 6 17:28:10 2003 Nobuyoshi Nakada * ext/extmk.rb (extmake): pass LIBPATH to make ruby. [ruby-dev:21137] * ext/extmk.rb (extmake): set library name as source file name in Init_ext(). [ruby-dev:21137] * lib/mkmf.rb (Logging::postpone): postpone logging messages after heading message as the result of the block. * lib/mkmf.rb (macro_defined?): append newline to src unless ended with it. * lib/mkmf.rb (have_library): treat nil function name as "main". (ruby-bugs:PR#1083) * lib/mkmf.rb (pkg_config): should append additional libraries to $libs but not $LIBS. [ruby-dev:21137] * ext/io/wait/extconf.rb: check DOSISH macro instead of platform. * ext/digest/sha1/extconf.rb: have_library already appends library name. Wed Aug 6 17:23:57 2003 Yukihiro Matsumoto * eval.c: initialize /* OK */ variables by Qnil to stop warnings. Wed Aug 6 04:58:32 2003 NAKAMURA Usaku * ext/Setup*: add io/wait and openssl. Wed Aug 6 01:13:38 2003 Yukihiro Matsumoto * eval.c (rb_f_autoload): use ruby_cbase instead of ruby_class. * eval.c (rb_f_autoload_p): ditto. * class.c (rb_mod_init_copy): no longer implements independent clone and dup methods. override "initialize_copy" instead. [ruby-core:01352] * object.c (rb_class_s_alloc): define Class allocation function. this makes Classes to follow clone framework that uses initialize_copy. * object.c (rb_class_initialize): separate instantiation and initialization. * object.c (rb_obj_alloc): prohibit instantiation from uninitialized class. * object.c (rb_class_superclass): check uninitialized class. * array.c (rb_ary_fill): wrong index processing with block. this fix was done by Koji Arai [ruby-list:38029] * marshal.c (w_object): should preserve generic ivar for nil, true, false, symbols, and fixnums. * marshal.c (w_uclass): base_klass check should be done after rb_class_real(). Wed Aug 6 01:18:50 2003 Minero Aoki * lib/net/http.rb: update document. * lib/net/pop.rb: ditto. * lib/net/protocol.rb: ditto. Wed Aug 6 00:48:37 2003 Koji Arai * marshal.c (w_object): should recommend marshal_dump rather than _dump_data. Tue Aug 5 17:58:57 2003 WATANABE Hirofumi * lib/fileutils.rb (install): should preserve timestamp only. Tue Aug 5 17:31:59 2003 Ian Macdonald * lib/shell/command-processor.rb (Shell::CommandProcessor::rmdir): simple typo. Tue Aug 5 15:47:34 2003 Nobuyoshi Nakada * eval.c (rb_load): should preserve current source file/line. Tue Aug 5 10:04:42 2003 Yukihiro Matsumoto * string.c (str_new4): ptr may refer null_str. Mon Aug 4 17:25:18 2003 Yukihiro Matsumoto * stable version 1.8.0 released. For the changes before 1.8.0, see doc/ChangeLog-1.8.0 Local variables: add-log-time-format: (lambda () (let* ((time (current-time)) (diff (+ (cadr time) 32400)) (lo (% diff 65536)) (hi (+ (car time) (/ diff 65536)))) (format-time-string "%a %b %e %H:%M:%S %Y" (list hi lo) t))) indent-tabs-mode: t tab-width: 8 end: