← Back to all sparks
R

r5r

ANALYTICS
Velocity0.0

Rapid Realistic Routing with R5

r5r's jump to JDK 21 fixed Apple Silicon and broke everyone's toolchain at once.

transport-accessibilityroutinggtfsjavar-package
Current state
r5r runs Conveyal's R5 routing engine from R for multimodal travel-time matrices, accessibility measures and isochrones. The current line requires JDK 21 and R5 v7.1, stores the engine jar under a managed user directory, and detects when a chosen date has no transit service instead of returning silent nonsense. Isochrones can now be returned as polygons rather than lines.
Where it's heading
Development alternates between tracking upstream R5 and smoothing the rough edges its Java dependency creates. The v2.0 release was the pivotal one: raising the JDK floor was a breaking change, but it is what resolved the Mac ARM incompatibility and unblocked users on modern hardware. Since then the work has returned to routing outputs and error handling.
Prediction
Expect further upstream R5 tracking plus incremental isochrone and accessibility options; the JDK floor has just been reset, so another runtime break is unlikely soon.

Recent moves

  1. 1y ago

    Polygon isochrones and empty-service detection

    isochrone() gains a polygon_output switch, and the package now errors when no transit service runs on the selected departure date. The second change turns a class of confusing empty results into an explicit failure.

    View source ↗
  2. 1y ago

    JDK 21 requirement lands, fixing Apple Silicon support

    ⚡ SPARK

    The breaking release: JDK 21 or higher is now required, R5 moves to v7.1, and the engine jar is cached under a managed user directory. It is also what fixed the Mac ARM incompatibility that had blocked Apple Silicon users.

    View source ↗
  3. 3y ago

    Adds isochrone() with vignettes and FAQ

    Introduces isochrone() with a dedicated vignette, plus an FAQ vignette and a default time_window change to avoid unstable upstream results. Isochrones became a first-class output here and are still being refined two releases later.

    View source ↗
  4. 3y ago

    Bumps R5 to 6.9 for cropped OSM network fix

    Bumps the bundled R5 to 6.9, picking up an upstream fix for network building from cropped OSM data. Routine engine tracking of the kind that later drove the v2.0 break.

    View source ↗