bundler 2.4.2 → 2.4.3
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 +19 -1
- data/lib/bundler/build_metadata.rb +2 -2
- data/lib/bundler/cli/open.rb +6 -4
- data/lib/bundler/cli.rb +1 -0
- data/lib/bundler/definition.rb +8 -3
- data/lib/bundler/dsl.rb +2 -2
- data/lib/bundler/lazy_specification.rb +28 -33
- data/lib/bundler/man/bundle-open.1 +21 -1
- data/lib/bundler/man/bundle-open.1.ronn +9 -1
- data/lib/bundler/resolver/candidate.rb +12 -7
- data/lib/bundler/resolver.rb +6 -5
- data/lib/bundler/templates/newgem/Cargo.toml.tt +1 -1
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb +1 -1
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/version_union.rb +1 -1
- data/lib/bundler/version.rb +1 -1
- 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: 4598d8531bbdd46221e7238ee2aa828683a3e1854e47bf901857f791a01eb969
         | 
| 4 | 
            +
              data.tar.gz: ead0de0789d8d5682c8d58e60da80a245d5710f8358669e544bb915546f3b82c
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 8078880e8f03117e011bedb3150aba2dfc91c271dfd289ed99f0850e5cb8c62c50af5d7c834c2fc224e17ff925f59e237b33141c1b7d9dec3efdaf35b9f353c1
         | 
| 7 | 
            +
              data.tar.gz: 278df46d98c43489e941b788aca7b3cc46358a3ea099987f83c8cdb3b618ed3b0373d7bea590a80620332316d0b12a0bf98f0d02349c55d769174960f5169a45
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,3 +1,21 @@ | |
| 1 | 
            +
            # 2.4.3 (January 6, 2023)
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            ## Enhancements:
         | 
| 4 | 
            +
             | 
| 5 | 
            +
              - Enhance `bundle open` command to allow opening subdir/file of gem [#6146](https://github.com/rubygems/rubygems/pull/6146)
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            ## Bug fixes:
         | 
| 8 | 
            +
             | 
| 9 | 
            +
              - Fix pointing GitHub sources to PRs [#6241](https://github.com/rubygems/rubygems/pull/6241)
         | 
| 10 | 
            +
              - Fix version ranges incorrectly handling platforms [#6240](https://github.com/rubygems/rubygems/pull/6240)
         | 
| 11 | 
            +
              - Cleanup unnecessary gems when removing lockfile platforms [#6234](https://github.com/rubygems/rubygems/pull/6234)
         | 
| 12 | 
            +
              - When auto-removing RUBY platform don't add specific platform if not needed [#6233](https://github.com/rubygems/rubygems/pull/6233)
         | 
| 13 | 
            +
              - Fallback to selecting installable candidates if possible when materializing specs [#6225](https://github.com/rubygems/rubygems/pull/6225)
         | 
| 14 | 
            +
             | 
| 15 | 
            +
            ## Documentation:
         | 
| 16 | 
            +
             | 
| 17 | 
            +
              - Fix several typos [#6224](https://github.com/rubygems/rubygems/pull/6224)
         | 
| 18 | 
            +
             | 
| 1 19 | 
             
            # 2.4.2 (January 1, 2023)
         | 
| 2 20 |  | 
| 3 21 | 
             
            ## Performance:
         | 
| @@ -1518,7 +1536,7 @@ Changes | |
| 1518 1536 |  | 
| 1519 1537 | 
             
              - avoid new RubyGems warning about unsafe YAML loading (to keep output consistent) (@segiddins)
         | 
| 1520 1538 | 
             
              - load digest subclasses in a thread-safe manner (@segiddins, @colby-swandale)
         | 
| 1521 | 
            -
              - avoid  | 
| 1539 | 
            +
              - avoid unused variable warnings under ruby 2.5 (@amatsuda)
         | 
| 1522 1540 | 
             
              - fix printing the same message twice in verbose mode ([#6028](https://github.com/rubygems/bundler/issues/6028), @akhramov)
         | 
| 1523 1541 | 
             
              - allow `SignalException`s to bubble up to the interpreter during `bundle exec` ([#6090](https://github.com/rubygems/bundler/issues/6090), @dekellum)
         | 
| 1524 1542 | 
             
              - avoid activating stdlib digest under Ruby 2.5 (@segiddins)
         | 
| @@ -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-06".freeze
         | 
| 8 | 
            +
                @git_commit_sha = "ed1f27f75c".freeze
         | 
| 9 9 | 
             
                @release = true
         | 
| 10 10 | 
             
                # end ivars
         | 
| 11 11 |  | 
    
        data/lib/bundler/cli/open.rb
    CHANGED
    
    | @@ -2,23 +2,25 @@ | |
| 2 2 |  | 
| 3 3 | 
             
            module Bundler
         | 
| 4 4 | 
             
              class CLI::Open
         | 
| 5 | 
            -
                attr_reader :options, :name
         | 
| 5 | 
            +
                attr_reader :options, :name, :path
         | 
| 6 6 | 
             
                def initialize(options, name)
         | 
| 7 7 | 
             
                  @options = options
         | 
| 8 8 | 
             
                  @name = name
         | 
| 9 | 
            +
                  @path = options[:path] unless options[:path].nil?
         | 
| 9 10 | 
             
                end
         | 
| 10 11 |  | 
| 11 12 | 
             
                def run
         | 
| 13 | 
            +
                  raise InvalidOption, "Cannot specify `--path` option without a value" if !@path.nil? && @path.empty?
         | 
| 12 14 | 
             
                  editor = [ENV["BUNDLER_EDITOR"], ENV["VISUAL"], ENV["EDITOR"]].find {|e| !e.nil? && !e.empty? }
         | 
| 13 15 | 
             
                  return Bundler.ui.info("To open a bundled gem, set $EDITOR or $BUNDLER_EDITOR") unless editor
         | 
| 14 16 | 
             
                  return unless spec = Bundler::CLI::Common.select_spec(name, :regex_match)
         | 
| 15 17 | 
             
                  if spec.default_gem?
         | 
| 16 18 | 
             
                    Bundler.ui.info "Unable to open #{name} because it's a default gem, so the directory it would normally be installed to does not exist."
         | 
| 17 19 | 
             
                  else
         | 
| 18 | 
            -
                     | 
| 19 | 
            -
                    Dir.chdir( | 
| 20 | 
            +
                    root_path = spec.full_gem_path
         | 
| 21 | 
            +
                    Dir.chdir(root_path) do
         | 
| 20 22 | 
             
                      require "shellwords"
         | 
| 21 | 
            -
                      command = Shellwords.split(editor)  | 
| 23 | 
            +
                      command = Shellwords.split(editor) << File.join([root_path, path].compact)
         | 
| 22 24 | 
             
                      Bundler.with_original_env do
         | 
| 23 25 | 
             
                        system(*command)
         | 
| 24 26 | 
             
                      end || Bundler.ui.info("Could not run '#{command.join(" ")}'")
         | 
    
        data/lib/bundler/cli.rb
    CHANGED
    
    | @@ -509,6 +509,7 @@ module Bundler | |
| 509 509 | 
             
                subcommand "config", Config
         | 
| 510 510 |  | 
| 511 511 | 
             
                desc "open GEM", "Opens the source directory of the given bundled gem"
         | 
| 512 | 
            +
                method_option "path", :type => :string, :lazy_default => "", :banner => "Open relative path of the gem source."
         | 
| 512 513 | 
             
                def open(name)
         | 
| 513 514 | 
             
                  require_relative "cli/open"
         | 
| 514 515 | 
             
                  Open.new(options, name).run
         | 
    
        data/lib/bundler/definition.rb
    CHANGED
    
    | @@ -79,6 +79,7 @@ module Bundler | |
| 79 79 | 
             
                  @locked_bundler_version = nil
         | 
| 80 80 | 
             
                  @locked_ruby_version    = nil
         | 
| 81 81 | 
             
                  @new_platform = nil
         | 
| 82 | 
            +
                  @removed_platform = nil
         | 
| 82 83 |  | 
| 83 84 | 
             
                  if lockfile && File.exist?(lockfile)
         | 
| 84 85 | 
             
                    @lockfile_contents = Bundler.read_file(lockfile)
         | 
| @@ -129,7 +130,7 @@ module Bundler | |
| 129 130 | 
             
                  end
         | 
| 130 131 | 
             
                  @unlocking ||= @unlock[:ruby] ||= (!@locked_ruby_version ^ !@ruby_version)
         | 
| 131 132 |  | 
| 132 | 
            -
                  add_current_platform unless  | 
| 133 | 
            +
                  add_current_platform unless Bundler.frozen_bundle?
         | 
| 133 134 |  | 
| 134 135 | 
             
                  converge_path_sources_to_gemspec_sources
         | 
| 135 136 | 
             
                  @path_changes = converge_paths
         | 
| @@ -267,7 +268,7 @@ module Bundler | |
| 267 268 | 
             
                      SpecSet.new(filter_specs(@locked_specs, @dependencies - deleted_deps))
         | 
| 268 269 | 
             
                    else
         | 
| 269 270 | 
             
                      Bundler.ui.debug "Found no changes, using resolution from the lockfile"
         | 
| 270 | 
            -
                      if @locked_gems.may_include_redundant_platform_specific_gems?
         | 
| 271 | 
            +
                      if @removed_platform || @locked_gems.may_include_redundant_platform_specific_gems?
         | 
| 271 272 | 
             
                        SpecSet.new(filter_specs(@locked_specs, @dependencies))
         | 
| 272 273 | 
             
                      else
         | 
| 273 274 | 
             
                        @locked_specs
         | 
| @@ -446,7 +447,9 @@ module Bundler | |
| 446 447 | 
             
                end
         | 
| 447 448 |  | 
| 448 449 | 
             
                def remove_platform(platform)
         | 
| 449 | 
            -
                   | 
| 450 | 
            +
                  removed_platform = @platforms.delete(Gem::Platform.new(platform))
         | 
| 451 | 
            +
                  @removed_platform ||= removed_platform
         | 
| 452 | 
            +
                  return if removed_platform
         | 
| 450 453 | 
             
                  raise InvalidOption, "Unable to remove the platform `#{platform}` since the only platforms are #{@platforms.join ", "}"
         | 
| 451 454 | 
             
                end
         | 
| 452 455 |  | 
| @@ -584,6 +587,8 @@ module Bundler | |
| 584 587 | 
             
                end
         | 
| 585 588 |  | 
| 586 589 | 
             
                def add_current_platform
         | 
| 590 | 
            +
                  return if current_ruby_platform_locked?
         | 
| 591 | 
            +
             | 
| 587 592 | 
             
                  add_platform(local_platform)
         | 
| 588 593 | 
             
                end
         | 
| 589 594 |  | 
    
        data/lib/bundler/dsl.rb
    CHANGED
    
    | @@ -277,8 +277,8 @@ module Bundler | |
| 277 277 | 
             
                    if repo_name =~ GITHUB_PULL_REQUEST_URL
         | 
| 278 278 | 
             
                      {
         | 
| 279 279 | 
             
                        "git" => "https://github.com/#{$1}.git",
         | 
| 280 | 
            -
                        "branch" =>  | 
| 281 | 
            -
                        "ref" =>  | 
| 280 | 
            +
                        "branch" => nil,
         | 
| 281 | 
            +
                        "ref" => "refs/pull/#{$2}/head",
         | 
| 282 282 | 
             
                        "tag" => nil,
         | 
| 283 283 | 
             
                      }
         | 
| 284 284 | 
             
                    else
         | 
| @@ -16,7 +16,6 @@ module Bundler | |
| 16 16 | 
             
                  @dependencies  = []
         | 
| 17 17 | 
             
                  @platform      = platform || Gem::Platform::RUBY
         | 
| 18 18 | 
             
                  @source        = source
         | 
| 19 | 
            -
                  @specification = nil
         | 
| 20 19 | 
             
                  @force_ruby_platform = default_force_ruby_platform
         | 
| 21 20 | 
             
                end
         | 
| 22 21 |  | 
| @@ -80,37 +79,41 @@ module Bundler | |
| 80 79 | 
             
                def materialize_for_installation
         | 
| 81 80 | 
             
                  source.local!
         | 
| 82 81 |  | 
| 83 | 
            -
                   | 
| 84 | 
            -
             | 
| 82 | 
            +
                  matching_specs = source.specs.search(use_exact_resolved_specifications? ? self : [name, version])
         | 
| 83 | 
            +
                  return self if matching_specs.empty?
         | 
| 85 84 |  | 
| 86 | 
            -
             | 
| 85 | 
            +
                  candidates = if use_exact_resolved_specifications?
         | 
| 86 | 
            +
                    matching_specs
         | 
| 87 87 | 
             
                  else
         | 
| 88 | 
            -
                     | 
| 89 | 
            -
                  end
         | 
| 88 | 
            +
                    target_platform = ruby_platform_materializes_to_ruby_platform? ? platform : local_platform
         | 
| 90 89 |  | 
| 91 | 
            -
             | 
| 90 | 
            +
                    installable_candidates = GemHelpers.select_best_platform_match(matching_specs, target_platform)
         | 
| 92 91 |  | 
| 93 | 
            -
             | 
| 94 | 
            -
             | 
| 92 | 
            +
                    specification = __materialize__(installable_candidates)
         | 
| 93 | 
            +
                    return specification unless specification.nil?
         | 
| 95 94 |  | 
| 96 | 
            -
             | 
| 97 | 
            -
             | 
| 98 | 
            -
                    search = candidates.reverse.find do |spec|
         | 
| 99 | 
            -
                      spec.is_a?(StubSpecification) ||
         | 
| 100 | 
            -
                        (spec.matches_current_ruby? &&
         | 
| 101 | 
            -
                          spec.matches_current_rubygems?)
         | 
| 102 | 
            -
                    end
         | 
| 103 | 
            -
                    if search.nil? && Bundler.frozen_bundle?
         | 
| 104 | 
            -
                      search = candidates.last
         | 
| 105 | 
            -
                    else
         | 
| 106 | 
            -
                      search.dependencies = dependencies if search && search.full_name == full_name && (search.is_a?(RemoteSpecification) || search.is_a?(EndpointSpecification))
         | 
| 95 | 
            +
                    if target_platform != platform
         | 
| 96 | 
            +
                      installable_candidates = GemHelpers.select_best_platform_match(matching_specs, platform)
         | 
| 107 97 | 
             
                    end
         | 
| 108 | 
            -
             | 
| 98 | 
            +
             | 
| 99 | 
            +
                    installable_candidates
         | 
| 109 100 | 
             
                  end
         | 
| 101 | 
            +
             | 
| 102 | 
            +
                  __materialize__(candidates)
         | 
| 110 103 | 
             
                end
         | 
| 111 104 |  | 
| 112 | 
            -
                def  | 
| 113 | 
            -
                   | 
| 105 | 
            +
                def __materialize__(candidates)
         | 
| 106 | 
            +
                  search = candidates.reverse.find do |spec|
         | 
| 107 | 
            +
                    spec.is_a?(StubSpecification) ||
         | 
| 108 | 
            +
                      (spec.matches_current_ruby? &&
         | 
| 109 | 
            +
                        spec.matches_current_rubygems?)
         | 
| 110 | 
            +
                  end
         | 
| 111 | 
            +
                  if search.nil? && Bundler.frozen_bundle?
         | 
| 112 | 
            +
                    search = candidates.last
         | 
| 113 | 
            +
                  else
         | 
| 114 | 
            +
                    search.dependencies = dependencies if search && search.full_name == full_name && (search.is_a?(RemoteSpecification) || search.is_a?(EndpointSpecification))
         | 
| 115 | 
            +
                  end
         | 
| 116 | 
            +
                  search
         | 
| 114 117 | 
             
                end
         | 
| 115 118 |  | 
| 116 119 | 
             
                def to_s
         | 
| @@ -132,16 +135,8 @@ module Bundler | |
| 132 135 |  | 
| 133 136 | 
             
                private
         | 
| 134 137 |  | 
| 135 | 
            -
                def  | 
| 136 | 
            -
                   | 
| 137 | 
            -
                end
         | 
| 138 | 
            -
             | 
| 139 | 
            -
                def method_missing(method, *args, &blk)
         | 
| 140 | 
            -
                  raise "LazySpecification has not been materialized yet (calling :#{method} #{args.inspect})" unless @specification
         | 
| 141 | 
            -
             | 
| 142 | 
            -
                  return super unless respond_to?(method)
         | 
| 143 | 
            -
             | 
| 144 | 
            -
                  @specification.send(method, *args, &blk)
         | 
| 138 | 
            +
                def use_exact_resolved_specifications?
         | 
| 139 | 
            +
                  @use_exact_resolved_specifications ||= !source.is_a?(Source::Path) && ruby_platform_materializes_to_ruby_platform?
         | 
| 145 140 | 
             
                end
         | 
| 146 141 |  | 
| 147 142 | 
             
                #
         | 
| @@ -7,7 +7,7 @@ | |
| 7 7 | 
             
            \fBbundle\-open\fR \- Opens the source directory for a gem in your bundle
         | 
| 8 8 | 
             
            .
         | 
| 9 9 | 
             
            .SH "SYNOPSIS"
         | 
| 10 | 
            -
            \fBbundle open\fR [GEM]
         | 
| 10 | 
            +
            \fBbundle open\fR [GEM] [\-\-path=PATH]
         | 
| 11 11 | 
             
            .
         | 
| 12 12 | 
             
            .SH "DESCRIPTION"
         | 
| 13 13 | 
             
            Opens the source directory of the provided GEM in your editor\.
         | 
| @@ -30,3 +30,23 @@ bundle open \'rack\' | |
| 30 30 | 
             
            .
         | 
| 31 31 | 
             
            .P
         | 
| 32 32 | 
             
            Will open the source directory for the \'rack\' gem in your bundle\.
         | 
| 33 | 
            +
            .
         | 
| 34 | 
            +
            .IP "" 4
         | 
| 35 | 
            +
            .
         | 
| 36 | 
            +
            .nf
         | 
| 37 | 
            +
             | 
| 38 | 
            +
            bundle open \'rack\' \-\-path \'README\.md\'
         | 
| 39 | 
            +
            .
         | 
| 40 | 
            +
            .fi
         | 
| 41 | 
            +
            .
         | 
| 42 | 
            +
            .IP "" 0
         | 
| 43 | 
            +
            .
         | 
| 44 | 
            +
            .P
         | 
| 45 | 
            +
            Will open the README\.md file of the \'rack\' gem source in your bundle\.
         | 
| 46 | 
            +
            .
         | 
| 47 | 
            +
            .SH "OPTIONS"
         | 
| 48 | 
            +
            .
         | 
| 49 | 
            +
            .TP
         | 
| 50 | 
            +
            \fB\-\-path\fR
         | 
| 51 | 
            +
            Specify GEM source relative path to open\.
         | 
| 52 | 
            +
             | 
| @@ -3,7 +3,7 @@ bundle-open(1) -- Opens the source directory for a gem in your bundle | |
| 3 3 |  | 
| 4 4 | 
             
            ## SYNOPSIS
         | 
| 5 5 |  | 
| 6 | 
            -
            `bundle open` [GEM]
         | 
| 6 | 
            +
            `bundle open` [GEM] [--path=PATH]
         | 
| 7 7 |  | 
| 8 8 | 
             
            ## DESCRIPTION
         | 
| 9 9 |  | 
| @@ -17,3 +17,11 @@ Example: | |
| 17 17 | 
             
                bundle open 'rack'
         | 
| 18 18 |  | 
| 19 19 | 
             
            Will open the source directory for the 'rack' gem in your bundle.
         | 
| 20 | 
            +
             | 
| 21 | 
            +
                bundle open 'rack' --path 'README.md'
         | 
| 22 | 
            +
             | 
| 23 | 
            +
            Will open the README.md file of the 'rack' gem source in your bundle.
         | 
| 24 | 
            +
             | 
| 25 | 
            +
            ## OPTIONS
         | 
| 26 | 
            +
            * `--path`:
         | 
| 27 | 
            +
              Specify GEM source relative path to open.
         | 
| @@ -41,6 +41,18 @@ module Bundler | |
| 41 41 | 
             
                    @spec_group.to_specs(package.force_ruby_platform?)
         | 
| 42 42 | 
             
                  end
         | 
| 43 43 |  | 
| 44 | 
            +
                  def generic!
         | 
| 45 | 
            +
                    @ruby_only = true
         | 
| 46 | 
            +
             | 
| 47 | 
            +
                    self
         | 
| 48 | 
            +
                  end
         | 
| 49 | 
            +
             | 
| 50 | 
            +
                  def platform_specific!
         | 
| 51 | 
            +
                    @ruby_only = false
         | 
| 52 | 
            +
             | 
| 53 | 
            +
                    self
         | 
| 54 | 
            +
                  end
         | 
| 55 | 
            +
             | 
| 44 56 | 
             
                  def prerelease?
         | 
| 45 57 | 
             
                    @version.prerelease?
         | 
| 46 58 | 
             
                  end
         | 
| @@ -53,27 +65,20 @@ module Bundler | |
| 53 65 | 
             
                    [@version, @ruby_only ? -1 : 1]
         | 
| 54 66 | 
             
                  end
         | 
| 55 67 |  | 
| 56 | 
            -
                  def canonical?
         | 
| 57 | 
            -
                    !@spec_group.empty?
         | 
| 58 | 
            -
                  end
         | 
| 59 | 
            -
             | 
| 60 68 | 
             
                  def <=>(other)
         | 
| 61 69 | 
             
                    return unless other.is_a?(self.class)
         | 
| 62 | 
            -
                    return @version <=> other.version unless canonical? && other.canonical?
         | 
| 63 70 |  | 
| 64 71 | 
             
                    sort_obj <=> other.sort_obj
         | 
| 65 72 | 
             
                  end
         | 
| 66 73 |  | 
| 67 74 | 
             
                  def ==(other)
         | 
| 68 75 | 
             
                    return unless other.is_a?(self.class)
         | 
| 69 | 
            -
                    return @version == other.version unless canonical? && other.canonical?
         | 
| 70 76 |  | 
| 71 77 | 
             
                    sort_obj == other.sort_obj
         | 
| 72 78 | 
             
                  end
         | 
| 73 79 |  | 
| 74 80 | 
             
                  def eql?(other)
         | 
| 75 81 | 
             
                    return unless other.is_a?(self.class)
         | 
| 76 | 
            -
                    return @version.eql?(other.version) unless canonical? || other.canonical?
         | 
| 77 82 |  | 
| 78 83 | 
             
                    sort_obj.eql?(other.sort_obj)
         | 
| 79 84 | 
             
                  end
         | 
    
        data/lib/bundler/resolver.rb
    CHANGED
    
    | @@ -337,7 +337,8 @@ module Bundler | |
| 337 337 |  | 
| 338 338 | 
             
                def requirement_to_range(requirement)
         | 
| 339 339 | 
             
                  ranges = requirement.requirements.map do |(op, version)|
         | 
| 340 | 
            -
                    ver = Resolver::Candidate.new(version)
         | 
| 340 | 
            +
                    ver = Resolver::Candidate.new(version).generic!
         | 
| 341 | 
            +
                    platform_ver = Resolver::Candidate.new(version).platform_specific!
         | 
| 341 342 |  | 
| 342 343 | 
             
                    case op
         | 
| 343 344 | 
             
                    when "~>"
         | 
| @@ -345,17 +346,17 @@ module Bundler | |
| 345 346 | 
             
                      bump = Resolver::Candidate.new(version.bump.to_s + ".A")
         | 
| 346 347 | 
             
                      PubGrub::VersionRange.new(:name => name, :min => ver, :max => bump, :include_min => true)
         | 
| 347 348 | 
             
                    when ">"
         | 
| 348 | 
            -
                      PubGrub::VersionRange.new(:min =>  | 
| 349 | 
            +
                      PubGrub::VersionRange.new(:min => platform_ver)
         | 
| 349 350 | 
             
                    when ">="
         | 
| 350 351 | 
             
                      PubGrub::VersionRange.new(:min => ver, :include_min => true)
         | 
| 351 352 | 
             
                    when "<"
         | 
| 352 353 | 
             
                      PubGrub::VersionRange.new(:max => ver)
         | 
| 353 354 | 
             
                    when "<="
         | 
| 354 | 
            -
                      PubGrub::VersionRange.new(:max =>  | 
| 355 | 
            +
                      PubGrub::VersionRange.new(:max => platform_ver, :include_max => true)
         | 
| 355 356 | 
             
                    when "="
         | 
| 356 | 
            -
                      PubGrub::VersionRange.new(:min => ver, :max =>  | 
| 357 | 
            +
                      PubGrub::VersionRange.new(:min => ver, :max => platform_ver, :include_min => true, :include_max => true)
         | 
| 357 358 | 
             
                    when "!="
         | 
| 358 | 
            -
                      PubGrub::VersionRange.new(:min => ver, :max =>  | 
| 359 | 
            +
                      PubGrub::VersionRange.new(:min => ver, :max => platform_ver, :include_min => true, :include_max => true).invert
         | 
| 359 360 | 
             
                    else
         | 
| 360 361 | 
             
                      raise "bad version specifier: #{op}"
         | 
| 361 362 | 
             
                    end
         | 
| @@ -1,5 +1,5 @@ | |
| 1 1 | 
             
            # This Cargo.toml is here to let externals tools (IDEs, etc.) know that this is
         | 
| 2 | 
            -
            # a Rust project. Your extensions  | 
| 2 | 
            +
            # a Rust project. Your extensions dependencies should be added to the Cargo.toml
         | 
| 3 3 | 
             
            # in the ext/ directory.
         | 
| 4 4 |  | 
| 5 5 | 
             
            [workspace]
         | 
| @@ -148,7 +148,7 @@ module Bundler::PubGrub | |
| 148 148 | 
             
                  while !ranges.empty?
         | 
| 149 149 | 
             
                    ne = []
         | 
| 150 150 | 
             
                    range = ranges.shift
         | 
| 151 | 
            -
                    while !ranges.empty? && ranges[0].min == range.max
         | 
| 151 | 
            +
                    while !ranges.empty? && ranges[0].min.to_s == range.max.to_s
         | 
| 152 152 | 
             
                      ne << range.max
         | 
| 153 153 | 
             
                      range = range.span(ranges.shift)
         | 
| 154 154 | 
             
                    end
         | 
    
        data/lib/bundler/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: bundler
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 2.4. | 
| 4 | 
            +
              version: 2.4.3
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - André Arko
         | 
| @@ -22,7 +22,7 @@ authors: | |
| 22 22 | 
             
            autorequire:
         | 
| 23 23 | 
             
            bindir: exe
         | 
| 24 24 | 
             
            cert_chain: []
         | 
| 25 | 
            -
            date: 2023-01- | 
| 25 | 
            +
            date: 2023-01-06 00:00:00.000000000 Z
         | 
| 26 26 | 
             
            dependencies: []
         | 
| 27 27 | 
             
            description: Bundler manages an application's dependencies through its entire life,
         | 
| 28 28 | 
             
              across many machines, systematically and repeatably
         | 
| @@ -380,7 +380,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 380 380 | 
             
                - !ruby/object:Gem::Version
         | 
| 381 381 | 
             
                  version: 3.0.1
         | 
| 382 382 | 
             
            requirements: []
         | 
| 383 | 
            -
            rubygems_version: 3.4. | 
| 383 | 
            +
            rubygems_version: 3.4.3
         | 
| 384 384 | 
             
            signing_key:
         | 
| 385 385 | 
             
            specification_version: 4
         | 
| 386 386 | 
             
            summary: The best way to manage your application's dependencies
         |