summaryrefslogtreecommitdiff
path: root/ext
AgeCommit message (Collapse)Author
2019-08-04Suppress warnings of bundled libyaml.Hiroshi SHIBATA
2019-08-04yaml few build warning fixesDavid Carlier
Closes: https://github.com/ruby/ruby/pull/2283
2019-08-04Remove dependency on `openssl/conf_api.h`Dmitry Petrashko
None of the functions defined in this header are actually used in Ruby. Fixes build against boringssl that does not have this file. Closes: https://github.com/ruby/ruby/pull/2210
2019-08-01ext/-test-/bug-14834/bug-14384.c: fallback for MAYBE_UNUSEDYusuke Endoh
__unused__ is unavailable on Sun C. https://rubyci.org/logs/rubyci.s3.amazonaws.com/solaris11s-sunc/ruby-master/log/20190801T112505Z.fail.html.gz
2019-08-01fix VC 2013 compile error卜部昌平
It seems the compiler does not support VLAs. See also: https://ci.appveyor.com/project/ruby/ruby/builds/26392589/job/px6nuiuw4e78weg1
2019-08-01fix tracepoint + backtrace SEGV卜部昌平
PC modification in gc_event_hook_body was careless. There are (so to say) abnormal iseqs stored in the cfp. We have to check sanity before we touch the PC. This has not been fixed because there was no way to (ab)use the setup from pure-Ruby. However by using our official C APIs it is possible to touch such frame(s), resulting in SEGV. Fixes [Bug #14834].
2019-07-31* expand tabs.git
2019-07-31Use 1 byte hint for ar_table [Feature #15602]Koichi Sasada
On ar_table, Do not keep a full-length hash value (FLHV, 8 bytes) but keep a 1 byte hint from a FLHV (lowest byte of FLHV). An ar_table only contains at least 8 entries, so hints consumes 8 bytes at most. We can store hints in RHash::ar_hint. On 32bit CPU, we use 4 entries ar_table. The advantages: * We don't need to keep FLHV so ar_table only consumes 16 bytes (VALUEs of key and value) * 8 entries = 128 bytes. * We don't need to scan ar_table, but only need to check hints in many cases. Especially we don't need to access ar_table if there is no match entries (in many cases). It will increase memory cache locality. The disadvantages: * This technique can increase `#eql?` time because hints can conflicts (in theory, it conflicts once in 256 times). It can introduce incompatibility if there is a object x where x.eql? returns true even if hash values are different. I believe we don't need to care such irregular case. * We need to re-calculate FLHV if we need to switch from ar_table to st_table (e.g. exceeds 8 entries). It also can introduce incompatibility, on mutating key objects. I believe we don't need to care such irregular case too. Add new debug counters to measure the performance: * artable_hint_hit - hint is matched and eql?#=>true * artable_hint_miss - hint is not matched but eql?#=>false * artable_hint_notfound - lookup counts
2019-07-25[ruby/io-console] Do not use add_development_dependencyNobuyoshi Nakada
https://github.com/ruby/io-console/commit/bc77f46391
2019-07-25[ruby/psych] Get rid of C90 featureNobuyoshi Nakada
For ruby 2.6 and earlier. https://travis-ci.org/ruby/psych/jobs/562435717#L245-L248 ``` ../../../../ext/psych/psych_parser.c: In function ‘make_exception’: ../../../../ext/psych/psych_parser.c:87:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] VALUE ePsychSyntaxError = rb_const_get(mPsych, rb_intern("SyntaxError")); ^ ``` https://github.com/ruby/psych/commit/aa457443b8
2019-07-25[ruby/psych] Deduplicate hash keys if they're stringsJean Boussier
https://github.com/ruby/psych/commit/0414982ffd
2019-07-25[ruby/psych] Drop to support fat gem support.Hiroshi SHIBATA
ref. https://github.com/ruby/bigdecimal/pull/149 https://github.com/ruby/psych/commit/25ae263252
2019-07-25[ruby/psych] Do not use add_development_dependency.Hiroshi SHIBATA
https://github.com/ruby/psych/commit/939754237f
2019-07-22[ruby/date] Describe what is meant by valid in the Date.valid_date? rdocJeremy Evans
https://github.com/ruby/date/commit/8eca79d1f0
2019-07-16Constified afamily functionsNobuyoshi Nakada
2019-07-16Allow mday in Date.iso8601 to be omittedNobuyoshi Nakada
[Bug #12285]
2019-07-15catch up e8ddbc0239.Koichi Sasada
2019-07-15ext/stringio/stringio.c (strio_read): "binray" is always zero hereYusuke Endoh
Remove unused conditional expression to suppress Coverity Scan warnings.
2019-07-14Add a /* fall through */ commentYusuke Endoh
2019-07-14socket: use frozen string buffer when releasing GVLTanaka Akira
Thanks for the patch by normalperson (Eric Wong) [Bug #14204].
2019-07-14Include ruby/assert.h in ruby/ruby.h so that assertions can be thereNobuyoshi Nakada
2019-07-14Split RUBY_ASSERT and so on under include/rubyNobuyoshi Nakada
2019-07-14Delegates 3 arguments for Pathname.glob.Tanaka Akira
Thanks for the patch by pocke (Masataka Kuwabara) [Feature #14405].
2019-07-14Added depend filesNobuyoshi Nakada
2019-07-13Removed useless `freeze`s from gemspec filesNobuyoshi Nakada
2019-07-13Drop fossil rubygems supportNobuyoshi Nakada
2019-07-13Removed stub lines from gemspec filesNobuyoshi Nakada
2019-07-13Removed binary lineNobuyoshi Nakada
2019-07-11Default to true when no exception flag [Bug #15987]Nobuyoshi Nakada
2019-07-11Fixed argument in the fallback function [Bug #15987]Nobuyoshi Nakada
2019-07-11Removed wrong argument in the fallback function [Bug #15987]Nobuyoshi Nakada
2019-07-11Check exception flag as a bool [Bug #15987]Nobuyoshi Nakada
2019-07-10Added Etc::VERSIONNobuyoshi Nakada
2019-07-10Removed unused filesNobuyoshi Nakada
2019-07-10C90 for old versionsNobuyoshi Nakada
2019-07-10Use the found version numberNobuyoshi Nakada
2019-07-10Removed useless `freeze`sNobuyoshi Nakada
2019-07-10Added StringIO::VERSIONNobuyoshi Nakada
2019-07-09Update dependenciesNobuyoshi Nakada
2019-07-09Suppress uninitialized instance variable warningsNobuyoshi Nakada
2019-07-08Let struct dump_config in objspace fit in a single cache lineLourens Naudé
Let dump_config boolean members roots and full_heap be bit flags instead Closes: https://github.com/ruby/ruby/pull/2274
2019-07-03* expand tabs.git
2019-07-03Use rb_ident_hash_new instead of rb_hash_new_compare_by_idNobuyoshi Nakada
The latter is same as the former, removed the duplicate function.
2019-07-01Fixed inadvertent ID creation in rb_iv_getNobuyoshi Nakada
2019-06-27Show the parser states in pretty_print tooNobuyoshi Nakada
2019-06-25Do not allocate a string to check if a scalar is an integerJean Boussier
2019-06-25Remove string_cache in ScalarScannerJean Boussier
2019-06-25Reduce string allocations in scalar_scannerJean Boussier
2019-06-25Removed CHANGELOG from rdoc files.SHIBATA Hiroshi
2019-06-25Retired to write CHANGELOG.rdoc. Because It has no update from 2015.SHIBATA Hiroshi