metainspector 5.15.0 → 5.17.0

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: 5098979bb849154a0fde8f74483401c6fac1d07aec69ce4b1cc8c4abc4d9eb3d
4
- data.tar.gz: 7c862c95f5b1a10faa25bf5346e2b3c6e26114fabf787e1ec061caa8f70f06d9
3
+ metadata.gz: 293357cd2d7638ce799d31024e708ba8b82ae8c6bb376304ab8b400aa959be05
4
+ data.tar.gz: a358b95df5bb28c81325d8f48ff6dfff85b423054ddd25195a91d3906e04c409
5
5
  SHA512:
6
- metadata.gz: 21ca7857d9cd32d2e0b5bbd2f29af1438233174d008b1d7b68df324c25da3ff8ca5b86f496cccc1c15700360e17a4f0318021483e41fd1d8d6ec3fc35e0479bc
7
- data.tar.gz: 84cf704542d0ca037ce46f9fbbca4f6c354928c5d50dbf56f22e6394413aabe087ed97ca51ad9de9279e7a621f4b38972370dd29b1a1a76645ef833e2af6f3b3
6
+ metadata.gz: 113e3d9d929b7e9df03b107ba40a5b813ce9732510ccf858764048a607074cee10208a50686f0f1b3efb952de1185dff5b1739d41d8a278ec8097de010677137
7
+ data.tar.gz: 8c090ead5bb14f40a2c6c867da1e9178d6cc8665bdae7853395c28ed9ddee3de235880bc9727622964afab3ba24408c67a0a68e6b7c082ebb67f88c6a6eae42e
data/.circleci/config.yml CHANGED
@@ -2,45 +2,36 @@ version: 2.1
2
2
  orbs:
3
3
  ruby: circleci/ruby@1.0.4
4
4
  jobs:
5
- test_2_6:
6
- docker:
7
- - image: cimg/ruby:2.6.10
8
- steps:
9
- - checkout
10
- - ruby/install-deps
11
- - run:
12
- name: Run tests
13
- command: bundle exec rake
14
- test_2_7:
5
+ test_3_2:
15
6
  docker:
16
- - image: cimg/ruby:2.7.6
7
+ - image: cimg/ruby:3.2.9
17
8
  steps:
18
9
  - checkout
19
10
  - ruby/install-deps
20
11
  - run:
21
12
  name: Run tests
22
13
  command: bundle exec rake
23
- test_3_0:
14
+ test_3_3:
24
15
  docker:
25
- - image: cimg/ruby:3.0.4
16
+ - image: cimg/ruby:3.3.10
26
17
  steps:
27
18
  - checkout
28
19
  - ruby/install-deps
29
20
  - run:
30
21
  name: Run tests
31
22
  command: bundle exec rake
32
- test_3_1:
23
+ test_3_4:
33
24
  docker:
34
- - image: cimg/ruby:3.1.2
25
+ - image: cimg/ruby:3.4.8
35
26
  steps:
36
27
  - checkout
37
28
  - ruby/install-deps
38
29
  - run:
39
30
  name: Run tests
40
31
  command: bundle exec rake
41
- test_3_2:
32
+ test_4_0:
42
33
  docker:
43
- - image: cimg/ruby:3.2.1
34
+ - image: cimg/ruby:4.0.0
44
35
  steps:
45
36
  - checkout
46
37
  - ruby/install-deps
@@ -51,8 +42,7 @@ workflows:
51
42
  version: 2
52
43
  deploy:
53
44
  jobs:
54
- - test_2_6
55
- - test_2_7
56
- - test_3_0
57
- - test_3_1
58
45
  - test_3_2
46
+ - test_3_3
47
+ - test_3_4
48
+ - test_4_0
data/.gitignore CHANGED
@@ -9,3 +9,4 @@ pkg/*
9
9
  .rubocop_todo.yml
10
10
  .rubocop.yml
11
11
  .tool-versions
12
+ Gemfile.lock
data/CHANGELOG.md CHANGED
@@ -1,4 +1,17 @@
1
- # MetaInpector Changelog
1
+ # MetaInspector Changelog
2
+
3
+ ## [Changes in 5.16.0](https://github.com/jaimeiniesta/metainspector/compare/v5.15.0...v5.16.0)
4
+
5
+ * Upgraded dependencies and supported Ruby versions.
6
+
7
+ ## [Changes in 5.15.0](https://github.com/jaimeiniesta/metainspector/compare/v5.14.0...v5.15.0)
8
+
9
+ * Added mechanism to use all available options in the `FollowRedirects` Faraday middleware,
10
+ https://github.com/jaimeiniesta/metainspector/pull/355 thanks to @bruno-b-martins and @miguelrod
11
+
12
+ ## [Changes in 5.14.0](https://github.com/jaimeiniesta/metainspector/compare/v5.13.0...v5.14.0)
13
+
14
+ * Several dependency updates, including Addressable 2.8.1 which fixes invalid_byte_sequence exception.
2
15
 
3
16
  ## [Changes in 5.13.0](https://github.com/jaimeiniesta/metainspector/compare/v5.12.1...v5.13.0)
4
17
 
data/README.md CHANGED
@@ -19,26 +19,67 @@ If you're using it on a Rails application, just add it to your Gemfile and run `
19
19
  gem 'metainspector'
20
20
  ```
21
21
 
22
- Supported Ruby versions are defined in [`.travis.yml`](.travis.yml).
22
+ Supported Ruby versions are defined in [`.circleci/config.yml`](.circleci/config.yml).
23
+
24
+ ## Supporting MetaInspector
25
+
26
+ MetaInspector has been downloaded more than 3 million times via RubyGems.org and has more than 1K stars on Github.
27
+
28
+ If you're using MetaInspector, it would be much appreciated if you can give back to the project in order to help ensure its continued development.
29
+
30
+ ### Gold Sponsors
31
+
32
+ <div style="display: flex; gap: 10px;">
33
+
34
+ <a href="https://github.com/sponsors/jaimeiniesta/sponsorships?sponsor=jaimeiniesta&tier_id=507665">
35
+ <img height="175" src="assets/sponsor_logo_placeholder.gif" alt="Become a Gold Sponsor">
36
+ </a>
37
+
38
+ </div>
39
+
40
+ ### Silver Sponsors
41
+
42
+ <div style="display: flex; gap: 10px;">
43
+
44
+ <a href="https://rocketvalidator.com">
45
+ <img height="150" src="assets/sponsor_logo_rocket_validator.png" alt="Rocket Validator - accessibility and HTML site-wide validator">
46
+ </a>
47
+
48
+ <a href="https://github.com/sponsors/jaimeiniesta/sponsorships?sponsor=jaimeiniesta&tier_id=63404">
49
+ <img height="150" src="assets/sponsor_logo_placeholder.gif" alt="Become a Silver Sponsor">
50
+ </a>
51
+
52
+ </div>
53
+
54
+ ### Bronze Sponsors
55
+
56
+ <div style="display: flex; gap: 10px;">
57
+
58
+ <a href="https://github.com/sponsors/jaimeiniesta/sponsorships?sponsor=jaimeiniesta&tier_id=63403">
59
+ <img height="125" src="assets/sponsor_logo_placeholder.gif" alt="Become a Bronze Sponsor">
60
+ </a>
61
+
62
+ </div>
63
+
23
64
 
24
65
  ## Usage
25
66
 
26
67
  Initialize a MetaInspector instance for an URL, like this:
27
68
 
28
69
  ```ruby
29
- page = MetaInspector.new('http://sitevalidator.com')
70
+ page = MetaInspector.new('https://github.com')
30
71
  ```
31
72
 
32
73
  If you don't include the scheme on the URL, http:// will be used by default:
33
74
 
34
75
  ```ruby
35
- page = MetaInspector.new('sitevalidator.com')
76
+ page = MetaInspector.new('github.com')
36
77
  ```
37
78
 
38
79
  You can also include the html which will be used as the document to scrape:
39
80
 
40
81
  ```ruby
41
- page = MetaInspector.new("http://sitevalidator.com",
82
+ page = MetaInspector.new("https://github.com",
42
83
  :document => "<html>...</html>")
43
84
  ```
44
85
 
@@ -62,8 +103,8 @@ page.tracked? # returns true if the url contains known tracking param
62
103
  page.untracked_url # returns the url with the known tracking parameters removed
63
104
  page.untrack! # removes the known tracking parameters from the url
64
105
  page.scheme # Scheme of the page (http, https)
65
- page.host # Hostname of the page (like, sitevalidator.com, without the scheme)
66
- page.root_url # Root url (scheme + host, like http://sitevalidator.com/)
106
+ page.host # Hostname of the page (like, github.com, without the scheme)
107
+ page.root_url # Root url (scheme + host, like https://github.com/)
67
108
  ```
68
109
 
69
110
  ### Head links
@@ -236,8 +277,8 @@ page.content_type # content-type returned by the server when the url was
236
277
  You can also access most of the scraped data as a hash:
237
278
 
238
279
  ```ruby
239
- page.to_hash # { "url" => "http://sitevalidator.com",
240
- "title" => "MarkupValidator :: site-wide markup validation tool", ... }
280
+ page.to_hash # { "url" => "https://github.com",
281
+ "title" => "GitHub", ... }
241
282
  ```
242
283
 
243
284
  The original document is accessible from:
@@ -366,7 +407,7 @@ MetaInspector.new('https://example.com', faraday_options: { ssl: { verify: false
366
407
  MetaInspector will by default raise an exception when trying to parse a non-HTML URL (one that has a content-type different than text/html). You can disable this behaviour with:
367
408
 
368
409
  ```ruby
369
- page = MetaInspector.new('sitevalidator.com', :allow_non_html_content => true)
410
+ page = MetaInspector.new('github.com', :allow_non_html_content => true)
370
411
  ```
371
412
 
372
413
  ```ruby
@@ -385,8 +426,8 @@ By default, URLs are normalized using the Addressable gem. For example:
385
426
 
386
427
  ```ruby
387
428
  # Normalization will add a default scheme and a trailing slash...
388
- page = MetaInspector.new('sitevalidator.com')
389
- page.url # http://sitevalidator.com/
429
+ page = MetaInspector.new('github.com')
430
+ page.url # https://github.com/
390
431
 
391
432
  # ...and it will also convert international characters
392
433
  page = MetaInspector.new('http://www.詹姆斯.com')
@@ -434,23 +475,14 @@ $ irb
434
475
  >> require 'metainspector'
435
476
  => true
436
477
 
437
- >> page = MetaInspector.new('http://sitevalidator.com')
438
- => #<MetaInspector:0x11330c0 @url="http://sitevalidator.com">
478
+ >> page = MetaInspector.new('http://github.com')
479
+ => #<MetaInspector:0x11330c0 @url="http://github.com">
439
480
 
440
481
  >> page.title
441
- => "MarkupValidator :: site-wide markup validation tool"
482
+ => "GitHub"
442
483
 
443
484
  >> page.meta['description']
444
- => "Site-wide markup validation tool. Validate the markup of your whole site with just one click."
445
-
446
- >> page.meta['keywords']
447
- => "html, markup, validation, validator, tool, w3c, development, standards, free"
448
-
449
- >> page.links.size
450
- => 15
451
-
452
- >> page.links[4]
453
- => "/plans-and-pricing"
485
+ => "Join the most widely adopted, AI-powered developer platform where millions of developers, businesses, and the largest open source community build software that advances humanity."
454
486
  ```
455
487
 
456
488
  ## Contributing guidelines
Binary file
@@ -1,3 +1,3 @@
1
1
  module MetaInspector
2
- VERSION = '5.15.0'
2
+ VERSION = '5.17.0'
3
3
  end
@@ -14,12 +14,12 @@ Gem::Specification.new do |gem|
14
14
  gem.require_paths = ["lib"]
15
15
  gem.version = MetaInspector::VERSION
16
16
 
17
- gem.add_dependency 'nokogiri', '~> 1.13'
17
+ gem.add_dependency 'nokogiri', '~> 1.19.0'
18
18
  gem.add_dependency 'faraday', '~> 2.5'
19
19
  gem.add_dependency 'faraday-cookie_jar', '~> 0.0'
20
20
  gem.add_dependency 'faraday-encoding', '~> 0.0'
21
21
  gem.add_dependency 'faraday-follow_redirects', '~> 0.3'
22
- gem.add_dependency 'faraday-gzip', '>= 0.1', '< 2.0'
22
+ gem.add_dependency 'faraday-gzip', '>= 0.1', '< 4.0'
23
23
  gem.add_dependency 'faraday-http-cache', '~> 2.5'
24
24
  gem.add_dependency 'faraday-retry', '~> 2.0'
25
25
  gem.add_dependency 'addressable', '~> 2.8.4'
@@ -31,8 +31,8 @@ Gem::Specification.new do |gem|
31
31
  gem.add_development_dependency 'awesome_print', '~> 1.9'
32
32
  gem.add_development_dependency 'rake', '~> 13.0'
33
33
  gem.add_development_dependency 'pry', '~> 0.14'
34
- gem.add_development_dependency 'puma', '~> 6.2.2'
34
+ gem.add_development_dependency 'puma', '~> 7.0.2'
35
35
  gem.add_development_dependency 'rubocop', '~> 1.34'
36
- gem.add_development_dependency 'resolv', '~> 0.2.2'
37
- gem.add_development_dependency 'sinatra', '~> 3.0.6'
36
+ gem.add_development_dependency 'resolv', '~> 0.6.2'
37
+ gem.add_development_dependency 'sinatra', '~> 4.2.0'
38
38
  end
@@ -52,29 +52,35 @@ describe MetaInspector do
52
52
  it "should get correct absolute links, encoding the URLs as needed" do
53
53
  m = MetaInspector.new('http://international.com')
54
54
 
55
- expect(m.links.internal).to eq([ "http://international.com/espa%C3%B1a.asp",
56
- "http://international.com/roman%C3%A9e",
57
- "http://international.com/faqs#cami%C3%B3n",
58
- "http://international.com/search?q=cami%C3%B3n",
59
- "http://international.com/search?q=espa%C3%B1a#top",
60
- "http://international.com/index.php?q=espa%C3%B1a&url=aHR0zZQ==&cntnt01pageid=21"])
61
-
62
- expect(m.links.external).to eq([ "http://example.com/espa%C3%B1a.asp",
63
- "http://example.com/roman%C3%A9e",
64
- "http://example.com/faqs#cami%C3%B3n",
65
- "http://example.com/search?q=cami%C3%B3n",
66
- "http://example.com/search?q=espa%C3%B1a#top"])
55
+ expect(m.links.internal).to eq([
56
+ "http://international.com/espa%C3%83%C2%B1a.asp",
57
+ "http://international.com/roman%C3%83%C2%A9e",
58
+ "http://international.com/faqs#cami%C3%83%C2%B3n",
59
+ "http://international.com/search?q=cami%C3%83%C2%B3n",
60
+ "http://international.com/search?q=espa%C3%83%C2%B1a#top",
61
+ "http://international.com/index.php?q=espa%C3%83%C2%B1a&url=aHR0zZQ==&cntnt01pageid=21"
62
+ ])
63
+
64
+ expect(m.links.external).to eq([
65
+ "http://example.com/espa%C3%83%C2%B1a.asp",
66
+ "http://example.com/roman%C3%83%C2%A9e",
67
+ "http://example.com/faqs#cami%C3%83%C2%B3n",
68
+ "http://example.com/search?q=cami%C3%83%C2%B3n",
69
+ "http://example.com/search?q=espa%C3%83%C2%B1a#top"])
67
70
  end
68
71
 
69
72
  describe "internal links" do
70
73
  it "should get correct internal links, encoding the URLs as needed but respecting # and ?" do
71
74
  m = MetaInspector.new('http://international.com')
72
- expect(m.links.internal).to eq([ "http://international.com/espa%C3%B1a.asp",
73
- "http://international.com/roman%C3%A9e",
74
- "http://international.com/faqs#cami%C3%B3n",
75
- "http://international.com/search?q=cami%C3%B3n",
76
- "http://international.com/search?q=espa%C3%B1a#top",
77
- "http://international.com/index.php?q=espa%C3%B1a&url=aHR0zZQ==&cntnt01pageid=21"])
75
+
76
+ expect(m.links.internal).to eq([
77
+ "http://international.com/espa%C3%83%C2%B1a.asp",
78
+ "http://international.com/roman%C3%83%C2%A9e",
79
+ "http://international.com/faqs#cami%C3%83%C2%B3n",
80
+ "http://international.com/search?q=cami%C3%83%C2%B3n",
81
+ "http://international.com/search?q=espa%C3%83%C2%B1a#top",
82
+ "http://international.com/index.php?q=espa%C3%83%C2%B1a&url=aHR0zZQ==&cntnt01pageid=21"
83
+ ])
78
84
  end
79
85
 
80
86
  it "should not crash when processing malformed hrefs" do
@@ -86,11 +92,14 @@ describe MetaInspector do
86
92
  describe "external links" do
87
93
  it "should get correct external links, encoding the URLs as needed but respecting # and ?" do
88
94
  m = MetaInspector.new('http://international.com')
89
- expect(m.links.external).to eq([ "http://example.com/espa%C3%B1a.asp",
90
- "http://example.com/roman%C3%A9e",
91
- "http://example.com/faqs#cami%C3%B3n",
92
- "http://example.com/search?q=cami%C3%B3n",
93
- "http://example.com/search?q=espa%C3%B1a#top"])
95
+
96
+ expect(m.links.external).to eq([
97
+ "http://example.com/espa%C3%83%C2%B1a.asp",
98
+ "http://example.com/roman%C3%83%C2%A9e",
99
+ "http://example.com/faqs#cami%C3%83%C2%B3n",
100
+ "http://example.com/search?q=cami%C3%83%C2%B3n",
101
+ "http://example.com/search?q=espa%C3%83%C2%B1a#top"
102
+ ])
94
103
  end
95
104
 
96
105
  it "should not crash when processing malformed hrefs" do
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metainspector
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.15.0
4
+ version: 5.17.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jaime Iniesta
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2023-05-16 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: nokogiri
@@ -16,14 +15,14 @@ dependencies:
16
15
  requirements:
17
16
  - - "~>"
18
17
  - !ruby/object:Gem::Version
19
- version: '1.13'
18
+ version: 1.19.0
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
23
  - - "~>"
25
24
  - !ruby/object:Gem::Version
26
- version: '1.13'
25
+ version: 1.19.0
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: faraday
29
28
  requirement: !ruby/object:Gem::Requirement
@@ -89,7 +88,7 @@ dependencies:
89
88
  version: '0.1'
90
89
  - - "<"
91
90
  - !ruby/object:Gem::Version
92
- version: '2.0'
91
+ version: '4.0'
93
92
  type: :runtime
94
93
  prerelease: false
95
94
  version_requirements: !ruby/object:Gem::Requirement
@@ -99,7 +98,7 @@ dependencies:
99
98
  version: '0.1'
100
99
  - - "<"
101
100
  - !ruby/object:Gem::Version
102
- version: '2.0'
101
+ version: '4.0'
103
102
  - !ruby/object:Gem::Dependency
104
103
  name: faraday-http-cache
105
104
  requirement: !ruby/object:Gem::Requirement
@@ -246,14 +245,14 @@ dependencies:
246
245
  requirements:
247
246
  - - "~>"
248
247
  - !ruby/object:Gem::Version
249
- version: 6.2.2
248
+ version: 7.0.2
250
249
  type: :development
251
250
  prerelease: false
252
251
  version_requirements: !ruby/object:Gem::Requirement
253
252
  requirements:
254
253
  - - "~>"
255
254
  - !ruby/object:Gem::Version
256
- version: 6.2.2
255
+ version: 7.0.2
257
256
  - !ruby/object:Gem::Dependency
258
257
  name: rubocop
259
258
  requirement: !ruby/object:Gem::Requirement
@@ -274,28 +273,28 @@ dependencies:
274
273
  requirements:
275
274
  - - "~>"
276
275
  - !ruby/object:Gem::Version
277
- version: 0.2.2
276
+ version: 0.6.2
278
277
  type: :development
279
278
  prerelease: false
280
279
  version_requirements: !ruby/object:Gem::Requirement
281
280
  requirements:
282
281
  - - "~>"
283
282
  - !ruby/object:Gem::Version
284
- version: 0.2.2
283
+ version: 0.6.2
285
284
  - !ruby/object:Gem::Dependency
286
285
  name: sinatra
287
286
  requirement: !ruby/object:Gem::Requirement
288
287
  requirements:
289
288
  - - "~>"
290
289
  - !ruby/object:Gem::Version
291
- version: 3.0.6
290
+ version: 4.2.0
292
291
  type: :development
293
292
  prerelease: false
294
293
  version_requirements: !ruby/object:Gem::Requirement
295
294
  requirements:
296
295
  - - "~>"
297
296
  - !ruby/object:Gem::Version
298
- version: 3.0.6
297
+ version: 4.2.0
299
298
  description: MetaInspector lets you scrape a web page and get its links, images, texts,
300
299
  meta tags...
301
300
  email: jaimeiniesta@gmail.com
@@ -311,10 +310,11 @@ files:
311
310
  - ".rubocop.yml.example"
312
311
  - CHANGELOG.md
313
312
  - Gemfile
314
- - Gemfile.lock
315
313
  - MIT-LICENSE
316
314
  - README.md
317
315
  - Rakefile
316
+ - assets/sponsor_logo_placeholder.gif
317
+ - assets/sponsor_logo_rocket_validator.png
318
318
  - bin/console
319
319
  - examples/basic_scraping.rb
320
320
  - examples/faraday_redirect_options.rb
@@ -417,7 +417,6 @@ homepage: https://github.com/jaimeiniesta/metainspector
417
417
  licenses:
418
418
  - MIT
419
419
  metadata: {}
420
- post_install_message:
421
420
  rdoc_options: []
422
421
  require_paths:
423
422
  - lib
@@ -432,8 +431,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
432
431
  - !ruby/object:Gem::Version
433
432
  version: '0'
434
433
  requirements: []
435
- rubygems_version: 3.4.12
436
- signing_key:
434
+ rubygems_version: 4.0.3
437
435
  specification_version: 4
438
436
  summary: MetaInspector is a ruby gem for web scraping purposes, that returns metadata
439
437
  from a given URL
data/Gemfile.lock DELETED
@@ -1,142 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- metainspector (5.15.0)
5
- addressable (~> 2.8.4)
6
- faraday (~> 2.5)
7
- faraday-cookie_jar (~> 0.0)
8
- faraday-encoding (~> 0.0)
9
- faraday-follow_redirects (~> 0.3)
10
- faraday-gzip (>= 0.1, < 2.0)
11
- faraday-http-cache (~> 2.5)
12
- faraday-retry (~> 2.0)
13
- fastimage (~> 2.2)
14
- nesty (~> 1.0)
15
- nokogiri (~> 1.13)
16
-
17
- GEM
18
- remote: http://rubygems.org/
19
- specs:
20
- addressable (2.8.4)
21
- public_suffix (>= 2.0.2, < 6.0)
22
- ast (2.4.2)
23
- awesome_print (1.9.2)
24
- coderay (1.1.3)
25
- crack (0.4.5)
26
- rexml
27
- diff-lcs (1.5.0)
28
- domain_name (0.5.20190701)
29
- unf (>= 0.0.5, < 1.0.0)
30
- faraday (2.7.4)
31
- faraday-net_http (>= 2.0, < 3.1)
32
- ruby2_keywords (>= 0.0.4)
33
- faraday-cookie_jar (0.0.7)
34
- faraday (>= 0.8.0)
35
- http-cookie (~> 1.0.0)
36
- faraday-encoding (0.0.5)
37
- faraday
38
- faraday-follow_redirects (0.3.0)
39
- faraday (>= 1, < 3)
40
- faraday-gzip (1.0.0)
41
- faraday (>= 1.0)
42
- zlib (~> 2.1)
43
- faraday-http-cache (2.5.0)
44
- faraday (>= 0.8)
45
- faraday-net_http (3.0.2)
46
- faraday-retry (2.1.0)
47
- faraday (~> 2.0)
48
- fastimage (2.2.6)
49
- hashdiff (1.0.1)
50
- http-cookie (1.0.5)
51
- domain_name (~> 0.5)
52
- json (2.6.3)
53
- method_source (1.0.0)
54
- mini_portile2 (2.8.2)
55
- mustermann (3.0.0)
56
- ruby2_keywords (~> 0.0.1)
57
- nesty (1.0.2)
58
- nio4r (2.5.9)
59
- nokogiri (1.14.4)
60
- mini_portile2 (~> 2.8.0)
61
- racc (~> 1.4)
62
- nokogiri (1.14.4-arm64-darwin)
63
- racc (~> 1.4)
64
- parallel (1.23.0)
65
- parser (3.2.2.1)
66
- ast (~> 2.4.1)
67
- pry (0.14.2)
68
- coderay (~> 1.1)
69
- method_source (~> 1.0)
70
- public_suffix (5.0.1)
71
- puma (6.2.2)
72
- nio4r (~> 2.0)
73
- racc (1.6.2)
74
- rack (2.2.7)
75
- rack-protection (3.0.6)
76
- rack
77
- rainbow (3.1.1)
78
- rake (13.0.6)
79
- regexp_parser (2.8.0)
80
- resolv (0.2.2)
81
- rexml (3.2.5)
82
- rspec (3.12.0)
83
- rspec-core (~> 3.12.0)
84
- rspec-expectations (~> 3.12.0)
85
- rspec-mocks (~> 3.12.0)
86
- rspec-core (3.12.1)
87
- rspec-support (~> 3.12.0)
88
- rspec-expectations (3.12.2)
89
- diff-lcs (>= 1.2.0, < 2.0)
90
- rspec-support (~> 3.12.0)
91
- rspec-mocks (3.12.3)
92
- diff-lcs (>= 1.2.0, < 2.0)
93
- rspec-support (~> 3.12.0)
94
- rspec-support (3.12.0)
95
- rubocop (1.51.0)
96
- json (~> 2.3)
97
- parallel (~> 1.10)
98
- parser (>= 3.2.0.0)
99
- rainbow (>= 2.2.2, < 4.0)
100
- regexp_parser (>= 1.8, < 3.0)
101
- rexml (>= 3.2.5, < 4.0)
102
- rubocop-ast (>= 1.28.0, < 2.0)
103
- ruby-progressbar (~> 1.7)
104
- unicode-display_width (>= 2.4.0, < 3.0)
105
- rubocop-ast (1.28.1)
106
- parser (>= 3.2.1.0)
107
- ruby-progressbar (1.13.0)
108
- ruby2_keywords (0.0.5)
109
- sinatra (3.0.6)
110
- mustermann (~> 3.0)
111
- rack (~> 2.2, >= 2.2.4)
112
- rack-protection (= 3.0.6)
113
- tilt (~> 2.0)
114
- tilt (2.1.0)
115
- unf (0.1.4)
116
- unf_ext
117
- unf_ext (0.0.8.2)
118
- unicode-display_width (2.4.2)
119
- webmock (3.18.1)
120
- addressable (>= 2.8.0)
121
- crack (>= 0.3.2)
122
- hashdiff (>= 0.4.0, < 2.0.0)
123
- zlib (2.1.1)
124
-
125
- PLATFORMS
126
- arm64-darwin-22
127
- x86_64-linux
128
-
129
- DEPENDENCIES
130
- awesome_print (~> 1.9)
131
- metainspector!
132
- pry (~> 0.14)
133
- puma (~> 6.2.2)
134
- rake (~> 13.0)
135
- resolv (~> 0.2.2)
136
- rspec (~> 3.11)
137
- rubocop (~> 1.34)
138
- sinatra (~> 3.0.6)
139
- webmock (~> 3.17)
140
-
141
- BUNDLED WITH
142
- 2.3.20