Parses each completion with the shell it targets, and checks none of them
names a store path: postFixup generates them by running the binary, whose
$0 lands in the output, so it copies the binary somewhere called
scala-cli and puts that on PATH first. Nothing noticed if that regressed.
Assisted-by: Claude Code (Claude Opus 5)
The binary generates fish completions too, alongside the bash and zsh ones
already installed here; it accepts no other shell.
Assisted-by: Claude Code (Claude Opus 5)
Taking scala-cli as a function argument meant
scala-cli.overrideAttrs (...).tests.version built and passed against the
unmodified top-level package, so the test could never fail for an
override.
Assisted-by: Claude Code (Claude Opus 5)
Replaces the script with the one bloop grew, which is the same script:
shellcheck runs over it at build time, it refuses to downgrade, it fails
loudly when the release stops shipping an asset it needs, it writes
sources.json through a temporary file, and it supports the `commit`
updateScript feature.
Like bloop's it takes no arguments. The repository moves into sources.json
so that the release URL is written down once, and the sections of assets
to refresh are read from the file rather than passed in, which is what
lets one script serve this package and bloop, whose sources.json also has
a completions section.
Assisted-by: Claude Code (Claude Opus 5)
The script bumped the version in package.nix before building, so any build
failure other than the expected hash mismatch left the tree bumped and
unbuildable. It now restores the file unless the whole run succeeds.
It also refuses to downgrade, checks that the tag it got is plausible
rather than writing "null" in when the API rate-limits it, honours
$UPDATE_NIX_ATTR_PATH, keeps its logging on stderr, and supports the
`commit` updateScript feature. Moving it to writeShellApplication means
shellcheck runs over it at build time.
The attribute path is the only thing it is told: the file to rewrite comes
from meta.position and the GitHub repository from meta.changelog.
Assisted-by: Claude Code (Claude Opus 5)
The jars come prebuilt out of Maven Central, so sourceProvenance is
binaryBytecode rather than the fromSource default.
Assisted-by: Claude Code (Claude Opus 5)
The two checked the same thing. testers.testVersion on
finalAttrs.finalPackage keeps the coverage -- ofborg and reviewers run
passthru.tests -- without re-running the check on every local rebuild,
and tests overrides rather than a re-called package.
Assisted-by: Claude Code (Claude Opus 5)
Renames the sha256 key to hash and converts the values, matching current
nixpkgs style.
The fetched artifacts are unchanged, so the store path stays the same.
Assisted-by: Claude Code (Claude Opus 5)
after the swayfx update, 0_4 is not needed anymore
thus we can also drop the 0_5 alias and move the package back to
pkgs/by-name
next time a package needs an old version, do the version override in the
package that needs it instead of moving scenefx out of pkgs/by-name
Diff: https://github.com/scionproto/scion/compare/v0.12.0...v0.15.1
- Exclude private/underlay/ebpf from build, which requires development
build mode.
- Set __structuredAttrs
- Set __darwinAllowLocalNetworking, for tests
- Upstream adjusts the test suite with longer timeouts¹ and excluding a
time-sensitive test (TestAcceptLoopParallelism²) when running in CI, which
it detects by checking the environment for the presence of the CI
environment variable. Parameterize this via ciMode attr, which the
caller can override if they wish to build and run the tests locally.
¹: bb10ec5e2e/pkg/grpc/dialer_test.go (L128-L130)
²: bb10ec5e2e/pkg/snet/squic/net_test.go (L43-L46)
Co-authored-by: phanirithvij <phanirithvij2000@gmail.com>
I do not have the time or energy to handle all of this. Let alone my
GitHub notifications. This PR is in good faith and does not refer to
anything community-related. I will keep on doing nixpkgs work but the
pile of shame (let's call it that) needs to be cleaned. Thanks to
@mweinelt which whom I had a discussion and who made me aware of this
issue.
The version check has been dead since e66d3c1d56 ("scalafmt:
deprecate phases and use pname&version"), which renamed checkPhase to
installCheckPhase and dropped the doCheck = true that had been enabling
it, without adding the corresponding doInstallCheck = true. runPhase
gates each phase on its own flag, so the check has been silently skipped
ever since.
Restore it, so a version/outputHash drift from update.sh fails the build
instead of passing silently.