summaryrefslogtreecommitdiff
path: root/ChangeLog
AgeCommit message (Collapse)Author
2016-09-16 * internal.h (WARN_UNUSED_RESULT): moved to configure.in, toshyouhei
actually check its availability rather to check GCC's version. * configure.in (WARN_UNUSED_RESULT): moved to here. * configure.in (RUBY_FUNC_ATTRIBUTE): change function declaration to return int rather than void, because it makes no sense for a warn_unused_result attributed function to return void. Funny thing however is that it also makes no sense for noreturn attributed function to return int. So there is a fundamental conflict between them. While I tested this, I confirmed both GCC 6 and Clang 3.8 prefers int over void to correctly detect necessary attributes under this setup. Maybe subject to change in future. * internal.h (UNINITIALIZED_VAR): renamed to MAYBE_UNUSED, then moved to configure.in for the same reason we move WARN_UNUSED_RESULT. * configure.in (MAYBE_UNUSED): moved to here. * internal.h (__has_attribute): deleted, because it has no use now. * string.c (rb_str_enumerate_lines): refactor macro rename. * string.c (rb_str_enumerate_bytes): ditto. * string.c (rb_str_enumerate_chars): ditto. * string.c (rb_str_enumerate_codepoints): ditto. * thread.c (do_select): ditto. * vm_backtrace.c (rb_debug_inspector_open): ditto. * vsnprintf.c (BSD_vfprintf): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-16 * ChangeLog (add-log-time-format): Not exactly sure when butshyouhei
recently (25.x maybe), emacs changed its API to take optional two arguments. We have to follow that. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56168 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-15Don't include bad password in URI exception outputtenderlove
We shouldn't include the bad password in the URI exception output message. Just knowing that there is a bad password is enough information. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56166 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-15* doc/extension.ja.rdoc: Fix file name. [ci skip]kazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-14* benchmark/: add vnmakarov's benchmarks around hash [ruby-core:75265]naruse
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56161 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-13* hash.c (each_pair_i_fast): use rb_yield_values2 to avoid var args.naruse
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56158 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-13string.c: avoid signed integer overflowrhe
The behavior on signed integer overflow is undefined. On platform with sizeof(long)==4, it's fairly easy that 'len + termlen' overflows, where len is the string length and termlen is the terminator length. So, prevent the integer overflow by avoiding adding to a string length, or casting to size_t before adding where the total size is passed to {RE,}ALLOC*(). * string.c (STR_HEAP_SIZE, RESIZE_CAPA_TERM, str_new0, rb_str_buf_new, str_shared_replace, rb_str_init, str_make_independent_expand, rb_str_resize): Avoid overflow by casting the length to size_t. size_t should be able to represent LONG_MAX+termlen. * string.c (rb_str_modify_expand): Check that the new length is in the range of long before resizing. Also refactor to use RESIZE_CAPA_TERM macro. * string.c (str_buf_cat): Fix so that it does not create a negative length String. Also fix the condition for 'string sizes too big', the total length can be up to LONG_MAX. * string.c (rb_str_plus): Check the resulting String length does not exceed LONG_MAX. * string.c (rb_str_dump): Fix integer overflow. The dump result will be longer then the original String. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56157 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-13Use PRIuSIZE format specifier for size_t valuesrhe
Use PRIuSIZE instead of PRIdSIZE. This fixes the exception message shown on too large xmalloc2. This commit also fixes other incorrect use of PRIdSIZE in other functions; though most of them are debug print. * gc.c (heap_extend_pages, get_envparam_size, ruby_malloc_size_overflow, gc_profile_dump_on): Use PRIuSIZE instead of PRIdSIZE as the passed value is size_t, not ssize_t. * iseq.c (get_line_info, rb_iseq_disasm_insn): Ditto. * sprintf.c (rb_str_format): Ditto. * thread_win32.c (native_thread_create): Ditto. * vm.c (get_param): Ditto. * ext/objspace/objspace_dump.c (dump_append_string_content, dump_object): Ditto. * ext/socket/raddrinfo.c (host_str, port_str): Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-13string.c: rename STR_EMBEDABLE_P to STR_EMBEDDABLE_Prhe
* string.c (STR_EMBEDDABLE_P): Renamed from STR_EMBEDABLE_P(). And use it in more places. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-13README{,.ja}.md: Drop support for BeOS now that Haiku is stable since 2.3.0. ↵kazu
[ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56154 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-13fix a typo [ci skip]kazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-13fix unbalanced backquote [ci skip]kazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-13string.c: STR_EMBEDABLE_Pnobu
* string.c (STR_EMBEDABLE_P): extract the predicate macro to tell if the given length is capable in an embedded string, and fix possible integer overflow. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-13* test/ruby/test_exception.rb: fix thread issues.ko1
* use Queue instead of a local variable for synchronization. * join created thread to soleve leaking threads warning. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56150 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-13string.c: fix buffer overflow check condition in rb_str_set_len()rhe
* string.c (rb_str_set_len): The buffer overflow check is wrong. The space for termlen is allocated outside the capacity returned by rb_str_capacity(). This fixes r41920 ("string.c: multi-byte terminator", 2013-07-11). [ruby-core:77257] [Bug #12757] * test/-ext-/string/test_set_len.rb (test_capacity_equals_to_new_size): Test for this change. Applying only the test will trigger [BUG]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56148 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-12* common.mk (benchmark): fix lib path.naruse
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56146 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-12Copy the serial number from the super class to the singleton classtenderlove
This helps hit inline method caches more frequently. Before this commit: ``` [aaron@TC ruby (trunk)]$ time ./ruby -v benchmark/bm_vm2_poly_singleton.rb ruby 2.4.0dev (2016-09-12 trunk 56141) [x86_64-darwin15] real 0m3.679s user 0m3.632s sys 0m0.022s ``` After this commit: ``` [aaron@TC ruby (trunk)]$ time ./ruby -v benchmark/bm_vm2_poly_singleton.rb ruby 2.4.0dev (2016-09-12 trunk 56141) [x86_64-darwin15] last_commit=Copy the serial number from the super class to the singleton class real 0m2.246s user 0m2.203s sys 0m0.020s ``` [Feature #12364] [ruby-core:75425] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56144 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-12Added missing references of github and redmine.hsbt
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-12* lib/uri/mailto.rb: Removed needless `return` and use `.`` instead of `::`hsbt
with class method. * test/uri/test_mailto.rb: Added tests for coverage. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-11NEWS: News about Module.used_modules.kazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-11fix a typo [ci skip]kazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56137 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-11* ChangeLog: added refs. [Bug #12748] [ruby-dev:49786]usa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-11* win32/win32.c (rb_w32_write_console): should set writen length as theusa
return value. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56132 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-09* gems/bundled_gems: sort lines.kazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56127 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-09thread.c: set cause by Thread#raisenobu
* thread.c (rb_threadptr_raise): set cause from the called thread, but not from the thread to be interrupted. [ruby-core:77222] [Bug #12741] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-09fix file names [ci skip]nobu
* doc/extension.rdoc, doc/extension.ja.rdoc: fix file name. pointed out by @takkanm in the RubyKaigi talk. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56124 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-09* News: Announcing update to Unicode version 9.0.0 [ci skip]duerst
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56123 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-09variable.c: fix deprecated constant messagenobu
* variable.c (rb_const_search): warn with the actual class/module name which defines the deprecated constant. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56118 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-09variable.c: fix private constant messagenobu
* variable.c (rb_const_search): raise with the actual class/module name which defines the private constant. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-08* array.c (flatten): use rb_obj_class instead of rb_class_ofktsj
because rb_class_of may return a singleton class. [ruby-dev:49781] [Bug #12738] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-08rbinstall.rb: gem bindirnobu
* tool/rbinstall.rb (gem): use the bindir of each gemspec instead of hardcoded 'bin', since rdoc 5.0.0 overrides it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-08* eval.c (rb_mod_s_used_modules): rename Module.used_refinements toshugo
Module.used_modules. [Feature #7418] [ruby-core:49805] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56109 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-08* ext/psych/psych.gemspec, lib/rdoc/rdoc.gemspec: Use file list instead ofhsbt
git output. It shows warning message when invoke `make install` [Bug #12736][ruby-dev:49778] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56104 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-08* insns.def (setclassvariable, setconstant): warn when self is ashugo
refinement. [Bug #10103] [ruby-core:64143] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-08hash.c: map_v -> transform_valuesmrkn
* hash.c (rb_hash_transform_values, rb_hash_transform_values_bang): Rename map_v to transform_values. [Feature #12512] [ruby-core:76095] * test/ruby/test_hash.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-08openssl: import v2.0.0.beta.2rhe
* {ext,test}/openssl: Import Ruby/OpenSSL 2.0.0.beta.2. The full commit history since v2.0.0.beta.1 can be found at: https://github.com/ruby/openssl/compare/v2.0.0.beta.1...v2.0.0.beta.2 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56098 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-07* lib/rdoc/*, test/rdoc/*: Update rdoc-5.0.0.beta2hsbt
Fixed ri parse defect with left-hand matched classes. https://github.com/rdoc/rdoc/pull/420 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56097 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-07* eval.c (rb_mod_s_used_refinements): new methodshugo
Module.used_refinements. based on the patch by Charlie Somerville. [Feature #7418] [ruby-core:49805] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56094 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-07util.h: POSIX-noncompliant setenvnobu
* include/ruby/util.h (setenv): remove POSIX-noncompliant definition with 2 arguments. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56091 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-07* unicode/8.0.0/casefold.h, name2ctype.h, unicode/data/8.0.0:duerst
removing directories/files related to Unicode version 8.0.0 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-07timeout.rb: custom error messagenobu
* lib/timeout.rb (Timeout#timeout): add custom error message argument. [Feature #11650] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-07* common.mk: Updated Unicode version to 9.0.0 [Feature #12513]duerst
* unicode/9.0.0/casefold.h, name2ctype.h, unicode/data/9.0.0: new directories/files for Unicode version 9.0.0 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-07lib/open-uri.rb: Allow http to https redirection.akr
* lib/open-uri.rb: Allow http to https redirection. Note that https to http is still forbidden. [ruby-core:20485] [Feature #859] by Roman Shterenzon. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-07* ChangeLog: fix ticket number.ktsj
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-07* lib/csv.rb (CSV::{Row,Table}#{each,delete_if}): returns an enumeratorktsj
if no block is given. [ruby-core:75346] [Feature #11058] * test/csv/test_row.rb: add test for above. * test/csv/test_table.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-07* gems/bundled_gems: update to power_assert 0.3.1.ktsj
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-07* ext/psych/*, test/psych/*: Update psych-2.1.1hsbt
This version fixed following pull requests. https://github.com/tenderlove/psych/pull/284 https://github.com/tenderlove/psych/pull/276 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56081 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-07* lib/rdoc/*, test/rdoc/*: Update rdoc-5.0.0.beta1hsbt
This version is mostly same as r56072. It contains to remove code for Ruby 1.8 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56079 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-06* lib/rdoc/rdoc.gemspec: partly reverted for default gem installer.hsbt
upstream configuration is not working on ruby core repository. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56074 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-05* lib/rdoc/*, test/rdoc/*: Update rdoc/rdoc master(f191513)hsbt
https://github.com/rdoc/rdoc/blob/master/History.rdoc#423--2016-- https://github.com/rdoc/rdoc/blob/master/History.rdoc#422--2016-02-09 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e