rubygems-update 3.4.4 → 3.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/bundler/CHANGELOG.md +11 -0
- data/bundler/lib/bundler/build_metadata.rb +2 -2
- data/bundler/lib/bundler/definition.rb +3 -3
- data/bundler/lib/bundler/man/bundle-exec.1 +4 -4
- data/bundler/lib/bundler/man/bundle-exec.1.ronn +5 -5
- data/bundler/lib/bundler/resolver/base.rb +11 -4
- data/bundler/lib/bundler/resolver.rb +2 -11
- data/bundler/lib/bundler/source/rubygems.rb +1 -1
- data/bundler/lib/bundler/version.rb +1 -1
- data/lib/rubygems.rb +1 -1
- data/rubygems-update.gemspec +1 -1
- data/test/rubygems/test_require.rb +1 -2
- metadata +3 -3
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: e731d4ed24a0a921d89268a3434f7206ff3fd69b60fad4aa4994599453d366af
         | 
| 4 | 
            +
              data.tar.gz: b605f1b59a612e68f947ea8ab1bce26f1e04cd965b0e626b89ac5180b27ebe3f
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 8911316827bae22805af01029490d6dfa2e8b1fe4e67c1e1c753c6d73910b4c91f8ec6cab6c5673ea327f57ce4fe57f06901a894b04c323fe0f5db329d268c34
         | 
| 7 | 
            +
              data.tar.gz: d5d6ff48dd8e598b2930047ea867dfe2560a3a9eacb8183f8da99ba24c4bac54612446b3dc4f9919d55274b52b41758d6aa2b7d96125786608972c5ad6a1ce53
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    
    
        data/bundler/CHANGELOG.md
    CHANGED
    
    | @@ -1,3 +1,14 @@ | |
| 1 | 
            +
            # 2.4.5 (January 21, 2023)
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            ## Bug fixes:
         | 
| 4 | 
            +
             | 
| 5 | 
            +
              - Fix `bundler/inline` not resolving properly if gems not preinstalled [#6282](https://github.com/rubygems/rubygems/pull/6282)
         | 
| 6 | 
            +
              - Fix packages for external platforms being introduced in lockfile when Bundler retries resolution [#6285](https://github.com/rubygems/rubygems/pull/6285)
         | 
| 7 | 
            +
             | 
| 8 | 
            +
            ## Documentation:
         | 
| 9 | 
            +
             | 
| 10 | 
            +
              - Update bundle-exec man page to not use deprecated `Bundler.with_clean_env` [#6284](https://github.com/rubygems/rubygems/pull/6284)
         | 
| 11 | 
            +
             | 
| 1 12 | 
             
            # 2.4.4 (January 16, 2023)
         | 
| 2 13 |  | 
| 3 14 | 
             
            ## Bug fixes:
         | 
| @@ -4,8 +4,8 @@ module Bundler | |
| 4 4 | 
             
              # Represents metadata from when the Bundler gem was built.
         | 
| 5 5 | 
             
              module BuildMetadata
         | 
| 6 6 | 
             
                # begin ivars
         | 
| 7 | 
            -
                @built_at = "2023-01- | 
| 8 | 
            -
                @git_commit_sha = " | 
| 7 | 
            +
                @built_at = "2023-01-21".freeze
         | 
| 8 | 
            +
                @git_commit_sha = "d8ff3b6e4a".freeze
         | 
| 9 9 | 
             
                @release = true
         | 
| 10 10 | 
             
                # end ivars
         | 
| 11 11 |  | 
| @@ -487,7 +487,7 @@ module Bundler | |
| 487 487 | 
             
                end
         | 
| 488 488 |  | 
| 489 489 | 
             
                def expanded_dependencies
         | 
| 490 | 
            -
                   | 
| 490 | 
            +
                  dependencies + metadata_dependencies
         | 
| 491 491 | 
             
                end
         | 
| 492 492 |  | 
| 493 493 | 
             
                def resolution_packages
         | 
| @@ -551,13 +551,13 @@ module Bundler | |
| 551 551 | 
             
                end
         | 
| 552 552 |  | 
| 553 553 | 
             
                def start_resolution
         | 
| 554 | 
            -
                  result = resolver.start | 
| 554 | 
            +
                  result = resolver.start
         | 
| 555 555 |  | 
| 556 556 | 
             
                  SpecSet.new(SpecSet.new(result).for(dependencies, false, @platforms))
         | 
| 557 557 | 
             
                end
         | 
| 558 558 |  | 
| 559 559 | 
             
                def precompute_source_requirements_for_indirect_dependencies?
         | 
| 560 | 
            -
                   | 
| 560 | 
            +
                  sources.non_global_rubygems_sources.all?(&:dependency_api_available?) && !sources.aggregate_global_source?
         | 
| 561 561 | 
             
                end
         | 
| 562 562 |  | 
| 563 563 | 
             
                def pin_locally_available_names(source_requirements)
         | 
| @@ -74,13 +74,13 @@ Finally, \fBbundle exec\fR also implicitly modifies \fBGemfile\.lock\fR if the l | |
| 74 74 | 
             
            By default, when attempting to \fBbundle exec\fR to a file with a ruby shebang, Bundler will \fBKernel\.load\fR that file instead of using \fBKernel\.exec\fR\. For the vast majority of cases, this is a performance improvement\. In a rare few cases, this could cause some subtle side\-effects (such as dependence on the exact contents of \fB$0\fR or \fB__FILE__\fR) and the optimization can be disabled by enabling the \fBdisable_exec_load\fR setting\.
         | 
| 75 75 | 
             
            .
         | 
| 76 76 | 
             
            .SS "Shelling out"
         | 
| 77 | 
            -
            Any Ruby code that opens a subshell (like \fBsystem\fR, backticks, or \fB%x{}\fR) will automatically use the current Bundler environment\. If you need to shell out to a Ruby command that is not part of your current bundle, use the \ | 
| 77 | 
            +
            Any Ruby code that opens a subshell (like \fBsystem\fR, backticks, or \fB%x{}\fR) will automatically use the current Bundler environment\. If you need to shell out to a Ruby command that is not part of your current bundle, use the \fBwith_unbundled_env\fR method with a block\. Any subshells created inside the block will be given the environment present before Bundler was activated\. For example, Homebrew commands run Ruby, but don\'t work inside a bundle:
         | 
| 78 78 | 
             
            .
         | 
| 79 79 | 
             
            .IP "" 4
         | 
| 80 80 | 
             
            .
         | 
| 81 81 | 
             
            .nf
         | 
| 82 82 |  | 
| 83 | 
            -
            Bundler\. | 
| 83 | 
            +
            Bundler\.with_unbundled_env do
         | 
| 84 84 | 
             
              `brew install wget`
         | 
| 85 85 | 
             
            end
         | 
| 86 86 | 
             
            .
         | 
| @@ -89,13 +89,13 @@ end | |
| 89 89 | 
             
            .IP "" 0
         | 
| 90 90 | 
             
            .
         | 
| 91 91 | 
             
            .P
         | 
| 92 | 
            -
            Using \ | 
| 92 | 
            +
            Using \fBwith_unbundled_env\fR is also necessary if you are shelling out to a different bundle\. Any Bundler commands run in a subshell will inherit the current Gemfile, so commands that need to run in the context of a different bundle also need to use \fBwith_unbundled_env\fR\.
         | 
| 93 93 | 
             
            .
         | 
| 94 94 | 
             
            .IP "" 4
         | 
| 95 95 | 
             
            .
         | 
| 96 96 | 
             
            .nf
         | 
| 97 97 |  | 
| 98 | 
            -
            Bundler\. | 
| 98 | 
            +
            Bundler\.with_unbundled_env do
         | 
| 99 99 | 
             
              Dir\.chdir "/other/bundler/project" do
         | 
| 100 100 | 
             
                `bundle exec \./script`
         | 
| 101 101 | 
             
              end
         | 
| @@ -84,20 +84,20 @@ the `disable_exec_load` setting. | |
| 84 84 | 
             
            Any Ruby code that opens a subshell (like `system`, backticks, or `%x{}`) will
         | 
| 85 85 | 
             
            automatically use the current Bundler environment. If you need to shell out to
         | 
| 86 86 | 
             
            a Ruby command that is not part of your current bundle, use the
         | 
| 87 | 
            -
            ` | 
| 87 | 
            +
            `with_unbundled_env` method with a block. Any subshells created inside the block
         | 
| 88 88 | 
             
            will be given the environment present before Bundler was activated. For
         | 
| 89 89 | 
             
            example, Homebrew commands run Ruby, but don't work inside a bundle:
         | 
| 90 90 |  | 
| 91 | 
            -
                Bundler. | 
| 91 | 
            +
                Bundler.with_unbundled_env do
         | 
| 92 92 | 
             
                  `brew install wget`
         | 
| 93 93 | 
             
                end
         | 
| 94 94 |  | 
| 95 | 
            -
            Using ` | 
| 95 | 
            +
            Using `with_unbundled_env` is also necessary if you are shelling out to a different
         | 
| 96 96 | 
             
            bundle. Any Bundler commands run in a subshell will inherit the current
         | 
| 97 97 | 
             
            Gemfile, so commands that need to run in the context of a different bundle also
         | 
| 98 | 
            -
            need to use ` | 
| 98 | 
            +
            need to use `with_unbundled_env`.
         | 
| 99 99 |  | 
| 100 | 
            -
                Bundler. | 
| 100 | 
            +
                Bundler.with_unbundled_env do
         | 
| 101 101 | 
             
                  Dir.chdir "/other/bundler/project" do
         | 
| 102 102 | 
             
                    `bundle exec ./script`
         | 
| 103 103 | 
             
                  end
         | 
| @@ -5,7 +5,7 @@ require_relative "package" | |
| 5 5 | 
             
            module Bundler
         | 
| 6 6 | 
             
              class Resolver
         | 
| 7 7 | 
             
                class Base
         | 
| 8 | 
            -
                  attr_reader :packages, :source_requirements
         | 
| 8 | 
            +
                  attr_reader :packages, :requirements, :source_requirements
         | 
| 9 9 |  | 
| 10 10 | 
             
                  def initialize(source_requirements, dependencies, base, platforms, options)
         | 
| 11 11 | 
             
                    @source_requirements = source_requirements
         | 
| @@ -16,11 +16,18 @@ module Bundler | |
| 16 16 | 
             
                      hash[name] = Package.new(name, platforms, **options)
         | 
| 17 17 | 
             
                    end
         | 
| 18 18 |  | 
| 19 | 
            -
                    dependencies. | 
| 19 | 
            +
                    @requirements = dependencies.map do |dep|
         | 
| 20 | 
            +
                      dep_platforms = dep.gem_platforms(platforms)
         | 
| 21 | 
            +
             | 
| 22 | 
            +
                      # Dependencies scoped to external platforms are ignored
         | 
| 23 | 
            +
                      next if dep_platforms.empty?
         | 
| 24 | 
            +
             | 
| 20 25 | 
             
                      name = dep.name
         | 
| 21 26 |  | 
| 22 | 
            -
                      @packages[name] = Package.new(name,  | 
| 23 | 
            -
             | 
| 27 | 
            +
                      @packages[name] = Package.new(name, dep_platforms, **options.merge(:dependency => dep))
         | 
| 28 | 
            +
             | 
| 29 | 
            +
                      dep
         | 
| 30 | 
            +
                    end.compact
         | 
| 24 31 | 
             
                  end
         | 
| 25 32 |  | 
| 26 33 | 
             
                  def [](name)
         | 
| @@ -21,8 +21,8 @@ module Bundler | |
| 21 21 | 
             
                  @gem_version_promoter = gem_version_promoter
         | 
| 22 22 | 
             
                end
         | 
| 23 23 |  | 
| 24 | 
            -
                def start | 
| 25 | 
            -
                  @requirements = requirements
         | 
| 24 | 
            +
                def start
         | 
| 25 | 
            +
                  @requirements = @base.requirements
         | 
| 26 26 | 
             
                  @packages = @base.packages
         | 
| 27 27 |  | 
| 28 28 | 
             
                  root, logger = setup_solver
         | 
| @@ -331,15 +331,6 @@ module Bundler | |
| 331 331 | 
             
                  to_dependency_hash(requirements, packages).map do |dep_package, dep_constraint|
         | 
| 332 332 | 
             
                    name = dep_package.name
         | 
| 333 333 |  | 
| 334 | 
            -
                    # If a dependency is scoped to a platform different from the current
         | 
| 335 | 
            -
                    # one, we ignore it. However, it may reappear during resolution as a
         | 
| 336 | 
            -
                    # transitive dependency of another package, so we need to reset the
         | 
| 337 | 
            -
                    # package so the proper versions are considered if reintroduced later.
         | 
| 338 | 
            -
                    if dep_package.platforms.empty?
         | 
| 339 | 
            -
                      @packages.delete(name)
         | 
| 340 | 
            -
                      next
         | 
| 341 | 
            -
                    end
         | 
| 342 | 
            -
             | 
| 343 334 | 
             
                    next [dep_package, dep_constraint] if name == "bundler"
         | 
| 344 335 |  | 
| 345 336 | 
             
                    versions = versions_for(dep_package, dep_constraint.range)
         | 
    
        data/lib/rubygems.rb
    CHANGED
    
    
    
        data/rubygems-update.gemspec
    CHANGED
    
    | @@ -2,7 +2,7 @@ | |
| 2 2 |  | 
| 3 3 | 
             
            Gem::Specification.new do |s|
         | 
| 4 4 | 
             
              s.name = "rubygems-update"
         | 
| 5 | 
            -
              s.version = "3.4. | 
| 5 | 
            +
              s.version = "3.4.5"
         | 
| 6 6 | 
             
              s.authors = ["Jim Weirich", "Chad Fowler", "Eric Hodel", "Luis Lavena", "Aaron Patterson", "Samuel Giddins", "André Arko", "Evan Phoenix", "Hiroshi SHIBATA"]
         | 
| 7 7 | 
             
              s.email = ["", "", "drbrain@segment7.net", "luislavena@gmail.com", "aaron@tenderlovemaking.com", "segiddins@segiddins.me", "andre@arko.net", "evan@phx.io", "hsbt@ruby-lang.org"]
         | 
| 8 8 |  | 
| @@ -680,8 +680,7 @@ class TestGemRequire < Gem::TestCase | |
| 680 680 | 
             
                  require "json"
         | 
| 681 681 | 
             
                RUBY
         | 
| 682 682 | 
             
                out = Gem::Util.popen({ "GEM_HOME" => @gemhome }, *ruby_with_rubygems_in_load_path, "-e", cmd)
         | 
| 683 | 
            -
                 | 
| 684 | 
            -
                assert $?.success?
         | 
| 683 | 
            +
                assert_predicate $?, :success?, "Require failed due to #{out}"
         | 
| 685 684 | 
             
              end
         | 
| 686 685 |  | 
| 687 686 | 
             
              private
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: rubygems-update
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 3.4. | 
| 4 | 
            +
              version: 3.4.5
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Jim Weirich
         | 
| @@ -16,7 +16,7 @@ authors: | |
| 16 16 | 
             
            autorequire:
         | 
| 17 17 | 
             
            bindir: bin
         | 
| 18 18 | 
             
            cert_chain: []
         | 
| 19 | 
            -
            date: 2023-01- | 
| 19 | 
            +
            date: 2023-01-21 00:00:00.000000000 Z
         | 
| 20 20 | 
             
            dependencies: []
         | 
| 21 21 | 
             
            description: |-
         | 
| 22 22 | 
             
              A package (also known as a library) contains a set of functionality
         | 
| @@ -834,7 +834,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 834 834 | 
             
                - !ruby/object:Gem::Version
         | 
| 835 835 | 
             
                  version: '0'
         | 
| 836 836 | 
             
            requirements: []
         | 
| 837 | 
            -
            rubygems_version: 3.4. | 
| 837 | 
            +
            rubygems_version: 3.4.5
         | 
| 838 838 | 
             
            signing_key:
         | 
| 839 839 | 
             
            specification_version: 4
         | 
| 840 840 | 
             
            summary: RubyGems is a package management framework for Ruby.
         |