Skip to content

pullbar v0.4.2

Choose a tag to compare

@github-actions github-actions released this 27 Sep 21:03
· 10 commits to main since this release
9def489

Changes since v0.4.1.

Ask for 100 search results per page instead of 50 (#10)

By @christhomas, merged 2026-09-27.

For lucaspal#18. This PR is on my fork first, to try the change in my own build; it will go upstream once #15 is merged there.

Searches asked for first: 50, so more than 50 matching pull requests needed a second request on every refresh. A real account with 67 authored pull requests needed 2 pages for that search. 100 is GitHub's maximum page size, and a search costs the same for 100 results as for 50 (measured: 1 point each). Busy accounts get half the requests, at no extra cost. The four-page cap now covers 400 pull requests per search instead of 200.

  • GitHubClient.searchPullRequests: first: 100, and the doc comment updated.
  • The test now expects 100, and the "wrong page size" mutation now flips 100 back to 50.
  • The README's data-fetching section says 100 per page and 400 per search.

swift test: 99 tests pass.

Summary by CodeRabbit

  • New Features
    • Searches can now retrieve up to 400 pull requests per source per refresh, up from 200.

Group pull requests by owner, with the owner in bold (#11)

By @christhomas, merged 2026-09-27.

Each section now groups pull requests by owner (the user or organisation, e.g. acme in acme/api):

  • A bold subheading per owner, with that owner's rows indented underneath.
  • The owner in bold in each row's details line.
  • Time-first ordering: groups are ordered by their most recently updated pull request, ties by owner name, and rows within a group are newest first.

The grouping is a pure function, Inbox.groupedByOwner, backed by the new PullRequest.owner. The showcase fixture now uses four made-up owners so the grouping is visible. Tests cover the owner, group order (including ties), subheadings and indentation, and the bold owner. swift test: 104 pass. All 5 new mutation entries are caught.

Summary by CodeRabbit

  • New Features
    • Pull requests are now grouped under repository-owner headings in the menu. Groups are ordered by the most recently updated pull request, with owner names used to break ties.
    • Within each group, pull requests appear newest first. Owner names are highlighted in the headings and in each pull-request row, while the remaining details stay visible, making it easier to scan entries by owner.

Show how much of the GitHub API budget pullbar has used (#12)

By @christhomas, merged 2026-09-27.

For lucaspal#21. This PR is on my fork first; it will go upstream once #15 is merged there.

  • The Refresh line shows API 627 of 5,000 used, resets 14:05. When less than 10% is left it turns orange ("API budget low"), and the menu bar tooltip mentions it too.
  • The Refresh line's tooltip shows what the last refresh cost, e.g. "2 API points in 1 request", so #17 and lucaspal#18 can be measured directly.
  • A clear error at the limit: a request refused because the budget is used up (HTTP 403 with x-ratelimit-remaining: 0, HTTP 429, or a RATE_LIMITED GraphQL error) now shows "GitHub API limit reached. It resets at 14:05."
  • Fixes "Updated in 0 seconds" right after a refresh: it now reads "Updated just now".

The live query was checked against GitHub: rateLimit { limit remaining used cost resetAt }. swift test: 115 pass (16 new). The 9 new mutation entries are all caught, including the edge the first version of the tests missed.