summaryrefslogtreecommitdiff
path: root/lib/rubygems/platform.rb
AgeCommit message (Collapse)Author
2025-11-14[ruby/rubygems] Removed deprecated Gem::Platform.matchHiroshi SHIBATA
https://github.com/ruby/rubygems/commit/f4b4f12f91
2025-11-12[ruby/rubygems] Add documentation for pattern matching methodsBrandon Weaver
https://github.com/ruby/rubygems/commit/18f64c6b29
2025-11-12[ruby/rubygems] Add pattern matching support to Gem::PlatformBrandon Weaver
https://github.com/ruby/rubygems/commit/b59917447c
2025-07-17[rubygems/rubygems] Restore treating "--" as an unknown platformDavid Rodríguez
Rather than crashing when parsing it. https://github.com/rubygems/rubygems/commit/aa0064e4c7
2025-06-06Move most of Bundler::GemHelpers to Gem::PlatformSamuel Giddins
This will help centralize wheel platform selection logic eventually Signed-off-by: Samuel Giddins <segiddins@segiddins.me>
2025-05-19[rubygems/rubygems] Missing tweakDavid Rodríguez
https://github.com/rubygems/rubygems/commit/407c1cbcfe
2025-05-19[rubygems/rubygems] Simplify Gem::Platform#initializeSamuel Giddins
Based on PR feedback Signed-off-by: Samuel Giddins <segiddins@segiddins.me> https://github.com/rubygems/rubygems/commit/562d7aa087
2025-05-19[rubygems/rubygems] RuboCopSamuel Giddins
Signed-off-by: Samuel Giddins <segiddins@segiddins.me> https://github.com/rubygems/rubygems/commit/768784910b
2025-05-19[rubygems/rubygems] Ensure that Gem::Platform parses strings to a fix pointSamuel Giddins
The issue was that the property that ```ruby platform = Gem::Platform.new $string platform == Gem::Platform.new(platform.to_s) ``` was not always true. This property (of acchieving a fix point) is important, since `Gem::Platform` gets serialized to a string and then deserialized back to a `Gem::Platform` object. If it doesn't deserialize to the same object, then different platforms are used for the initial serialization than subsequent runs. I used https://github.com/segiddins/Scratch/blob/main/2025/03/rubygems-platform.rb to find the failing cases and then fixed them. With this patch, the prop check test now passes. https://github.com/rubygems/rubygems/commit/313fb4bcec
2024-07-05[rubygems/rubygems] Restrict generic `arm` to only match 32-bit armなつき
https://github.com/rubygems/rubygems/commit/14c4c16e96
2024-06-18[rubygems/rubygems] Add `--target-rbconfig` option to `gem install` and `gem ↵Yuta Saito
update` commands This patch adds `--target-rbconfig` option to specify the rbconfig.rb file for the deployment target platform. This is useful when cross-compiling gems. At the moment, this option is only available for `extconf.rb`-based extensions. https://github.com/rubygems/rubygems/commit/cf2843f7a2
2024-05-07[rubygems/rubygems] Accept WASI as an OS name in Gem::PlatformYuta Saito
https://github.com/rubygems/rubygems/commit/1209d3c6b0
2023-12-13[rubygems/rubygems] Use match? when regexp match data is unusedSamuel Giddins
Improved performance / reduced allocations https://github.com/rubygems/rubygems/commit/b04726c9a7
2023-12-08[rubygems/rubygems] Upstream RubyGems changes from TruffleRubyBenoit Daloze
https://github.com/rubygems/rubygems/commit/749a508968
2023-10-25[rubygems/rubygems] Avoid regexp match on every call to `Gem::Platform.local`Samuel Giddins
The result of `arch` would be ignored if `@local` is set, so wrap all the logic in `@local ||=` to short-circuit everything https://github.com/rubygems/rubygems/commit/b67d39f3e0
2023-07-21[rubygems/rubygems] Deprecate Gem::Platform.matchHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/e3ba3e2225
2023-04-04[rubygems/rubygems] util/rubocop -A --only Performance/RegexpMatchHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/52ae4452c2
2023-03-23util/rubocop -A --only Layout/EmptyLineAfterMagicCommentHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/7582
2023-03-17util/rubocop -A --only Layout/SpaceInsideArrayLiteralBracketsHiroshi SHIBATA
2023-03-17[rubygems/rubygems] util/rubocop -A --only Style/CommentAnnotationHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/4e77a1d1d5
2023-03-17[rubygems/rubygems] util/rubocop -A --only Style/ParallelAssignmentHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/5c88c77873
2023-03-17[rubygems/rubygems] util/rubocop -A --only Style/AliasHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/fba6e94de9
2023-03-16[rubygems/rubygems] Change enforce style with Layout/CaseIndentation on rubygemsHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/d4938259c4
2023-01-10Merge RubyGems and Bundler masterHiroshi SHIBATA
from https://github.com/rubygems/rubygems/commit/0635c1423db5d7c461d53bf0c3329bca75de7609 Notes: Merged: https://github.com/ruby/ruby/pull/7094
2022-11-07[rubygems/rubygems] Drop support for bitrigPeter Zhu
The bitrig OS is no longer maintained with the last release being 7 years ago. https://github.com/rubygems/rubygems/commit/85ed90ddd0
2022-11-07[rubygems/rubygems] Drop support for HP-UXPeter Zhu
Support for HP-UX was dropped in Ruby in ruby/ruby#5457. https://github.com/rubygems/rubygems/commit/a3a8df3582
2022-10-01[rubygems/rubygems] Add notes to make sure we don't forget to backport ↵David Rodríguez
changes to Bundler https://github.com/rubygems/rubygems/commit/1ac5b14c78 Co-authored-by: André Arko <andre@arko.net>
2022-10-01[rubygems/rubygems] Fix matching of eabihf platformsDavid Rodríguez
https://github.com/rubygems/rubygems/commit/a03d30cd58
2022-10-01[rubygems/rubygems] Fix matching of linux platforms with eabi modifiersDavid Rodríguez
https://github.com/rubygems/rubygems/commit/89362c18ef Co-authored-by: Mike Dalessio <mike.dalessio@gmail.com>
2022-10-01[rubygems/rubygems] Refactor platform matching on LinuxDavid Rodríguez
I think this highlights better how musl is special. https://github.com/rubygems/rubygems/commit/4075771697
2022-09-28[rubygems/rubygems] fix: Gem::Platform.match handles String argument properlyMike Dalessio
Previously 9eead86 introduced non-commutativity of platforms, and later commit 1b9f7f50 changed the behavior of `Gem::Platform.match` to ensure the callee of `#=~` was the gem platform. However, when the platform argument is a String, then the callee and argument of `#=~` are flipped (see docs for `String#=~`), which works against the fix from 1b9f7f50. Closes #5938 https://github.com/rubygems/rubygems/commit/3b1fb562e8
2022-09-01[rubygems/rubygems] Support non gnu libc arm-linux-eabi platformsなつき
https://github.com/rubygems/rubygems/commit/394d7a6fc9
2022-08-23[rubygems/rubygems] Implement extra rules for libc versioningDavid Rodríguez
https://github.com/rubygems/rubygems/commit/7e976d790a
2022-08-23[rubygems/rubygems] Fix `gem install` still choosing musl incorrectlyDavid Rodríguez
https://github.com/rubygems/rubygems/commit/1b9f7f50a5
2022-08-23[rubygems/rubygems] Handle non-gnu libc on linux platforms in RubyGemsDavid Rodríguez
Attempting to install a gem published as both *-linux and *-linux-musl results in the incorrect gem being picked up, causing build failures due to binary incompatibility. This is caused by the `nil` wildcard swallowing the libc information upon version comparison. Handle the linux case by performing only non-wildcard equality on the version and asserting 'gnu' and nil equivalence, while preserving the current behaviour for other OSes. https://github.com/rubygems/rubygems/commit/9eead86abc Co-authored-by: Loic Nageleisen <loic.nageleisen@gmail.com>
2022-08-23[rubygems/rubygems] Test platform's version-ness consistentlyLoic Nageleisen
The symmetry with the "for command line" case is made more apparent. https://github.com/rubygems/rubygems/commit/ab85d3558f
2022-08-09Merge rubygems/bundler HEAD.Hiroshi SHIBATA
Pick from https://github.com/rubygems/rubygems/commit/dfbb5a38114640e0d8d616861607f3de73ee0199 Notes: Merged: https://github.com/ruby/ruby/pull/6224
2022-07-22RubyGems: Enable Style/StringLiterals copTakuya Noguchi
Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
2022-07-13Merge RubyGems and Bundler masterHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/6124
2022-01-19[rubygems/rubygems] Normalize end alignment style with BundlerDavid Rodríguez
https://github.com/rubygems/rubygems/commit/f7f504b24c
2021-09-20MINGW-UCRT: Set CONFIG['arch'] and RUBY_PLATFORM to "x64-mingw-ucrt"Lars Kanis
This allows easy differentiation between ABI incompatible platforms like MSWIN64 and MSVCRT-based MINGW32. This also implicates a distinct rubygem platform which is also "x64-mingw-ucrt". Although the term "mingw32" is the OS-part for 64 bit systems as well, the "32" is misleading and confusing for many users. Therefore the new platform string drops the "32" from the OS part to just "mingw". This conforms to the common practice of windows platform testing per RUBY_PLATFORM=~/mswin|mingw/ . Notes: Merged: https://github.com/ruby/ruby/pull/4599
2021-08-31[rubygems/rubygems] Refactor Ruby platform priority condition to its own methodDaniel Niknam
The `Gem::Platform::RUBY ? -1 : 1` has been used multiple times in different places and could be refactored to a method (DRY). https://github.com/rubygems/rubygems/commit/9d43ca8f0c Notes: Merged: https://github.com/ruby/ruby/pull/4789
2021-08-31[rubygems/rubygems] Prefer `require_relative` to `require` for internal requiresDavid Rodríguez
https://github.com/rubygems/rubygems/commit/c74fc58695 Notes: Merged: https://github.com/ruby/ruby/pull/4789
2021-04-15Merge the master branch of RubyGemsHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/4383
2021-03-08Sync latest development version of bundler & rubygemsDavid Rodríguez
Notes: Merged: https://github.com/ruby/ruby/pull/4143
2020-12-08Merge prepare version of RubyGems 3.2.0Hiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3864
2020-09-23Revert "Manually merged from https://github.com/rubygems/rubygems/pull/2636"Hiroshi SHIBATA
31a6eaabc165d8a222e176f2c809d90622d88ec2 is obsoleted with https://github.com/rubygems/rubygems/pull/3820
2020-09-23Manually merged from https://github.com/rubygems/rubygems/pull/2636Hiroshi SHIBATA
Enable Style/EmptyLinesAroundClassBody rubocop cop.
2020-07-31Enforce no empty lines around class body in rubygemsDavid Rodríguez
To normalize the code style with `bundler`. Notes: Merged: https://github.com/ruby/ruby/pull/3379
2020-06-05Enable rubocop-performance StartWith copOlle Jonsson
- this would keep the could-be-a-string-method matches few Notes: Merged: https://github.com/ruby/ruby/pull/3184