* dir.c (dir_s_chdir): warn only when invoked from multiple
threads or block is not given.
* object.c (rb_convert_type): should use rb_rescue(), not rb_rescue2().
* range.c (range_init): ditto.
* object.c (rb_obj_dup): should free generic_ivar if original owns
them.
* string.c (rb_str_each_line): should propagate taint mark.
* ext/nkf/nkf.c (rb_nkf_kconv): ditto.
* eval.c (rb_f_require): revamp for simpler implementation.
* file.c (rb_find_file_noext): use String object, instead of
passing char* around.
* file.c (rb_find_file): ditto.
* dln.c (dln_load): should use NSLINKMODULE_OPTION_BINDNOW.
* ruby.c (load_file): local variables 'c' remain uninitialized on
xflag.
* regex.c (re_match): prefetched escaped character too early.
* eval.c (rb_call0): add argument check for attr_readers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
project.
ext/digest:
This module provides the module Digest and the abstract class
Digest::Base.
ext/digest/md5 (which obsoletes ext/md5):
This module provides the class Digest::MD5 which implements the
MD5 Message-Digest Algorithm.
ext/digest/rmd160:
This module provides the class Digest::RMD160 which implements the
RIPEMD-160 cryptographic hash function.
ext/digest/sha1 (which obsoletes ext/sha1):
This module provides the class Digest::SHA1 which implements the
SHA-1 Secure Hash Algorithm.
ext/digest/sha2:
This module provides the classes Digest::SHA256, Digest::SHA384
and Digest::SHA512 which implement the SHA-256, SHA-384 and
SHA-512 Secure Hash Algorithms, respectively.
lib/md5.rb, lib/sha1.rb:
These files are provided for backward compatibility.
All these classes have the common API, which previously ext/md5 and
ext/sha1 modules provided. While the new API keeps 100% backward
compatibility, it has been enriched with several utility methods.
Read digest.txt for further details.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
(e.g. you can have ext/foo, ext/foo/bar and ext/foo/baz)
* ext/.cvsignore: let cvs ignore extinit.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
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
Rename the files COPYING and COPYING.LIB to GPL and LGPL, respectively.
* While I am here, update the LGPL with the "Lesser" one.
* Move the "copying" sections of the files README and README.jp to
COPYING and COPYING.jp, respectively.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* 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
* 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
cbase) before wrapped eval.
* eval.c (rb_eval_cmd): ditto.
* eval.c (eval): should update ruby_class always after all.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
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