jekyll-link-checker 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
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