license_plate_validator 2.0.0 → 2.0.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: 4b14548fad67c137489b550601ec07d6c2bdbffd370041f110dedef142be237c
4
- data.tar.gz: c722040730ca5c1f7e6343a29c08b5f3b5b4962f0154d7bf69470f00f4cb47b3
3
+ metadata.gz: debcc3278367e4f15a34e18e2ebe01569722f3c86afa6d3dfa8b5417dd00294b
4
+ data.tar.gz: 46f9c8452ff3c94bdde69188452c868ebbe8ee988a2c716271e81a6f0b606a18
5
5
  SHA512:
6
- metadata.gz: 8b9aaeb5f62a2424afc70df1d44cda8ca1c4546c54d2a3f9e3ced7680e1bb022ce4dbc3479a3859fb28bb61c51a55832e458bfe9019211fc81545d171c04a3d2
7
- data.tar.gz: 01f958e7128b87caef078f52df6fba5c168ed35654dcc40715d554daa059514cbd4fca157b69b3426607e9e22c60d50935fdaa1d543a6d3f0d07e45a4bf5748d
6
+ metadata.gz: dd129c0724b45e7db796c78dcbb9f18e7c53026511e6f3d5fd18179280f9caddee3b36eb6db34d047c754e554140e76acecf7d0fdc01190a16b6b8ec7449c86d
7
+ data.tar.gz: f29cf03fdb09371a7c9f329d7a870dbe9a4803212ef9d0abc299f8c2a942177923ddf98307e01712bce1732898096edb0eadad0ee9c4e93fb2ee90d0892ffaac
@@ -22,6 +22,10 @@ jobs:
22
22
  - gemfiles/Gemfile.rails7.0
23
23
  - gemfiles/Gemfile.rails7.1
24
24
  - gemfiles/Gemfile.rails7.2
25
+ - gemfiles/Gemfile.rails8.0
26
+ exclude:
27
+ - ruby-version: 3.1
28
+ gemfile: gemfiles/Gemfile.rails8.0
25
29
 
26
30
  steps:
27
31
  - uses: actions/checkout@v4
data/CHANGELOG CHANGED
@@ -1,5 +1,9 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 2.0.1 - 2025-01-01
4
+
5
+ - Add support for German E-license plates - @Lisztos
6
+
3
7
  ## 2.0.0 - 2024-09-24
4
8
 
5
9
  - Update dependencies; this may break older Ruby (< 3.1) and Rails (< 7.x) integrations.
@@ -3,3 +3,6 @@ source "https://rubygems.org"
3
3
  gem "activemodel", "~> 7.0.0"
4
4
  gem "rspec", "~> 3.13.0"
5
5
  gem "rake"
6
+
7
+ # Pin concurrent-ruby, because >= 1.3.5 is not compatible with ActiveModel 7
8
+ gem 'concurrent-ruby', '1.3.4'
@@ -0,0 +1,5 @@
1
+ source "https://rubygems.org"
2
+
3
+ gem "activemodel", "~> 8.0.0"
4
+ gem "rspec", "~> 3.13.0"
5
+ gem "rake"
@@ -1,3 +1,3 @@
1
1
  class LicensePlateValidator
2
- VERSION = "2.0.0"
2
+ VERSION = '2.0.1'
3
3
  end
@@ -27,7 +27,7 @@ class LicensePlateValidator
27
27
  # 2. a 2-3-digit-number (country identifier) followed by 1-3 digits
28
28
  # diplomatic license plates can be followed by a single letter
29
29
  # regular license plates can be followed by an 'H' for oldtimers
30
- /^(A|AA|AB|ABG|ABI|AC|AE|AD|AF|AIC|AK|ALF|AM|AN|ANA|ANK|AÖ|AP|APD|ARN|ART|AS|ASL|ASZ|AT|AU|AUR|AW|AZ|AZE|B|BA|BAD|BAR|BB|BBG|BC|BCH|BD|BED|BER|BF|BGL|BI|BID|BIN|BIR|BIT|BIW|BK|BKS|BL|BLB|BLK|BM|BN|BNA|BO|BÖ|BOR|BOT|BRA|BRB|BRG|BRL|BRV|BS|BT|BTF|BÜD|BÜS|BÜZ|BW|BWL|BYL|BZ|C|CA|CAS|CB|CE|CHA|CLP|CLZ|CO|COC|COE|CUX|CW|D|DA|DAH|DAN|DAU|DB|DBR|DD|DE|DEG|DEL|DGF|DH|DI|DIN|DL|DLG|DM|DN|DO|DON|DU|DÜW|DW|DZ|E|EA|EB|EBE|ECK|ED|EE|EF|EH|EI|EIC|EIL|EIN|EIS|EL|EM|EMD|EMS|EN|ER|ERB|ERH|ERZ|ES|ESW|EU|EW|F|FB|FD|FDS|FF|FFB|FG|FI|FL|FLO|FN|FO|FOR|FR|FRG|FRI|FRW|FS|FT|FTL|FÜ|G|GA|GAP|GC|GD|GDB|GE|GER|GEO|GF|GG|GHA|GHC|GI|GL|GLA|GM|GMN|GN|GNT|GÖ|GOA|GP|GR|GRH|GRZ|GS|GT|GTH|GUB|GÜ|GVM|GW|GZ|H|HA|HAL|HAM|HAS|HB|HBN|HBS|HC|HCH|HD|HDH|HDL|HE|HEF|HEI|HER|HET|HF|HG|HGN|HGW|HH|HHM|HI|HIG|HK|HK|HL|HM|HMÜ|HN|HO|HOG|HOL|HOM|HOT|HP|HR|HRO|HS|HSK|HST|HU|HVL|HWI|HX|HY|HZ|IGB|IK|IL|IN|IZ|J|JE|JL|JÜL|K|KA|KB|KC|KE|KEH|KF|KG|KH|KI|KIB|KL|KLE|KLZ|KM|KN|KO|KÖT|KR|KS|KT|KU|KÜN|KUS|KY|KYF|L|LA|LAU|LB|LBS|LBZ|LD|LDK|LDS|LEO|LER|LEV|LG|LI|LIF|LIP|LL|LM|LÖ|LÖB|LOS|LP|LRO|LSA|LSZ|LU|LUN|LWL|M|MA|MAB|MB|MC|MD|ME|MEI|MEK|MG|MGN|MH|MHL|MI|MIL|MKK|ML|MK|MM|MN|MO|MOL|MOS|MQ|MR|MS|MSH|MSP|MST|MTK|MTL|MÜ|MÜR|MW|MW|MYK|MZ|MZG|N|NB|ND|NDH|NE|NEA|NEB|NES|NEW|NF|NH|NI|NK|NM|NMB|NMS|NOH|NOL|NOM|NOR|NP|NR|NU|NVP|NW|NWM|NY|NZ|OA|OAL|OB|OBG|OC|OCH|OD|OE|OF|OG|OH|OHA|OHV|OHZ|OK|OL|OPR|OS|OSL|OVL|OVP|P|PA|PAF|PAN|PB|PCH|PE|PF|PI|PIR|PL|PLÖ|PM|PN|PR|PRÜ|PS|PW|QFT|QLB|R|RA|RC|RD|RDG|RE|REG|RG|RH|RI|RIE|RL|RM|RO|ROW|RP|RS|RSL|RT|RÜD|RÜG|RV|RW|RZ|S|SAB|SAD|SAW|SB|SBK|SC|SCZ|SDH|SDL|SE|SEB|SEE|SFA|SFB|SFT|SG|SGH|SHA|SHG|SHK|SHL|SI|SIG|SIM|SK|SL|SLF|SLK|SLN|SLS|SLÜ|SLZ|SM|SN|SO|SÖM|SOK|SON|SP|SPN|SR|SRB|SRO|ST|STA|STD|STL|SU|SÜW|SW|SZ|SZB|TBB|TDO|TE|TET|TF|TG|TIR|TO|TÖL|TR|TS|TÜ|TUT|UE|UEM|UER|UH|UL|UM|UN|USI|V|VB|VEC|VER|VG|VIE|VK|VR|VS|W|WAF|WAK|WAN|WAT|WB|WBS|WDA|WE|WEN|WES|WF|WHV|WI|WIL|WIS|WIT|WK|WL|WLG|WM|WMS|WN|WND|WO|WOB|WOH|WR|WSF|WST|WT|WTM|WÜ|WUG|WUN|WUR|WW|WZL|X|Y|Z|ZE|ZEL|ZI|ZP|ZR|ZW|ZZ)[\- ]((?:[a-z]{1,2}[\- ]*\d{1,4}H?)|(9\d{3})|(\d{2,3}\-\d{1,3})[a-z]?)$/i,
30
+ /^(A|AA|AB|ABG|ABI|AC|AE|AD|AF|AIC|AK|ALF|AM|AN|ANA|ANK|AÖ|AP|APD|ARN|ART|AS|ASL|ASZ|AT|AU|AUR|AW|AZ|AZE|B|BA|BAD|BAR|BB|BBG|BC|BCH|BD|BED|BER|BF|BGL|BI|BID|BIN|BIR|BIT|BIW|BK|BKS|BL|BLB|BLK|BM|BN|BNA|BO|BÖ|BOR|BOT|BRA|BRB|BRG|BRL|BRV|BS|BT|BTF|BÜD|BÜS|BÜZ|BW|BWL|BYL|BZ|C|CA|CAS|CB|CE|CHA|CLP|CLZ|CO|COC|COE|CUX|CW|D|DA|DAH|DAN|DAU|DB|DBR|DD|DE|DEG|DEL|DGF|DH|DI|DIN|DL|DLG|DM|DN|DO|DON|DU|DÜW|DW|DZ|E|EA|EB|EBE|ECK|ED|EE|EF|EH|EI|EIC|EIL|EIN|EIS|EL|EM|EMD|EMS|EN|ER|ERB|ERH|ERZ|ES|ESW|EU|EW|F|FB|FD|FDS|FF|FFB|FG|FI|FL|FLO|FN|FO|FOR|FR|FRG|FRI|FRW|FS|FT|FTL|FÜ|G|GA|GAP|GC|GD|GDB|GE|GER|GEO|GF|GG|GHA|GHC|GI|GL|GLA|GM|GMN|GN|GNT|GÖ|GOA|GP|GR|GRH|GRZ|GS|GT|GTH|GUB|GÜ|GVM|GW|GZ|H|HA|HAL|HAM|HAS|HB|HBN|HBS|HC|HCH|HD|HDH|HDL|HE|HEF|HEI|HER|HET|HF|HG|HGN|HGW|HH|HHM|HI|HIG|HK|HK|HL|HM|HMÜ|HN|HO|HOG|HOL|HOM|HOT|HP|HR|HRO|HS|HSK|HST|HU|HVL|HWI|HX|HY|HZ|IGB|IK|IL|IN|IZ|J|JE|JL|JÜL|K|KA|KB|KC|KE|KEH|KF|KG|KH|KI|KIB|KL|KLE|KLZ|KM|KN|KO|KÖT|KR|KS|KT|KU|KÜN|KUS|KY|KYF|L|LA|LAU|LB|LBS|LBZ|LD|LDK|LDS|LEO|LER|LEV|LG|LI|LIF|LIP|LL|LM|LÖ|LÖB|LOS|LP|LRO|LSA|LSZ|LU|LUN|LWL|M|MA|MAB|MB|MC|MD|ME|MEI|MEK|MG|MGN|MH|MHL|MI|MIL|MKK|ML|MK|MM|MN|MO|MOL|MOS|MQ|MR|MS|MSH|MSP|MST|MTK|MTL|MÜ|MÜR|MW|MW|MYK|MZ|MZG|N|NB|ND|NDH|NE|NEA|NEB|NES|NEW|NF|NH|NI|NK|NM|NMB|NMS|NOH|NOL|NOM|NOR|NP|NR|NU|NVP|NW|NWM|NY|NZ|OA|OAL|OB|OBG|OC|OCH|OD|OE|OF|OG|OH|OHA|OHV|OHZ|OK|OL|OPR|OS|OSL|OVL|OVP|P|PA|PAF|PAN|PB|PCH|PE|PF|PI|PIR|PL|PLÖ|PM|PN|PR|PRÜ|PS|PW|QFT|QLB|R|RA|RC|RD|RDG|RE|REG|RG|RH|RI|RIE|RL|RM|RO|ROW|RP|RS|RSL|RT|RÜD|RÜG|RV|RW|RZ|S|SAB|SAD|SAW|SB|SBK|SC|SCZ|SDH|SDL|SE|SEB|SEE|SFA|SFB|SFT|SG|SGH|SHA|SHG|SHK|SHL|SI|SIG|SIM|SK|SL|SLF|SLK|SLN|SLS|SLÜ|SLZ|SM|SN|SO|SÖM|SOK|SON|SP|SPN|SR|SRB|SRO|ST|STA|STD|STL|SU|SÜW|SW|SZ|SZB|TBB|TDO|TE|TET|TF|TG|TIR|TO|TÖL|TR|TS|TÜ|TUT|UE|UEM|UER|UH|UL|UM|UN|USI|V|VB|VEC|VER|VG|VIE|VK|VR|VS|W|WAF|WAK|WAN|WAT|WB|WBS|WDA|WE|WEN|WES|WF|WHV|WI|WIL|WIS|WIT|WK|WL|WLG|WM|WMS|WN|WND|WO|WOB|WOH|WR|WSF|WST|WT|WTM|WÜ|WUG|WUN|WUR|WW|WZL|X|Y|Z|ZE|ZEL|ZI|ZP|ZR|ZW|ZZ)[\- ]((?:[a-z]{1,2}[\- ]*\d{1,4}[HE]?)|(9\d{3})|(\d{2,3}\-\d{1,3})[a-z]?)$/i,
31
31
  # more diplomatic license plates ;)
32
32
  /^0[\- ]\d{1,3}[\- ]\d{1,3}\w?$/i
33
33
  ]
@@ -112,6 +112,7 @@ RSpec.describe LicensePlateValidator do
112
112
  DE_VALID_SAMPLES = [
113
113
  "K-AB-123",
114
114
  "GL-A-123H",
115
+ "B-AD-4563E",
115
116
  "AC A123",
116
117
  "K-9123",
117
118
  "0-12-123",
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: license_plate_validator
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ariejan de Vroom
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-09-24 00:00:00.000000000 Z
10
+ date: 2025-02-18 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: bundler
@@ -78,7 +77,6 @@ files:
78
77
  - ".github/workflows/test.yml"
79
78
  - ".gitignore"
80
79
  - ".rspec"
81
- - ".travis.yml"
82
80
  - CHANGELOG
83
81
  - Gemfile
84
82
  - LICENSE.txt
@@ -88,6 +86,7 @@ files:
88
86
  - gemfiles/Gemfile.rails7.0
89
87
  - gemfiles/Gemfile.rails7.1
90
88
  - gemfiles/Gemfile.rails7.2
89
+ - gemfiles/Gemfile.rails8.0
91
90
  - gemfiles/Gemfile.ruby
92
91
  - lib/license_plate_validator.rb
93
92
  - lib/license_plate_validator/active_model.rb
@@ -103,7 +102,6 @@ homepage: https://ariejan.github.io/license_plate_validator
103
102
  licenses:
104
103
  - MIT
105
104
  metadata: {}
106
- post_install_message:
107
105
  rdoc_options: []
108
106
  require_paths:
109
107
  - lib
@@ -118,8 +116,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
118
116
  - !ruby/object:Gem::Version
119
117
  version: '0'
120
118
  requirements: []
121
- rubygems_version: 3.5.16
122
- signing_key:
119
+ rubygems_version: 3.6.2
123
120
  specification_version: 4
124
121
  summary: Validate license plate numbers for countries that support it.
125
122
  test_files:
data/.travis.yml DELETED
@@ -1,20 +0,0 @@
1
- language: ruby
2
-
3
- notifications:
4
- email: false
5
-
6
- rvm:
7
- - 2.0.0
8
- - 2.1.1
9
- - jruby-19mode
10
- - ruby-head
11
-
12
- matrix:
13
- allow_failures:
14
- - rvm: jruby-19mode
15
- - rvm: ruby-head
16
-
17
- gemfile:
18
- - gemfiles/activemodel-4
19
- - gemfiles/activemodel-3-2
20
- - gemfiles/standalone