Commit graph

188 commits

Author SHA1 Message Date
de26625157 (zilch lang go): bump Go version
Also explicitly disable Cgo, as that is necessary for newer versions of
Go.

Change-Id: I24af36efbe5e2e4b873553c11798bbfa6a6a6964
2025-11-24 13:16:35 +00:00
57f5e866c2 (zilch statusbar): fix activity glitchiness
Change-Id: Ia8f951c9708a632a5d7b4340cf210d9a6a6a6964
2025-11-24 13:16:08 +00:00
66fa24c69d (zilch magic): Copy settings from primary daemon connections
This ensures the CA build logic won't substitute if the main daemon
link wouldn't either.

Change-Id: I3ac2fd91bc2158e750d9ace5890d47866a6a6964
2025-11-24 13:14:23 +00:00
83993d7739 zilch-cli-ninja: Use the logger
Change-Id: I4cfcd8495d05500b14ba4c9b39726bc86a6a6964
2025-11-21 14:39:52 +00:00
c4ec32eac3 (zilch nix daemon): generate new logger instance per startWorking
In the case of CA handling, a large quantity (32+) of daemon
connections may exist at once. Handling this with one single derivation
build counter is counterintuitive, and is why the Ninja CLI did not yet
use the counter.

Change-Id: Ia88b4f014ae8df8b1a900b881ac821ff6a6a6964
2025-11-21 14:37:15 +00:00
222b0eb5a3 (zilch statusbar): Fix resilience during shutdown
When the (current-error-port) is closed, other threads in the middle
of using the port are likely to error out with a "port is closed"
error. When this occurs, the Chicken Scheme runtime will either
deadlock (when this happens on the output port), or worse, _hang_.
As the barf procedure usess the current error port, it itself hits this
same issue.

We can't perfectly protect against this, as there's no mutex on the current
output/error port; but we can improve the chances of hitting it massively,
to the point where a simple program won't hit the deadlock.

Change-Id: I3ccec0073b375ca21e8b46861c2f8c146a6a6964
2025-11-21 14:33:36 +00:00
02045177dd (zilch lang go): pin Go version
Newer Go versions need a different bootstrap.

Change-Id: I8545d53d1a0c32dca75c8d150415724d6a6a6964
2025-11-21 14:32:31 +00:00
1247097de2 core, (zilch lang rust): fix egg definitions
This is enough to make them all compile under native `chicken-install',
as opposed to Nix-only.

Change-Id: I40e480f0b98be40aaf6cc0fe6f0eedc26a6a6964
2025-11-19 12:39:12 +00:00
56b114ef2c support building with chicken-install too
Change-Id: I47510ca9d5892f1def55ab14f610ba796a6a6964
2025-11-19 12:25:55 +00:00
933b942a62 (zilch planner): drop
Turns out this idea was kind of a dead end.

Change-Id: Id90b2249191ad66b0691471aa1721d726a6a6964
2025-11-14 13:13:33 +00:00
edbdf48a5a (zilch lang rust): call yj inside nix
Change-Id: I3bc75045534ef524ca2a8a2df290e2876a6a6964
2025-11-14 13:01:04 +00:00
d97a24bf1a fix runCommandNoCC deprecation warning
Change-Id: I7f44f4762c8c3ba2bbe684acd7ba75186a6a6964
2025-11-14 13:01:04 +00:00
3e23769348 (zilch lang ninja): document incremental build
Change-Id: I6a6a696472806049b5ecab203487254f32a716b7
2025-11-14 13:01:04 +00:00
0036f464ac (zilch lang ninja nixpkgs): Properly handle .so SHSYM
Change-Id: I6a6a696428c5bfcee09a65d45939a3aa145afdad
2025-11-14 13:01:04 +00:00
86e07faa8a (zilch lang ninja nixpkgs): misc fixes
Change-Id: I6a6a6964260d2be34c1b70aad431018ce37dca26
2025-11-14 13:01:04 +00:00
a57b991013 (zilch lang ninja build): add "may fail" to edge-ref
Change-Id: I6a6a69642d0f1daf57c0dee4a0291595f1c13cb2
2025-11-14 13:01:04 +00:00
5485b0f4ce zilch-cli-ninja: make source' and diff' operate on rewrites
Change-Id: I6a6a69644e8984ec8400e13928c8ac0e14526ad1
2025-11-14 13:01:04 +00:00
cdee2291fb zilch-cli-ninja: Support looking at subprojects
Change-Id: I6a6a6964150b0d9ea1767c815eeea23c3d7f3d02
2025-11-14 13:01:04 +00:00
3a6e716a5e (zilch ninja): resolve depfile and source overrides relative to zilch file
Change-Id: I6a6a6964b712289cfd408a02f3b6951e1de53e97
2025-11-14 13:01:04 +00:00
0023f3def8 (zilch lang ninja): Support rewriting derivation inputs
This lets incremental Ninja builds depend on other incremental Ninja
builds.

Change-Id: I6a6a6964ef300cae2e180970048c8a4881c88e19
2025-11-14 13:01:04 +00:00
c1c606ee0b (zilch lang ninja): consider .hpp to be headers
Change-Id: I6a6a6964feb764a70916d87bc8a4029b4ae92e80
2025-11-14 13:01:04 +00:00
42ea5fd576 (zilch lib rewrite): introduce bytevector/string rewrite helper
Change-Id: I6a6a69645a253c8bc0cfd0919c280c20a6404c1e
2025-11-14 13:01:04 +00:00
8e711a4b0b (zilch lang ninja build): add support for secondary VFS roots
These are used for implementing cross-project incremental builds.
2025-11-14 13:01:04 +00:00
7acb3005f8 (zilch lang ninja build): Remove base-path logic
This replaces it by just using the existing copy logic.
Removing the base-path logic makes it easier to add
non-build-dir-rooted files.

Change-Id: I6a6a6964ef300cae2e180970048c8a4881c88e19
2025-11-14 13:01:04 +00:00
feeb14eed5 (zilch nixpkgs): add dataflow tracking support
Dataflow tracking runs the installPhase of a derivation, and then
does its best to track build input -> store path output pathways.
This allows for substituting the installPhase of a derivation as much
as possible with relatively quick store path logic, allowing for cross-
project build input tracking. 

Change-Id: I6a6a69642530b32edbc2c521a3f584703731b6e1
2025-11-14 13:01:04 +00:00
612ee6fe83 cli: fix building with newer nixpkgs
Change-Id: I6a6a6964315f76664943e0568456e013fcf12288
2025-11-14 13:01:04 +00:00
244fd3c03a docs: add funding acknowledgement
Change-Id: I6a6a69647333dffbc3eabdef114327625c120f55
2025-11-14 13:01:04 +00:00
6f0db0d7ef docs: remove orphaned page
It was replaced by a more comprehensive page a while back.

Change-Id: I6a6a696468bd55425d231ebc09536bd213e7ccf7
2025-11-14 13:01:04 +00:00
5865632b14 docs: force right alignment for search
Change-Id: I6a6a6964a0757fcf015e3d66b9391f478a90bd0d
2025-11-14 13:01:04 +00:00
fbd2fd6c71 docs: Improve homepage, navigation to be more obvious
Change-Id: I6a6a6964debc026916656181c9b0bdd5c2622069
2025-11-14 13:01:04 +00:00
93a1ebba00 (zilch lang ninja): document
Change-Id: I6a6a6964dcc713504ec57f40981a601696a573af
2025-11-14 13:01:04 +00:00
154ba9be1c (zilch lang rust): Enforce that required parameters are set
Change-Id: I6a6a6964dcc713504ec57f40981a601696a573af
2025-11-14 13:01:04 +00:00
7272d1546b docread: duplicate header links
This makes it all a bit clearer, IMO.

Change-Id: I6a6a696484771b2368c37589a4b7ece8101c0b82
2025-11-14 13:01:04 +00:00
6f97bf05d2 docs: add search
Change-Id: I6a6a696466e424483a89be23b4f91ec98abb7630
2025-11-14 13:01:04 +00:00
30814de5e4 docs: Generate manpages from docs, use in CLI
Change-Id: I6a6a69646c6ff4c4b70cb928dc1df06890144429
2025-11-14 13:01:04 +00:00
5332df82bb docread: Only strip one space from doc-comments
Change-Id: I6a6a6964c4d68142cad0129233c83fde548f0d7f
2025-11-14 13:01:04 +00:00
a333a18922 docread: support non-list lambdas
This makes lambdas with tail arguments work properly.

Change-Id: I6a6a6964be286b69ebe28f3798f6f0d16626b5be
2025-11-14 13:01:04 +00:00
0340f6e830 (zilch lang rust): document
Change-Id: I6a6a6964c8aaff8d5f3e18bc5c7486746b5a2952
2025-11-14 13:01:04 +00:00
ae774da043 zilch-cli-rust: improve behavior slightly
Change-Id: I6a6a69641ebf9fcf1e2d453a904db252a1cfe596
2025-11-14 13:01:04 +00:00
18f2887eba (zilch lang go): document
Change-Id: I6a6a6964558b4fe2f96d78120b2e899f91d48c22
2025-11-14 13:01:04 +00:00
f0ce185d5c docs: Document core concepts
Change-Id: I6a6a6964d6bded229cd640463eaac70fd52df233
2025-11-14 13:01:04 +00:00
e76c57a388 (zilch nix daemon): Upgrade daemon version to 2.18-like
This is necessary for support with recent Lix.

Change-Id: I6a6a69648db16e23ee82a5107cec858ccc06fb42
2025-11-14 13:01:04 +00:00
a80266d9d8 (zilch): document most exported symbols
Change-Id: I6a6a6964d3be7b8c6306a21d810c639f30253d38
2025-11-14 13:01:04 +00:00
6a1efc6a92 (zilch zexpr): print zexpr stack when unquoting fails 2025-11-14 13:01:04 +00:00
933f46a385 (zilch zexpr): remove zexp-with-context 2025-11-14 13:01:04 +00:00
c7acae633f (zilch nix drv): remove impure derivation support 2025-11-14 13:01:04 +00:00
c9e48ff1ba (zilch nix drv): expose drv-is-fod 2025-11-14 13:01:04 +00:00
32673728f9 (zilch nix drv): deduplicate input sources 2025-11-14 13:01:04 +00:00
99bb2501e3 (zilch magic): fix off-by-one when replacing the end of the string 2025-11-14 13:01:04 +00:00
6e4d191145 (zilch magic): close the daemon connection when we're done with it 2025-11-14 13:01:04 +00:00