Skip to content

Releases: mretallack/ukfuelfinder

3.0.0 - 2026-02-26

Choose a tag to compare

@mretallack mretallack released this 25 Feb 18:44

Changed

  • Breaking API Change: mft_organisation_name field removed from UK Fuel Finder API (February 25-26, 2026)
  • Made mft_organisation_name optional (Optional[str]) in PFS and PFSInfo modelsI
  • Fields now returns None instead of string value in new API responses

Fixed

  • Backward compatibility maintained - existing code continues to work without modification
  • Models handle API responses without mft_organisation_name field gracefully
  • No exceptions raised when field is missing from API response

Updated

  • OpenAPI specification updated to match current API (February 25-26, 2026)
  • Documentation updated to reflect field removal and optional nature
  • Added tests for both presence and absence of mft_organisation_name field
  • README.md includes migration guidance for handling optional field

Technical Details

  • All 70 unit tests passing
  • 85% code coverage maintained
  • Type hints updated: str → Optional[str]
  • No breaking changes to public API

[2.0.0] - 2025-02-19

Choose a tag to compare

@mretallack mretallack released this 19 Feb 15:03
2685110

Added

  • Global Configuration: set_global_backward_compatible() function for application-wide settings
  • HTTP Client Tests: Comprehensive test suite for HTTP client (10 new tests)
  • Global Config Tests: Test suite for global configuration (6 new tests)
  • Integration Test: Test for invalid batch number 404 handling
  • New Examples:
    • examples/api_migration.py - Migration guide from old to new API
    • examples/global_config.py - Global configuration usage
  • Enhanced Documentation: Updated all examples for new API format

Changed

  • Version Bump: Major version to 2.0.0 for API changes
  • HTTP Client: Enhanced response parsing for both old and new API formats
  • Configuration Priority: Global config > Environment variable > Constructor parameter > Default
  • Test Coverage: Increased to 74% (58 tests passing)
  • Examples: Updated basic_usage.py to demonstrate new API

Fixed

  • HTTP Client: Proper handling of response formats with and without data wrapper
  • Error Handling: Improved 404 detection for batch endpoints
  • Mock Tests: Fixed elapsed time mocking in HTTP client tests

Documentation

  • Updated README with comprehensive API changes section
  • Added detailed migration guide
  • Updated all code examples for new API
  • Created release notes (RELEASE_NOTES_2.0.0.md)

Technical Details

  • All 58 unit tests passing
  • 74% code coverage
  • HTTP client now at 96% coverage
  • Backward compatibility fully tested

1.2.0 - 2026-02-17

Choose a tag to compare

@mretallack mretallack released this 17 Feb 17:07

Fixed

  • Handle null latitude/longitude coordinates gracefully in Location model
  • Fixed black formatting issues in price_service.py and models.py
  • Added default batch_number=1 for incremental updates

Added

  • OpenAPI specification documentation in docs/openapi.json
  • Release procedure documentation in README.md

Changed

  • Locationlatitude and Location.longitude now Optional[float] to handle null values
  • Improved error handling for API responses with missing coordinate data

[1.1.0] - 2026-02-05

Choose a tag to compare

@mretallack mretallack released this 05 Feb 10:35

UK Fuel Finder Python Library v1.1.0

Fixed

  • Pagination bug where get_all_pfs_info() and get_all_pfs_prices() only returned first 500 records
  • Now automatically fetches all batches when batch_number=None (default behavior)
  • Fetches complete dataset of 6,800+ stations instead of just first batch

Added

  • get_all_pfs_prices_paginated() method for automatic pagination
  • Location search functionality with search_by_location(latitude, longitude, radius_km)
  • Haversine distance calculation for geographic searches
  • Integration test for pagination verification

Changed

  • get_all_pfs_info() and get_all_pfs_prices() now fetch all data by default
  • Maintains backwards compatibility with explicit batch_number parameter
  • Improved documentation with location search examples

v1.0.0: Add flake8 config and fix linting issues

Choose a tag to compare

@mretallack mretallack released this 03 Feb 09:03

UK Fuel Finder Python Library v1.0.0

Initial release of the UK Fuel Finder Python library.

Features

  • OAuth 2.0 authentication with automatic token refresh
  • Fuel price data access
  • Forecourt information retrieval
  • Location-based search
  • Built-in caching and rate limiting
  • Comprehensive error handling
  • Full type hints

Installation

bash
pip install ukfuelfinder

Documentation

See README.md for usage examples and API documentation.
Then click "Publish release" and the workflow will automatically publish to PyPI!