jekyll-link-checker 0.2.1 → 0.2.2

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/link-checker.rb +37 -21
  3. data/lib/version.rb +1 -1
  4. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cbdfb6579238266d9bcc8efb81b863213cfcae7cd020848cb52a29b4ff1b2b24
4
- data.tar.gz: f804c86405be527c8a5cee544b59ca4438acd7066f091043ddad9d3d554882ba
3
+ metadata.gz: 01f23b2d446c6bdf94e74a381754a960c3eb392c1b9db5feb13270e08d0c2a9d
4
+ data.tar.gz: 51da2d5886173b96927bdde66dd89253186241ad1d68fbd94c45bd127deb6423
5
5
  SHA512:
6
- metadata.gz: 45ecbf2a94f752ee90de655afe9090890e89f44e564df4e4cf6db405bb089900954fd80df6ba0bcd82a03eeb7ade3d4d073bc6619b63c52c622a7e92e461ed62
7
- data.tar.gz: 516e1caacf824869ac801aa0adadb173405bc3515d5c352b43021743d041d69746321452fad86ab148f988bcedeae15fd05a5e8c7ef94a5f800daab4a00f8f5b
6
+ metadata.gz: 48598dbc05e15090eb67baa58af5f1f6d6de52c7affafae89be6a48acf928895b81abc762c51f7095a9a34989234910abf821983b293173378c5e7bd5a689a9c
7
+ data.tar.gz: 4271bad2dab2adb222795fca82f6a2cc6f7c31ca43fcfd38b27f8ed54f616e988872575e95bc2fcd117ed5d1ef8915a36d8e7d8fc294008da83cb4fdb668fabb
data/lib/link-checker.rb CHANGED
@@ -153,35 +153,47 @@ class LinkChecker
153
153
  end
154
154
  else
155
155
  error = true
156
- puts "Invalid internal link '#{link}' is present in:"
156
+ puts "Invalid internal link '#{uri}' is present in:"
157
157
  fragments.flat_map { |_, files| files }.uniq
158
158
  .each { |file| puts "\t#{file}" }
159
159
  end
160
160
  elsif fragments.keys == [nil]
161
- status = make_request(conn, uri)
162
- error = !status_allowed?(status)
163
- if error
164
- puts "Request to #{uri} returned #{status} present in"
161
+ begin
162
+ status = make_request(conn, uri)
163
+ error = !status_allowed?(status)
164
+ if error
165
+ puts "Request to #{uri} returned #{status} present in"
166
+ fragments[nil].each { |file| puts "\t#{file}" }
167
+ end
168
+ rescue StandardError => e
169
+ puts "Request to #{uri} produced the error #{e.class} present in"
165
170
  fragments[nil].each { |file| puts "\t#{file}" }
171
+ puts e.message, "\n"
166
172
  end
167
173
  else
168
- response = get_request(conn, uri)
169
- status = response.status
170
- if status == 200
171
- valid_fragments = uniq_string_matches(response.body, ID)
172
- fragments.each do |fragment, files|
173
- unless valid_fragments.include?(fragment)
174
- puts "Invalid link to fragment '#{fragment}' present in: "
175
- files.each { |file| puts "\t#{file}" }
174
+ begin
175
+ response = get_request(conn, uri)
176
+ status = response.status
177
+ if status == 200
178
+ valid_fragments = uniq_string_matches(response.body, ID)
179
+ fragments.each do |fragment, files|
180
+ unless valid_fragments.include?(fragment)
181
+ puts "Invalid link to fragment '#{fragment}' present in: "
182
+ files.each { |file| puts "\t#{file}" }
183
+ end
176
184
  end
185
+ else
186
+ error = true
187
+ puts "Request to #{link} in #{files} returned #{status}"
188
+ error = true
189
+ puts "Invalid internal link '#{link}' is present in:"
190
+ fragments.flat_map { |_, files| files }.uniq
191
+ .each { |file| puts "\t#{file}" }
177
192
  end
178
- else
179
- error = true
180
- puts "Request to #{link} in #{files} returned #{status}"
181
- error = true
182
- puts "Invalid internal link '#{link}' is present in:"
183
- fragments.flat_map { |_, files| files }.uniq
184
- .each { |file| puts "\t#{file}" }
193
+ rescue StandardError => e
194
+ puts "Request to #{uri} produced the error #{e.class} present in"
195
+ fragments[nil].each { |file| puts "\t#{file}" }
196
+ puts e.message, "\n"
185
197
  end
186
198
  end
187
199
 
@@ -260,7 +272,11 @@ class LinkChecker
260
272
 
261
273
  # For each link in the file
262
274
  uniq_file_matches(file, HREF).each do |link|
263
- uri = Addressable::URI.parse(link)
275
+ begin
276
+ uri = Addressable::URI.parse(link)
277
+ rescue
278
+ puts "Link \"#{uri}\" in file \"#{file}\" can't be parsed."
279
+ end
264
280
 
265
281
  # Skip the emails and phone numbers URIs
266
282
  next if uri.site&.end_with?(":")
data/lib/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module JekyllLinkChecker
4
- VERSION = "0.2.1"
4
+ VERSION = "0.2.2"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-link-checker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zakary Kamal Ismail
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-09-23 00:00:00.000000000 Z
11
+ date: 2019-12-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.15'
19
+ version: '0.17'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.15'
26
+ version: '0.17'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: faraday-cookie_jar
29
29
  requirement: !ruby/object:Gem::Requirement