Releases: cathaypacific8747/fr24
Releases · cathaypacific8747/fr24
v0.1.4
New Features
- Updated for fr24 client version
24.333
:- add
Flight.position_buffer
field,RecentPosition
andPositionBuffer
- add enum field
FlightStage::DIVERSION
, renameFlightStage::ASCENDING
,FlightStage::DESCENDING
- add missing fields in
FollowFlight
namespace:sideview
,is_country_of_reg_available
,airspace_id
- fix field in
LiveFeed
namespace:airspaces_list
- add
Breaking Changes
- parquet serialisation of live feed now has extra
position_buffer
column
Full Changelog: v0.1.3...v0.1.4
v0.1.3
New Features
- New gRPC endpoints:
NearestFlights
: get list of live aircraft from centrepoint and radiusLiveFlightsStatus
: get live aircraft location and statusFollowFlight
: streaming API, sends updates of aircraft state vectors; effectively the side panel clickhandler JSON endpointTopFlights
: effectively /flights/most-tracked JSON endpointLiveTrail
: get list of aircraft state vectors for a live flight
Breaking Changes
livefeed
renamed tolive_feed
in all places- all low level functions are moved into
fr24.json
andfr24.grpc
namespaces for clarity. - protobuf definitions now split into multiple .proto files
Full Changelog: v0.1.2...v0.1.3
v0.1.2
This release introduces a major refactor of the core, while keeping most of the low-level functions untouched.
Breaking Changes
-
core class significantly redesigned to make components less coupled and data location easier to track (#24)
v0.1.1
used a service based approach:
async with FR24() as fr24: fl = fr24.flight_list("id") fl.data.load() # read flight_list/{id}.parquet response = await fl.api.fetch() # optional parameters goes here, e.g. page, limit fl.data.add_api_response(response) # json -> pyarrow fl.data.save() # write flight_list/{id}.parquet
v0.1.2
uses an approach which implement a series of type-transformations:
async with FR24() as fr24: response = await fr24.flight_list.fetch(reg="id") # FlightListAPIResp { ctx: {"id": "{id}", ...}, response: json } data = response.to_arrow() # FlightListArrow { ctx: ..., table: pyarrow.Table } print(data.df) # pd.DataFrame data.save()
-
protobuf definitions now adhere to official naming and structure (f9e2421)
-
library now makes a clear distinction between heading and track:
LiveFeedRecord
,TrackData
,PlaybackTrackEMSRecord
,FlightListRecord
are updated (345b8cd) -
flight_list_df
andplayback_df
now calls their proxy*_arrow
functions to ensure consistent data types (3edf447)flight_list_df
timestamp are now milliseconds,flight_id
andicao24
no longer floats.playback_df
now serialisesems
and metadata.
-
find
now accepts optionalhttpx.AsyncClient
parameter
New Features
- HTTP/2 is enabled by default to avoid 464 errors (3ce6da6)
- live feed now supports modifying the
fields
parameter - updated CLI (e19e5ba):
- all three services are now implemented
-o
,--output
: supports saving to specific directory or stdout (-
)-f
,--format
: supports saving toparquet
orcsv
Full Changelog: v0.1.1...v0.1.2
v0.1.1
Full Changelog: v0.1.0...v0.1.1
v0.1.0
Basic features:
- (gRPC) live and historical feed
- (JSON) historical routes by flight number / registration
- (JSON) playback track by flight id
- (JSON) airport/aircraft metadata finding
- utils: caching, cli and tui