aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [DOC] Mention the case to autoload already defined constantNobuyoshi Nakada2022-06-031-0/+8
|
* [DOC] Subjects of `autoload` are not restricted to modulesNobuyoshi Nakada2022-06-031-4/+4
|
* [rubygems/rubygems] Remove redundant bitwise ANDDavid Rodríguez2022-06-021-1/+1
| | | | https://github.com/rubygems/rubygems/commit/a20bac7924
* [rubygems/rubygems] Add test cases from SHA1 RFC and improve test failure ↵David Rodríguez2022-06-021-2/+9
| | | | | | | | | | message I found that the current test cases did not cover the bitwise AND performed on modified words after each iteration (https://github.com/rubygems/rubygems/blob/7e5765a66c9fe5187b167f619f34db5db121f2df/bundler/lib/bundler/digest.rb#L50) https://github.com/rubygems/rubygems/commit/c8de819fee
* [rubygems/rubygems] Remove leftover debugging putsDavid Rodríguez2022-06-021-1/+0
| | | | https://github.com/rubygems/rubygems/commit/7c6f15040d
* Typedef built-in function typesNobuyoshi Nakada2022-06-022-19/+56
|
* Move `GC.verify_compaction_references` [Bug #18779]Nobuyoshi Nakada2022-06-023-48/+29
| | | | | Define `GC.verify_compaction_references` as a built-in ruby method, according to GC compaction support via `GC::OPTS`.
* Adjust indent and nesting [ci skip]Nobuyoshi Nakada2022-06-021-3/+1
|
* Fix the condition when a new buffer is needed without GMPNobuyoshi Nakada2022-06-022-2/+23
|
* * 2022-06-02 [ci skip]git2022-06-021-1/+1
|
* Split YJIT rules for CODEOWNERSNobuyoshi Nakada2022-06-022-54/+57
|
* Revert incorrect string-guard optimisation. (#5969)Noah Gibbs2022-06-012-27/+31
| | | | Also add jhawthorn's test to for this bug. Fix String#to_s invalidation test
* [rubygems/rubygems] Fix `bundle remove` by invalidating cached ↵Ellen Marie Dash2022-06-012-0/+34
| | | | | | | | | | | | `Bundle.defintion`. Prior to this commit, `bundle add GEM_NAME` updated the lockfile, but `bundle remove GEM_NAME` left GEM_NAME in the lockfile. By invalidating the cached `Bundle.definition`, the existing code handles that without a problem. https://github.com/rubygems/rubygems/commit/aa0794d6a9
* [rubygems/rubygems] Fix generated standalone script for default gemsDavid Rodríguez2022-06-012-1/+12
| | | | | | | | | | | The installer is actually rewriting the spec's full gem path to be the one of the newly installed gem, however the accessor was not properly working for `StubSpecification` instances, and default gems are always of this type, because they are always present locally. Fix the accessor to properly update the underlying full specification. https://github.com/rubygems/rubygems/commit/efa41babfa
* [rubygems/rubygems] Remove code that seems unnecessaryDavid Rodríguez2022-06-011-3/+1
| | | | | | | | This change was never covered with a spec, and we have recently covered the case of partially deleted gems with specs and it works fine (installation is "auto-healed"). https://github.com/rubygems/rubygems/commit/6e66ee4235
* [rubygems/rubygems] Restore ability to load old marshalled gemspec that use ↵David Rodríguez2022-06-012-1/+8
| | | | | | | | | | | | | | | `YAML::PrivateType` This issue was not detected because when all traces of old YAML parser and emitter `Syck` were removed, this null-type.gemspec.rz marshalled gemspec was updated to no longer load `YAML::Syck::PrivateType` but load `Psych::PrivateType` instead. However, realworld old marshalled gemspecs still use the `YAML::PrivateType` constant, so this commit replaces the gemspec to be the real pry-0.4.7 marshalled gemspec, so that it catches this issue. https://github.com/rubygems/rubygems/commit/51b330b8d2
* [rubygems/rubygems] Improve null private type testDavid Rodríguez2022-06-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | This test is making sure that RubyGems is able to load old marshalled gemspecs that include a field loading `YAML::PrivateType` instances in the `rubyforge_project` field instead of `nil` due to a bug in old YAML emitters. At some point, the `rubyforge_project` field was removed and this test was updated to just check another field. However, in the realworld other fields do not have this issue and the marshalled gemspec we use for testing still has this issue in the field reserved for the `rubyforge_project` field. So I think updating the test to check other field was not correct. Instead, since the `rubyforge_project` field is now ignored, we no longer need to worry about any conversion in this field. The only thing we care about is that the marshal loading still works (which requires that the constant is at least defined). So this commit updates the test to make this more clear. https://github.com/rubygems/rubygems/commit/cddfacf6d4
* [rubygems/rubygems] Remove no longer needed `Psych::PrivateType` cleanupDavid Rodríguez2022-06-011-5/+0
| | | | | | | | | | | | This old bug used to affect the `rubyforge_project` field in serialized gemspecs. However, this field has been removed and it's no longer present in marshaled loaded gemspecs. So, while the constant is still present in these marshalled gemspecs and we still need to make sure it exists, we no longer need to clean it up from the loaded data. https://github.com/rubygems/rubygems/commit/09df18e522
* * 2022-06-01 [ci skip]git2022-06-011-2/+2
|
* [rubygems/rubygems] Skip duplicated dependency warning for gemspec dev depsDavid Rodríguez2022-06-012-7/+31
| | | | | | | | | | | Generally this warning is skipped for gemspec development dependencies. I think because it's common to override them in the Gemfile to change the source, for example. But the order of conditions was not correct and the warning was still being printed in one case. https://github.com/rubygems/rubygems/commit/da9d1d6a3f
* [rubygems/rubygems] Give better conflict resolution adviceDavid Rodríguez2022-05-312-4/+65
| | | | | | | | This alternative really uses only the Gemfile, and can never end up being absurd, because it will never be suggested when there's no lockfile, and it suggests deleting the lockfile. https://github.com/rubygems/rubygems/commit/5d154dd50e
* Add information from doc/hacking.md and doc/make_cheatsheet.md back i… (#5963)Jemma Issroff2022-05-304-118/+105
| | | Add information from doc/hacking.md and doc/make_cheatsheet.md back into contributing docs
* Skip failing test with freebsdHiroshi SHIBATA2022-05-311-0/+2
|
* [rubygems/rubygems] Bump rb-sys in ↵dependabot[bot]2022-05-312-46/+65
| | | | | | | | | | | | | | | | | | /test/rubygems/test_gem_ext_cargo_builder/custom_name Bumps [rb-sys](https://github.com/ianks/rb-sys) from v0.7.3 to v0.9.0. - [Release notes](https://github.com/ianks/rb-sys/releases) - [Commits](https://github.com/ianks/rb-sys/compare/4a5dd9782075fc6e197976eb2188231a388c3c95...https://github.com/rubygems/rubygems/commit/e4f00b9761af) --- updated-dependencies: - dependency-name: rb-sys dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> https://github.com/rubygems/rubygems/commit/874bbc96b2
* Add yjit.o to DTRACE_DEPENDENT_OBJSJakub Kulík2022-05-301-1/+2
| | | | | | | | | | | | | | | | | | In principle, we have a DTrace probe in yjit.c, so yjit.o should be in DTRACE_DEPENDENT_OBJS for DTRACE_REBUILD=yes builds. This commit adds to the list. In practice DTRACE_REBUILD=yes implies the system has a Solaris-like DTrace and YJIT doesn't support those systems. YJIT_OBJ expands to nothing, and yjit.c isn't compiled. I tested on OmniOS v11 r151034m with: $ ../src/configure --with-out-ext=psych MAKE=gmake AR=ar debugflags=-g $ gmake -j It builds before and after this change. [Bug #18480]
* [rubygems/rubygems] Bump rb-sysdependabot[bot]2022-05-312-46/+65
| | | | | | | | | | | | | | | | Bumps [rb-sys](https://github.com/ianks/rb-sys) from v0.7.3 to v0.9.0. - [Release notes](https://github.com/ianks/rb-sys/releases) - [Commits](https://github.com/ianks/rb-sys/compare/4a5dd9782075fc6e197976eb2188231a388c3c95...https://github.com/rubygems/rubygems/commit/e4f00b9761af) --- updated-dependencies: - dependency-name: rb-sys dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> https://github.com/rubygems/rubygems/commit/eb31b14a37
* Fix use-after-free with interacting TracePointsAlan Wu2022-05-303-5/+49
| | | | | | | | | | | | | | `vm_trace_hook()` runs global hooks before running local hooks. Previously, we read the local hook list before running the global hooks which led to use-after-free when a global hook frees the local hook list. A global hook can do this by disabling a local TracePoint, for example. Delay local hook list loading until after running the global hooks. Issue discovered by Jeremy Evans in GH-5862. [Bug #18730]
* * 2022-05-31 [ci skip]git2022-05-311-1/+1
|
* [ruby/fileutils] [DOC] Enhanced RDoc (https://github.com/ruby/fileutils/pull/77)Burdette Lamar2022-05-311-14/+69
| | | | | | | | | | Treats: ::copy_entry ::copy_file ::copy_stream ::mv https://github.com/ruby/fileutils/commit/d6d7e5330d
* Skip failing test with freebsdHiroshi SHIBATA2022-05-301-0/+2
|
* [rubygems/rubygems] Fix crash when commenting out a mirror in configurationDavid Rodríguez2022-05-302-1/+29
| | | | https://github.com/rubygems/rubygems/commit/2d99277328
* [rubygems/rubygems] Fix crash when installing gems with symlinksDavid Rodríguez2022-05-306-13/+50
| | | | | | | | | | | | | | | If BUNDLE_PATH is configured to a symlinked path, installing gems with symlinks would crash with an error like this: ``` Gem::Package::SymlinkError: installing symlink 'man/man0/README.markdown' pointing to parent path /usr/home/stevewi/srv/mail/lib/tools/.vendor/ruby/3.1.0/gems/binman-5.1.0/README.markdown of /srv/mail/lib/tools/.vendor/ruby/3.1.0/gems/binman-5.1.0 is not allowed ``` This commit fixes the problem by changing the bundle path to be the realpath of the configured value, right after we're sure the path has been created. https://github.com/rubygems/rubygems/commit/3cd3dd142a
* [rubygems/rubygems] No need to use `FileUtils` to create symlinksDavid Rodríguez2022-05-302-3/+3
| | | | https://github.com/rubygems/rubygems/commit/70ff7cee9f
* [rubygems/rubygems] Fix failing spec on WindowsDavid Rodríguez2022-05-301-5/+2
| | | | https://github.com/rubygems/rubygems/commit/8e68c57457
* [rubygems/rubygems] Remove seemingly unnecessary codeDavid Rodríguez2022-05-301-11/+0
| | | | https://github.com/rubygems/rubygems/commit/f5dd5204ca
* [ruby/stringio] Fix extracting encoding names in the fallback codeNobuyoshi Nakada2022-05-301-2/+7
| | | | https://github.com/ruby/stringio/commit/0fe2e0c1e5
* [ruby/stringio] Accept external and internal encodings pairNobuyoshi Nakada2022-05-302-1/+14
| | | | | | Fix https://github.com/ruby/stringio/pull/16 https://github.com/ruby/stringio/commit/c8a69e80d2
* Also skip failing test with freebsd 12Hiroshi SHIBATA2022-05-301-0/+2
|
* Update rubyspec for stringio bug fixJeremy Evans2022-05-291-5/+16
|
* [ruby/stringio] Fix handling of chomp with paragraph separatorJeremy Evans2022-05-302-24/+27
| | | | | | | | | | Try to mirror IO behavior, where chomp takes out the entire paragraph separators between entries, but does not chomp a single line separator at the end of the string. Partially Fixes [Bug #18768] https://github.com/ruby/stringio/commit/a83ddbb7f0
* [ruby/stringio] Update ext/stringio/stringio.cJeremy Evans2022-05-301-1/+2
| | | | | https://github.com/ruby/stringio/commit/1edc88587e Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
* [ruby/stringio] Ignore chomp keyword for nil separatorJeremy Evans2022-05-302-3/+9
| | | | | | | | | nil separator means no separator at all, so nothing should be chomped. Partial fix for Ruby [Bug #18770] https://github.com/ruby/stringio/commit/feaa2ec631
* [ruby/stringio] Fix each with multiple character string and chompJeremy Evans2022-05-302-2/+10
| | | | | | | | | | Previously, this could result in an infinite loop. Always update the e pointer in this case, setting w when chomping so the chomped data is not included in the output. Fixes [Bug #18769] https://github.com/ruby/stringio/commit/4bf64d5130
* [ruby/stringio] Fix expanding size at ungetc/ungetbyteNobuyoshi Nakada2022-05-302-5/+22
| | | | https://github.com/ruby/stringio/commit/a35268a3ac
* Reduce duplicate replacementsNobuyoshi Nakada2022-05-301-5/+5
| | | | | | Reduce duplicate replacements so that reflect macros in command lines consitently. So that reflect macros in command lines. Others than `nmake` have no problems with nested expansions.
* Skip failing test with freebsdHiroshi SHIBATA2022-05-301-0/+5
|
* YJIT: Relax minimum Rust version requirement to 1.58.1Alan Wu2022-05-292-2/+6
| | | | | | | | | | | | | | | | | We want to make it convenient for people to build YJIT and Rust version 1.58.1 or above is available on Ubuntu Jammy, Debian testing, and Fedora 36 through the usual package manager on those systems. This saves the need to install `rustup` for some people. Our code is already 1.58.1 compatible so this commit simply tweaks CI to make sure that we keep supporting that version. We still test against the latest Rust version in `--enable-yjit=dev` builds through the Rust version available in GitHub's CI image. Rust versions older than 1.58.1 might build YJIT today, but we might make incompatible changes in the future. Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
* * 2022-05-30 [ci skip]git2022-05-301-1/+1
|
* [rubygems/rubygems] Ignore `Errno::EROFS` errors when creating `bundler.lock`David Rodríguez2022-05-302-1/+12
| | | | | | | | | | Apparently old versions of MacOS would set `GEM_HOME` to a `/System` folder, and trying to create a file there raises `Errno::EROFS`. We ignore the error. Any permission issues should be better handled further down the line. https://github.com/rubygems/rubygems/commit/ef90c071d0
* [rubygems/rubygems] Ignore `Errno::EPERM` errors when creating `bundler.lock`David Rodríguez2022-05-292-1/+12
| | | | | | | | | | This kind of error can happen when setting `GEM_HOME` to a path under MacOS System Integrity Protection. We ignore the error. Any permission issues should be better handled further down the line. https://github.com/rubygems/rubygems/commit/174cb66863