countries 3.1.0 → 4.1.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.
Files changed (399) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/tests.yml +37 -0
  3. data/.gitignore +1 -0
  4. data/CHANGELOG.md +71 -1
  5. data/Gemfile +5 -0
  6. data/README.markdown +50 -35
  7. data/Rakefile +5 -3
  8. data/countries.gemspec +10 -5
  9. data/lib/countries/cache/countries.json +1 -1
  10. data/lib/countries/cache/locales/an.json +1 -1
  11. data/lib/countries/cache/locales/be.json +1 -1
  12. data/lib/countries/cache/locales/cv.json +1 -1
  13. data/lib/countries/cache/locales/he.json +1 -1
  14. data/lib/countries/cache/locales/hr.json +1 -1
  15. data/lib/countries/cache/locales/mk.json +1 -1
  16. data/lib/countries/cache/locales/ru.json +1 -1
  17. data/lib/countries/cache/locales/sr.json +1 -1
  18. data/lib/countries/cache/locales/sv.json +1 -1
  19. data/lib/countries/cache/locales/tr.json +1 -1
  20. data/lib/countries/country/class_methods.rb +19 -5
  21. data/lib/countries/country.rb +4 -0
  22. data/lib/countries/data/countries/AL.yaml +2 -2
  23. data/lib/countries/data/countries/AM.yaml +2 -2
  24. data/lib/countries/data/countries/AO.yaml +10 -10
  25. data/lib/countries/data/countries/AQ.yaml +2 -2
  26. data/lib/countries/data/countries/AS.yaml +2 -2
  27. data/lib/countries/data/countries/AT.yaml +3 -3
  28. data/lib/countries/data/countries/BA.yaml +4 -4
  29. data/lib/countries/data/countries/BD.yaml +2 -2
  30. data/lib/countries/data/countries/BE.yaml +1 -1
  31. data/lib/countries/data/countries/BF.yaml +8 -8
  32. data/lib/countries/data/countries/BG.yaml +4 -4
  33. data/lib/countries/data/countries/BH.yaml +4 -4
  34. data/lib/countries/data/countries/BI.yaml +6 -6
  35. data/lib/countries/data/countries/BJ.yaml +2 -2
  36. data/lib/countries/data/countries/BR.yaml +4 -4
  37. data/lib/countries/data/countries/BT.yaml +6 -6
  38. data/lib/countries/data/countries/BV.yaml +10 -10
  39. data/lib/countries/data/countries/BW.yaml +4 -4
  40. data/lib/countries/data/countries/CC.yaml +2 -2
  41. data/lib/countries/data/countries/CF.yaml +2 -2
  42. data/lib/countries/data/countries/CG.yaml +2 -2
  43. data/lib/countries/data/countries/CH.yaml +3 -3
  44. data/lib/countries/data/countries/CI.yaml +2 -2
  45. data/lib/countries/data/countries/CL.yaml +2 -2
  46. data/lib/countries/data/countries/CN.yaml +4 -4
  47. data/lib/countries/data/countries/CO.yaml +4 -4
  48. data/lib/countries/data/countries/CR.yaml +2 -2
  49. data/lib/countries/data/countries/CV.yaml +2 -2
  50. data/lib/countries/data/countries/CY.yaml +2 -2
  51. data/lib/countries/data/countries/CZ.yaml +3 -3
  52. data/lib/countries/data/countries/DE.yaml +2 -2
  53. data/lib/countries/data/countries/DJ.yaml +6 -6
  54. data/lib/countries/data/countries/DK.yaml +2 -2
  55. data/lib/countries/data/countries/DZ.yaml +6 -6
  56. data/lib/countries/data/countries/EC.yaml +4 -4
  57. data/lib/countries/data/countries/EE.yaml +3 -3
  58. data/lib/countries/data/countries/ES.yaml +1 -1
  59. data/lib/countries/data/countries/FI.yaml +5 -5
  60. data/lib/countries/data/countries/FK.yaml +2 -2
  61. data/lib/countries/data/countries/FM.yaml +2 -2
  62. data/lib/countries/data/countries/FO.yaml +5 -5
  63. data/lib/countries/data/countries/FR.yaml +3 -3
  64. data/lib/countries/data/countries/GE.yaml +4 -4
  65. data/lib/countries/data/countries/GG.yaml +10 -10
  66. data/lib/countries/data/countries/GH.yaml +4 -4
  67. data/lib/countries/data/countries/GI.yaml +2 -2
  68. data/lib/countries/data/countries/GL.yaml +6 -6
  69. data/lib/countries/data/countries/GM.yaml +4 -4
  70. data/lib/countries/data/countries/GN.yaml +2 -2
  71. data/lib/countries/data/countries/GR.yaml +2 -2
  72. data/lib/countries/data/countries/GS.yaml +2 -2
  73. data/lib/countries/data/countries/GT.yaml +2 -2
  74. data/lib/countries/data/countries/HK.yaml +4 -4
  75. data/lib/countries/data/countries/HN.yaml +2 -2
  76. data/lib/countries/data/countries/HR.yaml +3 -3
  77. data/lib/countries/data/countries/HU.yaml +7 -7
  78. data/lib/countries/data/countries/IE.yaml +10 -10
  79. data/lib/countries/data/countries/IM.yaml +8 -8
  80. data/lib/countries/data/countries/IN.yaml +2 -2
  81. data/lib/countries/data/countries/IO.yaml +2 -2
  82. data/lib/countries/data/countries/IQ.yaml +2 -2
  83. data/lib/countries/data/countries/IS.yaml +4 -4
  84. data/lib/countries/data/countries/IT.yaml +1 -1
  85. data/lib/countries/data/countries/JO.yaml +2 -2
  86. data/lib/countries/data/countries/KE.yaml +2 -2
  87. data/lib/countries/data/countries/KG.yaml +2 -2
  88. data/lib/countries/data/countries/KI.yaml +6 -6
  89. data/lib/countries/data/countries/KP.yaml +3 -2
  90. data/lib/countries/data/countries/KZ.yaml +2 -2
  91. data/lib/countries/data/countries/LA.yaml +6 -6
  92. data/lib/countries/data/countries/LT.yaml +6 -6
  93. data/lib/countries/data/countries/LV.yaml +4 -4
  94. data/lib/countries/data/countries/MA.yaml +4 -4
  95. data/lib/countries/data/countries/MD.yaml +8 -8
  96. data/lib/countries/data/countries/ME.yaml +2 -2
  97. data/lib/countries/data/countries/MH.yaml +2 -2
  98. data/lib/countries/data/countries/MK.yaml +2 -2
  99. data/lib/countries/data/countries/ML.yaml +4 -4
  100. data/lib/countries/data/countries/MN.yaml +8 -8
  101. data/lib/countries/data/countries/MR.yaml +2 -2
  102. data/lib/countries/data/countries/MT.yaml +2 -2
  103. data/lib/countries/data/countries/MV.yaml +2 -2
  104. data/lib/countries/data/countries/MW.yaml +2 -2
  105. data/lib/countries/data/countries/MX.yaml +2 -2
  106. data/lib/countries/data/countries/MY.yaml +2 -2
  107. data/lib/countries/data/countries/NA.yaml +4 -4
  108. data/lib/countries/data/countries/NE.yaml +4 -4
  109. data/lib/countries/data/countries/NI.yaml +2 -2
  110. data/lib/countries/data/countries/NL.yaml +3 -3
  111. data/lib/countries/data/countries/NO.yaml +4 -4
  112. data/lib/countries/data/countries/NP.yaml +6 -6
  113. data/lib/countries/data/countries/OM.yaml +2 -2
  114. data/lib/countries/data/countries/PA.yaml +2 -2
  115. data/lib/countries/data/countries/PE.yaml +4 -4
  116. data/lib/countries/data/countries/PF.yaml +4 -4
  117. data/lib/countries/data/countries/PH.yaml +2 -2
  118. data/lib/countries/data/countries/PK.yaml +4 -4
  119. data/lib/countries/data/countries/PL.yaml +4 -4
  120. data/lib/countries/data/countries/PR.yaml +8 -8
  121. data/lib/countries/data/countries/PT.yaml +5 -5
  122. data/lib/countries/data/countries/PY.yaml +2 -2
  123. data/lib/countries/data/countries/QA.yaml +2 -2
  124. data/lib/countries/data/countries/RO.yaml +6 -6
  125. data/lib/countries/data/countries/RU.yaml +2 -2
  126. data/lib/countries/data/countries/RW.yaml +2 -2
  127. data/lib/countries/data/countries/SA.yaml +2 -2
  128. data/lib/countries/data/countries/SC.yaml +2 -2
  129. data/lib/countries/data/countries/SD.yaml +2 -2
  130. data/lib/countries/data/countries/SE.yaml +4 -4
  131. data/lib/countries/data/countries/SH.yaml +4 -4
  132. data/lib/countries/data/countries/SI.yaml +4 -4
  133. data/lib/countries/data/countries/SJ.yaml +5 -5
  134. data/lib/countries/data/countries/SK.yaml +6 -6
  135. data/lib/countries/data/countries/SL.yaml +2 -2
  136. data/lib/countries/data/countries/SN.yaml +4 -4
  137. data/lib/countries/data/countries/TF.yaml +5 -5
  138. data/lib/countries/data/countries/TG.yaml +6 -6
  139. data/lib/countries/data/countries/TV.yaml +2 -2
  140. data/lib/countries/data/countries/TZ.yaml +2 -2
  141. data/lib/countries/data/countries/UA.yaml +5 -5
  142. data/lib/countries/data/countries/UG.yaml +4 -4
  143. data/lib/countries/data/countries/UY.yaml +2 -2
  144. data/lib/countries/data/countries/VC.yaml +2 -2
  145. data/lib/countries/data/countries/VE.yaml +2 -2
  146. data/lib/countries/data/countries/VN.yaml +4 -4
  147. data/lib/countries/data/countries/WS.yaml +2 -2
  148. data/lib/countries/data/countries/ZA.yaml +2 -2
  149. data/lib/countries/data/countries/ZM.yaml +4 -4
  150. data/lib/countries/data/countries/ZW.yaml +4 -4
  151. data/lib/countries/data/subdivisions/AD.yaml +35 -28
  152. data/lib/countries/data/subdivisions/AE.yaml +154 -63
  153. data/lib/countries/data/subdivisions/AF.yaml +605 -300
  154. data/lib/countries/data/subdivisions/AG.yaml +149 -67
  155. data/lib/countries/data/subdivisions/AI.yaml +139 -125
  156. data/lib/countries/data/subdivisions/AL.yaml +472 -144
  157. data/lib/countries/data/subdivisions/AM.yaml +236 -88
  158. data/lib/countries/data/subdivisions/AO.yaml +344 -144
  159. data/lib/countries/data/subdivisions/AR.yaml +450 -187
  160. data/lib/countries/data/subdivisions/AS.yaml +34 -15
  161. data/lib/countries/data/subdivisions/AT.yaml +202 -72
  162. data/lib/countries/data/subdivisions/AU.yaml +212 -64
  163. data/lib/countries/data/subdivisions/AW.yaml +9 -0
  164. data/lib/countries/data/subdivisions/AX.yaml +20 -9
  165. data/lib/countries/data/subdivisions/AZ.yaml +1550 -592
  166. data/lib/countries/data/subdivisions/BA.yaml +189 -16
  167. data/lib/countries/data/subdivisions/BB.yaml +190 -88
  168. data/lib/countries/data/subdivisions/BD.yaml +1192 -519
  169. data/lib/countries/data/subdivisions/BE.yaml +278 -88
  170. data/lib/countries/data/subdivisions/BF.yaml +993 -366
  171. data/lib/countries/data/subdivisions/BG.yaml +600 -219
  172. data/lib/countries/data/subdivisions/BH.yaml +72 -35
  173. data/lib/countries/data/subdivisions/BI.yaml +298 -123
  174. data/lib/countries/data/subdivisions/BJ.yaml +226 -96
  175. data/lib/countries/data/subdivisions/BL.yaml +11 -0
  176. data/lib/countries/data/subdivisions/BM.yaml +110 -99
  177. data/lib/countries/data/subdivisions/BN.yaml +63 -32
  178. data/lib/countries/data/subdivisions/BO.yaml +157 -72
  179. data/lib/countries/data/subdivisions/BQ.yaml +63 -24
  180. data/lib/countries/data/subdivisions/BR.yaml +689 -216
  181. data/lib/countries/data/subdivisions/BS.yaml +625 -108
  182. data/lib/countries/data/subdivisions/BT.yaml +346 -160
  183. data/lib/countries/data/subdivisions/BW.yaml +294 -72
  184. data/lib/countries/data/subdivisions/BY.yaml +140 -51
  185. data/lib/countries/data/subdivisions/BZ.yaml +97 -48
  186. data/lib/countries/data/subdivisions/CA.yaml +358 -105
  187. data/lib/countries/data/subdivisions/CD.yaml +451 -68
  188. data/lib/countries/data/subdivisions/CF.yaml +291 -136
  189. data/lib/countries/data/subdivisions/CG.yaml +217 -88
  190. data/lib/countries/data/subdivisions/CH.yaml +593 -208
  191. data/lib/countries/data/subdivisions/CI.yaml +431 -66
  192. data/lib/countries/data/subdivisions/CK.yaml +110 -99
  193. data/lib/countries/data/subdivisions/CL.yaml +262 -132
  194. data/lib/countries/data/subdivisions/CM.yaml +190 -80
  195. data/lib/countries/data/subdivisions/CN.yaml +691 -12
  196. data/lib/countries/data/subdivisions/CO.yaml +643 -264
  197. data/lib/countries/data/subdivisions/CP.yaml +4 -0
  198. data/lib/countries/data/subdivisions/CR.yaml +119 -56
  199. data/lib/countries/data/subdivisions/CU.yaml +268 -128
  200. data/lib/countries/data/subdivisions/CV.yaml +414 -126
  201. data/lib/countries/data/subdivisions/CW.yaml +9 -0
  202. data/lib/countries/data/subdivisions/CY.yaml +102 -48
  203. data/lib/countries/data/subdivisions/CZ.yaml +2430 -53
  204. data/lib/countries/data/subdivisions/DE.yaml +468 -128
  205. data/lib/countries/data/subdivisions/DJ.yaml +110 -48
  206. data/lib/countries/data/subdivisions/DK.yaml +186 -96
  207. data/lib/countries/data/subdivisions/DM.yaml +159 -80
  208. data/lib/countries/data/subdivisions/DO.yaml +660 -248
  209. data/lib/countries/data/subdivisions/DZ.yaml +809 -384
  210. data/lib/countries/data/subdivisions/EC.yaml +391 -192
  211. data/lib/countries/data/subdivisions/EE.yaml +543 -120
  212. data/lib/countries/data/subdivisions/EG.yaml +472 -216
  213. data/lib/countries/data/subdivisions/EH.yaml +24 -16
  214. data/lib/countries/data/subdivisions/ER.yaml +109 -48
  215. data/lib/countries/data/subdivisions/ES.yaml +1805 -550
  216. data/lib/countries/data/subdivisions/ET.yaml +207 -88
  217. data/lib/countries/data/subdivisions/FI.yaml +421 -37
  218. data/lib/countries/data/subdivisions/FJ.yaml +314 -40
  219. data/lib/countries/data/subdivisions/FM.yaml +63 -32
  220. data/lib/countries/data/subdivisions/FO.yaml +60 -54
  221. data/lib/countries/data/subdivisions/FR.yaml +2861 -922
  222. data/lib/countries/data/subdivisions/GA.yaml +159 -72
  223. data/lib/countries/data/subdivisions/GB.yaml +4960 -1755
  224. data/lib/countries/data/subdivisions/GD.yaml +114 -56
  225. data/lib/countries/data/subdivisions/GE.yaml +238 -96
  226. data/lib/countries/data/subdivisions/GF.yaml +11 -0
  227. data/lib/countries/data/subdivisions/GG.yaml +110 -99
  228. data/lib/countries/data/subdivisions/GH.yaml +266 -79
  229. data/lib/countries/data/subdivisions/GL.yaml +89 -0
  230. data/lib/countries/data/subdivisions/GM.yaml +124 -48
  231. data/lib/countries/data/subdivisions/GN.yaml +711 -274
  232. data/lib/countries/data/subdivisions/GP.yaml +11 -0
  233. data/lib/countries/data/subdivisions/GQ.yaml +143 -72
  234. data/lib/countries/data/subdivisions/GR.yaml +594 -165
  235. data/lib/countries/data/subdivisions/GT.yaml +351 -176
  236. data/lib/countries/data/subdivisions/GU.yaml +85 -58
  237. data/lib/countries/data/subdivisions/GW.yaml +192 -72
  238. data/lib/countries/data/subdivisions/GY.yaml +163 -80
  239. data/lib/countries/data/subdivisions/HK.yaml +86 -54
  240. data/lib/countries/data/subdivisions/HN.yaml +274 -144
  241. data/lib/countries/data/subdivisions/HR.yaml +429 -168
  242. data/lib/countries/data/subdivisions/HT.yaml +179 -72
  243. data/lib/countries/data/subdivisions/HU.yaml +791 -339
  244. data/lib/countries/data/subdivisions/IC.yaml +4 -0
  245. data/lib/countries/data/subdivisions/ID.yaml +2376 -1858
  246. data/lib/countries/data/subdivisions/IE.yaml +650 -259
  247. data/lib/countries/data/subdivisions/IL.yaml +114 -48
  248. data/lib/countries/data/subdivisions/IM.yaml +240 -216
  249. data/lib/countries/data/subdivisions/IN.yaml +1005 -298
  250. data/lib/countries/data/subdivisions/IQ.yaml +316 -139
  251. data/lib/countries/data/subdivisions/IR.yaml +596 -239
  252. data/lib/countries/data/subdivisions/IS.yaml +373 -67
  253. data/lib/countries/data/subdivisions/IT.yaml +2693 -880
  254. data/lib/countries/data/subdivisions/JE.yaml +120 -108
  255. data/lib/countries/data/subdivisions/JM.yaml +243 -112
  256. data/lib/countries/data/subdivisions/JO.yaml +193 -96
  257. data/lib/countries/data/subdivisions/JP.yaml +950 -376
  258. data/lib/countries/data/subdivisions/KE.yaml +807 -40
  259. data/lib/countries/data/subdivisions/KG.yaml +188 -64
  260. data/lib/countries/data/subdivisions/KH.yaml +437 -192
  261. data/lib/countries/data/subdivisions/KI.yaml +57 -24
  262. data/lib/countries/data/subdivisions/KM.yaml +49 -24
  263. data/lib/countries/data/subdivisions/KN.yaml +308 -112
  264. data/lib/countries/data/subdivisions/KP.yaml +365 -57
  265. data/lib/countries/data/subdivisions/KR.yaml +393 -128
  266. data/lib/countries/data/subdivisions/KW.yaml +87 -48
  267. data/lib/countries/data/subdivisions/KY.yaml +36 -24
  268. data/lib/countries/data/subdivisions/KZ.yaml +362 -135
  269. data/lib/countries/data/subdivisions/LA.yaml +300 -145
  270. data/lib/countries/data/subdivisions/LB.yaml +134 -48
  271. data/lib/countries/data/subdivisions/LC.yaml +166 -0
  272. data/lib/countries/data/subdivisions/LI.yaml +186 -88
  273. data/lib/countries/data/subdivisions/LK.yaml +544 -200
  274. data/lib/countries/data/subdivisions/LR.yaml +252 -110
  275. data/lib/countries/data/subdivisions/LS.yaml +149 -80
  276. data/lib/countries/data/subdivisions/LT.yaml +1042 -80
  277. data/lib/countries/data/subdivisions/LU.yaml +200 -17
  278. data/lib/countries/data/subdivisions/LV.yaml +2399 -223
  279. data/lib/countries/data/subdivisions/LY.yaml +339 -162
  280. data/lib/countries/data/subdivisions/MA.yaml +1443 -484
  281. data/lib/countries/data/subdivisions/MC.yaml +250 -0
  282. data/lib/countries/data/subdivisions/MD.yaml +638 -93
  283. data/lib/countries/data/subdivisions/ME.yaml +425 -168
  284. data/lib/countries/data/subdivisions/MF.yaml +9 -0
  285. data/lib/countries/data/subdivisions/MG.yaml +93 -48
  286. data/lib/countries/data/subdivisions/MH.yaml +422 -199
  287. data/lib/countries/data/subdivisions/MK.yaml +2972 -255
  288. data/lib/countries/data/subdivisions/ML.yaml +187 -71
  289. data/lib/countries/data/subdivisions/MM.yaml +287 -112
  290. data/lib/countries/data/subdivisions/MN.yaml +421 -176
  291. data/lib/countries/data/subdivisions/MO.yaml +9 -0
  292. data/lib/countries/data/subdivisions/MP.yaml +30 -12
  293. data/lib/countries/data/subdivisions/MQ.yaml +11 -0
  294. data/lib/countries/data/subdivisions/MR.yaml +245 -99
  295. data/lib/countries/data/subdivisions/MS.yaml +30 -27
  296. data/lib/countries/data/subdivisions/MT.yaml +1059 -544
  297. data/lib/countries/data/subdivisions/MU.yaml +317 -131
  298. data/lib/countries/data/subdivisions/MV.yaml +457 -163
  299. data/lib/countries/data/subdivisions/MW.yaml +537 -216
  300. data/lib/countries/data/subdivisions/MX.yaml +709 -256
  301. data/lib/countries/data/subdivisions/MY.yaml +336 -128
  302. data/lib/countries/data/subdivisions/MZ.yaml +191 -83
  303. data/lib/countries/data/subdivisions/NA.yaml +220 -107
  304. data/lib/countries/data/subdivisions/NC.yaml +26 -9
  305. data/lib/countries/data/subdivisions/NE.yaml +170 -64
  306. data/lib/countries/data/subdivisions/NG.yaml +870 -296
  307. data/lib/countries/data/subdivisions/NI.yaml +260 -136
  308. data/lib/countries/data/subdivisions/NL.yaml +381 -96
  309. data/lib/countries/data/subdivisions/NO.yaml +633 -1096
  310. data/lib/countries/data/subdivisions/NP.yaml +383 -112
  311. data/lib/countries/data/subdivisions/NR.yaml +260 -112
  312. data/lib/countries/data/subdivisions/NZ.yaml +318 -131
  313. data/lib/countries/data/subdivisions/OM.yaml +202 -52
  314. data/lib/countries/data/subdivisions/PA.yaml +203 -99
  315. data/lib/countries/data/subdivisions/PE.yaml +418 -208
  316. data/lib/countries/data/subdivisions/PF.yaml +30 -15
  317. data/lib/countries/data/subdivisions/PG.yaml +381 -155
  318. data/lib/countries/data/subdivisions/PH.yaml +1855 -662
  319. data/lib/countries/data/subdivisions/PK.yaml +185 -54
  320. data/lib/countries/data/subdivisions/PL.yaml +1176 -127
  321. data/lib/countries/data/subdivisions/PM.yaml +18 -6
  322. data/lib/countries/data/subdivisions/PR.yaml +1107 -0
  323. data/lib/countries/data/subdivisions/PS.yaml +257 -0
  324. data/lib/countries/data/subdivisions/PT.yaml +342 -160
  325. data/lib/countries/data/subdivisions/PW.yaml +269 -128
  326. data/lib/countries/data/subdivisions/PY.yaml +321 -144
  327. data/lib/countries/data/subdivisions/QA.yaml +168 -65
  328. data/lib/countries/data/subdivisions/RE.yaml +11 -0
  329. data/lib/countries/data/subdivisions/RO.yaml +729 -336
  330. data/lib/countries/data/subdivisions/RS.yaml +589 -240
  331. data/lib/countries/data/subdivisions/RU.yaml +1875 -665
  332. data/lib/countries/data/subdivisions/RW.yaml +102 -40
  333. data/lib/countries/data/subdivisions/SA.yaml +234 -104
  334. data/lib/countries/data/subdivisions/SB.yaml +169 -80
  335. data/lib/countries/data/subdivisions/SC.yaml +462 -184
  336. data/lib/countries/data/subdivisions/SD.yaml +163 -22
  337. data/lib/countries/data/subdivisions/SE.yaml +435 -237
  338. data/lib/countries/data/subdivisions/SG.yaml +111 -19
  339. data/lib/countries/data/subdivisions/SH.yaml +67 -14
  340. data/lib/countries/data/subdivisions/SI.yaml +3570 -1549
  341. data/lib/countries/data/subdivisions/SJ.yaml +20 -18
  342. data/lib/countries/data/subdivisions/SK.yaml +129 -64
  343. data/lib/countries/data/subdivisions/SL.yaml +80 -31
  344. data/lib/countries/data/subdivisions/SM.yaml +159 -72
  345. data/lib/countries/data/subdivisions/SN.yaml +233 -88
  346. data/lib/countries/data/subdivisions/SO.yaml +311 -144
  347. data/lib/countries/data/subdivisions/SR.yaml +158 -80
  348. data/lib/countries/data/subdivisions/SS.yaml +196 -0
  349. data/lib/countries/data/subdivisions/ST.yaml +49 -16
  350. data/lib/countries/data/subdivisions/SV.yaml +231 -112
  351. data/lib/countries/data/subdivisions/SX.yaml +9 -0
  352. data/lib/countries/data/subdivisions/SY.yaml +220 -112
  353. data/lib/countries/data/subdivisions/SZ.yaml +65 -32
  354. data/lib/countries/data/subdivisions/TA.yaml +4 -0
  355. data/lib/countries/data/subdivisions/TD.yaml +409 -139
  356. data/lib/countries/data/subdivisions/TF.yaml +38 -20
  357. data/lib/countries/data/subdivisions/TG.yaml +75 -40
  358. data/lib/countries/data/subdivisions/TH.yaml +1451 -616
  359. data/lib/countries/data/subdivisions/TJ.yaml +100 -24
  360. data/lib/countries/data/subdivisions/TK.yaml +30 -27
  361. data/lib/countries/data/subdivisions/TL.yaml +209 -104
  362. data/lib/countries/data/subdivisions/TM.yaml +116 -40
  363. data/lib/countries/data/subdivisions/TN.yaml +412 -192
  364. data/lib/countries/data/subdivisions/TO.yaml +75 -40
  365. data/lib/countries/data/subdivisions/TR.yaml +1817 -648
  366. data/lib/countries/data/subdivisions/TT.yaml +296 -113
  367. data/lib/countries/data/subdivisions/TV.yaml +133 -59
  368. data/lib/countries/data/subdivisions/TW.yaml +481 -164
  369. data/lib/countries/data/subdivisions/TZ.yaml +661 -208
  370. data/lib/countries/data/subdivisions/UA.yaml +505 -216
  371. data/lib/countries/data/subdivisions/UG.yaml +2262 -640
  372. data/lib/countries/data/subdivisions/UM.yaml +216 -71
  373. data/lib/countries/data/subdivisions/US.yaml +1658 -464
  374. data/lib/countries/data/subdivisions/UY.yaml +367 -152
  375. data/lib/countries/data/subdivisions/UZ.yaml +289 -113
  376. data/lib/countries/data/subdivisions/VC.yaml +101 -48
  377. data/lib/countries/data/subdivisions/VE.yaml +456 -200
  378. data/lib/countries/data/subdivisions/VI.yaml +26 -9
  379. data/lib/countries/data/subdivisions/VN.yaml +3664 -2996
  380. data/lib/countries/data/subdivisions/VU.yaml +98 -48
  381. data/lib/countries/data/subdivisions/WF.yaml +73 -0
  382. data/lib/countries/data/subdivisions/WS.yaml +200 -88
  383. data/lib/countries/data/subdivisions/YE.yaml +375 -152
  384. data/lib/countries/data/subdivisions/YT.yaml +76 -51
  385. data/lib/countries/data/subdivisions/ZA.yaml +238 -72
  386. data/lib/countries/data/subdivisions/ZM.yaml +157 -72
  387. data/lib/countries/data/subdivisions/ZW.yaml +152 -73
  388. data/lib/countries/data/translation_corrections.yaml +6 -1
  389. data/lib/countries/data.rb +48 -22
  390. data/lib/countries/sources/cldr/downloader.rb +12 -13
  391. data/lib/countries/tasks/geocoding.rake +9 -16
  392. data/lib/countries/translations.rb +1 -1
  393. data/lib/countries/version.rb +1 -1
  394. data/lib/countries.rb +0 -1
  395. data/spec/country_spec.rb +100 -0
  396. data/spec/data_spec.rb +4 -4
  397. data/spec/thread_safety_spec.rb +46 -0
  398. metadata +31 -23
  399. data/.travis.yml +0 -15
@@ -1,313 +1,337 @@
1
1
  ---
2
- '1':
2
+ '1':
3
+ name: Andreas
4
+ code:
3
5
  unofficial_names: Andreas
4
- translations:
5
- en: Andreas
6
6
  geo:
7
7
  latitude: 54.36742
8
8
  longitude: -4.44251
9
- min_latitude:
10
- min_longitude:
11
- max_latitude:
12
- max_longitude:
13
- name: Andreas
14
- comments:
15
- '2':
16
- unofficial_names: Arbory
9
+ min_latitude:
10
+ min_longitude:
11
+ max_latitude:
12
+ max_longitude:
17
13
  translations:
18
- en: Arbory
14
+ en: Andreas
15
+ comments:
16
+ '2':
17
+ name: Arbory
18
+ code:
19
+ unofficial_names: Arbory
19
20
  geo:
20
21
  latitude: 54.1009
21
22
  longitude: -4.67743
22
- min_latitude:
23
- min_longitude:
24
- max_latitude:
25
- max_longitude:
26
- name: Arbory
27
- comments:
28
- '3':
29
- unofficial_names: Ballaugh
23
+ min_latitude:
24
+ min_longitude:
25
+ max_latitude:
26
+ max_longitude:
30
27
  translations:
31
- en: Ballaugh
28
+ en: Arbory
29
+ comments:
30
+ '3':
31
+ name: Ballaugh
32
+ code:
33
+ unofficial_names: Ballaugh
32
34
  geo:
33
35
  latitude: 54.31278
34
36
  longitude: -4.54225
35
- min_latitude:
36
- min_longitude:
37
- max_latitude:
38
- max_longitude:
39
- name: Ballaugh
40
- comments:
41
- '4':
42
- unofficial_names: Braddan
37
+ min_latitude:
38
+ min_longitude:
39
+ max_latitude:
40
+ max_longitude:
43
41
  translations:
44
- en: Braddan
42
+ en: Ballaugh
43
+ comments:
44
+ '4':
45
+ name: Braddan
46
+ code:
47
+ unofficial_names: Braddan
45
48
  geo:
46
49
  latitude: 54.16319
47
50
  longitude: -4.5062
48
- min_latitude:
49
- min_longitude:
50
- max_latitude:
51
- max_longitude:
52
- name: Braddan
53
- comments:
54
- '5':
55
- unofficial_names: Bride
51
+ min_latitude:
52
+ min_longitude:
53
+ max_latitude:
54
+ max_longitude:
56
55
  translations:
57
- en: Bride
56
+ en: Braddan
57
+ comments:
58
+ '5':
59
+ name: Bride
60
+ code:
61
+ unofficial_names: Bride
58
62
  geo:
59
63
  latitude: 54.38311
60
64
  longitude: -4.39088
61
- min_latitude:
62
- min_longitude:
63
- max_latitude:
64
- max_longitude:
65
- name: Bride
66
- comments:
67
- '6':
68
- unofficial_names: Castletown
65
+ min_latitude:
66
+ min_longitude:
67
+ max_latitude:
68
+ max_longitude:
69
69
  translations:
70
- en: Castletown
70
+ en: Bride
71
+ comments:
72
+ '6':
73
+ name: Castletown
74
+ code:
75
+ unofficial_names: Castletown
71
76
  geo:
72
77
  latitude: 54.07463
73
78
  longitude: -4.6582
74
- min_latitude:
75
- min_longitude:
76
- max_latitude:
77
- max_longitude:
78
- name: Castletown
79
- comments:
80
- '7':
81
- unofficial_names: Douglas
79
+ min_latitude:
80
+ min_longitude:
81
+ max_latitude:
82
+ max_longitude:
82
83
  translations:
83
- en: Douglas
84
+ en: Castletown
85
+ comments:
86
+ '7':
87
+ name: Douglas
88
+ code:
89
+ unofficial_names: Douglas
84
90
  geo:
85
91
  latitude: 54.15442
86
92
  longitude: -4.48452
87
- min_latitude:
88
- min_longitude:
89
- max_latitude:
90
- max_longitude:
91
- name: Douglas
92
- comments:
93
- '8':
94
- unofficial_names: German
93
+ min_latitude:
94
+ min_longitude:
95
+ max_latitude:
96
+ max_longitude:
95
97
  translations:
96
- en: German
98
+ en: Douglas
99
+ comments:
100
+ '8':
101
+ name: German
102
+ code:
103
+ unofficial_names: German
97
104
  geo:
98
105
  latitude: 54.22197
99
106
  longitude: -4.69464
100
- min_latitude:
101
- min_longitude:
102
- max_latitude:
103
- max_longitude:
104
- name: German
105
- comments:
106
- '9':
107
- unofficial_names: Jurby
107
+ min_latitude:
108
+ min_longitude:
109
+ max_latitude:
110
+ max_longitude:
108
111
  translations:
109
- en: Jurby
112
+ en: German
113
+ comments:
114
+ '9':
115
+ name: Jurby
116
+ code:
117
+ unofficial_names: Jurby
110
118
  geo:
111
119
  latitude: 54.36276
112
120
  longitude: -4.51838
113
- min_latitude:
114
- min_longitude:
115
- max_latitude:
116
- max_longitude:
117
- name: Jurby
118
- comments:
119
- '10':
120
- unofficial_names: Laxey
121
+ min_latitude:
122
+ min_longitude:
123
+ max_latitude:
124
+ max_longitude:
121
125
  translations:
122
- en: Laxey
126
+ en: Jurby
127
+ comments:
128
+ '10':
129
+ name: Laxey
130
+ code:
131
+ unofficial_names: Laxey
123
132
  geo:
124
133
  latitude: 54.2312
125
134
  longitude: -4.40402
126
- min_latitude:
127
- min_longitude:
128
- max_latitude:
129
- max_longitude:
130
- name: Laxey
131
- comments:
132
- '11':
133
- unofficial_names: Lezayre
135
+ min_latitude:
136
+ min_longitude:
137
+ max_latitude:
138
+ max_longitude:
134
139
  translations:
135
- en: Lezayre
140
+ en: Laxey
141
+ comments:
142
+ '11':
143
+ name: Lezayre
144
+ code:
145
+ unofficial_names: Lezayre
136
146
  geo:
137
147
  latitude: 54.31734
138
148
  longitude: -4.41985
139
- min_latitude:
140
- min_longitude:
141
- max_latitude:
142
- max_longitude:
143
- name: Lezayre
144
- comments:
145
- '12':
146
- unofficial_names: Lonan
149
+ min_latitude:
150
+ min_longitude:
151
+ max_latitude:
152
+ max_longitude:
147
153
  translations:
148
- en: Lonan
154
+ en: Lezayre
155
+ comments:
156
+ '12':
157
+ name: Lonan
158
+ code:
159
+ unofficial_names: Lonan
149
160
  geo:
150
161
  latitude: 54.21491
151
162
  longitude: -4.43264
152
- min_latitude:
153
- min_longitude:
154
- max_latitude:
155
- max_longitude:
156
- name: Lonan
157
- comments:
158
- '13':
159
- unofficial_names: Malew
163
+ min_latitude:
164
+ min_longitude:
165
+ max_latitude:
166
+ max_longitude:
160
167
  translations:
161
- en: Malew
168
+ en: Lonan
169
+ comments:
170
+ '13':
171
+ name: Malew
172
+ code:
173
+ unofficial_names: Malew
162
174
  geo:
163
175
  latitude: 54.10563
164
176
  longitude: -4.63125
165
- min_latitude:
166
- min_longitude:
167
- max_latitude:
168
- max_longitude:
169
- name: Malew
170
- comments:
171
- '14':
172
- unofficial_names: Marown
177
+ min_latitude:
178
+ min_longitude:
179
+ max_latitude:
180
+ max_longitude:
173
181
  translations:
174
- en: Marown
182
+ en: Malew
183
+ comments:
184
+ '14':
185
+ name: Marown
186
+ code:
187
+ unofficial_names: Marown
175
188
  geo:
176
189
  latitude: 54.1739
177
190
  longitude: -4.57392
178
- min_latitude:
179
- min_longitude:
180
- max_latitude:
181
- max_longitude:
182
- name: Marown
183
- comments:
184
- '15':
185
- unofficial_names: Maughold
191
+ min_latitude:
192
+ min_longitude:
193
+ max_latitude:
194
+ max_longitude:
186
195
  translations:
187
- en: Maughold
196
+ en: Marown
197
+ comments:
198
+ '15':
199
+ name: Maughold
200
+ code:
201
+ unofficial_names: Maughold
188
202
  geo:
189
203
  latitude: 54.29762
190
204
  longitude: -4.31986
191
- min_latitude:
192
- min_longitude:
193
- max_latitude:
194
- max_longitude:
195
- name: Maughold
196
- comments:
197
- '16':
198
- unofficial_names: Michael
205
+ min_latitude:
206
+ min_longitude:
207
+ max_latitude:
208
+ max_longitude:
199
209
  translations:
200
- en: Michael
210
+ en: Maughold
211
+ comments:
212
+ '16':
213
+ name: Michael
214
+ code:
215
+ unofficial_names: Michael
201
216
  geo:
202
217
  latitude: 54.249
203
218
  longitude: -4.60791
204
- min_latitude:
205
- min_longitude:
206
- max_latitude:
207
- max_longitude:
208
- name: Michael
209
- comments:
210
- '17':
211
- unofficial_names: Onchan
219
+ min_latitude:
220
+ min_longitude:
221
+ max_latitude:
222
+ max_longitude:
212
223
  translations:
213
- en: Onchan
224
+ en: Michael
225
+ comments:
226
+ '17':
227
+ name: Onchan
228
+ code:
229
+ unofficial_names: Onchan
214
230
  geo:
215
231
  latitude: 54.17478
216
232
  longitude: -4.45521
217
- min_latitude:
218
- min_longitude:
219
- max_latitude:
220
- max_longitude:
221
- name: Onchan
222
- comments:
223
- '18':
224
- unofficial_names: Patrick
233
+ min_latitude:
234
+ min_longitude:
235
+ max_latitude:
236
+ max_longitude:
225
237
  translations:
226
- en: Patrick
238
+ en: Onchan
239
+ comments:
240
+ '18':
241
+ name: Patrick
242
+ code:
243
+ unofficial_names: Patrick
227
244
  geo:
228
245
  latitude: 54.20486
229
246
  longitude: -4.69314
230
- min_latitude:
231
- min_longitude:
232
- max_latitude:
233
- max_longitude:
234
- name: Patrick
235
- comments:
236
- '19':
237
- unofficial_names: Peel
247
+ min_latitude:
248
+ min_longitude:
249
+ max_latitude:
250
+ max_longitude:
238
251
  translations:
239
- en: Peel
252
+ en: Patrick
253
+ comments:
254
+ '19':
255
+ name: Peel
256
+ code:
257
+ unofficial_names: Peel
240
258
  geo:
241
259
  latitude: 54.22175
242
260
  longitude: -4.68794
243
- min_latitude:
244
- min_longitude:
245
- max_latitude:
246
- max_longitude:
247
- name: Peel
248
- comments:
249
- '20':
250
- unofficial_names: Port Erin
261
+ min_latitude:
262
+ min_longitude:
263
+ max_latitude:
264
+ max_longitude:
251
265
  translations:
252
- en: Port Erin
266
+ en: Peel
267
+ comments:
268
+ '20':
269
+ name: Port Erin
270
+ code:
271
+ unofficial_names: Port Erin
253
272
  geo:
254
273
  latitude: 54.08523
255
274
  longitude: -4.74987
256
- min_latitude:
257
- min_longitude:
258
- max_latitude:
259
- max_longitude:
260
- name: Port Erin
261
- comments:
262
- '21':
263
- unofficial_names: Port St Mary
275
+ min_latitude:
276
+ min_longitude:
277
+ max_latitude:
278
+ max_longitude:
264
279
  translations:
265
- en: Port St Mary
280
+ en: Port Erin
281
+ comments:
282
+ '21':
283
+ name: Port St Mary
284
+ code:
285
+ unofficial_names: Port St Mary
266
286
  geo:
267
287
  latitude: 54.07589
268
288
  longitude: -4.7397
269
- min_latitude:
270
- min_longitude:
271
- max_latitude:
272
- max_longitude:
273
- name: Port St Mary
274
- comments:
275
- '22':
276
- unofficial_names: Ramsey
289
+ min_latitude:
290
+ min_longitude:
291
+ max_latitude:
292
+ max_longitude:
277
293
  translations:
278
- en: Ramsey
294
+ en: Port St Mary
295
+ comments:
296
+ '22':
297
+ name: Ramsey
298
+ code:
299
+ unofficial_names: Ramsey
279
300
  geo:
280
301
  latitude: 54.32179
281
302
  longitude: -4.38878
282
- min_latitude:
283
- min_longitude:
284
- max_latitude:
285
- max_longitude:
286
- name: Ramsey
287
- comments:
288
- '23':
289
- unofficial_names: Rushen
303
+ min_latitude:
304
+ min_longitude:
305
+ max_latitude:
306
+ max_longitude:
290
307
  translations:
291
- en: Rushen
308
+ en: Ramsey
309
+ comments:
310
+ '23':
311
+ name: Rushen
312
+ code:
313
+ unofficial_names: Rushen
292
314
  geo:
293
315
  latitude: 54.06223
294
316
  longitude: -4.77974
295
- min_latitude:
296
- min_longitude:
297
- max_latitude:
298
- max_longitude:
299
- name: Rushen
300
- comments:
301
- '24':
302
- unofficial_names: Santon
317
+ min_latitude:
318
+ min_longitude:
319
+ max_latitude:
320
+ max_longitude:
303
321
  translations:
304
- en: Santon
322
+ en: Rushen
323
+ comments:
324
+ '24':
325
+ name: Santon
326
+ code:
327
+ unofficial_names: Santon
305
328
  geo:
306
329
  latitude: 54.10567
307
330
  longitude: -4.55701
308
- min_latitude:
309
- min_longitude:
310
- max_latitude:
311
- max_longitude:
312
- name: Santon
313
- comments:
331
+ min_latitude:
332
+ min_longitude:
333
+ max_latitude:
334
+ max_longitude:
335
+ translations:
336
+ en: Santon
337
+ comments: