Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
142 commits
Select commit Hold shift + click to select a range
5b57904
Update `harmonia`
Ericson2314 May 6, 2026
eff1d38
Deduplicate various cargo output hashes
Ericson2314 May 6, 2026
9448f2f
Merge pull request #1716 from obsidiansystems/update-harmonia
Ericson2314 May 6, 2026
d474395
hydra-tests: Extract `ProcessGroup` and shared test helpers
Ericson2314 May 7, 2026
021ba0f
Merge pull request #1718 from obsidiansystems/process-group-cleanup
Ericson2314 May 7, 2026
5ca3f74
Reformat markdown to use semantic line breaks
Ericson2314 May 7, 2026
e352faa
Merge pull request #1719 from obsidiansystems/sembr-manual
Ericson2314 May 7, 2026
d845dda
Fix unit tests
Ericson2314 May 8, 2026
8e79a08
fix(queue-runner): parse `buildproducts.path` as store path + suffix
hamishmack Apr 24, 2026
11d3345
fix: re-check step outputs on re-encounter to unstick cached builds
angerman Apr 15, 2026
9aa4863
fix(binary-cache): use `bzip2` (not `bz2`) for narinfo compression name
Ericson2314 May 8, 2026
2e5c6bb
Merge pull request #1720 from obsidiansystems/misc-fixes
Ericson2314 May 8, 2026
a4f85b8
Move `architecture.md` into the manual and add to `SUMMARY.md`
Ericson2314 May 9, 2026
0f528e7
Update architecture doc to reflect current codebase
Ericson2314 May 9, 2026
cf184c6
Merge pull request #1721 from NixOS/doc-arch
Ericson2314 May 9, 2026
767dc37
Update harmonia to `5eabb8d7`
Ericson2314 May 9, 2026
9afc0a4
Extract `hydra-proto` crate for shared gRPC code generation
Ericson2314 May 9, 2026
da6bbb4
Merge pull request #1722 from obsidiansystems/misc-cleanups
Ericson2314 May 10, 2026
616e947
Split `.proto` into generic Nix store types and Hydra-specific types
Ericson2314 May 10, 2026
e3471e1
Merge pull request #1723 from obsidiansystems/misc-cleanups
Ericson2314 May 10, 2026
36186ee
Add `cargo-nextest` to dev shell
Ericson2314 May 10, 2026
d230a9b
Cargo update
Ericson2314 May 10, 2026
a3b69b7
Replace local `NarInfo` with `harmonia-store-nar-info`
Ericson2314 May 10, 2026
7c77801
Merge pull request #1724 from obsidiansystems/misc-cleanups
Ericson2314 May 10, 2026
c45503c
Remove harmonia re-exports from `nix-utils`
Ericson2314 May 10, 2026
50d08d8
Merge pull request #1725 from obsidiansystems/no-ffi-harmonia-reexports
Ericson2314 May 10, 2026
ac3bf83
Use structured proto types for `Hash`, `Signature`, and `ContentAddress`
Ericson2314 May 10, 2026
2d82259
Merge pull request #1726 from obsidiansystems/more-structured-proto
Ericson2314 May 10, 2026
196d015
Split NixOS tests into separate files
Ericson2314 May 11, 2026
7101761
Merge pull request #1727 from obsidiansystems/split-nixos-tests
Ericson2314 May 11, 2026
fc5eb9f
Add NixOS end-to-end S3 integration test
Ericson2314 May 11, 2026
9ca71cc
Merge pull request #1728 from obsidiansystems/nar-listing-nixos-test
Ericson2314 May 12, 2026
a5c0893
Use harmonia for NAR listings instead of Nix C++ FFI
Ericson2314 May 11, 2026
de5c31e
Merge pull request #1729 from obsidiansystems/rust-nar-listings
Ericson2314 May 12, 2026
289ad86
Cargo update
Ericson2314 May 12, 2026
8ee9c2d
Merge pull request #1730 from obsidiansystems/cargo-update
Ericson2314 May 12, 2026
a2e7155
Add Rust crate dependency diagram to architecture docs
Ericson2314 May 12, 2026
4186862
Merge pull request #1731 from obsidiansystems/arch-diagram
Ericson2314 May 12, 2026
c313f94
Remove `nix-utils` dependency from `shared` crate
Ericson2314 May 12, 2026
2200113
Merge pull request #1734 from obsidiansystems/small-cleanup-shared
Ericson2314 May 12, 2026
1db280c
Rename `shared` crate to `nix-support`
Ericson2314 May 12, 2026
89432a9
Merge pull request #1735 from obsidiansystems/name-shared
Ericson2314 May 12, 2026
c162f39
Update harmonia
Ericson2314 May 12, 2026
a742e33
Replace `nix_utils::PathInfo` with harmonia's `UnkeyedValidPathInfo`,
Ericson2314 May 13, 2026
28bba95
Remove `OutputNameOnly` from proto, error on missing path info
Ericson2314 May 13, 2026
edc9aff
Merge pull request #1736 from obsidiansystems/dedup-path-info-struct
Ericson2314 May 13, 2026
988c1f1
Merge pull request #1737 from obsidiansystems/no-name-only
Ericson2314 May 13, 2026
402cf95
Improve and more widely use `nix-support`
Ericson2314 May 12, 2026
c003cf4
Merge pull request #1738 from obsidiansystems/nix-support-below-db
Ericson2314 May 13, 2026
7c5e5e0
Have `start_queue_runner` return a `ProcessGroup`
Ericson2314 May 14, 2026
e453f52
Make `insert_build_product` and `insert_build_metric` `pub(crate)`
Ericson2314 May 14, 2026
80477f2
Merge pull request #1739 from obsidiansystems/misc-fixes
Ericson2314 May 14, 2026
62adcc6
Remove `nix_utils::parse_store_path` and `is_subpath`
Ericson2314 May 14, 2026
8b17c31
Merge pull request #1740 from obsidiansystems/slim-nix-utils
Ericson2314 May 14, 2026
1dfca99
Simplify `query_requisites` and the `FetchRequisites` gRPC RPC
Ericson2314 May 14, 2026
51d9bd7
Clean up `InternalPathInfo` FFI struct
Ericson2314 May 14, 2026
947f288
Merge pull request #1741 from obsidiansystems/simplify-file-passing
Ericson2314 May 14, 2026
12913f7
Merge pull request #1742 from obsidiansystems/ffi-path-info-cleanup
Ericson2314 May 14, 2026
2c321ab
Switch from legacy export/import to new custom gRPC protocol
Ericson2314 May 14, 2026
ac5f1a6
Merge pull request #1743 from obsidiansystems/better-store-object-str…
Ericson2314 May 14, 2026
f0df783
Use NAR sizes to split the decompressed stream in Rust
Ericson2314 May 15, 2026
053b579
Merge pull request #1744 from obsidiansystems/nar-boundary
Ericson2314 May 15, 2026
6c7b8d6
hydra-eval-jobs: use nix-eval-jobs's --select rather --expr
Mic92 Nov 11, 2025
c27d8ba
Replace `harmonia-store-core` with its split-out successor crates
Ericson2314 May 16, 2026
eb112f3
Merge pull request #1746 from obsidiansystems/newer-harmonia
Ericson2314 May 17, 2026
abb464d
Merge pull request #1747 from NixOS/dogfood
Mic92 May 17, 2026
666e7ab
GitlabStatus: update status for cached builds
jmbaur May 18, 2026
c62bc6d
GitlabStatus: remove extraneous debug logs
jmbaur May 18, 2026
5cfae11
Split content-addressed `basic.t` into `basic.t` and `early-cutoff.t`
Ericson2314 May 18, 2026
8a87e52
Default to 2 retries for all tests
Ericson2314 May 18, 2026
cfcad9e
Merge pull request #1751 from obsidiansystems/split-ca-tests
Ericson2314 May 18, 2026
823d2aa
Use `u32` for scheduling shares
Ericson2314 May 18, 2026
c347635
Make note of dead code TODO
Ericson2314 May 18, 2026
99c5a12
`nix_utils::BaseStore`: return `Result` from all fallible methods
Ericson2314 May 18, 2026
a13206d
Merge pull request #1752 from obsidiansystems/more-retry
Ericson2314 May 18, 2026
1396053
Merge pull request #1750 from obsidiansystems/shares-infallible
Ericson2314 May 18, 2026
e369455
Merge pull request #1753 from obsidiansystems/ffi-result
Mic92 May 19, 2026
366701f
Merge pull request #1749 from jmbaur/gitlabstatus-publish-cached
Ericson2314 May 19, 2026
0230b33
hydra-tests: Add basic test for logging
artemist May 19, 2026
5a931f8
build(deps): bump nixpkgs from `41a7bd5` to `f58ee5f`
dependabot[bot] May 20, 2026
dfede7e
build(deps): bump nix from `24a0724` to `2208f98`
dependabot[bot] May 20, 2026
a0f65a9
Merge pull request #1758 from NixOS/dependabot/nix/nix-2208f98
Ericson2314 May 20, 2026
41b6fd4
Merge pull request #1757 from NixOS/dependabot/nix/nixpkgs-f58ee5f
Ericson2314 May 20, 2026
b1ff88f
Merge pull request #1756 from obsidiansystems/logging-test
Ericson2314 May 20, 2026
404db91
nix-utils: use CA-computed hash for ca_fixed test output path
amaanq May 19, 2026
ff5fad2
Replace `anyhow` with structured error types in support crates
Ericson2314 May 19, 2026
b25de0c
Merge pull request #1755 from obsidiansystems/error-types
Ericson2314 May 20, 2026
a9c6ab5
chore: cleanup clippy lints
Conni2461 May 21, 2026
586d364
Merge pull request #1760 from helsinki-systems/fix/lints
Ericson2314 May 21, 2026
0f2b4e1
build(deps): bump nix from `2208f98` to `8294f1c`
dependabot[bot] May 26, 2026
26df1bc
remove some uses of to_string_lossy
artemist May 27, 2026
00cf639
hydra-queue-runner: Store log path as PathBuf
artemist May 27, 2026
a6e5fed
Merge pull request #1766 from obsidiansystems/no-to-string-lossy
Ericson2314 May 27, 2026
4ffd58f
Bump harmonia
Ericson2314 May 27, 2026
93e0ed6
Merge pull request #1767 from NixOS/bump-harmonia
Ericson2314 May 27, 2026
0133655
hydra-proto: add `Algorithm` `From` impls, simplify Hash conversions
Ericson2314 May 27, 2026
e7ee025
Merge pull request #1768 from NixOS/more-proto-from-try-from
Ericson2314 May 27, 2026
158cb37
Merge pull request #1764 from NixOS/dependabot/nix/nix-8294f1c
Ericson2314 May 28, 2026
6758c5f
flake: bump nixpkgs to release-25.11
amaanq May 29, 2026
40087bb
Merge pull request #1776 from obsidiansystems/nixpkgs-release-25.11
Ericson2314 May 29, 2026
1026d6a
feat(queue-runner): implement concurrent build injection and faster r…
Conni2461 May 21, 2026
6afb413
binary-cache: accept more debug ids
artemist May 29, 2026
3ccd938
Merge pull request #1759 from helsinki-systems/feat/concurrent_build_…
Ericson2314 May 29, 2026
850e32d
Merge pull request #1774 from obsidiansystems/build-id-fix
Conni2461 Jun 2, 2026
4fbc041
binary-cache: remove String::from_utf8_lossy
artemist Jun 2, 2026
fa24063
Merge pull request #1778 from obsidiansystems/no-from-utf8-lossy
Ericson2314 Jun 2, 2026
865aa78
deps: bump harmonia
amaanq Jun 3, 2026
f6a4ad2
Print error traceback in JobFailure
artemist Jun 3, 2026
370bb9d
Merge pull request #1780 from obsidiansystems/job-failure-anyhow
Conni2461 Jun 3, 2026
da0075f
Merge pull request #1779 from obsidiansystems/bump-harmonia
Ericson2314 Jun 3, 2026
2e60c24
Remove `nix-utils` C++ FFI, use harmonia daemon protocol
Ericson2314 May 9, 2026
c119aa0
build(deps): bump treefmt-nix from `790751f` to `db94781`
dependabot[bot] Jun 4, 2026
bfd8d8d
Merge pull request #1745 from obsidiansystems/daemon-protocol-not-ffi
Ericson2314 Jun 5, 2026
0ffc1cd
hydra-tests: pump nix daemon logs via `ProcessGroup`
Ericson2314 Jun 5, 2026
ba74c0b
Merge pull request #1785 from obsidiansystems/daemon-std-stream
Ericson2314 Jun 5, 2026
395c32a
Merge pull request #1782 from NixOS/dependabot/nix/treefmt-nix-db94781
Ericson2314 Jun 5, 2026
a13416d
hydra-builder: share a single `ConnectionPool` across builds
Ericson2314 Jun 5, 2026
fbb64ea
Use daemon protocol rather than shelling out to build derivation
Ericson2314 May 16, 2026
14dc1bd
flake: bump nixpkgs to 26.05
artemist Jun 5, 2026
421eb4e
Merge pull request #1786 from obsidiansystems/proper-connection-pools
Ericson2314 Jun 8, 2026
510566c
Merge pull request #1771 from obsidiansystems/daemon-protocol-build
Ericson2314 Jun 8, 2026
5a44f6f
Send force-resolved `BasicDerivation` to builder via protobuf
Ericson2314 May 8, 2026
68da3ef
Use thiserror for some error types in hydra-builder
artemist May 26, 2026
b6bf74e
tracing: wire up eyre + tracing-error for error reporting
amaanq May 27, 2026
5c42b5d
builder: give State::new typed init errors
amaanq May 27, 2026
4a20f6b
builder: report fatal errors through color-eyre at the boundary
amaanq May 27, 2026
382bda1
Merge pull request #1784 from obsidiansystems/nixpkgs-bump
Ericson2314 Jun 9, 2026
36575bc
Merge pull request #1772 from obsidiansystems/fix-closures
Ericson2314 Jun 9, 2026
831b824
Merge pull request #1769 from obsidiansystems/error-reporting-builder
Ericson2314 Jun 9, 2026
8456a60
queue-runner: replace anyhow with typed errors
amaanq May 27, 2026
6a3de0c
queue-runner: report fatal errors through color-eyre at the boundary
amaanq May 27, 2026
35d7ed6
hydra-builder: Replace anyhow with eyre
artemist May 28, 2026
3036011
Merge pull request #1775 from obsidiansystems/error-handling
Ericson2314 Jun 10, 2026
2210c27
chore: cleanup clippy lints
Mic92 Jun 11, 2026
f69a55c
Merge pull request #1791 from Mic92/clippy-cleanup
Ericson2314 Jun 11, 2026
6110dd0
Fix precedence issue in Hydra API
mweinelt Jun 17, 2026
13c19e1
Merge pull request #1800 from NixOS/server-api-precedence-issue
Ericson2314 Jun 17, 2026
a81000c
Skip the part of the early-cutoff test that fails intermittently
Ericson2314 Jun 17, 2026
c9a5ba6
Merge pull request #1801 from NixOS/skip-is-cached
Mic92 Jun 17, 2026
cabacf2
Bump Harmonia
Ericson2314 Jun 17, 2026
d5715af
binary-cache: read narinfos with harmonia's parser
Mic92 Jun 11, 2026
6f9fd52
Merge pull request #1793 from Mic92/narinfo-store-path
Ericson2314 Jun 24, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
# Editor backup files
*~

# Claude Code local settings
.claude

# Nix dev shell
/.direnv/

Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

This file was deleted.

This file was deleted.

9 changes: 9 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Contributing to Hydra

## Formatting Markdown

We use [semantic line breaks](https://sembr.org/) in all Markdown files.
This means each sentence (or independent clause) should start on its own line.

Semantic line breaks make diffs easier to read and review, since a change to one sentence won't reflow an entire paragraph.
They also make it easier to rearrange and edit prose.
Loading