aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2023-04-07Always disable GC in a coroutine unless the patch is appliedYorick van Pelt
2023-04-07DisableGC: replace by CoroutineContext, std::shared_ptr<void>Yorick van Pelt
2023-04-07Disable GC inside coroutines on mac OSYorick van Pelt
2023-04-06Add `Store::isTrustedClient()`matthewcroughan
This function returns true or false depending on whether the Nix client is trusted or not. Mostly relevant when speaking to a remote store with a daemon. We include this information in `nix ping store` and `nix doctor` Co-Authored-By: John Ericson <John.Ericson@Obsidian.Systems>
2023-04-04Merge pull request #7944 from yorickvP/fix-curReplThéophane Hufschmitt
NixRepl::mainLoop: restore old curRepl on function exit
2023-04-03Merge pull request #8157 from hercules-ci/switch-bugsThéophane Hufschmitt
Fix current and future `switch` bugs
2023-04-03Merge pull request #8042 from lheckemann/alt-lockfilesEelco Dolstra
Allow specifying alternative paths for reading/writing flake locks
2023-04-03nix-store.cc: Refactor, remove qDefaultRobert Hensing
2023-04-03Enable -Werror=switch-enumRobert Hensing
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-03Allow open switch-enum in 5 placesRobert Hensing
2023-04-03Add explicit case statements where -Wswitch-enum would report themRobert Hensing
2023-04-03Fix systemd logging for lvlNotice: eqv to lvlInfo, not lvlVomitRobert Hensing
2023-04-03Fix BuildResult.toString() for NoSubstitutersRobert Hensing
2023-04-03Stuctured command stabilityJohn Ericson
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-03Merge pull request #8148 from ↵Robert Hensing
hercules-ci/fix-issue-8119-printValue-tBlackhole-abort eval: Fix crash on missing printValue tBlackhole case
2023-04-03Merge pull request #8152 from obsidiansystems/move-querySubstitutablePathInfosEelco Dolstra
Move `querySubstitutablePathInfos` from `LocalStore` to `Store`
2023-04-03eval: Fix crash on missing printValue tBlackhole caseRobert Hensing
Fixes #8119
2023-04-03Merge pull request #7610 from obsidiansystems/gate-default-settingsThéophane Hufschmitt
Punt on improper global flags for now
2023-04-02Move `querySubstitutablePathInfos` from `LocalStore` to `Store`John Ericson
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-01Merge pull request #8122 from ↵John Ericson
bjornfor/use-nix-store-l-unless-experimental-enabled Don't recommend 'nix log' unless experimental feature is enabled
2023-03-31Ensure all headers have `#pragma once` and are in API docsJohn Ericson
`///@file` makes them show up in the internal API dos. A tiny few were missing `#pragma once`.
2023-03-31Extend internal API docs, part 2John Ericson
Picking up from #8111. Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2023-03-31Replace unnecessary Sync<uint64_t> with std::atomic<uint64_t>Patrick Jackson
2023-03-31IndentationEelco Dolstra
2023-03-31Add CanonPath::makeRelative()Eelco Dolstra
2023-03-31Merge pull request #7406 from amesgen/gitlab-fetcherThéophane Hufschmitt
Document `gitlab` input scheme
2023-03-31Merge pull request #8018 from tweag/ssh-password-promptThéophane Hufschmitt
SSH: don't erase password prompt if it is displayed
2023-03-30Only lock oncePatrick Jackson
2023-03-30Fix data race in copyPathsPatrick Jackson
2023-03-30Merge pull request #8111 from obsidiansystems/improve-internal-api-docsJohn Ericson
Convert a bunch of comments in headers to Doxygen documentation
2023-03-30Merge pull request #7518 from fricklerhandwerk/doc-commandsValentin Gagarin
separate man pages for `nix-store` and `nix-env` subcommands
2023-03-30Merge pull request #8123 from nomeata/import-flake-docsEelco Dolstra
Docs: Explain why `import nixpkgs` works in flakes
2023-03-30TypoEelco Dolstra
2023-03-30More precise wordingJoachim Breitner
2023-03-30Split nix-env and nix-store documentation per-subcommandAlexander Bantyev
Documentation on "classic" commands with many sub-commands are notoriously hard to discover due to lack of overview and anchor links. Additionally the information on common options and environment variables is not accessible offline in man pages, and therefore often overlooked by readers. With this change, each sub-command of nix-store and nix-env gets its own page in the manual (listed in the table of contents), and each own man page. Also, man pages for each subcommand now (again) list common options and environment variables. While this makes each page quite long and some common parameters don't apply, this should still make it easier to navigate as that additional information was not accessible on the command line at all. It is now possible to run 'nix-store --<subcommand> --help` to display help pages for the given subcommand. Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-03-29Convert a bunch of comments in headers to Doxygen documentationJohn Ericson
The internal API docs now contain more useful information. Co-authored-by: Théophane Hufschmitt <7226587+thufschmitt@users.noreply.github.com>
2023-03-29Allow `@` in git refsfigsoda
2023-03-29Update src/libexpr/primops.ccJoachim Breitner
Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2023-03-29avoid a string copy in printHash16Vaci Koblizek
2023-03-29return string_view from printHashType rather than stringVaci Koblizek
2023-03-28Don't recommend 'nix log' unless experimental feature is enabledBjørn Forsman
This fixes the issue that `nix-build`, without experimental feature 'nix-command' enabled, recommends the experimental CLI `nix log` to view build logs. Now it'll recommend the stable `nix-store -l` CLI instead. Fixes https://github.com/NixOS/nix/issues/8118
2023-03-28Avoid a string copy during Hash::to_stringVaci Koblizek
2023-03-28Update src/libexpr/primops.ccJoachim Breitner
Co-authored-by: asymmetric <lorenzo@mailbox.org>
2023-03-28Docs: Explain why `import nixpkgs` works in flakesJoachim Breitner
2023-03-27Fix more profile dirs in docsJohn Ericson
Picking up where #8078 left off.
2023-03-27Merge pull request #7763 from obsidiansystems/installable-wide-infoEelco Dolstra
Stratify `ExtraPathInfo` along `Installable` hierarchy
2023-03-27Merge pull request #8084 from edolstra/store-docsEelco Dolstra
Auto-generate store documentation
2023-03-27Merge pull request #8073 from tweag/fix-root-channels-locationJohn Ericson
Fix root channels location
2023-03-27Merge pull request #8062 from edolstra/ssl-cert-fileEelco Dolstra
Add a setting for configuring the SSL certificates file
2023-03-27Punt on improper global flags for nowJohn Ericson
See the note in the test. We don't want these flags showing up for commands where they are irrelevant. Eventually, this needs a proper fix, but it need not be a blocker for stabilize: for a quick-n-dirty punt, just put these flags behind the `nix-command` unstable feature. This is fine because they are only relevant for commands which we don't need to stabilize for a while.