countries 3.0.1 → 5.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (658) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/codeql-analysis.yml +70 -0
  3. data/.github/workflows/tests.yml +35 -0
  4. data/.gitignore +1 -0
  5. data/.rubocop.yml +40 -1
  6. data/.rubocop_todo.yml +8 -41
  7. data/CHANGELOG.md +218 -2
  8. data/Gemfile +9 -2
  9. data/LICENSE +3 -1
  10. data/README.markdown +120 -79
  11. data/Rakefile +21 -43
  12. data/bin/console +1 -0
  13. data/countries.gemspec +15 -8
  14. data/lib/countries/cache/countries.json +1 -1
  15. data/lib/countries/cache/locales/ab.json +1 -1
  16. data/lib/countries/cache/locales/af.json +1 -1
  17. data/lib/countries/cache/locales/ak.json +1 -1
  18. data/lib/countries/cache/locales/am.json +1 -1
  19. data/lib/countries/cache/locales/an.json +1 -1
  20. data/lib/countries/cache/locales/ar.json +1 -1
  21. data/lib/countries/cache/locales/as.json +1 -1
  22. data/lib/countries/cache/locales/ay.json +1 -1
  23. data/lib/countries/cache/locales/az.json +1 -1
  24. data/lib/countries/cache/locales/ba.json +1 -1
  25. data/lib/countries/cache/locales/be.json +1 -1
  26. data/lib/countries/cache/locales/bg.json +1 -1
  27. data/lib/countries/cache/locales/bi.json +1 -1
  28. data/lib/countries/cache/locales/bn-in.json +1 -1
  29. data/lib/countries/cache/locales/bn.json +1 -1
  30. data/lib/countries/cache/locales/br.json +1 -1
  31. data/lib/countries/cache/locales/bs.json +1 -1
  32. data/lib/countries/cache/locales/ca.json +1 -1
  33. data/lib/countries/cache/locales/ce.json +1 -1
  34. data/lib/countries/cache/locales/ch.json +1 -1
  35. data/lib/countries/cache/locales/cs.json +1 -1
  36. data/lib/countries/cache/locales/cv.json +1 -1
  37. data/lib/countries/cache/locales/cy.json +1 -1
  38. data/lib/countries/cache/locales/da.json +1 -1
  39. data/lib/countries/cache/locales/de.json +1 -1
  40. data/lib/countries/cache/locales/dv.json +1 -1
  41. data/lib/countries/cache/locales/dz.json +1 -1
  42. data/lib/countries/cache/locales/ee.json +1 -1
  43. data/lib/countries/cache/locales/el.json +1 -1
  44. data/lib/countries/cache/locales/en.json +1 -1
  45. data/lib/countries/cache/locales/eo.json +1 -1
  46. data/lib/countries/cache/locales/es.json +1 -1
  47. data/lib/countries/cache/locales/et.json +1 -1
  48. data/lib/countries/cache/locales/eu.json +1 -1
  49. data/lib/countries/cache/locales/fa.json +1 -1
  50. data/lib/countries/cache/locales/ff.json +1 -1
  51. data/lib/countries/cache/locales/fi.json +1 -1
  52. data/lib/countries/cache/locales/fo.json +1 -1
  53. data/lib/countries/cache/locales/fr.json +1 -1
  54. data/lib/countries/cache/locales/fy.json +1 -1
  55. data/lib/countries/cache/locales/ga.json +1 -1
  56. data/lib/countries/cache/locales/gl.json +1 -1
  57. data/lib/countries/cache/locales/gn.json +1 -1
  58. data/lib/countries/cache/locales/gu.json +1 -1
  59. data/lib/countries/cache/locales/gv.json +1 -1
  60. data/lib/countries/cache/locales/ha.json +1 -1
  61. data/lib/countries/cache/locales/he.json +1 -1
  62. data/lib/countries/cache/locales/hi.json +1 -1
  63. data/lib/countries/cache/locales/hr.json +1 -1
  64. data/lib/countries/cache/locales/ht.json +1 -1
  65. data/lib/countries/cache/locales/hu.json +1 -1
  66. data/lib/countries/cache/locales/hy.json +1 -1
  67. data/lib/countries/cache/locales/ia.json +1 -1
  68. data/lib/countries/cache/locales/id.json +1 -1
  69. data/lib/countries/cache/locales/io.json +1 -1
  70. data/lib/countries/cache/locales/is.json +1 -1
  71. data/lib/countries/cache/locales/it.json +1 -1
  72. data/lib/countries/cache/locales/iu.json +1 -1
  73. data/lib/countries/cache/locales/ja.json +1 -1
  74. data/lib/countries/cache/locales/ka.json +1 -1
  75. data/lib/countries/cache/locales/ki.json +1 -1
  76. data/lib/countries/cache/locales/kk.json +1 -1
  77. data/lib/countries/cache/locales/kl.json +1 -1
  78. data/lib/countries/cache/locales/km.json +1 -1
  79. data/lib/countries/cache/locales/kn.json +1 -1
  80. data/lib/countries/cache/locales/ko.json +1 -1
  81. data/lib/countries/cache/locales/ku.json +1 -1
  82. data/lib/countries/cache/locales/kv.json +1 -1
  83. data/lib/countries/cache/locales/kw.json +1 -1
  84. data/lib/countries/cache/locales/ky.json +1 -1
  85. data/lib/countries/cache/locales/lo.json +1 -1
  86. data/lib/countries/cache/locales/lt.json +1 -1
  87. data/lib/countries/cache/locales/lv.json +1 -1
  88. data/lib/countries/cache/locales/mi.json +1 -1
  89. data/lib/countries/cache/locales/mk.json +1 -1
  90. data/lib/countries/cache/locales/ml.json +1 -1
  91. data/lib/countries/cache/locales/mn.json +1 -1
  92. data/lib/countries/cache/locales/mr.json +1 -1
  93. data/lib/countries/cache/locales/ms.json +1 -1
  94. data/lib/countries/cache/locales/mt.json +1 -1
  95. data/lib/countries/cache/locales/my.json +1 -1
  96. data/lib/countries/cache/locales/na.json +1 -1
  97. data/lib/countries/cache/locales/nb.json +1 -1
  98. data/lib/countries/cache/locales/ne.json +1 -1
  99. data/lib/countries/cache/locales/nl.json +1 -1
  100. data/lib/countries/cache/locales/nn.json +1 -1
  101. data/lib/countries/cache/locales/nv.json +1 -1
  102. data/lib/countries/cache/locales/oc.json +1 -1
  103. data/lib/countries/cache/locales/or.json +1 -1
  104. data/lib/countries/cache/locales/pa.json +1 -1
  105. data/lib/countries/cache/locales/pi.json +1 -1
  106. data/lib/countries/cache/locales/pl.json +1 -1
  107. data/lib/countries/cache/locales/ps.json +1 -1
  108. data/lib/countries/cache/locales/pt-br.json +1 -1
  109. data/lib/countries/cache/locales/pt.json +1 -1
  110. data/lib/countries/cache/locales/ro.json +1 -1
  111. data/lib/countries/cache/locales/ru.json +1 -1
  112. data/lib/countries/cache/locales/rw.json +1 -1
  113. data/lib/countries/cache/locales/sc.json +1 -1
  114. data/lib/countries/cache/locales/sd.json +1 -1
  115. data/lib/countries/cache/locales/si.json +1 -1
  116. data/lib/countries/cache/locales/sk.json +1 -1
  117. data/lib/countries/cache/locales/sl.json +1 -1
  118. data/lib/countries/cache/locales/so.json +1 -1
  119. data/lib/countries/cache/locales/sq.json +1 -1
  120. data/lib/countries/cache/locales/sr.json +1 -1
  121. data/lib/countries/cache/locales/sv.json +1 -1
  122. data/lib/countries/cache/locales/sw.json +1 -1
  123. data/lib/countries/cache/locales/ta.json +1 -1
  124. data/lib/countries/cache/locales/te.json +1 -1
  125. data/lib/countries/cache/locales/tg.json +1 -1
  126. data/lib/countries/cache/locales/th.json +1 -1
  127. data/lib/countries/cache/locales/ti.json +1 -1
  128. data/lib/countries/cache/locales/tk.json +1 -1
  129. data/lib/countries/cache/locales/tl.json +1 -1
  130. data/lib/countries/cache/locales/tr.json +1 -1
  131. data/lib/countries/cache/locales/tt.json +1 -1
  132. data/lib/countries/cache/locales/ug.json +1 -1
  133. data/lib/countries/cache/locales/uk.json +1 -1
  134. data/lib/countries/cache/locales/ur.json +1 -1
  135. data/lib/countries/cache/locales/uz.json +1 -1
  136. data/lib/countries/cache/locales/ve.json +1 -1
  137. data/lib/countries/cache/locales/vi.json +1 -1
  138. data/lib/countries/cache/locales/wa.json +1 -1
  139. data/lib/countries/cache/locales/wo.json +1 -1
  140. data/lib/countries/cache/locales/xh.json +1 -1
  141. data/lib/countries/cache/locales/yo.json +1 -1
  142. data/lib/countries/cache/locales/zh-cn.json +1 -1
  143. data/lib/countries/cache/locales/zh-hk.json +1 -1
  144. data/lib/countries/cache/locales/zh-tw.json +1 -1
  145. data/lib/countries/cache/locales/zh.json +1 -1
  146. data/lib/countries/cache/locales/zu.json +1 -1
  147. data/lib/countries/configuration.rb +15 -0
  148. data/lib/countries/country/class_methods.rb +25 -83
  149. data/lib/countries/country/currency_methods.rb +6 -1
  150. data/lib/countries/country/emoji.rb +5 -3
  151. data/lib/countries/country/finder_methods.rb +81 -0
  152. data/lib/countries/country.rb +115 -7
  153. data/lib/countries/data/countries/AD.yaml +28 -28
  154. data/lib/countries/data/countries/AE.yaml +32 -33
  155. data/lib/countries/data/countries/AF.yaml +32 -32
  156. data/lib/countries/data/countries/AG.yaml +29 -30
  157. data/lib/countries/data/countries/AI.yaml +27 -27
  158. data/lib/countries/data/countries/AL.yaml +29 -29
  159. data/lib/countries/data/countries/AM.yaml +30 -30
  160. data/lib/countries/data/countries/AO.yaml +27 -28
  161. data/lib/countries/data/countries/AQ.yaml +26 -27
  162. data/lib/countries/data/countries/AR.yaml +30 -30
  163. data/lib/countries/data/countries/AS.yaml +31 -31
  164. data/lib/countries/data/countries/AT.yaml +36 -36
  165. data/lib/countries/data/countries/AU.yaml +33 -33
  166. data/lib/countries/data/countries/AW.yaml +25 -26
  167. data/lib/countries/data/countries/AX.yaml +27 -27
  168. data/lib/countries/data/countries/AZ.yaml +30 -30
  169. data/lib/countries/data/countries/BA.yaml +32 -32
  170. data/lib/countries/data/countries/BB.yaml +28 -28
  171. data/lib/countries/data/countries/BD.yaml +28 -28
  172. data/lib/countries/data/countries/BE.yaml +41 -41
  173. data/lib/countries/data/countries/BF.yaml +29 -30
  174. data/lib/countries/data/countries/BG.yaml +36 -36
  175. data/lib/countries/data/countries/BH.yaml +29 -29
  176. data/lib/countries/data/countries/BI.yaml +29 -30
  177. data/lib/countries/data/countries/BJ.yaml +27 -28
  178. data/lib/countries/data/countries/BL.yaml +25 -25
  179. data/lib/countries/data/countries/BM.yaml +29 -29
  180. data/lib/countries/data/countries/BN.yaml +26 -26
  181. data/lib/countries/data/countries/BO.yaml +31 -32
  182. data/lib/countries/data/countries/BQ.yaml +28 -29
  183. data/lib/countries/data/countries/BR.yaml +35 -35
  184. data/lib/countries/data/countries/BS.yaml +27 -28
  185. data/lib/countries/data/countries/BT.yaml +28 -28
  186. data/lib/countries/data/countries/BV.yaml +26 -27
  187. data/lib/countries/data/countries/BW.yaml +29 -30
  188. data/lib/countries/data/countries/BY.yaml +30 -30
  189. data/lib/countries/data/countries/BZ.yaml +28 -29
  190. data/lib/countries/data/countries/CA.yaml +30 -30
  191. data/lib/countries/data/countries/CC.yaml +29 -29
  192. data/lib/countries/data/countries/CD.yaml +35 -36
  193. data/lib/countries/data/countries/CF.yaml +29 -30
  194. data/lib/countries/data/countries/CG.yaml +29 -30
  195. data/lib/countries/data/countries/CH.yaml +40 -40
  196. data/lib/countries/data/countries/CI.yaml +27 -28
  197. data/lib/countries/data/countries/CK.yaml +27 -28
  198. data/lib/countries/data/countries/CL.yaml +33 -28
  199. data/lib/countries/data/countries/CM.yaml +29 -30
  200. data/lib/countries/data/countries/CN.yaml +28 -28
  201. data/lib/countries/data/countries/CO.yaml +28 -28
  202. data/lib/countries/data/countries/CR.yaml +28 -28
  203. data/lib/countries/data/countries/CU.yaml +27 -27
  204. data/lib/countries/data/countries/CV.yaml +28 -28
  205. data/lib/countries/data/countries/CW.yaml +25 -26
  206. data/lib/countries/data/countries/CX.yaml +30 -30
  207. data/lib/countries/data/countries/CY.yaml +41 -41
  208. data/lib/countries/data/countries/CZ.yaml +38 -38
  209. data/lib/countries/data/countries/DE.yaml +36 -36
  210. data/lib/countries/data/countries/DJ.yaml +29 -30
  211. data/lib/countries/data/countries/DK.yaml +35 -35
  212. data/lib/countries/data/countries/DM.yaml +26 -27
  213. data/lib/countries/data/countries/DO.yaml +28 -28
  214. data/lib/countries/data/countries/DZ.yaml +28 -28
  215. data/lib/countries/data/countries/EC.yaml +28 -28
  216. data/lib/countries/data/countries/EE.yaml +36 -36
  217. data/lib/countries/data/countries/EG.yaml +28 -28
  218. data/lib/countries/data/countries/EH.yaml +30 -30
  219. data/lib/countries/data/countries/ER.yaml +31 -32
  220. data/lib/countries/data/countries/ES.yaml +36 -36
  221. data/lib/countries/data/countries/ET.yaml +28 -28
  222. data/lib/countries/data/countries/FI.yaml +39 -39
  223. data/lib/countries/data/countries/FJ.yaml +33 -34
  224. data/lib/countries/data/countries/FK.yaml +29 -29
  225. data/lib/countries/data/countries/FM.yaml +28 -28
  226. data/lib/countries/data/countries/FO.yaml +28 -28
  227. data/lib/countries/data/countries/FR.yaml +37 -37
  228. data/lib/countries/data/countries/GA.yaml +27 -28
  229. data/lib/countries/data/countries/GB.yaml +41 -36
  230. data/lib/countries/data/countries/GD.yaml +26 -27
  231. data/lib/countries/data/countries/GE.yaml +28 -28
  232. data/lib/countries/data/countries/GF.yaml +29 -29
  233. data/lib/countries/data/countries/GG.yaml +31 -31
  234. data/lib/countries/data/countries/GH.yaml +27 -28
  235. data/lib/countries/data/countries/GI.yaml +28 -28
  236. data/lib/countries/data/countries/GL.yaml +29 -29
  237. data/lib/countries/data/countries/GM.yaml +27 -28
  238. data/lib/countries/data/countries/GN.yaml +30 -30
  239. data/lib/countries/data/countries/GP.yaml +27 -27
  240. data/lib/countries/data/countries/GQ.yaml +29 -30
  241. data/lib/countries/data/countries/GR.yaml +37 -37
  242. data/lib/countries/data/countries/GS.yaml +29 -29
  243. data/lib/countries/data/countries/GT.yaml +28 -28
  244. data/lib/countries/data/countries/GU.yaml +31 -31
  245. data/lib/countries/data/countries/GW.yaml +28 -28
  246. data/lib/countries/data/countries/GY.yaml +26 -27
  247. data/lib/countries/data/countries/HK.yaml +29 -30
  248. data/lib/countries/data/countries/HM.yaml +28 -28
  249. data/lib/countries/data/countries/HN.yaml +28 -28
  250. data/lib/countries/data/countries/HR.yaml +37 -37
  251. data/lib/countries/data/countries/HT.yaml +29 -29
  252. data/lib/countries/data/countries/HU.yaml +37 -37
  253. data/lib/countries/data/countries/ID.yaml +28 -28
  254. data/lib/countries/data/countries/IE.yaml +39 -39
  255. data/lib/countries/data/countries/IL.yaml +35 -30
  256. data/lib/countries/data/countries/IM.yaml +31 -31
  257. data/lib/countries/data/countries/IN.yaml +30 -30
  258. data/lib/countries/data/countries/IO.yaml +28 -28
  259. data/lib/countries/data/countries/IQ.yaml +28 -28
  260. data/lib/countries/data/countries/IR.yaml +28 -28
  261. data/lib/countries/data/countries/IS.yaml +35 -35
  262. data/lib/countries/data/countries/IT.yaml +36 -36
  263. data/lib/countries/data/countries/JE.yaml +26 -26
  264. data/lib/countries/data/countries/JM.yaml +28 -29
  265. data/lib/countries/data/countries/JO.yaml +28 -28
  266. data/lib/countries/data/countries/JP.yaml +28 -28
  267. data/lib/countries/data/countries/KE.yaml +30 -30
  268. data/lib/countries/data/countries/KG.yaml +30 -30
  269. data/lib/countries/data/countries/KH.yaml +28 -28
  270. data/lib/countries/data/countries/KI.yaml +27 -28
  271. data/lib/countries/data/countries/KM.yaml +29 -30
  272. data/lib/countries/data/countries/KN.yaml +28 -29
  273. data/lib/countries/data/countries/KP.yaml +28 -28
  274. data/lib/countries/data/countries/KR.yaml +28 -28
  275. data/lib/countries/data/countries/KW.yaml +28 -28
  276. data/lib/countries/data/countries/KY.yaml +29 -29
  277. data/lib/countries/data/countries/KZ.yaml +30 -30
  278. data/lib/countries/data/countries/LA.yaml +28 -28
  279. data/lib/countries/data/countries/LB.yaml +30 -30
  280. data/lib/countries/data/countries/LC.yaml +28 -29
  281. data/lib/countries/data/countries/LI.yaml +27 -27
  282. data/lib/countries/data/countries/LK.yaml +28 -28
  283. data/lib/countries/data/countries/LR.yaml +28 -28
  284. data/lib/countries/data/countries/LS.yaml +28 -28
  285. data/lib/countries/data/countries/LT.yaml +37 -37
  286. data/lib/countries/data/countries/LU.yaml +39 -39
  287. data/lib/countries/data/countries/LV.yaml +42 -36
  288. data/lib/countries/data/countries/LY.yaml +27 -28
  289. data/lib/countries/data/countries/MA.yaml +28 -28
  290. data/lib/countries/data/countries/MC.yaml +28 -28
  291. data/lib/countries/data/countries/MD.yaml +28 -28
  292. data/lib/countries/data/countries/ME.yaml +34 -34
  293. data/lib/countries/data/countries/MF.yaml +29 -29
  294. data/lib/countries/data/countries/MG.yaml +30 -30
  295. data/lib/countries/data/countries/MH.yaml +30 -30
  296. data/lib/countries/data/countries/MK.yaml +28 -28
  297. data/lib/countries/data/countries/ML.yaml +27 -28
  298. data/lib/countries/data/countries/MM.yaml +27 -27
  299. data/lib/countries/data/countries/MN.yaml +28 -28
  300. data/lib/countries/data/countries/MO.yaml +28 -29
  301. data/lib/countries/data/countries/MP.yaml +31 -31
  302. data/lib/countries/data/countries/MQ.yaml +27 -27
  303. data/lib/countries/data/countries/MR.yaml +29 -30
  304. data/lib/countries/data/countries/MS.yaml +26 -27
  305. data/lib/countries/data/countries/MT.yaml +38 -38
  306. data/lib/countries/data/countries/MU.yaml +28 -28
  307. data/lib/countries/data/countries/MV.yaml +28 -28
  308. data/lib/countries/data/countries/MW.yaml +29 -30
  309. data/lib/countries/data/countries/MX.yaml +33 -33
  310. data/lib/countries/data/countries/MY.yaml +30 -30
  311. data/lib/countries/data/countries/MZ.yaml +28 -28
  312. data/lib/countries/data/countries/NA.yaml +30 -30
  313. data/lib/countries/data/countries/NC.yaml +29 -29
  314. data/lib/countries/data/countries/NE.yaml +28 -28
  315. data/lib/countries/data/countries/NF.yaml +29 -29
  316. data/lib/countries/data/countries/NG.yaml +34 -34
  317. data/lib/countries/data/countries/NI.yaml +28 -28
  318. data/lib/countries/data/countries/NL.yaml +36 -36
  319. data/lib/countries/data/countries/NO.yaml +36 -36
  320. data/lib/countries/data/countries/NP.yaml +32 -32
  321. data/lib/countries/data/countries/NR.yaml +27 -28
  322. data/lib/countries/data/countries/NU.yaml +25 -26
  323. data/lib/countries/data/countries/NZ.yaml +35 -35
  324. data/lib/countries/data/countries/OM.yaml +28 -28
  325. data/lib/countries/data/countries/PA.yaml +27 -28
  326. data/lib/countries/data/countries/PE.yaml +28 -28
  327. data/lib/countries/data/countries/PF.yaml +29 -29
  328. data/lib/countries/data/countries/PG.yaml +28 -28
  329. data/lib/countries/data/countries/PH.yaml +35 -35
  330. data/lib/countries/data/countries/PK.yaml +30 -30
  331. data/lib/countries/data/countries/PL.yaml +37 -37
  332. data/lib/countries/data/countries/PM.yaml +29 -29
  333. data/lib/countries/data/countries/PN.yaml +27 -27
  334. data/lib/countries/data/countries/PR.yaml +30 -30
  335. data/lib/countries/data/countries/PS.yaml +31 -32
  336. data/lib/countries/data/countries/PT.yaml +34 -34
  337. data/lib/countries/data/countries/PW.yaml +26 -26
  338. data/lib/countries/data/countries/PY.yaml +30 -30
  339. data/lib/countries/data/countries/QA.yaml +27 -28
  340. data/lib/countries/data/countries/RE.yaml +28 -28
  341. data/lib/countries/data/countries/RO.yaml +37 -37
  342. data/lib/countries/data/countries/RS.yaml +28 -28
  343. data/lib/countries/data/countries/RU.yaml +28 -28
  344. data/lib/countries/data/countries/RW.yaml +31 -32
  345. data/lib/countries/data/countries/SA.yaml +33 -28
  346. data/lib/countries/data/countries/SB.yaml +28 -29
  347. data/lib/countries/data/countries/SC.yaml +29 -30
  348. data/lib/countries/data/countries/SD.yaml +30 -30
  349. data/lib/countries/data/countries/SE.yaml +37 -37
  350. data/lib/countries/data/countries/SG.yaml +32 -32
  351. data/lib/countries/data/countries/SH.yaml +29 -29
  352. data/lib/countries/data/countries/SI.yaml +36 -36
  353. data/lib/countries/data/countries/SJ.yaml +29 -29
  354. data/lib/countries/data/countries/SK.yaml +36 -36
  355. data/lib/countries/data/countries/SL.yaml +27 -28
  356. data/lib/countries/data/countries/SM.yaml +28 -28
  357. data/lib/countries/data/countries/SN.yaml +28 -28
  358. data/lib/countries/data/countries/SO.yaml +30 -30
  359. data/lib/countries/data/countries/SR.yaml +26 -27
  360. data/lib/countries/data/countries/SS.yaml +29 -30
  361. data/lib/countries/data/countries/ST.yaml +27 -28
  362. data/lib/countries/data/countries/SV.yaml +27 -27
  363. data/lib/countries/data/countries/SX.yaml +28 -29
  364. data/lib/countries/data/countries/SY.yaml +27 -28
  365. data/lib/countries/data/countries/SZ.yaml +30 -30
  366. data/lib/countries/data/countries/TC.yaml +30 -30
  367. data/lib/countries/data/countries/TD.yaml +29 -30
  368. data/lib/countries/data/countries/TF.yaml +30 -31
  369. data/lib/countries/data/countries/TG.yaml +27 -28
  370. data/lib/countries/data/countries/TH.yaml +34 -33
  371. data/lib/countries/data/countries/TJ.yaml +30 -30
  372. data/lib/countries/data/countries/TK.yaml +27 -28
  373. data/lib/countries/data/countries/TL.yaml +27 -28
  374. data/lib/countries/data/countries/TM.yaml +30 -30
  375. data/lib/countries/data/countries/TN.yaml +30 -30
  376. data/lib/countries/data/countries/TO.yaml +29 -30
  377. data/lib/countries/data/countries/TR.yaml +28 -28
  378. data/lib/countries/data/countries/TT.yaml +28 -29
  379. data/lib/countries/data/countries/TV.yaml +27 -28
  380. data/lib/countries/data/countries/TW.yaml +28 -28
  381. data/lib/countries/data/countries/TZ.yaml +30 -30
  382. data/lib/countries/data/countries/UA.yaml +34 -34
  383. data/lib/countries/data/countries/UG.yaml +29 -30
  384. data/lib/countries/data/countries/UM.yaml +29 -29
  385. data/lib/countries/data/countries/US.yaml +29 -28
  386. data/lib/countries/data/countries/UY.yaml +28 -28
  387. data/lib/countries/data/countries/UZ.yaml +30 -30
  388. data/lib/countries/data/countries/VA.yaml +31 -31
  389. data/lib/countries/data/countries/VC.yaml +29 -29
  390. data/lib/countries/data/countries/VE.yaml +28 -28
  391. data/lib/countries/data/countries/VG.yaml +30 -30
  392. data/lib/countries/data/countries/VI.yaml +28 -28
  393. data/lib/countries/data/countries/VN.yaml +34 -28
  394. data/lib/countries/data/countries/VU.yaml +31 -32
  395. data/lib/countries/data/countries/WF.yaml +29 -29
  396. data/lib/countries/data/countries/WS.yaml +29 -30
  397. data/lib/countries/data/countries/YE.yaml +27 -28
  398. data/lib/countries/data/countries/YT.yaml +26 -26
  399. data/lib/countries/data/countries/ZA.yaml +40 -40
  400. data/lib/countries/data/countries/ZM.yaml +28 -28
  401. data/lib/countries/data/countries/ZW.yaml +31 -32
  402. data/lib/countries/data/subdivisions/AD.yaml +35 -28
  403. data/lib/countries/data/subdivisions/AE.yaml +154 -63
  404. data/lib/countries/data/subdivisions/AF.yaml +605 -300
  405. data/lib/countries/data/subdivisions/AG.yaml +149 -67
  406. data/lib/countries/data/subdivisions/AI.yaml +57 -43
  407. data/lib/countries/data/subdivisions/AL.yaml +252 -468
  408. data/lib/countries/data/subdivisions/AM.yaml +236 -88
  409. data/lib/countries/data/subdivisions/AO.yaml +344 -144
  410. data/lib/countries/data/subdivisions/AR.yaml +450 -187
  411. data/lib/countries/data/subdivisions/AT.yaml +202 -72
  412. data/lib/countries/data/subdivisions/AU.yaml +212 -64
  413. data/lib/countries/data/subdivisions/AZ.yaml +1550 -592
  414. data/lib/countries/data/subdivisions/BA.yaml +189 -16
  415. data/lib/countries/data/subdivisions/BB.yaml +190 -88
  416. data/lib/countries/data/subdivisions/BD.yaml +1192 -519
  417. data/lib/countries/data/subdivisions/BE.yaml +278 -88
  418. data/lib/countries/data/subdivisions/BF.yaml +993 -366
  419. data/lib/countries/data/subdivisions/BG.yaml +600 -219
  420. data/lib/countries/data/subdivisions/BH.yaml +72 -35
  421. data/lib/countries/data/subdivisions/BI.yaml +298 -123
  422. data/lib/countries/data/subdivisions/BJ.yaml +226 -96
  423. data/lib/countries/data/subdivisions/BM.yaml +44 -33
  424. data/lib/countries/data/subdivisions/BN.yaml +63 -32
  425. data/lib/countries/data/subdivisions/BO.yaml +157 -72
  426. data/lib/countries/data/subdivisions/BQ.yaml +63 -24
  427. data/lib/countries/data/subdivisions/BR.yaml +689 -216
  428. data/lib/countries/data/subdivisions/BS.yaml +625 -108
  429. data/lib/countries/data/subdivisions/BT.yaml +346 -160
  430. data/lib/countries/data/subdivisions/BW.yaml +294 -72
  431. data/lib/countries/data/subdivisions/BY.yaml +140 -51
  432. data/lib/countries/data/subdivisions/BZ.yaml +97 -48
  433. data/lib/countries/data/subdivisions/CA.yaml +358 -105
  434. data/lib/countries/data/subdivisions/CD.yaml +451 -68
  435. data/lib/countries/data/subdivisions/CF.yaml +291 -136
  436. data/lib/countries/data/subdivisions/CG.yaml +217 -88
  437. data/lib/countries/data/subdivisions/CH.yaml +593 -208
  438. data/lib/countries/data/subdivisions/CI.yaml +431 -66
  439. data/lib/countries/data/subdivisions/CK.yaml +44 -33
  440. data/lib/countries/data/subdivisions/CL.yaml +262 -132
  441. data/lib/countries/data/subdivisions/CM.yaml +190 -80
  442. data/lib/countries/data/subdivisions/CN.yaml +618 -46
  443. data/lib/countries/data/subdivisions/CO.yaml +643 -264
  444. data/lib/countries/data/subdivisions/CR.yaml +119 -56
  445. data/lib/countries/data/subdivisions/CU.yaml +268 -128
  446. data/lib/countries/data/subdivisions/CV.yaml +414 -126
  447. data/lib/countries/data/subdivisions/CY.yaml +102 -48
  448. data/lib/countries/data/subdivisions/CZ.yaml +1035 -1349
  449. data/lib/countries/data/subdivisions/DE.yaml +484 -144
  450. data/lib/countries/data/subdivisions/DJ.yaml +110 -48
  451. data/lib/countries/data/subdivisions/DK.yaml +110 -241
  452. data/lib/countries/data/subdivisions/DM.yaml +159 -80
  453. data/lib/countries/data/subdivisions/DO.yaml +660 -248
  454. data/lib/countries/data/subdivisions/DZ.yaml +809 -384
  455. data/lib/countries/data/subdivisions/EC.yaml +391 -192
  456. data/lib/countries/data/subdivisions/EE.yaml +653 -146
  457. data/lib/countries/data/subdivisions/EG.yaml +472 -216
  458. data/lib/countries/data/subdivisions/EH.yaml +20 -12
  459. data/lib/countries/data/subdivisions/ER.yaml +109 -48
  460. data/lib/countries/data/subdivisions/ES.yaml +1738 -435
  461. data/lib/countries/data/subdivisions/ET.yaml +207 -88
  462. data/lib/countries/data/subdivisions/FI.yaml +111 -124
  463. data/lib/countries/data/subdivisions/FJ.yaml +314 -40
  464. data/lib/countries/data/subdivisions/FM.yaml +63 -32
  465. data/lib/countries/data/subdivisions/FR.yaml +2826 -1280
  466. data/lib/countries/data/subdivisions/GA.yaml +159 -72
  467. data/lib/countries/data/subdivisions/GB.yaml +4980 -1771
  468. data/lib/countries/data/subdivisions/GD.yaml +114 -56
  469. data/lib/countries/data/subdivisions/GE.yaml +238 -96
  470. data/lib/countries/data/subdivisions/GH.yaml +266 -79
  471. data/lib/countries/data/subdivisions/GL.yaml +89 -0
  472. data/lib/countries/data/subdivisions/GM.yaml +124 -48
  473. data/lib/countries/data/subdivisions/GN.yaml +711 -274
  474. data/lib/countries/data/subdivisions/GQ.yaml +144 -72
  475. data/lib/countries/data/subdivisions/GR.yaml +297 -739
  476. data/lib/countries/data/subdivisions/GT.yaml +351 -176
  477. data/lib/countries/data/subdivisions/GW.yaml +192 -72
  478. data/lib/countries/data/subdivisions/GY.yaml +163 -80
  479. data/lib/countries/data/subdivisions/HN.yaml +274 -144
  480. data/lib/countries/data/subdivisions/HR.yaml +429 -168
  481. data/lib/countries/data/subdivisions/HT.yaml +179 -72
  482. data/lib/countries/data/subdivisions/HU.yaml +855 -403
  483. data/lib/countries/data/subdivisions/ID.yaml +2377 -1859
  484. data/lib/countries/data/subdivisions/IE.yaml +831 -440
  485. data/lib/countries/data/subdivisions/IL.yaml +114 -48
  486. data/lib/countries/data/subdivisions/IN.yaml +1006 -298
  487. data/lib/countries/data/subdivisions/IQ.yaml +316 -139
  488. data/lib/countries/data/subdivisions/IR.yaml +597 -239
  489. data/lib/countries/data/subdivisions/IS.yaml +445 -67
  490. data/lib/countries/data/subdivisions/IT.yaml +3435 -2211
  491. data/lib/countries/data/subdivisions/JM.yaml +243 -112
  492. data/lib/countries/data/subdivisions/JO.yaml +193 -96
  493. data/lib/countries/data/subdivisions/JP.yaml +950 -376
  494. data/lib/countries/data/subdivisions/KE.yaml +928 -273
  495. data/lib/countries/data/subdivisions/KG.yaml +188 -64
  496. data/lib/countries/data/subdivisions/KH.yaml +437 -192
  497. data/lib/countries/data/subdivisions/KI.yaml +57 -24
  498. data/lib/countries/data/subdivisions/KM.yaml +49 -24
  499. data/lib/countries/data/subdivisions/KN.yaml +308 -112
  500. data/lib/countries/data/subdivisions/KP.yaml +365 -57
  501. data/lib/countries/data/subdivisions/KR.yaml +393 -128
  502. data/lib/countries/data/subdivisions/KW.yaml +87 -48
  503. data/lib/countries/data/subdivisions/KZ.yaml +362 -135
  504. data/lib/countries/data/subdivisions/LA.yaml +300 -145
  505. data/lib/countries/data/subdivisions/LB.yaml +134 -48
  506. data/lib/countries/data/subdivisions/LC.yaml +166 -0
  507. data/lib/countries/data/subdivisions/LI.yaml +186 -88
  508. data/lib/countries/data/subdivisions/LK.yaml +544 -200
  509. data/lib/countries/data/subdivisions/LR.yaml +252 -110
  510. data/lib/countries/data/subdivisions/LS.yaml +149 -80
  511. data/lib/countries/data/subdivisions/LT.yaml +1042 -80
  512. data/lib/countries/data/subdivisions/LU.yaml +280 -146
  513. data/lib/countries/data/subdivisions/LV.yaml +766 -3582
  514. data/lib/countries/data/subdivisions/LY.yaml +339 -162
  515. data/lib/countries/data/subdivisions/MA.yaml +1443 -484
  516. data/lib/countries/data/subdivisions/MC.yaml +250 -0
  517. data/lib/countries/data/subdivisions/MD.yaml +1103 -558
  518. data/lib/countries/data/subdivisions/ME.yaml +425 -168
  519. data/lib/countries/data/subdivisions/MG.yaml +93 -48
  520. data/lib/countries/data/subdivisions/MH.yaml +422 -199
  521. data/lib/countries/data/subdivisions/MK.yaml +3556 -3147
  522. data/lib/countries/data/subdivisions/ML.yaml +187 -71
  523. data/lib/countries/data/subdivisions/MM.yaml +287 -112
  524. data/lib/countries/data/subdivisions/MN.yaml +421 -176
  525. data/lib/countries/data/subdivisions/MR.yaml +245 -99
  526. data/lib/countries/data/subdivisions/MT.yaml +1059 -544
  527. data/lib/countries/data/subdivisions/MU.yaml +317 -131
  528. data/lib/countries/data/subdivisions/MV.yaml +457 -163
  529. data/lib/countries/data/subdivisions/MW.yaml +537 -216
  530. data/lib/countries/data/subdivisions/MX.yaml +709 -256
  531. data/lib/countries/data/subdivisions/MY.yaml +336 -128
  532. data/lib/countries/data/subdivisions/MZ.yaml +191 -83
  533. data/lib/countries/data/subdivisions/NA.yaml +220 -107
  534. data/lib/countries/data/subdivisions/NE.yaml +170 -64
  535. data/lib/countries/data/subdivisions/NG.yaml +870 -296
  536. data/lib/countries/data/subdivisions/NI.yaml +260 -136
  537. data/lib/countries/data/subdivisions/NL.yaml +381 -96
  538. data/lib/countries/data/subdivisions/NO.yaml +633 -1095
  539. data/lib/countries/data/subdivisions/NP.yaml +383 -112
  540. data/lib/countries/data/subdivisions/NR.yaml +260 -112
  541. data/lib/countries/data/subdivisions/NZ.yaml +340 -197
  542. data/lib/countries/data/subdivisions/OM.yaml +202 -52
  543. data/lib/countries/data/subdivisions/PA.yaml +203 -99
  544. data/lib/countries/data/subdivisions/PE.yaml +418 -208
  545. data/lib/countries/data/subdivisions/PG.yaml +381 -155
  546. data/lib/countries/data/subdivisions/PH.yaml +1855 -662
  547. data/lib/countries/data/subdivisions/PK.yaml +185 -54
  548. data/lib/countries/data/subdivisions/PL.yaml +83 -32
  549. data/lib/countries/data/subdivisions/PS.yaml +257 -0
  550. data/lib/countries/data/subdivisions/PT.yaml +355 -173
  551. data/lib/countries/data/subdivisions/PW.yaml +269 -128
  552. data/lib/countries/data/subdivisions/PY.yaml +321 -144
  553. data/lib/countries/data/subdivisions/QA.yaml +168 -65
  554. data/lib/countries/data/subdivisions/RO.yaml +729 -336
  555. data/lib/countries/data/subdivisions/RS.yaml +589 -240
  556. data/lib/countries/data/subdivisions/RU.yaml +1875 -665
  557. data/lib/countries/data/subdivisions/RW.yaml +102 -40
  558. data/lib/countries/data/subdivisions/SA.yaml +234 -104
  559. data/lib/countries/data/subdivisions/SB.yaml +169 -80
  560. data/lib/countries/data/subdivisions/SC.yaml +464 -184
  561. data/lib/countries/data/subdivisions/SD.yaml +163 -22
  562. data/lib/countries/data/subdivisions/SE.yaml +435 -237
  563. data/lib/countries/data/subdivisions/SG.yaml +71 -49
  564. data/lib/countries/data/subdivisions/SH.yaml +67 -14
  565. data/lib/countries/data/subdivisions/SI.yaml +3570 -1549
  566. data/lib/countries/data/subdivisions/SJ.yaml +8 -6
  567. data/lib/countries/data/subdivisions/SK.yaml +129 -64
  568. data/lib/countries/data/subdivisions/SL.yaml +80 -31
  569. data/lib/countries/data/subdivisions/SM.yaml +159 -72
  570. data/lib/countries/data/subdivisions/SN.yaml +233 -88
  571. data/lib/countries/data/subdivisions/SO.yaml +311 -144
  572. data/lib/countries/data/subdivisions/SR.yaml +158 -80
  573. data/lib/countries/data/subdivisions/SS.yaml +196 -0
  574. data/lib/countries/data/subdivisions/ST.yaml +55 -16
  575. data/lib/countries/data/subdivisions/SV.yaml +231 -112
  576. data/lib/countries/data/subdivisions/SY.yaml +220 -112
  577. data/lib/countries/data/subdivisions/SZ.yaml +65 -32
  578. data/lib/countries/data/subdivisions/TD.yaml +409 -139
  579. data/lib/countries/data/subdivisions/TG.yaml +75 -40
  580. data/lib/countries/data/subdivisions/TH.yaml +1451 -616
  581. data/lib/countries/data/subdivisions/TJ.yaml +100 -24
  582. data/lib/countries/data/subdivisions/TK.yaml +12 -9
  583. data/lib/countries/data/subdivisions/TL.yaml +209 -104
  584. data/lib/countries/data/subdivisions/TM.yaml +116 -40
  585. data/lib/countries/data/subdivisions/TN.yaml +412 -192
  586. data/lib/countries/data/subdivisions/TO.yaml +75 -40
  587. data/lib/countries/data/subdivisions/TR.yaml +1817 -648
  588. data/lib/countries/data/subdivisions/TT.yaml +296 -113
  589. data/lib/countries/data/subdivisions/TV.yaml +133 -59
  590. data/lib/countries/data/subdivisions/TW.yaml +467 -164
  591. data/lib/countries/data/subdivisions/TZ.yaml +661 -208
  592. data/lib/countries/data/subdivisions/UA.yaml +505 -216
  593. data/lib/countries/data/subdivisions/UG.yaml +2269 -640
  594. data/lib/countries/data/subdivisions/UM.yaml +207 -72
  595. data/lib/countries/data/subdivisions/US.yaml +1635 -483
  596. data/lib/countries/data/subdivisions/UY.yaml +367 -152
  597. data/lib/countries/data/subdivisions/UZ.yaml +289 -113
  598. data/lib/countries/data/subdivisions/VC.yaml +101 -48
  599. data/lib/countries/data/subdivisions/VE.yaml +456 -200
  600. data/lib/countries/data/subdivisions/VN.yaml +3664 -2996
  601. data/lib/countries/data/subdivisions/VU.yaml +98 -48
  602. data/lib/countries/data/subdivisions/WF.yaml +63 -0
  603. data/lib/countries/data/subdivisions/WS.yaml +200 -88
  604. data/lib/countries/data/subdivisions/YE.yaml +375 -152
  605. data/lib/countries/data/subdivisions/ZA.yaml +238 -72
  606. data/lib/countries/data/subdivisions/ZM.yaml +157 -72
  607. data/lib/countries/data/subdivisions/ZW.yaml +152 -73
  608. data/lib/countries/data/translation_corrections.yaml +24 -7
  609. data/lib/countries/data.rb +71 -41
  610. data/lib/countries/global.rb +15 -3
  611. data/lib/countries/iso3166.rb +3 -0
  612. data/lib/countries/kwarg_struct.rb +2 -0
  613. data/lib/countries/mongoid.rb +5 -0
  614. data/lib/countries/sources/cldr/downloader.rb +16 -14
  615. data/lib/countries/sources/cldr/subdivision.rb +4 -0
  616. data/lib/countries/sources/cldr/subdivision_updater.rb +24 -17
  617. data/lib/countries/sources/local/cached_loader.rb +5 -0
  618. data/lib/countries/sources/local/subdivision.rb +6 -2
  619. data/lib/countries/sources.rb +2 -0
  620. data/lib/countries/structure.rb +4 -6
  621. data/lib/countries/subdivision.rb +2 -0
  622. data/lib/countries/tasks/geocoding.rake +21 -19
  623. data/lib/countries/tasks/postal_codes.rake +50 -0
  624. data/lib/countries/timezones.rb +9 -4
  625. data/lib/countries/translations.rb +5 -4
  626. data/lib/countries/version.rb +3 -1
  627. data/lib/countries.rb +2 -1
  628. data/spec/00_global_spec.rb +2 -0
  629. data/spec/configuration_spec.rb +11 -5
  630. data/spec/country_spec.rb +232 -69
  631. data/spec/data_spec.rb +35 -29
  632. data/spec/mongoid_spec.rb +2 -2
  633. data/spec/perf_spec.rb +16 -16
  634. data/spec/spec_helper.rb +2 -0
  635. data/spec/subdivision_spec.rb +6 -4
  636. data/spec/thread_safety_spec.rb +47 -0
  637. data/spec/timezone_spec.rb +2 -0
  638. metadata +31 -52
  639. data/.travis.yml +0 -15
  640. data/lib/countries/data/subdivisions/AS.yaml +0 -66
  641. data/lib/countries/data/subdivisions/AX.yaml +0 -40
  642. data/lib/countries/data/subdivisions/FO.yaml +0 -79
  643. data/lib/countries/data/subdivisions/GG.yaml +0 -144
  644. data/lib/countries/data/subdivisions/GU.yaml +0 -248
  645. data/lib/countries/data/subdivisions/HK.yaml +0 -235
  646. data/lib/countries/data/subdivisions/IM.yaml +0 -313
  647. data/lib/countries/data/subdivisions/JE.yaml +0 -157
  648. data/lib/countries/data/subdivisions/KY.yaml +0 -73
  649. data/lib/countries/data/subdivisions/MP.yaml +0 -53
  650. data/lib/countries/data/subdivisions/MS.yaml +0 -40
  651. data/lib/countries/data/subdivisions/NC.yaml +0 -40
  652. data/lib/countries/data/subdivisions/PF.yaml +0 -66
  653. data/lib/countries/data/subdivisions/PM.yaml +0 -27
  654. data/lib/countries/data/subdivisions/PR.yaml +0 -1015
  655. data/lib/countries/data/subdivisions/TF.yaml +0 -49
  656. data/lib/countries/data/subdivisions/VI.yaml +0 -40
  657. data/lib/countries/data/subdivisions/YT.yaml +0 -222
  658. data/lib/countries/setup.rb +0 -18
data/spec/data_spec.rb CHANGED
@@ -1,4 +1,5 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
+
2
3
  require 'spec_helper'
3
4
  require 'benchmark'
4
5
 
@@ -10,13 +11,13 @@ describe ISO3166::Data do
10
11
 
11
12
  it 'can load selective locales' do
12
13
  # ISO3166::Data.update_cache
13
- ISO3166.configuration.locales = [:es, :de, :en]
14
+ ISO3166.configuration.locales = %i[es de en]
14
15
  data = ISO3166::Data.new('US').call
15
16
  expect(data['translated_names'].size).to eq 3
16
17
  end
17
18
 
18
19
  it 'can load selective locales and reload efficiently' do
19
- ISO3166.configuration.locales = [:es, :de, :en]
20
+ ISO3166.configuration.locales = %i[es de en]
20
21
  data = ISO3166::Data.new('US').call
21
22
  expect(data['translations']).to eq('de' => 'Vereinigte Staaten', 'es' => 'Estados Unidos', 'en' => 'United States')
22
23
  expect(data['translated_names'].sort).to eq ['Vereinigte Staaten', 'Estados Unidos', 'United States'].sort
@@ -35,7 +36,7 @@ describe ISO3166::Data do
35
36
 
36
37
  it 'locales will load prior to return results' do
37
38
  # require 'memory_profiler'
38
- ISO3166.configuration.locales = [:es, :de, :en]
39
+ ISO3166.configuration.locales = %i[es de en]
39
40
  # report = MemoryProfiler.report do
40
41
  ISO3166::Data.update_cache
41
42
  # end
@@ -44,7 +45,12 @@ describe ISO3166::Data do
44
45
  ISO3166::Data.update_cache
45
46
 
46
47
  ISO3166.configure do |config|
47
- config.locales = [:af, :am, :ar, :as, :az, :be, :bg, :bn, :br, :bs, :ca, :cs, :cy, :da, :de, :dz, :el, :en, :eo, :es, :et, :eu, :fa, :fi, :fo, :fr, :ga, :gl, :gu, :he, :hi, :hr, :hu, :hy, :ia, :id, :is, :it, :ja, :ka, :kk, :km, :kn, :ko, :ku, :lt, :lv, :mi, :mk, :ml, :mn, :mr, :ms, :mt, :nb, :ne, :nl, :nn, :oc, :or, :pa, :pl, :ps, :pt, :ro, :ru, :rw, :si, :sk, :sl, :so, :sq, :sr, :sv, :sw, :ta, :te, :th, :ti, :tk, :tl, :tr, :tt, :ug, :uk, :ve, :vi, :wa, :wo, :xh, :zh, :zu]
48
+ config.locales = %i[af am ar as az be bg bn br bs ca cs cy da de dz el en
49
+ eo es et eu fa fi fo fr ga gl gu he hi hr hu hy ia id
50
+ is it ja ka kk km kn ko ku lt lv mi mk ml mn mr ms mt
51
+ nb ne nl nn oc or pa pl ps pt ro ru rw si sk sl so sq
52
+ sr sv sw ta te th ti tk tl tr tt ug uk ve vi wa wo xh
53
+ zh zu]
48
54
  end
49
55
  # puts Benchmark.measure {ISO3166::Data.update_cache}
50
56
 
@@ -61,32 +67,32 @@ describe ISO3166::Data do
61
67
 
62
68
  it 'locales will load prior and be cached' do
63
69
  ISO3166.reset
64
- ISO3166.configuration.locales = [:es, :de, :en]
65
- expect(ISO3166::Data.send(:locales_to_load)).to eql(%w(es de en))
70
+ ISO3166.configuration.locales = %i[es de en]
71
+ expect(ISO3166::Data.send(:locales_to_load)).to eql(%w[es de en])
66
72
  ISO3166::Data.update_cache
67
- ISO3166.configuration.locales = [:es, :de, :en]
73
+ ISO3166.configuration.locales = %i[es de en]
68
74
  expect(ISO3166::Data.send(:locales_to_load)).to eql([])
69
75
  end
70
76
 
71
77
  it 'locales will load prior and be cached' do
72
78
  ISO3166.reset
73
- ISO3166.configuration.locales = [:es, :de, :en]
79
+ ISO3166.configuration.locales = %i[es de en]
74
80
  expect(ISO3166::Data.send(:locales_to_remove)).to eql([])
75
81
  expect(ISO3166::Country.new('DE').translation('de')).to eq 'Deutschland'
76
82
  ISO3166::Data.update_cache
77
- ISO3166.configuration.locales = [:es, :en]
83
+ ISO3166.configuration.locales = %i[es en]
78
84
  expect(ISO3166::Data.send(:locales_to_remove)).to eql(['de'])
79
85
  expect(ISO3166::Country.new('DE').translation('de')).to eq nil
80
86
  end
81
87
 
82
88
  describe '#load_cache' do
83
89
  it 'will return an empty hash for an unsupported locale' do
84
- file_array = %w(locales unsupported.json)
90
+ file_array = %w[locales unsupported.json]
85
91
  expect(ISO3166::Data.send(:load_cache, file_array)).to eql({})
86
92
  end
87
93
 
88
94
  it 'will return json for a supported locale' do
89
- file_array = %w(locales en.json)
95
+ file_array = %w[locales en.json]
90
96
  expect(ISO3166::Data.send(:load_cache, file_array)).not_to be_empty
91
97
  end
92
98
  end
@@ -95,10 +101,10 @@ describe ISO3166::Data do
95
101
  before do
96
102
  ISO3166::Data.register(
97
103
  alpha2: 'TW',
98
- name: 'NEW Taiwan',
104
+ iso_short_name: 'NEW Taiwan',
99
105
  subdivisions: {
100
- CHA: {name: 'New Changhua'},
101
- CYI: {name: 'New Municipality'}
106
+ CHA: { name: 'New Changhua' },
107
+ CYI: { name: 'New Municipality' }
102
108
  },
103
109
  translations: {
104
110
  'en' => 'NEW Taiwan',
@@ -112,12 +118,12 @@ describe ISO3166::Data do
112
118
  it 'can be done' do
113
119
  data = ISO3166::Data.new('TW').call
114
120
  ISO3166.configuration.locales = [:es, :de, :de]
115
- expect(data['name']).to eq 'NEW Taiwan'
116
- expect(subject.name).to eq 'NEW Taiwan'
121
+ expect(data['iso_short_name']).to eq 'NEW Taiwan'
122
+ expect(subject.iso_short_name).to eq 'NEW Taiwan'
117
123
  expect(subject.translations).to eq('en' => 'NEW Taiwan',
118
124
  'de' => 'NEW Taiwan')
119
- expect(subject.subdivisions).to eq(CHA: ISO3166::Subdivision.new({name: 'New Changhua'}),
120
- CYI: ISO3166::Subdivision.new({name: 'New Municipality'}))
125
+ expect(subject.subdivisions).to eq('CHA' => ISO3166::Subdivision.new({ name: 'New Changhua', code: 'CHA' }),
126
+ 'CYI' => ISO3166::Subdivision.new({ name: 'New Municipality', code: 'CYI' }))
121
127
  end
122
128
  end
123
129
 
@@ -125,10 +131,10 @@ describe ISO3166::Data do
125
131
  before do
126
132
  ISO3166::Data.register(
127
133
  alpha2: 'LOL',
128
- name: 'Happy Country',
134
+ iso_short_name: 'Happy Country',
129
135
  subdivisions: {
130
- LOL1: {name: 'Happy sub1'},
131
- LOL2: {name: 'Happy sub2'}
136
+ LOL1: { name: 'Happy sub1' },
137
+ LOL2: { name: 'Happy sub2' }
132
138
  },
133
139
  translations: {
134
140
  'en' => 'Happy Country',
@@ -141,17 +147,17 @@ describe ISO3166::Data do
141
147
 
142
148
  it 'can be done' do
143
149
  data = ISO3166::Data.new('LOL').call
144
- expect(data['name']).to eq 'Happy Country'
145
- expect(subject.name).to eq 'Happy Country'
146
- expect(subject.subdivisions).to eq(LOL1: ISO3166::Subdivision.new({name: 'Happy sub1'}),
147
- LOL2: ISO3166::Subdivision.new({name: 'Happy sub2'}))
150
+ expect(data['iso_short_name']).to eq 'Happy Country'
151
+ expect(subject.iso_short_name).to eq 'Happy Country'
152
+ expect(subject.subdivisions).to eq('LOL1' => ISO3166::Subdivision.new({name: 'Happy sub1', code: 'LOL1'}),
153
+ 'LOL2' => ISO3166::Subdivision.new({name: 'Happy sub2', code: 'LOL2'}))
148
154
  end
149
155
 
150
156
  it 'detect a stale cache' do
151
- ISO3166::Data.register(alpha2: 'SAD', name: 'Sad Country')
157
+ ISO3166::Data.register(alpha2: 'SAD', iso_short_name: 'Sad Country')
152
158
  data = ISO3166::Data.new('SAD').call
153
- expect(data['name']).to eq 'Sad Country'
154
- expect(ISO3166::Country.new('SAD').name).to eq 'Sad Country'
159
+ expect(data['iso_short_name']).to eq 'Sad Country'
160
+ expect(ISO3166::Country.new('SAD').iso_short_name).to eq 'Sad Country'
155
161
  ISO3166::Data.unregister('SAD')
156
162
  end
157
163
 
data/spec/mongoid_spec.rb CHANGED
@@ -1,7 +1,7 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'spec_helper'
4
- require File.expand_path('../../lib/countries/mongoid', __FILE__)
4
+ require File.expand_path('../lib/countries/mongoid', __dir__)
5
5
 
6
6
  describe 'Mongoid support' do
7
7
  let(:britain) { ISO3166::Country.new('GB') }
data/spec/perf_spec.rb CHANGED
@@ -1,18 +1,18 @@
1
- # encoding: utf-8
2
- require 'spec_helper'
1
+ # frozen_string_literal: true
3
2
 
4
- describe ISO3166::Data, perf: true, order: :defined do
3
+ require 'spec_helper'
5
4
 
6
- ALL_LOCALES = [
7
- :af, :am, :ar, :as, :az, :be, :bg, :bn, :br, :bs, :ca, :cs, :cy, :da, :de,
8
- :dz, :el, :en, :eo, :es, :et, :eu, :fa, :fi, :fo, :fr, :ga, :gl, :gu, :he,
9
- :hi, :hr, :hu, :hy, :ia, :id, :is, :it, :ja, :ka, :kk, :km, :kn, :ko, :ku,
10
- :lt, :lv, :mi, :mk, :ml, :mn, :mr, :ms, :mt, :nb, :ne, :nl, :nn, :oc, :or,
11
- :pa, :pl, :ps, :pt, :ro, :ru, :rw, :si, :sk, :sl, :so, :sq, :sr, :sv, :sw,
12
- :ta, :te, :th, :ti, :tk, :tl, :tr, :tt, :ug, :uk, :ve, :vi, :wa, :wo, :xh,
13
- :zh, :zu
14
- ].freeze
5
+ ALL_LOCALES = %i[
6
+ af am ar as az be bg bn br bs ca cs cy da de
7
+ dz el en eo es et eu fa fi fo fr ga gl gu he
8
+ hi hr hu hy ia id is it ja ka kk km kn ko ku
9
+ lt lv mi mk ml mn mr ms mt nb ne nl nn oc or
10
+ pa pl ps pt ro ru rw si sk sl so sq sr sv sw
11
+ ta te th ti tk tl tr tt ug uk ve vi wa wo xh
12
+ zh zu
13
+ ].freeze
15
14
 
15
+ describe ISO3166::Data, perf: true, order: :defined do
16
16
  def perf_report(_name)
17
17
  require 'benchmark'
18
18
  require 'memory_profiler'
@@ -28,7 +28,7 @@ describe ISO3166::Data, perf: true, order: :defined do
28
28
 
29
29
  # print a flat profile to text
30
30
  printer = RubyProf::FlatPrinter.new(result)
31
- printer.print(STDOUT)
31
+ printer.print($stdout)
32
32
  end
33
33
 
34
34
  it 'responds to call' do
@@ -40,12 +40,12 @@ describe ISO3166::Data, perf: true, order: :defined do
40
40
  end
41
41
 
42
42
  it 'locales will load prior to return results' do
43
- ISO3166.configuration.locales = [:es, :de, :en]
43
+ ISO3166.configuration.locales = %i[es de en]
44
44
  report = MemoryProfiler.report do
45
45
  ISO3166::Data.update_cache
46
46
  end
47
47
 
48
- report.pretty_print(to_file: 'tmp/memory/3_locales')
48
+ report.pretty_print(to_file: 'tmp/3_locales.txt')
49
49
  puts Benchmark.measure { ISO3166::Data.update_cache }
50
50
 
51
51
  ISO3166.configure do |config|
@@ -57,7 +57,7 @@ describe ISO3166::Data, perf: true, order: :defined do
57
57
  ISO3166::Data.update_cache
58
58
  end
59
59
 
60
- report.pretty_print(to_file: 'tmp/memory/all_locales')
60
+ report.pretty_print(to_file: 'tmp/all_locales.txt')
61
61
  end
62
62
 
63
63
  it 'loades a specfic country quickly' do
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'countries'
2
4
  RSpec.configure do |config|
3
5
  config.filter_run :focus
@@ -1,4 +1,4 @@
1
- # coding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'spec_helper'
4
4
 
@@ -23,9 +23,11 @@ describe ISO3166::Subdivision do
23
23
  describe 'state codes' do
24
24
  it 'should all be strings' do
25
25
  countries.each do |country|
26
- expect(country.subdivisions.keys).to all(be_a(String)), \
27
- "Expected #{country.alpha2.inspect} to have string subdivision" \
28
- "codes but had #{country.subdivisions.keys.inspect}"
26
+ expect(country.subdivisions.keys).to(
27
+ all(be_a(String)),
28
+ "Expected #{country.alpha2.inspect} to have string subdivision \
29
+ codes but had #{country.subdivisions.keys.inspect}"
30
+ )
29
31
  end
30
32
  end
31
33
  end
@@ -0,0 +1,47 @@
1
+ # frozen_string_literal: true
2
+
3
+ describe 'Accessing ISO3166::Country instances data in multiple threads' do
4
+ before do
5
+ if Thread.respond_to?(:report_on_exception)
6
+ @report_on_exception_value = Thread.report_on_exception
7
+ Thread.report_on_exception = false
8
+ end
9
+
10
+ ISO3166::Data.reset
11
+ end
12
+
13
+ def create_countries_threaded
14
+ nthreads = 100
15
+ threads = []
16
+
17
+ alpha2_codes = %w[us es nl ca de fr mx ru ch jp]
18
+
19
+ nthreads.times do
20
+ threads << Thread.new do
21
+ alpha2_codes.each do |a2|
22
+ country = ISO3166::Country[a2]
23
+ # This will fail if data['translations'] has been
24
+ # left nil due to a race condition
25
+ country.translation
26
+ end
27
+ end
28
+ end
29
+ threads.map(&:join)
30
+ end
31
+
32
+ it "doesn't raise any exceptions when using a mutex" do
33
+ expect { create_countries_threaded }.to_not raise_error
34
+ end
35
+
36
+ it 'raises NoMethodError when not using a mutex' do
37
+ allow(ISO3166::Data).to receive(:use_mutex?).and_return(false)
38
+
39
+ expect { create_countries_threaded }.to raise_error(NoMethodError)
40
+ end
41
+
42
+ after do
43
+ if Thread.respond_to?(:report_on_exception)
44
+ Thread.report_on_exception = @report_on_exception_value
45
+ end
46
+ end
47
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  describe 'timezone Country class' do
2
4
  context "when loaded via 'timezone'" do
3
5
  require 'tzinfo'
metadata CHANGED
@@ -1,16 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: countries
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 5.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josh Robinson
8
8
  - Joe Corcoran
9
9
  - Russell Osborne
10
- autorequire:
10
+ - Pedro Moreira
11
+ autorequire:
11
12
  bindir: bin
12
13
  cert_chain: []
13
- date: 2020-02-11 00:00:00.000000000 Z
14
+ date: 2022-05-02 00:00:00.000000000 Z
14
15
  dependencies:
15
16
  - !ruby/object:Gem::Dependency
16
17
  name: i18n_data
@@ -18,28 +19,14 @@ dependencies:
18
19
  requirements:
19
20
  - - "~>"
20
21
  - !ruby/object:Gem::Version
21
- version: 0.10.0
22
+ version: 0.16.0
22
23
  type: :runtime
23
24
  prerelease: false
24
25
  version_requirements: !ruby/object:Gem::Requirement
25
26
  requirements:
26
27
  - - "~>"
27
28
  - !ruby/object:Gem::Version
28
- version: 0.10.0
29
- - !ruby/object:Gem::Dependency
30
- name: unicode_utils
31
- requirement: !ruby/object:Gem::Requirement
32
- requirements:
33
- - - "~>"
34
- - !ruby/object:Gem::Version
35
- version: '1.4'
36
- type: :runtime
37
- prerelease: false
38
- version_requirements: !ruby/object:Gem::Requirement
39
- requirements:
40
- - - "~>"
41
- - !ruby/object:Gem::Version
42
- version: '1.4'
29
+ version: 0.16.0
43
30
  - !ruby/object:Gem::Dependency
44
31
  name: sixarm_ruby_unaccent
45
32
  requirement: !ruby/object:Gem::Requirement
@@ -55,7 +42,7 @@ dependencies:
55
42
  - !ruby/object:Gem::Version
56
43
  version: '1.1'
57
44
  - !ruby/object:Gem::Dependency
58
- name: rspec
45
+ name: activesupport
59
46
  requirement: !ruby/object:Gem::Requirement
60
47
  requirements:
61
48
  - - ">="
@@ -69,47 +56,49 @@ dependencies:
69
56
  - !ruby/object:Gem::Version
70
57
  version: '3'
71
58
  - !ruby/object:Gem::Dependency
72
- name: activesupport
59
+ name: nokogiri
73
60
  requirement: !ruby/object:Gem::Requirement
74
61
  requirements:
75
62
  - - ">="
76
63
  - !ruby/object:Gem::Version
77
- version: '3'
64
+ version: '1.8'
78
65
  type: :development
79
66
  prerelease: false
80
67
  version_requirements: !ruby/object:Gem::Requirement
81
68
  requirements:
82
69
  - - ">="
83
70
  - !ruby/object:Gem::Version
84
- version: '3'
71
+ version: '1.8'
85
72
  - !ruby/object:Gem::Dependency
86
- name: nokogiri
73
+ name: rspec
87
74
  requirement: !ruby/object:Gem::Requirement
88
75
  requirements:
89
76
  - - ">="
90
77
  - !ruby/object:Gem::Version
91
- version: '1.8'
78
+ version: '3'
92
79
  type: :development
93
80
  prerelease: false
94
81
  version_requirements: !ruby/object:Gem::Requirement
95
82
  requirements:
96
83
  - - ">="
97
84
  - !ruby/object:Gem::Version
98
- version: '1.8'
85
+ version: '3'
99
86
  description: All sorts of useful information about every country packaged as pretty
100
87
  little country objects. It includes data from ISO 3166
101
88
  email:
102
89
  - hexorx@gmail.com
103
90
  - russell@burningpony.com
91
+ - pedro@codecreations.tech
104
92
  executables: []
105
93
  extensions: []
106
94
  extra_rdoc_files: []
107
95
  files:
96
+ - ".github/workflows/codeql-analysis.yml"
97
+ - ".github/workflows/tests.yml"
108
98
  - ".gitignore"
109
99
  - ".rspec"
110
100
  - ".rubocop.yml"
111
101
  - ".rubocop_todo.yml"
112
- - ".travis.yml"
113
102
  - CHANGELOG.md
114
103
  - Gemfile
115
104
  - LICENSE
@@ -256,6 +245,7 @@ files:
256
245
  - lib/countries/country/class_methods.rb
257
246
  - lib/countries/country/currency_methods.rb
258
247
  - lib/countries/country/emoji.rb
248
+ - lib/countries/country/finder_methods.rb
259
249
  - lib/countries/data.rb
260
250
  - lib/countries/data/countries/AD.yaml
261
251
  - lib/countries/data/countries/AE.yaml
@@ -515,10 +505,8 @@ files:
515
505
  - lib/countries/data/subdivisions/AM.yaml
516
506
  - lib/countries/data/subdivisions/AO.yaml
517
507
  - lib/countries/data/subdivisions/AR.yaml
518
- - lib/countries/data/subdivisions/AS.yaml
519
508
  - lib/countries/data/subdivisions/AT.yaml
520
509
  - lib/countries/data/subdivisions/AU.yaml
521
- - lib/countries/data/subdivisions/AX.yaml
522
510
  - lib/countries/data/subdivisions/AZ.yaml
523
511
  - lib/countries/data/subdivisions/BA.yaml
524
512
  - lib/countries/data/subdivisions/BB.yaml
@@ -571,13 +559,11 @@ files:
571
559
  - lib/countries/data/subdivisions/FI.yaml
572
560
  - lib/countries/data/subdivisions/FJ.yaml
573
561
  - lib/countries/data/subdivisions/FM.yaml
574
- - lib/countries/data/subdivisions/FO.yaml
575
562
  - lib/countries/data/subdivisions/FR.yaml
576
563
  - lib/countries/data/subdivisions/GA.yaml
577
564
  - lib/countries/data/subdivisions/GB.yaml
578
565
  - lib/countries/data/subdivisions/GD.yaml
579
566
  - lib/countries/data/subdivisions/GE.yaml
580
- - lib/countries/data/subdivisions/GG.yaml
581
567
  - lib/countries/data/subdivisions/GH.yaml
582
568
  - lib/countries/data/subdivisions/GL.yaml
583
569
  - lib/countries/data/subdivisions/GM.yaml
@@ -585,10 +571,8 @@ files:
585
571
  - lib/countries/data/subdivisions/GQ.yaml
586
572
  - lib/countries/data/subdivisions/GR.yaml
587
573
  - lib/countries/data/subdivisions/GT.yaml
588
- - lib/countries/data/subdivisions/GU.yaml
589
574
  - lib/countries/data/subdivisions/GW.yaml
590
575
  - lib/countries/data/subdivisions/GY.yaml
591
- - lib/countries/data/subdivisions/HK.yaml
592
576
  - lib/countries/data/subdivisions/HN.yaml
593
577
  - lib/countries/data/subdivisions/HR.yaml
594
578
  - lib/countries/data/subdivisions/HT.yaml
@@ -596,13 +580,11 @@ files:
596
580
  - lib/countries/data/subdivisions/ID.yaml
597
581
  - lib/countries/data/subdivisions/IE.yaml
598
582
  - lib/countries/data/subdivisions/IL.yaml
599
- - lib/countries/data/subdivisions/IM.yaml
600
583
  - lib/countries/data/subdivisions/IN.yaml
601
584
  - lib/countries/data/subdivisions/IQ.yaml
602
585
  - lib/countries/data/subdivisions/IR.yaml
603
586
  - lib/countries/data/subdivisions/IS.yaml
604
587
  - lib/countries/data/subdivisions/IT.yaml
605
- - lib/countries/data/subdivisions/JE.yaml
606
588
  - lib/countries/data/subdivisions/JM.yaml
607
589
  - lib/countries/data/subdivisions/JO.yaml
608
590
  - lib/countries/data/subdivisions/JP.yaml
@@ -615,7 +597,6 @@ files:
615
597
  - lib/countries/data/subdivisions/KP.yaml
616
598
  - lib/countries/data/subdivisions/KR.yaml
617
599
  - lib/countries/data/subdivisions/KW.yaml
618
- - lib/countries/data/subdivisions/KY.yaml
619
600
  - lib/countries/data/subdivisions/KZ.yaml
620
601
  - lib/countries/data/subdivisions/LA.yaml
621
602
  - lib/countries/data/subdivisions/LB.yaml
@@ -638,9 +619,7 @@ files:
638
619
  - lib/countries/data/subdivisions/ML.yaml
639
620
  - lib/countries/data/subdivisions/MM.yaml
640
621
  - lib/countries/data/subdivisions/MN.yaml
641
- - lib/countries/data/subdivisions/MP.yaml
642
622
  - lib/countries/data/subdivisions/MR.yaml
643
- - lib/countries/data/subdivisions/MS.yaml
644
623
  - lib/countries/data/subdivisions/MT.yaml
645
624
  - lib/countries/data/subdivisions/MU.yaml
646
625
  - lib/countries/data/subdivisions/MV.yaml
@@ -649,7 +628,6 @@ files:
649
628
  - lib/countries/data/subdivisions/MY.yaml
650
629
  - lib/countries/data/subdivisions/MZ.yaml
651
630
  - lib/countries/data/subdivisions/NA.yaml
652
- - lib/countries/data/subdivisions/NC.yaml
653
631
  - lib/countries/data/subdivisions/NE.yaml
654
632
  - lib/countries/data/subdivisions/NG.yaml
655
633
  - lib/countries/data/subdivisions/NI.yaml
@@ -661,13 +639,10 @@ files:
661
639
  - lib/countries/data/subdivisions/OM.yaml
662
640
  - lib/countries/data/subdivisions/PA.yaml
663
641
  - lib/countries/data/subdivisions/PE.yaml
664
- - lib/countries/data/subdivisions/PF.yaml
665
642
  - lib/countries/data/subdivisions/PG.yaml
666
643
  - lib/countries/data/subdivisions/PH.yaml
667
644
  - lib/countries/data/subdivisions/PK.yaml
668
645
  - lib/countries/data/subdivisions/PL.yaml
669
- - lib/countries/data/subdivisions/PM.yaml
670
- - lib/countries/data/subdivisions/PR.yaml
671
646
  - lib/countries/data/subdivisions/PS.yaml
672
647
  - lib/countries/data/subdivisions/PT.yaml
673
648
  - lib/countries/data/subdivisions/PW.yaml
@@ -698,7 +673,6 @@ files:
698
673
  - lib/countries/data/subdivisions/SY.yaml
699
674
  - lib/countries/data/subdivisions/SZ.yaml
700
675
  - lib/countries/data/subdivisions/TD.yaml
701
- - lib/countries/data/subdivisions/TF.yaml
702
676
  - lib/countries/data/subdivisions/TG.yaml
703
677
  - lib/countries/data/subdivisions/TH.yaml
704
678
  - lib/countries/data/subdivisions/TJ.yaml
@@ -720,13 +694,11 @@ files:
720
694
  - lib/countries/data/subdivisions/UZ.yaml
721
695
  - lib/countries/data/subdivisions/VC.yaml
722
696
  - lib/countries/data/subdivisions/VE.yaml
723
- - lib/countries/data/subdivisions/VI.yaml
724
697
  - lib/countries/data/subdivisions/VN.yaml
725
698
  - lib/countries/data/subdivisions/VU.yaml
726
699
  - lib/countries/data/subdivisions/WF.yaml
727
700
  - lib/countries/data/subdivisions/WS.yaml
728
701
  - lib/countries/data/subdivisions/YE.yaml
729
- - lib/countries/data/subdivisions/YT.yaml
730
702
  - lib/countries/data/subdivisions/ZA.yaml
731
703
  - lib/countries/data/subdivisions/ZM.yaml
732
704
  - lib/countries/data/subdivisions/ZW.yaml
@@ -735,7 +707,6 @@ files:
735
707
  - lib/countries/iso3166.rb
736
708
  - lib/countries/kwarg_struct.rb
737
709
  - lib/countries/mongoid.rb
738
- - lib/countries/setup.rb
739
710
  - lib/countries/sources.rb
740
711
  - lib/countries/sources/cldr/downloader.rb
741
712
  - lib/countries/sources/cldr/subdivision.rb
@@ -745,6 +716,7 @@ files:
745
716
  - lib/countries/structure.rb
746
717
  - lib/countries/subdivision.rb
747
718
  - lib/countries/tasks/geocoding.rake
719
+ - lib/countries/tasks/postal_codes.rake
748
720
  - lib/countries/timezones.rb
749
721
  - lib/countries/translations.rb
750
722
  - lib/countries/version.rb
@@ -756,12 +728,18 @@ files:
756
728
  - spec/perf_spec.rb
757
729
  - spec/spec_helper.rb
758
730
  - spec/subdivision_spec.rb
731
+ - spec/thread_safety_spec.rb
759
732
  - spec/timezone_spec.rb
760
- homepage: http://github.com/hexorx/countries
733
+ homepage: https://github.com/countries/countries
761
734
  licenses:
762
735
  - MIT
763
- metadata: {}
764
- post_install_message:
736
+ metadata:
737
+ bug_tracker_uri: https://github.com/countries/countries/issues
738
+ changelog_uri: https://github.com/countries/countries/blob/master/CHANGELOG.md
739
+ source_code_uri: https://github.com/countries/countries
740
+ wiki_uri: https://github.com/countries/countries/wiki
741
+ rubygems_mfa_required: 'true'
742
+ post_install_message:
765
743
  rdoc_options: []
766
744
  require_paths:
767
745
  - lib
@@ -769,15 +747,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
769
747
  requirements:
770
748
  - - ">="
771
749
  - !ruby/object:Gem::Version
772
- version: '0'
750
+ version: '2.7'
773
751
  required_rubygems_version: !ruby/object:Gem::Requirement
774
752
  requirements:
775
753
  - - ">="
776
754
  - !ruby/object:Gem::Version
777
755
  version: '0'
778
756
  requirements: []
779
- rubygems_version: 3.0.3
780
- signing_key:
757
+ rubygems_version: 3.3.7
758
+ signing_key:
781
759
  specification_version: 4
782
760
  summary: Gives you a country object full of all sorts of useful information.
783
761
  test_files:
@@ -789,4 +767,5 @@ test_files:
789
767
  - spec/perf_spec.rb
790
768
  - spec/spec_helper.rb
791
769
  - spec/subdivision_spec.rb
770
+ - spec/thread_safety_spec.rb
792
771
  - spec/timezone_spec.rb
data/.travis.yml DELETED
@@ -1,15 +0,0 @@
1
- cache: bundler
2
- language: ruby
3
- rvm:
4
- - 1.9.3
5
- - 2.3.6
6
- - 2.4.3
7
- - 2.5.0
8
- - ruby-head
9
- before_install:
10
- - gem update --system
11
- - gem install bundler
12
- matrix:
13
- allow_failures:
14
- - rvm: ruby-head
15
- - rvm: 1.9.3