Skip to content

Commit fba909e

Browse files
authored
Merge branch 'main' into freeze_concatenated_strings
2 parents 87931d3 + a4d1f8b commit fba909e

16 files changed

Lines changed: 41 additions & 54 deletions

File tree

.github/workflows/test.yml

Lines changed: 21 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@ jobs:
1414
matrix:
1515
ruby: [2.7]
1616
idna_mode: [native, pure]
17-
os: [ubuntu-18.04]
17+
os: [ubuntu-20.04]
1818
env:
1919
IDNA_MODE: ${{ matrix.idna_mode }}
2020
steps:
21-
- uses: actions/checkout@v2
21+
- uses: actions/checkout@v3
2222

2323
- name: Install libidn
2424
run: sudo apt-get install libidn11-dev
@@ -46,15 +46,15 @@ jobs:
4646
fail-fast: false
4747
matrix:
4848
ruby: [2.7]
49-
os: [ubuntu-18.04]
49+
os: [ubuntu-20.04]
5050
env:
5151
BUNDLE_WITHOUT: development
5252
COVERALLS_SERVICE_NAME: github
5353
COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5454
COVERALLS_DEBUG: true
5555
CI_BUILD_NUMBER: ${{ github.run_id }}
5656
steps:
57-
- uses: actions/checkout@v2
57+
- uses: actions/checkout@v3
5858

5959
- name: Install libidn
6060
run: sudo apt-get install libidn11-dev
@@ -91,46 +91,38 @@ jobs:
9191
- jruby-9.1
9292
- jruby-9.2
9393
- jruby-9.3
94-
- jruby-head
9594
- truffleruby-21.3
96-
- truffleruby-head
95+
- truffleruby-22.1
9796
os:
98-
- ubuntu-18.04
97+
- ubuntu-20.04
9998
gemfile:
10099
- Gemfile
101100
include:
102-
- { os: ubuntu-18.04, ruby: 2.7, gemfile: gemfiles/public_suffix_2.rb }
103-
- { os: ubuntu-18.04, ruby: 2.7, gemfile: gemfiles/public_suffix_3.rb }
104-
# Ubuntu 20.04
105-
- { os: ubuntu-20.04, ruby: 2.7 }
106-
- { os: ubuntu-20.04, ruby: '3.0' }
107-
- { os: ubuntu-20.04, ruby: 3.1 }
101+
- { os: ubuntu-20.04, ruby: 2.7, gemfile: gemfiles/public_suffix_2.rb }
102+
- { os: ubuntu-20.04, ruby: 2.7, gemfile: gemfiles/public_suffix_3.rb }
103+
- { os: ubuntu-20.04, ruby: 2.7, gemfile: gemfiles/public_suffix_4.rb }
104+
# Ubuntu
105+
- { os: ubuntu-18.04, ruby: 2.7 }
106+
- { os: ubuntu-22.04, ruby: 3.1 }
108107
# macOS
109-
- { os: macos-10.15, ruby: 2.7 }
110-
- { os: macos-10.15, ruby: '3.0' }
111-
- { os: macos-10.15, ruby: jruby }
112-
- { os: macos-10.15, ruby: truffleruby-21.3 }
113-
- { os: macos-11, ruby: 2.7 }
114-
- { os: macos-11, ruby: '3.0' }
115108
- { os: macos-11, ruby: 3.1 }
116-
- { os: macos-11, ruby: jruby }
117-
- { os: macos-11, ruby: truffleruby-21.3 }
109+
- { os: macos-12, ruby: 3.1 }
118110
# Windows
119-
- { os: windows-2019, ruby: 2.7 }
120-
- { os: windows-2019, ruby: '3.0' }
121111
- { os: windows-2019, ruby: 3.1 }
122112
- { os: windows-2022, ruby: 3.1 }
123-
- { os: windows-2019, ruby: jruby-9.1 }
124-
- { os: windows-2019, ruby: jruby-9.2 }
125-
- { os: windows-2019, ruby: jruby-9.3 }
113+
- { os: windows-2022, ruby: jruby-9.3 }
126114
# allowed to fail
127-
- { os: ubuntu-18.04, ruby: jruby-head, allow-failure: true }
128-
- { os: ubuntu-18.04, ruby: truffleruby-head, allow-failure: true }
115+
- { os: ubuntu-20.04, ruby: jruby-head, gemfile: Gemfile, allow-failure: true }
116+
- { os: ubuntu-20.04, ruby: truffleruby-head, gemfile: Gemfile, allow-failure: true }
129117
env:
130118
BUNDLE_GEMFILE: ${{ matrix.gemfile }}
131119
BUNDLE_WITHOUT: development:coverage
120+
# Workaround for Windows JRuby JDK issue
121+
# https://github.com/ruby/setup-ruby/issues/339
122+
# https://github.com/jruby/jruby/issues/7182#issuecomment-1112953015
123+
JAVA_OPTS: -Djdk.io.File.enableADS=true
132124
steps:
133-
- uses: actions/checkout@v2
125+
- uses: actions/checkout@v3
134126

135127
- name: Install libidn (Ubuntu)
136128
if: startsWith(matrix.os, 'ubuntu')

Gemfile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,6 @@ group :test, :development do
2525
gem "rake", ">= 12.3.3"
2626
end
2727

28-
gem "idn-ruby", platform: :mri
28+
unless ENV["IDNA_MODE"] == "pure"
29+
gem "idn-ruby", platform: :mri
30+
end

addressable.gemspec

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,32 +6,30 @@ Gem::Specification.new do |s|
66
s.version = "2.8.0"
77

88
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
9+
s.metadata = { "changelog_uri" => "https://github.com/sporkmonger/addressable/blob/main/CHANGELOG.md" } if s.respond_to? :metadata=
910
s.require_paths = ["lib".freeze]
1011
s.authors = ["Bob Aman".freeze]
1112
s.date = "2021-07-03"
1213
s.description = "Addressable is an alternative implementation to the URI implementation that is\npart of Ruby's standard library. It is flexible, offers heuristic parsing, and\nadditionally provides extensive support for IRIs and URI templates.\n".freeze
1314
s.email = "bob@sporkmonger.com".freeze
1415
s.extra_rdoc_files = ["README.md".freeze]
15-
s.files = ["CHANGELOG.md".freeze, "Gemfile".freeze, "LICENSE.txt".freeze, "README.md".freeze, "Rakefile".freeze, "addressable.gemspec".freeze, "benchmark".freeze, "coverage".freeze, "data".freeze, "data/unicode.data".freeze, "documentation".freeze, "gemfiles".freeze, "lib".freeze, "lib/addressable".freeze, "lib/addressable.rb".freeze, "lib/addressable/idna".freeze, "lib/addressable/idna.rb".freeze, "lib/addressable/idna/native.rb".freeze, "lib/addressable/idna/pure.rb".freeze, "lib/addressable/template.rb".freeze, "lib/addressable/uri.rb".freeze, "lib/addressable/version.rb".freeze, "spec".freeze, "spec/addressable".freeze, "spec/addressable/idna_spec.rb".freeze, "spec/addressable/net_http_compat_spec.rb".freeze, "spec/addressable/security_spec.rb".freeze, "spec/addressable/template_spec.rb".freeze, "spec/addressable/uri_spec.rb".freeze, "spec/spec_helper.rb".freeze, "specdoc".freeze, "tasks".freeze, "tasks/clobber.rake".freeze, "tasks/gem.rake".freeze, "tasks/git.rake".freeze, "tasks/metrics.rake".freeze, "tasks/profile.rake".freeze, "tasks/rspec.rake".freeze, "tasks/yard.rake".freeze, "tmp".freeze]
16+
s.files = ["CHANGELOG.md".freeze, "Gemfile".freeze, "LICENSE.txt".freeze, "README.md".freeze, "Rakefile".freeze, "data/unicode.data".freeze, "lib/addressable".freeze, "lib/addressable.rb".freeze, "lib/addressable/idna".freeze, "lib/addressable/idna.rb".freeze, "lib/addressable/idna/native.rb".freeze, "lib/addressable/idna/pure.rb".freeze, "lib/addressable/template.rb".freeze, "lib/addressable/uri.rb".freeze, "lib/addressable/version.rb".freeze, "spec/addressable".freeze, "spec/addressable/idna_spec.rb".freeze, "spec/addressable/net_http_compat_spec.rb".freeze, "spec/addressable/security_spec.rb".freeze, "spec/addressable/template_spec.rb".freeze, "spec/addressable/uri_spec.rb".freeze, "spec/spec_helper.rb".freeze, "tasks/clobber.rake".freeze, "tasks/gem.rake".freeze, "tasks/git.rake".freeze, "tasks/metrics.rake".freeze, "tasks/profile.rake".freeze, "tasks/rspec.rake".freeze, "tasks/yard.rake".freeze]
1617
s.homepage = "https://github.com/sporkmonger/addressable".freeze
1718
s.licenses = ["Apache-2.0".freeze]
1819
s.rdoc_options = ["--main".freeze, "README.md".freeze]
19-
s.required_ruby_version = Gem::Requirement.new(">= 2.0".freeze)
20-
s.rubygems_version = "3.0.3".freeze
20+
s.required_ruby_version = Gem::Requirement.new(">= 2.2".freeze)
21+
s.rubygems_version = "3.3.7".freeze
2122
s.summary = "URI Implementation".freeze
2223

2324
if s.respond_to? :specification_version then
2425
s.specification_version = 4
26+
end
2527

26-
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
27-
s.add_runtime_dependency(%q<public_suffix>.freeze, [">= 2.0.2", "< 5.0"])
28-
s.add_development_dependency(%q<bundler>.freeze, [">= 1.0", "< 3.0"])
29-
else
30-
s.add_dependency(%q<public_suffix>.freeze, [">= 2.0.2", "< 5.0"])
31-
s.add_dependency(%q<bundler>.freeze, [">= 1.0", "< 3.0"])
32-
end
28+
if s.respond_to? :add_runtime_dependency then
29+
s.add_runtime_dependency(%q<public_suffix>.freeze, [">= 2.0.2", "< 6.0"])
30+
s.add_development_dependency(%q<bundler>.freeze, [">= 1.0", "< 3.0"])
3331
else
34-
s.add_dependency(%q<public_suffix>.freeze, [">= 2.0.2", "< 5.0"])
32+
s.add_dependency(%q<public_suffix>.freeze, [">= 2.0.2", "< 6.0"])
3533
s.add_dependency(%q<bundler>.freeze, [">= 1.0", "< 3.0"])
3634
end
3735
end

gemfiles/public_suffix_4.rb

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# frozen_string_literal: true
2+
3+
# Assumes this gemfile is used from the project root
4+
eval_gemfile "../Gemfile"
5+
6+
gem "public_suffix", "~> 4.0"

lib/addressable/idna.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# frozen_string_literal: true
22

3-
# encoding:utf-8
43
#--
54
# Copyright (C) Bob Aman
65
#

lib/addressable/idna/native.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# frozen_string_literal: true
22

3-
# encoding:utf-8
43
#--
54
# Copyright (C) Bob Aman
65
#

lib/addressable/idna/pure.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# frozen_string_literal: true
22

3-
# encoding:utf-8
43
#--
54
# Copyright (C) Bob Aman
65
#

lib/addressable/template.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# frozen_string_literal: true
22

3-
# encoding:utf-8
43
#--
54
# Copyright (C) Bob Aman
65
#

lib/addressable/uri.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# frozen_string_literal: true
22

3-
# encoding:utf-8
43
#--
54
# Copyright (C) Bob Aman
65
#

lib/addressable/version.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# frozen_string_literal: true
22

3-
# encoding:utf-8
43
#--
54
# Copyright (C) Bob Aman
65
#

0 commit comments

Comments
 (0)