gh-glance 0.12.0 → 0.13.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +78 -1
- package/index.mjs +583 -183
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,81 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.13.1] - 2026-09-07
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
|
|
14
|
+
- **Upgrading from 0.12.0 no longer leaves every pane unable to coordinate.**
|
|
15
|
+
0.13.0 moved the coordination protocol from version 3 to 5 but could migrate
|
|
16
|
+
only version 1, and unlike earlier protocol changes it kept the state file in
|
|
17
|
+
the same place. A pane upgrading therefore read its own file, could neither
|
|
18
|
+
validate nor migrate it, and reported unusable coordination state on every
|
|
19
|
+
launch from then on -- the read happens before any write, so nothing ever
|
|
20
|
+
replaced the file. Versions 2, 3 and 4 now upgrade in place, keeping the
|
|
21
|
+
unsettled charges and observed budgets they hold. A file from a *newer*
|
|
22
|
+
protocol is still refused, which is the recoverable direction: the newer build
|
|
23
|
+
is still there to rewrite it.
|
|
24
|
+
|
|
25
|
+
- **Diagnostics and manual actions no longer pace as though they spent their
|
|
26
|
+
worst case.** Work is admitted against the most it could cost, and the
|
|
27
|
+
difference is returned once the real cost is known. That return was wired
|
|
28
|
+
into only one of the two settlement paths, so every `--doctor` probe and
|
|
29
|
+
manual operation kept paying for capacity it had not used, delaying later
|
|
30
|
+
requests for no reason.
|
|
31
|
+
|
|
32
|
+
## [0.13.0] - 2026-09-06
|
|
33
|
+
|
|
34
|
+
### Changed
|
|
35
|
+
|
|
36
|
+
- **Upgrading requires restarting older panes, and may wait for a quota reset.**
|
|
37
|
+
The coordination protocol moved from version 3 to 5. A pane still running an
|
|
38
|
+
older build holds a lease this one refuses to coordinate against, so it must
|
|
39
|
+
be closed; if that pane left API charges it never settled, admission waits for
|
|
40
|
+
the affected quota window to reset before spending against a counter it cannot
|
|
41
|
+
account for. Both are conservative on purpose, and both clear on their own.
|
|
42
|
+
- **A slow or failed budget observer no longer holds up the other resource.**
|
|
43
|
+
Core and GraphQL are claimed, published and retried independently. What still
|
|
44
|
+
couples them is the shared transport permit and any account-wide hold, which
|
|
45
|
+
are enforced where they belong.
|
|
46
|
+
|
|
47
|
+
### Added
|
|
48
|
+
|
|
49
|
+
- **Secondary rate limits back off on a bounded ladder.** A `Retry-After` the
|
|
50
|
+
server supplies is honoured exactly, in seconds or as an HTTP date, and
|
|
51
|
+
concurrent holds merge by maximum so a shorter error cannot shorten a longer
|
|
52
|
+
hold. Without a supplied deadline the client waits 60, 120, 240, 480 then 900
|
|
53
|
+
seconds by consecutive throttle; that cap applies only to the delay gh-glance
|
|
54
|
+
chooses, never to one the server asked for. After five consecutive throttles
|
|
55
|
+
it stops choosing and waits for an explicit refresh.
|
|
56
|
+
- **A run of manual refreshes yields a turn to a waiting tab.** Manual work
|
|
57
|
+
still outranks background polling, but after three consecutive grants an
|
|
58
|
+
active tab that has been waiting goes next, so holding `r` can no longer
|
|
59
|
+
starve the rest of the dashboard.
|
|
60
|
+
|
|
61
|
+
### Fixed
|
|
62
|
+
|
|
63
|
+
- **A permission error no longer pauses every pane.** A 403 carrying no
|
|
64
|
+
rate-limit headers and no secondary-limit marker is a permission failure, not
|
|
65
|
+
a throttle. It previously held the shared transport, so one repository the
|
|
66
|
+
token could not read stalled every pane using that account.
|
|
67
|
+
- **The external-use estimator can come back down.** When other clients were
|
|
68
|
+
busy, gh-glance would raise its estimate of their share and then keep pacing
|
|
69
|
+
against it: each sampling window closed on publication even when the sample
|
|
70
|
+
was too small to reconcile, discarding the local accumulation that would
|
|
71
|
+
eventually have made one. A window now closes only when it actually
|
|
72
|
+
reconciles, and a new quota window starts from no assumed external use rather
|
|
73
|
+
than inheriting the previous window's ratio.
|
|
74
|
+
- **A request that cost nothing no longer paces as though it had.** Work is
|
|
75
|
+
paced by the cost it reserves, which is a worst case. A conditional request
|
|
76
|
+
answered `304` spends nothing, and cancelled work spends nothing at all -- the
|
|
77
|
+
unused pacing is now returned instead of leaving the next request waiting out
|
|
78
|
+
a slot nobody used.
|
|
79
|
+
- **Older coordination files are readable again.** The version 3 to 4 change
|
|
80
|
+
altered the file's shape, and the legacy reader recognised only the version
|
|
81
|
+
number, so every file an older pane had actually written was rejected as
|
|
82
|
+
corrupt -- exactly the file the restart boundary has to read to see that an
|
|
83
|
+
older pane is still running.
|
|
84
|
+
|
|
10
85
|
## [0.12.0] - 2026-09-06
|
|
11
86
|
|
|
12
87
|
### Added
|
|
@@ -851,7 +926,9 @@ engineering, security, QA and UX. What follows is what changed as a result.
|
|
|
851
926
|
- The `main` field from `package.json`. It advertised the file as importable,
|
|
852
927
|
but importing it took over the terminal or exited the host process.
|
|
853
928
|
|
|
854
|
-
[Unreleased]: https://github.com/juan294/gh-glance/compare/v0.
|
|
929
|
+
[Unreleased]: https://github.com/juan294/gh-glance/compare/v0.13.1...HEAD
|
|
930
|
+
[0.13.1]: https://github.com/juan294/gh-glance/compare/v0.13.0...v0.13.1
|
|
931
|
+
[0.13.0]: https://github.com/juan294/gh-glance/compare/v0.12.0...v0.13.0
|
|
855
932
|
[0.12.0]: https://github.com/juan294/gh-glance/compare/v0.11.2...v0.12.0
|
|
856
933
|
[0.11.2]: https://github.com/juan294/gh-glance/compare/v0.11.1...v0.11.2
|
|
857
934
|
[0.11.1]: https://github.com/juan294/gh-glance/compare/v0.11.0...v0.11.1
|