Skip to content

Latest commit

 

History

History
78 lines (60 loc) · 3.62 KB

File metadata and controls

78 lines (60 loc) · 3.62 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.7.0 - 2026-03-12

Changed

  • Updated default API version to v1.11

0.6.0 - 2026-02-24

Changed

  • Updated default API version from v1.9 to v1.10

0.5.1 - 2026-02-18

Fixed

  • Fixed parsing of state legislative district data (stateleg field). The API response key changed from stateleg to state_legislative_districts and the structure changed from a flat list to a dict with house/senate keys containing legislator info. The library now handles both formats.

0.5.0 - 2026-01-06

Added

  • Distance API support with new methods for calculating distances between coordinates:
    • distance() - Calculate distances from a single origin to multiple destinations
    • distance_matrix() - Calculate distances from multiple origins to multiple destinations
    • Support for straightline (haversine) and driving distance modes
    • Support for miles and km units
    • Optional sorting by distance or duration
  • New Coordinate class for representing geographic coordinates with optional IDs
  • Distance parameters for geocode() and reverse() methods to calculate distances inline
  • Comprehensive type definitions: DistanceResponse, DistanceMatrixResponse, DistanceOrigin, DistanceDestination
  • Distance mode constants: DISTANCE_MODE_STRAIGHTLINE, DISTANCE_MODE_DRIVING
  • Distance unit constants: DISTANCE_UNITS_MILES, DISTANCE_UNITS_KM

0.2.0 - 2025-08-08

Changed

  • BREAKING: Renamed main client class from GeocodioClient to Geocodio for simplicity and consistency with other SDKs
    • Migration: Change imports from from geocodio import GeocodioClient to from geocodio import Geocodio
    • Migration: Update instantiation from client = GeocodioClient(...) to client = Geocodio(...)

0.1.0 - 2025-08-08

Added

  • Initial release of the official Python client for the Geocodio API
  • Forward geocoding for single addresses and batch operations (up to 10,000 addresses)
  • Reverse geocoding for single coordinates and batch operations
  • List API support for managing large batch jobs
  • Field appending capabilities (census data, timezone, congressional districts, etc.)
  • Comprehensive error handling with structured exception hierarchy
  • Full test coverage with unit and end-to-end tests
  • Support for Geocodio Enterprise API via hostname parameter
  • Modern async-capable HTTP client using httpx
  • Type hints and dataclass models for better IDE support
  • GitHub Actions CI/CD pipeline for automated testing and publishing

Release Process

When ready to release:

  1. Update the version in pyproject.toml
  2. Move all "Unreleased" items to a new version section with date
  3. Commit with message: chore: prepare release vX.Y.Z
  4. Tag the release: git tag vX.Y.Z
  5. Push tags: git push --tags
  6. GitHub Actions will automatically publish to PyPI