Releases: mretallack/ukfuelfinder
Releases · mretallack/ukfuelfinder
Release list
3.0.0 - 2026-02-26
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
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 APIexamples/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.pyto 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
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
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
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!