Hello community,
here is the log from the commit of package rubygem-addressable for
openSUSE:Factory checked in at 2017-09-04 12:37:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-addressable (Old)
and /work/SRC/openSUSE:Factory/.rubygem-addressable.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-addressable"
Mon Sep 4 12:37:03 2017 rev:17 rq:520448 version:2.5.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-addressable/rubygem-addressable.changes
2017-04-17 10:25:31.960829918 +0200
+++
/work/SRC/openSUSE:Factory/.rubygem-addressable.new/rubygem-addressable.changes
2017-09-04 12:37:04.681134276 +0200
@@ -1,0 +2,12 @@
+Sun Sep 3 08:54:03 UTC 2017 - [email protected]
+
+- updated to version 2.5.2
+ see installed CHANGELOG.md
+
+ # Addressable 2.5.2
+ - better support for frozen string literals
+ - fixed bug w/ uppercase characters in scheme
+ - IDNA errors w/ emoji URLs
+ - compatibility w/ public_suffix 3.x
+
+-------------------------------------------------------------------
Old:
----
addressable-2.5.1.gem
New:
----
addressable-2.5.2.gem
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rubygem-addressable.spec ++++++
--- /var/tmp/diff_new_pack.jxhLU5/_old 2017-09-04 12:37:05.369037494 +0200
+++ /var/tmp/diff_new_pack.jxhLU5/_new 2017-09-04 12:37:05.369037494 +0200
@@ -24,7 +24,7 @@
#
Name: rubygem-addressable
-Version: 2.5.1
+Version: 2.5.2
Release: 0
%define mod_name addressable
%define mod_full_name %{mod_name}-%{version}
++++++ addressable-2.5.1.gem -> addressable-2.5.2.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/CHANGELOG.md new/CHANGELOG.md
--- old/CHANGELOG.md 2017-03-29 23:14:40.000000000 +0200
+++ new/CHANGELOG.md 2017-08-25 02:00:11.000000000 +0200
@@ -1,3 +1,9 @@
+# Addressable 2.5.2
+- better support for frozen string literals
+- fixed bug w/ uppercase characters in scheme
+- IDNA errors w/ emoji URLs
+- compatibility w/ public_suffix 3.x
+
# Addressable 2.5.1
- allow unicode normalization to be disabled for URI Template expansion
- removed duplicate test
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Gemfile new/Gemfile
--- old/Gemfile 2017-03-29 23:14:40.000000000 +0200
+++ new/Gemfile 2017-08-25 02:00:11.000000000 +0200
@@ -29,4 +29,4 @@
end
end
-gem 'idn-ruby', :platform => [:mri_20, :mri_21, :mri_22]
+gem 'idn-ruby', :platform => [:mri_20, :mri_21, :mri_22, :mri_23, :mri_24]
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/addressable/idna/native.rb
new/lib/addressable/idna/native.rb
--- old/lib/addressable/idna/native.rb 2017-03-29 23:14:40.000000000 +0200
+++ new/lib/addressable/idna/native.rb 2017-08-25 02:00:11.000000000 +0200
@@ -35,7 +35,7 @@
def self.to_ascii(value)
value.to_s.split('.', -1).map do |segment|
if segment.size > 0 && segment.size < 64
- IDN::Idna.toASCII(segment)
+ IDN::Idna.toASCII(segment, IDN::Idna::ALLOW_UNASSIGNED)
elsif segment.size >= 64
segment
else
@@ -47,7 +47,7 @@
def self.to_unicode(value)
value.to_s.split('.', -1).map do |segment|
if segment.size > 0 && segment.size < 64
- IDN::Idna.toUnicode(segment)
+ IDN::Idna.toUnicode(segment, IDN::Idna::ALLOW_UNASSIGNED)
elsif segment.size >= 64
segment
else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/addressable/template.rb
new/lib/addressable/template.rb
--- old/lib/addressable/template.rb 2017-03-29 23:14:40.000000000 +0200
+++ new/lib/addressable/template.rb 2017-08-25 02:00:11.000000000 +0200
@@ -743,7 +743,7 @@
vars
.zip(operator_sequence(operator).take(vars.length))
- .reduce("") do |acc, (varspec, op)|
+ .reduce("".dup) do |acc, (varspec, op)|
_, name, _ = *varspec.match(VARSPEC)
acc << if mapping.key? name
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/addressable/uri.rb new/lib/addressable/uri.rb
--- old/lib/addressable/uri.rb 2017-03-29 23:14:40.000000000 +0200
+++ new/lib/addressable/uri.rb 2017-08-25 02:00:11.000000000 +0200
@@ -436,7 +436,7 @@
uri = uri.dup
# Seriously, only use UTF-8. I'm really not kidding!
uri.force_encoding("utf-8")
- leave_encoded.force_encoding("utf-8")
+ leave_encoded = leave_encoded.dup.force_encoding("utf-8")
result = uri.gsub(/%[0-9a-f]{2}/iu) do |sequence|
c = sequence[1..3].to_i(16).chr
c.force_encoding("utf-8")
@@ -847,7 +847,7 @@
return nil unless self.scheme
@normalized_scheme ||= begin
if self.scheme =~ /^\s*ssh\+svn\s*$/i
- "svn+ssh"
+ "svn+ssh".dup
else
Addressable::URI.normalize_component(
self.scheme.strip.downcase,
@@ -1032,9 +1032,9 @@
if !current_user && !current_password
nil
elsif current_user && current_password
- "#{current_user}:#{current_password}"
+ "#{current_user}:#{current_password}".dup
elsif current_user && !current_password
- "#{current_user}"
+ "#{current_user}".dup
end
end
# All normalized values should be UTF-8
@@ -1101,7 +1101,7 @@
CharacterClasses::HOST)
result
else
- EMPTY_STR
+ EMPTY_STR.dup
end
end
# All normalized values should be UTF-8
@@ -1421,7 +1421,7 @@
# @return [String] The components that identify a site.
def site
(self.scheme || self.authority) && @site ||= begin
- site_string = ""
+ site_string = "".dup
site_string << "#{self.scheme}:" if self.scheme != nil
site_string << "//#{self.authority}" if self.authority != nil
site_string
@@ -1440,7 +1440,7 @@
def normalized_site
return nil unless self.site
@normalized_site ||= begin
- site_string = ""
+ site_string = "".dup
if self.normalized_scheme != nil
site_string << "#{self.normalized_scheme}:"
end
@@ -1508,7 +1508,7 @@
result = URI.normalize_path(result)
if result.empty? &&
["http", "https", "ftp", "tftp"].include?(self.normalized_scheme)
- result = SLASH
+ result = SLASH.dup
end
result
end
@@ -1694,7 +1694,7 @@
end
# new_query_values have form [['key1', 'value1'], ['key2', 'value2']]
- buffer = ""
+ buffer = "".dup
new_query_values.each do |key, value|
encoded_key = URI.encode_component(
key, CharacterClasses::UNRESERVED
@@ -1724,7 +1724,7 @@
#
# @return [String] The request URI required for an HTTP request.
def request_uri
- return nil if self.absolute? && self.scheme !~ /^https?$/
+ return nil if self.absolute? && self.scheme !~ /^https?$/i
return (
(!self.path.empty? ? self.path : SLASH) +
(self.query ? "?#{self.query}" : EMPTY_STR)
@@ -1739,7 +1739,7 @@
if !new_request_uri.respond_to?(:to_str)
raise TypeError, "Can't convert #{new_request_uri.class} into String."
end
- if self.absolute? && self.scheme !~ /^https?$/
+ if self.absolute? && self.scheme !~ /^https?$/i
raise InvalidURIError,
"Cannot set an HTTP request URI for a non-HTTP URI."
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/addressable/version.rb
new/lib/addressable/version.rb
--- old/lib/addressable/version.rb 2017-03-29 23:14:40.000000000 +0200
+++ new/lib/addressable/version.rb 2017-08-25 02:00:11.000000000 +0200
@@ -22,7 +22,7 @@
module VERSION
MAJOR = 2
MINOR = 5
- TINY = 1
+ TINY = 2
STRING = [MAJOR, MINOR, TINY].join('.')
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata 2017-03-29 23:14:40.000000000 +0200
+++ new/metadata 2017-08-25 02:00:11.000000000 +0200
@@ -1,35 +1,35 @@
--- !ruby/object:Gem::Specification
name: addressable
version: !ruby/object:Gem::Version
- version: 2.5.1
+ version: 2.5.2
platform: ruby
authors:
- Bob Aman
autorequire:
bindir: bin
cert_chain: []
-date: 2017-03-29 00:00:00.000000000 Z
+date: 2017-08-25 00:00:00.000000000 Z
dependencies:
- !ruby/object:Gem::Dependency
name: public_suffix
requirement: !ruby/object:Gem::Requirement
requirements:
- - - "~>"
- - !ruby/object:Gem::Version
- version: '2.0'
- - ">="
- !ruby/object:Gem::Version
version: 2.0.2
+ - - "<"
+ - !ruby/object:Gem::Version
+ version: '4.0'
type: :runtime
prerelease: false
version_requirements: !ruby/object:Gem::Requirement
requirements:
- - - "~>"
- - !ruby/object:Gem::Version
- version: '2.0'
- - ">="
- !ruby/object:Gem::Version
version: 2.0.2
+ - - "<"
+ - !ruby/object:Gem::Version
+ version: '4.0'
- !ruby/object:Gem::Dependency
name: bundler
requirement: !ruby/object:Gem::Requirement
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/spec/addressable/idna_spec.rb
new/spec/addressable/idna_spec.rb
--- old/spec/addressable/idna_spec.rb 2017-03-29 23:14:40.000000000 +0200
+++ new/spec/addressable/idna_spec.rb 2017-08-25 02:00:11.000000000 +0200
@@ -134,6 +134,12 @@
)).to eq("xn--4ud")
end
+ it "should convert '🌹🌹🌹.ws' correctly" do
+ expect(Addressable::IDNA.to_ascii(
+ "\360\237\214\271\360\237\214\271\360\237\214\271.ws"
+ )).to eq("xn--2h8haa.ws")
+ end
+
it "should handle two adjacent '.'s correctly" do
expect(Addressable::IDNA.to_ascii(
"example..host"
@@ -231,6 +237,12 @@
)).to eq("\341\206\265")
end
+ it "should convert '🌹🌹🌹.ws' correctly" do
+ expect(Addressable::IDNA.to_unicode(
+ "xn--2h8haa.ws"
+ )).to eq("\360\237\214\271\360\237\214\271\360\237\214\271.ws")
+ end
+
it "should handle two adjacent '.'s correctly" do
expect(Addressable::IDNA.to_unicode(
"example..host"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/spec/addressable/uri_spec.rb
new/spec/addressable/uri_spec.rb
--- old/spec/addressable/uri_spec.rb 2017-03-29 23:14:40.000000000 +0200
+++ new/spec/addressable/uri_spec.rb 2017-08-25 02:00:11.000000000 +0200
@@ -955,6 +955,10 @@
expect(@uri.normalize.query).to eq("a=1")
end
+ it "returns '/%70a%74%68?a=%31' for #request_uri" do
+ expect(@uri.request_uri).to eq("/%70a%74%68?a=%31")
+ end
+
it "returns '1%323' for #fragment" do
expect(@uri.fragment).to eq("1%323")
end
@@ -1971,9 +1975,9 @@
# Section 5.1.2 of RFC 2616
describe Addressable::URI, "when parsed from " +
- "'http://www.w3.org/pub/WWW/TheProject.html'" do
+ "'HTTP://www.w3.org/pub/WWW/TheProject.html'" do
before do
- @uri = Addressable::URI.parse("http://www.w3.org/pub/WWW/TheProject.html")
+ @uri = Addressable::URI.parse("HTTP://www.w3.org/pub/WWW/TheProject.html")
end
it "should have the correct request URI" do
@@ -2008,7 +2012,7 @@
it "should correctly convert to a hash" do
expect(@uri.to_hash).to eq({
- :scheme => "http",
+ :scheme => "HTTP",
:user => nil,
:password => nil,
:host => "www.w3.org",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/tasks/gem.rake new/tasks/gem.rake
--- old/tasks/gem.rake 2017-03-29 23:14:40.000000000 +0200
+++ new/tasks/gem.rake 2017-08-25 02:00:11.000000000 +0200
@@ -20,7 +20,7 @@
s.required_ruby_version = '>= 2.0'
- s.add_runtime_dependency 'public_suffix', '~> 2.0', '>= 2.0.2'
+ s.add_runtime_dependency 'public_suffix', '>= 2.0.2', '< 4.0'
s.add_development_dependency 'bundler', '~> 1.0'
s.require_path = "lib"