Commit graph

82283 commits

Author SHA1 Message Date
Nobuyoshi Nakada
12e78fbfcd [ruby/etc] [DOC] Missing constant
a39e982129
2023-12-25 21:12:49 +09:00
Mark Young
1e1da75031 [ruby/timeout] Provide a 'Changelog' link on rubygems.org/gems/timeout
By providing a 'changelog_uri' in the metadata of the gemspec
a 'Changelog' link will be shown on https://rubygems.org/gems/timeout
which makes it quick and easy for someone to check on the changes
introduced with a new version.

Details of this functionality can be found on https://guides.rubygems.org/specification-reference/

47a6f0313b
2023-12-25 21:12:49 +09:00
Nobuyoshi Nakada
bb6cf76362 [ruby/timeout] [DOC] Missing documents
301ad4cfdc
2023-12-25 21:12:49 +09:00
Mark Young
24e0f6fcab [ruby/net-protocol] Provide a 'Changelog' link on rubygems.org/gems/net-protocol
By providing a 'changelog_uri' in the metadata of the gemspec
a 'Changelog' link will be shown on https://rubygems.org/gems/net-protocol
which makes it quick and easy for someone to check on the changes
introduced with a new version.

Details of this functionality can be found on https://guides.rubygems.org/specification-reference/

46e78a2a0a
2023-12-25 21:12:49 +09:00
Mark Young
da06c09725 [ruby/base64] Provide a 'Changelog' link on rubygems.org/gems/base64
By providing a 'changelog_uri' in the metadata of the gemspec
a 'Changelog' link will be shown on https://rubygems.org/gems/base64
which makes it quick and easy for someone to check on the changes
introduced with a new version.

Details of this functionality can be found on https://guides.rubygems.org/specification-reference/

7cab043d67
2023-12-25 21:12:49 +09:00
dependabot[bot]
12ff13c6e4 [rubygems/rubygems] Bump rb-sys
Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.83 to 0.9.84.
- [Release notes](https://github.com/oxidize-rb/rb-sys/releases)
- [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.83...v0.9.84)

---
updated-dependencies:
- dependency-name: rb-sys
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

ec4672c3e7
2023-12-25 21:12:49 +09:00
Martin Emde
df11b3daf8 [rubygems/rubygems] Let the guards have some space to breathe
73f1609715
2023-12-25 21:12:49 +09:00
Martin Emde
56804ddd2b [rubygems/rubygems] Use a mutex around Checksum::Store @store access
Not wrapping to_lock since access to it is single threaded and
read-only at the time of writing the lockfile.

3b53aa1b12
2023-12-25 21:12:49 +09:00
Hiroshi SHIBATA
5b8e685877 [ruby/rdoc] Typofix by misspell
6231b03476
2023-12-25 21:12:49 +09:00
Nobuyoshi Nakada
e324953090 [ruby/rdoc] Fix support for rb_file_const and rb_curses_define_const
Constant definitions using these functions have been supported, but
since RDoc::Parser::C#gen_const_table did not consider other than
`rb_define_const` the documents for them have not been found, without
`Document-const` direvtive.

Fixes https://github.com/ruby/rdoc/issues/1067

cdad51a60b
2023-12-25 21:12:49 +09:00
Nobuyoshi Nakada
e55a57af1e [ruby/optparse] [DOC] Add missing documents
324ff21f04
2023-12-25 21:12:49 +09:00
Nobuyoshi Nakada
7dd59346a0 [ruby/optparse] [DOC] Fix tutorial link
Fixes https://github.com/ruby/optparse/pull/51

1c895efc39
2023-12-25 21:12:49 +09:00
Hiroshi SHIBATA
f54369830f Revert "Rollback to released version numbers of stringio and strscan"
This reverts commit 6a79e53823.
2023-12-25 21:12:49 +09:00
Hiroshi SHIBATA
fa251d60aa Revert "Revert all of commits after Prism 0.19.0 release"
This reverts commit d242e8416e.
2023-12-25 21:12:49 +09:00
yui-knk
12b69bf515 Lrama v0.6.0 2023-12-25 20:33:22 +09:00
Nobuyoshi Nakada
9cf1c2bb0c
Refresh NEWS.md at starting new development [ci skip] 2023-12-25 20:10:37 +09:00
git
cd84459229 Update default gems list at e7d0ec3619 [ci skip] 2023-12-25 10:30:22 +00:00
Nobuyoshi Nakada
e7d0ec3619
[DOC] Fix format of NEWS.md 2023-12-25 19:28:45 +09:00
Takashi Kokubun
0d175ec425 Copy 3.3.0 NEWS.md to doc/NEWS [ci skip]
Basically 7d264e8e7b but for 3.3.0.
2023-12-25 01:47:13 -08:00
git
c224179be9 Update default gems list at e1c0e8cac4 [ci skip] 2023-12-25 09:46:15 +00:00
Takashi Kokubun
e1c0e8cac4 [DOC] Add a NEWS entry about it 2023-12-25 01:45:17 -08:00
Takashi Kokubun
04bf27368d Update NEWS.md for 3.4.0 [ci skip]
Basically bb2c360138 but for 3.4.0.
2023-12-25 01:42:09 -08:00
Takashi Kokubun
a164a34110 Resurrect a deprecated code for fixing tests for now
Revert "Remove deprecated code to fix RUBY_DEBUG build failures"

This reverts commit 9614bea2cd.

And changed 3.4 to 3.5. To be fixed properly later.
2023-12-25 01:36:28 -08:00
Nobuyoshi Nakada
596db9c1f4 [Feature #19370] Blocks without anonymous parameters should not affect 2023-12-25 18:28:21 +09:00
Takashi Kokubun
6e13cde457 Re-skip a failing spec 2023-12-25 01:25:36 -08:00
Takashi Kokubun
9614bea2cd Remove deprecated code to fix RUBY_DEBUG build failures 2023-12-25 01:21:33 -08:00
Takashi Kokubun
44592c4e20
Implement it (#9199)
[[Feature #18980]](https://bugs.ruby-lang.org/issues/18980)

Co-authored-by: Yusuke Endoh <mame@ruby-lang.org>
2023-12-25 01:15:41 -08:00
Yukihiro "Matz" Matsumoto
98eeadc932
Development of 3.4.0 started. 2023-12-25 18:13:40 +09:00
Nobuyoshi Nakada
a44a59dbaf
[DOC] Add NEWS for [Feature #19370] 2023-12-25 14:52:06 +09:00
Nobuyoshi Nakada
a9f0961831 [Feature #19370] Prohibit nesting anonymous parameter forwarding 2023-12-25 14:44:04 +09:00
Nobuyoshi Nakada
b641b7e640
Move non-portable pragmas to rubyspec.h
In the extension libraries in spec/ruby/optional/capi, do not care
about deprecated declarations.
2023-12-25 14:11:49 +09:00
Hiroshi SHIBATA
863ded45a1
Typofix under bootstraptest, spec and yjit directories 2023-12-25 13:50:23 +09:00
Nobuyoshi Nakada
2cdbeb29e6
Do not leave test file
Run this test separately because something seems remained unreleased
on Windows.
2023-12-25 13:01:55 +09:00
Peter Zhu
b4efa4b700 Don't copy RUBY_FL_PROMOTED flag in rb_obj_setup
RUBY_FL_PROMOTED is used by the garbage collector to track when an
object becomes promoted to the old generation. rb_obj_setup must not
copy that flag over because then it may become out-of-sync with the age
of the object.

This fixes a bug in Method#clone where the cloned Method object may get
RUBY_FL_PROMOTED incorrectly set.
2023-12-24 22:13:49 -05:00
Hiroshi SHIBATA
1b5f3dd6a1
Removed empty sections 2023-12-25 12:04:28 +09:00
Hiroshi SHIBATA
27ead9907d
Typofix under lib and test, tool directories 2023-12-25 11:32:42 +09:00
Peter Zhu
7002e77694 Fix Symbol#inspect for GC compaction
The test fails when RGENGC_CHECK_MODE is turned on:

    1) Failure:
    TestSymbol#test_inspect_under_gc_compact_stress [test/ruby/test_symbol.rb:123]:
    <":testing"> expected but was
    <":\x00\x00\x00\x00\x00\x00\x00">.
2023-12-24 21:29:40 -05:00
Hiroshi SHIBATA
e233730846
Partly reverted c903cddf55
These are intentional words
2023-12-25 11:22:12 +09:00
Hiroshi SHIBATA
c903cddf55
Typofix under doc directory 2023-12-25 11:17:51 +09:00
Peter Zhu
70618a48f7 Fix off-by-one error for declarative marking
The for loops for marking and reference updating declaratively marked
TypedData objects did not mark/reference update the very last element.

When RGENGC_CHECK_MODE is turned on, this caused the test in Enumerator
to fail with:

    tool/lib/test/unit/testcase.rb:173:in `rescue in run': failed to allocate memory (NoMemoryError)
2023-12-24 20:37:59 -05:00
Samuel Williams
260bf60e52
Correctly release the underlying file mapping. (#9340)
* Avoiding using `Tempfile` which was retaining the file preventing it from unlinking.
2023-12-25 14:20:53 +13:00
Peter Zhu
5af64ff7db Fix Enumerator#with_index for GC compaction
enumerator_block_call was not safe for compaction because the Array
backing the argv was not pinned, so it could get moved during compaction
which would make argv point to somewhere else.

The test crashes when RGENGC_CHECK_MODE is turned on:

    TestEnumerator#test_with_index_under_gc_compact_stress
    check_rvalue_consistency: 0x55db0b399450 is not a Ruby object.
    test/ruby/test_enumerator.rb:133: [BUG] check_rvalue_consistency_force: there is 1 errors.
    ruby 3.3.0dev (2023-12-23T23:00:27Z master 50bf437341) [x86_64-linux]
    -- Control frame information -----------------------------------------------
    c:0034 p:---- s:0192 e:000187 CFUNC  :with_index
    c:0033 p:---- s:0185 e:000184 CFUNC  :each
    c:0032 p:---- s:0182 e:000181 CFUNC  :to_a
    c:0031 p:0055 s:0178 e:000175 BLOCK  test/ruby/test_enumerator.rb:133
    c:0030 p:0024 s:0172 e:000171 METHOD tool/lib/envutil.rb:242
    c:0029 p:0024 s:0167 e:000166 METHOD tool/lib/envutil.rb:251
    c:0028 p:0005 s:0160 e:000159 METHOD test/ruby/test_enumerator.rb:131
    ...
    -- C level backtrace information -------------------------------------------
    build/ruby(rb_print_backtrace+0x14) [0x55db0b1deb21] vm_dump.c:820
    build/ruby(rb_vm_bugreport) vm_dump.c:1151
    build/ruby(bug_report_end+0x0) [0x55db0b3a53a6] error.c:1042
    build/ruby(rb_bug_without_die) error.c:1042
    build/ruby(die+0x0) [0x55db0afc77c2] error.c:1050
    build/ruby(rb_bug) error.c:1052
    build/ruby(gc_move+0x0) [0x55db0afbada0] gc.c:1714
    build/ruby(check_rvalue_consistency+0xa) [0x55db0afef0c3] gc.c:1729
    build/ruby(is_markable_object) gc.c:4769
    build/ruby(gc_mark_stack_values) gc.c:6595
    build/ruby(rb_gc_mark_vm_stack_values) gc.c:6605
    build/ruby(rb_execution_context_mark+0x39) [0x55db0b1d8589] vm.c:3309
    build/ruby(thread_mark+0x15) [0x55db0b1a9805] vm.c:3381
    build/ruby(gc_mark_stacked_objects+0x6d) [0x55db0aff2c3d] gc.c:7564
    build/ruby(gc_mark_stacked_objects_all) gc.c:7602
    build/ruby(gc_marks_rest) gc.c:8797
    build/ruby(gc_marks+0xd) [0x55db0aff43d5] gc.c:8855
    build/ruby(gc_start) gc.c:9608
    build/ruby(rb_multi_ractor_p+0x0) [0x55db0aff5463] gc.c:9489
    build/ruby(rb_vm_lock_leave) vm_sync.h:92
    build/ruby(garbage_collect) gc.c:9491
    build/ruby(newobj_slowpath+0xcb) [0x55db0aff57ab] gc.c:2871
    build/ruby(newobj_slowpath_wb_protected) gc.c:2895
    build/ruby(newobj_of0+0x24) [0x55db0aff59e4] gc.c:2937
    build/ruby(newobj_of) gc.c:2947
    build/ruby(rb_wb_protected_newobj_of) gc.c:2962
    build/ruby(ary_alloc_embed+0x10) [0x55db0b2f3e40] array.c:668
    build/ruby(ary_new) array.c:709
    build/ruby(rb_ary_tmp_new_from_values) array.c:759
    build/ruby(rb_ary_new_from_values) array.c:771
    build/ruby(args_copy+0x18) [0x55db0b1bbb88] vm_args.c:158
2023-12-24 16:22:34 -05:00
BurdetteLamar
86ef38194b RDoc for complex.c 2023-12-24 14:56:06 -05:00
Peter Zhu
f0efeddd41 Fix Regexp#inspect for GC compaction
rb_reg_desc was not safe for GC compaction because it took in the C
string and length but not the backing String object so it get moved
during compaction. This commit changes rb_reg_desc to use the string
from the Regexp object.

The test fails when RGENGC_CHECK_MODE is turned on:

    TestRegexp#test_inspect_under_gc_compact_stress [test/ruby/test_regexp.rb:474]:
    <"(?-mix:\\/)|"> expected but was
    <"/\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00/">.
2023-12-24 11:04:41 -05:00
BurdetteLamar
8ad8803bb4 RDoc for Complex 2023-12-24 11:00:30 -05:00
Peter Zhu
42442ed789 Fix Regexp#match for GC compaction
The test fails when RGENGC_CHECK_MODE is turned on:

    TestRegexp#test_match_under_gc_compact_stress:
    NoMethodError: undefined method `match' for nil
        test_regexp.rb:878:in `block in test_match_under_gc_compact_stress'
2023-12-24 09:03:55 -05:00
Samuel Williams
37753f163e
IO::Buffer improvements and documentation. (#9329)
* Restore experimental warnings.

* Documentation and code structure improvements.

* Improved validation of flags, clarified documentation of argument handling.

* Remove inconsistent use of `Example:` and add example to `null?`.

* Expose `IO::Buffer#private?` and add test.
2023-12-25 02:03:36 +13:00
Nobuyoshi Nakada
61289d9405
Initialize loop variable of ccan_list_for_each
On platforms where `typeof` is unsupported, `ccan_container_off_var`
calculates the offset of member by pointer subtraction.  Although this
will result in the compile-time invariant value regardless the pointer
value, the loop variable will be used before assignment and may cause
an using uninitialized variable warning.
2023-12-24 19:34:25 +09:00
git
86893b28f7 Update bundled gems list as of 2023-12-24 2023-12-24 06:58:23 +00:00
Koichi Sasada
a87ae242bb Use noinline version of accessing current ec
On universal.arm64e-darwin22 with clang 15.0.0 (I didn't check
details yet) accessing `ruby_current_ec` directly causes
assertion violation `VM_ASSERT(ec == rb_current_ec_noinline())`
on `rb_current_execution_context()`, maybe because TLS accessing
issue.
2023-12-24 15:13:33 +09:00