absolutely 3.0.0 → 5.1.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: 91566fb265c0b030b5014124f954e10d150482b0b2487d6e729191e3958cc732
4
- data.tar.gz: 6eea11bf5e67cb75cb33ccb21e0573aefa6899cfed505f4b864e46e643a0781a
3
+ metadata.gz: 7d71dd15ea98516035ebf50cf2c601e706fffe9ac519bb67b7eee3066c897305
4
+ data.tar.gz: 18f99fef87e3cf2e9fa0f25e256768b5d3e653563a584cf8b2bcb5b7506d4327
5
5
  SHA512:
6
- metadata.gz: 077d370aaef9a645222bdaf5297f6172f0f369bc6d93d336ede24999564126058d34cfcaea3c206ecb25f539b02b21f79fa5112e06be6e9dbc874ea3fe6925ba
7
- data.tar.gz: f201dc5e6ab3a7b24f95da4a0ccffa3452f63c13e779fe9533727e8ab9fdd41952ccb9ad6928323388db3536cff02254d70f25f371626c3fbc64dee486301e2e
6
+ metadata.gz: abe899336ce0b333754e344618e7767003e0f543e9bd8fecb9ee67a5d0aacab83ff12a2d9126f84b48c7ae6d6e03a6436892e843c6ecddf61e1ee6a57114e491
7
+ data.tar.gz: 307b708b9b6ef5ed4c1ae1ba5be470375634f7e884bb0cadca5762dd577e46374f6f84edeccabea82af450707ab831a1820b3211fdd75855450f43e1cdec5a38
data/CHANGELOG.md CHANGED
@@ -1,36 +1,62 @@
1
1
  # Changelog
2
2
 
3
+ ## 5.1.0 / 2021-04-02
4
+
5
+ - Expand supported Ruby versions to include 3.0 (c9741de)
6
+
7
+ ## 5.0.0 / 2020-08-23
8
+
9
+ - **Breaking change:** Update minimum supported Ruby version to 2.5 (866cec3)
10
+ - Update project Ruby version to 2.5.8 (231653b)
11
+
12
+ ## 4.0.0 / 2020-05-13
13
+
14
+ - **Breaking Change:** Remove alias from `to_absolute_uri` to `to_abs` (b4df234)
15
+ - Improve inline documentation and refactor gem code (bb0456e)
16
+ - Move development dependencies to Gemfile per current Bundler convention (3c2f579)
17
+ - Update development Ruby version to 2.4.10 (6c79003)
18
+
19
+ ## 3.1.0 / 2020-01-20
20
+
21
+ - Expand supported Ruby versions to include 2.7 (e0273b5)
22
+
23
+ ## 3.0.1 / 2019-08-31
24
+
25
+ - Update Addressable gem (b257f75)
26
+ - Update project Ruby version to 2.4.9 (a14d29b)
27
+ - Update development dependencies
28
+
3
29
  ## 3.0.0 / 2019-05-28
4
30
 
5
- - Return normalized `relative_uri` in `to_abs` when `relative_uri` is an absolute URL ([81261e9](https://github.com/jgarber623/absolutely/commit/81261e9)).
31
+ - Return normalized `relative_uri` in `to_abs` when `relative_uri` is an absolute URL (81261e9)
6
32
 
7
33
  ## 2.1.0 / 2019-05-01
8
34
 
9
- - Rename `to_absolute_uri` method to `to_abs` ([d14e33f](https://github.com/jgarber623/absolutely/commit/d14e33f)).
10
- - Add `inspect` instance method to `Absolutely::URI` ([e4e7e5a](https://github.com/jgarber623/absolutely/commit/e4e7e5a)).
35
+ - Rename `to_absolute_uri` method to `to_abs` (d14e33f)
36
+ - Add `inspect` instance method to `Absolutely::URI` (e4e7e5a)
11
37
 
12
38
  ## 2.0.0 / 2019-04-25
13
39
 
14
- - The `URI` class' `base` and `relative` methods are now read-only ([7879f78](https://github.com/jgarber623/absolutely/commit/7879f78)).
15
- - Add Reek and configuration ([fb60f9c](https://github.com/jgarber623/absolutely/commit/fb60f9c)).
40
+ - The `URI` class' `base` and `relative` methods are now read-only (7879f78)
41
+ - Add Reek and configuration (fb60f9c)
16
42
 
17
43
  ## 1.1.2 / 2019-01-03
18
44
 
19
- - Expand supported Ruby versions to include 2.6 ([866d58a](https://github.com/jgarber623/absolutely/commit/866d58a)).
45
+ - Expand supported Ruby versions to include 2.6 (866d58a)
20
46
 
21
47
  ## 1.1.1 / 2018-11-11
22
48
 
23
- - Liberalizes dependency constraints ([e0bc056](https://github.com/jgarber623/absolutely/commit/e0bc056)).
49
+ - Liberalizes dependency constraints (e0bc056)
24
50
 
25
51
  ## 1.1.0 / 2018-07-05
26
52
 
27
- - Sets `base` URI's path to `/` if empty to conform with browser behavior ([b0f657a](https://github.com/jgarber623/absolutely/commit/b0f657a)).
28
- - Adds new tests from the [indieweb/php-mf2 URL test suite](https://github.com/indieweb/php-mf2/blob/master/tests/Mf2/URLTest.php) ([0b6417b](https://github.com/jgarber623/absolutely/commit/0b6417b)).
53
+ - Sets `base` URI's path to `/` if empty to conform with browser behavior (b0f657a)
54
+ - Adds new tests from the [indieweb/php-mf2 URL test suite](https://github.com/indieweb/php-mf2/blob/master/tests/Mf2/URLTest.php) (0b6417b)
29
55
 
30
56
  ## 1.0.0 / 2018-07-05
31
57
 
32
- - **Breaking Change:** Return value passed as `relative` if `relative` is to determined to be an absolute URI, regardless of the value passed as `base` ([e3996eb](https://github.com/jgarber623/absolutely/commit/e3996eb)).
33
- - Updates documentation to demonstrate new `relative` parameter behavior.
58
+ - **Breaking Change:** Return value passed as `relative` if `relative` is to determined to be an absolute URI, regardless of the value passed as `base` (e3996eb)
59
+ - Updates documentation to demonstrate new `relative` parameter behavior
34
60
 
35
61
  ## 0.1.0 / 2018-07-04
36
62
 
data/CONTRIBUTING.md CHANGED
@@ -8,9 +8,9 @@ There are a couple ways you can help improve Absolutely:
8
8
 
9
9
  ## Getting Started
10
10
 
11
- Absolutely is developed using Ruby 2.4.6 and is additionally tested against Ruby 2.5.5 and 2.6.3 using [Travis CI](https://travis-ci.com/jgarber623/absolutely).
11
+ Absolutely is developed using Ruby 2.5.8 and is additionally tested against Ruby 2.6, 2.7, and 3.0 using [CircleCI](https://app.circleci.com/pipelines/github/jgarber623/absolutely).
12
12
 
13
- Before making changes to Absolutely, you'll want to install Ruby 2.4.6. It's recommended that you use a Ruby version managment tool like [rbenv](https://github.com/rbenv/rbenv), [chruby](https://github.com/postmodern/chruby), or [rvm](https://github.com/rvm/rvm). Once you've installed Ruby 2.4.6 using your method of choice, install the project's gems by running:
13
+ Before making changes to Absolutely, you'll want to install Ruby 2.5.8. It's recommended that you use a Ruby version managment tool like [rbenv](https://github.com/rbenv/rbenv), [chruby](https://github.com/postmodern/chruby), or [rvm](https://github.com/rvm/rvm). Once you've installed Ruby 2.5.8 using your method of choice, install the project's gems by running:
14
14
 
15
15
  ```sh
16
16
  bundle install
@@ -22,7 +22,7 @@ bundle install
22
22
  1. Install development dependencies as outlined above.
23
23
  1. Create a feature branch for the code changes you're looking to make: `git checkout -b my-new-feature`.
24
24
  1. _Write some code!_
25
- 1. If your changes would benefit from testing, add the necessary tests and verify everything passes by running `bundle exec rspec`.
25
+ 1. If your changes would benefit from testing, add the necessary tests and verify everything passes by running `bin/ci`.
26
26
  1. Commit your changes: `git commit -am 'Add some new feature or fix some issue'`. _(See [this excellent article](https://chris.beams.io/posts/git-commit/) for tips on writing useful Git commit messages.)_
27
27
  1. Push the branch to your fork: `git push -u origin my-new-feature`.
28
28
  1. Create a new [pull request][pulls] and we'll review your changes.
data/README.md CHANGED
@@ -2,23 +2,22 @@
2
2
 
3
3
  **A Ruby gem for converting relative paths to absolute URIs.**
4
4
 
5
- [![Gem](https://img.shields.io/gem/v/absolutely.svg?style=for-the-badge)](https://rubygems.org/gems/absolutely)
6
- [![Downloads](https://img.shields.io/gem/dt/absolutely.svg?style=for-the-badge)](https://rubygems.org/gems/absolutely)
7
- [![Build](https://img.shields.io/travis/com/jgarber623/absolutely/master.svg?style=for-the-badge)](https://travis-ci.com/jgarber623/absolutely)
8
- [![Dependencies](https://img.shields.io/depfu/jgarber623/absolutely.svg?style=for-the-badge)](https://depfu.com/github/jgarber623/absolutely)
9
- [![Maintainability](https://img.shields.io/codeclimate/maintainability/jgarber623/absolutely.svg?style=for-the-badge)](https://codeclimate.com/github/jgarber623/absolutely)
10
- [![Coverage](https://img.shields.io/codeclimate/c/jgarber623/absolutely.svg?style=for-the-badge)](https://codeclimate.com/github/jgarber623/absolutely/code)
5
+ [![Gem](https://img.shields.io/gem/v/absolutely.svg?logo=rubygems&style=for-the-badge)](https://rubygems.org/gems/absolutely)
6
+ [![Downloads](https://img.shields.io/gem/dt/absolutely.svg?logo=rubygems&style=for-the-badge)](https://rubygems.org/gems/absolutely)
7
+ [![Build](https://img.shields.io/circleci/build/github/jgarber623/absolutely?logo=circleci&style=for-the-badge)](https://app.circleci.com/pipelines/github/jgarber623/absolutely)
8
+ [![Maintainability](https://img.shields.io/codeclimate/maintainability/jgarber623/absolutely.svg?logo=code-climate&style=for-the-badge)](https://codeclimate.com/github/jgarber623/absolutely)
9
+ [![Coverage](https://img.shields.io/codeclimate/c/jgarber623/absolutely.svg?logo=code-climate&style=for-the-badge)](https://codeclimate.com/github/jgarber623/absolutely/code)
11
10
 
12
11
  ## Key Features
13
12
 
14
13
  - Uses the [Addressable](https://github.com/sporkmonger/addressable) Ruby gem for improved URI parsing.
15
- - Supports Ruby 2.4 and newer.
14
+ - Supports Ruby 2.5 and newer.
16
15
 
17
16
  ## Getting Started
18
17
 
19
- Before installing and using Absolutely, you'll want to have [Ruby](https://www.ruby-lang.org) 2.4 (or newer) installed. It's recommended that you use a Ruby version managment tool like [rbenv](https://github.com/rbenv/rbenv), [chruby](https://github.com/postmodern/chruby), or [rvm](https://github.com/rvm/rvm).
18
+ Before installing and using Absolutely, you'll want to have [Ruby](https://www.ruby-lang.org) 2.5 (or newer) installed. It's recommended that you use a Ruby version managment tool like [rbenv](https://github.com/rbenv/rbenv), [chruby](https://github.com/postmodern/chruby), or [rvm](https://github.com/rvm/rvm).
20
19
 
21
- Absolutely is developed using Ruby 2.4.6 and is additionally tested against Ruby 2.5.5 and 2.6.3 using [Travis CI](https://travis-ci.com/jgarber623/absolutely).
20
+ Absolutely is developed using Ruby 2.5.8 and is additionally tested against Ruby 2.6, 2.7, and 3.0 using [CircleCI](https://app.circleci.com/pipelines/github/jgarber623/absolutely).
22
21
 
23
22
  ## Installation
24
23
 
@@ -67,7 +66,7 @@ Note that if the value passed as `relative` is determined to be an absolute URI,
67
66
  ```ruby
68
67
  require 'absolutely'
69
68
 
70
- uri = Absolute.to_abs(base: 'https://example.com', relative: 'https://example.com/foo')
69
+ uri = Absolutely.to_abs(base: 'https://example.com', relative: 'https://example.com/foo')
71
70
 
72
71
  puts uri # => 'https://example.com/foo'
73
72
  ```
@@ -96,7 +95,7 @@ For convenience, the `base_uri` and `relative_uri` methods return instances of t
96
95
 
97
96
  ## Contributing
98
97
 
99
- Interested in helping improve Absolutely? Awesome! Your help is greatly appreciated. See [CONTRIBUTING.md](https://github.com/jgarber623/absolutely/blob/master/CONTRIBUTING.md) for details.
98
+ Interested in helping improve Absolutely? Awesome! Your help is greatly appreciated. See [CONTRIBUTING.md](https://github.com/jgarber623/absolutely/blob/main/CONTRIBUTING.md) for details.
100
99
 
101
100
  ## Acknowledgments
102
101
 
data/absolutely.gemspec CHANGED
@@ -1,10 +1,7 @@
1
- lib = File.expand_path('lib', __dir__)
2
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
-
4
- require 'absolutely/version'
1
+ require_relative 'lib/absolutely/version'
5
2
 
6
3
  Gem::Specification.new do |spec|
7
- spec.required_ruby_version = ['>= 2.4', '< 2.7']
4
+ spec.required_ruby_version = Gem::Requirement.new('>= 2.5', '< 4')
8
5
 
9
6
  spec.name = 'absolutely'
10
7
  spec.version = Absolutely::VERSION
@@ -16,23 +13,14 @@ Gem::Specification.new do |spec|
16
13
  spec.homepage = 'https://github.com/jgarber623/absolutely'
17
14
  spec.license = 'MIT'
18
15
 
19
- spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(bin|spec)/}) }
16
+ spec.files = Dir['lib/**/*'].reject { |f| File.directory?(f) }
17
+ spec.files += %w[LICENSE CHANGELOG.md CONTRIBUTING.md README.md]
18
+ spec.files += %w[absolutely.gemspec]
20
19
 
21
20
  spec.require_paths = ['lib']
22
21
 
23
- spec.metadata = {
24
- 'bug_tracker_uri' => "#{spec.homepage}/issues",
25
- 'changelog_uri' => "#{spec.homepage}/blob/v#{spec.version}/CHANGELOG.md"
26
- }
27
-
28
- spec.add_development_dependency 'rake', '~> 12.3'
29
- spec.add_development_dependency 'reek', '~> 5.4'
30
- spec.add_development_dependency 'rspec', '~> 3.8'
31
- spec.add_development_dependency 'rubocop', '~> 0.70.0'
32
- spec.add_development_dependency 'rubocop-performance', '~> 1.3'
33
- spec.add_development_dependency 'rubocop-rspec', '~> 1.33'
34
- spec.add_development_dependency 'simplecov', '~> 0.16.1'
35
- spec.add_development_dependency 'simplecov-console', '~> 0.5.0'
22
+ spec.metadata['bug_tracker_uri'] = "#{spec.homepage}/issues"
23
+ spec.metadata['changelog_uri'] = "#{spec.homepage}/blob/v#{spec.version}/CHANGELOG.md"
36
24
 
37
- spec.add_runtime_dependency 'addressable', '~> 2.6'
25
+ spec.add_runtime_dependency 'addressable', '~> 2.7'
38
26
  end
data/lib/absolutely.rb CHANGED
@@ -7,11 +7,29 @@ require 'absolutely/uri'
7
7
 
8
8
  module Absolutely
9
9
  class << self
10
+ # Convert a relative path to an absolute URI.
11
+ #
12
+ # @param base [String] an absolute URI used to resolve relative path
13
+ # @param relative [String] a relative path
14
+ # @return [String]
15
+ #
16
+ # @example
17
+ # Absolutely.to_abs(base: 'https://example.com', relative: '/foo')
18
+ # #=> "https://example.com/foo"
10
19
  def to_abs(base:, relative:)
11
20
  uri(base: base, relative: relative).to_abs
12
21
  end
13
- alias_method :to_absolute_uri, :to_abs
14
22
 
23
+ # Create an Absolutely::URI from a base URI and a relative path.
24
+ #
25
+ # @param base [String] an absolute URI used to resolve relative path
26
+ # @param relative [String] a relative path
27
+ # @return [Absolutely::URI]
28
+ #
29
+ # @example
30
+ # uri = Absolutely.uri(base: 'https://example.com', relative: '/foo')
31
+ # puts uri.to_abs
32
+ # #=> "https://example.com/foo"
15
33
  def uri(base:, relative:)
16
34
  URI.new(base: base, relative: relative)
17
35
  end
@@ -1,20 +1,51 @@
1
1
  module Absolutely
2
2
  class URI
3
- attr_reader :base, :base_uri, :relative, :relative_uri
4
-
3
+ attr_reader :base, :relative
4
+
5
+ # Create an Absolutely::URI from a base URI and a relative path.
6
+ #
7
+ # @param base [String] an absolute URI used to resolve relative path
8
+ # @param relative [String] a relative path
9
+ # @raise [Absolutely::ArgumentError]
10
+ # @raise [Absolutely::InvalidURIError]
11
+ #
12
+ # @example
13
+ # uri = Absolutely::URI.new(base: 'https://example.com', relative: '/foo')
14
+ # puts uri.to_abs
15
+ # #=> "https://example.com/foo"
5
16
  def initialize(base:, relative:)
6
17
  raise ArgumentError, "base must be a String (given #{base.class.name})" unless base.is_a?(String)
7
18
  raise ArgumentError, "relative must be a String (given #{relative.class.name})" unless relative.is_a?(String)
8
19
 
9
- set_instance_vars(base, relative)
20
+ @base = base
21
+ @relative = relative
22
+
23
+ base_uri
24
+ relative_uri
10
25
 
11
26
  raise ArgumentError, 'base must be an absolute URL (e.g. https://example.com)' unless base_uri.absolute?
27
+ rescue Addressable::URI::InvalidURIError => exception
28
+ raise InvalidURIError, exception
29
+ end
30
+
31
+ # @return [Addressable::URI]
32
+ def base_uri
33
+ @base_uri ||= Addressable::URI.parse(base)
12
34
  end
13
35
 
36
+ # @return [String]
14
37
  def inspect
15
- format("#<#{self.class.name}:%#0x>", object_id)
38
+ format("#<#{self.class.name}:%#0x base: #{base.inspect}, relative: #{relative.inspect}>", object_id)
39
+ end
40
+
41
+ # @return [Addressable::URI]
42
+ def relative_uri
43
+ @relative_uri ||= Addressable::URI.parse(relative)
16
44
  end
17
45
 
46
+ # Convert a relative path to an absolute URI.
47
+ #
48
+ # @return [String]
18
49
  def to_abs
19
50
  return relative_uri.normalize.to_s if relative_uri.absolute?
20
51
 
@@ -22,18 +53,5 @@ module Absolutely
22
53
 
23
54
  (base_uri + relative_uri).to_s
24
55
  end
25
- alias_method :to_absolute_uri, :to_abs
26
-
27
- private
28
-
29
- def set_instance_vars(base, relative)
30
- @base = base
31
- @relative = relative
32
-
33
- @base_uri = Addressable::URI.parse(base)
34
- @relative_uri = Addressable::URI.parse(relative)
35
- rescue Addressable::URI::InvalidURIError => exception
36
- raise InvalidURIError, exception
37
- end
38
56
  end
39
57
  end
@@ -1,3 +1,3 @@
1
1
  module Absolutely
2
- VERSION = '3.0.0'.freeze
2
+ VERSION = '5.1.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,141 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: absolutely
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 5.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Garber
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-05-29 00:00:00.000000000 Z
11
+ date: 2021-04-02 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: rake
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '12.3'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '12.3'
27
- - !ruby/object:Gem::Dependency
28
- name: reek
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '5.4'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '5.4'
41
- - !ruby/object:Gem::Dependency
42
- name: rspec
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '3.8'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '3.8'
55
- - !ruby/object:Gem::Dependency
56
- name: rubocop
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: 0.70.0
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: 0.70.0
69
- - !ruby/object:Gem::Dependency
70
- name: rubocop-performance
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: '1.3'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '1.3'
83
- - !ruby/object:Gem::Dependency
84
- name: rubocop-rspec
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '1.33'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: '1.33'
97
- - !ruby/object:Gem::Dependency
98
- name: simplecov
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: 0.16.1
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: 0.16.1
111
- - !ruby/object:Gem::Dependency
112
- name: simplecov-console
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: 0.5.0
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - "~>"
123
- - !ruby/object:Gem::Version
124
- version: 0.5.0
125
13
  - !ruby/object:Gem::Dependency
126
14
  name: addressable
127
15
  requirement: !ruby/object:Gem::Requirement
128
16
  requirements:
129
17
  - - "~>"
130
18
  - !ruby/object:Gem::Version
131
- version: '2.6'
19
+ version: '2.7'
132
20
  type: :runtime
133
21
  prerelease: false
134
22
  version_requirements: !ruby/object:Gem::Requirement
135
23
  requirements:
136
24
  - - "~>"
137
25
  - !ruby/object:Gem::Version
138
- version: '2.6'
26
+ version: '2.7'
139
27
  description: Convert relative paths to absolute URIs.
140
28
  email:
141
29
  - jason@sixtwothree.org
@@ -143,21 +31,10 @@ executables: []
143
31
  extensions: []
144
32
  extra_rdoc_files: []
145
33
  files:
146
- - ".editorconfig"
147
- - ".gitignore"
148
- - ".reek.yml"
149
- - ".rspec"
150
- - ".rubocop"
151
- - ".rubocop.yml"
152
- - ".ruby-version"
153
- - ".simplecov"
154
- - ".travis.yml"
155
34
  - CHANGELOG.md
156
35
  - CONTRIBUTING.md
157
- - Gemfile
158
36
  - LICENSE
159
37
  - README.md
160
- - Rakefile
161
38
  - absolutely.gemspec
162
39
  - lib/absolutely.rb
163
40
  - lib/absolutely/exceptions.rb
@@ -168,8 +45,8 @@ licenses:
168
45
  - MIT
169
46
  metadata:
170
47
  bug_tracker_uri: https://github.com/jgarber623/absolutely/issues
171
- changelog_uri: https://github.com/jgarber623/absolutely/blob/v3.0.0/CHANGELOG.md
172
- post_install_message:
48
+ changelog_uri: https://github.com/jgarber623/absolutely/blob/v5.1.0/CHANGELOG.md
49
+ post_install_message:
173
50
  rdoc_options: []
174
51
  require_paths:
175
52
  - lib
@@ -177,18 +54,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
177
54
  requirements:
178
55
  - - ">="
179
56
  - !ruby/object:Gem::Version
180
- version: '2.4'
57
+ version: '2.5'
181
58
  - - "<"
182
59
  - !ruby/object:Gem::Version
183
- version: '2.7'
60
+ version: '4'
184
61
  required_rubygems_version: !ruby/object:Gem::Requirement
185
62
  requirements:
186
63
  - - ">="
187
64
  - !ruby/object:Gem::Version
188
65
  version: '0'
189
66
  requirements: []
190
- rubygems_version: 3.0.3
191
- signing_key:
67
+ rubygems_version: 3.1.2
68
+ signing_key:
192
69
  specification_version: 4
193
70
  summary: Convert relative paths to absolute URIs.
194
71
  test_files: []
data/.editorconfig DELETED
@@ -1,14 +0,0 @@
1
- # EditorConfig is awesome: https://EditorConfig.org
2
- root = true
3
-
4
- [*]
5
- charset = utf-8
6
- end_of_line = lf
7
- insert_final_newline = true
8
- indent_size = 2
9
- indent_style = space
10
- trim_trailing_whitespace = true
11
-
12
- [*.md]
13
- indent_size = 4
14
- indent_style = tab
data/.gitignore DELETED
@@ -1,34 +0,0 @@
1
- *.gem
2
- *.rbc
3
- /.config
4
- /coverage/
5
- /InstalledFiles
6
- /pkg/
7
- /spec/reports/
8
- /spec/examples.txt
9
- /test/tmp/
10
- /test/version_tmp/
11
- /tmp/
12
-
13
- # Used by dotenv library to load environment variables.
14
- # .env
15
-
16
- # Documentation cache and generated files:
17
- /.yardoc/
18
- /_yardoc/
19
- /doc/
20
- /rdoc/
21
-
22
- # Environment normalization:
23
- /.bundle/
24
- /vendor/bundle
25
- /lib/bundler/man/
26
-
27
- # for a library or gem, you might want to ignore these files since the code is
28
- # intended to run in multiple environments; otherwise, check them in:
29
- Gemfile.lock
30
- # .ruby-version
31
- # .ruby-gemset
32
-
33
- # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
34
- .rvmrc
data/.reek.yml DELETED
@@ -1,9 +0,0 @@
1
- detectors:
2
- IrresponsibleModule:
3
- enabled: false
4
- TooManyStatements:
5
- exclude:
6
- - Absolutely::URI#set_instance_vars
7
-
8
- exclude_paths:
9
- - vendor/
data/.rspec DELETED
@@ -1,2 +0,0 @@
1
- --order random
2
- --require spec_helper
data/.rubocop DELETED
@@ -1,3 +0,0 @@
1
- --display-style-guide
2
- --extra-details
3
- --parallel
data/.rubocop.yml DELETED
@@ -1,29 +0,0 @@
1
- require:
2
- - rubocop-performance
3
- - rubocop-rspec
4
-
5
- Layout/AlignHash:
6
- EnforcedColonStyle: table
7
- EnforcedHashRocketStyle: table
8
-
9
- Metrics/BlockLength:
10
- Exclude:
11
- - spec/**/*.rb
12
-
13
- Metrics/LineLength:
14
- Enabled: false
15
-
16
- Naming/RescuedExceptionsVariableName:
17
- PreferredName: exception
18
-
19
- Style/Alias:
20
- EnforcedStyle: prefer_alias_method
21
-
22
- Style/Documentation:
23
- Enabled: false
24
-
25
- Style/FrozenStringLiteralComment:
26
- Enabled: false
27
-
28
- Style/SymbolArray:
29
- Enabled: false
data/.ruby-version DELETED
@@ -1 +0,0 @@
1
- 2.4.6
data/.simplecov DELETED
@@ -1,11 +0,0 @@
1
- require 'simplecov-console'
2
-
3
- formatters = [SimpleCov::Formatter::HTMLFormatter]
4
-
5
- if RSpec.configuration.files_to_run.length > 1
6
- formatters << SimpleCov::Formatter::Console
7
- end
8
-
9
- SimpleCov.start do
10
- formatter SimpleCov::Formatter::MultiFormatter.new(formatters)
11
- end
data/.travis.yml DELETED
@@ -1,21 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - 2.4.6
4
- - 2.5.5
5
- - 2.6.3
6
- cache:
7
- - bundler
8
- before_install:
9
- - gem update --system
10
- - gem install bundler
11
- before_script:
12
- - curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
13
- - chmod +x ./cc-test-reporter
14
- - ./cc-test-reporter before-build
15
- after_script:
16
- - ./cc-test-reporter after-build --exit-code $TRAVIS_TEST_RESULT
17
- notifications:
18
- email: false
19
- slack:
20
- rooms:
21
- secure: HoydkS7DVdZ/qnOEZq1IhavrwpHaSMhGAUnWY1Vzrlb7szKukDQC5DVR0VfWfluJay/oNStdaJLeO026rCtUeI7mR+gi6kwWg71Bp/WnqNBpXU1e6NxgtenuYJyStY92lGOXQW8Ikz+FYs5Q48v4N2SjTHWw1F4TliN/MLx9Pw7TE3EOUmH7g75m3/DBsAkNqGPjGN5QaKZhTJS+o1TWkyYAswhwUeByQOPcPgx+QBhcAaCB/N75NkxPXcCWHY17BVYw4I1YZEtx+uyfq/+h1CtxyASZ7UP2uy/ZjVrqLEYbRLRKb+SgFRkt8yOk93BhmdpaizNicnvjZmWdbfKQ9GGYNo7pw5r7PbeqDIbU/dGsR4ZLUuBXrBWFd9XkK+DADt94aUp3WB4meXqwqeB5bHNAVoD8UqXfQ92Iy2UFcQcPIZ8OsQbrtSiFfJSVlbdhsA4MUAOQtbcoR6so7uuPuzvUGQQbq+YAPRAcVqnAtDc3b78hN1vCFn/napXVfa1kPnQdWh5VgYjXIhWaY3bLyg3/oetXz+9ExkBopoTsap37/uYweUqVC4T0gQSonRfpJnGVnqsqnZyqa0XxhUK/QmbcQC27rUx6OuzFLdJa3HEq1+jPW14qq4lsmD2uNG9x9ZWWuTzVpbjpziLZLXIX2nmy3R3Yh+n7Kq9YTIX50B8=
data/Gemfile DELETED
@@ -1,4 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in absolutely.gemspec
4
- gemspec
data/Rakefile DELETED
@@ -1,18 +0,0 @@
1
- require 'bundler/gem_tasks'
2
-
3
- require 'reek/rake/task'
4
- require 'rspec/core/rake_task'
5
- require 'rubocop/rake_task'
6
-
7
- Reek::Rake::Task.new do |task|
8
- task.fail_on_error = false
9
- task.source_files = FileList['**/*.rb'].exclude('vendor/**/*.rb')
10
- end
11
-
12
- RSpec::Core::RakeTask.new
13
-
14
- RuboCop::RakeTask.new do |task|
15
- task.fail_on_error = false
16
- end
17
-
18
- task default: [:rubocop, :reek, :spec]