Граф коммитов

613 Коммитов

Автор SHA1 Сообщение Дата
shugo 03b60c7068 * lib/net/ftp.rb (set_socket): new method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-18 02:52:48 +00:00
nobu d554a55d9b import
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-12 16:40:06 +00:00
nobu 6af4aebc95 * lib/resolv.rb (Resolv::DNS::open, close): new.
* lib/optparse.rb, lib/optparse: import.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2642 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-12 16:34:02 +00:00
aamine fa848fb6fd * lib/net/http.rb: rename HTTP.get_uri get_response.
* lib/net/http.rb: HTTP.get_print accepts URI objects.
* lib/net/http.rb: HTTP.get did not work with URI.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-11 21:33:38 +00:00
matz be1d2c5f68 * string.c (rb_str_slice_bang): if there's no corresponding
substring, slice! should return nil without exception.

* array.c (rb_ary_insert): type fixed.

* string.c (rb_str_split_m): accept separator value nil as well.

* string.c (rb_str_become): was leaking memory.

* class.c (rb_include_module): should not alter other
  classes/modules by inclusion.  by this fix, local order may not
  be preserved for some cases.

* class.c (include_class_new): module may be T_ICLASS; retrieve
  original module information.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-11 08:22:18 +00:00
shugo da72e5a644 * lib/resolv.rb: untaint strings read from /etc/hosts and
/etc/resolv.conf to prevent SecurityError when $SAFE==1.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-11 04:02:08 +00:00
keiju af064b04b1 * irb 0.9
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-09 11:17:17 +00:00
wakou ad9af3738b * lib/cgi.rb (CGI#initialize): improvement for mod_ruby.
thanks to Sean Chittenden <sean@ruby-lang.org>, Shugo Maeda
	<shugo@modruby.net>


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-05 05:04:25 +00:00
shugo 8e346d8cb1 * lib/net/ftp.rb (get): new method.
* lib/net/ftp.rb (putt): ditto.
* lib/net/ftp.rb (binary): ditto.
* lib/net/ftp.rb (binary=): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-03 05:28:01 +00:00
shugo 9620b20227 * lib/net/ftp.rb (getbinaryfile): the second argument (localfile)
is now optional.
* lib/net/ftp.rb (gettextfile): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-03 04:59:24 +00:00
shugo f930648ae5 * lib/net/ftp.rb: use &block and yield for speed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-03 04:49:54 +00:00
akr 4e85b28085 expand TABs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2618 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-03 02:49:42 +00:00
wakou 8a95f1257f * lib/cgi.rb (CGI#initialize): improvement for mod_ruby.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-03 02:36:46 +00:00
wakou e5ae0debe3 * lib/cgi.rb (CGI#header): accept any type as value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-07-02 14:19:51 +00:00
akr ba8174d11e made object address test to compare inspect's result.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-30 07:30:26 +00:00
akr 788181a4eb fix object address test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2611 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-29 16:21:18 +00:00
matz f0221db462 * re.c (rb_reg_expr_str): need to process backslashes properly.
* object.c (rb_any_to_a): declare Object#to_a to be obsolete.

* object.c (rb_Array): do not convert nil into [] automagically.

* object.c (rb_Integer): use "to_int" instead of
  "to_i". [experimental]

* object.c (nil_to_f): new method.

* object.c (rb_Integer): Symbols and nil should cause error.

* object.c (rb_Float): nil should cause error.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-28 14:42:46 +00:00
akr ee852ed46d lib/pp.rb: fix object address.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-28 08:55:10 +00:00
akr 571ff1d6b9 * lib/prettyprint.rb, lib/pp.rb: convenience methods added.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2602 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-27 12:01:07 +00:00
akr 48fbacb11c refine previous change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2601 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-27 09:30:47 +00:00
akr e50f2d285f * lib/prettyprint.rb: re-implemented for incremental output to handle
huge data.  API is changed a bit.

* lib/pp.rb: adapt new pretty printing API.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2600 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-27 06:27:20 +00:00
matz 05b4ec8683 * parse.y (yylex): __END__ should not be effective within
string literals.

* parse.y (here_document): should be aware of __END__ within here
  documents.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-24 07:59:02 +00:00
nobu 9020b60483 * lib/mkmf.rb (create_makefile): get rid of nested string.
* lib/mkmf.rb (install_rb): site-install didn't work properly.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-24 07:34:30 +00:00
nobu 33061b45b4 * eval.c (rb_eval): NODE_EVSTR is no longer used.
* eval.c (eval): not enforce to make assigned variables dynamic.

* parse.y (string): split rules to strings/xstring/regexp to allow
  arbitrary statements inside string interpolation.

* parse.y (here_document): splitted into three phases.

* parse.y (literall_append, literal_concat): added.
  append/concatinate string literals.

* sample/test.rb (valid_syntax): adjust line number for BEGIN.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-24 07:20:42 +00:00
tadf 0e866a2e51 updated to the new version (based on date2 3.3).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2589 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-22 15:26:58 +00:00
eban 75c89b7eef * lib/ftools.rb (compare): don't return with a file opened
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-20 08:59:59 +00:00
eban e97d0b7764 * lib/ftool.rb (BUFSIZE): tuning, set buffer length to 8192.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-20 08:21:00 +00:00
eban fa1f7befa9 * ext/extmk.rb, lib/mkmf.rb (xsystem): open the log file if xsystem is called.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-19 05:54:24 +00:00
matz 8a6092725d ext/exmk.rb.in, lib/singleton.rb: remove nested ""s.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-13 04:53:39 +00:00
eban a2020f907a * lib/mkmf.rb: typo fix(RUBY_PLAT_FORM -> RUBY_PLATFORM).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-13 02:21:53 +00:00
akira b8be8d535a merged differences between uri-0.9.6 and uri-0.9.7
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-12 09:32:35 +00:00
matz 22010642b2 * eval.c (rb_eval): ruby_frame->last_func may be null, if it's
called outside of a method.

* parse.y (arg): use INT2NUM, not INT2FIX for tUMINUS.

* parse.y (arg): unnecessary negative tPOW treatment.

* parse.y (tokadd_escape): wrong backslash escapement.

* parse.y (stmt,arg): too much void value check.

* parse.y (stmt,arg): need to check void value on rules which does
  not use node_assign().

* ext/socket/socket.c (ipaddr): need not to taint hostnames.

* range.c (range_include): should be based on "<=>", whereas
  member? still is based on "each".

* range.c (range_min,range_max): redefine methods based on "<=>".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-11 07:02:23 +00:00
shugo a5fd4cec84 * lib/net/ftp.rb (noop): new method.
* lib/net/ftp.rb (site): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-11 04:20:11 +00:00
H_Konishi d0b3651906 new platform [bccwin32] merged.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-11 01:27:48 +00:00
nobu d760f97172 * lib/thread.rb (Queue::pop): get rid of race condition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-06 02:43:02 +00:00
matz b7bc0cae53 * string.c (rb_str_aset): should raise error if an indexing string
is not found in the receiver.

* sprintf.c (rb_f_sprintf): "%d" should convert objects into
  integers using Integer().

* lib/tempfile.rb (Tempfile::size): added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-06-04 07:34:19 +00:00
matz 34f5c4061c * range.c (range_step): iteration done using "+" if elements are
Numeric.  Otherwise using "succ".

* range.c (range_each): iteration done using "succ".  If the
  elements does not respond to "succ", raise TypeError.  As a
  result, all Enumerable methods, e.g. collect, require elements
  to respond to "succ'.

* range.c (range_member): comparison done using "each", if
  elements are non-Numeric or no-"succ" objects.  Otherwise
  compare using "<=>".

* range.c (Init_Range): remove "size" and "length".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-30 06:12:29 +00:00
wakou 21b2953030 * lib/cgi.rb: if StringIO is usable then use it.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-30 00:21:05 +00:00
wakou 4b3a6c7aec fix for POST method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-29 05:39:09 +00:00
matz 4ab1577db3 * parse.y: yyparse #defines moved from intern.h
* ruby.c (proc_options): access prefixed "ruby_yydebug".

* applied modifies to pacify some of gcc -Wall warnings.

* parse.y (arg): no more ugly hack for "**", so that "-2**2" to be
  parsed as "(-2)**2", whereas "- 2**2" or "-(2)**2" to be parsed
  as "-(2**2)".

* parse.y (yylex): '-2' to be literal fixnum. [new]

* time.c (time_succ): new method for Range support.

* time.c (time_arg): nil test against v[6] (usec).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-29 05:20:39 +00:00
wakou 99551555c8 * lib/cgi.rb: not use const if GET, HEAD. check multipart form head.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-29 04:48:32 +00:00
wakou 221e3c4c07 Tue May 21 04:48:37 2002 Sean Chittenden <sean@chittenden.org>
* lib/cgi-lib.rb: Checking for constant MOD_RUBY instead of
	  environment variable. Remove a mod_ruby warning and use
	  Apache::request.headers_out[] instead.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-20 19:56:52 +00:00
tadf e592b8f286 added an entry (date/format.rb).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-19 10:28:36 +00:00
tadf a0a9227b71 use Array#select instead of Array#indexes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-18 12:57:54 +00:00
tadf dc9cd6a8c2 updated to the new version (based on date2 3.2.1).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-18 12:41:51 +00:00
knu 323af7e264 * lib/mkmf.rb: exclude topdir from the system configuration
section and prevent it from being overridden.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-04 21:57:32 +00:00
eban 2b4ad0cc22 * ext/extmk.rb.in, lib/mkmf.rb: use 'do...end' instead of '{}' for Borland make.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-05-02 09:31:29 +00:00
matz b134b91278 * various files: macro fix-up by Michal Rokos.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-25 13:57:01 +00:00
gotoken 4ec25bdd63 discarded unused parameter
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-24 19:14:59 +00:00
matz e3a8c62630 * io.c (rb_io_mode_flags): both 'r+b' and 'rb+' should be allowed.
* io.c (rb_io_mode_modenum): ditto.

* gc.c (rb_memerror): rename from mem_error, and exported.

* gc.c (Init_GC): pre-allocate NoMemoryError instance.

* object.c (convert_type): error message changed from "failed to
  convert" to "cannot convert", since it does not try to convert
  if an object does not respond to the converting method.

* eval.c (block_pass): convert Method to Proc using
  rb_check_convert_type().

* object.c (rb_check_convert_type): always convert T_DATA

* eval.c (rb_thread_cleanup): should not terminate main_thread by
  Fatal error.

* regex.c (is_in_list): need to not exclude NUL and NEWLINE.

* re.c (rb_reg_expr_str): wrong backslash escapement.

* re.c (rb_reg_expr_str): do not escape embedded space
  characters.

* marshal.c (w_object): T_DATA process patch from Joel VanderWerf
  <vjoel@PATH.Berkeley.EDU>.  This is temporary hack; it remains
  undocumented, and it will be removed when marshaling is
  re-designed.

* marshal.c (r_object): ditto.

* numeric.c (num_step): Integer#step is moved to Numeric#step;
  Fixnum#step is merged into this method.

* numeric.c (int_dotimes): Fixnum#times is merged.

* numeric.c (int_upto): Fixnum#upto is merged.

* numeric.c (int_downto): Fixnum#downto is merged.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-24 04:54:16 +00:00
nobu b596fbbc37 * ext/stringio/stringio.c (strio_mark): must check if ptr is NULL
first.  [ruby-talk:38873]

* lib/mkmf.rb (create_makefile): should print depend file when
  make is other than nmake.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-23 16:22:25 +00:00
usa ad8dbab888 * ext/extmk.rb.in (create_makefile): use `{$(srcdir)}' directive instead
of `$(srcdir)/' when including depend file.

* lib/mkmf.rb (create_makefile): add `{$(srcdir)}' when including depend
  file.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-23 15:43:26 +00:00
eban 512db243d7 * configure.in: cleanup for autoconf 2.5x.
* configure.in: use gcc -shared instead of dllwrap on Cygwin/MinGW.
* ext/extmk.rb, lib/mkmf.rb: get rid of "--def=".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-19 07:39:40 +00:00
akr 53641c5118 modify document.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-18 05:11:31 +00:00
matz 5527b3b961 * eval.c (assign): ruby_verbose should be surrounded by RTEST().
* object.c (rb_str2cstr): ditto.

* parse.y (void_expr): ditto.

* parse.y (void_stmts): ditto.

* variable.c (rb_ivar_get): ditto.

* variable.c (rb_cvar_set): ditto.

* variable.c (rb_cvar_get): ditto.

* dir.c (glob_helper): should have proceed link when link->path
  was non existing symbolic link.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2363 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-11 10:03:01 +00:00
wakou bd074c1f03 * lib/cgi/session.rb: support for multipart form.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2354 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-10 17:02:47 +00:00
matz 19c42c0740 * variable.c (rb_obj_remove_instance_variable): raise NameError if
specified instance variable is not defined.

* variable.c (generic_ivar_remove): modified to check ivar
  existence.

* file.c (rb_file_s_extname): new method based on the proposal
  (and patch) from Mike Hall. [new]

* eval.c (error_handle): default to 1 unless status is set.

* eval.c (ruby_options): guard error_handle() with PROT_NONE.

* eval.c (ruby_stop): ditto.

* math.c (math_acosh): added. [new]

* math.c (math_asinh): ditto.

* math.c (math_atanh): ditto.

* struct.c (rb_struct_each_pair): method added. [new]

* class.c (rb_singleton_class): wrong condition; was creating
  unnecessary singleton class.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2348 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-10 08:45:26 +00:00
nobu afc4cd48d1 * lib/mkmf.rb (try_link0): need expand macro in command, sync with
ext/extmk.rb.in.

* lib/mkmf.rb (try_cpp): ditto.

* lib/mkmf.rb (egrep_cpp): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-09 04:43:12 +00:00
matz 1c6a8e4deb * Makefile.in (CPPFLAGS): remove @includedir@.
* lib/mkmf.rb (create_makefile): ditto.

* ext/extmk.rb.in (create_makefile): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2320 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-02 06:48:45 +00:00
ttate edf4c88f79 mkmf.rb: files[0,1] == "." -> files[0,2] == "./"
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2318 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-01 17:42:32 +00:00
ttate 46a7493b6c lib/mkmf.rb: install any files using $INSTALLFILES. (from [ruby-dev:16683])
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2317 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-04-01 15:01:56 +00:00
nahi 76f963d077 Changed the regexp again to simplify code. See also [ruby-dev:16682].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-29 11:52:09 +00:00
nobu 014c5da903 * lib/mkmf.rb (create_makefile): default FLAGS to empty strings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-29 11:25:01 +00:00
nobu 09651f0431 * lib/mkmf.rb (arg_config): should use Shellwords::shellwords like
ext/extmk.rb.in.

* lib/mkmf.rb (enable_config): default had priority over command
  line options and configure_args.

* lib/mkmf.rb: support autoconf 2.53 style variables from
  environment.

* lib/mkmf.rb: add directory options.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-29 07:42:20 +00:00
nahi 766762300b Changed regexp for parsing break command '.*?+' to '.+'.
See also [ruby-dev:16652].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-29 03:05:11 +00:00
aamine 1ea1fbe85d * lib/net/http.rb: HTTP.get accepts URI.
* lib/net/http.rb: add some HTTP 1.1 response codes.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2290 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-26 11:18:02 +00:00
aamine fb54b37850 * lib/fileutils.rb: new file.
* lib/README: add fileutlis.rb.
* doc/NEWS: add fileutils.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2280 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-26 02:03:04 +00:00
akr 4795daf1bc * lib/pp.rb (pp): return nil like p.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2279 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-25 18:24:46 +00:00
aamine 890521d117 racc runtime imported.
* lib/racc/parser.rb: new file.
* ext/racc/MANIFEST, cparse.c, depend, extconf.rb: new files.
* lib/README: add racc/parser.rb.
* ext/Setup*: add racc/cparse.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-22 07:20:31 +00:00
aamine b90b70d734 net/protocol.rb: Protocol#start should return self.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-22 05:24:00 +00:00
akr 0c41c1fc22 * lib/resolv.rb: fix arguments to create exceptions.
Patch from matt@lickey.com.  (ruby-bugs:PR#278)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-22 05:15:44 +00:00
matz 997b69cb6a * re.c (rb_reg_match): should clear $~ if operand is nil.
* re.c (rb_reg_match2): ditto.

* configure: merge Jonathan Baker's large file support patch
  [ruby-talk:35316], with read_all patch in [ruby-talk:35470].

* eval.c (rb_f_abort): optional message argument that be printed
  on termination. [new]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-14 06:23:46 +00:00
knu 14461ddae6 * lib/getopts.rb: single_options can be nil[*], and is not not
optional. ([*]Pointed out by gotoken)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-13 09:44:59 +00:00
akr 230034b7ab * lib/resolv.rb: don't complete domains for absolute FQNs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2185 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-12 08:12:32 +00:00
akr 8b9823a23d * lib/tsort.rb: new file.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2179 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-11 14:09:11 +00:00
akr d41f53d0b6 * lib/resolv.rb: use its own thread group for background threads.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2167 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-08 03:19:53 +00:00
knu f2dfae7ea0 * lib/getopts.rb: Rewrite to fix some bugs and complete features.
- Accept options with the colon in the first argument;
    getopts("a:bcd:") is equivalent to getopts("bc", "a:", "d:").
  - Do not discard the argument that caused an error.
  - Do not discard '-', which commonly stands for stdin.
  - Allow specifying a long option with a value using '='.
    (command --long-option=value)
  - Stop reading options when it meets a non-option argument.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-04 21:15:47 +00:00
shugo 4a58b0fd7c * lib/net/imap.rb: added document.
* lib/net/imap.rb (getquotaroot): new method.
* lib/net/imap.rb (setacl): remove the rights if the rights
parameter is nil.
* lib/net/imap.rb (getacl): return a MailboxACLItem object.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-03-01 02:27:37 +00:00
akira 3916df613e * lib/uri/generic.rb: merge0 shuld return [oth, oth] if oth is absolute URI.
* lib/uri/generic.rb: registry part must not be allowed for any schemes for the Internet. (RFC2396, section 3.2.2 and 3.2.1.)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-26 02:36:05 +00:00
nahi 6e2ad002ed Corrected mis-indentation. Try diff -w to find that these are the same without
indentation.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2137 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-25 15:30:31 +00:00
nobu aaa30fd040 * lib/shell.rb (Shell::expand_path): relative to @cwd.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-25 04:35:12 +00:00
nahi 018c5191bf Refactoring. Added Context#format_frame to format a frame, used by up/down
command and Context#display_frames.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2121 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-23 09:40:58 +00:00
aamine d80b8cd59e modify typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2120 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-22 12:54:11 +00:00
aamine d3b66ccf45 * lib/net/protocol.rb: set read_timeout dynamically.
* lib/net/http.rb: @@newimpl is always true in the main trunk.
* lib/net/http.rb: HTTP.port -> default_port
* lib/net/http.rb: HTTPResponse.read_response_status -> read_status_line


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-22 12:10:58 +00:00
matz 088d04d88e * bignum.c (get2comp): need to specify to carry or not.
* io.c (rb_io_inspect): embed path info.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-22 10:28:47 +00:00
akr 9ce7325615 * prettyprint.rb: FillGroup implemented.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-22 02:31:46 +00:00
matz a08cea360d * pack.c (pack_pack): wrong # comment treatment.
* pack.c (pack_unpack): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-21 07:15:06 +00:00
aamine 19f7f6ea12 aamine
* lib/net/protocol.rb: rename Protocol.port to default_port.
* lib/net/smtp.rb: ditto.
* lib/net/pop.rb: ditto.
* lib/net/http.rb: ditto.
* lib/net/protocol.rb: rename BufferedSocket class to InternetMessageIO.
* lib/net/smtp.rb: ditto.
* lib/net/pop.rb: ditto.
* lib/net/http.rb: ditto.
* lib/net/protocol.rb: rename InternetMessageIO#write_pendstr to write_message.
* lib/net/smtp.rb: ditto.
* lib/net/protocol.rb: new method InternetMessageIO#through_message.
* lib/net/smtp.rb: ditto.
* lib/net/protocol.rb: rename InternetMessageIO#read_pendstr to read_message_to.
* lib/net/pop.rb: ditto.
* lib/net/protocol.rb: rename InternetMessageIO#read_pendlist to each_list_item
* lib/net/pop.rb: ditto.
* lib/net/protocol.rb: Now block size is 1024.
* lib/net/smtp.rb: new methods SMTP#esmtp? and #esmtp=.
* lib/net/http.rb: Using singleton method syntax instead of singleton class clause, to avoid behavior change of class variables in ruby 1.7.
* lib/net/http.rb: HTTPResponse class does not inherit from Net::Response.
* lib/net/http.rb: devide HTTP#connecting into {begin,end}_transport.
* lib/net/http.rb: unused class Accumulator removed.
* lib/net/http.rb: Net::HTTP reads response. not HTTPRequest.
* lib/net/http.rb: proxy related class-instance-variables are not initialized correctly.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-19 12:33:52 +00:00
aamine ffc3c4b401 aamine
* lib/net/http.rb: HTTP.Proxy should use self for proxy-class's super class.
* lib/net/http.rb: initialize HTTP.proxy_port by HTTP.port.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-07 20:22:39 +00:00
akira 91a3db0afc uri-0.9.5
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-07 04:51:11 +00:00
shugo 6bebc82c03 * lib/net/imap.rb: OpenSSL support.
* lib/net/imap.rb (setquota): unset quota if the second argument is nil.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-06 04:39:00 +00:00
matz 43f68272c7 * object.c (rb_class_real): should not follow ICLASS link
* variable.c (classname): should follow ICLASS link explicitly.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-04 08:09:14 +00:00
matz 9f0d9bd711 * file.c (rb_stat_inspect): print dev, rdev in hexadecimal.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-02-01 06:03:03 +00:00
nobu 3d51761abd * lib/mkmf.rb (dir_config): prior --with flag.
* lib/mkmf.rb (arg_config): avoid special variables for
  font-lock-mode.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-31 12:03:08 +00:00
akr 097c41755d refine previous change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2035 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-31 04:57:54 +00:00
akr caa76f71fb * lib/pp.rb (File::Stat#pretty_print): print rdev_major and rdev_minor.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2034 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-31 04:24:04 +00:00
akr 46d98fe87b * lib/pp.rb: don't print a mode File::Stat as decimal number.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-29 10:01:41 +00:00
matz 86298123d7 * file.c (rb_stat_rdev_major): added. [new]
* file.c (rb_stat_rdev_minor): added. [new]

* file.c (rb_stat_inspect): print mode in octal.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-29 07:16:09 +00:00
matz 4f38c453b4 * eval.c (is_defined): defined?(Foo::Baz) should check constants
only, no methods.

* eval.c (is_defined): should not dump core on defined?(a::b)
  where a is not a class nor a module.

* object.c (Init_Object): remove dup and clone from TrueClass,
  FalseClass, and NilClass.

* array.c (rb_ary_fill): Array#fill takes block to get the value to
  fill.

* string.c (rb_str_to_i): to_i(0) auto-detects base radix.

* array.c (rb_ary_initialize): fill by the block evaluation value
  if block is given.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2021 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-28 08:44:45 +00:00
akr 17e1cfef8c * lib/timeout.rb (timeout): new optional argument to specify an
exception class.

* lib/resolv.rb: use Resolv::ResolvTimeout for internal timeout to
avoid problem with timeout of application.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1994 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-16 03:37:23 +00:00
matz 2f8cdb7978 * lib/English.rb: typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-11 09:22:04 +00:00
akira 8a277783ab added uri library (uri-0.9.4)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-10 08:00:51 +00:00
akr 41dd4d2b6a fix typo in documentation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-07 06:48:48 +00:00
akr 6a100f3ce4 * lib/time.rb (Time#xmlschema): new optional argument
fractional_seconds to specify a number of digits of
fractional part of the time.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-07 03:56:55 +00:00
matz 459031e5d9 * process.c (rb_f_system): abandon vfork.
* io.c (pipe_open): ditto.

* defines.h: sparc linux needs different FLUSH_REGISTER_WINDOWS

* regex.c (re_search): abandon stclass optimization.

* bignum.c (rb_cstr2inum): deny "0_".

* bignum.c (rb_cstr2inum): allow "0\n" and so on.

* error.c (rb_invalid_str): utility function to show inspect()'ed
  string.

* bignum.c (rb_cstr2inum): prints invalid strings in inspect()'ed
  format.

* object.c (rb_Float): ditto.

* object.c (rb_convert_type): no longer use rb_rescue().

* re.c (rb_reg_search): initialize taint status of match object.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-04 14:15:33 +00:00
knu a7685a6b87 The author of getoptlong.rb has agreed on changing the license from
GPL to Ruby's.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1958 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-04 09:03:11 +00:00
eban 167dd9c933 * lib/mkmf.rb (create_makefile): add -I. to CPPFLAGS.
* lib/mkmf.rb (create_makefile): srcdir support(.def and depend file).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2002-01-02 14:42:01 +00:00
aamine f3d9a0cc21 aamine
* lib/net/protocol.rb: Protocol#start returns the return value of block.
* lib/net/protocol.rb: set timeout limit by default.
* lib/net/protocol.rb: new methods WriteAdapter#write, puts, print, printf.
* lib/net/http.rb: rename HTTP#get2 to request_get, post2 to request_post ...
* lib/net/smtp.rb: should not resolve HELO domain automatically.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1951 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-30 19:18:45 +00:00
eban 69b463d9a3 * ext/extmk.rb.in, lib/mkmf.rb (have_library): print yes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-29 16:34:01 +00:00
eban b8c26d48bc * ext/extmk.rb.in, lib/mkmf.rb (have_library): accept -lm
unconditionally on mswin32/mingw32.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-29 16:10:24 +00:00
akr 36e891304c add pp.rb, prettyprint.rb and time.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-24 20:34:04 +00:00
akr a2ba32fab9 lib/pp.rb lib/prettyprint.rb: new file.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-24 17:38:33 +00:00
matz 63b6b9c430 * time.c (time_plus): result should not be negative unless
NEGATIVE_TIME_T is defined.

* time.c (time_new_internal): should check tv_sec overflow too.

* time.c (time_timeval): should check time_t range when time is
  initialized from float.

* time.c (time_plus): uses modf(3).

* variable.c (rb_cvar_set): add frozen class/module check.

* variable.c (rb_cvar_declare): add frozen class/module check.

* re.c (match_to_a): should propagate taint.

* re.c (rb_reg_s_quote): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-21 09:23:28 +00:00
nobu b7a58b0650 * lib/mkmf.rb (with_destdir): new.
* lib/mkmf.rb: prefix target directories with $(DESTDIR) all.

* lib/mkmf.rb: no need to mkdir $(libdir)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-20 16:23:27 +00:00
aamine 5a4187f2c2 aamine
* lib/net/protocol.rb: rename Net::Socket to Net::BufferedSocket


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-20 05:00:20 +00:00
akr 8e8c76bd5f * lib/time.rb: date.rb is not required anymore.
* lib/resolv.rb: fix document.  refine IPv6 regex.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-18 18:14:08 +00:00
akr bb6c116c63 * lib/time.rb: use Time#utc_offset.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-17 07:22:03 +00:00
aamine 39c0252e04 aamine
* lib/net/pop.rb: new method Net::POP3.APOP
* lib/net/http.rb: set default Content-Type to x-www-form-urlencoded (causes warning)
* lib/net/protocol.rb: remove Net::NetPrivate module.
* lib/net/smtp.rb: ditto.
* lib/net/pop.rb: ditto.
* lib/net/http.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-13 19:15:21 +00:00
akr 3493ea5c7a new file.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-10 06:52:47 +00:00
keiju 68ed743d99 * matrix.rb: Vector#* bug. reported from Massimiliano Mirra
<info@chromatic-harp.com>.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-09 14:11:30 +00:00
aamine fa6dc283cd aamine
* lib/net/protocol.rb: calls on_connect before conn_command


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-09 08:58:30 +00:00
aamine a20863ff41 aamine
* lib/net/smtp.rb: SMTP.new requires at least one arg.
* lib/net/pop.rb: POP.new requires at least one arg.
* lib/net/pop.rb: uses "raise *Error.new" instead of simple raise.
* lib/net/http.rb: HTTP.new requires at least one arg.
* lib/net/http.rb: changes implicit start algolithm.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-07 10:04:25 +00:00
usa 22d2d65d6f * ext/extmk.rb.in: add -Wl,-R flags to DLDFLAGS on netbsdelf.
* lib/mkmf.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-06 09:55:31 +00:00
matz b3144a7a0e * time.c (time_plus): must detect result overflow.
* time.c (time_minus): ditto.

* time.c (time_new_internal): round usec overflow and underflow
  here.

* time.c (time_plus): move operand overflow/underflow check to
  time_new_internal().

* time.c (time_minus): ditto.

* time.c (time_cmp): should consider tv_usec too.

* time.c (time_gmtime): time_modify() should be called even if tm
  struct is not calculated yet.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-03 10:07:48 +00:00
knu bec6d909e7 One more fix to use Digest::MD5.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-01 14:07:02 +00:00
knu 31e15f7606 Reflect the update of the MD5 module which is now Digest::MD5.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-12-01 14:07:01 +00:00
matz 6ab0ff977d * eval.c (rb_thread_select): should subtract timeofday() from
limit, not reverse.

* util.c (scan_hex): x is not a hexadecimal digit.

* eval.c (rb_thread_schedule): should treat the case that
  select(2) returns 0, if a thread is under both WAIT_SELECT and
  WAIT_TIME.  Jakub Travnik <J.Travnik@sh.cvut.cz> actually fixed
  this bug.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1862 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-11-28 14:56:32 +00:00
matz 186c8b592a * marshal.c (w_float): must distinguish -0.0 from 0.0.
* gc.c (gc_mark_all): tweak mark order for little bit better scan.

* gc.c (rb_gc_mark): ditto.

* gc.c (rb_gc): ditto.

* enum.c (sort_by_i): slight performance boost.

* gc.c (gc_mark_rest): should call gc_mark_children(), not gc_mark().

* gc.c (rb_gc_mark): may cause infinite looop.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-11-27 10:00:35 +00:00
matz f1fdbf080e * parse.y (str_extend): should check nesting parentheses in #{}.
* process.c (pst_wstopsig): returns nil unless WIFSTOPPED() is
  non-zero.

* process.c (pst_wtermsig): returns nil unless WIFSIGNALED() is
  non-zero.

* process.c (pst_wexitstatus): returns nil unless WIFEXITED() is
  non-zero.

* eval.c (rb_thread_select): tv_sec and tv_usec should not be
  negative.

* signal.c (posix_signal): do not set SA_RESTART for SIGVTALRM.

* parse.y (call_args2): block_arg may follow the first argument in
  call_args2.

* eval.c (stack_check): should avoid stack length check during
  raising SystemStackError exception.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-11-21 15:42:12 +00:00
shugo e15f65b004 * lib/cgi.rb: CGI#header: do not set Apache.request.status for
Location: if Apache.request.status is already set.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-11-21 03:30:22 +00:00
matz df96f994f1 * parse.y (parse_regx): should raise error on untermitated
expression interpolation.

* pack.c (pack_unpack): should give length to utf8_to_uv().

* pack.c (utf8_to_uv): add length check.

* massages: replace "wrong #" by "wrong number".

* marshal.c (w_float): output Infinity and NaN explicitly.

* marshal.c (r_object): support new explicit float format.

* eval.c (rb_thread_wait_for): select may cause ERESTART on
  Solaris.

* eval.c (rb_thread_select): ditto.

* array.c (rb_ary_join): dumped core if sep is not T_STRING nor T_NIL.

* array.c (rb_ary_join): buffer size calculattion was wrong.

* array.c (rb_ary_to_s): if rb_output_fs is nil, insert newlines
  between array elements (use rb_default_rs as newline litral)
  [experimental].

* gc.c (init_mark_stack): no need to clear mark_stack.

* gc.c (gc_mark_all): need to handle finalizer mark.

* gc.c (gc_mark_rest): use MEMCPY instead of memcpy.

* gc.c (rb_gc_mark): earlier const check to avoid pusing special
  constants into mark stack.

* numeric.c (fix_to_s): 'to_s' now takes optional argument to
  specify radix. [new]

* bignum.c (rb_big_to_s): ditto. [new]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-11-19 05:03:03 +00:00
wakou d550569264 * lib/cgi.rb (header): support for Apache. thanks to
Shugo Maeda <shugo@ruby-lang.org>.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-11-18 20:08:14 +00:00
matz 948ff2456b * signal.c (sighandle): should not re-register sighandler if
POSIX_SIGNAL is defined.

* eval.c (error_print): errat array may be empty.

* eval.c (rb_eval_cmd): should not upgrade safe level unless
  explicitly specified by argument newly added.

* signal.c (sig_trap): should not allow tainted trap closure.

* variable.c (rb_f_trace_var): should not allow trace_var on safe
  level higher than 3.

* variable.c (rb_f_trace_var): should not allow tainted trace
  closure.

* gc.c: do not use static stack until system stack overflows.

* eval.c (eval): should call Exception#exception instead of
  calling rb_exc_new3() directly.

* error.c (exc_exception): set "mesg" directly to the clone.  it
  might be better to set mesg via some method for flexibility.

* variable.c (cvar_override_check): should print original module
  name, if 'a' is T_ICLASS.

* parse.y (yylex): float '1_.0' should not be allowed.

* variable.c (var_getter): should care about var as Qfalse
  (ruby-bugs#PR199).

* array.c (cmpint): <=> or block for {min,max} may return bignum.

* array.c (sort_1): use rb_compint.

* array.c (sort_2): ditto.

* enum.c (min_ii): ditto.

* enum.c (min_ii): ditto.

* enum.c (max_i): ditto.

* enum.c (max_ii): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-11-13 08:14:27 +00:00
matz dc98adf839 * process.c (security): always give warning for insecure PATH.
* dir.c (my_getcwd): do not rely on MAXPATHLEN.

* file.c (rb_file_s_readlink): ditto.

* file.c (path_check_1): ditto.

* eval.c (rb_yield_0): should not call rb_f_block_given_p().

* string.c (rb_str_chomp_bang): should terminate string by NUL.

* eval.c (rb_yield_0): better error message.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1816 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-11-08 06:43:14 +00:00
shugo 2fc66e2841 * lib/net/imap.rb (getquota_response): use astring for mailbox
names.
* lib/net/imap.rb (getacl_response): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-11-06 05:20:25 +00:00
keiju edaf0477a5 * matrix.rb (Matrix#column_vectors, Matrix#row_vectors): ditto bug.
this bug report and fix by tsutomu@nucba.ac.jp.

* forwardable.rb: change raise to Kernel::raise


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1812 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-11-03 13:41:57 +00:00
matz bbb608ad79 * bignum.c (rb_big_aref): idx may be a Bignum.
* numeric.c (fix_aref): negative index must return zero.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-11-01 05:11:24 +00:00
wakou 4c9362b74f * lib/cgi.rb: CGI::Cookie::parse(): Ignore duplicate keys caused by
Netscape bug.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-10-30 17:48:24 +00:00
matz 88abd791f5 * parse.y (str_extend): shuould allow interpolation of $-x.
* variable.c (rb_cvar_set): empty iv_tbl may cause infinite loop.

* variable.c (rb_cvar_get): ditto.

* variable.c (cvar_override_check): ditto.

* bignum.c (rb_big_eq): convert Bignum to Float, instead of
  reverse.

* time.c (time_localtime): getting tm should not be prohibited for
  frozen time objects.

* time.c (time_gmtime): ditto.

* version.c (Init_version): freeze RUBY_VERSION,
  RUBY_RELEASE_DATE, and RUBY_PLATFORM.

* file.c (Init_File): freeze File::SEPARATOR, ALT_SEPARATOR and
  PATH_SEPARATOR.

* file.c (rb_stat_cmp): should check operand type before calling
  get_stat().

* eval.c (rb_eval_cmd): should not invoke "call" with a block on
  any occasion.

* numeric.c (fix_aref): idx may be a Bignum.

* numeric.c (num_remainder): a bug in Numeric#remainder.

* eval.c (rb_exec_end_proc): END might be called within END
  block.

* class.c (rb_mod_clone): should not copy class name, since clone
  should remain anonymous.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-10-29 05:07:26 +00:00
matz 959d5febcf * class.c (rb_mod_clone): should not copy class name, since clone
should remain anonymous.

* eval.c (rb_call0): self in a block given to define_method now be
  switched to the receiver of the method.

* eval.c (proc_invoke): added new parameter to allow self
  switching.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-10-22 06:48:18 +00:00
matz 5f877e8431 * string.c (rb_str_index): wrong increment for non alphanumeric
string.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-10-16 03:27:23 +00:00
matz 1fe40b7cc5 * marshal.c (r_object): better allocation type check for
TYPE_UCLASS. usage of allocation framework is disabled for now.

* variable.c (rb_class_path): Module may have subclass.

* string.c (rb_str_update): should maintain original negative
  offset.

* string.c (rb_str_subpat_set): ditto

* string.c (rb_str_aset): ditto.

* re.c (rb_reg_nth_match): should check negative nth.

* re.c (rb_reg_nth_defined): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-10-03 07:19:19 +00:00
eban d902111a57 * lib/ftools.rb (catname): allow trailing '/' for the destination.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-10-02 10:36:34 +00:00
matz 75eee0bafd * ext/socket/socket.c (unix_addr): getsockname(2) may result len = 0.
* ext/socket/socket.c (unix_peeraddr): getpeername(2) may result
  len = 0.

* string.c (rb_str_subpat_set): support function for new argument
  pattern String#[re,offset] = val. [new]

* eval.c (POP_BLOCK): rb_gc_force_recycle() was called too much.
  Should not be called if SCOPE_DONT_RECYCLE is set.

* string.c (rb_str_aref_m): new argument pattern
  String#[re,offset]. [new]

* string.c (rb_str_substr): should return an instance of
  receiver's class.

* string.c (rb_str_succ): ditto.

* array.c (rb_ary_subseq): ditto.

* array.c (rb_ary_initialize): Array.new([1,2,3]) => [1,2,3]. [new]

* string.c (rb_str_reverse): should return an instance of
  receiver's class.

* string.c (rb_str_times): ditto.

* array.c (rb_ary_times): ditto

* string.c (str_gsub): ditto.

* string.c (rb_str_ljust): ditto.

* string.c (rb_str_rjust): ditto.

* string.c (rb_str_center): ditto.

* eval.c (eval): retrieves file, line information from binding.

* eval.c (intersect_fds): counts intersecting fds.

* eval.c (rb_thread_schedule): only fds requested by
  each thread count as select_value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-10-02 04:31:23 +00:00
matz 67245eec71 * eval.c (rb_thread_restore_context): save current value of
lastline and lastmatch in the thread struct for later restore.

* eval.c (rb_thread_save_context): restore lastline and lastmatch.

* numeric.c (flo_to_s): should handle negative float value.

* class.c (rb_include_module): should check whole ancestors to
  avoid duplicate module inclusion.

* string.c (trnext): should check backslash before updating "now"
  position.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1746 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-09-08 14:17:53 +00:00
wakou 1bcc5eb922 * lib/net/telnet.rb: waitfor(): improvement. thanks to
nobu.nakada@nifty.ne.jp


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-09-07 22:17:13 +00:00
wakou 6e2490beb5 * lib/net/telnet.rb: waitfor(): bug fix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1743 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-09-07 00:56:10 +00:00
wakou 749f0f9255 * lib/cgi.rb: CGI#doctype(): bug fix (html4Fr).
* lib/net/telnet.rb, lib/cgi.rb: remove VERSION, RELEASE_DATE,
	  VERSION_CODE, RELEASE_CODE. please use REVISION.

	* lib/cgi.rb: CGI#header(): bug fix.

	* lib/net/telnet.rb, lib/cgi.rb: concat --> +=


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-09-06 22:18:11 +00:00
eban fce2bf70a2 * lib/jcode.rb: fixup quote handing.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-09-06 08:12:24 +00:00
eban d878585e5f * lib/jcode.rb (_regexp_quote): fix quote handling, again.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1733 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-09-06 04:34:36 +00:00
eban 3c8ac80202 typo fix
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-09-05 08:50:19 +00:00
eban 2a67d0b9f9 * lib/jcode.rb (_regexp_quote): fix quote handling.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-09-05 08:45:47 +00:00
matz c786866812 * range.c (range_step): 'iter' here should be an array.
* marshal.c (w_object): should retrieve __member__ data from
  non-singleton class.

* variable.c (rb_cvar_get): class variable override check added.

* variable.c (rb_cvar_set): ditto

* variable.c (rb_cvar_declare): ditto.

* parse.y (parse_regx): handle backslash escaping of delimiter here.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-08-20 04:29:58 +00:00
aamine 772ed5507e aamine
* lib/net/protocol.rb: Protocol.new requires at least one arg.
* lib/net/smtp.rb: ditto.
* lib/net/pop.rb: ditto.
* lib/net/http.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-08-17 03:08:45 +00:00
usa e5de410caf * win32/win32.c (NtCmdGlob): avoid VC++ warning.
* lib/mkmf.rb: add -I$(srcdir) to CPPFLAGS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1687 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-08-15 18:51:58 +00:00
matz f33a61c28d * string.c (rb_str_lstrip_bang): new method.
* string.c (rb_str_rstrip_bang): new method.

* string.c (rb_str_associate): should consider STR_ASSOC too.

* eval.c (rb_undefined): do not recurse if method_missing is
  undefined.

* process.c (proc_waitpid): now all arguments are optional.

* process.c (Init_process): waitpid is now alias to wait.

* process.c (Init_process): waitpid2 is now alias to wait2.

* process.c (rb_waitpid): made public.

* ext/pty/pty.c (pty_getpty): avoid disturbing SIGCHLD using
  thread and rb_waitpid.

* process.c (proc_getpgrp): now takes no argument on all
  platforms.

* process.c (proc_setpgrp): ditto.

* ext/socket/socket.c (sock_s_pack_sockaddr_in): added
  Socket::pack_sockaddr_in(). [new]

* ext/socket/socket.c (sock_s_pack_sockaddr_un): added
  Socket::pack_sockaddr_un(). [new]

* ext/socket/socket.c (sock_s_pack_sockaddr_in): added
  Socket::unpack_sockaddr_in(). [new]

* ext/socket/socket.c (sock_s_pack_sockaddr_un): added
  Socket::unpack_sockaddr_un(). [new]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-08-06 03:05:23 +00:00
matz c8a7361e45 * marshal.c (Init_marshal): new constant Marshal::MAJOR_VERSION
and Marshal::MINOR_VERSION.

* marshal.c (marshal_load): ruby_verbose test should be wrapped by
  RTEST().

* hash.c (rb_hash_index): should return nil (not the default
  value) if value is not in the hash.

* numeric.c (num_div): new method added.  alias to '/' which
  should be preserved even if '/' is redefined (e.g. by
  mathn). [new]

* bignum.c (rb_cstr2inum): "0 ff".hex should return 0, not 255.

* file.c (rb_file_s_expand_path): fixed using CharNext().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-31 06:24:45 +00:00
shugo 67d433a5e6 * lib/net/imap.rb: added new commands for managing folder quotas
and folder ACLs.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-30 02:15:13 +00:00
knu e54216b740 * ext/extmk.rb.in, lib/mkmf.rb: dig the target subdirectory for
lib/* files properly in case of create_makefile("dir/name").


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-24 10:29:17 +00:00
knu 9e214f30c4 * ext/extmk.rb.in, lib/mkmf.rb: introduce a couple of new make
variables: CLEANFILES and DISTCLEANFILES.  They'd typically be
  defined in a file "depend".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-22 12:24:12 +00:00
usa 9078b69592 * ext/extmk.rb.in: modify RM macro because command.com/cmd.exe don't
recognize single quotation as quote character.

* lib/mkmf.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-17 02:13:13 +00:00
aamine a2193f50e8 aamine
* lib/net/http.rb: HTTP#proxy? did not worked.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-13 21:20:41 +00:00
knu c0a9b71aeb * lib/mkmf.rb: use File::split to split a target into a prefix and
a module name.  This also works around a just found bug of
  String#rindex.

* ext/extmk.rb.in: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-13 14:19:28 +00:00
eban f1b3c51701 * lib/mkmf.rb: modify RM macro.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1582 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-09 08:10:26 +00:00
aamine 2b67bb576a aamine
* lib/net/http.rb: rename HTTP#request_by_name to send_request.
* lib/net/protocol.rb (ProtoSocket#read): modify typo.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-08 07:00:23 +00:00
knu 7f326a3988 * lib/tempfile.rb: a tempfile must be created with mode 0600.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-05 17:19:28 +00:00
aamine afb3a0cff1 aamine
* lib/net/http.rb (HTTP#request_by_name): arg order changes.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-03 19:18:17 +00:00
aamine 9e79454b3d aamine
* lib/net/http.rb (HTTP#request_by_name): bug fix.
* lib/net/http.rb: does not write Connection: by default.
* lib/net/protocol.rb: "start" for started protocol is an error.
* lib/net/protocol.rb: "finish" for finished protocol is an error.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-03 19:03:16 +00:00
aamine fa20d931bc aamine
* lib/net/http.rb: new method HTTP#request_by_name (test)
* lib/net/http.rb: new class HTTPGenericRequest


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-03 18:13:13 +00:00
knu fc1f22d5a8 * lib/mkmf.rb: distclean should remove mkmf.log as well.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-03 15:02:20 +00:00
matz ffe1cf575e * error.c (exc_exception): clone the receiver exception instead of
creating brand new exception object of the receiver.

* eval.c (rb_eval_string_wrap): extend new ruby_top_self, not
  original self.

* eval.c (rb_eval_cmd): respect ruby_wrapper if set.

* eval.c (eval): do not update ruby_class unless scope is not
  provided.

* eval.c (eval): preserve wrapper information.

* eval.c (proc_invoke): ditto.

* eval.c (block_pass): ditto.

* parse.y (void_expr): too much warnings for void context
  (e.g. foo[1] that can be mere Proc call).

* error.c (rb_name_error): new function to raise NameError with
  name attribute set.

* eval.c (rb_f_missing): set name and args in the exception
  object. [new]

* error.c (name_name): NameError#name - new method.

* error.c (nometh_args): NoMethodError#args - new method.

* lex.c (rb_reserved_word): lex_state after tRESCUE should be
  EXPR_MID.

* gc.c (add_heap): allocation size of the heap unit is doubled for
  each allocation.

* dir.c (isdelim): space, tab, and newline are no longer
  delimiters for glob patterns.

* eval.c (svalue_to_avalue): new conversion scheme between single
  value and array values.

* eval.c (avalue_to_svalue): ditto.

* eval.c (rb_eval): REXPAND now uses avalue_to_svalue(), return
  and yield too.

* eval.c (rb_yield_0): use avalue_to_svalue().

* eval.c (proc_invoke): Proc#call gives avaules, whereas
  Proc#yield gives mvalues.

* eval.c (bmcall): convert given value (svalue) to avalue.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-02 08:46:28 +00:00
keiju cc13bb43bc * lib/matrix.rb: resolve 'ruby -w' warnings.
* lib/irb/locale.rb: resolve 'ruby -w' warnings.
* lib/irb/multi-irb.rb: resolve 'ruby -w' warnings.
* lib/irb/ruby-lex.rb: fix problem for "\\M-\\..." and "\\C-\\..."
  and resolve 'ruby -w' warnings.
* lib/irb/ruby-token.rb: fix typo
* lib/shell/command-processor.rb: resolve 'ruby -w' warnings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-27 15:35:04 +00:00
aamine cf37626401 * protocol.rb,smtp.rb,pop.rb,http.rb: modify document.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-27 00:59:08 +00:00
aamine c664027a34 aamine
* lib/net/pop.rb: new methods POP3.auth_only, POP3#auth_only
* lib/net/http.rb: HTTP.Proxy returns self if ADDRESS is nil.
* lib/net/protocol.rb: new method ProtocolError#response
* lib/net/protocol.rb,smtp.rb,pop.rb,http.rb: add document.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-26 23:49:21 +00:00
matz 0869399cbf * eval.c (svalue_to_avalue): new conversion scheme between single
value and array values.

* eval.c (avalue_to_svalue): ditto.

* eval.c (rb_eval): REXPAND now uses avalue_to_svalue(), return
  and yield too.

* eval.c (rb_yield_0): use avalue_to_svalue().

* eval.c (proc_invoke): Proc#call gives avaules, whereas
  Proc#yield gives mvalues.

* eval.c (bmcall): convert given value (svalue) to avalue.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-23 15:14:28 +00:00
keiju cdabb04b44 * lib/irb/locale.rb: fix for require "kconv" problem
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-22 14:16:25 +00:00
matz 9d51cf8a6a * eval.c (rb_f_require): searches ".rb" and ".so" at the same
time.  previous behavior (search ".rb", then ".so") has a
  security risk (ruby-bugs#PR140).

* array.c (rb_ary_to_ary): new function to replace internal
  rb_Array(), which never calls to_a, but to_ary (rb_Array() might
  call both). [new]

* regex.c (PUSH_FAILURE_POINT): push option status again.

* regex.c (re_compile_pattern): avoid pushing unnecessary
  option_set.

* eval.c (rb_load): tainted string is OK if wrapped *and*
  $SAFE >= 4.

* eval.c (rb_thread_start_0): should not nail down higher blocks
  before preserving original context (i.e. should not alter
  original context).

* eval.c (proc_yield): new method equivalent to Proc#call but no
  check for number of arguments. [new]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-19 04:35:17 +00:00
knu 83b2db9ea7 * lib/mkmf.rb: target_prefix is only for installation, not for
build.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-12 05:25:04 +00:00
usa a5c0e5a382 * ext/extmk.rb.in: Use -F and -T for mswin32 because cl.exe doesn't support -o officially and cl.exe considers that *.cc and *.cxx are OBJs.
* lib/mkmf.rb: ditto.

* win32/Makefile.sub: Use del instead of rm. All these changes are derived from Nobuyoshi Nakada's patch. Thanks.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-09 07:41:44 +00:00
keiju 85d105cf8c * lib/sync.rb: bug fix if obj.initialize has parameters when
obj.extend(Sync_m)

* lib/mutex_m.rb: modified bit


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1513 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-06 14:19:33 +00:00
keiju b2658a3d83 bug fix for obj.extend(Mutex_m).
This is patched by akira yamada.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-06 09:13:14 +00:00
eban 21524a3fc0 * ext/extmk.rb.in, lib/mkmf.rb (xsystem): write log file.
print command line.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-05 04:54:52 +00:00
wakou bfd441db8f * lib/shellwords.rb: don't destroy argument.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-03 19:25:07 +00:00
shugo 7dc25230be * lib/cgi/session.rb: don't use module_function for Class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-02 14:19:37 +00:00
keiju 3c024ba5e2 * irb messages: fix typos.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1489 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-01 15:26:47 +00:00
matz 4cd1cd7201 * ruby.c (proc_options): unexpected SecurityError happens when -T4.
* regex.c (re_compile_pattern): * \1 .. \9 should be
  backreferences always.

* regex.c (re_match): backreferences corresponding to
  unclosed/unmatched parentheses should fail always.

* string.c (rb_str_cat): use rb_str_buf_cat() if possible. [new]

* string.c (rb_str_append): ditto.

* string.c (rb_str_buf_cat): remove unnecessary check (type,
  taint, modify) to gain performance.

* string.c (rb_str_buf_append): ditto.

* string.c (rb_str_buf_finish): removed.

* string.c (rb_str_buf_new): buffering string function. [new]

* string.c (rb_str_buf_append): ditto.

* string.c (rb_str_buf_cat): ditto.

* string.c (rb_str_buf_finish): ditto.

* time.c (make_time_t): local time adjustment revised.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-30 09:10:30 +00:00
knu c764579e49 Revise more.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-26 12:38:16 +00:00
knu 2dc55ffea1 Sync with reality.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-26 12:29:29 +00:00
knu 0eea0bf571 * lib/mkmf.rb (xsystem): make a temporary fix to get $(...) macros
properly expanded on a command execution.

* ext/extmk.rb.in (xsystem): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-17 20:23:08 +00:00
knu 156b183551 * lib/mkmf.rb: unbreak "make install". lib/* must be installed
under $rubylibdir, not under $libdir.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-17 18:50:50 +00:00
knu 491c26f3ef * lib/shell.rb, lib/shell/process-controller.rb,
lib/shell/command-processor.rb: translate Japanese comments into
English.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-17 10:19:45 +00:00
knu 4578a096d1 Yay, shell.rb is back!
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-17 10:12:10 +00:00
knu d9350f5600 Initial revision
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-17 10:02:47 +00:00
matz f84f4aa6b3 * array.c (rb_ary_and): should not push frozen key string.
* array.c (rb_ary_or): ditto.

* eval.c (rb_thread_schedule): should save context before raising
  deadlock, saved context for current thread might be obsolete.

* time.c (make_time_t): non DST timezone shift supported (hopefully).

* time.c (make_time_t): strict range detection for negative time_t.

* signal.c: SIGINFO added.

* eval.c (rb_ensure): should not SEGV when prot_tag is NULL.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-16 09:05:54 +00:00
matz cc043890f8 * bignum.c (bigdivrem): access boundary bug.
* marshal.c (w_object): prohibit dumping out singleton classes.

* object.c (rb_mod_to_s): distinguish singleton classes.

* variable.c (rb_class2name): it's ok to reveal NilClass,
  TrueClass, FalseClass.

* eval.c (rb_yield_0): preserve and restore ruby_cref as well.

* eval.c (is_defined): core dumped during instance_eval for
  special constants.

* eval.c (rb_eval): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1389 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-11 05:24:59 +00:00
keiju 3c1264113e *** empty log message ***
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-08 09:28:19 +00:00
knu 32d17e265c Initial revision
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1375 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-07 23:38:52 +00:00
matz 13cbec33c1 * parse.y (arg): "||=" should not warn for uninitialized instance
variables.

* eval.c (rb_eval): ditto.

* eval.c (eval): preserve and restore ruby_cref as well.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1371 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-07 09:26:29 +00:00
eban 075169f071 * lib/ftools.rb (syscopy): chmod destination file only if
it does not exist.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-07 06:57:40 +00:00
matz 1d3d27b42d forgot some checkins.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1363 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-06 15:06:00 +00:00