valvat 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9b64b4bcee899d80f3c9205b541eeaf7123df7560e47528368bedc0e06d85f85
4
- data.tar.gz: 31f18a7bf075a71c719002e3b34dd4a057da7ba85aeaf7283385d7ffc98f7dcb
3
+ metadata.gz: 6c35eea0081e4df97219ee215ea3321c8add02bc130c5b28488f1dca676765dc
4
+ data.tar.gz: 4ba7b89f223d26d1ac9d967944d6c2e0dbea74c3c6066f1d69d0e2f42ba204c8
5
5
  SHA512:
6
- metadata.gz: 2b419833c23922a653f932995541e25300a8897529cd3bfdea2078de762f5829451e35c1a658510cfbd64978f0f6165471d1331e1673d381ef5c0ecd6ca6380a
7
- data.tar.gz: e595829c058d7b2b89a644b779c4ea95c66eb9d416e395a4b32cf4d28f73bcb717f55c720fe51dd8d027092c94ae04b3c094cd1e7fbf1fe95d833330851a37d5
6
+ metadata.gz: ab9623bd1d680546ca7978751b6536b626d2d5cb9ae35240b5152d4e7c9512e99e025481bf0a844254e6ad14d3f1f320dbf54ab6901387e354b7682c45cb3c3c
7
+ data.tar.gz: 79a69d5d148b86282f609d66bf053a1b14d4bd86621d7277a5f17d1d1df6c6fd5c9731cff4eca8c8bb9dde9f1265eef7ea03c60d2d66876b0f255d97a9596a6b
@@ -1,4 +1,4 @@
1
- Y���ހ�"$K>
2
- �K�����-|�Vh#�g��Hh��v�X����28����p@�u�@�PkP �n��1�k�8�� k��Y �月x�c��a�g�
3
- �'z18�9�Z-�[��^Vb[6�6��-�=j�{�8�m�J̰l�u�vN��N���[T��/x���ege���&ݔpr 9���tk�� *�0�5�-�V���t�ݾH&�K�|�2�G�$d4���0��h ��C{�CtC��<���:�����&z6%��(Ƒ�ZC.J���fIy���uZ���ި �De��wyOa�͖_�V���ԷD\���}n��u���1DN�>�tó
4
- l(�N��O�6qY��T߳��9c��jK6��
1
+ p���:��:�Bӻ�7���-�8���A1��
2
+ �L��W3,��Z��@\��ϳbć�P,DJ�������X���ݧ�8Ըҋ�L�$s�8��o�?>��K��""J��C͒8W ����δ����!��6Ϝ3����&n�qP�P�u�W��������D�<&S��������d#Z��K���n��Y+Jw�`r;I&=�Ў'丌X<���ws�˶�
3
+ mk��ck��qkrh$��:C����ZIƈ��Y��@���׼�/U
4
+ ���&s��W
data.tar.gz.sig CHANGED
Binary file
data/CHANGES.md CHANGED
@@ -1,7 +1,15 @@
1
1
 
2
2
  ### dev
3
3
 
4
- [full changelog](http://github.com/yolk/valvat/compare/v0.9.1...master)
4
+ [full changelog](http://github.com/yolk/valvat/compare/v1.0.1...master)
5
+
6
+ ### 1.0.1 / 2020-12-06
7
+
8
+ [full changelog](http://github.com/yolk/valvat/compare/v1.0.0...v1.0.1)
9
+
10
+ * Added missing spaces to malformatted portuegese locale file
11
+ * Removed GB from EU_COUNTRIES / EU_MEMBER_STATES but kept support
12
+ * Fixed typo in error message: UNK(N)OWN (by [Igor Gonchar](https://github.com/gigorok))
5
13
 
6
14
  ### 1.0.0 / 2020-11-06
7
15
 
data/README.md CHANGED
@@ -5,6 +5,10 @@ valvat
5
5
 
6
6
  Validates european vat numbers. Standalone or as a ActiveModel validator.
7
7
 
8
+ ## A note on Brexit
9
+
10
+ Valvat supports validating VAT-IDs from the UK by syntax & checksum for now. Validation against the VIES web service will probably stop working (and return `false`) in 2021.
11
+
8
12
  ## Features
9
13
 
10
14
  * Simple syntax verification
@@ -201,7 +205,7 @@ To allow vat numbers from outside of europe, add something like this to your mod
201
205
  validates :vat_number, valvat: true, if: :eu?
202
206
 
203
207
  def eu?
204
- Valvat::Utils::EU_COUNTRIES.include?(country_code)
208
+ Valvat::Utils::EU_MEMBER_STATES.include?(country_code)
205
209
  end
206
210
  end
207
211
 
@@ -1,25 +1,25 @@
1
1
  -----BEGIN CERTIFICATE-----
2
2
  MIIELDCCApSgAwIBAgIBATANBgkqhkiG9w0BAQsFADAgMR4wHAYDVQQDDBVzZWJh
3
- c3RpYW4vREM9eW8vREM9bGswHhcNMTkxMTE1MTIzMzUwWhcNMjAxMTE0MTIzMzUw
3
+ c3RpYW4vREM9eW8vREM9bGswHhcNMjEwMTA2MTAzMDU3WhcNMjIwMTA2MTAzMDU3
4
4
  WjAgMR4wHAYDVQQDDBVzZWJhc3RpYW4vREM9eW8vREM9bGswggGiMA0GCSqGSIb3
5
- DQEBAQUAA4IBjwAwggGKAoIBgQC96oQ16N6R0H69fWFfsfHo2oIJHtLgETPK6ly+
6
- tLeznJsZomCkZgFS0wNwnExr9qlH+AmygvNoaniVq/Pp2+2jwMuLgk5hkZMRM8Rf
7
- i3wp5LCbW4BysT1rURQoqfo4iH8d60WgUl2Ggou70RMGlizvgvGOfszxfRTkuNXd
8
- Eisbzs3UTKIWdx/umzHW4hbfbZcJ89cXoRLbxPjzozCfXPymmimlyva3Tu3QrxNH
9
- /IBdzni9qj6gctmTYgWHMwzRJz+yJBY7V3G7jss/3vWaAoOhLns5bJUAXOvNsR4D
10
- sWE5676q+Hi8Ti7B7AvWhqxB+9HSevjNrK+fNV7GFNRtbPW6o6vzYjPhtsdjluzP
11
- 94UA2AC6rjxtzNgzaXtQHZAnBjCf6ayoqbizh++SHU7J+tdoyxHjSfKPfdIW0P7Z
12
- W5npDb+b2kGTa6cclciBpRqyZWVz0CIgi06k+GuxgroQVf7465CEjyh2krQqGXtt
13
- A7d8gWiKsxpZgOjh5wFmFT97h8MCAwEAAaNxMG8wCQYDVR0TBAIwADALBgNVHQ8E
14
- BAMCBLAwHQYDVR0OBBYEFOGxpUkCn17xMxFtmn/CFk5W57s6MBoGA1UdEQQTMBGB
5
+ DQEBAQUAA4IBjwAwggGKAoIBgQC1KB7VOGa6pr926eaL2xCrnbnTxadpjq+6JoFj
6
+ 6rvDpmgD8wkdfU7aFTwBiEK9JKzhqCoW86Rt/8wOrEJRMXz1QBbpMBSrubtMB+0/
7
+ N59hKPLwgBkhbxY7BwGnujxnTICgiGzkhjlgBe/MisoabfK5Tn84GWVk5e0/LUp1
8
+ qTRkSgcaDlnKs2/dAUo1lXHa13TJeemgz76TYx4p4J2w7VGh7WS2ax5SNWKw+J+q
9
+ HVSHT2Chc+a7As2cJyU/r2jX0oqSfvyg09CmF0inUBykeiuB9aeP/Me29hvg13/D
10
+ r1gaQ3/Vyfuqjs8lrwIZCWLU607g5q3+UM884WWpvApsZwzajNM2+9l5jay7Dnan
11
+ m05PcDtMYbPHiMyvuN9Vp4YIRqSBXP/DPGMnIYXbpzAQgtZymPQ8I3k8doj9q4+E
12
+ 2Cf+x/nqvF09r/+gJj4ybzNW23zU6mhZ+xzBTDWrWBDetz+Y3wdbU5X6j08jLuEg
13
+ mMHmtgFdr/4VQxeaon7kHPR3DUsCAwEAAaNxMG8wCQYDVR0TBAIwADALBgNVHQ8E
14
+ BAMCBLAwHQYDVR0OBBYEFG8VE8+yijOldghb3w0MpSQnrslxMBoGA1UdEQQTMBGB
15
15
  D3NlYmFzdGlhbkB5by5sazAaBgNVHRIEEzARgQ9zZWJhc3RpYW5AeW8ubGswDQYJ
16
- KoZIhvcNAQELBQADggGBAEDGrRAAvS7w793sYSoE8VAt45pw71zio2BgdcpYRoHB
17
- rdaghjIVg77lybTmKdRGPM1T9m4zL01xddrqpgQFflVLmd/JVfEHwkLfJzZKvpy+
18
- 1vxgdIHhXkBB9G/X+LZC3PtMQx4f6BYIyf4kiVrTSWiKeeftFsH1tdvU5oYR7Gzy
19
- dugPR09J0oVA/DiLlzfUy9o2meH8QyCGX8c0LHY8gx4C4orZz+FIFZczZB1FUOeu
20
- LjR/yNUh7bYqwVHTQL5sajfQMFyt8HotazwdBvUETXGZW3VQZymR99gcMjr/H4xg
21
- mPEildrYsY7glEKryCc2YDYC1ahqWshnpOLqAXatonsoDBXpVKl+HGsUnrnCiaxh
22
- ctN4at+sy0CqPL+zXqp14b34rO0lP6hf0l+/LnuM96ImE+Rw+3gPX2iOtqivhrfM
23
- rAFNAD1QEGN6elQdy1MRuXwjcUhM8P8ofLDEaE225TSZvAI+XoCxW2PSsQj5cGER
24
- 9vbf6JSKzQPa/HeBoU0s1Q==
25
- -----END CERTIFICATE-----
16
+ KoZIhvcNAQELBQADggGBAIky67U9hnB8d4qMKwXHGb3Ne7JLvEigtEhjqGlDVecb
17
+ C94vQ8Jg7lYB3kKVjvFN2drptq/JUpxmAxPQIqfx39gKcKyv0BjkroVFE8MS1324
18
+ khMOZFOoSPMd9pkpm7oJ1M+sCYcUM+tPKnU8Ojq6r9j5b5XrbxG8YSpwahva3Vap
19
+ 1g0+3KzuWPpFjFen1VbS/Sb1cyE5uQtUj7lVcdhF3EFvzXkUMUUtJ4xsk114znFO
20
+ 986sKab5AjlJ7TnsmPphCv/UXans7rAVB2lnozlt/kw6dcct5JD4kz1tD6AmO5Qd
21
+ jWRuKNZs66GBglRvseKoypXz1XDCCu1m/uI1IGmKnq8Ry+IeRq9RnlvbfPvSxRIx
22
+ 9aowoL79T9plhcEcEX/KYRp8ht1z+3Vyk2UVZP8Xl5x+K44co5xdhljYi1gtw0w8
23
+ KzzULF0bF9oNpXwBEamlH2myNb19u1W8ijobQ7Y19ca8UFHr5LI32ZW5Zlmep8je
24
+ vb+o07oLRx3t2T/EO4DZ1w==
25
+ -----END CERTIFICATE-----
@@ -2,7 +2,7 @@ class Valvat
2
2
  Error = Class.new(RuntimeError)
3
3
 
4
4
  class ViesError < Error
5
- def initialize(faultstring='UNKOWN')
5
+ def initialize(faultstring='UNKNOWN')
6
6
  @faultstring = faultstring
7
7
  end
8
8
 
@@ -25,4 +25,4 @@ class Valvat
25
25
  RateLimitError = Class.new(ViesError)
26
26
 
27
27
  UnknownViesError = Class.new(ViesError)
28
- end
28
+ end
@@ -22,8 +22,9 @@ class Valvat
22
22
  Valvat::Utils.vat_country_to_iso_country(vat_country_code)
23
23
  end
24
24
 
25
+ # TODO: Remove method / not in use
25
26
  def european?
26
- Valvat::Utils::EU_COUNTRIES.include?(iso_country_code)
27
+ Valvat::Utils::EU_MEMBER_STATES.include?(iso_country_code)
27
28
  end
28
29
 
29
30
  def to_a
@@ -4,31 +4,31 @@ pt:
4
4
  invalid_vat: O NIF %{country_adjective} não é válido.
5
5
  valvat:
6
6
  country_adjectives:
7
- eu: europeu
8
- at: austríaco
9
- be: belga
10
- bg: búlgaro
11
- cy: cipriota
12
- cz: checo
13
- de: alemão
14
- dk: dinamarquês
15
- ee: estónio
16
- es: espanhol
17
- fi: finlandês
18
- fr: francês
19
- gb: britânico
20
- gr: grego
21
- hu: húngaro
22
- ie: irlandês
23
- it: italiano
24
- lt: lituano
25
- lu: luxemburguês
26
- lv: letão
27
- mt: maltês
28
- nl: holandês
29
- pl: polaco
30
- pt: português
31
- ro: romeno
32
- se: sueco
33
- si: esloveno
34
- sk: eslovaco
7
+ eu: europeu
8
+ at: austríaco
9
+ be: belga
10
+ bg: búlgaro
11
+ cy: cipriota
12
+ cz: checo
13
+ de: alemão
14
+ dk: dinamarquês
15
+ ee: estónio
16
+ es: espanhol
17
+ fi: finlandês
18
+ fr: francês
19
+ gb: britânico
20
+ gr: grego
21
+ hu: húngaro
22
+ ie: irlandês
23
+ it: italiano
24
+ lt: lituano
25
+ lu: luxemburguês
26
+ lv: letão
27
+ mt: maltês
28
+ nl: holandês
29
+ pl: polaco
30
+ pt: português
31
+ ro: romeno
32
+ se: sueco
33
+ si: esloveno
34
+ sk: eslovaco
@@ -1,7 +1,11 @@
1
+ require 'date'
2
+
1
3
  class Valvat
2
4
  module Utils
3
5
 
4
- EU_COUNTRIES = %w(AT BE BG CY CZ DE DK EE ES FI FR GB GR HR HU IE IT LT LU LV MT NL PL PT RO SE SI SK)
6
+ EU_MEMBER_STATES = %w(AT BE BG CY CZ DE DK EE ES FI FR GR HR HU IE IT LT LU LV MT NL PL PT RO SE SI SK)
7
+ SUPPORTED_STATES = EU_MEMBER_STATES + %w(GB)
8
+ EU_COUNTRIES = EU_MEMBER_STATES # TODO: Remove constant
5
9
  COUNTRY_PATTERN = /\A([A-Z]{2})(.+)\Z/
6
10
  NORMALIZE_PATTERN = /[[:space:][:punct:][:cntrl:]]+/
7
11
 
@@ -9,7 +13,7 @@ class Valvat
9
13
  COUNTRY_PATTERN =~ vat
10
14
  result = [$1, $2]
11
15
  iso_country = vat_country_to_iso_country(result[0])
12
- EU_COUNTRIES.include?(iso_country) ? result : [nil, nil]
16
+ country_is_supported?(iso_country) ? result : [nil, nil]
13
17
  end
14
18
 
15
19
  def self.normalize(vat)
@@ -23,5 +27,9 @@ class Valvat
23
27
  def self.iso_country_to_vat_country(iso_country)
24
28
  iso_country == "GR" ? "EL" : iso_country
25
29
  end
30
+
31
+ def self.country_is_supported?(iso_country)
32
+ SUPPORTED_STATES.include?(iso_country)
33
+ end
26
34
  end
27
35
  end
@@ -1,3 +1,3 @@
1
1
  class Valvat
2
- VERSION = "1.0.0"
2
+ VERSION = "1.0.1"
3
3
  end
@@ -42,6 +42,10 @@ if defined?(ActiveModel)
42
42
  end
43
43
 
44
44
  describe Invoice do
45
+ before do
46
+ I18n.locale = :en
47
+ end
48
+
45
49
  context "with valid VAT number" do
46
50
  it "should be valid" do
47
51
  expect(Invoice.new(vat_number: "DE259597697")).to be_valid
@@ -60,6 +64,28 @@ if defined?(ActiveModel)
60
64
  expect(invoice.errors[:vat_number]).to eql(["is not a valid German VAT number"])
61
65
  end
62
66
 
67
+ context "on DE locale" do
68
+ before do
69
+ I18n.locale = :de
70
+ end
71
+
72
+ it "should add translated error message" do
73
+ invoice.valid?
74
+ expect(invoice.errors[:vat_number]).to eql(["ist keine gültige deutsche USt-IdNr."])
75
+ end
76
+ end
77
+
78
+ context "on PT locale" do
79
+ before do
80
+ I18n.locale = :pt
81
+ end
82
+
83
+ it "should add translated error message" do
84
+ invoice.valid?
85
+ expect(invoice.errors[:vat_number]).to eql(["O NIF alemão não é válido."])
86
+ end
87
+ end
88
+
63
89
  context "with i18n translation in place" do
64
90
  before do
65
91
  I18n.backend.store_translations(:en, activemodel: {
@@ -59,7 +59,7 @@ describe Valvat::Utils do
59
59
  expect(Valvat::Utils.vat_country_to_iso_country("EL")).to eql("GR")
60
60
  end
61
61
 
62
- Valvat::Utils::EU_COUNTRIES.each do |iso|
62
+ Valvat::Utils::EU_MEMBER_STATES.each do |iso|
63
63
  it "returns unchanged iso country code '#{iso}'" do
64
64
  expect(Valvat::Utils.vat_country_to_iso_country(iso)).to eql(iso)
65
65
  end
@@ -71,9 +71,27 @@ describe Valvat::Utils do
71
71
  expect(Valvat::Utils.iso_country_to_vat_country("GR")).to eql("EL")
72
72
  end
73
73
 
74
- Valvat::Utils::EU_COUNTRIES.reject{|c| c == "GR"}.each do |c|
74
+ Valvat::Utils::EU_MEMBER_STATES.each do |c|
75
75
  it "returns unchanged VAT country code '#{c}'" do
76
76
  expect(Valvat::Utils.iso_country_to_vat_country(c)).to eql(c)
77
+ end unless c == "GR"
78
+ end
79
+ end
80
+
81
+ describe "#country_is_supported?" do
82
+ Valvat::Utils::EU_MEMBER_STATES.each do |code|
83
+ it "returns true on #{code}" do
84
+ expect(Valvat::Utils.country_is_supported?(code)).to eql(true)
85
+ end
86
+ end
87
+
88
+ it "returns true on GB" do
89
+ expect(Valvat::Utils.country_is_supported?("GB")).to eql(true)
90
+ end
91
+
92
+ ["US", "AE", "CA", "CN", "BR", "AU", "NO", "ML"].each do |code|
93
+ it "returns false on #{code}" do
94
+ expect(Valvat::Utils.country_is_supported?(code)).to eql(false)
77
95
  end
78
96
  end
79
97
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: valvat
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sebastian Munz
@@ -11,30 +11,30 @@ cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
13
  MIIELDCCApSgAwIBAgIBATANBgkqhkiG9w0BAQsFADAgMR4wHAYDVQQDDBVzZWJh
14
- c3RpYW4vREM9eW8vREM9bGswHhcNMTkxMTE1MTIzMzUwWhcNMjAxMTE0MTIzMzUw
14
+ c3RpYW4vREM9eW8vREM9bGswHhcNMjEwMTA2MTAzMDU3WhcNMjIwMTA2MTAzMDU3
15
15
  WjAgMR4wHAYDVQQDDBVzZWJhc3RpYW4vREM9eW8vREM9bGswggGiMA0GCSqGSIb3
16
- DQEBAQUAA4IBjwAwggGKAoIBgQC96oQ16N6R0H69fWFfsfHo2oIJHtLgETPK6ly+
17
- tLeznJsZomCkZgFS0wNwnExr9qlH+AmygvNoaniVq/Pp2+2jwMuLgk5hkZMRM8Rf
18
- i3wp5LCbW4BysT1rURQoqfo4iH8d60WgUl2Ggou70RMGlizvgvGOfszxfRTkuNXd
19
- Eisbzs3UTKIWdx/umzHW4hbfbZcJ89cXoRLbxPjzozCfXPymmimlyva3Tu3QrxNH
20
- /IBdzni9qj6gctmTYgWHMwzRJz+yJBY7V3G7jss/3vWaAoOhLns5bJUAXOvNsR4D
21
- sWE5676q+Hi8Ti7B7AvWhqxB+9HSevjNrK+fNV7GFNRtbPW6o6vzYjPhtsdjluzP
22
- 94UA2AC6rjxtzNgzaXtQHZAnBjCf6ayoqbizh++SHU7J+tdoyxHjSfKPfdIW0P7Z
23
- W5npDb+b2kGTa6cclciBpRqyZWVz0CIgi06k+GuxgroQVf7465CEjyh2krQqGXtt
24
- A7d8gWiKsxpZgOjh5wFmFT97h8MCAwEAAaNxMG8wCQYDVR0TBAIwADALBgNVHQ8E
25
- BAMCBLAwHQYDVR0OBBYEFOGxpUkCn17xMxFtmn/CFk5W57s6MBoGA1UdEQQTMBGB
16
+ DQEBAQUAA4IBjwAwggGKAoIBgQC1KB7VOGa6pr926eaL2xCrnbnTxadpjq+6JoFj
17
+ 6rvDpmgD8wkdfU7aFTwBiEK9JKzhqCoW86Rt/8wOrEJRMXz1QBbpMBSrubtMB+0/
18
+ N59hKPLwgBkhbxY7BwGnujxnTICgiGzkhjlgBe/MisoabfK5Tn84GWVk5e0/LUp1
19
+ qTRkSgcaDlnKs2/dAUo1lXHa13TJeemgz76TYx4p4J2w7VGh7WS2ax5SNWKw+J+q
20
+ HVSHT2Chc+a7As2cJyU/r2jX0oqSfvyg09CmF0inUBykeiuB9aeP/Me29hvg13/D
21
+ r1gaQ3/Vyfuqjs8lrwIZCWLU607g5q3+UM884WWpvApsZwzajNM2+9l5jay7Dnan
22
+ m05PcDtMYbPHiMyvuN9Vp4YIRqSBXP/DPGMnIYXbpzAQgtZymPQ8I3k8doj9q4+E
23
+ 2Cf+x/nqvF09r/+gJj4ybzNW23zU6mhZ+xzBTDWrWBDetz+Y3wdbU5X6j08jLuEg
24
+ mMHmtgFdr/4VQxeaon7kHPR3DUsCAwEAAaNxMG8wCQYDVR0TBAIwADALBgNVHQ8E
25
+ BAMCBLAwHQYDVR0OBBYEFG8VE8+yijOldghb3w0MpSQnrslxMBoGA1UdEQQTMBGB
26
26
  D3NlYmFzdGlhbkB5by5sazAaBgNVHRIEEzARgQ9zZWJhc3RpYW5AeW8ubGswDQYJ
27
- KoZIhvcNAQELBQADggGBAEDGrRAAvS7w793sYSoE8VAt45pw71zio2BgdcpYRoHB
28
- rdaghjIVg77lybTmKdRGPM1T9m4zL01xddrqpgQFflVLmd/JVfEHwkLfJzZKvpy+
29
- 1vxgdIHhXkBB9G/X+LZC3PtMQx4f6BYIyf4kiVrTSWiKeeftFsH1tdvU5oYR7Gzy
30
- dugPR09J0oVA/DiLlzfUy9o2meH8QyCGX8c0LHY8gx4C4orZz+FIFZczZB1FUOeu
31
- LjR/yNUh7bYqwVHTQL5sajfQMFyt8HotazwdBvUETXGZW3VQZymR99gcMjr/H4xg
32
- mPEildrYsY7glEKryCc2YDYC1ahqWshnpOLqAXatonsoDBXpVKl+HGsUnrnCiaxh
33
- ctN4at+sy0CqPL+zXqp14b34rO0lP6hf0l+/LnuM96ImE+Rw+3gPX2iOtqivhrfM
34
- rAFNAD1QEGN6elQdy1MRuXwjcUhM8P8ofLDEaE225TSZvAI+XoCxW2PSsQj5cGER
35
- 9vbf6JSKzQPa/HeBoU0s1Q==
27
+ KoZIhvcNAQELBQADggGBAIky67U9hnB8d4qMKwXHGb3Ne7JLvEigtEhjqGlDVecb
28
+ C94vQ8Jg7lYB3kKVjvFN2drptq/JUpxmAxPQIqfx39gKcKyv0BjkroVFE8MS1324
29
+ khMOZFOoSPMd9pkpm7oJ1M+sCYcUM+tPKnU8Ojq6r9j5b5XrbxG8YSpwahva3Vap
30
+ 1g0+3KzuWPpFjFen1VbS/Sb1cyE5uQtUj7lVcdhF3EFvzXkUMUUtJ4xsk114znFO
31
+ 986sKab5AjlJ7TnsmPphCv/UXans7rAVB2lnozlt/kw6dcct5JD4kz1tD6AmO5Qd
32
+ jWRuKNZs66GBglRvseKoypXz1XDCCu1m/uI1IGmKnq8Ry+IeRq9RnlvbfPvSxRIx
33
+ 9aowoL79T9plhcEcEX/KYRp8ht1z+3Vyk2UVZP8Xl5x+K44co5xdhljYi1gtw0w8
34
+ KzzULF0bF9oNpXwBEamlH2myNb19u1W8ijobQ7Y19ca8UFHr5LI32ZW5Zlmep8je
35
+ vb+o07oLRx3t2T/EO4DZ1w==
36
36
  -----END CERTIFICATE-----
37
- date: 2020-11-06 00:00:00.000000000 Z
37
+ date: 2021-01-06 00:00:00.000000000 Z
38
38
  dependencies:
39
39
  - !ruby/object:Gem::Dependency
40
40
  name: savon
metadata.gz.sig CHANGED
Binary file