Eelco Dolstra
35a8e9c71e
Merge pull request #141 from DeterminateSystems/external-builder-stdin
...
Add an `external-builders` experimental feature
2025-07-14 22:42:21 +02:00
Cole Helbling
de158c335c
fixup: document why we're not writing through stdin right now
2025-07-14 11:13:04 -07:00
Cole Helbling
5b27325bc2
Revert "external-derivation-builder: write the json doc into builder's stdin"
...
This reverts commit d1f57c5dae .
2025-07-14 11:00:13 -07:00
Cole Helbling
efa239875b
Add an external-builders experimental feature
2025-07-14 09:07:32 -07:00
Cole Helbling
d1f57c5dae
external-derivation-builder: write the json doc into builder's stdin
2025-07-11 10:37:58 -07:00
Eelco Dolstra
804729b4ec
Merge remote-tracking branch 'detsys/detsys-main' into refactor-derivation-builder
2025-07-10 17:31:01 +02:00
Eelco Dolstra
930aabb7f3
Merge pull request #139 from DeterminateSystems/remove-dead
...
Remove some dead code to minimize the upstream diff
2025-07-09 20:25:49 +00:00
Eelco Dolstra
47081aa94c
Remove some dead code to minimize the upstream diff
2025-07-09 22:12:05 +02:00
Cole Helbling
e1d45bb040
Merge pull request #138 from DeterminateSystems/hide-double-copy-warning
...
Hide double copy warning
2025-07-09 20:06:56 +00:00
Cole Helbling
facfff45d3
Merge pull request #137 from DeterminateSystems/eelcodolstra/cf-65-determinate-nix-implicit-flake-lock-update-dont-update
...
lockFlake(): When updating a lock, respect the input's lock file
2025-07-09 20:00:02 +00:00
Eelco Dolstra
700ceb2ce1
Hide double copy warning
2025-07-09 21:52:47 +02:00
Eelco Dolstra
668088b876
Merge pull request #134 from DeterminateSystems/nix-flake-check-dont-build
...
nix flake check: Skip substitutable derivations
2025-07-09 19:07:52 +00:00
Eelco Dolstra
2ecc5156f4
lockFlake(): When updating a lock, respect the input's lock file
2025-07-09 19:04:29 +02:00
Cole Helbling
063837069c
Merge pull request #135 from DeterminateSystems/sync-2.30.0
...
Sync with upstream 2.30.0
2025-07-09 16:44:44 +00:00
Eelco Dolstra
175406c313
Merge remote-tracking branch 'origin/2.30-maintenance' into sync-2.30.0
2025-07-07 19:23:15 +02:00
Eelco Dolstra
812e069302
Mark official release
2025-07-07 17:36:13 +02:00
Eelco Dolstra
ab5fc30d67
Merge pull request #13424 from NixOS/release-notes
...
Release notes for Nix 2.30.0
2025-07-07 17:22:57 +02:00
Eelco Dolstra
b9b791dd51
Merge pull request #13425 from NixOS/tomberek.update_setuid_test
...
fix: make setuid tests use new build-dir location /nix/var/nix/builds
2025-07-07 16:50:57 +02:00
Robert Hensing
9f8df6878f
doc: Add more links
...
Mostly in the 2.30 release notes
2025-07-07 16:47:02 +02:00
Eelco Dolstra
58e07c3291
Sort contributors
2025-07-07 16:17:06 +02:00
Thomas Bereknyei
9e7655f440
fix: make setuid tests use new build-dir location /nix/var/nix/builds
2025-07-07 10:13:40 -04:00
Eelco Dolstra
8c71de202f
Add link
2025-07-07 15:50:51 +02:00
Eelco Dolstra
a492493d97
Rearrange release notes
2025-07-07 15:10:25 +02:00
Eelco Dolstra
2c0343ec51
# Contributors -> ## Contributors
2025-07-07 15:00:49 +02:00
Eelco Dolstra
f5312492c1
Add manual release notes
2025-07-07 14:53:11 +02:00
Eelco Dolstra
19c4e78d97
Typo
2025-07-07 14:19:57 +02:00
Eelco Dolstra
8a9e625ba5
release notes: 2.30.0
2025-07-07 14:09:18 +02:00
Eelco Dolstra
864ccb6e63
Merge pull request #13356 from SimSaladin/sim/fix-erase-output-paths
...
fix throwing output paths out of sandbox paths
2025-07-07 12:15:23 +02:00
Robert Hensing
c512fd1a4b
Merge pull request #13420 from NixOS/query-missing
...
Introduce MissingPaths struct for queryMissing() / printMissing()
2025-07-07 11:48:06 +02:00
Eelco Dolstra
99c20e6c3e
Merge pull request #13328 from h0nIg/patch-3
...
docker: add docu references & remove duplicate code
2025-07-07 11:31:59 +02:00
Sergei Zimmerman
6bf997e0bd
Merge pull request #13419 from NixOS/fix-indent
2025-07-04 20:27:32 +03:00
Eelco Dolstra
5c9592194c
nix flake check: Skip substitutable derivations
...
Since `nix flake check` doesn't produce a `result` symlink, it doesn't
actually need to build/substitute derivations that are already known
to have succeeded, i.e. that are substitutable.
This can speed up CI jobs in cases where the derivations have already
been built by other jobs. For instance, a command like
nix flake check github:NixOS/hydra/aa62c7f7db31753f0cde690f8654dd1907fc0ce2
should no longer build anything because the outputs are already in
cache.nixos.org.
2025-07-04 17:07:18 +02:00
Eelco Dolstra
f039f6886a
nix-build: Drop unnecessary call to queryMissing()
...
This is already done by Worker::run().
2025-07-04 16:34:34 +02:00
Eelco Dolstra
5d308ccca5
printMissing(): Take a MissingPaths argument
2025-07-04 16:34:30 +02:00
Eelco Dolstra
af05ce0f6d
queryMissing(): Return a struct
...
...instead of having a bunch of pass-by-reference arguments.
2025-07-04 16:34:24 +02:00
Eelco Dolstra
1df17735f5
nix-build: Drop unnecessary call to queryMissing()
...
This is already done by Worker::run().
2025-07-04 16:32:37 +02:00
Eelco Dolstra
3a636205c5
printMissing(): Take a MissingPaths argument
2025-07-04 16:27:08 +02:00
Eelco Dolstra
53a743b8c5
queryMissing(): Return a struct
...
...instead of having a bunch of pass-by-reference arguments.
2025-07-04 16:21:38 +02:00
Eelco Dolstra
eb97d8c170
Fix indentation of "Unable to start any build" error message
...
The use of R"(...)" added a bunch of unnecessary whitespace, e.g.
error:
Unable to start any build;
either increase '--max-jobs' or enable remote builds.
For more information run 'man nix.conf' and search for '/machines'.
Now we get
error: Unable to start any build; either increase '--max-jobs' or enable remote builds.
For more information run 'man nix.conf' and search for '/machines'.
2025-07-04 15:21:31 +02:00
detsys-spaghetti[bot]
81672fee2a
Merge pull request #133 from DeterminateSystems/release-v3.7.0/e7308877-4039-4616-be6c-4613680cf30f
...
Release v3.7.0
2025-07-03 18:45:15 +00:00
Graham Christensen
d9541eba23
Apply suggestions from code review
...
Co-authored-by: gustavderdrache <gustavderdrache@gmail.com>
2025-07-03 14:36:51 -04:00
Graham Christensen
a6ad4a5d23
Clean up changelogs
2025-07-03 14:05:01 -04:00
Eelco Dolstra
d4f67fd46d
Merge pull request #13369 from NixOS/null-revision-not-locked
...
Git fetcher: Do not consider a null revision (i.e. workdir) to be locked
2025-07-03 19:56:21 +02:00
github-actions[bot]
103b09b767
Generate release notes for 3.7.0
2025-07-03 17:41:43 +00:00
github-actions[bot]
ab327e7fd6
Set .version-determinate to 3.7.0
2025-07-03 17:41:38 +00:00
github-actions[bot]
87dccde0aa
Prepare release v3.7.0
2025-07-03 17:41:35 +00:00
Robert Hensing
c79b8018c0
Merge pull request #13407 from xokdvium/smaller-value
...
libexpr: Reduce the size of Value down to 16 bytes (on 64 bit systems)
2025-07-03 00:12:47 +02:00
Sergei Zimmerman
5a20a48f13
libexpr: Reduce the size of Value down to 16 bytes
...
This shaves off a very significand amount of memory used
for evaluation as well as reduces the GC-managed heap.
Previously the union discriminator (InternalType) was
stored as a separate field in the Value, which takes up
whole 8 bytes due to padding needed for member alignment.
This effectively wasted 7 whole bytes of memory. Instead
of doing that InternalType is instead packed into pointer
alignment niches. As it turns out, there's more than enough
unused bits there for the bit packing to be effective.
See the doxygen comment in the ValueStorage specialization
for more details.
This does not add any performance overhead, even though
we now consistently assert the InternalType in all getters.
This can also be made atomic with a double width compare-and-swap
instruction on x86_64 (CMPXCHG16B instruction) for parallel evaluation.
2025-07-02 22:27:37 +03:00
Sergei Zimmerman
e73fcf7b53
libexpr: Use proxy ListView for all Value list accesses
...
This also makes it possible to make `payload` field private
in the `ValueStorage` class template.
2025-07-02 21:57:02 +03:00
Sergei Zimmerman
c39cc00404
libexpr: Factor out Payload union to a default implementation of ValueStorage
...
This factors out most of the value representation into a mixin class.
`finishValue` is now gone for good and replaced with a simple template
function `setStorage` which derives the type information/disriminator from
the type of the argument. Likewise, reading of the value goes through function
template `getStorage`.
An empty type `Null` is introduced to make the bijection InternalType <-> C++ type
complete.
2025-07-02 21:51:15 +03:00