← Back to all sparks
H

hoopr

ANALYTICS
Velocity0.0

R package hoopr by sportsdataverse — release notes from GitHub.

hoopR rebuilds its HTTP layer on httr2 to stop segfaulting on modern systems

sports-databasketballapi-clienthttr2breaking-changessportsdataverse
Current state
hoopR is the sportsdataverse R package for basketball data, wrapping ESPN, NBA Stats, NBA G-League, NCAA and KenPom behind a single set of loaders. Version 3.0.0 replaces httr with httr2 across every one of those backends, drops httr from Imports, and routes all calls through shared internal retry and response helpers. The change is breaking, and it exists because the old stack segfaulted against libcurl 8.x and curl 7.0.0.
Where it's heading
The package's history is two distinct eras. Through 2021-2023 it grew by endpoint accretion — ESPN stat functions, G-League coverage, the NBA live and boxscore V3 families, on-court players in play-by-play — expanding what could be pulled. The recent work is consolidation instead: one HTTP pipeline, one messaging library, data served from the shared sportsdataverse-data releases rather than per-package repositories. The centre of gravity has moved from adding endpoints to making the plumbing survive its dependencies.
Prediction
With the HTTP layer unified behind shared helpers, expect the sibling sportsdataverse packages to follow the same httr2 migration, and hoopR's own next releases to resume endpoint work now that requests run through one pipeline.

Recent moves

  1. 4mo ago

    hoopR 3.0.0 moves every API backend to httr2

    ⚡ SPARK

    The major-version release rewrites the request layer rather than the feature surface: every ESPN, NBA Stats, G-League, NCAA and KenPom call now runs through httr2 helpers, KenPom authentication moves to an httr2 cookie jar, and usethis messaging is replaced by cli. It closes the era of endpoint accretion and resets the package on maintainable infrastructure.

    View source ↗
  2. 2y ago

    Data loaders repoint to sportsdataverse-data; NBA live endpoints

    A cumulative entry carrying 2.1.0 and 2.0.0. The loaders move from per-package data repositories to shared sportsdataverse-data releases — the same centralising instinct the 3.0.0 HTTP work later applies to requests. The 2.0.0 half is the larger one: live play-by-play, live boxscores and today's scoreboard, plus the full boxscore V3 family.

    View source ↗
  3. 4y ago

    ESPN stat functions and G-League coverage added

    Endpoint accretion at its most typical for this package: ESPN player and team stats for both college and NBA, a batch play-by-play function, and a G-League set covering players, schedule, play-by-play and standings contributed by outside collaborators. Coverage widens; nothing about how the package works changes.

    View source ↗
  4. 4y ago

    CRAN release with documented return shapes

    hoopR reaches CRAN as the third sportsdataverse package to do so, alongside documentation naming the returned data frames for every exported function. For a package whose calls return lists of data frames, documenting their names is the difference between usable and guesswork.

    View source ↗
  5. 4y ago

    hoopR 1.4.4

    Referee ranks removed from kp_box(). A single-column change to one KenPom function, most likely tracking what the upstream source stopped providing.

    View source ↗
  6. 4y ago

    hoopR 1.4.3

    Option configuration reverts to respecting user options — a one-line correction in the run of small patch releases preceding the CRAN submission.

    View source ↗