summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-10-18merge revision(s) 26054c74619d36b2781e872fad15a1a0bfab1be1:nagachika
Fix paths of exts.mk to clean exts.mk files are one level under the top of extension directories. --- template/exts.mk.tmpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
2022-10-18merge revision(s) 77f3f8a1d4f45d06df6cfea2bac3a67867c19efb:nagachika
exts.mk.tmpl: propagate MINIRUBY to enc.mk even though invoking from exts.mk This is another attempt to fix out-of-src build with --with-static-linked-ext. The first attempt was 4f1888bda70981d9f5b1bf55ab692e0ce18e79f4 but reverted because it broke out-of-src build from pre-generated sources via `make dist`. This patch fixes the second trans C source gen, mentioned in the previous commit message, by passing MINIRUBY as well as when invoking from common.mk --- common.mk | 2 +- template/exts.mk.tmpl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
2022-10-16merge revision(s) 464f73a5f0c1042bfefdd367b330cbdcafffca95:nagachika
Do not load library files from repository only for test What we want to test should be the bundled and to be installed files, but not the upstream. --- tool/test-bundled-gems.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
2022-10-16merge revision(s) 64cff780051adf95a0f1799baddec98ae23e8add:nagachika
`Gem.unpack` extracts gems so able to execute Creates simple bin stubs to load the extracted executable files. After only extracted under `gems` directory, the gems are considered installed but the executable scripts are not found. Also the second argument is now the parent of the previous second and third arguments. --- common.mk | 6 ++---- defs/gmake.mk | 3 +-- tool/gem-unpack.rb | 30 +++++++++++++++++++----------- 3 files changed, 22 insertions(+), 17 deletions(-)
2022-10-16merge revision(s) d20886dd225e07fe14347398c2c0913f3e11d22a:nagachika
Create build-only gemspec files only if having an extension --- tool/gem-unpack.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
2022-10-16merge revision(s) 32d1ce96e09773e809d575c17b916012d88d6ffc:nagachika
Fix race conditions when cleaning extensions Clean built directories by `make distclean`, and then clean leftover makefiles for skipped extensions. --- template/Makefile.in | 4 ++++ 1 file changed, 4 insertions(+)
2022-10-16merge revision(s) 0c9803b0fdfd17981bd9f59767adab0207c3a74d:nagachika
The "gems" build directory was rename as ".bundle" --- common.mk | 12 ++++++------ template/Makefile.in | 10 +++++----- 2 files changed, 11 insertions(+), 11 deletions(-)
2022-10-16merge revision(s) 21f006f5f7c161fd3857f69186e810f1958bd7f0:nagachika
Retrieve previously configured macros also other than `extensions` --- template/exts.mk.tmpl | 1 - 1 file changed, 1 deletion(-)
2022-10-16merge revision(s) d7afaf21f2edfac8a606891868a3c4a7025267bd:nagachika
Move the target directory of bundled gems like as rubygems --- ext/extmk.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
2022-10-16merge revision(s) 17ce0b9b846a065065008b5fb2e9f8ad13058fa1:nagachika
Retrieve configured gems info --- template/configure-ext.mk.tmpl | 2 +- template/exts.mk.tmpl | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-)
2022-10-16merge revision(s) db3d111c1d1e90b400f1e737ded6a4e4bdf2cec8:nagachika
Bundled gems are expanded under `.bundle/gems` now --- ext/extmk.rb | 13 +++++++------ template/exts.mk.tmpl | 2 +- 2 files changed, 8 insertions(+), 7 deletions(-)
2022-10-16merge revision(s) ee6cc2502664ac46edc61868d8954b626bb48e53:nagachika
Remove wrong dollar --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
2022-10-15merge revision(s) 5e554d30ba747ad1b59335efaa63c7e3c94bfad0:nagachika
Upgrade zlib_version on AppVeyor They removed https://zlib.net/zlib1212.zip because https://zlib.net/zlib1213.zip was released :thinking_face: Fix CI failures like: https://ci.appveyor.com/project/ruby/ruby/builds/45064876/job/bb9biogolh0u2595 --- .appveyor.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
2022-10-15merge revision(s) 9d900620cafc379f527ee04a338f3a7f5daf6962:nagachika
Set `GEM_PATH` environment variable in runruby.rb --- tool/runruby.rb | 6 ++++++ 1 file changed, 6 insertions(+)
2022-10-15merge revision(s) 416cba90c1610f54dafd91234de9ec74d73ae22c:nagachika
Try to install also gemspec files under gem directories Gemspec files having extension libraries are placed under each gem directories now. --- tool/rbinstall.rb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
2022-10-15merge revision(s) 2d1032075a4654b8b54dde96424f299f7f29f9d6:nagachika
Stop `build_extensions` when DESTDIR set Try to fix `make install without root privilege` failures on snapshot CIs. example: https://github.com/ruby/actions/actions/runs/2315349280 --- tool/rbinstall.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
2022-10-15merge revision(s) 79fa27acc452c50ae47936880f91424e729fda72:nagachika
rbinstall: Also do `Gem.ruby` patching for unpacked bundled gems Pointing `Gem.ruby` to the newly installed ruby gives mkmf the right inputs to build extensions in bundled gems. Previously, this patching was only done for compressed bundled gems. This patch also prevents `tool/fake.rb` from propagating to the child process running mkmf for the native extension. The way `tool/fake.rb` changes mkmf variables using `Kernel#trace_var` created spooky action at a distance which made debugging difficult. AppVeyor Windows CI started to fail starting with 8a3663789c52ec5635194656af6b69d3d03120ee because it enabled extension building for bundled gems on mswin. This patch should address the CI failures. --- tool/rbinstall.rb | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)
2022-10-15merge revision(s) 8a3663789c52ec5635194656af6b69d3d03120ee:nagachika
Fix bundled gems installation when relative loading --- tool/rbinstall.rb | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)
2022-10-15merge revision(s) 7e4ac434b923739b540ce21cba307c4d0515d72e:nagachika
Skip build extensions again on cross compiling too --- tool/rbinstall.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
2022-10-15merge revision(s) 3112475469e35b522448858d23ee1651532276e7:nagachika
Skip build extensions again on mswin and mingw --- tool/rbinstall.rb | 3 +++ 1 file changed, 3 insertions(+)
2022-10-15merge revision(s) 4246e102d49eae0bd1bca01fba53286ad8178d2a:nagachika
Enabled to build extensions with the bundled gems again https://github.com/ruby/ruby/commit/cbb115213c42f15638ef119eb20c4d3106eb8b1a https://github.com/ruby/ruby/commit/5c1b76a3a55afeb07116bbd3492303c6b6cd890d --- tool/rbinstall.rb | 3 --- 1 file changed, 3 deletions(-)
2022-10-15merge revision(s) 5c1b76a3a55afeb07116bbd3492303c6b6cd890d:nagachika
Install built gem extension binaries --- tool/rbinstall.rb | 56 ++++++++++++++++--------------------------------------- 1 file changed, 16 insertions(+), 40 deletions(-)
2022-10-15merge revision(s) b2491783986084770f6f97552f27b868622730cf:nagachika
Install gems `lib` directory to build path --- ext/extmk.rb | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+)
2022-10-15merge revision(s) a2c66f52f402cb58372e271226f3341065561e53:nagachika
Make dependency-free gemspec files The default gems have not been installed yet in the build directory, bundled gems depending on them can not work. As those dependencies should be usable there even without rubygems, make temporary gemspec files without the dependencies, and use them in the build directory. --- ext/extmk.rb | 11 +++++++++++ tool/gem-unpack.rb | 4 ++++ 2 files changed, 15 insertions(+)
2022-10-15merge revision(s) e1a4e44f14482814a0540ae0a4b31d858ff56f53:nagachika
Extract gemspec files to each gem directories Since extension libraries can not be built in the source directory, rubygems warns gems have extension libraries as the extensions are not built. To order to suppress this warnings, extract such gemspec files under each gem directories instead of the common `specifications` directory. --- tool/gem-unpack.rb | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
2022-10-15merge revision(s) bb0a22a8c05994396aa316c242ff8816d8d0a259:nagachika
Obey spec file locations to rubygems --- common.mk | 3 ++- defs/gmake.mk | 2 +- tool/gem-unpack.rb | 5 +++-- 3 files changed, 6 insertions(+), 4 deletions(-)
2022-10-15merge revision(s) 1150a54afe98171657869bd2eafd82fda59893b1:nagachika
Use `File::PATH_SEPARATOR` for the portability --- tool/test-bundled-gems.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
2022-10-15merge revision(s) 76bae60d9b967415c5930c2c5906e14c8362a6dd: [Backport #19038]nagachika
[Bug #19038] Fix corruption of generic_iv_tbl when compacting When the generic_iv_tbl is resized up, rebuild_table performs allocations that can trigger GC. If autocompaction is enabled, then moved objects are removed from and inserted into the generic_iv_tbl. This may cause another call to rebuild_table to resize the generic_iv_tbl. When returning back to the original rebuild_table, some of the data may be stale, causing the generic_iv_tbl to be corrupted. This commit changes rebuild_table to only read data from the st_table after the allocations have completed. Co-Authored-By: Matt Valentine-House <matt@eightbitraptor.com> --- st.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-)
2022-10-10merge revision(s) 7f4345639b09395f2ab423d1cdac6f2ddf0707de:nagachika
fake.rb: Set prefix to `$topdir` Not to refer outside the top build directory from rbconfig. --- tool/fake.rb | 1 + 1 file changed, 1 insertion(+)
2022-10-09Revert "sync tool/rbinstall.rb to current master."nagachika
This reverts commit bda0b8c09331111f38af98291c201595ce3a2872.
2022-10-09sync tool/rbinstall.rb to current master.nagachika
2022-10-08bump patchlevelnagachika
2022-10-08* 2022-10-08 [ci skip]git
2022-10-08Merge RubyGems-3.3.23 and Bundler-2.3.23Hiroshi SHIBATA
2022-10-06merge revision(s) 5101671cbc008230cae7b5c2190b2f6938a19f74:nagachika
Disable parallel built in test-bundled-gems --- common.mk | 2 +- tool/test-bundled-gems.rb | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-)
2022-10-05update debug.gem commit hash to cease nightly packaging failures.nagachika
2022-10-04update debug.gem commit hash to cease nightly packaging failures.nagachika
2022-10-03merge revision(s) b91f685a2615ef957210f5e3a50c0e8299c20c55: [Backport #18435]nagachika
Mark struct METHOD->owner for the GC * Fixes https://github.com/ruby/ruby/commit/6b7d32a5e5 * See [Bug #18729] --- proc.c | 2 ++ 1 file changed, 2 insertions(+)
2022-10-01bump patchlevelnagachika
2022-10-01Re-enable example for Europe/Amsterdam pre-1970 timeHiroshi SHIBATA
* https://github.com/ruby/spec/pull/939 * https://github.com/ruby/ruby/pull/6393
2022-10-01bump patchlevelnagachika
2022-10-01Initialize Objective-C classes before fork() for macOS 13Yuta Saito
Since macOS 13, CFString family API used in `rb_str_append_normalized_ospath` may internally use Objective-C classes (`NSTaggedPointerString` and `NSPlaceholderMutableString`) for small strings. On the other hand, Objective-C classes should not be used for the first time in a `fork()`'ed but not `exec()`'ed process. Violations for this rule can result deadlock during class initialization, so Objective-C runtime conservatively crashes on such cases by default. Therefore, we need to use CFString API to initialize Objective-C classes used internally *before* `fork()`. For more details, see https://bugs.ruby-lang.org/issues/18912
2022-10-01[Bug #19005] dynamic_lookup linker option in external librariesNobuyoshi Nakada
The warning against `-undefined dynamic_lookup` is just a warning yet, and many gems seem to pay no attention to warnings. Until it fails actually, keep it as a migration path, except for standard extension libraries and bundled extension gems.
2022-10-01-undefined dynamic_lookup is obsoleteNobuyoshi Nakada
2022-10-01merge revision(s) ↵nagachika
94cea3e4d0a60326bd95be762819eed8ccd59ca6,aa53d69aa21c4dfa2a78a1cec5cb34e9697b3d30,6b7d32a5e54088b6b4014529bbf2b4b8c1a96029,c6319026caa6c8f0f569f80011e8502349a04b14,aa490f9442c32cd0e1e449ac817f410bd5924c8b: [Backport #18435] Fix {Method,UnboundMethod}#super_method for zsuper methods * We need to resolve the zsuper method first, and then look the super method of that. --- proc.c | 25 ++++++++++++----------- spec/ruby/core/method/super_method_spec.rb | 15 +++----------- spec/ruby/core/unboundmethod/super_method_spec.rb | 16 ++++++--------- 3 files changed, 22 insertions(+), 34 deletions(-) Add specs for {Method,UnboundMethod}#owner of a zsuper method --- spec/ruby/core/method/owner_spec.rb | 6 ++++++ spec/ruby/core/unboundmethod/owner_spec.rb | 7 +++++++ 2 files changed, 13 insertions(+) Resolve zsuper method during lookup but preserve owner separately * See https://bugs.ruby-lang.org/issues/18729#note-34 * See [Bug #18729] --- proc.c | 109 +++++++++++++++++++++++++---------------------- test/ruby/test_method.rb | 66 +++++++++++++++++++++++----- 2 files changed, 114 insertions(+), 61 deletions(-) Extend tests for a zsuper method of which the method it resolved to has been removed --- test/ruby/test_method.rb | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) Reduce diff to proc.c @ b0b9f7201acab05c2a3ad92c3043a1f01df3e17f * So it's easy to review https://github.com/ruby/ruby/pull/6242 + https://github.com/ruby/ruby/pull/6467 and there are less changes overall. --- proc.c | 76 ++++++++++++++++++------------------------------ test/ruby/test_method.rb | 7 +++-- 2 files changed, 34 insertions(+), 49 deletions(-)
2022-09-25merge revision(s) cf7d07570f50ef9c16007019afcff11ba6500d70: [Backport #18938]nagachika
Dump non-ASCII char as unsigned Non-ASCII code may be negative on platforms plain char is signed. --- ext/objspace/objspace_dump.c | 2 +- test/objspace/test_objspace.rb | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-)
2022-09-25merge revision(s) ↵nagachika
e2b47b832f53b2fd0626774a573a22c15a933c64,f512df73986c74e2f4bd65ca642879a0618da213,2e25b85a7e4268676fcdf17b5975c2fd60066ce1: [Backport #19014] configure.ac: Manage OPT_DIR better (#6367) * Check rpath flag earlier * Manage OPT_DIR at once --- configure.ac | 97 +++++++++++++++++++++++++++--------------------------------- 1 file changed, 43 insertions(+), 54 deletions(-) configure.ac: Add --with-gmp-dir (#6366) Add the `--with-gmp-dir` to specify the prefix directory of GMP. The`--without-gmp` option is preserved for convenience. It can be used to force to reject using GMP even if the `--with-gmp-dir` option is specified. --- configure.ac | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) configure.ac: Apply suggestions from code review in #6366 Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> --- configure.ac | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
2022-09-25merge revision(s) 70f69f85395f5735429cd45136d7de2742f08b72: [Backport #18941]nagachika
[ruby/fileutils] Fix mkdir_p hanging on Windows when trying to create a file on a offline drive https://github.com/ruby/fileutils/commit/9cc6a082d7 --- lib/fileutils.rb | 2 +- test/fileutils/test_fileutils.rb | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-)
2022-09-25merge revision(s) 7f81f335478a3ca873f34e3bc0af6927819d3e84: [Backport #18734]nagachika
Return `false` where sticky-bit is not provided [Bug #18734] --- file.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
2022-09-25merge revision(s) a0040af6715d85f416f1282588974e151a8164eb: [Backport #18732]nagachika
[Win32] Fix mode of character/pipe device stat [Bug #18732] --- test/ruby/test_file_exhaustive.rb | 33 ++++++++++++++++++++++++++++----- win32/win32.c | 22 ++++++++++++++++------ 2 files changed, 44 insertions(+), 11 deletions(-)