Skip to content

1.0.970

Choose a tag to compare

@GoktugOcal GoktugOcal released this 25 Dec 00:05
· 35 commits to main since this release

Release v1.0.970

Highlights

  • New parsing and silver-table support for championship predictions and race-control messages.
  • Session scraping: session results and starting grid can now be loaded automatically from the Formula 1 website.
  • Improved robustness when generating silver/gold tables (per-table try/except + logging).
  • Added FIA category/scope rules and basic penalty parsing logic for race control messages.
  • Utility helpers added for scraping F1 result pages and loading circuit keys.

Added

  • livef1/data_processing/parse_functions.py
    • parse_championship_prediction: generator to parse championship prediction driver records.
  • livef1/data_processing/silver_functions.py
    • generate_race_control_messages_table: parses race-control messages, extracts car numbers, category/scope/status/info fields.
    • Extended race-control parsing logic (regex, message heuristics).
  • livef1/models/session.py
    • load_session_results(): scrapes session results and starting grid and saves to session.sessionResults / session.startingGrid.
    • generate(): now calls load_session_results() (wrapped in try/except).
    • Better error handling around silver/gold table generation (logs failures per-table).
  • livef1/utils/constants.py
    • CIRCUIT_KEYS_URL constant, FIA_CATEGORY_SCOPE_RULES, penalty_types.
    • Added new silver table: raceControlMessages to SILVER_SESSION_TABLES and updated TABLE_GENERATION_FUNCTIONS/TABLE_REQUIREMENTS.
    • ChampionshipPrediction default_is_stream set to False.
  • livef1/utils/helper.py
    • scrape_f1_results(url): simple Result table scraper using requests + BeautifulSoup + pandas.
    • get_circuit_keys() to load circuit keys CSV.
  • Version bump in livef1/init.py to 1.0.97.

Changed

  • Integrated ChampionshipPrediction parsing into ETL registration.
  • Added raceControlMessages to required tables for laps and to generation flow.
  • Small refactors and formatting/cleanup (removed some stray prints, added logging).

Fixed

  • Various fixes related to session result loading and table generation robustness.
  • Improved parsing heuristics to avoid pulling timestamps/lap numbers as car numbers in RCM messages.

Notes / Potential impact

  • New third-party runtime dependencies are used by helper.scrape_f1_results: requests and beautifulsoup4 (bs4). Make sure these are installed where LiveF1 runs.
  • The new raceControlMessages silver table is now part of SILVER_SESSION_TABLES. Users relying on the prior set of auto-created tables may need to update scripts that enumerate tables.
  • ChampionshipPrediction default_is_stream changed to False — if you relied on it streaming by default, update configurations accordingly.
  • scrape_f1_results and get_circuit_keys perform live HTTP requests to external URLs; network access is required for those features.