summaryrefslogtreecommitdiff
path: root/version.h
AgeCommit message (Collapse)Author
2016-08-18merge revision(s) 55609: [Backport #12568]nagachika
* vm_args.c (setup_parameters_complex): don't raise ArgumentError if an array is given for instance_exec with optional argument. [ruby-core:76300] [Bug #12568] https://github.com/rails/rails/pull/25699 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-16merge revision(s) 55663: [Backport #12583]nagachika
* gc.c (gc_mark_roots): should mark the VM object itself to mark singleton class of the VM object. Before this patch, we only set mark bit for the VM object and invoke mark function separately. [Bug #12583] * test/ruby/test_gc.rb: add a test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-16merge revision(s) 55523: [Backport #12524]nagachika
* ext/digest/md5/md5ossl.h: Remove excess semicolons. Suppress warning on Solaris with Oracle Solaris Studio 12. [ruby-dev:49692] [Bug #12524] * ext/digest/md5/md5cc.h: ditto. * ext/digest/sha1/sha1cc.h: ditto. * ext/digest/sha1/sha1ossl.h: ditto. * ext/digest/sha2/sha2cc.h: ditto. * ext/digest/sha2/sha2ossl.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-16merge revision(s) 53424,55509: [Backport #12517]nagachika
* test/coverage/test_coverage.rb: ignored test when enabled to coverage. It lead to crash with `make test-all`. * compile.c (ADD_TRACE): ignore trace instruction on non-positive line. * parse.y (coverage): get rid of ArgumentError when the starting line number is not positive. [ruby-core:76141] [Bug #12517] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-16merge revision(s) 55563: [Backport #12498]nagachika
* lib/uri/mailto.rb (initialize): RFC3986_Parser#split sets opaque only if the URI has path-rootless, not path-empty. [ruby-core:76055] [Bug #12498] patched by Chris Heisterkamp <cheister@squareup.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-15merge revision(s) 55581,55582,55880: [Backport #12557]nagachika
* lib/net/http/generic_request.rb (write_header): A Request-Line must not contain CR or LF. * lib/net/http/generic_request.rb (write_header): A Request-Line must git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-15merge revision(s) 55579: [Backport #12556]nagachika
* lib/net/ftp.rb (putline): raise an ArgumentError when CR or LF is included in a line. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-15merge revision(s) 55410: [Backport #12488]nagachika
* ext/date/date_strftime.c (date_strftime_with_tmx): reject too large precision to get rid of buffer overflow. reported by Guido Vranken <guido AT guidovranken.nl>. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-15merge revision(s) 55385,55390: [Backport #12483]nagachika
* file.c (append_fspath): normalize directory name to be appended on OS X. [ruby-core:75957] [Ruby trunk Bug#12483] https://github.com/rails/rails/issues/25303#issuecomment-224834804 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-15merge revision(s) 55562: [Backport #12454]nagachika
* regcomp.c (noname_disable_map): don't optimize out group 0 Ruby's Regexp doesn't allow normal numbered groups if the regexp has named groups. On such case it optimizes out related NT_ENCLOSE. But even on the case it can use \g<0>. This fix not to remove NT_ENCLOSE whose regnum is 0. [ruby-core:75828] [Bug #12454] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-15merge revision(s) 55233: [Backport #12446]nagachika
* missing/crypt.c: fix size macros to use configured values for platforms long is larger than 32bit. [ruby-core:75792] [Bug #12446] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-15merge revision(s) 55047: [Backport #12441]nagachika
* ext/openssl/ossl_bn.c (try_convert_to_bnptr): Extracted from GetBNPtr(). This doesn't raise exception but returns NULL on error. (GetBNPtr): Raise TypeError if conversion fails. (ossl_bn_eq): Implement BN#==. (ossl_bn_eql): #eql? should not raise TypeError even if the argument is not compatible with BN. (ossl_bn_hash): Implement BN#hash. * ext/openssl/ossl_bn.c (Init_ossl_bn): Define #== and #hash. * test/openssl/test_bn.rb: Test BN#eql?, #== and #hash git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-15merge revision(s) 55181: [Backport #12431]nagachika
* transcode.c (str_transcode0): scrub in the given encoding when the source encoding is given, not in the encoding of the receiver. [ruby-core:75732] [Bug #12431] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-15merge revision(s) 55175: [Backport #12428]nagachika
* ext/openssl/ossl_pkey_dh.c (ossl_dh_compute_key): Check that the DH has 'p' (the prime) before calling DH_size(). We can create a DH with no parameter but DH_size() does not check and dereferences NULL. [ruby-core:75720] [Bug #12428] * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_sign): Ditto. DSA_size() does not check dsa->q. * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_public_encrypt, ossl_rsa_public_decrypt, ossl_rsa_private_encrypt, ossl_rsa_private_decrypt): Ditto. RSA_size() does not check rsa->n. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-15merge revision(s) 55115: [Backport #12411]nagachika
* transcode.c (enc_arg, str_transcode_enc_args, econv_args): remove volatile, and add GC guards in callers. [ruby-core:75664] [Bug #12411] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55903 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-15merge revision(s) 55497,55498,55504: [Backport #11988]nagachika
* ext/psych/*, test/psych/*: Upate psych 2.1.0 This version fixed [Bug #11988][ruby-core:72850] * ext/psych/*, test/psych/*: Update psych 2.1.0 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-11merge revision(s) 55434: [Backport #12401]nagachika
* common.mk (build-ext), ext/extmk.rb: use variable EXTENCS different than ENCOBJS, to get rid of circular dependency. build libencs when linking encodings statically. [ruby-core:75618] [Bug #12401] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-11merge revision(s) 55090,55091: [Backport #12398]nagachika
io.c: conditionally used functions * io.c (pipe_atexit): only used on Windows * io.c (rb_execarg_fixup_v): wrapper only used fork or spawnv is available. * process.c (rb_execarg_commandline): build command line string from argument vector in rb_execarg. [ruby-core:75611] [Bug #12398] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-11merge revision(s) 54142,55500: [Backport #12353]nagachika
assertions.rb: fix result of assert_nothing_raised * test/lib/test/unit/assertions.rb (assert_nothing_raised): do not discard the result of the given block. * vm_method.c (vm_respond_to): try method_missing if respond_to? is undefined, as if it is the default definition. [ruby-core:75377] [Bug #12353] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-11merge revision(s) 55705: [Backport #12345]nagachika
* variable.c (rb_local_constants_i): exclude private constants when excluding inherited constants too. [Bug #12345] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-11merge revision(s) 55008: [Backport #12342]nagachika
* lib/drb/timeridconv.rb: don't use keeper thread. [Bug #12342] * test/drb/ut_timerholder.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-11merge revision(s) 55100: [Backport #12292]nagachika
* ext/openssl/ossl_ssl.c (ossl_ssl_stop): Don't free the SSL struct here. Since some methods such as SSLSocket#connect releases GVL, there is a chance of use after free if we free the SSL from another thread. SSLSocket#stop was documented as "prepares it for another connection" so this is a slightly incompatible change. However when this sentence was added (r30090, Add toplevel documentation for OpenSSL, 2010-12-06), it didn't actually. The current behavior is from r40304 (Correct shutdown behavior w.r.t GC., 2013-04-15). [ruby-core:74978] [Bug #12292] * ext/openssl/lib/openssl/ssl.rb (sysclose): Update doc. * test/openssl/test_ssl.rb: Test this. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-10merge revision(s) 55380: [Backport #12255]nagachika
* ext/json/lib/*.rb: Removed some comments. Because these are unnecessary class description. [ci skip][Bug #12255][ruby-core:74835] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-10merge revision(s) 55573: [Backport #12209]nagachika
* pack.c (pack_pack): use union instead of bare variable to ease optimizations and avoid assigning x87 floating point number. [ruby-core:74496] [Bug #12209] * pack.c (pack_unpack): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-01merge revision(s) 55731: [Backport #12610]nagachika
* lib/webrick/httpservlet/cgihandler.rb (do_GET): delete HTTP_PROXY * test/webrick/test_cgi.rb (test_cgi_env): new test * test/webrick/webrick.cgi (do_GET): new endpoint to dump env [ruby-core:76511] [Bug #12610] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-01merge revision(s) 55532: [Backport #12491]nagachika
* test/ruby/test_refinement.rb: skip test_prepend_after_refine_wb_miss on ARM or MIPS. [ruby-core:76031] [Bug #12491] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-30merge revision(s) 55605: [Backport #12565]nagachika
* vm_args.c (vm_caller_setup_arg_block): disable symbol block argument optimization when tail call optimization is enabled, in order to avoid SEGV. [ruby-core:76288] [Bug #12565] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-30merge revision(s) 54909,55531: [Backport #12531]nagachika
proc.c: passed_block * proc.c (passed_block): extract conversion from passed proc value to rb_block_t pointer. * proc.c (passed_block): convert passed block symbol to proc. based on the patch by Daisuke Sato in [ruby-dev:49695]. [Bug #12531] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-30merge revision(s) 55297: [Backport #12462]nagachika
* vm_insnhelper.c (vm_throw_start): check if the iseq is symbol proc, class definition should not be a symbol proc. [ruby-core:75856] [Bug #12462] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-11merge revision(s) 55602: [Backport #12560]nagachika
require "rbconfig/sizeof" They may fail parallel test-all git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-11merge revision(s) 54168: [Backport #12391]nagachika
* bignum.c (rb_big_hash): make it public function to be available in other source files, and remove documentation comment for Bignum#hash. * bignum.c (Bignum#hash): remove its definition because it is unified with Object#hash. * include/ruby/intern.h (rb_big_hash): add a prototype declaration. * hash.c (any_hash): treat Bignum values directly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55633 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-01merge revision(s) 55427: [Backport #12503]nagachika
* string.c (tr_trans): consider terminator length and fix heap overflow. reported by Guido Vranken <guido AT guidovranken.nl>. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-01merge revision(s) 55462: [Backport #11954]nagachika
* vm.c (invoke_bmethod, invoke_block_from_c_0): revert r52104 partially to avoid "self has wrong type to call super in this context" errors. [ruby-core:72724] [Bug #11954] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-19merge revision(s) 55228: [Backport #12438]nagachika
* lib/optparse.rb (OptionParser::Completion.candidate): get rid of nil as key names. [ruby-core:75773] [Bug #12438] * lib/optparse.rb (OptionParser#make_switch): char class option cannot be NoArgument, default to RequiredArgument. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-19merge revision(s) 55163,55165: [Backport #12420]nagachika
* regparse.c (fetch_token_in_cc): raise error if given octal escaped character is too big. [Bug #12420] [Bug #12423] * re.c (unescape_nonascii): scan hex up to only 3 characters. [Bug #12420] [Bug #12423] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-18merge revision(s) 55123,55129,55130,55133,55136: [Backport #12414]nagachika
* ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec): consider non-finite float values not to raise FloatDomainError. [ruby-core:75682] [Bug #12414] * ext/bigdecimal/bigdecimal.c (isfinite): isfinite does not always exist. fixed build error on Windows introduced at r55123. * ext/bigdecimal/bigdecimal.c (isfinite): get rid of a warning on cygwin. [Bug #12417][ruby-core:75691] * include/ruby/missing.h (isfinite): move from numeric.c. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55445 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-15merge revision(s) 55054: [Backport #12390]nagachika
* string.c (rb_str_modify_expand): check integer overflow. [ruby-core:75592] [Bug #12390] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-15merge revision(s) 55005: [Backport #12382]nagachika
* vm_insnhelper.c (vm_get_ev_const): warn deprecated constant even in the class context. [ruby-core:75505] [Bug #12382] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55425 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-13merge revision(s) 55120: [Backport #12413]nagachika
* dir.c (dir_close): update RDoc for 2.3 #close change [ruby-core:75679] [Bug #12413] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-13merge revision(s) 55010: [Backport #12332]nagachika
* proc.c: fix RDoc of Proc#===/call/yield/[] [Bug #12332] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55404 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-13merge revision(s) 55182: [Backport #12389]nagachika
* variable.c (rb_local_constants_i): exclude hidden constants. [ruby-core:75575] [Bug #12389] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-13merge revision(s) 54970: [Backport #12367]nagachika
* insns.def (defineclass): Also raise an error when redeclaring the superclass of a class as Object and it has another superclass. [Bug #12367] [ruby-core:75446] * test/ruby/test_class.rb: test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-13merge revision(s) 54934: [Backport #12355]nagachika
* process.c (rb_exec_getargs): honor the expected argument types over the conversion method. the basic language functionality should be robust. [ruby-core:75388] [Bug #12355] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-13merge revision(s) 54887-54889: [Backport #12340]nagachika
* win32/win32.c, include/ruby/win32.h (rb_w32_utruncate): implements new truncate alternative which accepts UTF-8 path. * file.c (truncate): use above function. [Bug #12340] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55400 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-13merge revision(s) 54721: [Backport #12311]nagachika
* ext/date/date_core.c (Init_date_core): [DOC] Convert DateTime documentation to RDoc from Markdown. [ruby-core:75136] [Bug #12311] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-11merge revision(s) 55154: [Backport #12418]nagachika
* regcomp.c (compile_length_tree): return error code immediately if compile_length_tree raised error [Bug #12418] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-11merge revision(s) 55063: [Backport #12391]nagachika
* thread.c (recursive_list_access): a object id may be a Bignum. so, the list must be a objhash, instead of a identhash. this fixes many test errors on mswin64 CI. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-11merge revision(s) 54893: [Backport #10763]nagachika
* parse.y (new_if_gen): set newline flag to NODE_IF to trace all if/elsif statements. [ruby-core:67720] [Bug #10763] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-05-20merge revision(s) 55078:nagachika
openssl: don't test default session lifetime value OpenSSL's default session timeout for TLS v1.0 method is not 300 seconds but 7200. The TLS v1.0 specification[1] mentions about it as just "An upper limit of 24 hours is suggested for session ID lifetimes,". And according to OpenSSL 1.0.2h source comment[2], the value 7200 is decided just because "the 24 hours mentioned in the TLSv1 spec is way too long for http, the cache would over fill". The reason why the default lifetime is set to 300 is maybe an OpenSSL bug. We always call SSL_CTX_new() with SSLv23_method(), and this set ssl_ctx->session to 300, the default value for SSLv23_method(). But the following SSL_set_ssl_method() call does not update it. By the way this will be fixed in OpenSSL 1.1.0. [1] https://tools.ietf.org/html/rfc2246#appendix-F.1.4 [2] https://git.openssl.org/?p=openssl.git;a=blob;f=ssl/t1_lib.c;h=dd5bd0050d89f5585c1b06a227eb8221ebf984f1;hb=5dd94f1847c744929a3bd24819f1c99644bb18c7#l193 * test/openssl/test_ssl_session.rb (test_session): remove assertion of the default session timeout. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-05-14merge revision(s) 54999: [Backport #12379]nagachika
* lib/mkmf.rb (pkg_config): use xsystem consistently to set up library path environment variable as well as latter pkg-config calls. [ruby-dev:49619] [Bug #12379] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e