summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Fix for windres 2.36 [Bug #17602]Nobuyoshi Nakada2021-02-011-1/+4
| | | | | | Add --preprocessor and --preprocessor-arg for each preprocessor command arguments, as windres 2.36 requires preprocessor name and arguments to be separated to respect spaces in these paths.
* Add File.absolute_path? to NEWS-2.7.0 [ci skip]Masataka Pocke Kuwabara2021-02-011-0/+9
| | | | | | | | `File.absolute_path?` has been added since Ruby 2.7.0, but it isn't mentioned in the NEWS. So this patch adds a NEWS entry. ref: https://bugs.ruby-lang.org/issues/15868 Co-authored-by: nagachika <nagachika@ruby-lang.org>
* * 2021-02-01 [ci skip]git2021-02-011-2/+2
|
* Fixed varargs in `rb_bug_without_die` [Bug #17603]xtkoba (Tee KOBAYASHI)2021-02-011-2/+2
|
* Split `mnew` into unbound and callableNobuyoshi Nakada2021-01-311-10/+16
| | | | | | It always branches by `obj` is `Qundef` or not, which is invariant for each functions; `obj_method` is the latter, and the other two are the former.
* Removed static assertion about size of `RVALUE`Nobuyoshi Nakada2021-01-311-2/+0
| | | | | It is unable where unaligned word access is disallowed and `double` is wider than pointers.
* MSys is a variant of CygwinNobuyoshi Nakada2021-01-311-13/+14
|
* Narrowed down the condition to pack RValueNobuyoshi Nakada2021-01-311-3/+5
| | | | | | Because of `double` in `RFloat`, `RValue` would be packed by `sizeof(double)` by default, on platforms where `double` is wider than `VALUE`. Size of `RValue` is multiple of 5 now.
* Update bundled_gemsNobuyoshi Nakada2021-01-311-1/+1
|
* vm_dump: dump registers for Mac M1David CARLIER2021-01-311-1/+23
|
* Update TypeProf to 0.12.0 (#4132)Yusuke Endoh2021-01-311-1/+1
|
* Move rb_big_isqrt declarationS-H-GAMELINKS2021-01-312-2/+1
|
* * 2021-01-31 [ci skip]git2021-01-311-1/+1
|
* Bundle RBS 1.0.4 (#4136)Soutaro Matsumoto2021-01-311-1/+1
|
* * 2021-01-30 [ci skip]git2021-01-301-1/+1
|
* Constified pointers in str_casecmpNobuyoshi Nakada2021-01-301-1/+1
|
* refactoring rb_method_call_status()Koichi Sasada2021-01-291-29/+26
|
* global call-cache cache table for rb_funcall*Koichi Sasada2021-01-297-90/+255
| | | | | | | | | | | | | | | | | | | | | | | | | rb_funcall* (rb_funcall(), rb_funcallv(), ...) functions invokes Ruby's method with given receiver. Ruby 2.7 introduced inline method cache with static memory area. However, Ruby 3.0 reimplemented the method cache data structures and the inline cache was removed. Without inline cache, rb_funcall* searched methods everytime. Most of cases per-Class Method Cache (pCMC) will be helped but pCMC requires VM-wide locking and it hurts performance on multi-Ractor execution, especially all Ractors calls methods with rb_funcall*. This patch introduced Global Call-Cache Cache Table (gccct) for rb_funcall*. Call-Cache was introduced from Ruby 3.0 to manage method cache entry atomically and gccct enables method-caching without VM-wide locking. This table solves the performance issue on multi-ractor execution. [Bug #17497] Ruby-level method invocation does not use gccct because it has inline-method-cache and the table size is limited. Basically rb_funcall* is not used frequently, so 1023 entries can be enough. We will revisit the table size if it is not enough.
* Forward keyword arguments for Pathname#each_line [Bug #17589]Nobuyoshi Nakada2021-01-292-2/+28
|
* Fix failure when build in srcdir/buildKazuhiro NISHIYAMA2021-01-291-0/+1
| | | | | If `build` directory exists, `rake build` is `Rake::FileTask`. So skip if exists.
* Fixed Kernel#rand specNobuyoshi Nakada2021-01-291-10/+10
| | | | Float should not be compared by identity.
* Fix absolute path predicate on WindowsNobuyoshi Nakada2021-01-291-1/+24
| | | | | A path starts with '/' is not an absolute path on Windows, because of drive letter or UNC.
* * 2021-01-29 [ci skip]git2021-01-291-1/+1
|
* Update to ruby/spec@8cafaa5Benoit Daloze2021-01-2835-10/+832
|
* Add fallback when PWD is not setKazuhiro NISHIYAMA2021-01-281-2/+6
|
* Use PWD instead of source_rootKazuhiro NISHIYAMA2021-01-281-1/+2
| | | | | Because `.ext/common` is not relative from top source directory. Fix failures with out-of-place build directory.
* Remove require_path from $LOADED_FEATURESKazuhiro NISHIYAMA2021-01-281-0/+1
| | | | because some features are already loaded.
* Delete path including `/../` tooKazuhiro NISHIYAMA2021-01-281-1/+4
|
* * 2021-01-28 [ci skip]git2021-01-281-1/+1
|
* [Fixes #17538] Fix assertion failure when rincgc is turned offPeter Zhu2021-01-271-2/+3
| | | | Co-Authored-By: Matt Valentine-House <31869+eightbitraptor@users.noreply.github.com>
* In test, need to pass a context to IRB::WorkSpace.new explicitlyaycabta2021-01-271-2/+2
|
* [ruby/irb] specify the `VERBOSE` to `false` and fix tests to fitNobuhiro IMAI2021-01-271-8/+6
| | | | https://github.com/ruby/irb/commit/502c590925
* [ruby/irb] use `RubyLex::TerminateLineInput` appropriately [Bug #17564]Nobuhiro IMAI2021-01-273-2/+56
| | | | | | | | * using the appropriciate exception instead of `break` so that the session can be continue after the `irb_source` and `irb_load` commands * suppress extra new line due to one more `#prompt` call https://github.com/ruby/irb/commit/bdefaa7cfd
* [ruby/irb] add `IRB::FileInputMethod.open` to ensure closing associated FileNobuhiro IMAI2021-01-272-20/+40
| | | | | | | * tweak some methods not to raise exception after `#close` * use it in `IRB::IrbLoader#{source_file,load_file} https://github.com/ruby/irb/commit/ec2947acbd
* Clear unexpanded `mjit_std_cflag`Nobuyoshi Nakada2021-01-271-3/+3
|
* Disable fast-mathNobuyoshi Nakada2021-01-271-1/+1
| | | | | As `RUBY_TRY_CFLAGS` restores `CFLAGS`, appending to the variable in its block has no effect.
* Taint flags has been deprecated in 3.1Nobuyoshi Nakada2021-01-274-2/+17
|
* Update include/ruby/internal/fl_type.h 卜部昌平2021-01-271-1/+1
| | | | | https://github.com/ruby/ruby/pull/4100#pullrequestreview-576059827 Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/internal/fl_type.h: refactor hoist out #if conditions卜部昌平2021-01-271-9/+11
| | | | cf: https://github.com/ruby/ruby/pull/4100#pullrequestreview-575952836
* kill CLONESETUP and DUPSETUP卜部昌平2021-01-273-14/+35
| | | | | | | | They are no longer how Object#clone/Object#dup are defined. In fact DUPSETUP is not used from anywhere. CLONESETUP has only one usage. Let's not expose them to extension libraries. cf https://github.com/ruby/ruby/pull/4100#discussion_r563481718
* win32/win32.c:getcwd_value: delete OBJ_TAINT卜部昌平2021-01-271-1/+0
| | | | Makes no sense any longer.
* win32/file.c:rb_file_expand_path_internal: delete OBJ_TAINT卜部昌平2021-01-271-24/+0
| | | | Makes no sense any longer.
* attributes on enumerators are GCC6-ism卜部昌平2021-01-271-0/+18
| | | | | | | | | See also https://gcc.gnu.org/gcc-6/changes.html Clang has this feature when __has_extension(enumerator_attributes) is set. MSVC has #pragma deprecated instead.
* warnings on use of RUBY_FL_TAINT卜部昌平2021-01-271-2/+14
| | | | | | | | matz said in [ruby-core:94979]: > 3.0: > * taint/trust/untaint/untrust non-verbose warning when called This is it, for C extensions.
* kill OBJ_TAINT etc.卜部昌平2021-01-272-27/+9
| | | | | | | | | Now that RUBY_FL_TAINT is recycled to become new RUBY_FL_SHAREABLE. Setting/clearing this flag from extension libraries break Ractor. Especially problematic one is OBJ_INFECT, which would make non-shareable objects travel across Ractor boundaries. Such operations should just be prohibited.
* fix OBJ_UNTRUST etc.卜部昌平2021-01-271-2/+2
| | | | | It seems I broke them in commit 9e6e39c3512f7a962c44dc3729c98a0f8be90341 Sorry!
* Add compaction notes for class/module creation C APIsAlan Wu2021-01-262-0/+12
|
* Make rb_define_module_id_under() pin existing modulesAlan Wu2021-01-261-0/+2
| | | | | | Just like rb_define_class_id_under(). Also makes rb_define_module_under() consistent with rb_define_class_under() in the same regard.
* Fix broken link in RDoc for String (#4123)Burdette Lamar2021-01-261-1/+1
| | | Link was correct; its target was incorrect; now fixed.
* Re-enable RGENGC_DEBUG for platforms with HAVE_VA_ARGS_MACROMatt Valentine-House2021-01-261-0/+2
| | | | | | | | after this commit turned it off globally. 888cf28a7e3a07fc0a41688777a40910654005ad Co-authored-by: peterzhu2118 <peter@peterzhu.ca>