* eval.c (rb_eval): nd_rval is set in copy_node_scope().
* eval.c (rb_yield_0): unused variable.
* eval.c (rb_yield_0): nothing to do for empty node.
* eval.c (call_end_proc, proc_invoke): adjust backtrace in END.
[ruby-dev:21551]
* eval.c (rb_thread_start_0): set the value by break as the result.
[ruby-dev:21552]
* eval.c (rb_thread_start_0, rb_thread_raise, rb_callcc): save
variables across THREAD_SAVE_CONTEXT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/test/unit/ui/testrunnermediator.rb: moved the run flag to a more
central location.
* lib/test/unit.rb: ditto.
* lib/test/unit.rb: extracted the running code in to AutoRunner.
* lib/test/unit/autorunner.rb: added.
* lib/test/unit/collector/objectspace.rb: extracted common test
collection functionality in to a module.
* lib/test/unit/collector.rb: ditto; added.
* test/testunit/collector/test_objectspace.rb: ditto.
* lib/test/unit/collector/dir.rb: added. Supports collecting tests out
of a directory structure.
* test/testunit/collector/test_dir.rb: added.
* test/runner.rb: simplified to use the new capabilities.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/ruby/beginmainend.rb: add tests for nested BEGIN/END.
* test/ruby/endblockwarn.rb: new file added to test of END-in-method warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
free function for ASN1_OBJECT.
* ext/openssl/ossl_asn1.c (ossl_asn1obj_get_sn): add new function for
ASN1::ObjectId#sn; it returns short name text representation of OID.
* ext/openssl/ossl_asn1.c (ossl_asn1obj_get_ln): add new function for
ASN1::ObjectId#ln; it returns long name text representation of OID.
* ext/openssl/ossl_asn1.c (ossl_asn1obj_get_oid): add new function for
ASN1::ObjectId#oid; it returns numerical representation of OID.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
respond_to?(:binmode). record separator was wrong when you gave text mode IO
to Reader.parse and Writer.generate.
* test/csv/test_csv.rb: add tests for above change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
[ruby-dev:21496]
* eval.c (proc_alloc): should not use cached object if klass is
different. [ruby-talk:83685]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4701 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
problematic.
* lib/runit/assert.rb: fixed a couple of bugs caused by recent
refactoring in Test::Unit.
* test/testunit/runit/*: added.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4689 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Can be disabled by setting Assertions.use_pp = false.
* test/testunit/test_assertions.rb: made a small change to exception
formatting.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4687 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
for objects that cannot be dumped, if they traversed from
marshal_dump. they are just ignored.
* gc.c (Init_stack): cast "space" (doble value) into unsigned
int. should run on PowerPC.
* eval.c (rb_eval): should not execute else part if any exception
is caught. [ruby-dev:21482]
* parse.y (f_args): should allow unparenthesized block argument.
* parse.y (f_rest_arg): should allow unparenthesized rest
argument.
* lib/irb/ruby-lex.rb (RubyLex::identify_identifier): support
'class ::Foo' syntax. [ruby-talk:83514]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4680 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ENV['no_proxy'] or ENV['NO_PROXY'] is not proxyed.
- [,:] separated. ("ruby-lang.org:rubyist.net")
- no regexp. (give "ruby-lang.org", not "*.ruby-lang.org")
- if you want specify hot by IP address, give full address.
("192.168.1.1, 192.168.1.2")
* lib/soap/rpc/cgistub.rb: return "Status: XXX MMM" line.
* test/runner.rb: give testsuite name.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
'\0' character.
(relative_path_from): new method.
(each_entry): new method for replacement of dir_foreach.
(foreach, foreachline, dir_foreach, chdir): obsoleted.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4671 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
(to_s): return duplicated string.
(children): new method.
(each_line): new alias to foreachline.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/openssl/ossl_asn1.h: add OpenSSL::ASN1 module.
* ext/openssl/ossl.c (Init_openssl): call Init_ossl_asn1.
* ext/openssl/ossl.h: include ossl_asn1.h.
* ext/openssl/extconf.rb: check if X509_ATTRIBUTE has field "single".
* ext/openssl/ossl_x509attr.c (ossl_x509attr_set_value): accept
DER encoded data argument.
* ext/openssl/ossl_x509attr.c (ossl_x509attr_get_value): return
DER encoded data in OpenSSL::ASN1 types.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/test/unit.rb: added support for selecting the output
level from the command-line.
* lib/test/unit.rb: added a command-line switch to stop processing
the command-line, allowing arguments to be passed to tests.
* lib/test/unit.rb: changed the method for specifying a runner or a
filter from the command-line.
* lib/test/unit/collector/objectspace.rb: fixed a bug causing all
tests to be excluded when the filter was set to an empty array.
* test/testunit/collector/test_objectspace.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
#assert_block, and #flunk.
* test/testunit/test_assertions.rb: ditto.
* lib/test/unit/failure.rb: failures now show a better trace of where
they occurred.
* test/testunit/test_failure.rb: ditto (added).
* lib/test/unit/testcase.rb: ditto.
* test/testunit/test_testcase.rb: ditto.
* lib/test/unit/util/backtracefilter.rb: added.
* test/testunit/util/test_backtracefilter.rb: added.
* lib/test/unit/error.rb: changed to use BacktraceFilter and improved
output.
* test/testunit/test_error.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
orthodox initialization method.
* ext/iconv/iconv.c (iconv_fail): initialize exception instance
from the class, and do not share instance variables with the
others. [ruby-dev:21470]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
loading from marshaled data.
* time.c (time_mdump): new marshal dumper. _dump is still
available for compatibility.
* time.c (time_mload): new marshal loader.
* marshal.c (w_object): preserve instance variables for objects
with marshal_dump.
* marshal.c (r_object0): restore instance variables before calling
marshal_load.
* error.c (rb_warn_m): always return nil.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
set error object to $!.
* ext/iconv/iconv.c (iconv_convert): error handler block should
return appended part and the rest. if rest is nil, the
conversion stops.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
AssertionFailedError unless explicitly requested.
* test/testunit/test_assertions.rb: ditto.
* test/testunit/collector/test_objectspace.rb: fixed a test failure
caused by methods being returned in different orders on different
platforms by moving test sorting from TestSuite into the locations
where suites are constructed. [ruby-talk:83156]
* lib/test/unit/testcase.rb: ditto.
* lib/test/unit/testsuite.rb: ditto.
* lib/test/unit/collector/objectspace.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4648 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Object when TYPE(klass) == T_MODULE *and* exclude is on.
[ruby-dev:21458]
* variable.c (rb_const_get_0): do not lookup constants from Object
when TYPE(klass) == T_MODULE *and* exclude is on.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
win32 box.
* lib/xsd/datatypes.rb(XSDFloat, XSDDouble): add +/- sign explicitly when
stringified and embedded into XML instance. Ruby's sprintf may format -0.0
as "0.0" (no minus sign) depending on underlying C sprintf implementation.
* test/xsd/test_xsd.rb, test/soap/test_basetype.rb: follow above change.
* test/soap/calc/*: give httpd config param "CGIInterpreter".
"/usr/bin/env ruby" thing does not work under non-Unix boxes.
* ChangeLog: corrected wrong DoW of my log entries...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
setgrent, getgrent, endgrent.
* ext/socket/socket.c (sock_s_gethostbyname): do not reverse lookup.
* Makefile.in: copy lex.c from $(srcdir) if it's not the current
directory. [ruby-dev:21437]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* gc.c (add_heap): should not clear heaps slot even if realloc()
failed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4639 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
:close, not is_a? IO. duck duck.
* test/logger/test_logger.rb: self IO.pipe reading/writing may be locked by the
flood. use tempfile.
* lib/wsdl/xmlSchema/data.rb: wrong constant reference.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
set real and effective IDs. and setup group access list by
initgroups.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/soap/rpc/standaloneServer.rb: defer WEBrick server start to give a change
to reset logging severity threshold.
* test/soap/calc/test_*, test/soap/helloworld/test_helloworld.rb: run silent.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
now.
* test/soap/marshal/test_digraph.rb: should close before unlink.
unlink-before-close pattern is not needed here.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
namespace. TestMarshal in test/soap/marshal/test_marshal.rb crashed with
test/ruby/test_marshal.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Solaris. [ruby-dev:21403]
* lib/mkmf.rb (xsystem): use system directly to honor shell meta
charaters.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4600 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ext/openssl/ossl_pkey_rsa.c, ext/bigdecimal/bigdecimal.h: must
not use C++ or C99 style comment yet. (ruby-bugs:PR#1184)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
exception for "break". [ruby-dev:21348]
* eval.c (proc_invoke): use result instead of prot_tag->retval.
retval is no longer propagated to the ancestors.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* 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.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
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.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
expressions instead of prototypes. the functions remain yet for
binary compatibility. [ruby-talk:81758]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
libeay32.dll doesn't export functions defined in conf_api.h.
this workaround is to avoid link error.
* 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.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* eval.c (localjump_destination): stop at the scope where the current
block was created. [ruby-dev:21353]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
the message.
* lib/webrick/log.rb (BasicLog#log): add "\n" only if needed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4536 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* 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.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/openssl/ossl_config.c: refine all with backward compatibility.
* ext/openssl/ossl_config.h: export GetConfigPtr() and DupConfigPtr().
* ext/openssl/ossl_x509.c: new constants (DEFAULT_CERT_AREA,
DEFAULT_CERT_DIR, DEFAULT_CERT_FILE, DEFAULT_CERT_DIR_ENV,
DEFAULT_CERT_FILE_ENV and DEFAULT_PRIVATE_DIR) in X509 module.
* 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.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
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.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32/win32.c (CreateChild): fix condition about whether to call
shell or not.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e