# What changed in faker

> 80 changes in faker 38 to 40 from its official release notes, upgrade guides and advisories: 7 breaking, 36 new APIs and options. Each one cited. Sources checked 2026-10-21. HTML: https://unstale.sh/pypi/faker/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## faker 40

### Breaking changes

- The bank provider was updated for pt_BR, which may change generated bank data for that locale. (40.26.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.26.0)
- The job provider was updated for pt_BR, which may change generated job data for that locale. (40.26.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.26.0)
- The phone_number provider was updated for pt_BR, which may change generated phone numbers for that locale. (40.26.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.26.0)
- The ssn provider was updated for pt_BR, which may change generated SSNs for that locale. (40.26.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.26.0)
- bank() now raises NotImplementedError for locales without banks data. (40.23.1) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.23.1)

### New APIs and options

- Adds a bank provider for the es_CO locale. (40.43.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.43.0)
- Adds an internet provider for the es_CO locale. (40.43.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.43.0)
- Adds a Sinhala (Sri Lanka) person provider for the si_LK locale. (40.38.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.38.0)
- Pillow is added as an optional dependency. (40.37.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.37.0)
- Adds alphanumeric CNPJ support for pt_BR via a flag. (40.33.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.33.0)
- Adds the allowed_path_traversal_elements option to file_path(). (40.32.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.32.0)
- Adds an automotive license plate provider for the es_MX locale. (40.28.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.28.0)
- Adds an SSN provider for the sr_BA locale. (40.27.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.27.0)
- Adds the Macedonian locale. (40.24.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.24.0)
- Adds the person, address, and phone_number providers for the mr_IN locale. (40.22.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.22.0)
- Adds a banks list for the en_GB locale, changing the bank data available to developers using that locale. (40.21.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.21.0)
- Adds the `gstin` generator to the `en_IN` SSN provider. (40.20.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.20.0)
- Adds the `pan` generator to the `en_IN` SSN provider. (40.20.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.20.0)
- The misc provider adds uuid1, allowing developers to generate UUID version 1 values. (40.19.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.19.0)
- The misc provider adds uuid7, allowing developers to generate UUID version 7 values. (40.19.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.19.0)
- Automotive providers are now available for the ar_DZ and fr_DZ locales. (40.18.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.18.0)
- The phone_number provider is now available for the ar_DZ and fr_DZ locales. (40.18.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.18.0)
- Adds an Ethiopia phone_number provider for the am_ET locale. (40.17.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.17.0)
- Company providers are now available for the ar_DZ and fr_DZ locales. (40.15.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.15.0)
- Currency providers are now available for the ar_DZ and fr_DZ locales. (40.15.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.15.0)
- The date_time provider is now available for the ar_DZ locale. (40.15.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.15.0)
- Geo providers are now available for the ar_DZ and fr_DZ locales. (40.15.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.15.0)
- Job providers are now available for the ar_DZ and fr_DZ locales. (40.15.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.15.0)
- SSN providers are now available for the ar_DZ and fr_DZ locales. (40.15.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.15.0)
- Address providers are now available for the ar_DZ locale. (40.12.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.12.0)
- Address providers are now available for the fr_DZ locale. (40.12.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.12.0)
- The he_IL locale now includes country names. (40.6.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.6.0)
- Adds cie support for the it_IT locale. (40.4.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.4.0)
- Adds passport support for the it_IT locale. (40.4.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.4.0)
- Adds selective uniqueness with exclude_types. (40.1.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.1.0)

### Behavior and default changes

- uuid1() is reproducible under a fixed seed. (40.33.1) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.33.1)
- French social security number generation now includes Corsican codes. (40.23.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.23.0)
- The Swiss bank provider now includes major Swiss banks. (40.11.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.11.0)
- The hu_HU locale now includes free email domains. (40.8.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.8.0)
- Polish addresses now categorize street types and prefixes, improving address grammar. (40.7.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.7.0)
- Adds missing formats and removes duplicates in user_name_formats, changing the available username formats. (40.5.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.5.0)
- The bank provider for el_GR now includes major Greek banks. (40.3.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.3.0)
- The internet provider’s domains, TLDs, and slugify data were updated for the pt_BR locale. (40.2.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.2.0)
- The requirement for tzdata now depends on the platform. (40.1.2) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.1.2)

### Fixes and other changes

- IBANs generated for fa_IR and mk_MK now have the correct BBAN length. (40.42.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.42.0)
- Updated Vietnamese address formats, administrative units, and postcodes. (40.41.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.41.0)
- Fixes generation of invalid CNP birth dates for ro_RO ssn(). (40.40.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.40.0)
- Norwegian MOD11 check digits are now computed correctly so no_NO iban() passes stdnum validation. (40.39.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.39.0)
- Irish IBANs generated for en_IE are now structurally valid. (40.37.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.37.0)
- Corrects the uk_UA bban_format to 6 digits + 19 letters so iban() generates valid Ukrainian IBANs. (40.36.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.36.0)
- For ru_RU, iban() now generates valid Russian IBANs using the correct bban_format. (40.35.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.35.0)
- Corrects BBAN length so da_DK iban() generates valid Danish IBANs. (40.34.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.34.0)
- Validates positive=True against a non-positive max_value. (40.33.2) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.33.2)
- uuid7() is reproducible under a fixed seed. (40.33.1) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.33.1)
- Corrects BBAN length so pt_BR iban() generates valid Brazilian IBANs. (40.31.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.31.0)
- Generates valid Belgian bank codes for the nl_BE locale. (40.30.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.30.0)
- Generates valid Spanish CCC control digits in es_ES. (40.29.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.29.0)
- Fixes the ISO 7064 Mod 11,10 check digit generated for de_DE vat_id values. (40.28.1) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.28.1)
- Outdated Korean locale names were updated. (40.25.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.25.0)
- Prevents infinite recursion when both bounds collapse to the same integer. (40.24.1) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.24.1)
- Fixes shared state mutation in the en_IN pincode_in_state method. (40.19.1) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.19.1)
- The placekitten URL was updated to placekittens. (40.14.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.14.0)
- Locale selection is now deterministic in multi-locale mode. (40.13.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.13.0)
- Deepcopy proxies are rebound to copied Faker instances. (40.11.1) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.11.1)
- Fixed mixed-gender names in the es_MX locale. (40.10.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.10.0)
- Fixes the postalcode format for pt_PT in the address provider. (40.9.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.9.0)
- Fixes mutable default providers. (40.8.1) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.8.1)
- Fixes a missing return statement in _get_local_timezone(). (40.5.1) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.5.1)
- Fixes a TypeError when combining positive=True with max_value. (40.1.3) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.1.3)
- Fixes grouping for the -i CLI parameter. (40.1.1) — [release notes](https://github.com/joke2k/faker/releases/tag/v40.1.1)

## faker 39

### Breaking changes

- Duplicate entries were removed from Russian professions, changing the values Faker may generate. (39.0.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v39.0.0)

### New APIs and options

- Adds French female variants for jobs. (39.1.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v39.1.0)

## faker 38

### Breaking changes

- Support for Python 3.9 was dropped. (38.0.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v38.0.0)

### New APIs and options

- Adds a French company RCS number provider method. (38.3.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v38.3.0)
- Adds the date_time provider for the fr_DZ locale. (38.1.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v38.1.0)
- Adds the person provider for the ar_DZ locale. (38.1.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v38.1.0)
- Adds the person provider for the fr_DZ locale. (38.1.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v38.1.0)
- Adds the phone_number provider for the fr_DZ locale. (38.1.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v38.1.0)

### Behavior and default changes

- UniqueProxy is now localized. (38.2.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v38.2.0)

### Fixes and other changes

- Support for Python 3.11 was added. (38.0.0) — [release notes](https://github.com/joke2k/faker/releases/tag/v38.0.0)
