Robert Hensing
fba7be80eb
Enable -Werror=switch-enum
...
switch statements must now match all enum values or disable the
warning.
Explicit is good. This has helped us find two bugs, after solving
another one by debugging.
From now on, adding to an enum will raise errors where they are
not explicitly handled, which is good for productivity, and helps
us decide the correct behavior in all usages.
Notably still excluded from this though are the cases where the
warning is disabled by local pragmas.
fromTOML.cc did not build despite a top-level pragma, so I've had
to resort to a makefile solution for that.
2023-04-03 18:45:20 +02:00
Robert Hensing
9470ee877d
Allow open switch-enum in 5 places
2023-04-03 18:45:20 +02:00
John Ericson
acc3314376
Merge pull request #7611 from obsidiansystems/structured-command-stabilization
...
Stuctured command stability
2023-04-03 12:22:10 -04:00
Robert Hensing
3dac4c7874
Add explicit case statements where -Wswitch-enum would report them
2023-04-03 18:17:32 +02:00
Robert Hensing
ed7885017c
Fix systemd logging for lvlNotice: eqv to lvlInfo, not lvlVomit
2023-04-03 18:17:32 +02:00
Robert Hensing
62cacc371f
Fix BuildResult.toString() for NoSubstituters
2023-04-03 18:17:30 +02:00
John Ericson
4a0b893d5e
Stuctured command stability
...
Prior to this, there was an ad-hoc whitelist in `main.cc`. Now, every
command states its stability.
In a future PR, we will adjust the manual to take advantage of this new
information in the JSON.
(It will be easier to do that once we have some experimental feature
docs to link too; see #5930 and #7798.)
2023-04-03 11:48:21 -04:00
Robert Hensing
f3a6de6ba9
Merge pull request #8148 from hercules-ci/fix-issue-8119-printValue-tBlackhole-abort
...
eval: Fix crash on missing printValue tBlackhole case
2023-04-03 16:05:55 +02:00
Eelco Dolstra
ac4318a1b9
Merge pull request #8152 from obsidiansystems/move-querySubstitutablePathInfos
...
Move `querySubstitutablePathInfos` from `LocalStore` to `Store`
2023-04-03 15:36:33 +02:00
Robert Hensing
1c55544a42
eval: Fix crash on missing printValue tBlackhole case
...
Fixes #8119
2023-04-03 15:32:42 +02:00
Théophane Hufschmitt
70bb7b7289
Merge pull request #7610 from obsidiansystems/gate-default-settings
...
Punt on improper global flags for now
2023-04-03 14:02:45 +02:00
Théophane Hufschmitt
a06ea8db77
Merge pull request #8039 from obsidiansystems/prioritize-testing
...
Prioritize testing in the maintainers process docs
2023-04-03 13:46:31 +02:00
Eelco Dolstra
5256ba6d87
Merge pull request #8151 from obsidiansystems/internal-api-docs-pr-template
...
Mention internal API docs in PR template
2023-04-03 10:49:48 +02:00
John Ericson
7963d0c68d
Try auto-labeling a few more things
2023-04-02 23:11:21 -04:00
John Ericson
9383520b75
Move querySubstitutablePathInfos
from LocalStore
to Store
...
The code is not local-store-specific, so we should share it with all
stores. More uniform behavior is better, and a less store-specific
functionality is more maintainable.
This fixes a FIXME added in f73d911628
by @edolstra himself.
2023-04-02 20:32:01 -04:00
John Ericson
ca3937fb82
Mention internal API docs in PR template
...
I think we want to ensure that all new items in headers are documented,
and the documentation on modified items is kept up to date.
It will take a while to document the backlog of undocumented things, but
we can at least ensure that new items don't extend that backlog.
2023-04-02 19:44:44 -04:00
John Ericson
32d72b1696
Add more API docs to experimental-features.hh
2023-04-02 18:57:46 -04:00
John Ericson
2585bcaa50
Rework a few things with the experimental features list
...
- Use struct not `std::pair`, designated initializers
- Use `constexpr` array that we can index by enum tag
- It no longer segfaults; not sure why.
2023-04-02 18:17:45 -04:00
John Ericson
b2c9315bf2
Merge remote-tracking branch 'upstream/master' into list-experimental-features
2023-04-02 16:21:38 -04:00
John Ericson
1fcd49dbbd
Merge branch 'path-info' into ca-drv-exotic
2023-04-01 16:54:46 -04:00
John Ericson
5d56e2daf7
Add comparison methods for content addresses
2023-04-01 16:52:23 -04:00
John Ericson
eeecfacb43
Merge branch 'path-info' into ca-drv-exotic
2023-04-01 16:40:32 -04:00
John Ericson
1f8e1edba9
Merge commit 'a6d00a7bfb18e7ec461ac1d54203cc628aca5c66' into ca-drv-exotic
2023-04-01 15:15:38 -04:00
John Ericson
f7f44f7c96
Merge commit 'aa99005004bccc9be506a2a2f162f78bad4bcb41' into ca-drv-exotic
2023-04-01 15:15:32 -04:00
John Ericson
2ef99cd104
Merge pull request #8122 from bjornfor/use-nix-store-l-unless-experimental-enabled
...
Don't recommend 'nix log' unless experimental feature is enabled
2023-04-01 14:50:16 -04:00
John Ericson
ea1cbc3df5
Merge pull request #8133 from obsidiansystems/improve-internal-api-docs
...
Extend internal API docs, part 2
2023-04-01 12:42:03 -04:00
John Ericson
f4ab297b31
Ensure all headers have #pragma once
and are in API docs
...
`///@file` makes them show up in the internal API dos. A tiny few were
missing `#pragma once`.
2023-03-31 23:19:44 -04:00
John Ericson
abd5e7dec0
Extend internal API docs, part 2
...
Picking up from #8111 .
Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2023-03-31 23:01:40 -04:00
John Ericson
8ae9d66940
Merge pull request #8142 from patricksjackson/atomic-sync
...
Replace unnecessary Sync<uint64_t> with std::atomic<uint64_t>
2023-03-31 21:49:20 -04:00
Patrick Jackson
2b905d1d35
Replace unnecessary Sync<uint64_t> with std::atomic<uint64_t>
2023-03-31 17:56:25 -07:00
Eelco Dolstra
cf76b38e27
Merge pull request #8137 from edolstra/lazy-trees-cherrypicks
...
Add CanonPath::makeRelative()
2023-03-31 18:26:08 +02:00
Eelco Dolstra
936e7c66eb
Indentation
2023-03-31 17:15:03 +02:00
Eelco Dolstra
7ebaf0252a
Add CanonPath::makeRelative()
2023-03-31 17:15:03 +02:00
Eelco Dolstra
1829e7ccac
Merge pull request #8139 from edolstra/no-nixpkgsFor-output
...
Remove nixpkgsFor flake output
2023-03-31 17:09:36 +02:00
Eelco Dolstra
49da2e8b0c
Merge pull request #8138 from tweag/fix-installer-vm-tests
...
Fix the installer VM tests
2023-03-31 16:59:24 +02:00
Eelco Dolstra
2425121a59
Remove nixpkgsFor flake output
...
Fixes "warning: unknown flake output 'nixpkgsFor'".
2023-03-31 16:08:16 +02:00
Théophane Hufschmitt
3f362f1c07
test: Make the installer work on old rhel versions
...
`scp -r` doesn't seem to behave properly there, so tarpipe ftw!
2023-03-31 15:29:50 +02:00
Théophane Hufschmitt
4e7a78ca97
test: Don't add a channel for the force-no-daemon installer variant
...
Was probably an overlook of when the tests were first added, but that
now messes-up with the `nix-channel --update` that happens down the line
(and can't access the network since we're inside a Nix build)
2023-03-31 15:27:02 +02:00
Théophane Hufschmitt
bb6e1244a3
Merge pull request #7406 from amesgen/gitlab-fetcher
...
Document `gitlab` input scheme
2023-03-31 13:21:55 +02:00
Théophane Hufschmitt
e32ca3cf16
Merge pull request #8018 from tweag/ssh-password-prompt
...
SSH: don't erase password prompt if it is displayed
2023-03-31 12:06:10 +02:00
Théophane Hufschmitt
623115fc0f
Merge pull request #8135 from patricksjackson/copyPaths-datarace
...
Fix data race in copyPaths
2023-03-31 07:19:20 +02:00
Patrick Jackson
804180ad52
Only lock once
2023-03-30 18:06:27 -07:00
Patrick Jackson
309753ebb5
Fix data race in copyPaths
2023-03-30 16:59:34 -07:00
John Ericson
c51d554c93
Use "raw pattern" for content address types
...
We weren't because this ancient PR predated it!
This is actually a new version of the pattern which addresses some
issues identified in #7479 .
2023-03-30 17:12:49 -04:00
John Ericson
a6d00a7bfb
Fix warning
2023-03-30 16:29:13 -04:00
John Ericson
aa99005004
Merge remote-tracking branch 'upstream/master' into path-info
...
Also improve content-address.hh API docs.
2023-03-30 16:28:53 -04:00
John Ericson
06d87b95bc
Merge pull request #8111 from obsidiansystems/improve-internal-api-docs
...
Convert a bunch of comments in headers to Doxygen documentation
2023-03-30 09:40:22 -04:00
Valentin Gagarin
368c5b8b9a
Merge pull request #7518 from fricklerhandwerk/doc-commands
...
separate man pages for `nix-store` and `nix-env` subcommands
2023-03-30 15:33:08 +02:00
Valentin Gagarin
cde78f9417
process includes first
...
otherwise the order of found `.md` files will influence if `@docroot@`
is replaced before them being included, which may mess up relative
links.
the weirdest thing about it is that the mess-up happens
deterministically on macOS, but deterministically doesn't happen on
Linux!
2023-03-30 13:55:44 +02:00
Eelco Dolstra
1cc5e1d5b6
Merge pull request #8123 from nomeata/import-flake-docs
...
Docs: Explain why `import nixpkgs` works in flakes
2023-03-30 11:20:55 +02:00