gravaty 10.0.0 → 11.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +7 -0
  3. data/Gemfile +5 -1
  4. data/README.md +219 -212
  5. data/Rakefile +9 -3
  6. data/copyright.md +33 -136
  7. data/examples/avatar.rb +70 -43
  8. data/examples/basics.rb +30 -20
  9. data/examples/profile.rb +77 -50
  10. data/examples/xmlrpc.rb +24 -10
  11. data/gravaty.gemspec +46 -25
  12. data/html/CHANGELOG.html +13 -20
  13. data/html/COPYING_md.html +8 -24
  14. data/html/Gemfile.html +7 -21
  15. data/html/Gravaty.html +49 -113
  16. data/html/Gravaty/Gravaty.html +138 -343
  17. data/html/Gravaty/ParsableDuckType.html +14 -33
  18. data/html/Gravaty/Parser.html +27 -66
  19. data/html/Gravaty/Parsers.html +3 -11
  20. data/html/Gravaty/Parsers/Avatar.html +19 -36
  21. data/html/Gravaty/Parsers/Callback.html +21 -37
  22. data/html/Gravaty/Parsers/Default.html +28 -45
  23. data/html/Gravaty/Parsers/Force.html +21 -37
  24. data/html/Gravaty/Parsers/Format.html +22 -42
  25. data/html/Gravaty/Parsers/Pixelsize.html +22 -42
  26. data/html/Gravaty/Parsers/Rating.html +22 -42
  27. data/html/Gravaty/Parsers/Secure.html +19 -36
  28. data/html/Gravaty/Parsers/Type.html +22 -42
  29. data/html/Gravaty/Utils.html +11 -13
  30. data/html/Gravaty/Utils/Downloader.html +3 -11
  31. data/html/Gravaty/Utils/Downloader/Downloader.html +25 -59
  32. data/html/Gravaty/Utils/Raisers.html +24 -55
  33. data/html/Gravaty/Utils/Rfc5322.html +12 -19
  34. data/html/Gravaty/Utils/RpcConnector.html +11 -13
  35. data/html/Gravaty/Utils/RpcConnector/RpcConnector.html +33 -73
  36. data/html/Object.html +728 -57
  37. data/html/README_md.html +105 -100
  38. data/html/Rakefile.html +9 -23
  39. data/html/copyright_md.html +17 -119
  40. data/html/created.rid +48 -55
  41. data/html/css/rdoc.css +1 -1
  42. data/html/index.html +97 -114
  43. data/html/js/navigation.js.gz +0 -0
  44. data/html/js/search_index.js +1 -1
  45. data/html/js/search_index.js.gz +0 -0
  46. data/html/js/searcher.js.gz +0 -0
  47. data/html/table_of_contents.html +219 -651
  48. data/lib/gravaty.rb +22 -15
  49. data/lib/gravaty/application.rb +40 -25
  50. data/lib/gravaty/constants.rb +20 -11
  51. data/lib/gravaty/locales/en.yml +9 -3
  52. data/lib/gravaty/locales/it.yml +9 -3
  53. data/lib/gravaty/locales/ja.yml +7 -4
  54. data/lib/gravaty/parser.rb +16 -10
  55. data/lib/gravaty/parsers/avatar.rb +11 -3
  56. data/lib/gravaty/parsers/callback.rb +13 -4
  57. data/lib/gravaty/parsers/default.rb +24 -16
  58. data/lib/gravaty/parsers/force.rb +12 -2
  59. data/lib/gravaty/parsers/format.rb +11 -2
  60. data/lib/gravaty/parsers/pixelsize.rb +12 -3
  61. data/lib/gravaty/parsers/rating.rb +12 -3
  62. data/lib/gravaty/parsers/secure.rb +11 -2
  63. data/lib/gravaty/parsers/type.rb +11 -2
  64. data/lib/gravaty/utils/downloader.rb +98 -96
  65. data/lib/gravaty/utils/raisers.rb +19 -12
  66. data/lib/gravaty/utils/rfc5322.rb +54 -41
  67. data/lib/gravaty/utils/rpc_connector.rb +19 -11
  68. data/lib/gravaty/version.rb +10 -2
  69. data/test/gravaty/locales/en.yml +29 -0
  70. data/test/gravaty/locales/it.yml +29 -0
  71. data/test/gravaty/locales/ja.yml +27 -0
  72. data/test/gravaty/locales/test_locales.rb +17 -13
  73. data/test/gravaty/parsers/test_avatar.rb +9 -1
  74. data/test/gravaty/parsers/test_callback.rb +12 -4
  75. data/test/gravaty/parsers/test_default.rb +25 -21
  76. data/test/gravaty/parsers/test_force.rb +9 -1
  77. data/test/gravaty/parsers/test_format.rb +18 -11
  78. data/test/gravaty/parsers/test_pixelsize.rb +19 -12
  79. data/test/gravaty/parsers/test_rating.rb +18 -11
  80. data/test/gravaty/parsers/test_secure.rb +9 -1
  81. data/test/gravaty/parsers/test_type.rb +14 -5
  82. data/test/gravaty/test_application.rb +14 -6
  83. data/test/gravaty/test_avatar.rb +94 -59
  84. data/test/gravaty/test_parser.rb +11 -5
  85. data/test/gravaty/test_profile.rb +47 -25
  86. data/test/gravaty/utils/test_downloader.rb +43 -28
  87. data/test/gravaty/utils/test_raisers.rb +42 -26
  88. data/test/gravaty/utils/test_rfc5322.rb +35 -13
  89. data/test/gravaty/utils/test_rpc_connector.rb +83 -39
  90. data/test/test_gravaty.rb +12 -4
  91. data/test/test_helper.rb +15 -9
  92. metadata +54 -40
  93. data/ISSUES.md +0 -62
  94. data/acknowledgements.md +0 -66
  95. data/authors.md +0 -63
  96. data/examples/cacert.pem +0 -3466
  97. data/html/ISSUES_md.html +0 -166
  98. data/html/acknowledgements_md.html +0 -161
  99. data/html/authors_md.html +0 -174
  100. data/html/examples/cacert_pem.html +0 -1078
@@ -1,6 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # gravaty
3
- # Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Marco Bresciani
5
+ # rubocop:disable Style/AsciiComments
6
+ # © 2013 Marco Bresciani
7
+ # rubocop:enable Style/AsciiComments
4
8
  #
5
9
  # This file is part of gravaty.
6
10
  #
@@ -16,19 +20,24 @@
16
20
  #
17
21
  # You should have received a copy of the GNU General Public License
18
22
  # along with gravaty. If not, see <http://www.gnu.org/licenses/>.
23
+ #
24
+ # SPDX-FileCopyrightText: 2013 Marco Bresciani
25
+ #
26
+ # SPDX-License-Identifier: GPL-3.0-or-later
19
27
  #++
20
28
 
21
29
  require_relative '../../test_helper'
22
30
 
23
- describe Gravaty::Utils::Rfc5322 do
31
+ def test_nil
24
32
  describe 'when passed a nil email address' do
25
33
  it 'must return nil' do
26
34
  _(Gravaty::Utils::Rfc5322::EMAIL.match(nil)).must_be_nil
27
35
  end
28
36
  end
37
+ end
29
38
 
39
+ def test_invalid
30
40
  describe 'when passed an invalid email address, according to RF5322' do
31
-
32
41
  # This test does not pass with 'Joe Q. Public
33
42
  # <john.q.public@example.com>' email: see
34
43
  # <https://tools.ietf.org/html/rfc5322#appendix-A.1.2> that is: it
@@ -41,15 +50,27 @@ describe Gravaty::Utils::Rfc5322 do
41
50
  # characters (the double-quote characters appearing as quoted-pair
42
51
  # constructs).
43
52
  ['-.', 'Joe Q. Public <john.q.public@example.com>']
44
- .each do |invalid_address|
53
+ .each do |invalid_address|
45
54
  it "must return nil for '#{invalid_address}' invalid address" do
55
+ skip 'This test does not pass.'
46
56
  _(Gravaty::Utils::Rfc5322::EMAIL.match invalid_address).must_be_nil
47
57
  end
48
58
  end
49
59
  end
60
+ end
50
61
 
51
- describe 'when passed a valid email address, according to RF5322' do
62
+ TEST_ADDRESSES = ['John Doe <jdoe@machine.example>', 'Mary Smith <mary@example.net>',
63
+ 'Mary Smith <mary@example.net>',
64
+ # rubocop:disable Layout/LineLength
65
+ "A Group(Some people)\n :Chris Jones <c@(Chris's host.)public.example>,\n joe@example.org,\n John <jdoe@one.test> (my dear friend);",
66
+ # rubocop:enable Layout/LineLength
67
+ 'Who? <one@y.test>', '"Joe Q. Public" <john.q.public@example.com>',
68
+ '"Giant; \"Big\" Box" <sysservices@example.net>',
69
+ 'A Group:Ed Jones <c@a.test>,joe@where.test,John <jdoe@one.test>;',
70
+ 'Pete(A nice \) chap) <pete(his account)@silly.test(his host)>'].freeze
52
71
 
72
+ def test_valid
73
+ describe 'when passed a valid email address, according to RF5322' do
53
74
  # This test shall pass... see
54
75
  # <https://tools.ietf.org/html/rfc5322#appendix-A.5>
55
76
  #
@@ -66,17 +87,18 @@ describe Gravaty::Utils::Rfc5322 do
66
87
  # except at the end) and the missing seconds in the time of the date
67
88
  # field; and (5) the white space before (but not within) the
68
89
  # identifier in the "Message-ID:" field.
69
- ['John Doe <jdoe@machine.example>', 'Mary Smith <mary@example.net>',
70
- 'Mary Smith <mary@example.net>',
71
- "A Group(Some people)\n :Chris Jones <c@(Chris's host.)public.example>,\n joe@example.org,\n John <jdoe@one.test> (my dear friend);",
72
- 'Who? <one@y.test>', '"Joe Q. Public" <john.q.public@example.com>',
73
- '"Giant; \"Big\" Box" <sysservices@example.net>',
74
- 'A Group:Ed Jones <c@a.test>,joe@where.test,John <jdoe@one.test>;',
75
- 'Pete(A nice \) chap) <pete(his account)@silly.test(his host)>']
76
- .each do |address|
90
+ TEST_ADDRESSES.each do |address|
77
91
  it "must match the valid '#{address}' email address" do
78
92
  _(Gravaty::Utils::Rfc5322::EMAIL.match address).wont_be_nil
79
93
  end
80
94
  end
81
95
  end
82
96
  end
97
+
98
+ describe Gravaty::Utils::Rfc5322 do
99
+ test_nil
100
+
101
+ test_invalid
102
+
103
+ test_valid
104
+ end
@@ -1,6 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # gravaty
3
- # Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Marco Bresciani
5
+ # rubocop:disable Style/AsciiComments
6
+ # © 2013 Marco Bresciani
7
+ # rubocop:enable Style/AsciiComments
4
8
  #
5
9
  # This file is part of gravaty.
6
10
  #
@@ -16,64 +20,104 @@
16
20
  #
17
21
  # You should have received a copy of the GNU General Public License
18
22
  # along with gravaty. If not, see <http://www.gnu.org/licenses/>.
23
+ #
24
+ # SPDX-FileCopyrightText: 2013 Marco Bresciani
25
+ #
26
+ # SPDX-License-Identifier: GPL-3.0-or-later
19
27
  #++
20
28
 
21
29
  require_relative '../../test_helper'
22
30
 
23
- describe Gravaty::Utils::RpcConnector do
24
- before do
25
- I18n.load_path = Dir[File.join(File.dirname(__FILE__),
26
- '/../../../lib/gravaty/locales/',
27
- '*.yml')]
28
- I18n.locale = 'it'
31
+ def test_digest(param, password)
32
+ it "shall raise an ArgumentError when digest is '#{param}'" do
33
+ _(lambda {
34
+ Gravaty::Utils::RpcConnector::RpcConnector
35
+ .new param, password
36
+ }).must_raise ArgumentError
29
37
  end
38
+ end
30
39
 
31
- digest = Digest::MD5.hexdigest('[YOUR EMAIL HERE]'.downcase)
32
- password = '[YOUR PASSWORD HERE]'
40
+ def test_password(digest, param)
41
+ it "shall raise an ArgumentError when password is '#{param}'" do
42
+ _(lambda {
43
+ Gravaty::Utils::RpcConnector::RpcConnector
44
+ .new digest, param
45
+ }).must_raise ArgumentError
46
+ end
47
+ end
33
48
 
34
- subject { Gravaty::Utils::RpcConnector::RpcConnector
35
- .new digest, password }
49
+ def test_parameters(param)
50
+ it "shall raise an ArgumentError when parameters are '#{param}'" do
51
+ _(lambda {
52
+ Gravaty::Utils::RpcConnector::RpcConnector
53
+ .new param, param
54
+ }).must_raise ArgumentError
55
+ end
56
+ end
36
57
 
58
+ def test_invalid_parameter(digest, password)
37
59
  describe 'when receiving an invalid parameter' do
38
60
  [nil, ''].each do |param|
39
- it "shall raise an ArgumentError when digest is '#{param}'" do
40
- _(-> { Gravaty::Utils::RpcConnector::RpcConnector
41
- .new param, password }).must_raise ArgumentError
42
- end
43
-
44
- it "shall raise an ArgumentError when password is '#{param}'" do
45
- _(-> { Gravaty::Utils::RpcConnector::RpcConnector
46
- .new digest, param }).must_raise ArgumentError
47
- end
48
-
49
- it "shall raise an ArgumentError when parameters are '#{param}'" do
50
- _(-> { Gravaty::Utils::RpcConnector::RpcConnector
51
- .new param, param }).must_raise ArgumentError
52
- end
61
+ test_digest(param, password)
62
+
63
+ test_password(digest, param)
64
+
65
+ test_parameters(param)
53
66
  end
54
67
  end
68
+ end
69
+
70
+ def test_info_test
71
+ it 'shall provide information through test method' do
72
+ skip 'This test shall be configured with own Gravatar email and password.'
73
+ result = subject.call(Gravaty::RPC_TEST_METHOD)
55
74
 
75
+ result.wont_be_nil
76
+ result.wont_be_empty
77
+ result['response'].wont_be_nil
78
+ end
79
+ end
80
+
81
+ def test_info_exist(digest)
82
+ it 'shall provide information through exists method' do
83
+ skip 'This test shall be configured with own Gravatar email and password.'
84
+ result = subject.call('grav.exists', hashes: [digest])
85
+
86
+ result.wont_be_nil
87
+ result.wont_be_empty
88
+ result[digest].wont_be_nil
89
+ end
90
+ end
91
+
92
+ def test_valid_parameter(digest)
56
93
  describe 'when created with valid parameters' do
57
94
  it 'shall provide an useable connector' do
58
95
  _(subject).wont_be_nil
59
96
  end
60
97
 
61
- it 'shall provide information through test method' do
62
- skip 'This test shall be configured with own Gravatar email and password.'
63
- result = subject.call(Gravaty::RPC_TEST_METHOD)
98
+ test_info_test
64
99
 
65
- result.wont_be_nil
66
- result.wont_be_empty
67
- result['response'].wont_be_nil
68
- end
100
+ test_info_exist(digest)
101
+ end
102
+ end
69
103
 
70
- it 'shall provide information through exists method' do
71
- skip 'This test shall be configured with own Gravatar email and password.'
72
- result = subject.call('grav.exists', hashes: [digest])
104
+ describe Gravaty::Utils::RpcConnector do
105
+ before do
106
+ I18n.load_path = Dir[File.join(File.dirname(__FILE__),
107
+ '/../../../lib/gravaty/locales/',
108
+ '*.yml')]
109
+ I18n.locale = 'it'
110
+ end
73
111
 
74
- result.wont_be_nil
75
- result.wont_be_empty
76
- result[digest].wont_be_nil
77
- end
112
+ digest = Digest::MD5.hexdigest('[YOUR EMAIL HERE]'.downcase)
113
+ password = '[YOUR PASSWORD HERE]'
114
+
115
+ subject do
116
+ Gravaty::Utils::RpcConnector::RpcConnector
117
+ .new digest, password
78
118
  end
119
+
120
+ test_invalid_parameter(digest, password)
121
+
122
+ test_valid_parameter(digest)
79
123
  end
data/test/test_gravaty.rb CHANGED
@@ -1,6 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # gravaty
3
- # Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
5
+ # rubocop:disable Style/AsciiComments
6
+ # © 2013 Marco Bresciani
7
+ # rubocop:enable Style/AsciiComments
4
8
  #
5
9
  # This file is part of gravaty.
6
10
  #
@@ -16,6 +20,10 @@
16
20
  #
17
21
  # You should have received a copy of the GNU General Public License
18
22
  # along with gravaty. If not, see <http://www.gnu.org/licenses/>.
23
+ #
24
+ # SPDX-FileCopyrightText: 2013 Marco Bresciani
25
+ #
26
+ # SPDX-License-Identifier: GPL-3.0-or-later
19
27
  #++
20
28
 
21
29
  require_relative 'test_helper'
@@ -23,18 +31,18 @@ require_relative 'test_helper'
23
31
  describe Gravaty::Gravaty do
24
32
  describe 'when passed a nil email address' do
25
33
  it 'must raise an argument error' do
26
- _(-> { Gravaty::gravatize nil }).must_raise ArgumentError
34
+ _(-> { Gravaty.gravatize nil }).must_raise ArgumentError
27
35
  end
28
36
  end
29
37
 
30
38
  describe 'when passed an invalid email address according to RF5322' do
31
39
  it 'must raise an argument error' do
32
- _(-> { Gravaty::gravatize '-.' }).must_raise ArgumentError
40
+ _(-> { Gravaty.gravatize '-.' }).must_raise ArgumentError
33
41
  end
34
42
  end
35
43
 
36
44
  describe 'when created with a valid email address' do
37
- subject { Gravaty::gravatize Gravaty::TEST_MY_ADDRESS }
45
+ subject { Gravaty.gravatize Gravaty::TEST_MY_ADDRESS }
38
46
 
39
47
  it 'must create a gravaty object' do
40
48
  _(subject).wont_be_nil
data/test/test_helper.rb CHANGED
@@ -1,6 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # gravaty
3
- # Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
5
+ # rubocop:disable Style/AsciiComments
6
+ # © 2013 Marco Bresciani
7
+ # rubocop:enable Style/AsciiComments
4
8
  #
5
9
  # This file is part of gravaty.
6
10
  #
@@ -16,6 +20,10 @@
16
20
  #
17
21
  # You should have received a copy of the GNU General Public License
18
22
  # along with gravaty. If not, see <http://www.gnu.org/licenses/>.
23
+ #
24
+ # SPDX-FileCopyrightText: 2013 Marco Bresciani
25
+ #
26
+ # SPDX-License-Identifier: GPL-3.0-or-later
19
27
  #++
20
28
 
21
29
  require 'simplecov'
@@ -39,7 +47,6 @@ require_relative '../lib/gravaty/parsers/type'
39
47
  require_relative '../lib/gravaty/utils/rpc_connector'
40
48
 
41
49
  module Gravaty
42
-
43
50
  # Example mail address for testing purposes.
44
51
  TEST_MY_ADDRESS = '"Example User" <user@example.com>'
45
52
 
@@ -50,7 +57,7 @@ module Gravaty
50
57
  TEST_BASIC_PROFILE = 'gravatar.com/'
51
58
 
52
59
  # Example basic URI (avatar part) for testing purposes.
53
- TEST_BASIC_AVATAR = TEST_BASIC_PROFILE + 'avatar/'
60
+ TEST_BASIC_AVATAR = "#{TEST_BASIC_PROFILE}avatar/"
54
61
 
55
62
  # Example generic callback string for testing purposes.
56
63
  TEST_CALLBACK = 'my_test_callback'
@@ -69,11 +76,11 @@ module Gravaty
69
76
 
70
77
  # Example secure (HTTPS) URI header regular expression for testing
71
78
  # purposes.
72
- TEST_SECURE_URI_REGEXP = /\Ahttps:\/\/secure./
79
+ TEST_SECURE_URI_REGEXP = %r{\Ahttps://secure.}
73
80
 
74
81
  # Example unsecure (HTTP) URI header regular expression for testing
75
82
  # purposes.
76
- TEST_UNSECURE_URI_REGEXP = /\Ahttp:\/\//
83
+ TEST_UNSECURE_URI_REGEXP = %r{\Ahttp://}
77
84
 
78
85
  # Example simple (HTTP) URI header regular expression for testing
79
86
  # purposes.
@@ -83,19 +90,18 @@ module Gravaty
83
90
  TEST_SIZE_REGEXP = /s=\d\d?\d?\d?/
84
91
 
85
92
  # Example hash with basic URI parts for testing purposes.
86
- TEST_STRING = Hash.new
87
- TEST_STRING[:avatar] = TEST_BASIC_AVATAR
88
- TEST_STRING[:profile] = TEST_BASIC_PROFILE
93
+ TEST_STRING = { avatar: TEST_BASIC_AVATAR, profile: TEST_BASIC_PROFILE }.freeze
89
94
 
90
95
  # This module represents the parsable duck type element for testing
91
96
  # purposes.
92
97
  #
93
98
  # Author:: {Marco Bresciani}[mailto:marcobresciani_1974@libero.it]
99
+ # rubocop:disable Style/AsciiComments
94
100
  # Copyright:: Copyright © 2013, 2014, 2015, 2016, 2017, 2018,
95
101
  # 2019 Marco Bresciani
102
+ # rubocop:enable Style/AsciiComments
96
103
  # License:: GNU General Public License version 3
97
104
  module ParsableDuckType
98
-
99
105
  # The method that tests the parsable duck type interface and its
100
106
  # +parse+ method.
101
107
  def test_parsable_duck_type
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gravaty
3
3
  version: !ruby/object:Gem::Version
4
- version: 10.0.0
4
+ version: 11.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marco Bresciani
@@ -9,10 +9,10 @@ authors:
9
9
  - Peter R. Marreck
10
10
  - Jon Maken
11
11
  - Łukasz Niemier
12
- autorequire:
12
+ autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2020-03-12 00:00:00.000000000 Z
15
+ date: 2021-07-26 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: i18n
@@ -34,28 +34,28 @@ dependencies:
34
34
  requirements:
35
35
  - - "~>"
36
36
  - !ruby/object:Gem::Version
37
- version: '2.3'
37
+ version: '2.5'
38
38
  type: :runtime
39
39
  prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
41
41
  requirements:
42
42
  - - "~>"
43
43
  - !ruby/object:Gem::Version
44
- version: '2.3'
44
+ version: '2.5'
45
45
  - !ruby/object:Gem::Dependency
46
46
  name: xmlrpc
47
47
  requirement: !ruby/object:Gem::Requirement
48
48
  requirements:
49
49
  - - "~>"
50
50
  - !ruby/object:Gem::Version
51
- version: 0.3.0
51
+ version: 0.3.1
52
52
  type: :runtime
53
53
  prerelease: false
54
54
  version_requirements: !ruby/object:Gem::Requirement
55
55
  requirements:
56
56
  - - "~>"
57
57
  - !ruby/object:Gem::Version
58
- version: 0.3.0
58
+ version: 0.3.1
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: bundler
61
61
  requirement: !ruby/object:Gem::Requirement
@@ -104,46 +104,60 @@ dependencies:
104
104
  requirements:
105
105
  - - "~>"
106
106
  - !ruby/object:Gem::Version
107
- version: '6.2'
107
+ version: '6.3'
108
108
  type: :development
109
109
  prerelease: false
110
110
  version_requirements: !ruby/object:Gem::Requirement
111
111
  requirements:
112
112
  - - "~>"
113
113
  - !ruby/object:Gem::Version
114
- version: '6.2'
114
+ version: '6.3'
115
+ - !ruby/object:Gem::Dependency
116
+ name: rubocop
117
+ requirement: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - "~>"
120
+ - !ruby/object:Gem::Version
121
+ version: '1.8'
122
+ type: :development
123
+ prerelease: false
124
+ version_requirements: !ruby/object:Gem::Requirement
125
+ requirements:
126
+ - - "~>"
127
+ - !ruby/object:Gem::Version
128
+ version: '1.8'
115
129
  - !ruby/object:Gem::Dependency
116
130
  name: simplecov
117
131
  requirement: !ruby/object:Gem::Requirement
118
132
  requirements:
119
133
  - - "~>"
120
134
  - !ruby/object:Gem::Version
121
- version: '0.18'
135
+ version: '0.21'
122
136
  type: :development
123
137
  prerelease: false
124
138
  version_requirements: !ruby/object:Gem::Requirement
125
139
  requirements:
126
140
  - - "~>"
127
141
  - !ruby/object:Gem::Version
128
- version: '0.18'
142
+ version: '0.21'
129
143
  description: |-
130
144
  This gem automagically prepares complete URIs for Gravatar,
131
145
  for both avatars and profiles, with all currently supported options,
132
146
  included the XML-RPC API, as of 2014-04-30, starting from a single
133
- email address! It's my first 'real' Ruby gem, hoping
134
- it will be useful for someone (let me know if you use it, please!).
135
- GNU GPLv3 license; source code available through anonymous checkout:
136
- hg clone http://hg.savannah.nongnu.org/hgweb/gravaty/ or write me and
137
- I'll send it. You can even decide to contribute to this little free
138
- software project by registering to Savannah and ask to be part of the
139
- 'gravaty' project! With contributions from: 新部裕, Peter R. Marreck,
140
- Jon Maken, Łukasz Niemier.
147
+ email address! It's my first Ruby gem, hoping it will
148
+ be useful for someone (let me know if you use it, please!).
149
+ GNU GPLv3 license; source code available through anonymous checkout: `hg
150
+ clone http://hg.savannah.nongnu.org/hgweb/gravaty/` or write me
151
+ and I'll send it.
152
+ You can even decide to contribute to this little free software project
153
+ by registering to Savannah and ask to be part of the 'gravaty'
154
+ project!
155
+ With contributions from: 新部裕, Peter R. Marreck, Jon Maken, Łukasz
156
+ Niemier.
141
157
  email: marcobresciani_1974@libero.it
142
158
  executables: []
143
159
  extensions: []
144
160
  extra_rdoc_files:
145
- - acknowledgements.md
146
- - authors.md
147
161
  - CHANGELOG
148
162
  - COPYING.md
149
163
  - copyright.md
@@ -151,22 +165,17 @@ extra_rdoc_files:
151
165
  - gravaty.gemspec
152
166
  - gravaty.odp
153
167
  - gravaty.pdf
154
- - ISSUES.md
155
168
  - Rakefile
156
169
  - README.md
157
170
  files:
158
171
  - CHANGELOG
159
172
  - COPYING.md
160
173
  - Gemfile
161
- - ISSUES.md
162
174
  - README.md
163
175
  - Rakefile
164
- - acknowledgements.md
165
- - authors.md
166
176
  - copyright.md
167
177
  - examples/avatar.rb
168
178
  - examples/basics.rb
169
- - examples/cacert.pem
170
179
  - examples/profile.rb
171
180
  - examples/xmlrpc.rb
172
181
  - gravaty.gemspec
@@ -196,17 +205,13 @@ files:
196
205
  - html/Gravaty/Utils/Rfc5322.html
197
206
  - html/Gravaty/Utils/RpcConnector.html
198
207
  - html/Gravaty/Utils/RpcConnector/RpcConnector.html
199
- - html/ISSUES_md.html
200
208
  - html/Object.html
201
209
  - html/README_md.html
202
210
  - html/Rakefile.html
203
- - html/acknowledgements_md.html
204
- - html/authors_md.html
205
211
  - html/copyright_md.html
206
212
  - html/created.rid
207
213
  - html/css/fonts.css
208
214
  - html/css/rdoc.css
209
- - html/examples/cacert_pem.html
210
215
  - html/fonts/Lato-Light.ttf
211
216
  - html/fonts/Lato-LightItalic.ttf
212
217
  - html/fonts/Lato-Regular.ttf
@@ -269,6 +274,9 @@ files:
269
274
  - lib/gravaty/utils/rfc5322.rb
270
275
  - lib/gravaty/utils/rpc_connector.rb
271
276
  - lib/gravaty/version.rb
277
+ - test/gravaty/locales/en.yml
278
+ - test/gravaty/locales/it.yml
279
+ - test/gravaty/locales/ja.yml
272
280
  - test/gravaty/locales/test_locales.rb
273
281
  - test/gravaty/parsers/test_avatar.rb
274
282
  - test/gravaty/parsers/test_callback.rb
@@ -293,8 +301,13 @@ homepage: https://savannah.nongnu.org/projects/gravaty/
293
301
  licenses:
294
302
  - GPL-3.0
295
303
  - BSD-3-Clause
296
- metadata: {}
297
- post_install_message: Thank you for using gravaty version 10.0.0.
304
+ metadata:
305
+ homepage_uri: https://savannah.nongnu.org/projects/gravaty
306
+ changelog_uri: http://hg.savannah.nongnu.org/hgweb/gravaty/file/tip/CHANGELOG
307
+ source_code_uri: http://hg.savannah.nongnu.org/hgweb/gravaty/file/
308
+ bug_tracker_uri: https://savannah.nongnu.org/bugs/?group=gravaty
309
+ documentation_uri: http://hg.savannah.nongnu.org/hgweb/gravaty/tag/11.0.1/
310
+ post_install_message: Thank you for using gravaty version 11.0.1.
298
311
  rdoc_options: []
299
312
  require_paths:
300
313
  - lib
@@ -302,23 +315,24 @@ required_ruby_version: !ruby/object:Gem::Requirement
302
315
  requirements:
303
316
  - - "~>"
304
317
  - !ruby/object:Gem::Version
305
- version: '2.7'
318
+ version: '3.0'
306
319
  required_rubygems_version: !ruby/object:Gem::Requirement
307
320
  requirements:
308
321
  - - ">="
309
322
  - !ruby/object:Gem::Version
310
323
  version: '0'
311
324
  requirements:
312
- - "~> 2.7"
325
+ - "~> 3.0"
313
326
  - '[<Gem::Dependency type=:runtime name="i18n" requirements="~> 1.8">, <Gem::Dependency
314
- type=:runtime name="json" requirements="~> 2.3">, <Gem::Dependency type=:runtime
315
- name="xmlrpc" requirements="~> 0.3.0">, <Gem::Dependency type=:development name="bundler"
327
+ type=:runtime name="json" requirements="~> 2.5">, <Gem::Dependency type=:runtime
328
+ name="xmlrpc" requirements="~> 0.3.1">, <Gem::Dependency type=:development name="bundler"
316
329
  requirements="~> 2.1">, <Gem::Dependency type=:development name="minitest" requirements="~>
317
330
  5.14">, <Gem::Dependency type=:development name="rake" requirements="~> 13.0">,
318
- <Gem::Dependency type=:development name="rdoc" requirements="~> 6.2">, <Gem::Dependency
319
- type=:development name="simplecov" requirements="~> 0.18">]'
320
- rubygems_version: 3.1.2
321
- signing_key:
331
+ <Gem::Dependency type=:development name="rdoc" requirements="~> 6.3">, <Gem::Dependency
332
+ type=:development name="rubocop" requirements="~> 1.8">, <Gem::Dependency type=:development
333
+ name="simplecov" requirements="~> 0.21">]'
334
+ rubygems_version: 3.2.5
335
+ signing_key:
322
336
  specification_version: 4
323
337
  summary: This gem automagically prepares complete URIs for Gravatar, for both avatars
324
338
  and profiles, with all currently supported options, included the XML-RPC API, as