ssl_poler 0.1.0 → 0.1.1

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
2
  SHA256:
3
- metadata.gz: 72c6050edf8b45ecd96024cb4e23cdef79a2a40dd8049b948e930216a9fc3c2e
4
- data.tar.gz: b821b1b3a5b196659604e1c7f37d47892f054c2314b668bc9ae697a7c46a3fb0
3
+ metadata.gz: a6581595d887e24993a0e4ad3d61d4bf27b5e34310db6a45cc0dbe541f468630
4
+ data.tar.gz: b4f2104cce1a86b2dbbf5eb319674eb2aec9fc66f0b26d40ee05d86cb7c6f325
5
5
  SHA512:
6
- metadata.gz: fbf98f664330dfd12c41fc5ad7a193802da66594bc9f47d7c848d4296212b4141f8e1d2b6e736d4f7fcc600d4e29d93b661eff40f29de84dd2578860ef5f6608
7
- data.tar.gz: d46b5fab78315ddf3816fcc95e2575386984ca157f1eddff2d9af5e348314e517be6ac41acd9bbd65be2c5938c35e497b5a68f471881beffcfc70c4e540a8ce9
6
+ metadata.gz: a40ad7f40d94e0a147311408e15c1f172fa4feee071b02bb2e08433c6608749b376a94a3ae601453e6510164f09c3200ee08730eca6f7fc99917173fa9f290c8
7
+ data.tar.gz: 925a8c0611f9da273298a8bbb0083b530c9ec7efa7c12979daacfe47720a423624733927b1d8d333daa576898858659cb15fddde17a861d30d027fc3e5fbdbed
data/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.1.1] - 2025-10-15
4
+
5
+ ### Added
6
+ - Summary table displaying all checked URLs with their SSL status and expiry dates
7
+ - Enhanced report readability with tabular format
8
+
9
+ ### Changed
10
+ - Improved summary section with detailed table view of all certificates
11
+
3
12
  ## [0.1.0] - 2025-10-13
4
13
 
5
14
  - Initial release
data/README.md CHANGED
@@ -100,6 +100,15 @@ Summary:
100
100
  Expiring Soon: 1
101
101
  Expired: 0
102
102
  Errors: 0
103
+
104
+ -----------------------------------------------------------------------
105
+ Name | URL | Status | Expiry Date
106
+ -----------------------------------------------------------------------
107
+ example.com | https://example.com | OK | 2025-02-15
108
+ google.com | https://google.com | WARNING | 2025-01-20
109
+ GitHub | https://github.com | OK | 2025-06-10
110
+ Ruby Gems | https://rubygems.org | OK | 2025-08-30
111
+ -----------------------------------------------------------------------
103
112
  ================================================================================
104
113
  ```
105
114
 
data/lib/ssl_poler/cli.rb CHANGED
@@ -155,7 +155,53 @@ module SslPoler
155
155
  puts " Expiring Soon: #{expiring_soon}"
156
156
  puts " Expired: #{expired}"
157
157
  puts " Errors: #{errors}"
158
+ puts ""
159
+ display_summary_table(results)
158
160
  puts "=" * 80
159
161
  end
162
+
163
+ def display_summary_table(results)
164
+ # Calculate column widths
165
+ max_name_width = [results.map { |r| r[:name].to_s.length }.max || 4, 20].min
166
+ max_url_width = [results.map { |r| r[:url].to_s.length }.max || 3, 40].min
167
+ status_width = 10
168
+ expiry_width = 19
169
+
170
+ # Print header
171
+ puts " " + "-" * (max_name_width + max_url_width + status_width + expiry_width + 10)
172
+ printf(" %-#{max_name_width}s | %-#{max_url_width}s | %-#{status_width}s | %-#{expiry_width}s\n",
173
+ "Name", "URL", "Status", "Expiry Date")
174
+ puts " " + "-" * (max_name_width + max_url_width + status_width + expiry_width + 10)
175
+
176
+ # Print rows
177
+ results.each do |result|
178
+ name = result[:name].to_s.length > max_name_width ?
179
+ result[:name].to_s[0...(max_name_width-3)] + "..." :
180
+ result[:name].to_s
181
+
182
+ url = result[:url].to_s.length > max_url_width ?
183
+ result[:url].to_s[0...(max_url_width-3)] + "..." :
184
+ result[:url].to_s
185
+
186
+ if result[:error]
187
+ status = "ERROR"
188
+ expiry = "N/A"
189
+ elsif result[:expired]
190
+ status = "EXPIRED"
191
+ expiry = result[:not_after].strftime("%Y-%m-%d")
192
+ elsif result[:expires_soon]
193
+ status = "WARNING"
194
+ expiry = result[:not_after].strftime("%Y-%m-%d")
195
+ else
196
+ status = "OK"
197
+ expiry = result[:not_after].strftime("%Y-%m-%d")
198
+ end
199
+
200
+ printf(" %-#{max_name_width}s | %-#{max_url_width}s | %-#{status_width}s | %-#{expiry_width}s\n",
201
+ name, url, status, expiry)
202
+ end
203
+
204
+ puts " " + "-" * (max_name_width + max_url_width + status_width + expiry_width + 10)
205
+ end
160
206
  end
161
207
  end
@@ -1,3 +1,3 @@
1
1
  module SslPoler
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ssl_poler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michail Pantelelis