molinillo 0.6.2 → 0.6.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 5b31401d705c0bd1b9839f3b560996af5339a632
4
- data.tar.gz: daabc784cc8a0385da64f2befa949887c70e3502
2
+ SHA256:
3
+ metadata.gz: 36a8427ef2b62c6ea8b07c9c004c8947d886caec5787e6d88a3c7b7cc6fd9bcf
4
+ data.tar.gz: 54571def066fb01940111eee348e5e8321d10fec16267859bd1f34c6dc2eb270
5
5
  SHA512:
6
- metadata.gz: 139afb59678e775ae0e93214dfa78e13f1da4b4e73a42b514ab696818cfa00947e57b16a01b4582dbbc2563c222166c3779e032e899244cebf95f4573259ee7b
7
- data.tar.gz: 708818cffc500e0f686a51e6025d254150408e206d48e176b5fa97d6466bd8efcf3897ab6fc4f21602197e5c1ac56b5f623b796617741451be77f5d182126ca0
6
+ metadata.gz: 92302dd942b745c191e7da508960f6f2c825dcb5562d811c100ccfdeb46d50d2c6b45cf5661c307674ad769d20c0c3e623907a8e3bcdeed80398c4525e84f69d
7
+ data.tar.gz: 747ae65e07e9d925acead649ca211db05eda8ba53b2acf14d0e952deef7e29bd94cac604aedbe948450102df3af74d6d026464e9afbd34a9fe5ebf9b8677ed45
@@ -1,5 +1,21 @@
1
1
  # Molinillo Changelog
2
2
 
3
+ ## 0.6.3 (2017-09-06)
4
+
5
+ ##### Enhancements
6
+
7
+ * None.
8
+
9
+ ##### Bug Fixes
10
+
11
+ * Handle the case where an unwind occurs to a requirement that directly caused
12
+ the current conflict but could also have been unwound to directly from
13
+ previous conflicts. In this case, filtering must not remove any possibilities
14
+ that could have avoided the previous conflicts (even if they would not avoid
15
+ the current one).
16
+ [Grey Baker](https://github.com/greysteil)
17
+
18
+
3
19
  ## 0.6.2 (2017-08-25)
4
20
 
5
21
  ##### Enhancements
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Molinillo
4
4
  # The version of Molinillo.
5
- VERSION = '0.6.2'.freeze
5
+ VERSION = '0.6.3'.freeze
6
6
  end
@@ -461,11 +461,15 @@ module Molinillo
461
461
  # @param [UnwindDetails] details of the conflict just unwound from
462
462
  # @return [void]
463
463
  def filter_possibilities_for_primary_unwind(unwind_details)
464
- all_requirements = unwind_details.conflicting_requirements
464
+ unwinds_to_state = unused_unwind_options.select { |uw| uw.state_index == unwind_details.state_index }
465
+ unwinds_to_state << unwind_details
466
+ unwind_requirement_sets = unwinds_to_state.map(&:conflicting_requirements)
465
467
 
466
468
  state.possibilities.reject! do |possibility_set|
467
469
  possibility_set.possibilities.none? do |poss|
468
- possibility_satisfies_requirements?(poss, all_requirements)
470
+ unwind_requirement_sets.any? do |requirements|
471
+ possibility_satisfies_requirements?(poss, requirements)
472
+ end
469
473
  end
470
474
  end
471
475
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: molinillo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.2
4
+ version: 0.6.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel E. Giddins
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-08-25 00:00:00.000000000 Z
11
+ date: 2017-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -90,9 +90,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
90
90
  version: '0'
91
91
  requirements: []
92
92
  rubyforge_project:
93
- rubygems_version: 2.6.12
93
+ rubygems_version: 2.6.13
94
94
  signing_key:
95
95
  specification_version: 4
96
96
  summary: Provides support for dependency resolution
97
97
  test_files: []
98
- has_rdoc: