- Add
replace_city_name
parameter to allow keeping the original value when normalizing.
- Annotate code
- Be more permissive on dependencies versions
- Migrate to Poetry for project management
- Use pytest-styled tests everywhere
- Format code with black and clean up the code
- Unpin pycountry and fix tests
- Drop support for Python 3.5 and under.
- Migrate CI to github workflows
- Freeze pycountry version to
18.5.26
to avoid issues with subdivsion.
- Unfreeze pycountry version and bump to
pycountry >= 18.5.26
. - Refactor country aliases with better categories.
- Some subdivisions names were updated, such as
FR-O
toFR-HDF
. - Drop support for Python 3.3.
- Exclude production of invalid random addresses in
ar_PS
locale. See #20. - Bump dependency to
Faker >= 0.8.4
.
- Restrict
Faker
to0.8.3
as the next release seems to mess up production of territory subdivisions. See #19 and #22. - Add cache on
supported_*_codes()
functions.
- Re-allow production of random addresses in
no_NO
andfa_IR
locales. - Bump dependency to
Faker >= 0.7.7
.
- Exclude production of invalid random addresses in
fa_IR
locale.
- Fix selection of random locale in
random_address()
. - Bump dependency to
Faker >= 0.7.4
. - Exclude production of invalid random addresses in
no_NO
locale. - Fix rendering of changelog link in RST.
- Build documentation via Sphinx. Closes #14.
- Move development and packaging documentation to Sphinx.
- Restrict
pycountry
to16.11.8
release because of bad Czech Republic subdivision definitions. - Remove popularity badge: PyPI download counters are broken and no longer displayed.
- Move coverage config to
setup.cfg
. - Add
test
anddevelop
dependencies. - Only show latest changes in the long description of the package instead of the full changelog.
- Replace
pep8
package bypycodestyle
. - Enforce
pycodestyle
checks in Travis CI jobs. - Test production of packages in Travis CI jobs.
- Always check for package metadata in Travis CI jobs.
- Make wheels generated under Python 2 environnment available for Python 3 too.
- Add link to full changelog in package's long description.
- Change internal structure of
InvalidAddress
exception to print invalid field values in error message. - Update
pycountry
to the new calendar-versionned series. - Allow unittests failure on PyPy3.
- Keeps
pycountry
dependency to the 1.x series.
- Replace dependency on
fake-factory
byFaker
. - Add inactive unittests to highlight un-caught edge-cases in the country/state normalization code on derivation from subdivisions. Refs #16.
- Remove deprecated
random_word()
,random_phrase()
andrandom_postal_code()
. - Activate tests on Python 3.3.
- Allow production of random chinese addresses.
- Bump
faker
requirement to 0.5.4. - Activate tests on PyPy and PyPy3.
- Add a new
territory_children_codes()
utility to fetch all children of a territory. - Use
faker
module to produce fuzzier random addresses. - Deprecate
random_word()
,random_phrase()
andrandom_postal_code()
in favor offaker
module. - Add
isort
configuration. - Only allow string-like types to be set on editable address fields.
- Replace
awesome-slugify
dependency byboltons
. - Activate tests on Python 3.5.
- Switch from
coveralls.io
tocodecov.io
.
- Change license from GPLv2+ to BSD 2-Clause license. Closes #13.
- Add bumpversion configuration.
- Add custom PEP8 and PyLint configuration.
- Fix bad released version.
- Normalize all white spaces, not only leadings and trailings.
- Test that the
Address
object is able to digest unicode messs. - Normalize postal codes to uppercase alphanumerics with spaces and hyphens. Refs #2.
- Fix encoding of
README
andCHANGES
. Closes #12.
- Add utility method to generate random addresses for test mockups.
- Include internal fields disguised as properties when
repr
-ing theAddress
object. - Always use the common name of a country if available instead of its official default value.
- Update all Online Labs references to Scaleway.
- Add an option to bypass
Address
' strict normalization.
- Always sort fields in error messages to improve reproducibility when unit testing.
- Deduplicate inconsistent field entries in custom address exception.
- Fix bad released version.
- Increase capabilities of alias resolution by
country_aliases()
method, which in turns increase address normalization efficiency. - Remove backward compatibility with
0.3
series. - Remove deprecated
territory.territory_tree()
method which provided backward compatibilityi with the0.1
series. It should have been removed in the0.3.0
release. - Split-up
supported_territory_codes()
intosupported_country_codes()
andsupported_subdivision_codes()
.
- Fix rendering of subdivision-less addresses.
- Fix
country_code
tosubdivision_code
validation if the latter is not set.
- Base our custom
InvalidAddress
exception onValueError
to increase backward compatibility.
- Show subdivision as-is in rendered address if not already printed by state, country or city.
- Document stability policy. Closes #8.
- Change internals to refer to address components as
fields
. - Raise custom exception on address validation a detailed list of invalid fields in one go. Closes #7.
- Fix bad released version.
- Add backward compatibility to the
0.2
series following territory utils split out of theaddress
module. See #8 and #9.
- Fix rendering of state in address.
- Remove backward compatibility with the
0.1
series. - Allow direct import of classes from module root.
- Split territory utils out to their own file. See #3.
- Rename
normalize_country_code
tocountry_from_subdivision
. Mark the former as deprecated. - Address normalization is now non-blocking. It simply reset invalid components
to None. Only a call to
validate
method check data consistency.
- Push a new release to fix cached desynced packages on cheeseshops and clones.
- Package the whole module for proper distribution.
- Restore partial backward compatibility with address module from the
0.1
series.
- First public release.
- First commit.