Releases: tjorim/pyrail
Releases Β· tjorim/pyrail
π’ PyRail v0.4.1 β UTC Timestamps & Dependency Updates
π What's Changed
π§ Improvements
π¦ Dependency Updates
- β¬οΈ Bumped
ruff
from0.9.3
β0.9.6
(#48 & #52 by @dependabot) - β¬οΈ Bumped
pytest-asyncio
from0.25.2
β0.25.3
(#49 by @dependabot) - β¬οΈ Bumped
aiohttp
from3.11.11
β3.11.12
(#50 by @dependabot) - β¬οΈ Bumped
mypy
from1.14.1
β1.15.0
(#51 by @dependabot)
π Full Changelog: v0.4.0...v0.4.1
π pyRail v0.4.0: Streamlined and Smarter!
β¨ What's New
- Improved Documentation & Code Clarity:
Enhanced theiRail
class documentation and refactored code for better readability and maintainability. #45 - README Updates:
Improved language selection and session management sections for a better user experience. #42 - Dependency Updates:
Bumpedruff
from 0.9.2 to 0.9.3 for the latest fixes and improvements. #44
β οΈ Breaking Changes
-
Data Models:
- Introduced
OccupancyName
enum, replacing string types for occupancy names. - Updated data structures to replace wrapper classes with direct lists:
LiveboardDepartures
βlist[LiveboardDeparture]
LiveboardArrivals
βlist[LiveboardArrival]
ConnectionStops
βlist[ConnectionStop]
CompositionSegments
βlist[Segment]
CompositionUnits
βlist[Unit]
DescriptionLinks
βlist[DescriptionLink]
- Introduced
-
Response Structure:
- Simplified nested responses for easier access:
LiveboardApiResponse.departures
andarrivals
are now optional (None
).- Removed nested access for lists (e.g.,
.departure
and.arrival
).
- Simplified nested responses for easier access:
-
Type Hint Changes:
- Modernized type hints throughout the codebase:
Dict
βdict
List
βlist
- Modernized type hints throughout the codebase:
Full Changelog: v0.3.0...v0.4.0
π PyRail v0.3.0 β Enhanced Model Support and Testing Improvements
β¨ Key Updates
- π Support for External aiohttp Session: Added support for using an external
aiohttp
session to improve flexibility in HTTP requests. (#41 by @tjorim) - π οΈ Improved Boolean Handling: Utilized previously implemented boolean handling in data models. (#39 by @silamon and @tjorim)
- π
Timestamp Handling Improvements:
- Renamed
timestamp_to_datetime
to_timestamp_to_datetime
to indicate it is a private function for internal use. - Added tests for timestamp and boolean field deserialization in models.
- Skipped timestamp tests due to timezone discrepancies and cleaned up test functions.
- Renamed
- π Liveboard Model Update: Enhanced the liveboard to support arrivals instead of the default departures, with the introduction of
LiveboardArrival
andLiveboardArrivals
models. - π Alert Model Updates:
- Added a description field to the
Alert
model. - Made the existing link in the
Alert
model optional, allowing for cases where it may not be present. (#38 by @silamon and @CodeRabbit)
- Added a description field to the
π Contributors
π Full Changelog: Compare v0.2.5...v0.3.0
π PyRail v0.2.5 β Enhanced Data Models
β¨ Key Updates
- π§ Typed Data Classes for iRail Station Endpoint: Added typed data classes for improved structure and readability. (#22 by @silamon)
- π Expanded Data Models: Introduced additional data models to enhance response handling. (#23)
- π οΈ Development Environment: Updated devcontainer to prevent Python overrides. (#31 by @silamon)
- π¦ Dependency Updates:
- π Bumped
pytest-asyncio
to v0.25.2. (#34 by @dependabot) - π Bumped
ruff
from v0.8.6 to v0.9.2 over two incremental updates. (#35 and #36 by @dependabot)
- π Bumped
π New Contributors
π Full Changelog: Compare v0.1.0...v0.2.4
π Version 0.2.1-0.2.5 were published to fix an issue in the publishing workflow.
v0.1.1
0.1.0
Special Thanks
Features
- Added intelligent rate limiting and request throttling (#6)
- Modernized codebase with async/await support (#15)
- Added Docker development environment with VS Code integration
Dependencies & CI
- Updated requests package to 2.32.3
- Upgraded GitHub Actions (checkout v4, setup-python v5)
- Added automated dependency management