summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-03-31openssl: accept moving write buffer for write_nonblocknormal
By setting the SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER flag. This flag was introduced at the same time as SSL_MODE_ENABLE_PARTIAL_WRITE in OpenSSL 0.9.4 and makes usage with non-blocking sockets much easier. Before this, a Rubyist would need to remember the exact object which failed to write and reuse it later when the socket became writable again. This causes problems when the buffer is given by another layer of the application (e.g. a buffer is given by a Rack middleware or application to a Rack web server). * ext/openssl/ossl_ssl.c (ossl_sslctx_s_alloc): enable SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER by default [Bug #12126] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31* thread.c (update_coverage): Do not track coverage in loaded fileseregon
after Coverage.result. Avoids out-of-bounds access. [Bug #12237] * ext/coverage/coverage.c (coverage_clear_result_i): document. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31* tool/release.sh: two-digit version number support.usa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54461 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31* 2016-04-01svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31* tool/merger.rb (version): version number may be two-digit.usa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31gc.c: use PRIdSIZEnobu
* gc.c (heap_extend_pages): fix format specifiers for size_t. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31* gc.c: need to set initial value of GC_HEAP_FREE_SLOTS_GOAL_RATIO.ko1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31* gc.c: change additional allocation policy.ko1
Introduce new environement variable GC_HEAP_FREE_SLOTS_GOAL_RATIO (goal_ratio) to calculate the ratio of additional memory. Before this change, we add pages with the following formula (when free_slots < total_pages * RUBY_GC_HEAP_FREE_SLOTS_MIN_RATIO): next_pages = total_pages * RUBY_GC_HEAP_GROWTH_FACTOR This addition can allocate too much. With this change, we increase pages to satisfy the following formula: next_free_slots = next_total_slots * goal_ratio where next_free_slots = free_slots + adding_slots next_total_slots = total_slots + adding_slots. If you want to prepare many free slots, increase this ratio. If this variable is 0, then simply multiply RUBY_GC_HEAP_GROWTH_FACTOR. * gc.c (get_envparam_double): enable to accept 0. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31* gc.c (gc_marks_finish): fix syntax error.ko1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54452 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31* gc.c: simplify allocate/free detecting logic at the end of marking.ko1
Before this change, heap_pages_min_slots are calculated at the beggining sweeping phase. And this value is used at the end of *next* marking phase. To simplify it, we use this value at the end of this marking phase. It means that we don't need to store this value as global state. Also heap_pages_max_slots is calculated at the begging of sweeping phase and used at the end of sweeping phase. To simplify this logic, we introduced new global value heap_pages_freeable_pages it means extra pages count we can free. gc_sweep_step() checks this value and moves empty pages to tomb_heap not more than this value. Because of this fix, heap_pages_swept_slots is no longer needed. * gc.c (rb_objspace_t::heap_pages): restruct the objspace global status. remove the following fileds * swept_slots (and heap_pages_swept_slots) * min_free_slots (and heap_pages_min_free_slots) * max_free_slots (and heap_pages_max_free_slots) And add the following filed. * freeable_pages (and heap_pages_freeable_pages) * gc.c (heap_pages_free_unused_pages): unlink tomb heap pages because tomb heap should have only freeable pages. * gc.c (heap_extend_pages): add parameters for future extension. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31* gc.c: add GC parameters to configure the following values:ko1
* RUBY_GC_HEAP_FREE_SLOTS_MIN_RATIO: allocate additional pages when free slots is lower than the value (total_slots * (this ratio)). * RUBY_GC_HEAP_FREE_SLOTS_MAX_RATIO: allow to free pages when free slots is greater thatn the value (total_slots * (this ratio)). Before this change, these values are hard coded. * gc.c (ruby_gc_params_t): ditto. * gc.c (ruby_gc_set_params): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31* remove trailing spaces.svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31* gc.c (gc_verify_heap_page): check the number of zombies.ko1
* gc.c (gc_verify_heap_pages): check also tomb heap. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31* gc.c (gc_page_sweep): return free slots count.ko1
* gc.c (gc_sweep_step): use returned free slots count. * gc.c (gc_sweep_step): change variable name `next' to `next_sweep_page'. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54447 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31complex.c: pure declarationsnobu
* complex.c (get_dat1, get_dat2): turn into pure variable declarations only, not mixed code and declarations. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31date_core.c: fix indentnobu
* ext/date/date_core.c (d_lite_strftime, dt_lite_strftime): [DOC] fix indent not to be a big sole verbatim. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54445 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-31date_core.c: fix DateTime rdocnobu
* ext/date/date_core.c (Init_date_core): [DOC] fix misplaced doc of DateTime. [ruby-core:74729] [Bug #12233] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-30* 2016-03-31svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-30* ext/nkf/nkf-utf8/nkf.c: Merge upstream 69f7e74dde.naruse
fix indent. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-30parse.y: get rid of ISASCII on IDnobu
* parse.y (ripper_id2sym): do not call ISASCII() on ID, rb_isascii is restricted to int now. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-30st.c: fix collision statistics [ci skip]nobu
* st.c (stat_col): get rid of NaN. * st.c (collision_check): define before used. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-30hash.c: init table with sizenobu
* hash.c (rb_hash_s_create): allocate internal table with the given size. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-30extension*.rdoc: fix errors [ci skip]nobu
* 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. patch by Marcus Stollsteimer in [ruby-core:74690]. [Bug #12228] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-30rational.c: pure declarationsnobu
* rational.c (get_dat1, get_dat2): turn into pure variable declarations only, not mixed code and declarations. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-30* lib/open-uri.rb: Use `userinfo` for authenticated proxy.hsbt
[fix GH-1148] Patch by @SokichiFujita * test/open-uri/test_open-uri.rb: ditto. [fix GH-1309] Patch by @jdamick git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29* ext/nkf/nkf-utf8/nkf.c: Merge upstream 4f3edf80a0.naruse
patched by Anton Sivakov [Bug #12201] [Bug #12202] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29* 2016-03-30svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29* tool/redmine-backporter.rb: add given revision to current changestsnaruse
on associating the revision to the related ticket. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54421 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29* tool/merger.rb: update revision.h before merge.naruse
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54420 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29fix a typo [ci skip]kazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54400 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29* addr2line.c: define toupper for its use. fix r54391.naruse
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54392 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29* include/ruby/ruby.h (rb_isupper, rb_islower, rb_isalpha, rb_isdigit,naruse
rb_isalnum, rb_isxdigit, rb_isblank, rb_isspace, rb_isblank, rb_iscntrl, rb_isprint, rb_ispunct, rb_isgraph, rb_tolower, rb_toupper): use inline function to avoid function call. * include/ruby/ruby.h (rb_isascii): use inline function to clarify the logic. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29* tool/redmine-backporter.rb (backport): show merger.rb's path.naruse
* tool/redmine-backporter.rb (show): show current issue again if no ticket number is given. * tool/redmine-backporter.rb (rel): show error message if current bugs.ruby-lang.org doesn't support the API. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29* tool/merger.rb: support to backport header as backport identifier.naruse
Now you can specify by 'merge revision(s) 49254: [Backport #10738]'. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54389 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29* enc/unicode/case-folding.rb, casefold.h: Tweaked handling of 6duerst
special cases in CaseUnfold_11_Table. * enc/unicode.c: Adjustments for above. * test/ruby/enc/test_case_mapping.rb: Tests for the above: Some tests in test_titlecase activated; test_greek added. A test in test_cherokee fixed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29* enc/unicode.c: Cleaned up some comments.duerst
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29* enc/unicode/case-folding.rb, casefold.h: Removing data for idempotentduerst
titlecasing. * enc/unicode.c: Adjust code to data removal. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54347 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29* lib/webrick/httpresponse.rb: Move error_body to method. It allow tohsbt
override the body more easily. [fix GH-1307] * test/webrick/test_httpresponse.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-28remove rb_thread_t::base_blocknobu
* error.c (rb_compile_err_append): rb_thread_t::base_block is no longer used. * iseq.c (rb_iseq_compile_with_option): ditto, no protection is needed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-28* 2016-03-29svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54344 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-28remove rb_thread_t::parse_in_evalnobu
* parse.y (struct parser_params): move parse_in_eval flag from rb_thread_t. * parse.y (rb_parser_set_context): set parsing context, not only mild error flag. * iseq.c (rb_iseq_compile_with_option): the parser now refers no thread local states to be restored. * vm_eval.c (eval_string_with_cref): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54343 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-28* numeric.c (int_pos_p): fix typos.kazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54314 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-28* enc/unicode.c: Refactoring in preparation for data reduction forduerst
titlecase. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54313 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-28* enc/unicode.c: Minor refactoring for I WITH DOT ABOVE.duerst
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54312 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-28* enc/unicode.c: Removed code now covered by data from table.duerst
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-28* enc/unicode.c: Adding comments. [ci skip]duerst
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-28* lib/rubygems.rb: Fix `Gem.find_spec_for_exe` picks oldest gem.hsbt
https://github.com/travis-ci/travis-ci/issues/5798 https://github.com/rubygems/rubygems/pull/1566 * test/rubygems/test_gem.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54309 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-28* lib/rubygems.rb, lib/rubygems/*, test/rubygems/*: Update rubygems-2.6.2.hsbt
Please see entries of 2.6.2 on https://github.com/rubygems/rubygems/blob/master/History.txt git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-28* lib/rubygems/test_case.rb: Fix test on Windows for inconsistent temp path.hsbt
https://github.com/rubygems/rubygems/pull/1554 [Bug #12193][ruby-core:74431] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-27sprintf.c: refactor Rational fnobu
* sprintf.c (rb_str_format): refactor floating point format of Rational by using gereric Integer functions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e