pub_grub 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 35ae2080ad05322250f9908df76885b83bc1b2578202fccb33c13457bd570925
4
- data.tar.gz: 0dc16b3c3e66f06548a51fa03876090d070c67821e43e6c552789e881dd8feab
3
+ metadata.gz: 642375a06f7dfaeb135540d21df24c7ce5f88cd531129207fd0fcfbc83959f6d
4
+ data.tar.gz: ba4089a2a03066e6d870bf59a8db5f946faf6021b80185f12a19de5909ef0089
5
5
  SHA512:
6
- metadata.gz: e86e819b78f3b6a6e94ec3379f0cc4b61e827cbabd16940eb070156cef6b02b9333a3166616e82fe4efb9b3661c25918ed00641a8a8967550dd3315b1c7d2e7c
7
- data.tar.gz: 441598b506f2d4d418bb9976911f248f86b1ccc1c1a13127ee9e5f8d8f408469ec48ea7c58b1356fdc9ff9f7c78eba9a266af9db7580bf24457d82465f8e878b
6
+ metadata.gz: 78e1a7ebc65582bcce5665b601d11850183b25eb4634cb3cf1c81057a7e1b8c52ca7e229ada3ca48e368bc5f1152d7572dedaf46d1eda2a0c9738e14174583c4
7
+ data.tar.gz: 0053dd74681d77f8936db09ba631b3aed9676f45bb12bd8f9555667ca7f450c2780c469294f9e03922c042f6b42979bc18a644df31bd595bffdaa0e549fc6c1c
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- pub_grub (0.3.0)
4
+ pub_grub (0.3.1)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -46,6 +46,10 @@ module PubGrub
46
46
  def invert
47
47
  VersionRange.any
48
48
  end
49
+
50
+ def select_versions(_)
51
+ []
52
+ end
49
53
  end
50
54
 
51
55
  def self.empty
@@ -75,6 +79,29 @@ module PubGrub
75
79
  compare_version(version) == 0
76
80
  end
77
81
 
82
+ # Returns verisons which are included by this range.
83
+ #
84
+ # versions must be sorted
85
+ def select_versions(versions)
86
+ if min
87
+ if include_min?
88
+ versions = versions.drop_while { |v| v < min }
89
+ else
90
+ versions = versions.drop_while { |v| v <= min }
91
+ end
92
+ end
93
+
94
+ if max
95
+ if include_max?
96
+ versions = versions.take_while { |v| v <= max }
97
+ else
98
+ versions = versions.take_while { |v| v < max }
99
+ end
100
+ end
101
+
102
+ versions
103
+ end
104
+
78
105
  def compare_version(version)
79
106
  if min
80
107
  case version <=> min
@@ -52,6 +52,12 @@ module PubGrub
52
52
  !!ranges.bsearch {|r| r.compare_version(version) }
53
53
  end
54
54
 
55
+ def select_versions(versions)
56
+ ranges.flat_map do |range|
57
+ range.select_versions(versions)
58
+ end
59
+ end
60
+
55
61
  def intersects?(other)
56
62
  my_ranges = ranges.dup
57
63
  other_ranges =
data/pub_grub.gemspec CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "pub_grub"
7
- spec.version = "0.3.0"
7
+ spec.version = "0.3.1"
8
8
  spec.authors = ["John Hawthorn"]
9
9
  spec.email = ["john@hawthorn.email"]
10
10
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pub_grub
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Hawthorn
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-11-26 00:00:00.000000000 Z
11
+ date: 2018-12-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler