Python 3.11 introduced datetime.UTC as a cleaner alias for
datetime.timezone.utc. Both build.py and fetch_github_stars.py
are updated to use the shorter form.
Co-Authored-By: Claude <noreply@anthropic.com>
State reset (current_group_name = None, current_group_cats = []) was
duplicated in both branches of the early-return guard. Move it after
the conditional so it runs exactly once regardless of path.
Co-Authored-By: Claude <noreply@anthropic.com>
Parse the # Sponsors heading in README.md into structured data and
render a dedicated sponsor band above the library index on the site.
Co-Authored-By: Claude <noreply@anthropic.com>
- Link awesome-python.com in sponsor descriptions
- Add 120-character limit for sponsor descriptions
- Reword Link Sponsor tier to clarify entry format
- Replace month-to-month wording with flexible term details
- Add payment methods (ACH/wire, PayPal)
- Add editorial reserve clause for sponsor content
Co-Authored-By: Claude <noreply@anthropic.com>
Lumibot is an actively maintained Python framework (1,333+ stars, MIT
license) for algorithmic trading backtesting and live deployment. It
supports stocks, options, crypto, futures, and forex across multiple
brokers. Repository is 3+ years old with consistent weekly activity.
Category: Hidden Gem — solves the real pain of running the same
strategy code in backtesting and production with multiple brokers.
https://github.com/Lumiwealth/lumibot
- Reword referrer list label and reorder entries
- Rename 'Past Sponsors' to 'Previously Sponsored By'
- Trim redundant word from closing sentence
Co-Authored-By: Claude <noreply@anthropic.com>
Add three tests against the real README: verify all entries have
non-empty names, valid http(s) URLs, and no broken markdown link
syntax (e.g. '[name(url)' missing the closing '](').
Co-Authored-By: Claude <noreply@anthropic.com>
Collapse the two-job workflow into one, set the github-pages
environment on the single job, and key the star-data cache by
date (YYYY-MM-DD) so it is shared across same-day runs instead
of being per-run-id. Also skip tests on scheduled runs and
validate JSON before serving it.
Co-Authored-By: Claude <noreply@anthropic.com>
This PR corrects the casing of "SQLite" (from "SQlite") in the Database Drivers section to align with the official project name and maintain consistency across the documentation.
Replaced "SQlite" with "SQLite" in headings and descriptions.