Changelog for
ruby2.2-stdlib-2.2.6-29.1.i586.rpm :
Tue Mar 21 13:00:00 2017 mrueckertAATTsuse.de
- added patch by rguentherAATT to fix building with GCC7:
0005-RB_GC_GUARD-stronger-than-gcc7.patch
Thu Mar 16 13:00:00 2017 mrueckertAATTsuse.de
- switched to git branch based patching. we replace all patches in
this round:
removed:
- 0001-GC-Use-__builtin_ppc_get_timebase-for-POWER-arch.patch
- make-gem-build-reproducible.patch
- ruby-1.9.2p290_tcl_no_stupid_rpaths.patch
- ruby2.2.x_rbinstall_gem_buildroot.patch (unused)
- rubygems-1.5.0_buildroot.patch (unused)
added:
- 0001-tcl-no-stupid-rpaths.patch
- 0002-make-gem-build-reproducible.patch
- 0003-gc.c-tick-for-POWER-arch.patch
- added 0004-manual-backport-for-CVE-2016-2339.patch
CVE-2016-2339 (boo#1018808)
Mon Dec 26 13:00:00 2016 mrueckertAATTsuse.de
- update to 2.2.6
This release includes new SSL certificates for RubyGems. And,
this also includes about 80 bug fixes after the previous release.
See the ChangeLog for details.
- ext/openssl/ossl_ssl.c (ssl_npn_select_cb_common): fix parsing
protocol list. The protocol list from OpenSSL is not
null-terminated. patched by Kazuki Yamaguchi [Bug #11810]
[ruby-core:72082]
- ext/-test/file/fs.c (get_atime_p): Updating of file access
times is enabled or not.
- test/ruby/test_file.rb (TestFile#test_stat): fix noatime case.
[ruby-core:77943] [Bug #12903]
- test/rinda/test_rinda.rb (test_make_socket_ipv6_multicast,
test_make_socket_ipv6_multicast_hops): skip if IPv6 multicast
address is not available.
- lib/net/http.rb (transport_request): other than HTTPContinue in
1xx (HTTPInformation) also needs to continue. [Bug #12890]
- proc.c (mnew_internal): follow the original class, not to loop
the prepended module. [ruby-core:77591] [Bug #12832]
- cont.c (cont_new): disable optimization if clang\'s version is
3.8.0. [ruby-core:77894] [Bug #12893]
- sprintf.c (rb_str_format): format exact number more exactly.
- ext/openssl/ossl.c (Init_openssl): register an ex_data index
for X509_STORE and X509_STORE_CTX respectively. Since they
don\'t share the ex_data index registry, we can\'t use the same
index. (ossl_verify_cb): use the the correct index.
- ext/openssl/ossl_ssl.c (ossl_ssl_verify_callback): ditto.
- ext/openssl/ossl_x509store.c (ossl_x509store_set_vfy_cb):
ditto. (ossl_x509stctx_verify): ditto.
- ext/openssl/ossl.h (void ossl_clear_error): add extern
declarations of ossl_store_{ctx_,}ex_verify_cb_idx.
- ext/openssl/openssl_missing.c: remove X509_STORE_set_ex_data
and X509_STORE_get_ex_data.
- ext/openssl/openssl_missing.h: implement
X509_STORE_get_ex_data, X509_STORE_set_ex_data and
X509_STORE_get_ex_new_index as macros.
- thread.c (rb_thread_pending_interrupt_p): no pending interrupt
before initialization.
- thread.c (thread_raise_m, rb_thread_kill): uninitialized thread
cannot interrupt. [ruby-core:72732] [Bug #11959]
- eval_intern.h (TH_PUSH_TAG): Initialize struct rb_vm_tag::tag
with Qundef rather than 0 which is equal to Qfalse. Since
Kernel#throw(obj) searches a tag with rb_vm_tag::tag == obj,
throw(false) can accidentally find an unrelated tag which is
not created by Kernel#catch. [ruby-core:77229] [Bug #12743]
- test/ruby/test_exception.rb (test_throw_false): Add a test case
for this.
- lib/logger.rb (Logger::Period#next_rotate_time): fix monthly
log rotate when DST is applied during a month of 31 days. [Fix
GH-1458]
- object.c: Improve documentation for Float conversion.
[ruby-core:71661][Bug #11736][ci skip]
- lib/rubygems/ssl_certs/GlobalSignRootCA.pem: add for
RubyGems.org.
- variable.c (rb_const_search): raise with the actual
class/module name which defines the private constant.
- vm_dump.c (backtrace): use rip in the saved context for the
case the SIGSEGV is received when the process is in userland.
Note that ip in the stack should be used if the signal is
received when it is in kernel (when it is calling syscall) [Bug
[#12711]]
- lib/uri/generic.rb (def check_password): don\'t include bad
password in URI exception output
- test/uri/test_generic.rb (def test_set_component): test for
behavior
- io.c (nogvl_fsync, nogvl_fdatasync): on Windows, just ignore if
the fd is associated to non-disk device. if call fsync and/or
fdatasync with such fds, it causes Errno::EBADF exception and
the behavior is incompatible with ruby 2.1 and earlier
unintentionally introduced.
- array.c (flatten): use rb_obj_class instead of rb_class_of
because rb_class_of may return a singleton class.
[ruby-dev:49781] [Bug #12738]
- man/irb.1: remove useless -width option. [ruby-dev:49767] [Bug
[#12692]]
- ext/win32ole/win32ole.c (Init_win32ole): should not use atexit
to free allocated hash table to avoid error on Cygwin.
- test/fiddle/test_pointer.rb (test_to_str, test_to_s,
test_aref_aset): Attempt to use independent strings for
destructive tests that directly modify values on memory by
using Fiddle::Pointer. [Bug #12537] [ruby-dev:49700]
- string.c (str_buf_cat): Fix capa size for embed string. Fix
bug in r55547. [Bug #12536]
- string.c (rb_str_change_terminator_length): New function to
change termlen and resize heap for the terminator. This is
split from rb_str_fill_terminator (str_fill_term) because
filling terminator and changing terminator length are different
things. [Bug #12536]
- internal.h: declaration for rb_str_change_terminator_length.
- string.c (str_fill_term): Simplify only to zero-fill the
terminator. For non-shared strings, it assumes that (capa +
termlen) bytes of heap is allocated. This partially reverts
r55557.
- encoding.c (rb_enc_associate_index):
rb_str_change_terminator_length is used, and it should be
called whenever the termlen is changed.
- string.c (str_capacity): New static function to return capacity
of a string with the given termlen, because the termlen may
sometimes be different from TERM_LEN(str) especially during
changing termlen or filling terminator with specific termlen.
- string.c (rb_str_capacity): Use str_capacity.
- string.c: Partially reverts r55547 and r55555. ChangeLog about
the reverted changes are also deleted in this file. [Bug
[#12536]] [ruby-dev:49699] [ruby-dev:49702]
- string.c (str_fill_term): When termlen increases, re-allocation
of memory for termlen should always be needed. In this fix, if
possible, decrease capa instead of realloc. [Bug #12536]
[ruby-dev:49699]
- string.c: Specify termlen as far as possible. Additional fix
for [Bug #12536] [ruby-dev:49699].
- string.c (str_new_static): Specify termlen from the given
encoding when creating a new String object is needed.
- string.c (rb_tainted_str_new_with_enc): New function to create
a tainted String object with the given encoding. This means
that the termlen is correctly specified. Currently static
function. The function name might be renamed to
rb_tainted_enc_str_new or rb_enc_tainted_str_new.
- string.c (rb_external_str_new_with_enc): Use encoding by using
the above rb_tainted_str_new_with_enc().
- string.c (rb_str_subseq, str_substr): When
RSTRING_EMBED_LEN_MAX is used, TERM_LEN(str) should be
considered with it because embedded strings are also processed
by TERM_FILL. Additional fix for [Bug #12536]
[ruby-dev:49699].
- string.c: Fix memory corruptions when using UTF-16/32 strings.
[Bug #12536] [ruby-dev:49699]
- string.c (rb_str_new_with_class): Use TERM_LEN of the \"obj\".
- string.c (rb_str_plus, rb_str_justify): Use str_new0 which is
aware of termlen.
- string.c (str_shared_replace): Copy +termlen bytes instead of
+1.
- string.c (rb_str_times): termlen should not be included in
capa.
- string.c (RESIZE_CAPA_TERM): When using RSTRING_EMBED_LEN_MAX,
termlen should be counted with it because embedded strings are
also processed by TERM_FILL.
- string.c (rb_str_capacity, str_shared_replace, str_buf_cat):
ditto.
- string.c (rb_str_drop_bytes, rb_str_setbyte, str_byte_substr):
ditto.
- ext/openssl/ossl_ssl.c (ossl_ssl_write_internal): avoid
undefined behavior
- test/openssl/test_pair.rb (test_write_zero): new test
[ruby-core:76751] [Bug #12660]
- 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]
- test/coverage/test_coverage.rb: ignored test when enabled to
coverage. It lead to crash with `make test-all`.
- 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
- ext/date/date_strftime.c (date_strftime_with_tmx): reject too
large precision to get rid of buffer overflow. reported by
Guido Vranken .
- 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]
- missing/crypt.c: fix size macros to use configured values for
platforms long is larger than 32bit. [ruby-core:75792] [Bug
[#12446]]
- 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
- 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]
- 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.
- transcode.c (enc_arg, str_transcode_enc_args, econv_args):
remove volatile, and add GC guards in callers.
[ruby-core:75664] [Bug #12411]
- 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]
- variable.c (rb_local_constants_i): exclude private constants
when excluding inherited constants too. [Bug #12345]
- lib/drb/timeridconv.rb: don\'t use keeper thread. [Bug #12342]
- test/drb/ut_timerholder.rb: ditto.
- ext/json/lib/
*.rb: Removed some comments. Because these are
unnecessary class description. [ci skip][Bug
[#12255]][ruby-core:74835]
- 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.
- ext/socket/option.c, ext/socket/rubysocket.h (inet_ntop): share
the fallback definition. [ruby-core:76646] [Bug #12645]
- vm.c (vm_set_main_stack): remove unnecessary check. toplevel
binding must be initialized. [Bug #12611] (N1)
- string.c (rb_str_split_m): simplify the condition. [Bug
[#12611]](N4)
- thread.c (rb_wait_for_single_fd): Clean up fds.revents every
time before calling ppoll(2). [Bug #12575] [ruby-dev:49725]
- 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]
- lib/rexml/attribute.rb (REXML::Attribute#to_string): Fix wrong
entry reference name of double quote. [Bug
[#12609]][ruby-core:76509] Patch by Joseph Marrero. Thanks!!!
- 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.
- lib/rubygems/package.rb: Fixed potential perms issue unpacking
of gems on NFS. [Backport #12579]
- lib/rubygems.rb: bump version.
- 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
- lib/net/http/generic_rquest.rb (write_header): A Request-Line
must not contain CR or LF.
- lib/net/ftp.rb (putline): raise an ArgumentError when CR or LF
is included in a line.
- string.c (tr_trans): consider terminator length and fix heap
overflow. reported by Guido Vranken guidovranken.nl>.
- tool/fake.rb: don\'t fake libdir. use libdirname instead.
- bignum.c (Init_Bignum): revert a part of previous commit
(r55598), because the implementation of Object#hash is a little
difference from trunk. cf. [Backport #12391]
- 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.
- 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.
- re.c (unescape_nonascii): scan hex up to only 3 characters.
[Bug #12420] [Bug #12423]
- regparse.c (fetch_token_in_cc): raise error if given octal
escaped character is too big. [Bug #12420] [Bug #12423]
- 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]
- parse.y (new_if_gen): set newline flag to NODE_IF to trace all
if/elsif statements. [ruby-core:67720] [Bug #10763]
- ext/date/date_core.c (Init_date_core): [DOC] Convert DateTime
documentation to RDoc from Markdown. [ruby-core:75136] [Bug
[#12311]]
- variable.c (rb_local_constants_i): exclude hidden constants.
[ruby-core:75575] [Bug #12389]
- regcomp.c (compile_length_tree): return error code immediately
if compile_length_tree raised error [Bug #12418]
- include/ruby/missing.h (isfinite): move from numeric.c.
- ext/bigdecimal/bigdecimal.c (isfinite): get rid of a warning on
cygwin. [Bug #12417][ruby-core:75691]
- ext/bigdecimal/bigdecimal.c (isfinite): isfinite does not
always exist. fixed build error on Windows introduced at
r55123.
- ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec): consider
non-finite float values not to raise FloatDomainError.
[ruby-core:75682] [Bug #12414]
- 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.
- string.c (rb_str_modify_expand): check integer overflow.
[ruby-core:75592] [Bug #12390]
- 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.
- bignum.c: [DOC] Update result of 123456789
*
* -2.
[ruby-dev:49606] [Bug #12339]
- internal.h (RCOMPLEX_SET_IMAG): undef RCOMPLEX_SET_IMAG instead
of duplicated undef RCOMPLEX_SET_REAL.
- complex.c (rb_complex_set_imag): Fix to properly set imag of
complex.
- 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]
- test/ruby/test_time_tz.rb: Tests depends on Europe/Moscow
removed to avoid test failures due to the tzdata change.
https://github.com/eggert/tz/commit/8ee11a301cf173afb0c76e0315b9f9ec8ebb9d95
Found by naruse.
- compile.c (new_label_body): missed backporting r54548 in
r54698. this fixes randomly test failure introduced by r54698.
cf. [Bug #12082]
Wed Apr 27 14:00:00 2016 mrueckertAATTsuse.de
- update to 2.2.5
- README.EXT{,.ja}: `nul` should be uppercase. change \'nul\' =>
\'NUL\'. [Fix GH-1172] derived from a patch by craft4coder
- doc/extension.rdoc: Improvements to english grammers. [Bug
[#12246]][ruby-core:74792][ci skip] derived from a patch by
Marcus Stollsteimer
- encoding.c: Fix return value of `Encoding::ISO8859_1.name` [Bug
[#12313]][ruby-core:75147][ci skip]
- ext/bigdecimal/bigdecimal.c: Fix code sample of
`BigDecimal.new`
- configure.in: add missing -lm for AIX.
- configure.in: don\'t use the system-provided round(3) on AIX.
In AIX, round(0.49999999999999994) returns 1.0. Use round() in
numeric.c instead.
- ruby.c: cygwin does not use w32_cmdvector, command line can be
other than UTF-8. [ruby-dev:49519] [Bug #12184]
- eval_jump.c (exec_end_procs_chain): restore previous error info
for each end procs. [ruby-core:75038] [Bug #12302]
- compile.c (new_label_body): initialize bit fields, since
compile_data_alloc does not clear the memory. [Bug #12082]
- compile.c (iseq_optimize): disable tail call optimization in
rescued, rescue, and ensure blocks. [ruby-core:73871] [Bug
[#12082]]
- doc/regexp.rdoc (comments): [DOC] terminators cannot appear in
comments. [ruby-core:74838] [Bug #12256]
- extension.rdoc, extension.ja.rdoc: [DOC] Fix some errors.
Renamed files, wrong method names or argument types; the
example GetDBM macro is now updated to the current version of
the actual code. patches are derived from Marcus Stollsteimer
in [ruby-core:74690]. [Bug #12228]
- ext/nkf/nkf-utf8/nkf.c (mime_putc): fix typo. [Bug #12202]
[ruby-core:74802]
- ext/nkf/nkf-utf8/nkf.c: Merge upstream 4f3edf80a0. patched by
Anton Sivakov [Bug #12201] [Bug #12202]
- lib/securerandom.rb (gen_random): to avoid blocking on Windows.
On Windows OpenSSL RAND_bytes (underlying implementation is
RAND_poll in crypto/rand/rand_win.c) may be blocked at
NetStatisticsGet.
https://wiki.openssl.org/index.php/Random_Numbers#Windows_Issues
Instead of this, use Random.raw_seed directory (whose
implementation CryptGenRandom is one of the source of entropy
of RAND_poll on Windows).
https://wiki.openssl.org/index.php/Random_Numbers Note:
CryptGenRandom function is PRNG and doesn\'t check its entropy,
so it won\'t block. [Bug #12139]
https://msdn.microsoft.com/ja-jp/library/windows/desktop/aa379942.aspx
https://tools.ietf.org/html/rfc4086#section-7.1.3
https://eprint.iacr.org/2007/419.pdf
http://www.cs.huji.ac.il/~dolev/pubs/thesis/msc-thesis-leo.pdf
- lib/rubygems/test_case.rb: Fix test on Windows for inconsistent
temp path. https://github.com/rubygems/rubygems/pull/1554 [Bug
[#12193]][ruby-core:74431]
- ext/openssl/extconf.rb: check RAND_edg to support libressl.
- ext/openssl/ossl_rand.c (ossl_rand_egd): define only if
RAND_edg is available. [Fix GH-829]
- configure.in (rb_cv_lgamma_r_m0): fix the condition for
lgamma_r(-0.0). [Bug #12249]
- configure.in (rb_cv_lgamma_r_m0): check if lgamma_r(-0.0)
returns negative infinity. [Bug #12249]
- math.c (ruby_lgamma_r): define by the configured result.
- math.c (ruby_lgamma_r): missing/lgamma_r.c is used on Windows,
since msvcrt does not provide it.
- missing/lgamma_r.c (lgamma_r): fix lgamma(-0.0).
[ruby-core:74823] [Bug #12249]
- math.c (ruby_lgamma_r): mswin\'s lgamma_r also seems to be
wrong. cf. [Bug #12249]
- math.c (ruby_tgamma): fix tgamma(-0.0) on mingw.
[ruby-core:74817] [Bug #12249]
- defs/keywords (alias, undef): symbol literals are allowed.
- parse.y (parse_percent): should parse symbol literals for alias
and undef. [ruby-dev:47681] [Bug #8851]
- struct.c (struct_make_members_list): extract making member name
list from char
* va_list, with creating symbols without
intermediate IDs.
- ext/win32/lib/win32/registry.rb (DeleteValue, DeleteKey): fix
API names. [ruby-core:74863] [Bug #12264]
- vm_core.h (rb_vm_struct): make at_exit a single linked list but
not RArray, not to mark the registered functions by the write
barrier. based on the patches by Evan Phoenix.
[ruby-core:73908] [Bug #12095]
- thread.c (update_coverage): Do not track coverage in loaded
files after Coverage.result. Avoids out-of-bounds access. [Bug
[#12237]]
- ext/coverage/coverage.c (coverage_clear_result_i): document.
- ext/date/date_core.c (Init_date_core): [DOC] fix misplaced doc
of DateTime. [ruby-core:74729] [Bug #12233]
- parse.y (parse_ident): allow keyword arguments just after a
method where the same name local variable is defined.
[ruby-core:73816] [Bug#12073]
- eval.c (setup_exception): set the cause only if it is
explicitly given or not set yet. [Bug #12068]
- lib/forwardable.rb: Convert given accessors to String. r53381
changed to accept only Symbol or String for accessors, but
there are several rubygems that pass classes (e.g. Array, Hash,
...) as accessors. Prior r53381, it was accepted because
Class#to_s returns its class name. After r53381 given accessors
are checked with define_method, but it accepts only Symbol or
String, otherwise raises TypeError. def_delegator Foo,
:some_method This change is to revert unexpected
incompatibility. But this behavior may change in the future.
- lib/forwardable.rb (def_instance_delegator) fix delegating to
\'args\' and \'block\', clashing with local variables in generated
methods. [ruby-core:72579] [Bug #11916]
- lib/forwardable.rb (def_single_delegator): ditto.
- compile.c (compile_massign_lhs): when index ends with splat,
append rhs value to it like POSTARG, since VM_CALL_ARGS_SPLAT
splats the last argument only. [ruby-core:72777] [Bug #11970]
- sprintf.c (rb_str_format): fix buffer overflow, length must be
greater than precision. reported by William Bowling wbowling.info>.
- test/ruby/test_io.rb: handled rlimit value same as r52277 [Bug
[#11852]][ruby-dev:49446]
- tool/extlibs.rb (do_patch): let \"patch\" command change the
working directory and open the patch file there, instead of
spawn options, so that proper error message will be shown by
the command not just \"chdir\" or \"open\".
- thread_pthread.c (reserve_stack): fix reserving position where
the stack growing bottom to top. [Bug #12118]
- .travis.yml: removed commented-out code.
- .travis.yml: removed osx code. follow up with r53517
- .travis.yml: update libssl before running tests. Thanks to
Chris Sinjakli for figuring out the
travis settings!
- .travis.yml: removed Ruby 1.9.3 build on Travis CI
- .travis.yml: Remove redundant configuration option. [fix
GH-809] Patch by AATTgxworld
- ext/openssl/extconf.rb: check SSL_CTX_set_next_proto_select_cb
function rather than OPENSSL_NPN_NEGOTIATED macro. it exists
even if it is disabled by OpenSSL configuration.
[ruby-core:74384] [Bug #12182]
- ext/openssl/ossl_ssl.c: update #ifdef(s) as above.
- test/openssl/test_ssl.rb: skip NPN tests if NPN is disabled.
- lib/uri/http.rb (URI::HTTP#initialize): [DOC] fix example,
missing mandatory arguments. [ruby-core:74540] [Bug #12215]
- lib/uri/mailto.rb: raising URI::InvalidComponentError instead
of failing with undefined method `split\' for nil:NilClass for
mailto: URIs without opaque part. [Bug #10738]
- test/uri/testuri.rb: Test for above
- signal.c: should also clear ruby_disable_gc. [Bug #11692]
- vm_eval.c (rb_f_catch): [DOC] fix malformed RDoc syntax,
\"+...+\" cannot enclose non-identifier characters. a patch by
Sebastian S in [ruby-core:74278]. [Bug#12170]
- test/-ext-/float/test_nextafter.rb: In AIX,
nextafter(+0.0,-0.0)=+0.0, and nextafter(-0.0,+0.0)=-0.0, but
they should return -0.0 and +0.0, respectively. This is a known
bug in nextafter(3) on AIX, so skip related tests.
- lib/rubygems/installer.rb: merge partially r49511. cherry
picking https://github.com/rubygems/rubygems/commit/f9232680
[Bug #12066]
- string.c (enc_succ_alnum_char): try to skip an invalid
character gap between GREEK CAPITAL RHO and SIGMA.
[ruby-core:74478] [Bug #12204]
- parse.y (parse_numvar): NTH_REF must be less than a half of
INT_MAX, as it is left-shifted to be ORed with back-ref flag.
[ruby-core:74444] [Bug#12192] [Fix GH-1296]
- enc/trans/JIS: update Unicode\'s notice. [Bug #11844]
- marshal.c (r_object0): raise ArgumentError when linking to
undefined object.
- marshal.c (r_object0): Fix Marshal crash for corrupt extended
object.
- ext/openssl/ossl_ssl.c (ossl_sslctx_setup): document as
MT-unsafe [ruby-core:73803] [Bug #12069]
- insns.def (opt_mod): show its method name on ZeroDivisionError.
[Bug #12158]
- net/ftp.rb: add NullSocket#closed? to fix closing not opened
connection. [Fix GH-1232]
- variable.c: Added documentation about order of
`Module#constants` [ci skip][Bug #12121][ruby-dev:49505][fix
GH-1301]
- test/ruby/test_process.rb (test_execopts_gid): Skip a test that
is known to fail on AIX. AIX allows setgid to a supplementary
group, but Ruby does not allow the \"-e\" option when setgid\'ed,
so the test does not work as intended.
- test/socket/test_addrinfo.rb (test_ipv6_address_predicates):
IN6_IS_ADDR_V4COMPAT and IN6_IS_ADDR_V4MAPPED are broken on
AIX, so skip related tests.
- test/rinda/test_rinda.rb (test_make_socket_ipv4_multicast): The
fifth argument to getsockopt(2) should be modified to indicate
the actual size of the value on return, but not in AIX. This is
a know bug. Skip related tests.
- test/rinda/test_rinda.rb (test_ring_server_ipv4_multicast):
ditto.
- test/rinda/test_rinda.rb (test_make_socket_unicast): ditto.
- test/socket/test_basicsocket.rb (test_getsockopt): ditto.
- test/socket/test_sockopt.rb (test_bool): ditto.
- test/zlib/test_zlib.rb (test_adler32_combine,
test_crc32_combine): Skip two tests on AIX because zconf.h in
zlib does not correctly recognize _LARGE_FILES in AIX. The
problem was already reported to zlib, and skip these tests
until it is fixed.
- test/gdbm/test_gdbm.rb (TestGDBM#test_s_open_lock): skip this
test on AIX. The issue is the same as on Solaris.
[ruby-dev:47631]
- thread_pthread.c (getstack): __pi_stacksize returned by
pthread_getthrds_np() is wrong on AIX. Use __pi_stackend -
__pi_stackaddr instead.
- lib/irb.rb: avoid to needless truncation when using
back_trace_limit option. [fix GH-1205][ruby-core:72773][Bug
[#11969]]
- ext/tk/lib/tkextlib/tcllib/tablelist_tile.rb: fix method name
typo. [ruby-core:72513] [Bug #11893] The patch provided by
Akira Matsuda.
- ext/tk/lib/tkextlib/tcllib/toolbar.rb: fix method name typo.
[ruby-core:72511] [Bug #11891] The patch provided by Akira
Matsuda.
- ext/tk/lib/tkextlib/blt/tree.rb: fix method name typo.
[ruby-core:72510] [Bug #11890] The patch provided by Akira
Matsuda.
- ext/tk/lib/tk/menubar.rb: fix a typo in font name.
[ruby-core:72505] [Bug #11886] The patch provided by Akira
Matsuda.
- ext/tk/sample/
*.rb: ditto.
- test/fiddle/test_handle.rb (test_NEXT): use -test-/dln/empty
which is always a shared object and is not used by others.
[ruby-dev:48629] [Bug #10384]
- ruby.h: undef HAVE_BUILTIN___BUILTIN_CHOOSE_EXPR_CONSTANT_P and
HAVE_BUILTIN___BUILTIN_TYPES_COMPATIBLE_P on C++.
[ruby-core:72736] [Bug #11962]
- ext/socket/option.c (inspect_tcpi_msec): more accurate
condition for TCPI msec member inspection function.
[ruby-core:74388] [Bug #12185]
- lib/logger.rb: Remove block from Logger.add as it\'s not needed
patch provided by Daniel Lobato Garcia [fix GH-1240] [Bug
[#12054]]
- re.c: Remove deprecated kcode argument from Regexp.new and
compile patch provided by Dylan Pulliam [Bug #11495]
- re.c: Update documentation for Regexp class. [fix GH-937][ci
skip] Patch by AATTdavydovanton
- ext/socket/socket.c (sock_gethostname): support unlimited size
hostname.
- lib/xmlrpc/client.rb: Support SSL options in async methods of
XMLRPC::Client. [Bug #11489] Reported by Aleksandar
Kostadinov. Thanks!!!
- marshal.c (r_object0): honor Marshal.load post proc value for
TYPE_LINK. by Hiroshi Nakamura
https://github.com/ruby/ruby/pull/1204 fix GH-1204
- ext/socket/option.c (sockopt_bool): relax boolean size to be
one too not only sizeof(int). Winsock getsockopt() returns a
single byte as a boolean socket option. [ruby-core:72730] [Bug
[#11958]]
- io.c (io_getpartial): remove unused kwarg from template
- test/ruby/test_io.rb (test_readpartial_bad_args): new [Bug
[#11885]]
- ext/openssl/ossl_ssl.c (ossl_ssl_read_internal): do not process
kwargs in blocking mode
- test/openssl/test_ssl.rb: test sysread
- process.c (rb_execarg_parent_start1): need to convert the
encoding to ospath\'s one.
- process.c: use rb_w32_uchdir() instead of plain chdir() on
Windows. reported by naruse via twitter.
- process.c (rb_execarg_addopt): need to convert the encoding to
ospath\'s one.
- ext/stringio/stringio.c (strio_binmode): implement to set
encoding
- test/stringio/test_stringio.rb (test_binmode): new test
[ruby-core:72699] [Bug #11945]
- compile.c, cont.c, doc, man: fix common misspelling.
[ruby-core:72466] [Bug #11870]
- ext/socket/init.c (rsock_init_sock): reject reserved FDs
[ruby-core:72445] [Bug #11862]
- ext/socket/init.c (rsock_init_sock): check FD after validating
- test/socket/test_basicsocket.rb (test_for_fd): new
[ruby-core:72418] [Bug #11854]
- re.c (reg_names_iter): should consider encoding of regexp.
[ruby-core:72185] [Bug #11825]
- enc/windows_1250.c: Should not use C++ style comments (C99
feature). [Bug #11843]
- enc/iso_8859_2.c, enc/windows_1250.c: separate Windows-1250
from ISO-8859-2 to fix 0x80..0x9e range (from Kimihito Matsui)
- enc/windows_1252.c: separate from ISO-8859-1 to fix 0x80..0x9e
range. [ruby-core:64049] [Bug #10097]
- enc/iso_8859_13.c: Added three missing lower/upper-case
character pairs (from Kimihito Matsui)
- enc/iso_8859_4.c: Added missing lower/upper-case character pair
(U+014A and U+014B, LATIN CAPITAL/SMALL LETTER ENG) (from
Kimihito Matsui)
- string.c (rb_str_scrub): the result should be infected by the
original string.
- transcode.c (rb_econv_substr_append, econv_primitive_convert):
the result should be infected by the original string.
- include/ruby/ruby.h: add raw FL macros, which assume always the
argument object is not a special constant.
- internal.h (STR_EMBED_P, STR_SHARED_P): valid only for
T_STRING.
- string.c: deal with taint flags directly across String
instances.
- parse.y (regexp): set_yylval_num sets u1, should use nd_tag
instead of nd_state. [ruby-core:72638] [Bug #11932]
- gc.c (RVALUE_PAGE_WB_UNPROTECTED): fix a typo of argument name.
[Fix GH-1221]
- vm_insnhelper.c (vm_call_method): should not set fastpath with
keyword arguments for VM_METHOD_TYPE_ATTRSET type methods.
Normally, we can not use keyword arguments for this kind of
methods, (obj.foo = 1), but we can set alias names for them.
[Bug #11657]
- test/ruby/test_keyword.rb: add a test for this fix.
- parse.y (parser_yylex): allow here documents in labeled
argument. [ruby-core:72396] [Bug #11849]
- test/ruby/test_syntax.rb: fix typo in test
- parse.y (parse_percent): Allow %-literals in labeled arg as
r51624 did for parentheses. Fixes [ruby-core:72084] [Bug
[#11812]].
- cont.c: fix a double word typo. [Bug #11313][ruby-core:69749]
- ext/tk/lib/multi-tk.rb: fix typos. [Bug
[#11764]][ruby-core:71800]
Mon Mar 14 13:00:00 2016 dvaleevAATTsuse.com
- 0001-GC-Use-__builtin_ppc_get_timebase-for-POWER-arch.patch
Use __builtin_ppc_get_timebase on POWER architecture to gain
a little bit of performance improvement.
https://github.com/ruby/ruby/pull/1291
Mon Jan 4 13:00:00 2016 mrueckertAATTsuse.de
- update to 2.2.4 (boo# 959495)
- ext/fiddle/handle.c: check tainted string arguments. Patch
provided by tenderlove and nobu. (CVE-2015-7551)
- test/fiddle/test_handle.rb (class TestHandle): add test for
above.
- io.c (parse_mode_enc): fix buffer overflow.
- doc/NEWS-0.2.2: add description about incompatible change in
Hash duplicated key overriding policy. [Bug #10315] [Bug
[#11501]]
- insns.def (opt_case_dispatch): avoid converting Infinity
- test/ruby/test_optimization.rb (test_opt_case_dispatch_inf):
new [ruby-dev:49423] [Bug #11804]\'
- configure.in: pthread_getattr_np is broken on AIX. More
specifically, the stack address and size returned are not
correct.
- common.mk (update-gems): use BASERUBY instead of RUNRUBY.
- insns.def (opt_case_dispatch): check Float#=== redefinition
- test/ruby/test_optimization.rb (test_opt_case_dispatch): new
[ruby-core:71920] [Bug #11784]
- ruby_atomic.h (ATOMIC_SIZE_CAS): fix the argument order of
InterlockedCompareExchange64. new value and then old value is
the last.
- encoding.c (enc_m_loader): defer finding encoding object not to
be infected by marshal source. [ruby-core:71793] [Bug #11760]
- marshal.c (r_object0): enable compatible loader on USERDEF
class. the loader function is called with the class itself,
instead of an allocated object, and the loaded data.
- marshal.c (compat_allocator_table): initialize
compat_allocator_tbl on demand.
- object.c (rb_undefined_alloc): extract from rb_obj_alloc.
- ext/-test-/file/fs.c: need to include sys/statvfs.h to use
statvfs().
- ext/-test-/file/extconf.rb: check the existence of
sys/statvfs.h
- sprintf.c (rb_str_format): fix wrong shifting position in
Rational conversion when not at the beginning of the result.
[ruby-core:71806] [Bug #11766]
- range.c (range_to_s): should be infected by the receiver. str2
infects by appending. [ruby-core:71811] [Bug #11767]
- ext/readline/extconf.rb: call dir_config(\"libedit\") if
- -enable-libedit is spcified. [Bug #11751] patched by John Hein
- parse.y (parser_here_document): store dispatched result of
on_tstring_content at the last fragment of a here document.
- test/ruby/test_gc.rb: merge partially r52391 to get rid of CI
error.
- io.c (rb_io_each_codepoint): raise an exception at incomplete
character before EOF when conversion takes place. [Bug #11444]
- io.c (argf_getpartial): should not resize str if the second
argument is not given. [ruby-core:71668] [Bug #11738]
- vm_eval.c (local_var_list_add): skip internal local variable
name by its type but not if it has a name. internal local
variable names are just unique per frame, not globally.
[ruby-core:71437] [Bug #11674]
- io.c (rb_io_each_codepoint): read more data when read
partially. [ruby-core:70379] [Bug #11444]
- lib/net/http.rb: set hostname before call ossl_ssl_set_session.
[Bug #11401][ruby-core:70152][fix GH-964] Patch by AATTmkarnebeek
- transcode.c (rb_econv_open0): rb_econv_t::source_encoding_name
and rb_econv_t::destination_encoding_name should refer static
strings always or NULL. [ruby-core:70247] [Bug #11416]
- iseq.c (iseq_data_to_ary): dump kw_arg as symbol
- test/-ext-/iseq_load/test_iseq_load.rb: test kw_arg roundtrip
[ruby-core:69891] [Bug #11338]
- gc.c (__has_feature): move into internal.h.
- internal.h (__has_feature): ditto.
- internal.h (__has_extension): new macro.
- internal.h (STATIC_ASSERT): use _Static_assert with clang.
[ruby-core:69931] [Bug #11343]
- parse.y (literal_concat_gen, evstr2dstr_gen): keep literal
encoding beginning with an interpolation same as the source
file encoding. [ruby-core:70703] [Bug #11519]
- ext/openssl/ossl_ssl.c (ssl_npn_select_cb): explicitly raise
error in ext/openssl instead of OpenSSL itself because LibreSSL
silently truncate the selected protocol name by casting the
length from int to unsigned char. [Bug #11369] Patch by Jeremy
Evans
- vm_eval.c (send_internal): set method_missing_reason before
invoking overriding method_missing method so that the default
method_missing can achieve it properly. [ruby-core:68515] [Bug
[#10969]]
- test/ruby/test_symbol.rb (test_symbol_fstr_leak): add a warm-up
code and check RSS to avoid false positive on AIX and false
negative on Mac OS X. [Bug #10686]
- test/ruby/test_symbol.rb: avoid a false positive in AIX.
- test/objspace/test_objspace.rb
(test_trace_object_allocations_start_stop_clear): clear object
allocation table first to get rid of erroneous detection for
obj3. [ruby-dev:49095] [Bug #11271]
- insns.def (defined): skip respond_to_missing? when a method is
available. [Bug #11211]
- test/ruby/test_defined.rb: add a test for this fix.
- ext/digest/sha1/sha1ossl.c: fix defs.h path to catch up changes
in r52739.[Bug #3231]
- ext/digest/rmd160/rmd160ossl.c: ditto.
- parse.y (kwd_append): fix segv after invalid keyword argument,
preceding keyword list is NULL when syntax error is there.
[ruby-core:71356] [Bug #11663]
- lib/ipaddr.rb, test/test_ipaddr.rb: Reject invalid address
contained EOL string. Patch by AATTkachick [fix GH-942][Bug
[#11513]]
- compile.c (iseq_build_from_ary_body): register cdhash to the
iseq constant body instead of compile time mark array, not to
get GCed. [ruby-core:70708] [Feature #8543]
- ext/digest/
*/
*.[ch]: include ruby.h before digest.h to avoid
includeing ext/digest/extconf.h. [Bug #3231]
https://msdn.microsoft.com/library/36k2cdd4.aspx
- ext/digest/
*/extconf.rb: remove ext/digest from include search
path to avoid confusion of cl.exe.
- ext/digest/
*/
*.[ch]: explicitly specify def.h\'s path.
- Added missing reference of GitHub
- lib/net/http.rb: Fixed regression for Net::HTTP::PUT with
\"Expect-100\" header. [fix GH-949]
- test/net/http/test_http.rb: added test.
- vm_insnhelper.c (vm_invoke_block): we should not expect
ci->argc is stable after invoking a block. [Bug #11451]
- test/ruby/test_yield.rb: add a test. This test script is given
by Alex Dowad.
- load.c (rb_load_internal0): stop separating exits at loading
from exits from execution. TAG_FATAL is the only case that
`errinfo` is a Fixnum, and should continue to exit by JUMP_TAG
but not raising as an ordinary exception. [ruby-core:70169]
[Bug #11404]
- load.c (rb_load_internal0): extra check before returning
TAG_RAISE when a non-local transfer of control happens while
loading and parsing a Ruby source file. [ruby-core:70169] [Bug
[#11404]]
- load.c (rb_load_internal0): do not raise any exceptions but
return the result tag state.
- load.c (rb_load_protect): reduce nested EXEC_TAGs.
- enc/euc_jp.c (mbc_case_fold): check given string is valid or
not, and if invalid, return 1. [Bug #11486]
- ext/openssl/ossl_pkey.c: Merge ruby/opensslAATTb9ea8ef [Bug
[#10735]]
- io.c (argf_next_argv): check ARGV element type, and try
conversion if necessary. [ruby-core:71140] [Bug #11610]
- ext/openssl/ossl_ssl.c (ossl_ssl_method_tab): Only add SSLv3
support if the SSL library supports it. Thanks Kurt Roeckx
[Bug #11376]
- ext/openssl/extconf.rb: check for SSLv3 support in the SSL
implementation.
- test/openssl/test_ssl.rb (class OpenSSL): Skip tests that need
SSLv3 if there is no support.
- tool/runruby.rb: rubyspec now requires other FDs not to be
closed since 7b6ce1fee.
- vm_trace.c (rb_threadptr_exec_event_hooks_orig): maintain
trace_running counter on internal events. This patch is made
by Takashi Kokubun . [Bug #11603]
https://github.com/ruby/ruby/pull/1059
- test/openssl/test_ssl_session.rb: Fix tests so that they take
in to account OpenSSL installations that have SSLv3 disabled by
default. Thanks Jeremy Evans for the
patches. [Bug #11366] [Bug #11367]
- test/openssl/test_ssl_session.rb
(OpenSSL#test_ctx_client_session_cb): fix test failure with
OpenSSL disabled SSLv3 protocol. [ruby-core:63772] [Bug
[#10046]]
- vm.c (hook_before_rewind): prevent kicking :return event while
finishing vm_exec func because invoke_block_from_c() kick a
:return event for bmethods. [Bug #11492]
- test/ruby/test_settracefunc.rb: add a test.
- configure.in: check for libunwind.h, which is not available in
very old OS X SDK. [ruby-core:71080] [Bug #11591]
- test/drb/test_drb.rb: Run Rinda/DRb tests on localhost. [Fix
GH-1027] patch by voxik.
- test/rinda/test_rinda.rb: ditto
- parse.y (IS_BEG): include labeled argument state, which was
EXPR_LABELARG. [ruby-dev:49221] [Bug #11456]
- parse.y: fix syntax error at do-block after a conditional
operator. separate label-allowed and after-a-label states from
others as bit flags. [ruby-dev:48790] [Bug #10653]
- enum.c (nmin_filter): Fix limit value. patch by Helder
Pereira. [Bug #11471] [ruby-core:70477]
- lib/rss/rss.rb (Time#w3cdtf): fix zero-trimmed width of
fraction digits. [ruby-core:70667] [Bug #11509]
- re.c (rb_memsearch_wchar, rb_memsearch_qchar): test matching
till the end of string. [ruby-core:70592] [Bug #11488]
- test/ruby/test_m17n.rb (test_include?, test_index): add tests
by Tom Stuart.
- thread_pthread.c (reserve_stack): ensure the memory is really
allocated. [Bug #11457]
- insns.def (defineclass): introduce an ad-hoc patch to avoid an
issue reported on [Bug #10871]. This patch does not fix
completely. For example, method definition in a block (like
1.times{def ...; end}) still causes same issue. To solve all,
we need a huge patch and it seems difficult for stable branch.
Use Ruby 2.3 and later to solve this issue completely. (See
[Bug #10943])
- tool/downloader.rb: support old versions of ruby.
- tool/downloader.rb: now can download gems by http if openssl is
not available (this may be danger!)
Wed Aug 19 14:00:00 2015 mrueckertAATTsuse.de
- update to 2.2.3 (boo# 936032)
- update rubygems to 2.4.5.1. this version fixed CVE-2015-3900.
- Fix document for Float::MIN and Float::EPSILON.
- should match only char boundaries in wide character encodings.
[ruby-core:70220] [Bug #11413]
- Fixed bad performance in ruby >= 2.2 for Hash with many symbol
keys
- target encoding name can be empty now.
[ruby-core:69841] [Bug #11324]
- fix Float hash. rb_dbl_hash() returns a Fixnum, but not a long.
[Bug #9381]
- raise with messages in UTF-8 encoding.
[ruby-core:67386] [Bug #10705]
- handle O_TRUNC correctly [ruby-core:69779] [Bug #11319]
- FTP close the TCPServer when sending the port fails.
- (Net::HTTPResponse::Inflater#finish): fix a bug that empty
gzipped response body causes Zlib::BufError.
[ruby-core:68846] [Bug #11058]
- (Net::HTTPResponse#inflater): fix TypeError. An exception
object might be nil. [ruby-core:68846] [Bug #11058]
- (module OpenSSL): raise a more helpful exception when verifying
the peer connection and an anonymous cipher has been selected.
[ruby-core:68330] [Bug #10910]
- ruby itself (including numeric.c) is built with strict compile
options including -std=iso9899:1999, but ext/date is not. By
the way -std=iso9899:1999 is not only a warning option but also
changes behavior like MACRO definitions for example INFINITY.
[Bug #10906]
- Fix LocalJumpErrors being raised in OpenSSL tests.
[ruby-core:70020][Bug #11368]
- make Timeout::ExitException an alias of Timeout::Error
[ruby-dev:49179] [Bug #11344]
- (HTTPResponseTest#test_read_body_content_encoding_deflate_uppercase):
fix a failure without zlib.
- copy the arguments to the machine stack before rewinding the
control frame pointer and leaving the arguments outside valid
region of the value stack. [ruby-core:69969] [Bug #11352]
- CONTENT_ENCODING can be upper case. [ruby-core:69670] [Bug #11285]
patched by Andy Chu
- copy the arguments to the machine stack before rewinding the control
frame pointer and leaving the arguments outside valid region of the
value stack. [ruby-core:69969] [Bug #11352]
- keep the arguments region inside the valid value stack.
[ruby-core:69969] [Bug #11352]
- reversed string is not a substring, and should not set coderange of
the original string. [ruby-dev:49189] [Bug #11387]
- pop cmdarg stack for lookahead token. [ruby-core:70067] [Bug
[#11380]]
- Support %s.%N. [ruby-core:68301] [Bug #10904]
- fix transcoder loading race condition, by waiting in require.
[ruby-dev:49106] [Bug #11277]
- check if array size will exceed maximum size to get rid of buffer
overflow. [ruby-dev:49043] [Bug #11235]
- try opening file without gvl not to lock entire process. [Bug
[#11060]]
- split --libs if --libs-only-l option is not available. patch in
[ruby-core:69428] by Hans Mackowiak. [ruby-core:69421] [Bug #11201]
- out of range NTH_REF is always nil.
- check overflow of NTH_REF and range. [ruby-core:69393] [Bug #11192]
- make public and add length parameter.
- resolve refined method entry to check if undefined.
[ruby-core:69064] [Bug #11117]
- undefined refined method is not callable unless using.
[ruby-core:69064] [Bug #11117]
- Fix require paths for released gem. [fix GH-929] Patch by AATTvoxik
- Return empty JSON object when passed object is a special const,
instead of SEGV. Based patch by Kohei Suzuki (eagletmt).
[ruby-core:69692] [Bug #11291]
- relax pattern because long_lived flag and marked flag can be false
at major GC. [Bug #10852]
- use RB_GC_GUARD instead of volatile [ruby-core:69419] [Feature
[#11198]]
- ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode,
ossl_asn1_decode_all): use RB_GC_GUARD instead of volatile
[ruby-core:69371] [Bug #11185]
- seek to the file end only when writing (mode:a), not reading
(mode:a+, read).
- stop returning false negatives for filenames which are trailing
substrings of file extensions. For example, \'b\', which a trailing
substring of \".rb\" should not return false. [Bug
[#11155]][ruby-core:69206]
- register symbol names as strings first so that r_symlink always
returns valid names. [ruby-core:68587] [Bug #10991]
- bsock_recmvsg_internal needs GC guard for control buffer [Bug
[#11123]]
- test if covered for linear objects. [ruby-core:69052] [Bug #11113]
- should work even if body-fld-dsp is omitted. [ruby-core:69093] [Bug
[#11128]]
- added documentation for character sequence \\\' with String#sub [Bug
[#11132]][ruby-core:69121][fix GH-900][ci skip] Patch by AATTshishir127
- Added documentation for rational literal. [Bug #11075][fix
GH-885][ci skip] Patch by AATTshishir127
- preserve errno before other library calls and use rb_syserr_fail.
[ruby-core:68531] [Bug #10975]
- check other events when RETURN is thrown. [Bug #10724]
- fix memory leak of addrinfo. [ruby-dev:48923] [Bug #11051]
- try magic number only if f_type is included. [ruby-dev:48913] [Bug
[#11000]]
- return filesystem name by statfs/statvfs. [ruby-core:68624] [Bug
[#10998]]
- Symbols are compared by the identities always. [ruby-core:68767]
[Bug #11035]
- use same hash values with Float#hash so that -0.0 and +0.0 will be
identical. [ruby-core:68541] [Bug #10979]
- prohibit from accessing internal objects. [ruby-core:68348] [Bug
[#10918]] [ruby-core:58539] [Bug #9144]
- search the target to break from a block with nested rescue, from the
nested blocks. [ruby-core:67765] [Bug #10775] [Fix GH-820]
- protect value stack from calling other methods during complex
parameter setting process (splat, kw, and so on). [Bug #11027]
- allow symbols to just instance_eval/exec, except for definition of
singletons. [ruby-core:68961] [Bug #11086]
- clear NOFREE flag at embedding as embedded strings no longer refer
static strings. [ruby-core:68436] [Bug #10942]
- use getattrlist() if fgetattrlist() is unavailable, on OSX 10.5.
[ruby-core:68829] [Bug #11054]
- replicate env from method object, and allocate the local variable
area for the iseq local table. [ruby-core:68673] [Bug #11012]
- make more realistic data. [ruby-core:68632] [[Bug #10999]
- check if the receiver responds to the given method by
respond_to_missing?.
- create Method object for method_missing. [ruby-core:68564] [Bug
[#10985]]
- need to check the return value of GLOB_REALLOC().
- shouldn\'t create Ruby object before the object system is loaded.
[ruby-core:68430] [Bug #10941]
- Check class equality. (Resolv::DNS::Name#initialize): Normalize
labels as Resolv::DNS::Label::Str objects.
- check source type, must be an IO or a String. [ruby-core:69219]
[Bug #11159]
- make dsym_fstrs a hash compared by identity as the keys are unique
fstrings, to get rid of running hash and compare methods and causing
new object allocation during garbage collection phase.
[ruby-dev:48891] [Bug #10933]
- push and reset cmdarg_stack in lambda body. [ruby-core:69017] [Bug
[#11107]]
- check if a different libruby is loaded by the extension library, and
then bail out to get rid of very frequent reported stale bug
reports.
- show the exact target path in the error message instead of the
destination parent directory name. [ruby-core:68706]. [Bug #11021]
- keep sp safe zone to get rid of crash by -fstack-check.
[ruby-core:68740] [Bug #11030]
- check also procstat_getvmmap, which is not available on FreeBSD 9.
[ruby-core:68468] [Bug #10954]
- use kinfo_getvmmap instead if procstat_getvmmap is not available.
Fri Jun 19 14:00:00 2015 adrianAATTsuse.de
- fix provided rake and rdoc version
- remove generic rubygem-rake provides
Thu Apr 16 14:00:00 2015 mrueckertAATTsuse.de
- update to 2.2.2 (bsc# 926974)
- stricter hostname verification following RFC 6125. with the
patch provided by Tony Arcieri and Hiroshi Nakamura
[ruby-core:61545] [Bug #9644] CVE-2015-1855
- fix segfault by null caused by syntax error. [ruby-core:68851]
[Bug #10957]
- parse.y (primary): empty parentheses at cmdarg can be null.
[ruby-core:68477] [Bug #10957]
- ext/io/wait/wait.c (io_nread): wrap return value with INT2FIX
Thanks to Yura Sokolov
[ruby-core:68369] [Bug#10923]
- test/io/wait/test_io_wait.rb (test_nread_buffered): fix broken
test
- vm_eval.c (vm_call_super): search next super class from the
original class, to get rid of infinite recursion with
prepending. a patch by Seiei Higa at
[ruby-core:68434]. [ruby-core:68093] [Bug #10847]
- class.c (rb_prepend_module): need a WB for klass -> origin.
- ext/fiddle/extconf.rb: needs --enable-shared when linked to
libruby or fiddle.so. since --with-static-linked-ext does no
longer link extensions to ruby program with --enable-shared,
the only combination needs --enable-static is --disable-shared
and --with-static-linked-ext. [ruby-dev:48901] [Bug #10960]
- ext/fiddle/extconf.rb: make PIC objects if it will be linked as
a shared object eventually. [ruby-core:67128]
- spec/default.mspec: use default configuration file name.
https://github.com/ruby/rubyspec/commit/cc69f337b06362e5607ffa3e3ad40ef7494960cf
- spec/default.mspec: remove specific version number.
https://github.com/ruby/rubyspec/commit/7a909e925c1baa9c700bd44af9241aef6e596714
- common.mk: use ruby organization for rubyspec.
For all the changes see /usr/share/doc/packages/ruby2.2/ChangeLog
Wed Mar 11 13:00:00 2015 mrueckertAATTsuse.de
- while merging the changes with the 2.1 package i noticed 2
problems:
- we still rewrote the she bang lines to ruby 2.1.
- the macro files weren\'t marked as config.
Wed Mar 11 13:00:00 2015 mrueckertAATTsuse.de
- Remove the support to have the shared files from ruby-common
intree again.
Wed Mar 11 13:00:00 2015 mrueckertAATTsuse.de
- update to 2.2.1
This release includes the fix for ffi build failure and memory
leak issue on Symbol GC (See Bug #10686).
For more details see /usr/share/doc/packages/ruby2.2/ChangeLog
- match the version number in the rubygems provides to what is
actually shipped with ruby 2.2
Wed Feb 11 13:00:00 2015 cooloAATTsuse.com
- port make-gem-build-reproducible.patch from ruby 2.1
Mon Feb 9 13:00:00 2015 cooloAATTsuse.com
- remove upstreamed drop_content_size_check_in_xmlrpc.patch
- add unapplied patches as sources for now to pass source validator,
we might have use for them later
Thu Dec 25 13:00:00 2014 mrueckertAATTsuse.de
- tk seems to work now with newer tk versions
- convert the conditional for tk to bcond_with(out)
- buildrequire tk-devel only if we want to build with tk. otherwise
we get tk built and packaged even if we dont expect it. this
leads to the rubyX.y-stdlib pulling tk.
Thu Dec 25 13:00:00 2014 mrueckertAATTsuse.de
- sync spec file with 2.1 branch
Thu Dec 25 13:00:00 2014 mrueckertAATTsuse.de
- update to 2.2.0 final:
- Notable Changes since 2.1
- Incremental GC (YARV Maniacs No.12)
- Symbol GC (presentation at RubyKaigi 2014)
- configure –with-jemalloc Feature #9113
- core libraries:
- Support Unicode 7.0 #9092
- New methods:
- Enumerable#slice_after #9071, Enumerable#slice_when #9826
- Float#next_float, Float#prev_float #9834
- File.birthtime, File#birthtime #9647
- String#unicode_normalize #10084
- bundled libraries:
- Update Psych 2.0.8
- Update Rake 10.4.2
- Update RDoc 4.2.0
- Update RubyGems 2.4.5
- Update test-unit 3.0.8 (removed from repository but bundled
in tarball)
- Update minitest 5.4.3 (removed from repository but bundled
in tarball)
- Deprecate mathn
- C API
- Remove deprecated APIs
See https://github.com/ruby/ruby/blob/v2_2_0/NEWS for details.
With those changes, 1557 files changed, 125039 insertions(+),
74376 deletions(-) from v2.1.0!
Wed Sep 24 14:00:00 2014 mrueckertAATTsuse.de
- also make the ghost files match what we generate in the rubygem
based packages
Wed Sep 24 14:00:00 2014 mrueckertAATTsuse.de
- also provide the %{_bindir}/$bin%{rb_binary_suffix} symlinks via
u-a to be consistent with what gem based packages do.
Mon Sep 22 14:00:00 2014 mrueckertAATTsuse.de
- update to ruby-2.2.0-r47678
- drop buildroot patches! finally all upstream:
ruby2.2.x_rbinstall_gem_buildroot.patch
rubygems-1.5.0_buildroot.patch
Mon Sep 22 14:00:00 2014 mrueckertAATTsuse.de
- instead of touch for the files in /etc/alternatives. use the
symlink pointing to itself.
Fri Sep 19 14:00:00 2014 mrueckertAATTsuse.de
- conflict with our own ruby abi
Wed Sep 17 14:00:00 2014 mrueckertAATTsuse.de
- only provide the rdoc and ri symlink on newer than sle11
Wed Sep 17 14:00:00 2014 mrueckertAATTsuse.de
- BR: xz
Mon Sep 15 14:00:00 2014 mrueckertAATTsuse.de
- the ruby(abi) = $interpreter:$abiversion was not a good idea. rpm
treats the $interpreter part as epoch. instead we use now:
$interpreter(abi) = $abiversion
For MRI it means we are basically back to ruby(abi).
Examples for alternative ruby interpreters are rubinius(abi) and
jruby(abi) (bnc#896658)
Wed Sep 3 14:00:00 2014 mrueckertAATTsuse.de
- also in the awk generated provides we should add the
intererpreter part to the provides. also remove the old package
name based provides there.
Wed Sep 3 14:00:00 2014 mrueckertAATTsuse.de
- fix typo in macro
Wed Sep 3 14:00:00 2014 mrueckertAATTsuse.de
- update the ruby abi part in the macros
Wed Sep 3 14:00:00 2014 mrueckertAATTsuse.de
- use the new ruby abi syntax
Wed Jul 16 14:00:00 2014 mrueckertAATTsuse.de
- added ruby2.2.macros:
ruby 2.2 specific macros for the macro based expansion
- added ruby2.2-default.macros:
if ruby 2.2 is default this file will be installed and sets the
rb_default
* variables and rb_build_versions accordingly.
- no longer conflict with the other versioned ruby packages
Tue Jul 15 14:00:00 2014 mrueckertAATTsuse.de
- now we can configure the default ruby version in the project
config.
if the package\'s rb_soname matches the rb_default_ruby_suffix,
the package is default and we create the hardlinks for the
important binaries and the libruby.so symlink.
Tue Jul 15 14:00:00 2014 mrueckertAATTsuse.de
- require ruby-common already in the main package, not every
package we build requires ruby-devel
- update the rubygems provides to the actual version
Wed Jun 25 14:00:00 2014 mrueckertAATTsuse.de
- added ruby2.2.x_rbinstall_gem_buildroot.patch:
we need to pass the destdir to the Gem.install call inside the
ruby build process
Wed Jun 25 14:00:00 2014 mrueckertAATTsuse.de
- first snapshot of 2.2
Wed Jun 18 14:00:00 2014 mrueckertAATTsuse.de
- %ix86 architectures are x86 for rubygems
Wed Jun 18 14:00:00 2014 mrueckertAATTsuse.de
- also package the extensions documentation dir
Wed Jun 18 14:00:00 2014 mrueckertAATTsuse.de
- no longer share the rb_binary_suffix between the library usage
and the binary usage. for the library usage we have now
rb_soname.
- change rb_binary_suffix to .ruby2.1
Wed Jun 18 14:00:00 2014 mrueckertAATTsuse.de
- also provide libruby.so again:
too much broken code relies on the existence of it
Wed Jun 18 14:00:00 2014 mrueckertAATTsuse.de
- also package the extensions dir so we have an owner
Tue Jun 17 14:00:00 2014 mrueckertAATTsuse.de
- no longer provide the ruby macros
Sun Jun 15 14:00:00 2014 mrueckertAATTsuse.de
- remove ruby19-export_init_prelude.patch
Sun Jun 15 14:00:00 2014 mrueckertAATTsuse.de
- dont build ruby-common in here anymore
Fri May 16 14:00:00 2014 kkaempfAATTsuse.com
- Update to 2.1.2
- fix for a regression of Hash#reject in Ruby 2.1.1
- support for build with Readline-6.3 (see Bug #9578)
- updated bundled version of libyaml with psych
- some bug fixes.
Sun Mar 2 13:00:00 2014 kkaempfAATTsuse.com
- make api_version explicit in spec
- adapt versions of embedded gems
Fri Feb 28 13:00:00 2014 adrianAATTsuse.de
- use api version 2.1.0 again to avoid dependency breakages
Fri Feb 28 13:00:00 2014 kkaempfAATTsuse.com
- Update to 2.1.1
Speedup and bugfixes (upstream bug ids):
- rubygems 2.2.2 (#9489)
- fix segfault at unpacking modified String (#9478)
- Struct#send(:setter=, rhs) does not return rhs (#9470)
- Array#uniq behavior change (#9470)
- Timeout behavior change (#9470)
- Hash lookup with #hash and #eql broken (#9470)
- bigdecimal division issue (#9470)
- SizedQueue not working (#9470)
- BidDecimal division (#9316)
- fix \'gem install --ignore-dependencies\' for remote gems (#9282)
- Array#to_h should not ignore badly formed elements (#9270)
- Method#arity for keyword arguments (#8072)
Sat Feb 15 13:00:00 2014 kkaempfAATTsuse.com
- add internal.h to ruby-devel-extra
Mon Feb 10 13:00:00 2014 kkaempfAATTsuse.com
- Don\'t require rpm-with-ruby-provide-hook on SLE11.
It\'s not a runtime requirement but a build-time requirement for
rubygems in SLE11. Buildservice will take care of that.
Fri Feb 7 13:00:00 2014 cooloAATTsuse.com
- reintroduce update-alternatives for rake, rdoc and ri as those
can come from more uptodate gems
Sat Feb 1 13:00:00 2014 cooloAATTsuse.com
- readd old macros - for now at least
Fri Jan 31 13:00:00 2014 kkaempfAATTsuse.com
- generate provides for embedded rubygems
Thu Jan 30 13:00:00 2014 kkaempfAATTsuse.com
- merged ruby-common
Sun Jan 19 13:00:00 2014 kkaempfAATTsuse.com
- new package split - only single Ruby version installable
ruby - binary
libruby2_1-2_0 - ruby runtime library
ruby-stdlib - ruby standard library
ruby-doc - ruby documentation
ruby-devel - ruby development
Sun Jan 19 13:00:00 2014 kkaempfAATTsuse.com
- revert the ruby split (ruby - ruby21)
rename ruby21 to ruby, integrate \'ruby\' and \'ruby-common\'
Thu Jan 9 13:00:00 2014 jreidingerAATTsuse.com
- remove part of rubygems1.5 patch that modify mkmf which is
already fixed upstream
Wed Jan 8 13:00:00 2014 kkaempfAATTsuse.com
- fix rb_arch in spec: append -gnu
- fix native gem builds: create gem native extensions dir
Mon Jan 6 13:00:00 2014 cooloAATTsuse.com
- initial version for ruby 2.1.0 - changes to Ruby 2.0:
VM (method cache)
RGenGC (See ko1’s RubyKaigi presentation and RubyConf 2013 presentation)
refinements #8481 #8571
syntax changes
Rational/Complex Literal #8430
def’s return value #3753
Bignum
use GMP #8796
String#scrub #8414
Socket.getifaddrs #8368
RDoc 4.1.0 and RubyGems 2.2.0
“literal”.freeze is now optimized #9042
add Exception#cause #8257
update libraries like BigDecimal, JSON, NKF, Rake, RubyGems, and RDoc
remove curses #8584
- initial patches:
drop_content_size_check_in_xmlrpc.patch
ruby-1.9.2p290_tcl_no_stupid_rpaths.patch
ruby19-export_init_prelude.patch
rubygems-1.5.0_buildroot.patch