Skip to content

chore: bump every port to 1.7.0 - #135

Merged
JeanExtreme002 merged 3 commits into
mainfrom
chore/bump-1.7.0
Nov 9, 2026
Merged

JeanExtreme002 merged 3 commits into
mainfrom
chore/bump-1.7.0

Conversation

@JeanExtreme002

Copy link
Copy Markdown
Owner

Why

Minor release carrying #134. FlightRadar24 redesigned its data pages and the published 1.6.3 fails on two public calls: get_airports() gets a 404 from the retired /_json/airports.php, and get_airlines() returns an empty list. The fix changes what callers get back, so this is a minor rather than a patch:

  • Airports from get_airports() come without latitude, longitude or altitude; FR24 no longer publishes them in the listing. get_airport(code) still has them.
  • n_aircrafts is unset for most airlines; the page only prints a fleet size for the largest ones.
  • Core.airports_json_url (Python), airportsJsonUrl (Node) and endpoints.airportsJSON (Go) are gone with the URL.
  • get_airports() is now one request per country and state instead of one request in total.

What

  • python/FlightRadarAPI/__init__.py: __version__ 1.6.3 → 1.7.0
  • go/flightradarapi/doc.go: Version 1.6.3 → 1.7.0
  • nodejs/package.json and package-lock.json: 1.6.3 → 1.7.0, via npm version so the lock stays in step with the manifest

Order

Merge #134 first, then this. The branch is cut from #134 so its CI runs against the fixed code; it is rebased onto main once #134 lands.

After merge

Publish the GitHub release v1.7.0 from main. That triggers the publish workflow for PyPI, npm and the go/v1.7.0 module tag.

The scheduled live runs of the three packages went red on 2026-11-09:
FlightRadar24 redesigned its data pages.

- `/_json/airports.php`, the one-payload airports feed, is gone (404).
  Airports are now listed on Inertia pages: `/data/airports` names every
  country and declares the asset version, `/data/airports/<country>`
  lists the airports, or the states for the largest countries, and
  `/data/airports/<country>/<state>` lists those. `get_airports()` now
  reads the index and crawls one page per country and state,
  `max_workers` at a time, asking for the page JSON with the Inertia
  headers and falling back to the HTML (whose data-page attribute
  carries the same object) on a 409. The listing no longer carries
  coordinates or altitude: those fields are None, and `get_airport(code)`
  has them.
- `/data/airlines` is no longer a table: airlines are list entries with
  the name in a titled element, the codes as badges and the fleet size
  only under "Largest fleets". The parser follows the new markup and
  merges an airline the page lists in several sections.

The offline fixtures model the new pages (shared by the three ports),
the parser tests mirror each other, and a new offline suite pins the
crawl: request order, version header, 409 fallback, grouping by country,
deduplication and the unknown-country warning. The Python live tests
also retry on HTTP 429, which the shared CI runners trip on the feed.
- nodejs: the live airports suite crawls one page per country and state
  and ran past mocha's 10 second default on Node 18 and 20; it now gets
  60 seconds, like the Go live tests.
- go: govulncheck flags github.com/andybalholm/brotli v1.2.2
  (GO-2026-6888); bumped to v1.2.7, which fixes it.
@JeanExtreme002
JeanExtreme002 merged commit b021abe into main Nov 9, 2026
11 checks passed
@github-actions
github-actions Bot deleted the chore/bump-1.7.0 branch November 9, 2026 06:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant