feat: Enhanced rate limit display showing both GraphQL and REST API limits#25
Conversation
…imits - Add RestRateLimitInfo and CombinedRateLimitInfo types - Create fetchRestRateLimits function to query REST API rate limits - Update UI to display both GraphQL and REST rate limits side by side - Show rate limit changes with color-coded deltas (red/green) - Update low rate warning to trigger on either limit being low
- Display as 'API: GraphQL/5000 | REST/15000' in compact format - Remove delta indicators for cleaner single-line display - Maintain low rate warning color coding
- Show 'GraphQL: X/5000 (+/-N) | REST: Y/15000 (+/-N)' format - Display delta changes with color coding (green for increase, red for decrease) - Keep everything on single line for compact display
|
Caution Review failedThe pull request is closed. WalkthroughThis PR removes repository rename and URL-copy features from docs, UI, API helpers, exports, and tests; reverts version to 1.19.2; drops the clipboardy dependency; adds REST rate-limit types and a fetchRestRateLimits function; and updates RepoList to display combined GraphQL + REST rate limits with new props for organisation context. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor User
participant RL as RepoList (UI)
participant GQL as GitHub GraphQL API
participant REST as GitHub REST API (/rate_limit)
User->>RL: Open / paginate / refresh
RL->>GQL: Fetch repos + GraphQL rate limit
GQL-->>RL: Repos + rateLimit
RL->>REST: fetchRestRateLimits(token)
REST-->>RL: REST rate limits (core + graphql) or null
RL->>RL: Update state (GraphQL + REST limits, deltas)
RL-->>User: Render repos + combined rate-limit display
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 💡 Knowledge Base configuration:
You can enable these sources in your CodeRabbit configuration. 📒 Files selected for processing (12)
✨ Finishing Touches
🧪 Generate unit tests
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
CodeRabbit Configuration File (
|
| const modalOpen = deleteMode || archiveMode || syncMode || logoutMode || infoMode || visibilityMode || renameMode || sortMode || changeVisibilityMode || copyUrlMode; | ||
| const lowRate = (rateLimit && rateLimit.remaining <= Math.ceil(rateLimit.limit * 0.1)) || | ||
| (restRateLimit && restRateLimit.core.remaining <= Math.ceil(restRateLimit.core.limit * 0.1)); | ||
| const modalOpen = deleteMode || archiveMode || syncMode || logoutMode || infoMode || visibilityMode; |
# [1.23.0](v1.22.0...v1.23.0) (2025-09-04) ### Features * Enhanced rate limit display showing both GraphQL and REST API limits ([#25](#25)) ([1220a0f](1220a0f))
|
🎉 This PR is included in version 1.23.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
There was a problem hiding this comment.
Codex Review: Here are some suggestions.
Reply with @codex fix comments to fix any unresolved comments.
About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you open a pull request for review, mark a draft as ready, or comment "@codex review". If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex fix this CI failure" or "@codex address that feedback".
| export { default as VisibilityModal } from './VisibilityModal'; | ||
| export { default as SortModal } from './SortModal'; |
There was a problem hiding this comment.
[P1] Restores old codebase and drops rename/copy actions
This commit adds REST rate-limit fetching but simultaneously removes the RenameModal and CopyUrlModal exports along with the supporting UI, cache update helpers, tests, and the clipboard dependency. As a result the Ctrl+R and C key bindings that previously allowed users to rename a repository or copy clone URLs no longer exist anywhere in the app, so those actions cannot be performed at all. This is a user-facing regression unrelated to the rate limit feature and will surprise anyone relying on the existing rename/URL copy functionality. Unless the feature was intentionally deprecated, the removal should be reverted or split into a dedicated change that clearly documents the deprecation.
Useful? React with 👍 / 👎.
Summary
This PR enhances the rate limit display to show both GraphQL and REST API limits simultaneously, helping users better understand their API usage - especially useful for enterprise users who have different limits.
Changes
RestRateLimitInfoandCombinedRateLimitInfotypes for REST API rate limitsfetchRestRateLimits()function to query GitHub's REST API/rate_limitendpointDisplay Format
The new format shows:
This is particularly helpful for:
Testing
Summary by CodeRabbit