countries 4.2.3 → 5.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (520) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/codeql-analysis.yml +70 -0
  3. data/.github/workflows/tests.yml +3 -7
  4. data/.rubocop.yml +40 -1
  5. data/.rubocop_todo.yml +8 -41
  6. data/CHANGELOG.md +35 -2
  7. data/Gemfile +5 -3
  8. data/README.markdown +56 -62
  9. data/Rakefile +21 -45
  10. data/UPGRADE.md +39 -0
  11. data/bin/console +1 -0
  12. data/countries.gemspec +7 -6
  13. data/lib/countries/cache/countries.json +1 -1
  14. data/lib/countries/cache/locales/ab.json +1 -1
  15. data/lib/countries/cache/locales/af.json +1 -1
  16. data/lib/countries/cache/locales/ak.json +1 -1
  17. data/lib/countries/cache/locales/am.json +1 -1
  18. data/lib/countries/cache/locales/an.json +1 -1
  19. data/lib/countries/cache/locales/ar.json +1 -1
  20. data/lib/countries/cache/locales/as.json +1 -1
  21. data/lib/countries/cache/locales/ay.json +1 -1
  22. data/lib/countries/cache/locales/az.json +1 -1
  23. data/lib/countries/cache/locales/ba.json +1 -1
  24. data/lib/countries/cache/locales/be.json +1 -1
  25. data/lib/countries/cache/locales/bg.json +1 -1
  26. data/lib/countries/cache/locales/bi.json +1 -1
  27. data/lib/countries/cache/locales/bn-in.json +1 -1
  28. data/lib/countries/cache/locales/bn.json +1 -1
  29. data/lib/countries/cache/locales/br.json +1 -1
  30. data/lib/countries/cache/locales/bs.json +1 -1
  31. data/lib/countries/cache/locales/ca.json +1 -1
  32. data/lib/countries/cache/locales/ce.json +1 -1
  33. data/lib/countries/cache/locales/ch.json +1 -1
  34. data/lib/countries/cache/locales/cs.json +1 -1
  35. data/lib/countries/cache/locales/cv.json +1 -1
  36. data/lib/countries/cache/locales/cy.json +1 -1
  37. data/lib/countries/cache/locales/da.json +1 -1
  38. data/lib/countries/cache/locales/de.json +1 -1
  39. data/lib/countries/cache/locales/dv.json +1 -1
  40. data/lib/countries/cache/locales/dz.json +1 -1
  41. data/lib/countries/cache/locales/ee.json +1 -1
  42. data/lib/countries/cache/locales/el.json +1 -1
  43. data/lib/countries/cache/locales/en.json +1 -1
  44. data/lib/countries/cache/locales/eo.json +1 -1
  45. data/lib/countries/cache/locales/es.json +1 -1
  46. data/lib/countries/cache/locales/et.json +1 -1
  47. data/lib/countries/cache/locales/eu.json +1 -1
  48. data/lib/countries/cache/locales/fa.json +1 -1
  49. data/lib/countries/cache/locales/ff.json +1 -1
  50. data/lib/countries/cache/locales/fi.json +1 -1
  51. data/lib/countries/cache/locales/fo.json +1 -1
  52. data/lib/countries/cache/locales/fr.json +1 -1
  53. data/lib/countries/cache/locales/fy.json +1 -1
  54. data/lib/countries/cache/locales/ga.json +1 -1
  55. data/lib/countries/cache/locales/gl.json +1 -1
  56. data/lib/countries/cache/locales/gn.json +1 -1
  57. data/lib/countries/cache/locales/gu.json +1 -1
  58. data/lib/countries/cache/locales/gv.json +1 -1
  59. data/lib/countries/cache/locales/ha.json +1 -1
  60. data/lib/countries/cache/locales/he.json +1 -1
  61. data/lib/countries/cache/locales/hi.json +1 -1
  62. data/lib/countries/cache/locales/hr.json +1 -1
  63. data/lib/countries/cache/locales/ht.json +1 -1
  64. data/lib/countries/cache/locales/hu.json +1 -1
  65. data/lib/countries/cache/locales/hy.json +1 -1
  66. data/lib/countries/cache/locales/ia.json +1 -1
  67. data/lib/countries/cache/locales/id.json +1 -1
  68. data/lib/countries/cache/locales/io.json +1 -1
  69. data/lib/countries/cache/locales/is.json +1 -1
  70. data/lib/countries/cache/locales/it.json +1 -1
  71. data/lib/countries/cache/locales/iu.json +1 -1
  72. data/lib/countries/cache/locales/ja.json +1 -1
  73. data/lib/countries/cache/locales/ka.json +1 -1
  74. data/lib/countries/cache/locales/ki.json +1 -1
  75. data/lib/countries/cache/locales/kk.json +1 -1
  76. data/lib/countries/cache/locales/kl.json +1 -1
  77. data/lib/countries/cache/locales/km.json +1 -1
  78. data/lib/countries/cache/locales/kn.json +1 -1
  79. data/lib/countries/cache/locales/ko.json +1 -1
  80. data/lib/countries/cache/locales/kv.json +1 -1
  81. data/lib/countries/cache/locales/kw.json +1 -1
  82. data/lib/countries/cache/locales/ky.json +1 -1
  83. data/lib/countries/cache/locales/lo.json +1 -1
  84. data/lib/countries/cache/locales/lt.json +1 -1
  85. data/lib/countries/cache/locales/lv.json +1 -1
  86. data/lib/countries/cache/locales/mi.json +1 -1
  87. data/lib/countries/cache/locales/mk.json +1 -1
  88. data/lib/countries/cache/locales/ml.json +1 -1
  89. data/lib/countries/cache/locales/mn.json +1 -1
  90. data/lib/countries/cache/locales/mr.json +1 -1
  91. data/lib/countries/cache/locales/ms.json +1 -1
  92. data/lib/countries/cache/locales/mt.json +1 -1
  93. data/lib/countries/cache/locales/my.json +1 -1
  94. data/lib/countries/cache/locales/na.json +1 -1
  95. data/lib/countries/cache/locales/nb.json +1 -1
  96. data/lib/countries/cache/locales/ne.json +1 -1
  97. data/lib/countries/cache/locales/nl.json +1 -1
  98. data/lib/countries/cache/locales/nn.json +1 -1
  99. data/lib/countries/cache/locales/nv.json +1 -1
  100. data/lib/countries/cache/locales/oc.json +1 -1
  101. data/lib/countries/cache/locales/or.json +1 -1
  102. data/lib/countries/cache/locales/pa.json +1 -1
  103. data/lib/countries/cache/locales/pi.json +1 -1
  104. data/lib/countries/cache/locales/pl.json +1 -1
  105. data/lib/countries/cache/locales/ps.json +1 -1
  106. data/lib/countries/cache/locales/pt-br.json +1 -1
  107. data/lib/countries/cache/locales/pt.json +1 -1
  108. data/lib/countries/cache/locales/ro.json +1 -1
  109. data/lib/countries/cache/locales/ru.json +1 -1
  110. data/lib/countries/cache/locales/rw.json +1 -1
  111. data/lib/countries/cache/locales/sc.json +1 -1
  112. data/lib/countries/cache/locales/sd.json +1 -1
  113. data/lib/countries/cache/locales/si.json +1 -1
  114. data/lib/countries/cache/locales/sk.json +1 -1
  115. data/lib/countries/cache/locales/sl.json +1 -1
  116. data/lib/countries/cache/locales/so.json +1 -1
  117. data/lib/countries/cache/locales/sq.json +1 -1
  118. data/lib/countries/cache/locales/sr.json +1 -1
  119. data/lib/countries/cache/locales/sv.json +1 -1
  120. data/lib/countries/cache/locales/sw.json +1 -1
  121. data/lib/countries/cache/locales/ta.json +1 -1
  122. data/lib/countries/cache/locales/te.json +1 -1
  123. data/lib/countries/cache/locales/tg.json +1 -1
  124. data/lib/countries/cache/locales/th.json +1 -1
  125. data/lib/countries/cache/locales/ti.json +1 -1
  126. data/lib/countries/cache/locales/tk.json +1 -1
  127. data/lib/countries/cache/locales/tl.json +1 -1
  128. data/lib/countries/cache/locales/tr.json +1 -1
  129. data/lib/countries/cache/locales/tt.json +1 -1
  130. data/lib/countries/cache/locales/ug.json +1 -1
  131. data/lib/countries/cache/locales/uk.json +1 -1
  132. data/lib/countries/cache/locales/ur.json +1 -1
  133. data/lib/countries/cache/locales/uz.json +1 -1
  134. data/lib/countries/cache/locales/ve.json +1 -1
  135. data/lib/countries/cache/locales/vi.json +1 -1
  136. data/lib/countries/cache/locales/wa.json +1 -1
  137. data/lib/countries/cache/locales/wo.json +1 -1
  138. data/lib/countries/cache/locales/xh.json +1 -1
  139. data/lib/countries/cache/locales/yo.json +1 -1
  140. data/lib/countries/cache/locales/zh-cn.json +1 -1
  141. data/lib/countries/cache/locales/zh-hk.json +1 -1
  142. data/lib/countries/cache/locales/zh-tw.json +1 -1
  143. data/lib/countries/cache/locales/zu.json +1 -1
  144. data/lib/countries/configuration.rb +2 -0
  145. data/lib/countries/country/class_methods.rb +20 -103
  146. data/lib/countries/country/currency_methods.rb +2 -0
  147. data/lib/countries/country/emoji.rb +2 -3
  148. data/lib/countries/country/finder_methods.rb +81 -0
  149. data/lib/countries/country.rb +32 -43
  150. data/lib/countries/data/countries/KN.yaml +0 -1
  151. data/lib/countries/data/subdivisions/AD.yaml +14 -7
  152. data/lib/countries/data/subdivisions/AE.yaml +14 -7
  153. data/lib/countries/data/subdivisions/AF.yaml +196 -201
  154. data/lib/countries/data/subdivisions/AG.yaml +16 -22
  155. data/lib/countries/data/subdivisions/AL.yaml +24 -12
  156. data/lib/countries/data/subdivisions/AM.yaml +22 -11
  157. data/lib/countries/data/subdivisions/AO.yaml +36 -18
  158. data/lib/countries/data/subdivisions/AR.yaml +48 -24
  159. data/lib/countries/data/subdivisions/AT.yaml +18 -9
  160. data/lib/countries/data/subdivisions/AU.yaml +16 -8
  161. data/lib/countries/data/subdivisions/AZ.yaml +434 -412
  162. data/lib/countries/data/subdivisions/BA.yaml +75 -223
  163. data/lib/countries/data/subdivisions/BB.yaml +22 -11
  164. data/lib/countries/data/subdivisions/BD.yaml +188 -116
  165. data/lib/countries/data/subdivisions/BE.yaml +174 -161
  166. data/lib/countries/data/subdivisions/BF.yaml +2918 -2860
  167. data/lib/countries/data/subdivisions/BG.yaml +56 -28
  168. data/lib/countries/data/subdivisions/BH.yaml +8 -21
  169. data/lib/countries/data/subdivisions/BI.yaml +176 -157
  170. data/lib/countries/data/subdivisions/BJ.yaml +24 -12
  171. data/lib/countries/data/subdivisions/BN.yaml +8 -4
  172. data/lib/countries/data/subdivisions/BO.yaml +18 -9
  173. data/lib/countries/data/subdivisions/BQ.yaml +6 -3
  174. data/lib/countries/data/subdivisions/BR.yaml +54 -27
  175. data/lib/countries/data/subdivisions/BS.yaml +575 -697
  176. data/lib/countries/data/subdivisions/BT.yaml +40 -20
  177. data/lib/countries/data/subdivisions/BW.yaml +337 -321
  178. data/lib/countries/data/subdivisions/BY.yaml +106 -116
  179. data/lib/countries/data/subdivisions/BZ.yaml +12 -6
  180. data/lib/countries/data/subdivisions/CA.yaml +26 -13
  181. data/lib/countries/data/subdivisions/CD.yaml +488 -525
  182. data/lib/countries/data/subdivisions/CF.yaml +34 -17
  183. data/lib/countries/data/subdivisions/CG.yaml +40 -28
  184. data/lib/countries/data/subdivisions/CH.yaml +52 -26
  185. data/lib/countries/data/subdivisions/CI.yaml +244 -516
  186. data/lib/countries/data/subdivisions/CL.yaml +81 -65
  187. data/lib/countries/data/subdivisions/CM.yaml +20 -10
  188. data/lib/countries/data/subdivisions/CN.yaml +2152 -2084
  189. data/lib/countries/data/subdivisions/CO.yaml +66 -33
  190. data/lib/countries/data/subdivisions/CR.yaml +14 -7
  191. data/lib/countries/data/subdivisions/CU.yaml +32 -16
  192. data/lib/countries/data/subdivisions/CV.yaml +427 -401
  193. data/lib/countries/data/subdivisions/CY.yaml +12 -6
  194. data/lib/countries/data/subdivisions/CZ.yaml +1116 -85
  195. data/lib/countries/data/subdivisions/DE.yaml +32 -16
  196. data/lib/countries/data/subdivisions/DJ.yaml +12 -6
  197. data/lib/countries/data/subdivisions/DK.yaml +25 -17
  198. data/lib/countries/data/subdivisions/DM.yaml +20 -10
  199. data/lib/countries/data/subdivisions/DO.yaml +84 -42
  200. data/lib/countries/data/subdivisions/DZ.yaml +96 -48
  201. data/lib/countries/data/subdivisions/EC.yaml +158 -134
  202. data/lib/countries/data/subdivisions/EE.yaml +501 -334
  203. data/lib/countries/data/subdivisions/EG.yaml +54 -27
  204. data/lib/countries/data/subdivisions/ER.yaml +12 -6
  205. data/lib/countries/data/subdivisions/ES.yaml +1459 -1390
  206. data/lib/countries/data/subdivisions/ET.yaml +22 -11
  207. data/lib/countries/data/subdivisions/FI.yaml +185 -1
  208. data/lib/countries/data/subdivisions/FJ.yaml +443 -424
  209. data/lib/countries/data/subdivisions/FM.yaml +8 -4
  210. data/lib/countries/data/subdivisions/FR.yaml +438 -275
  211. data/lib/countries/data/subdivisions/GA.yaml +18 -9
  212. data/lib/countries/data/subdivisions/GB.yaml +1185 -1708
  213. data/lib/countries/data/subdivisions/GD.yaml +14 -7
  214. data/lib/countries/data/subdivisions/GE.yaml +24 -12
  215. data/lib/countries/data/subdivisions/GH.yaml +114 -155
  216. data/lib/countries/data/subdivisions/GL.yaml +24 -79
  217. data/lib/countries/data/subdivisions/GM.yaml +12 -6
  218. data/lib/countries/data/subdivisions/GN.yaml +444 -403
  219. data/lib/countries/data/subdivisions/GQ.yaml +24 -13
  220. data/lib/countries/data/subdivisions/GR.yaml +114 -73
  221. data/lib/countries/data/subdivisions/GT.yaml +44 -22
  222. data/lib/countries/data/subdivisions/GW.yaml +69 -57
  223. data/lib/countries/data/subdivisions/GY.yaml +20 -10
  224. data/lib/countries/data/subdivisions/HN.yaml +36 -18
  225. data/lib/countries/data/subdivisions/HR.yaml +42 -21
  226. data/lib/countries/data/subdivisions/HT.yaml +73 -63
  227. data/lib/countries/data/subdivisions/HU.yaml +106 -63
  228. data/lib/countries/data/subdivisions/ID.yaml +229 -188
  229. data/lib/countries/data/subdivisions/IE.yaml +128 -97
  230. data/lib/countries/data/subdivisions/IL.yaml +12 -6
  231. data/lib/countries/data/subdivisions/IN.yaml +245 -396
  232. data/lib/countries/data/subdivisions/IQ.yaml +111 -91
  233. data/lib/countries/data/subdivisions/IR.yaml +1463 -1451
  234. data/lib/countries/data/subdivisions/IS.yaml +160 -25
  235. data/lib/countries/data/subdivisions/IT.yaml +8740 -8292
  236. data/lib/countries/data/subdivisions/JM.yaml +28 -14
  237. data/lib/countries/data/subdivisions/JO.yaml +24 -12
  238. data/lib/countries/data/subdivisions/JP.yaml +94 -47
  239. data/lib/countries/data/subdivisions/KE.yaml +95 -48
  240. data/lib/countries/data/subdivisions/KG.yaml +95 -86
  241. data/lib/countries/data/subdivisions/KH.yaml +64 -39
  242. data/lib/countries/data/subdivisions/KI.yaml +6 -3
  243. data/lib/countries/data/subdivisions/KM.yaml +6 -3
  244. data/lib/countries/data/subdivisions/KN.yaml +32 -16
  245. data/lib/countries/data/subdivisions/KP.yaml +24 -227
  246. data/lib/countries/data/subdivisions/KR.yaml +34 -17
  247. data/lib/countries/data/subdivisions/KW.yaml +12 -6
  248. data/lib/countries/data/subdivisions/KZ.yaml +47 -102
  249. data/lib/countries/data/subdivisions/LA.yaml +36 -34
  250. data/lib/countries/data/subdivisions/LB.yaml +71 -63
  251. data/lib/countries/data/subdivisions/LC.yaml +116 -106
  252. data/lib/countries/data/subdivisions/LI.yaml +22 -11
  253. data/lib/countries/data/subdivisions/LK.yaml +445 -411
  254. data/lib/countries/data/subdivisions/LR.yaml +146 -129
  255. data/lib/countries/data/subdivisions/LS.yaml +20 -10
  256. data/lib/countries/data/subdivisions/LT.yaml +1706 -1636
  257. data/lib/countries/data/subdivisions/LU.yaml +24 -12
  258. data/lib/countries/data/subdivisions/LV.yaml +1623 -1577
  259. data/lib/countries/data/subdivisions/LY.yaml +44 -22
  260. data/lib/countries/data/subdivisions/MA.yaml +810 -1589
  261. data/lib/countries/data/subdivisions/MC.yaml +261 -244
  262. data/lib/countries/data/subdivisions/MD.yaml +74 -79
  263. data/lib/countries/data/subdivisions/ME.yaml +217 -195
  264. data/lib/countries/data/subdivisions/MG.yaml +12 -6
  265. data/lib/countries/data/subdivisions/MH.yaml +167 -140
  266. data/lib/countries/data/subdivisions/MK.yaml +160 -80
  267. data/lib/countries/data/subdivisions/ML.yaml +48 -37
  268. data/lib/countries/data/subdivisions/MM.yaml +30 -15
  269. data/lib/countries/data/subdivisions/MN.yaml +44 -22
  270. data/lib/countries/data/subdivisions/MR.yaml +30 -34
  271. data/lib/countries/data/subdivisions/MT.yaml +136 -68
  272. data/lib/countries/data/subdivisions/MU.yaml +24 -262
  273. data/lib/countries/data/subdivisions/MV.yaml +161 -254
  274. data/lib/countries/data/subdivisions/MW.yaml +250 -219
  275. data/lib/countries/data/subdivisions/MX.yaml +67 -47
  276. data/lib/countries/data/subdivisions/MY.yaml +32 -16
  277. data/lib/countries/data/subdivisions/MZ.yaml +22 -11
  278. data/lib/countries/data/subdivisions/NA.yaml +58 -44
  279. data/lib/countries/data/subdivisions/NE.yaml +16 -8
  280. data/lib/countries/data/subdivisions/NG.yaml +74 -37
  281. data/lib/countries/data/subdivisions/NI.yaml +34 -17
  282. data/lib/countries/data/subdivisions/NL.yaml +303 -285
  283. data/lib/countries/data/subdivisions/NO.yaml +39 -17
  284. data/lib/countries/data/subdivisions/NP.yaml +302 -276
  285. data/lib/countries/data/subdivisions/NR.yaml +28 -14
  286. data/lib/countries/data/subdivisions/NZ.yaml +34 -17
  287. data/lib/countries/data/subdivisions/OM.yaml +260 -311
  288. data/lib/countries/data/subdivisions/PA.yaml +57 -44
  289. data/lib/countries/data/subdivisions/PE.yaml +107 -81
  290. data/lib/countries/data/subdivisions/PG.yaml +163 -158
  291. data/lib/countries/data/subdivisions/PH.yaml +5062 -4992
  292. data/lib/countries/data/subdivisions/PK.yaml +145 -235
  293. data/lib/countries/data/subdivisions/PL.yaml +51 -3
  294. data/lib/countries/data/subdivisions/PS.yaml +32 -16
  295. data/lib/countries/data/subdivisions/PT.yaml +53 -33
  296. data/lib/countries/data/subdivisions/PW.yaml +32 -16
  297. data/lib/countries/data/subdivisions/PY.yaml +36 -18
  298. data/lib/countries/data/subdivisions/QA.yaml +27 -78
  299. data/lib/countries/data/subdivisions/RO.yaml +84 -42
  300. data/lib/countries/data/subdivisions/RS.yaml +104 -72
  301. data/lib/countries/data/subdivisions/RU.yaml +166 -83
  302. data/lib/countries/data/subdivisions/RW.yaml +10 -5
  303. data/lib/countries/data/subdivisions/SA.yaml +26 -13
  304. data/lib/countries/data/subdivisions/SB.yaml +20 -10
  305. data/lib/countries/data/subdivisions/SC.yaml +54 -25
  306. data/lib/countries/data/subdivisions/SD.yaml +798 -780
  307. data/lib/countries/data/subdivisions/SE.yaml +42 -21
  308. data/lib/countries/data/subdivisions/SG.yaml +15 -10
  309. data/lib/countries/data/subdivisions/SH.yaml +21 -32
  310. data/lib/countries/data/subdivisions/SI.yaml +475 -263
  311. data/lib/countries/data/subdivisions/SK.yaml +16 -8
  312. data/lib/countries/data/subdivisions/SL.yaml +23 -18
  313. data/lib/countries/data/subdivisions/SM.yaml +18 -9
  314. data/lib/countries/data/subdivisions/SN.yaml +188 -174
  315. data/lib/countries/data/subdivisions/SO.yaml +36 -18
  316. data/lib/countries/data/subdivisions/SR.yaml +20 -10
  317. data/lib/countries/data/subdivisions/SS.yaml +20 -10
  318. data/lib/countries/data/subdivisions/ST.yaml +38 -52
  319. data/lib/countries/data/subdivisions/SV.yaml +28 -14
  320. data/lib/countries/data/subdivisions/SY.yaml +28 -14
  321. data/lib/countries/data/subdivisions/SZ.yaml +8 -4
  322. data/lib/countries/data/subdivisions/TD.yaml +312 -303
  323. data/lib/countries/data/subdivisions/TG.yaml +10 -5
  324. data/lib/countries/data/subdivisions/TH.yaml +211 -133
  325. data/lib/countries/data/subdivisions/TJ.yaml +161 -156
  326. data/lib/countries/data/subdivisions/TL.yaml +26 -13
  327. data/lib/countries/data/subdivisions/TM.yaml +12 -6
  328. data/lib/countries/data/subdivisions/TN.yaml +48 -24
  329. data/lib/countries/data/subdivisions/TO.yaml +10 -5
  330. data/lib/countries/data/subdivisions/TR.yaml +162 -81
  331. data/lib/countries/data/subdivisions/TT.yaml +128 -160
  332. data/lib/countries/data/subdivisions/TV.yaml +57 -63
  333. data/lib/countries/data/subdivisions/TW.yaml +143 -183
  334. data/lib/countries/data/subdivisions/TZ.yaml +62 -31
  335. data/lib/countries/data/subdivisions/UA.yaml +55 -28
  336. data/lib/countries/data/subdivisions/UG.yaml +4806 -4660
  337. data/lib/countries/data/subdivisions/UM.yaml +18 -9
  338. data/lib/countries/data/subdivisions/US.yaml +114 -57
  339. data/lib/countries/data/subdivisions/UY.yaml +99 -80
  340. data/lib/countries/data/subdivisions/UZ.yaml +28 -14
  341. data/lib/countries/data/subdivisions/VC.yaml +12 -6
  342. data/lib/countries/data/subdivisions/VE.yaml +50 -25
  343. data/lib/countries/data/subdivisions/VN.yaml +3576 -3513
  344. data/lib/countries/data/subdivisions/VU.yaml +12 -6
  345. data/lib/countries/data/subdivisions/WF.yaml +6 -3
  346. data/lib/countries/data/subdivisions/WS.yaml +22 -11
  347. data/lib/countries/data/subdivisions/YE.yaml +222 -200
  348. data/lib/countries/data/subdivisions/ZA.yaml +86 -100
  349. data/lib/countries/data/subdivisions/ZM.yaml +20 -10
  350. data/lib/countries/data/subdivisions/ZW.yaml +20 -10
  351. data/lib/countries/data/translations/countries-ab.yaml +254 -0
  352. data/lib/countries/data/translations/countries-af.yaml +254 -0
  353. data/lib/countries/data/translations/countries-ak.yaml +254 -0
  354. data/lib/countries/data/translations/countries-am.yaml +254 -0
  355. data/lib/countries/data/translations/countries-an.yaml +254 -0
  356. data/lib/countries/data/translations/countries-ar.yaml +254 -0
  357. data/lib/countries/data/translations/countries-as.yaml +254 -0
  358. data/lib/countries/data/translations/countries-ay.yaml +254 -0
  359. data/lib/countries/data/translations/countries-az.yaml +254 -0
  360. data/lib/countries/data/translations/countries-ba.yaml +254 -0
  361. data/lib/countries/data/translations/countries-be.yaml +254 -0
  362. data/lib/countries/data/translations/countries-bg.yaml +254 -0
  363. data/lib/countries/data/translations/countries-bi.yaml +254 -0
  364. data/lib/countries/data/translations/countries-bn.yaml +254 -0
  365. data/lib/countries/data/translations/countries-bn_IN.yaml +254 -0
  366. data/lib/countries/data/translations/countries-br.yaml +254 -0
  367. data/lib/countries/data/translations/countries-bs.yaml +254 -0
  368. data/lib/countries/data/translations/countries-ca.yaml +254 -0
  369. data/lib/countries/data/translations/countries-ce.yaml +254 -0
  370. data/lib/countries/data/translations/countries-ch.yaml +254 -0
  371. data/lib/countries/data/translations/countries-cs.yaml +254 -0
  372. data/lib/countries/data/translations/countries-cv.yaml +254 -0
  373. data/lib/countries/data/translations/countries-cy.yaml +254 -0
  374. data/lib/countries/data/translations/countries-da.yaml +254 -0
  375. data/lib/countries/data/translations/countries-de.yaml +254 -0
  376. data/lib/countries/data/translations/countries-dv.yaml +254 -0
  377. data/lib/countries/data/translations/countries-dz.yaml +254 -0
  378. data/lib/countries/data/translations/countries-ee.yaml +254 -0
  379. data/lib/countries/data/translations/countries-el.yaml +254 -0
  380. data/lib/countries/data/translations/countries-en.yaml +254 -0
  381. data/lib/countries/data/translations/countries-eo.yaml +254 -0
  382. data/lib/countries/data/translations/countries-es.yaml +254 -0
  383. data/lib/countries/data/translations/countries-et.yaml +254 -0
  384. data/lib/countries/data/translations/countries-eu.yaml +254 -0
  385. data/lib/countries/data/translations/countries-fa.yaml +254 -0
  386. data/lib/countries/data/translations/countries-ff.yaml +254 -0
  387. data/lib/countries/data/translations/countries-fi.yaml +254 -0
  388. data/lib/countries/data/translations/countries-fo.yaml +254 -0
  389. data/lib/countries/data/translations/countries-fr.yaml +254 -0
  390. data/lib/countries/data/translations/countries-fy.yaml +254 -0
  391. data/lib/countries/data/translations/countries-ga.yaml +254 -0
  392. data/lib/countries/data/translations/countries-gl.yaml +254 -0
  393. data/lib/countries/data/translations/countries-gn.yaml +254 -0
  394. data/lib/countries/data/translations/countries-gu.yaml +254 -0
  395. data/lib/countries/data/translations/countries-gv.yaml +254 -0
  396. data/lib/countries/data/translations/countries-ha.yaml +254 -0
  397. data/lib/countries/data/translations/countries-he.yaml +254 -0
  398. data/lib/countries/data/translations/countries-hi.yaml +254 -0
  399. data/lib/countries/data/translations/countries-hr.yaml +254 -0
  400. data/lib/countries/data/translations/countries-ht.yaml +254 -0
  401. data/lib/countries/data/translations/countries-hu.yaml +254 -0
  402. data/lib/countries/data/translations/countries-hy.yaml +254 -0
  403. data/lib/countries/data/translations/countries-ia.yaml +254 -0
  404. data/lib/countries/data/translations/countries-id.yaml +254 -0
  405. data/lib/countries/data/translations/countries-io.yaml +254 -0
  406. data/lib/countries/data/translations/countries-is.yaml +254 -0
  407. data/lib/countries/data/translations/countries-it.yaml +254 -0
  408. data/lib/countries/data/translations/countries-iu.yaml +254 -0
  409. data/lib/countries/data/translations/countries-ja.yaml +254 -0
  410. data/lib/countries/data/translations/countries-ka.yaml +254 -0
  411. data/lib/countries/data/translations/countries-ki.yaml +254 -0
  412. data/lib/countries/data/translations/countries-kk.yaml +254 -0
  413. data/lib/countries/data/translations/countries-kl.yaml +254 -0
  414. data/lib/countries/data/translations/countries-km.yaml +254 -0
  415. data/lib/countries/data/translations/countries-kn.yaml +254 -0
  416. data/lib/countries/data/translations/countries-ko.yaml +254 -0
  417. data/lib/countries/data/translations/countries-ku.yaml +254 -0
  418. data/lib/countries/data/translations/countries-kv.yaml +254 -0
  419. data/lib/countries/data/translations/countries-kw.yaml +254 -0
  420. data/lib/countries/data/translations/countries-ky.yaml +254 -0
  421. data/lib/countries/data/translations/countries-lo.yaml +254 -0
  422. data/lib/countries/data/translations/countries-lt.yaml +254 -0
  423. data/lib/countries/data/translations/countries-lv.yaml +254 -0
  424. data/lib/countries/data/translations/countries-mi.yaml +254 -0
  425. data/lib/countries/data/translations/countries-mk.yaml +254 -0
  426. data/lib/countries/data/translations/countries-ml.yaml +254 -0
  427. data/lib/countries/data/translations/countries-mn.yaml +254 -0
  428. data/lib/countries/data/translations/countries-mr.yaml +254 -0
  429. data/lib/countries/data/translations/countries-ms.yaml +254 -0
  430. data/lib/countries/data/translations/countries-mt.yaml +254 -0
  431. data/lib/countries/data/translations/countries-my.yaml +254 -0
  432. data/lib/countries/data/translations/countries-na.yaml +254 -0
  433. data/lib/countries/data/translations/countries-nb.yaml +254 -0
  434. data/lib/countries/data/translations/countries-ne.yaml +254 -0
  435. data/lib/countries/data/translations/countries-nl.yaml +254 -0
  436. data/lib/countries/data/translations/countries-nn.yaml +254 -0
  437. data/lib/countries/data/translations/countries-nv.yaml +254 -0
  438. data/lib/countries/data/translations/countries-oc.yaml +254 -0
  439. data/lib/countries/data/translations/countries-or.yaml +254 -0
  440. data/lib/countries/data/translations/countries-pa.yaml +254 -0
  441. data/lib/countries/data/translations/countries-pi.yaml +254 -0
  442. data/lib/countries/data/translations/countries-pl.yaml +254 -0
  443. data/lib/countries/data/translations/countries-ps.yaml +254 -0
  444. data/lib/countries/data/translations/countries-pt.yaml +254 -0
  445. data/lib/countries/data/translations/countries-pt_BR.yaml +254 -0
  446. data/lib/countries/data/translations/countries-ro.yaml +254 -0
  447. data/lib/countries/data/translations/countries-ru.yaml +254 -0
  448. data/lib/countries/data/translations/countries-rw.yaml +254 -0
  449. data/lib/countries/data/translations/countries-sc.yaml +254 -0
  450. data/lib/countries/data/translations/countries-sd.yaml +254 -0
  451. data/lib/countries/data/translations/countries-si.yaml +254 -0
  452. data/lib/countries/data/translations/countries-sk.yaml +254 -0
  453. data/lib/countries/data/translations/countries-sl.yaml +254 -0
  454. data/lib/countries/data/translations/countries-so.yaml +254 -0
  455. data/lib/countries/data/translations/countries-sq.yaml +254 -0
  456. data/lib/countries/data/translations/countries-sr.yaml +254 -0
  457. data/lib/countries/data/translations/countries-sv.yaml +254 -0
  458. data/lib/countries/data/translations/countries-sw.yaml +254 -0
  459. data/lib/countries/data/translations/countries-ta.yaml +254 -0
  460. data/lib/countries/data/translations/countries-te.yaml +254 -0
  461. data/lib/countries/data/translations/countries-tg.yaml +254 -0
  462. data/lib/countries/data/translations/countries-th.yaml +254 -0
  463. data/lib/countries/data/translations/countries-ti.yaml +254 -0
  464. data/lib/countries/data/translations/countries-tk.yaml +254 -0
  465. data/lib/countries/data/translations/countries-tl.yaml +254 -0
  466. data/lib/countries/data/translations/countries-tr.yaml +254 -0
  467. data/lib/countries/data/translations/countries-tt.yaml +254 -0
  468. data/lib/countries/data/translations/countries-ug.yaml +254 -0
  469. data/lib/countries/data/translations/countries-uk.yaml +254 -0
  470. data/lib/countries/data/translations/countries-ur.yaml +254 -0
  471. data/lib/countries/data/translations/countries-uz.yaml +254 -0
  472. data/lib/countries/data/translations/countries-ve.yaml +254 -0
  473. data/lib/countries/data/translations/countries-vi.yaml +254 -0
  474. data/lib/countries/data/translations/countries-wa.yaml +254 -0
  475. data/lib/countries/data/translations/countries-wo.yaml +254 -0
  476. data/lib/countries/data/translations/countries-xh.yaml +254 -0
  477. data/lib/countries/data/translations/countries-yo.yaml +254 -0
  478. data/lib/countries/data/translations/countries-zh_CN.yaml +254 -0
  479. data/lib/countries/data/translations/countries-zh_HK.yaml +254 -0
  480. data/lib/countries/data/translations/countries-zh_TW.yaml +254 -0
  481. data/lib/countries/data/translations/countries-zu.yaml +254 -0
  482. data/lib/countries/data.rb +45 -42
  483. data/lib/countries/global.rb +2 -0
  484. data/lib/countries/iso3166.rb +3 -1
  485. data/lib/countries/kwarg_struct.rb +2 -0
  486. data/lib/countries/mongoid.rb +2 -0
  487. data/lib/countries/sources/cldr/downloader.rb +8 -8
  488. data/lib/countries/sources/cldr/subdivision.rb +3 -0
  489. data/lib/countries/sources/cldr/subdivision_updater.rb +23 -17
  490. data/lib/countries/sources/local/cached_loader.rb +3 -0
  491. data/lib/countries/sources/local/subdivision.rb +5 -2
  492. data/lib/countries/sources.rb +2 -0
  493. data/lib/countries/structure.rb +1 -1
  494. data/lib/countries/subdivision.rb +21 -8
  495. data/lib/countries/tasks/geocoding.rake +15 -6
  496. data/lib/countries/tasks/postal_codes.rake +5 -3
  497. data/lib/countries/timezones.rb +5 -2
  498. data/lib/countries/translations.rb +2 -0
  499. data/lib/countries/version.rb +3 -1
  500. data/lib/countries.rb +2 -0
  501. data/spec/00_global_spec.rb +2 -0
  502. data/spec/configuration_spec.rb +11 -5
  503. data/spec/country_spec.rb +131 -38
  504. data/spec/data_spec.rb +85 -21
  505. data/spec/mongoid_spec.rb +2 -2
  506. data/spec/perf_spec.rb +16 -16
  507. data/spec/spec_helper.rb +2 -0
  508. data/spec/subdivision_spec.rb +6 -4
  509. data/spec/thread_safety_spec.rb +4 -3
  510. data/spec/timezone_spec.rb +2 -0
  511. metadata +146 -34
  512. data/lib/countries/cache/locales/zh.json +0 -1
  513. data/lib/countries/data/subdivisions/AI.yaml +0 -197
  514. data/lib/countries/data/subdivisions/BM.yaml +0 -155
  515. data/lib/countries/data/subdivisions/CK.yaml +0 -155
  516. data/lib/countries/data/subdivisions/EH.yaml +0 -80
  517. data/lib/countries/data/subdivisions/SJ.yaml +0 -29
  518. data/lib/countries/data/subdivisions/TK.yaml +0 -43
  519. data/lib/countries/data/translation_corrections.yaml +0 -51
  520. data/lib/countries/setup.rb +0 -18
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  '01':
3
3
  name: Aiwo
4
- code:
4
+ code: '01'
5
5
  unofficial_names: Aiwo
6
6
  geo:
7
7
  latitude: -0.5340012
@@ -60,9 +60,10 @@
60
60
  mk: Аиво
61
61
  'no': Aiwo
62
62
  comments:
63
+ type: district
63
64
  '02':
64
65
  name: Anabar
65
- code:
66
+ code: '02'
66
67
  unofficial_names: Anabar
67
68
  geo:
68
69
  latitude: -0.5133517
@@ -121,9 +122,10 @@
121
122
  mk: Анабар
122
123
  'no': Anabar
123
124
  comments:
125
+ type: district
124
126
  '03':
125
127
  name: Anetan
126
- code:
128
+ code: '03'
127
129
  unofficial_names: Anetan
128
130
  geo:
129
131
  latitude: -0.5064343
@@ -179,9 +181,10 @@
179
181
  mk: Анетан
180
182
  'no': Anetan
181
183
  comments:
184
+ type: district
182
185
  '04':
183
186
  name: Anibare
184
- code:
187
+ code: '04'
185
188
  unofficial_names: Anibare
186
189
  geo:
187
190
  latitude: -0.532915
@@ -237,9 +240,10 @@
237
240
  mk: Анибар
238
241
  'no': Anibare
239
242
  comments:
243
+ type: district
240
244
  '05':
241
245
  name: Baiti
242
- code:
246
+ code: '05'
243
247
  unofficial_names: Baiti
244
248
  geo:
245
249
  latitude: -0.5133158
@@ -295,9 +299,10 @@
295
299
  mk: Баити
296
300
  'no': Baiti
297
301
  comments:
302
+ type: district
298
303
  '06':
299
304
  name: Boe
300
- code:
305
+ code: '06'
301
306
  unofficial_names: Boe
302
307
  geo:
303
308
  latitude: -0.5414945
@@ -356,9 +361,10 @@
356
361
  mk: Бое
357
362
  'no': Boe
358
363
  comments:
364
+ type: district
359
365
  '07':
360
366
  name: Buada
361
- code:
367
+ code: '07'
362
368
  unofficial_names: Buada
363
369
  geo:
364
370
  latitude: -0.5328777
@@ -417,9 +423,10 @@
417
423
  mk: Буада
418
424
  'no': Buada
419
425
  comments:
426
+ type: district
420
427
  '08':
421
428
  name: Denigomodu
422
- code:
429
+ code: '08'
423
430
  unofficial_names:
424
431
  - Denigomodu
425
432
  geo:
@@ -480,9 +487,10 @@
480
487
  mk: Денигомоду (округ)
481
488
  'no': Denigomodu
482
489
  comments:
490
+ type: district
483
491
  '09':
484
492
  name: Ewa
485
- code:
493
+ code: '09'
486
494
  unofficial_names: Ewa
487
495
  geo:
488
496
  latitude: -0.5087241
@@ -537,9 +545,10 @@
537
545
  mk: Ева
538
546
  'no': Ewa
539
547
  comments:
548
+ type: district
540
549
  '10':
541
550
  name: Ijuw
542
- code:
551
+ code: '10'
543
552
  unofficial_names: Ijuw
544
553
  geo:
545
554
  latitude: -0.5202646000000001
@@ -595,9 +604,10 @@
595
604
  mk: Ијув
596
605
  'no': Ijuw
597
606
  comments:
607
+ type: district
598
608
  '11':
599
609
  name: Meneng
600
- code:
610
+ code: '11'
601
611
  unofficial_names: Meneng
602
612
  geo:
603
613
  latitude: -0.546724
@@ -655,9 +665,10 @@
655
665
  mk: Мененг
656
666
  'no': Meneng
657
667
  comments:
668
+ type: district
658
669
  '12':
659
670
  name: Nibok
660
- code:
671
+ code: '12'
661
672
  unofficial_names: Nibok
662
673
  geo:
663
674
  latitude: -0.5225124
@@ -714,9 +725,10 @@
714
725
  mk: Нибок
715
726
  'no': Nibok
716
727
  comments:
728
+ type: district
717
729
  '13':
718
730
  name: Uaboe
719
- code:
731
+ code: '13'
720
732
  unofficial_names: Uaboe
721
733
  geo:
722
734
  latitude: -0.5173398
@@ -772,9 +784,10 @@
772
784
  mk: Уабое
773
785
  'no': Uaboe
774
786
  comments:
787
+ type: district
775
788
  '14':
776
789
  name: Yaren
777
- code:
790
+ code: '14'
778
791
  unofficial_names: Yaren
779
792
  geo:
780
793
  latitude: -0.5466856999999999
@@ -853,3 +866,4 @@
853
866
  mk: Јарен
854
867
  'no': Yaren
855
868
  comments:
869
+ type: district
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  AUK:
3
3
  name: Auckland
4
- code:
4
+ code: AUK
5
5
  unofficial_names: Auckland
6
6
  geo:
7
7
  latitude: -36.8484597
@@ -61,9 +61,10 @@ AUK:
61
61
  mk: Окленд
62
62
  'no': Auckland
63
63
  comments:
64
+ type: region
64
65
  BOP:
65
66
  name: Bay of Plenty
66
- code:
67
+ code: BOP
67
68
  unofficial_names: Bay of Plenty
68
69
  geo:
69
70
  latitude: -37.6825027
@@ -120,9 +121,10 @@ BOP:
120
121
  mk: Залив Пленти
121
122
  'no': Bay of Plenty
122
123
  comments:
124
+ type: region
123
125
  CAN:
124
126
  name: Canterbury
125
- code:
127
+ code: CAN
126
128
  unofficial_names: Canterbury
127
129
  geo:
128
130
  latitude: -43.7542275
@@ -181,9 +183,10 @@ CAN:
181
183
  mk: Кантербери
182
184
  'no': Canterbury
183
185
  comments:
186
+ type: region
184
187
  CIT:
185
188
  name: Chatham Islands Territory
186
- code:
189
+ code: CIT
187
190
  unofficial_names:
188
191
  geo:
189
192
  latitude: -43.9120964
@@ -248,9 +251,10 @@ CIT:
248
251
  ccp: "\U00011107\U00011117\U0001111F\U00011134 \U00011103\U00011128\U0001110C\U00011134\U00011123\U00011133\U00011120\U0001111A\U00011133\U00011113\U00011134\U00011125\U00011134"
249
252
  'no': Chathamøyene
250
253
  comments:
254
+ type: special_island_authority
251
255
  GIS:
252
256
  name: Gisborne
253
- code:
257
+ code: GIS
254
258
  unofficial_names: Gisborne
255
259
  geo:
256
260
  latitude: -38.662334
@@ -305,9 +309,10 @@ GIS:
305
309
  mk: Гизборн
306
310
  'no': Gisborne
307
311
  comments:
312
+ type: region
308
313
  HKB:
309
314
  name: Hawke's Bay
310
- code:
315
+ code: HKB
311
316
  unofficial_names: Hawke's Bay
312
317
  geo:
313
318
  latitude: -39.7711616
@@ -363,9 +368,10 @@ HKB:
363
368
  mk: Хоков Залив
364
369
  'no': Hawke’s Bay
365
370
  comments:
371
+ type: region
366
372
  MBH:
367
373
  name: Marlborough
368
- code:
374
+ code: MBH
369
375
  unofficial_names: Marlborough
370
376
  geo:
371
377
  latitude: -41.57269
@@ -418,9 +424,10 @@ MBH:
418
424
  mk: Марлборо
419
425
  'no': Marlborough
420
426
  comments:
427
+ type: region
421
428
  MWT:
422
429
  name: Manawatu-Wanganui
423
- code:
430
+ code: MWT
424
431
  unofficial_names:
425
432
  - Wanganui-Manawatu
426
433
  geo:
@@ -477,9 +484,10 @@ MWT:
477
484
  mk: Манавату-Вангануи
478
485
  'no': Manawatu-Wanganui
479
486
  comments:
487
+ type: region
480
488
  NSN:
481
489
  name: Nelson
482
- code:
490
+ code: NSN
483
491
  unofficial_names: Nelson
484
492
  geo:
485
493
  latitude: -41.2706319
@@ -505,9 +513,10 @@ NSN:
505
513
  be: Нельсан
506
514
  mk: Нелсон
507
515
  comments:
516
+ type: region
508
517
  NTL:
509
518
  name: Northland
510
- code:
519
+ code: NTL
511
520
  unofficial_names: Northland
512
521
  geo:
513
522
  latitude: -35.5795461
@@ -567,9 +576,10 @@ NTL:
567
576
  mk: Нортленд
568
577
  'no': Northland
569
578
  comments:
579
+ type: region
570
580
  OTA:
571
581
  name: Otago
572
- code:
582
+ code: OTA
573
583
  unofficial_names: Otago
574
584
  geo:
575
585
  latitude: -44.8280041
@@ -628,9 +638,10 @@ OTA:
628
638
  mk: Отаго
629
639
  'no': Otago
630
640
  comments:
641
+ type: region
631
642
  STL:
632
643
  name: Southland
633
- code:
644
+ code: STL
634
645
  unofficial_names: Southland
635
646
  geo:
636
647
  latitude: -45.84891589999999
@@ -686,9 +697,10 @@ STL:
686
697
  mk: Саутленд
687
698
  'no': Southland
688
699
  comments:
700
+ type: region
689
701
  TAS:
690
702
  name: Tasman
691
- code:
703
+ code: TAS
692
704
  unofficial_names: Tasman
693
705
  geo:
694
706
  latitude: -41.2122123
@@ -742,9 +754,10 @@ TAS:
742
754
  mk: Тасман
743
755
  'no': Tasman
744
756
  comments:
757
+ type: region
745
758
  TKI:
746
759
  name: Taranaki
747
- code:
760
+ code: TKI
748
761
  unofficial_names: Taranaki
749
762
  geo:
750
763
  latitude: -39.3538149
@@ -800,9 +813,10 @@ TKI:
800
813
  mk: Таранаки
801
814
  'no': Taranaki
802
815
  comments:
816
+ type: region
803
817
  WGN:
804
818
  name: Wellington
805
- code:
819
+ code: WGN
806
820
  unofficial_names: Wellington
807
821
  geo:
808
822
  latitude: -41.2864603
@@ -858,9 +872,10 @@ WGN:
858
872
  mk: Велингтон
859
873
  'no': Wellington
860
874
  comments:
875
+ type: region
861
876
  WKO:
862
877
  name: Waikato
863
- code:
878
+ code: WKO
864
879
  unofficial_names: Waikato
865
880
  geo:
866
881
  latitude: -38.0594263
@@ -920,9 +935,10 @@ WKO:
920
935
  mk: Ваикато
921
936
  'no': Waikato
922
937
  comments:
938
+ type: region
923
939
  WTC:
924
940
  name: West Coast
925
- code:
941
+ code: WTC
926
942
  unofficial_names: West Coast
927
943
  geo:
928
944
  latitude: -42.4064185
@@ -977,3 +993,4 @@ WTC:
977
993
  mk: Западно Крајбрежје
978
994
  'no': West Coast
979
995
  comments:
996
+ type: region