Commit da6d5e1
committed
perf: replaces list of postcodes in
Removes the full list of japanese postcodes in favor or a simple 7-digit format:
"###-####".
The reason is for performance, as generating a postcode in this locale was very expensive.
Japanese postal codes were changed from a pattern to a list of real postal codes, introduced in #2297.
The problem is that when running Faker on `locale = 'ja'`, about 60% of the time to load and call `Address#postalcode` is spent reading and parsing the [ja/address.yml](https://github.com/faker-ruby/faker/blob/main/lib/locales/ja/address.yml) file, which has 2.2mb.
Benchmark:
```
Postcode - Smaller Address File: 1.2 i/s
Postcode: 0.7 i/s - 1.65x slower
1.34 s/i vs 811.55 ms/i
```ja/address.yml with a 7-digit format1 parent 30e8a92 commit da6d5e1
2 files changed
+1
-120286
lines changed
0 commit comments