Running nixpkgs-update (https://nix-community.org/update-bot/) with UPDATE_INFO: ccusage 20.0.6 -> 20.0.17 https://github.com/ccusage/ccusage/releases
attrpath: ccusage
Checking auto update branch...
[version]
[version] generic version rewriter does not support multiple hashes
[rustCrateVersion]
[rustCrateVersion] skipping because derivation has updateScript
[golangModuleVersion]
[golangModuleVersion] Not a buildGoModule package with vendorHash
[npmDepsVersion]
[npmDepsVersion] No npmDepsHash
[updateScript]
[updateScript] Success
[updateScript] this derivation will be built:
/nix/store/8w0b7kxs6wizbrdh9jk4y2j1vg99nspa-packages.json.drv
building '/nix/store/8w0b7kxs6wizbrdh9jk4y2j1vg99nspa-packages.json.drv'...
Going to be running update for following packages:
- ccusage-20.0.6
Press Enter key to continue...
Running update for:
Enqueuing group of 1 packages
- ccusage-20.0.6: UPDATING ...
- ccusage-20.0.6: DONE.
Packages updated!
Diff after rewrites:
diff --git a/pkgs/by-name/cc/ccusage/package.nix b/pkgs/by-name/cc/ccusage/package.nix
index cad32ecb86ea..a32c7505bdb7 100644
--- a/pkgs/by-name/cc/ccusage/package.nix
+++ b/pkgs/by-name/cc/ccusage/package.nix
@@ -28,20 +28,20 @@ let
in
rustPlatform.buildRustPackage (finalAttrs: {
pname = "ccusage";
- version = "20.0.6";
+ version = "20.0.17";
src = fetchFromGitHub {
owner = "ccusage";
repo = "ccusage";
tag = "v${finalAttrs.version}";
- hash = "sha256-uf/FlPprxx4jh74YwjmYMtoIHpTkKrWTLetbNoYiFv4=";
+ hash = "sha256-486iLPRqQVRnKVbVT93D08RTRzd6/h503ckB//24nho=";
};
# The Cargo workspace lives in rust/, not at the repo root.
cargoRoot = "rust";
buildAndTestSubdir = "rust";
- cargoHash = "sha256-izA2Gs5nPmt0zn6/e1xM80vyyQHYKGEUDpUFRpyFiB8=";
+ cargoHash = "sha256-23l/BCCGcZ1i5mFBC6Q+FE7sQRHnPLbU4QoQe7TfoiQ=";
__structuredAttrs = true;
strictDeps = true;
An auto update branch exists with message `ccusage: 20.0.6 -> 20.0.14`. New version is 20.0.17.
The auto update branch does not match or exceed the new version.
Successfully finished processing
[check][nixpkgs-review]
## `nixpkgs-review` result
Generated using [`nixpkgs-review`](https://github.com/Mic92/nixpkgs-review).
Command: `nixpkgs-review --extra-nixpkgs-config '{ allowBroken = false; }'`
Commit: `708e74588d2171df9f3fcd6cd785f988c947a7e3`
---
### `x86_64-linux`
:white_check_mark: 1 package built:
Automatic update generated by [nixpkgs-update](https://github.com/nix-community/nixpkgs-update) tools. This update was made based on information from passthru.updateScript.
meta.description for ccusage is: Analyze coding agent CLI token usage and costs from local data
meta.homepage for ccusage is: https://github.com/ccusage/ccusage
meta.changelog for ccusage is: https://github.com/ccusage/ccusage/releases/tag/v20.0.17
###### Updates performed
- Ran passthru.UpdateScript
###### To inspect upstream changes
###### Impact
Checks done
---
- built on NixOS
- The tests defined in `passthru.tests`, if any, passed
- found 20.0.17 with grep in /nix/store/nylrjhsgjqfaivgax7v0afr55iiw12mm-ccusage-20.0.17
- found 20.0.17 in filename of file in /nix/store/nylrjhsgjqfaivgax7v0afr55iiw12mm-ccusage-20.0.17
---
Rebuild report (if merged into master) (click to expand)
```
4 total rebuild path(s)
2 package rebuild(s)
First fifty rebuilds by attrpath
ccusage
```
Instructions to test this update (click to expand)
---
Either **download from the cache**:
```
nix-store -r /nix/store/nylrjhsgjqfaivgax7v0afr55iiw12mm-ccusage-20.0.17 \
--option binary-caches 'https://cache.nixos.org/ https://nixpkgs-update-cache.nix-community.org/' \
--option trusted-public-keys '
nixpkgs-update-cache.nix-community.org-1:U8d6wiQecHUPJFSqHN9GSSmNkmdiFW7GW7WNAnHW0SM=
cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
'
```
(The nixpkgs-update cache is only trusted for this store-path realization.)
For the cached download to work, your user must be in the `trusted-users` list or you can use `sudo` since root is effectively trusted.
Or, **build yourself**:
```
nix-build -A ccusage https://github.com/r-ryantm/nixpkgs/archive/708e74588d2171df9f3fcd6cd785f988c947a7e3.tar.gz
```
Or:
```
nix build github:r-ryantm/nixpkgs/708e74588d2171df9f3fcd6cd785f988c947a7e3#ccusage
```
After you've downloaded or built it, look at the files and if there are any, run the binaries:
```
ls -la /nix/store/nylrjhsgjqfaivgax7v0afr55iiw12mm-ccusage-20.0.17
ls -la /nix/store/nylrjhsgjqfaivgax7v0afr55iiw12mm-ccusage-20.0.17/bin
```
---
### Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as _failed to build_ independent of the
change, simply because they are already broken on the target branch.
## `nixpkgs-review` result
Generated using [`nixpkgs-review`](https://github.com/Mic92/nixpkgs-review).
Command: `nixpkgs-review --extra-nixpkgs-config '{ allowBroken = false; }'`
Commit: `708e74588d2171df9f3fcd6cd785f988c947a7e3`
---
### `x86_64-linux`
:white_check_mark: 1 package built:
---
###### Maintainer pings
cc @thrix for [testing](https://github.com/nix-community/nixpkgs-update/blob/main/doc/nixpkgs-maintainer-faq.md#r-ryantm-opened-a-pr-for-my-package-what-do-i-do).
> [!TIP]
> As a maintainer, if your package is located under `pkgs/by-name/*`, you can comment **`@NixOS/nixpkgs-merge-bot merge`** to automatically merge this update using the [`nixpkgs-merge-bot`](https://github.com/NixOS/nixpkgs/blob/master/ci/README.md#nixpkgs-merge-bot).
HTTPError (HttpExceptionRequest Request {
host = "api.github.com"
port = 443
secure = True
requestHeaders = [("User-Agent","github.hs/0.28.0.1"),("Accept","application/vnd.github.v3+json"),("Authorization","")]
path = "/repos/nixos/nixpkgs/pulls"
queryString = "?state=open&sort=created&direction=desc&head=r-ryantm%3Aauto-update%2Fccusage"
method = "GET"
proxy = Nothing
rawBody = False
redirectCount = 10
responseTimeout = ResponseTimeoutDefault
requestVersion = HTTP/1.1
proxySecureMode = ProxySecureWithConnect
}
(StatusCodeException (Response {responseStatus = Status {statusCode = 403, statusMessage = "Forbidden"}, responseVersion = HTTP/1.1, responseHeaders = [("Content-Length","535"),("X-RateLimit-Limit","5000"),("X-RateLimit-Remaining","0"),("X-RateLimit-Reset","1783991441"),("X-RateLimit-Used","5000"),("X-RateLimit-Resource","core"),("Date","Tue, 14 Jul 2026 00:58:16 GMT"),("Content-Type","application/json; charset=utf-8"),("X-GitHub-Media-Type","github.v3; format=json"),("Access-Control-Expose-Headers","ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset"),("Access-Control-Allow-Origin","*"),("Strict-Transport-Security","max-age=31536000; includeSubdomains; preload"),("X-Frame-Options","deny"),("X-Content-Type-Options","nosniff"),("X-XSS-Protection","0"),("Referrer-Policy","origin-when-cross-origin, strict-origin-when-cross-origin"),("Content-Security-Policy","default-src 'none'"),("Vary","Accept-Encoding, Accept, X-Requested-With"),("Server","github.com"),("X-GitHub-Request-Id","C76E:48BB:2974D1:284461:6A5589A7")], responseBody = (), responseCookieJar = CJ {expose = []}, responseClose' = ResponseClose, responseOriginalRequest = Request {
host = "api.github.com"
port = 443
secure = True
requestHeaders = [("User-Agent","github.hs/0.28.0.1"),("Accept","application/vnd.github.v3+json"),("Authorization","")]
path = "/repos/nixos/nixpkgs/pulls"
queryString = "?state=open&sort=created&direction=desc&head=r-ryantm%3Aauto-update%2Fccusage"
method = "GET"
proxy = Nothing
rawBody = False
redirectCount = 10
responseTimeout = ResponseTimeoutDefault
requestVersion = HTTP/1.1
proxySecureMode = ProxySecureWithConnect
}
}) "{\n\t\"message\": \"API rate limit exceeded for user ID 37933096. If you reach out to GitHub Support for help, please include the request ID C76E:48BB:2974D1:284461:6A5589A7 and timestamp 2026-07-14 00:58:16 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}\n"))