name_bank 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/README.md +25 -0
  4. data/data/countries/AE.yml +667 -161
  5. data/data/countries/AF.yml +5502 -2376
  6. data/data/countries/AL.yml +1 -0
  7. data/data/countries/AO.yml +3 -2
  8. data/data/countries/AR.yml +1 -0
  9. data/data/countries/AT.yml +5 -4
  10. data/data/countries/AZ.yml +2453 -510
  11. data/data/countries/BD.yml +3340 -523
  12. data/data/countries/BE.yml +2 -1
  13. data/data/countries/BF.yml +1 -8
  14. data/data/countries/BG.yml +6208 -1704
  15. data/data/countries/BH.yml +1447 -436
  16. data/data/countries/BI.yml +4 -3
  17. data/data/countries/BN.yml +9 -8
  18. data/data/countries/BO.yml +1 -0
  19. data/data/countries/BR.yml +1 -0
  20. data/data/countries/BW.yml +1 -0
  21. data/data/countries/CA.yml +1 -0
  22. data/data/countries/CH.yml +1 -0
  23. data/data/countries/CL.yml +1 -0
  24. data/data/countries/CM.yml +1 -0
  25. data/data/countries/CO.yml +1 -0
  26. data/data/countries/CR.yml +1 -0
  27. data/data/countries/CY.yml +2183 -816
  28. data/data/countries/CZ.yml +86 -85
  29. data/data/countries/DE.yml +5 -4
  30. data/data/countries/DJ.yml +419 -154
  31. data/data/countries/DK.yml +3 -2
  32. data/data/countries/DZ.yml +4010 -812
  33. data/data/countries/EC.yml +1 -0
  34. data/data/countries/EE.yml +682 -681
  35. data/data/countries/EG.yml +6886 -2382
  36. data/data/countries/ES.yml +7 -6
  37. data/data/countries/ET.yml +5 -7
  38. data/data/countries/FI.yml +4 -3
  39. data/data/countries/FJ.yml +5 -11
  40. data/data/countries/FR.yml +1 -0
  41. data/data/countries/GB.yml +1 -0
  42. data/data/countries/GE.yml +4353 -1389
  43. data/data/countries/GH.yml +1 -0
  44. data/data/countries/GR.yml +4855 -1159
  45. data/data/countries/GT.yml +1 -0
  46. data/data/countries/HK.yml +2997 -366
  47. data/data/countries/HN.yml +1 -0
  48. data/data/countries/HR.yml +1 -0
  49. data/data/countries/HT.yml +1 -0
  50. data/data/countries/HU.yml +3 -2
  51. data/data/countries/ID.yml +2 -1
  52. data/data/countries/IE.yml +1 -0
  53. data/data/countries/IL.yml +6698 -2194
  54. data/data/countries/IN.yml +31 -30
  55. data/data/countries/IQ.yml +5907 -1403
  56. data/data/countries/IR.yml +3305 -776
  57. data/data/countries/IS.yml +19 -18
  58. data/data/countries/IT.yml +36 -35
  59. data/data/countries/JM.yml +1 -0
  60. data/data/countries/JO.yml +6222 -1718
  61. data/data/countries/JP.yml +5585 -1262
  62. data/data/countries/KH.yml +1031 -1108
  63. data/data/countries/KR.yml +4437 -1218
  64. data/data/countries/KW.yml +1 -0
  65. data/data/countries/KZ.yml +5149 -1113
  66. data/data/countries/LB.yml +4558 -1021
  67. data/data/countries/LT.yml +148 -147
  68. data/data/countries/LU.yml +38 -37
  69. data/data/countries/LY.yml +5610 -1106
  70. data/data/countries/MA.yml +3 -2
  71. data/data/countries/MD.yml +1249 -1248
  72. data/data/countries/MO.yml +4307 -1228
  73. data/data/countries/MT.yml +233 -232
  74. data/data/countries/MU.yml +1 -0
  75. data/data/countries/MV.yml +271 -270
  76. data/data/countries/MX.yml +1 -0
  77. data/data/countries/MY.yml +4 -3
  78. data/data/countries/NA.yml +1 -0
  79. data/data/countries/NG.yml +1 -0
  80. data/data/countries/NL.yml +1 -0
  81. data/data/countries/NO.yml +1 -0
  82. data/data/countries/OM.yml +3014 -866
  83. data/data/countries/PA.yml +1 -0
  84. data/data/countries/PE.yml +1 -0
  85. data/data/countries/PH.yml +1 -0
  86. data/data/countries/PL.yml +311 -310
  87. data/data/countries/PR.yml +10 -9
  88. data/data/countries/PS.yml +7018 -2514
  89. data/data/countries/PT.yml +1 -0
  90. data/data/countries/QA.yml +1 -0
  91. data/data/countries/RS.yml +1619 -411
  92. data/data/countries/RU.yml +5575 -1267
  93. data/data/countries/SA.yml +5795 -1462
  94. data/data/countries/SD.yml +5351 -1031
  95. data/data/countries/SE.yml +4 -3
  96. data/data/countries/SG.yml +38 -37
  97. data/data/countries/SI.yml +14 -13
  98. data/data/countries/SV.yml +1 -2
  99. data/data/countries/SY.yml +6283 -1779
  100. data/data/countries/TM.yml +3493 -1704
  101. data/data/countries/TN.yml +1296 -210
  102. data/data/countries/TR.yml +282 -281
  103. data/data/countries/TW.yml +5048 -1984
  104. data/data/countries/US.yml +1 -0
  105. data/data/countries/UY.yml +1 -0
  106. data/data/countries/YE.yml +2394 -485
  107. data/data/countries/ZA.yml +1 -0
  108. data/docs/name-counts.md +116 -0
  109. data/lib/name_bank/repository.rb +26 -4
  110. data/lib/name_bank/version.rb +1 -1
  111. data/lib/name_bank.rb +12 -7
  112. metadata +2 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1002b10463391e94b864c3e1ee16e75619338470b7934a7f8dbe3a0b2800b74e
4
- data.tar.gz: 48fa865b036403596ec5faad42b1e19ab608229d7bc489bc108c6cce9cfd31db
3
+ metadata.gz: 8985bb6db2329f6ae7033a3cd2ca2e9f2f1f4af803bf5904fd4e96d8f0f9034e
4
+ data.tar.gz: 1fe1d312b363bee756891a16567524d34c845673daa2e2ccb7097d4f1312fc75
5
5
  SHA512:
6
- metadata.gz: 414c382b0348cda3da80e7e441fb459f7dc67690caea107fb71ef6fc170d018d5f6ae0bf25dfdba37471afda1d68f80fe14865a7a581014d43c24509b8b0a533
7
- data.tar.gz: 740263807cc32ba8d090e6e41291170b6862ba8151b80f5b2a968c0824f95f9b452a78e6a6acafbda3686dc5d17818d0e04bf8ab97def983054cf15bedc9e41e
6
+ metadata.gz: 4c55c61b735a271ebac955184ea0e6c7f6207c8be04b87b0ee1e041b5f4f9eb542950204a8756c8f862b4fac94072402333f8357f87c5915c6fd631d06b63457
7
+ data.tar.gz: 07ca279207e64e4282a6088acd2c379bef69e5df4bc3ec14960e86fd497d765eb07d00402b4d027b4bc9191b8239a43f52fabe71dccb2ba586da8fbce3523a10
data/CHANGELOG.md CHANGED
@@ -4,6 +4,21 @@ All notable changes to this project are documented here. The format is based on
4
4
  [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project
5
5
  adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [0.1.4] - 2026-07-24
8
+
9
+ ### Added
10
+ - `script:` keyword on `first_name`, `last_name`, `full_name` (default `:latin`)
11
+ selecting the Latin or native-script pool; `NameBank.scripts(country:)` lists
12
+ available scripts. New error `NameBank::UnknownScript`.
13
+ - Native-script pools (Arabic, Cyrillic, Hangul, Han, Kana, Greek, Hebrew,
14
+ Georgian, Khmer, Bengali) for the countries that use them.
15
+ - `docs/name-counts.md`: per-country pool sizes, linked from the README.
16
+
17
+ ### Changed
18
+ - Re-baked all pools larger (N=6000) and split by script; foreign-script noise
19
+ removed from Latin pools. Default (`:latin`) output for non-Latin countries is
20
+ now Latin-only (previously mixed). Curated CN/UA pools unchanged.
21
+
7
22
  ## [0.1.3] - 2026-07-23
8
23
 
9
24
  ### Added
data/README.md CHANGED
@@ -42,6 +42,23 @@ Sampling is uniform over each pool and fully deterministic for a given
42
42
  `rng` — the same seed always yields the same name. `gender:` is `:male`
43
43
  or `:female`.
44
44
 
45
+ ## Scripts
46
+
47
+ Names come in Latin (default) and, for countries with a non-Latin writing
48
+ system, their native script. Pass `script:`:
49
+
50
+ ```ruby
51
+ NameBank.first_name(country: "RU", gender: :male, rng: rng) # => "Dmitry"
52
+ NameBank.first_name(country: "RU", gender: :male, rng: rng, script: :native) # => "Алексей"
53
+
54
+ NameBank.scripts(country: "RU") # => [:latin, :native]
55
+ NameBank.scripts(country: "DE") # => [:latin] (Latin is Germany's script)
56
+ ```
57
+
58
+ `:latin` and `:native` sample from independent pools. For Latin-script countries
59
+ `:native` returns the same (Latin) pool. Requesting a script with no names
60
+ raises `NameBank::UnknownScript`.
61
+
45
62
  ## Variants
46
63
 
47
64
  Some countries offer an alternate cultural name pool layered on the default.
@@ -72,6 +89,14 @@ Africa, South Korea, Spain, Sudan, Sweden, Switzerland, Syria, Taiwan, Tunisia,
72
89
  Turkey, Turkmenistan, Ukraine, United Arab Emirates, United Kingdom, United
73
90
  States, Uruguay, Yemen.
74
91
 
92
+ ## Pool sizes
93
+
94
+ Each country provides up to 1500 given names per gender and up to 1500
95
+ surnames; 89 of the 106 countries reach that cap on all three Latin pools, and
96
+ the rest are as large as the source data allows. 35 countries also carry a
97
+ native-script pool. Full per-country counts (Latin and native):
98
+ [docs/name-counts.md](docs/name-counts.md).
99
+
75
100
  ## License
76
101
 
77
102
  Apache-2.0.