libyear-bundler 0.6.1 → 0.7.0

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: e9b6ae5fa040a91add039ed6d36fd2a6f3084a42efe9adfa1207fdad342ae6b9
4
- data.tar.gz: dc93d875dcf16eb18c20bb09bbc8ed38efb1866b49d3b6fe3b721be3d78f009a
3
+ metadata.gz: e4f90004a4a8f93453f73361a0e3415344017e83f55d10d625b0a3b69f1db74b
4
+ data.tar.gz: 55d91c831ae79f5b44c6de0bcd2f68e550590d73d5004646c1da0163abbcebea
5
5
  SHA512:
6
- metadata.gz: ef8e98ac272c82f87634523708d44d0e805d571909c4e68b57be3e760780b13b345b6d1fbe09222dc41aedebcfd47105e6cea4baae13555b693a9ba0ec90a3fb
7
- data.tar.gz: b06125191e905323a3d43098306899be8e48f7dff79df11b62f8a1d9865311ce6d8048c50706316543b8eb3fcb3b925d55d6ba9e7170019cd0a4894d4fb9af45
6
+ metadata.gz: e3b1346dbdc4986e539fba595f18e01a46fd03d647210b34a6810e2bd9ae61028ffa00eae7e4e2c4088f524368a2cc74950f5d79610ab6aa2bd93d5c4cdd9e6a
7
+ data.tar.gz: 2196cc0fe1a16f2fd9ea4646eb7d07a227d58f07dc5f2cca3724c8ae4b08d4386adbdbc51f3364f2891745e7202b106348dabefed1734a6eb3b11c38823e4f17
@@ -26,7 +26,7 @@ module LibyearBundler
26
26
  if @options.grand_total?
27
27
  grand_total
28
28
  else
29
- print report.to_s
29
+ report.write
30
30
  end
31
31
 
32
32
  # Update cache
@@ -73,7 +73,7 @@ module LibyearBundler
73
73
  end
74
74
 
75
75
  def report
76
- @_report ||= Report.new(bundle_outdated, ruby, @options)
76
+ @_report ||= Report.new(bundle_outdated, ruby, @options, $stdout)
77
77
  end
78
78
 
79
79
  def ruby
@@ -176,18 +176,20 @@ module LibyearBundler
176
176
  def version_from_bundler
177
177
  return unless File.exist?(@lockfile)
178
178
  ruby_version_string = ::Bundler::LockfileParser
179
- .new(@lockfile)
179
+ .new(::File.read(@lockfile))
180
180
  .ruby_version
181
181
  return if ruby_version_string.nil?
182
-
183
182
  ::Bundler::RubyVersion.from_string(ruby_version_string).gem_version
184
183
  end
185
184
 
186
- # TODO: this path should probably be relative to `@lockfile` instead
187
- # TODO: of being relative to the current working directory.
188
185
  def version_from_ruby_version_file
189
- return unless ::File.exist?('.ruby-version')
190
- ::Gem::Version.new(::File.read('.ruby-version').strip)
186
+ version_file = File.join(File.dirname(@lockfile), '.ruby-version')
187
+ return unless File.exist?(version_file)
188
+
189
+ version_string = File.read(version_file).strip
190
+ version = version_string.split('-', 2).last
191
+
192
+ ::Gem::Version.new(version) if version
191
193
  end
192
194
 
193
195
  def version_from_ruby
@@ -9,13 +9,14 @@ module LibyearBundler
9
9
 
10
10
  # `gems` - Array of `::LibyearBundler::Models::Gem` instances
11
11
  # `options` - Instance of `::LibyearBundler::Options`
12
- def initialize(gems, ruby, options)
12
+ def initialize(gems, ruby, options, io)
13
13
  @gems = gems
14
14
  @ruby = ruby
15
15
  @options = options
16
+ @io = io
16
17
  end
17
18
 
18
- def to_s
19
+ def write
19
20
  to_h[:gems].each { |gem| put_line_summary(gem) }
20
21
 
21
22
  begin
@@ -72,7 +73,7 @@ module LibyearBundler
72
73
  meta << libyears
73
74
  end
74
75
 
75
- puts meta
76
+ @io.puts meta
76
77
  end
77
78
 
78
79
  def meta_line_summary(gem_or_ruby)
@@ -87,11 +88,11 @@ module LibyearBundler
87
88
  end
88
89
 
89
90
  def put_libyear_summary(sum_libyears)
90
- puts format("System is %.1f libyears behind", sum_libyears)
91
+ @io.puts format("System is %.1f libyears behind", sum_libyears)
91
92
  end
92
93
 
93
94
  def put_version_delta_summary(sum_major_version, sum_minor_version, sum_patch_version)
94
- puts format(
95
+ @io.puts format(
95
96
  "Major, minor, patch versions behind: %<major>d, %<minor>d, %<patch>d",
96
97
  major: sum_major_version || 0,
97
98
  minor: sum_minor_version || 0,
@@ -100,7 +101,7 @@ module LibyearBundler
100
101
  end
101
102
 
102
103
  def put_sum_seq_delta_summary(sum_seq_delta)
103
- puts format(
104
+ @io.puts format(
104
105
  "Total releases behind: %<seq_delta>d",
105
106
  seq_delta: sum_seq_delta || 0
106
107
  )
@@ -130,11 +131,15 @@ module LibyearBundler
130
131
 
131
132
  def increment_libyears(model, memo)
132
133
  memo[:sum_libyears] += model.libyears
134
+ rescue StandardError => e
135
+ warn "Unable to calculate libyears for #{model.name}: #{e}"
133
136
  end
134
137
 
135
138
  def increment_seq_deltas(model, memo)
136
139
  memo[:sum_seq_delta] ||= 0
137
140
  memo[:sum_seq_delta] += model.version_sequence_delta
141
+ rescue StandardError => e
142
+ warn "Unable to calculate seq deltas for #{model.name}: #{e}"
138
143
  end
139
144
 
140
145
  def increment_version_deltas(model, memo)
@@ -144,6 +149,8 @@ module LibyearBundler
144
149
  memo[:sum_minor_version] += model.version_number_delta[1]
145
150
  memo[:sum_patch_version] ||= 0
146
151
  memo[:sum_patch_version] += model.version_number_delta[2]
152
+ rescue StandardError => e
153
+ warn "Unable to calculate version deltas for #{model.name}: #{e}"
147
154
  end
148
155
  end
149
156
  end
@@ -1,3 +1,3 @@
1
1
  module LibyearBundler
2
- VERSION = "0.6.1".freeze
2
+ VERSION = "0.7.0".freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: libyear-bundler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.1
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jared Beck
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-05-02 00:00:00.000000000 Z
11
+ date: 2024-05-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler