summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-02-24* 2021-02-24 [ci skip]git
2021-02-24Revert "Enclose crtitical sections in `thread_exclusive` block"Nobuyoshi Nakada
19cc24b34b0490b7c2779eec521fe0089e05f183 and fixups.
2021-02-23Use the system getenv in setup_debug_logNobuyoshi Nakada
As ruby_set_debug_option() is called before ruby_sysinit(), CRITICAL_SECTIONs are not initialized yet.
2021-02-23Fixed commit miss at 41eb4fbf86e7ae9c9ff993e07a19fa44eb74be9bNobuyoshi Nakada
2021-02-23Make uenvarea thread exclusiveNobuyoshi Nakada
2021-02-23Fixed commit miss at 19cc24b34b0490b7c2779eec521fe0089e05f183Nobuyoshi Nakada
2021-02-23Constified possible dataNobuyoshi Nakada
2021-02-23Enclose crtitical sections in `thread_exclusive` blockNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/4214
2021-02-22Drop obsoleted ci skip checksTakashi Kokubun
https://github.blog/changelog/2021-02-08-github-actions-skip-pull-request-and-push-workflows-with-skip-ci/
2021-02-22Drop check_branch CI jobTakashi Kokubun
Now that GitHub Actions always skips any job if [ci skip] is given regardless of our CI config, we cannot merge such PRs like https://github.com/ruby/ruby/pull/4211 unless you're an admin. https://github.blog/changelog/2021-02-08-github-actions-skip-pull-request-and-push-workflows-with-skip-ci/ To avoid letting us spend time to ask contributors to remove [ci skip] before merging PRs, I removed the "check_branch" requirement from protected branches. Because the main purpose of this job was to prevent (non-admin) committers from directly pushing commits to the GitHub mirror, this job is now useless.
2021-02-23added mutexes for socket and connection lists on win32Andrew Aladjev
Notes: Merged: https://github.com/ruby/ruby/pull/4212
2021-02-23[DOC] Fix copy+paste mistake [ci skip]Lars Kanis
It was introduced in commit 089b7a84606925e885fe91050483a352735aa91e . Notes: Merged: https://github.com/ruby/ruby/pull/4211
2021-02-23* 2021-02-23 [ci skip]git
2021-02-22Check for cyclic prepend before making originAlan Wu
It's important to only make the origin when the prepend goes through, as the precense of the origin informs whether to do an origin backfill. This plus 2d877327e fix [Bug #17590]. Notes: Merged: https://github.com/ruby/ruby/pull/4181
2021-02-22Expand final path name buffer for namespace prefixNobuyoshi Nakada
As final path name includes the namespace prefix, so expand room for it in path name buffer. Notes: Merged: https://github.com/ruby/ruby/pull/4210
2021-02-22Search subclasses from constantsNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/4209
2021-02-22[ruby/reline] fix Reline::Windows.getconsolemode buffercremno
use double quotes to properly convert the \000 escape sequence. https://github.com/ruby/reline/commit/236dfe5683
2021-02-22Improve extension docs, remove deprecated rb_cData [ci skip]Lars Kanis
rb_cData is deprecated and the characteristic alloc_func was already removed in ruby-3.0. So this updates the recommendation accordingly. It also adds fdbm_alloc() in order to show the allocation process and to gives TypedData_Make_Struct() more context. Moreover it describes fdbm_aref(), so that the relation to rb_define_method() is shown. And fdbm_aref() makes use of GetDBM() now, to show how this macro might be used. Notes: Merged: https://github.com/ruby/ruby/pull/4208 Merged-By: nobu <nobu@ruby-lang.org>
2021-02-22* 2021-02-22 [ci skip]git
2021-02-22Send :fiber_switch event for almost every fiber_switch (#4207)nicholas a. evans
With this patch, TracePoint receives a `:fiber_switch` event for _almost_ every fiber switch. Previously, it would not be sent when an exception was going to be raised. Now the event should only be blockable by an interrupt (including `Thread#raise`) or a fatal error. Additionally, interrupts will now be checked on the return fiber _before_ re-raising the terminating unhandled exception. And a fiber that terminates with an unhandled exception no longer creates a pending interrupt on its thread. The exception will be raised in the return fiber the same way as `Fiber#raise`: using `cont.value` with `cont.argc == -1` I moved `rb_exc_raise` from `fiber_store` to the end of `fiber_switch` after _all_ of the other cleanup code: `fiber_stack_release`, `th->blocking` increment, `RUBY_VM_CHECK_INTS`, and `EXEC_EVENT_HOOK`. It seems to me that skipping those other cleanup steps may have also resulted in other bugs. Notes: Merged-By: ioquatix <samuel@codeotaku.com>
2021-02-21[ruby/reline] Use UTF-8 only for width calc, rest uses original encodingaycabta
I confirmed that libvterm supports only which are UTF-8, US ASCII, UK, and DEC graphics by reading source code, so can't test this patch by yamatanoorogi gem through vterm gem for now. This fixes ruby/irb#190. https://github.com/ruby/reline/commit/44596c0cc7
2021-02-21[ruby/reline] check ENABLE_VIRTUAL_TERMINAL_PROCESSING flag and switch eof ↵Yoshinao Muramatu
processing https://github.com/ruby/reline/commit/3535676689
2021-02-21[ruby/reline] We still need support new and legacy behavior.Yoshinao Muramatu
Revert "Support for change in Windows-specific behavior at eol" This reverts commit cad4de6ee841b43f3f0e441626f9415c3eda0f82. https://github.com/ruby/reline/commit/646587fc2c
2021-02-21[ruby/reline] Add a test for suppressing crash when dynamic prompt returns emptyaycabta
ref. https://github.com/ruby/reline/pull/262 https://github.com/ruby/reline/commit/b98bc3c329
2021-02-21[ruby/reline] Move script files for yamatanooroti testsaycabta
https://github.com/ruby/reline/commit/03031b885d
2021-02-21[ruby/reline] Avoid tripping over nil promptEamonn Webster
https://github.com/ruby/reline/commit/d4d9d3e3d4
2021-02-21[ruby/reline] Return 1 when char width not foundaycabta
This fixes ruby/reline#261. https://github.com/ruby/reline/commit/3cf1213014
2021-02-21* 2021-02-21 [ci skip]git
2021-02-20MSys is a variant of CygwinNobuyoshi Nakada
2021-02-20[Win32] Fixed preprocessed file pathNobuyoshi Nakada
Output preprocessed files under the corresponding directory to the source files.
2021-02-20Make String#{strip,lstrip}{,!} strip leading NUL bytesJeremy Evans
The documentation already specifies that they strip whitespace and defines whitespace to include null. This wraps the new behavior in the appropriate guards in the specs, but does not specify behavior for previous versions, because this is a bug that could be backported. Fixes [Bug #17467] Notes: Merged: https://github.com/ruby/ruby/pull/4164
2021-02-19Improve performance some Numeric methods [Feature #17632] (#4190)S.H
Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2021-02-19Fix link msdn.microsoft.com (#4202)S.H
Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2021-02-19Remove mentions of Bignum in time.cJeremy Evans
Move section on internal details out of the class-level documentation, since users do not need to know that. Update it to use Integer(T_BIGNUM) instead of Bignum. Fixes [Misc #17580]
2021-02-19Fix backtrace to not skip frames with iseq without pcJeremy Evans
Previously, frames with iseq but no pc were skipped (even before the refactoring in 3b24b7914c16930bfadc89d6aff6326a51c54295). Because the entire backtrace was procesed before the refactoring, this was handled by using later frames instead. However, after the refactoring, we need to handle those frames or they get lost. Keep two iteration counters when iterating, one for the desired backtrace size (so we generate the desired number of frames), and one for the actual backtrace size (so we don't process off the end of the stack). When skipping over an iseq frame with no pc, decrement the counter for the desired backtrace, so it will continue to process the expected number of backtrace frames. Fixes [Bug #17581] Notes: Merged: https://github.com/ruby/ruby/pull/4120
2021-02-20* 2021-02-20 [ci skip]git
2021-02-20Fixed fallback ENABLE_VIRTUAL_TERMINAL_PROCESSING value [Bug #17639]YO4 (Yoshinao Muramatsu)
2021-02-19Fix typo [ci skip]Shugo Maeda
2021-02-19invalidate negative cache any time.Koichi Sasada
negative cache on a class which does not have subclasses was not invalidated, but it should be invalidated because other classes can cache this negative cache. [Bug #17553] Notes: Merged: https://github.com/ruby/ruby/pull/4201
2021-02-19show more information about imemo_mentKoichi Sasada
rb_obj_info(obj) (rp(obj)) doesn't show enough information for non-iseq methods, so this patch shows more. Notes: Merged: https://github.com/ruby/ruby/pull/4201
2021-02-19* 2021-02-19 [ci skip]git
2021-02-19ripper: fix a bug of Ripper::Lexer with syntax error and heredoc [Bug #17644]Shugo Maeda
2021-02-18Ractor.allocate should not be allowedKoichi Sasada
Ractor.allocate and Ractor#dup should not be allowed like Thread. [Bug #17642] Notes: Merged: https://github.com/ruby/ruby/pull/4198
2021-02-18[ruby/readline-ext] Initialize libedit before managing the historyNobuyoshi Nakada
Fixes https://bugs.ruby-lang.org/issues/17629 https://github.com/ruby/readline-ext/commit/250d6787ed
2021-02-18[ruby/readline-ext] Use omitNobuyoshi Nakada
https://github.com/ruby/readline-ext/commit/f6dff0a9f6
2021-02-18sync check_rvalue_consistency_force()Koichi Sasada
check_rvalue_consistency_force() uses is_pointer_to_heap() and it should be synchronized with other ractors. [Bug #17636] Notes: Merged: https://github.com/ruby/ruby/pull/4194
2021-02-18clear RVALUE on NEWOBJ event.Koichi Sasada
NEWOBJ event is called without clearing RVALUE values (v1, v2, v3). This patch clear them before NEWOBJ tracepoint internal hook. [Bug #17599] Notes: Merged: https://github.com/ruby/ruby/pull/4196
2021-02-18Update bundled_gemsNobuyoshi Nakada
2021-02-18* 2021-02-18 [ci skip]git
2021-02-18sync GC rest if neededKoichi Sasada
marking requires a barrier (stop all Ractors) and gc_enter() does it. However, it doesn't check rest event which can start marking. [Bug #17599] Notes: Merged: https://github.com/ruby/ruby/pull/4195