mirror of
https://github.com/RayLabsHQ/gitea-mirror.git
synced 2026-10-30 22:21:58 +01:00
The v3.37.0 change stopped the scheduler run from holding its lock through a rate limit, but only the refused request stopped. Every other call queued in the run still went to GitHub and came back 403, and the retry helper sent each of them three more times. GitHub counts requests made while limited toward abuse detection, and a reporter's account was suspended that way. Every GitHub client now carries a request wrap that reads the gate before the network: a reset within two minutes is waited out inside the request, a longer one fails at once with a RateLimitPausedError, and only the rate limit probe endpoint is exempt. The retry helper does not retry a rate limit refusal and stops starting the remaining items, surfacing a RateLimitedBatchError. The metadata component catches in both mirror paths rethrow rate limit errors so the repository fails and the scheduler restores it, and the pull request detail fallback no longer writes a stripped down issue after a refusal. The secondary rate limit handler closes the gate for its retry-after window.
Gitea Mirror Marketing Site
This Astro workspace powers the public marketing experience for Gitea Mirror. It includes the landing page, screenshots, call-to-action components, and the new use case library that highlights real-world workflows.
Developing Locally
bun install
bun run dev
The site is available at http://localhost:4321. Tailwind CSS v4 handles styling; classes can be used directly inside Astro, MDX, and React components.
Project Structure
src/pages/index.astro– Main landing pagesrc/components/– Reusable UI (Header, Hero, Features, UseCases, etc.)src/lib/use-cases.ts– Central data source for use case titles, summaries, and tagssrc/pages/use-cases/– MDX guides for each use case, rendered withUseCaseLayoutsrc/layouts/UseCaseLayout.astro– Shared layout that injects the header, shader background, and footer into MDX guides
Authoring Use Case Guides
- Add or update a record in
src/lib/use-cases.ts. This keeps the landing page and library listing in sync. - Create a new MDX file in
src/pages/use-cases/<slug>.mdxwith theUseCaseLayoutlayout and descriptive frontmatter. - Run
bun run devto preview the layout and ensure the new guide inherits global styles.
Deployment
The marketing site is built with the standard Astro pipeline. Use bun run build to generate a production build before deploying.