nokogiri-html-ext 1.4.0 → 1.4.1

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: 81844b7536086078b24d1600282bb324c1325cc62b527b45bf81a13090ff413a
4
- data.tar.gz: fdda5725873079052a6315c6d19a388dce12586c54ed88cb42321f215f2826fe
3
+ metadata.gz: 3c5f1ccd4ab43e822b1bc075f4b84c212b9ab539e07b206d2b65499a775ed539
4
+ data.tar.gz: 15ef0baaa308692662f39e238bedba2029e336b53d753190182b19b770e0ea6b
5
5
  SHA512:
6
- metadata.gz: 307a4c317c840578338d253d1c6c8586ab863ec97f32cde0339069c8a096220c6863d718d305f000357cee68fdfb4e5b36e7cc8a91eb27e7bcd55045b7cf7a77
7
- data.tar.gz: d1701b55fe58d9b80378b2a9b09a5c73a0c528895869aa99ecd01ce6d4b291c6108708b5eb6ea55c1201e545c975e85af14489b58272282473451b27a4c2e929
6
+ metadata.gz: 2ba7cba037735ea0323abae2828d0c8abd576886b97fef12b8319add735dedbe77ada5433f47e4f42a240855ff196dd178925a61bcbd99e7be834bf500423cd7
7
+ data.tar.gz: 53ddcdcc16b93fdf00947acaec6764d56f95665cac5bc96868a2a20a627b917907c1fa7182639d89d0359e5c0eed6ca4932cb112e2944de9403fca83d888a5e2
@@ -62,9 +62,17 @@ module Nokogiri
62
62
  #
63
63
  # @return [String]
64
64
  def resolve_relative_url(url)
65
- strs = [document.url, base_href, url].compact
65
+ strs = [document.url, base_href, url].filter_map { |str| str&.strip }
66
66
 
67
- Addressable::URI.join(*strs).to_s
67
+ uri = Addressable::URI.join(*strs)
68
+
69
+ # Normalize an empty path component.
70
+ #
71
+ # @see https://datatracker.ietf.org/doc/html/rfc3986#section-6.2.3
72
+ # RFC 3986 Uniform Resource Identifier (URI): Generic Syntax § 6.2.3. Scheme-Based Normalization
73
+ uri.path = uri.normalized_path if uri.path.empty?
74
+
75
+ uri.to_s
68
76
  rescue Addressable::URI::InvalidURIError
69
77
  url
70
78
  end
@@ -74,13 +82,11 @@ module Nokogiri
74
82
  # @return [self]
75
83
  def resolve_relative_urls!
76
84
  xpath(*ATTRIBUTES_XPATHS).each do |attr_node|
77
- stripped_value = attr_node.value.strip
78
-
79
85
  attr_node.value =
80
86
  if SRCSET_ATTRIBUTES_MAP.key?(attr_node.name)
81
- resolve_srcset_attributes(stripped_value.split(/\s*,\s*/))
87
+ resolve_srcset_attributes(attr_node.value.split(/\s*,\s*/))
82
88
  else
83
- resolve_relative_url(stripped_value)
89
+ resolve_relative_url(attr_node.value)
84
90
  end
85
91
  end
86
92
 
@@ -4,7 +4,7 @@ Gem::Specification.new do |spec|
4
4
  spec.required_ruby_version = ">= 2.7"
5
5
 
6
6
  spec.name = "nokogiri-html-ext"
7
- spec.version = "1.4.0"
7
+ spec.version = "1.4.1"
8
8
  spec.authors = ["Jason Garber"]
9
9
  spec.email = ["jason@sixtwothree.org"]
10
10
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nokogiri-html-ext
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Garber
@@ -55,11 +55,11 @@ licenses:
55
55
  - MIT
56
56
  metadata:
57
57
  bug_tracker_uri: https://codeberg.org/jgarber/nokogiri-html-ext/issues
58
- changelog_uri: https://codeberg.org/jgarber/nokogiri-html-ext/releases/tag/v1.4.0
59
- documentation_uri: https://rubydoc.info/gems/nokogiri-html-ext/1.4.0
58
+ changelog_uri: https://codeberg.org/jgarber/nokogiri-html-ext/releases/tag/v1.4.1
59
+ documentation_uri: https://rubydoc.info/gems/nokogiri-html-ext/1.4.1
60
60
  homepage_uri: https://codeberg.org/jgarber/nokogiri-html-ext
61
61
  rubygems_mfa_required: 'true'
62
- source_code_uri: https://codeberg.org/jgarber/nokogiri-html-ext/src/tag/v1.4.0
62
+ source_code_uri: https://codeberg.org/jgarber/nokogiri-html-ext/src/tag/v1.4.1
63
63
  rdoc_options: []
64
64
  require_paths:
65
65
  - lib
@@ -74,7 +74,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  requirements: []
77
- rubygems_version: 3.6.8
77
+ rubygems_version: 3.6.9
78
78
  specification_version: 4
79
79
  summary: Extend Nokogiri with several useful HTML-centric features.
80
80
  test_files: []