John Ericson
3b49f7a143
Deduplicate our many package.nix a bit ( #11175 )
...
- They should all be built in parallel
- They should all use strict deps by default
2024-07-25 03:12:39 +00:00
Robert Hensing
3172e88af5
Make abort() call sites log first
2024-07-24 16:52:04 +02:00
Robert Hensing
e48e0cbab0
markdown.hh: Improve includes
2024-07-24 12:54:40 +02:00
Robert Hensing
0bd2d36375
Document renderMarkdownToTerminal
2024-07-24 12:53:37 +02:00
Robert Hensing
ca2cc26e12
tests/functional/repl: Improve precision and readability
...
... as well as match buildReadlineNoMarkdown.
Unfortunately it doesn't support long inputs or multiline inputs
for now.
This needs to make better use of the interacter interface.
2024-07-24 12:48:38 +02:00
Robert Hensing
712ce2feac
ReadlineLikeInteracter::getLine: Add _NIX_TEST_REPL_ECHO env var
...
... for testing
2024-07-24 12:48:38 +02:00
Robert Hensing
97b0114ab8
renderMarkdownToTerminal: Add _NIX_TEST_RAW_MARKDOWN env var
...
For testing only.
2024-07-24 12:48:38 +02:00
Robert Hensing
2b4e3f04a4
markdown.cc: Format
...
Slightly custom because the automated formatting messes up the
braced initializer with named fields.
2024-07-24 01:02:48 +02:00
John Ericson
d3cee8160c
Add missing threads deps
2024-07-22 11:46:54 -04:00
Robert Hensing
8ce4287409
Merge pull request #11086 from kognise/eval-cache-fixes
...
Eval cache: fix cache regressions
2024-07-18 14:57:07 +02:00
Eelco Dolstra
1e1a8e8ad1
Merge pull request #11058 from hercules-ci/more-nix-shell
...
Make `#!nix-shell` arguments and options relative to script
2024-07-17 21:52:34 +02:00
Robert Hensing
03d33703ef
Revert "Use HintFmt for doc comments"
...
Unfortunately these don't render correctly, because they go into the
markdown renderer, instead of the terminal.
```
nix-repl> :doc lib.version
Attribute '[35;1mversion[0m'
… defined at [35;1m/home/user/h/nixpkgs/lib/default.nix:73:40[0m
```
We could switch that to go direct to the terminal, but then we should
do the same for the primops, to get a consistent look.
Reverting for now.
This reverts commit 3413e0338cbee1c7734d5cb614b5325e51815cde.
2024-07-15 19:56:40 +02:00
Robert Hensing
ce31a0457f
Use HintFmt for doc comments
2024-07-15 19:56:40 +02:00
Robert Hensing
ac89df815d
libcmd/repl.cc: Explain evalString call and defend
2024-07-15 19:56:40 +02:00
Robert Hensing
6bbd493d49
libcmd/repl-interacter: INT_MAX -> numeric_limits
2024-07-15 19:56:40 +02:00
Robert Hensing
d4f576b0b2
nix repl: Render docs for attributes
2024-07-15 19:56:40 +02:00
Robert Hensing
39878c8979
dropEmptyInitThenConcatStringsSep -> concatStringSep: preserve empty attr
...
The empty attribute name should not be dropped from attribute paths.
Rendering attribute paths with concatStringsSep is lossy and wrong,
but this is just a first improvement while dealing with the
dropEmptyInitThenConcatStringsSep problem.
2024-07-13 03:06:24 +02:00
Robert Hensing
ea966a70fc
dropEmptyInitThenConcatStringsSep -> concatStringSep: diagnostics and docs
...
These are non-critical, so their behavior is ok to change.
Dropping empty items is not needed and usually not expected.
2024-07-13 03:06:24 +02:00
Robert Hensing
1a8defd06f
Refactor: rename C++ concatStringsSep -> dropEmptyInitThenConcatStringsSep
2024-07-13 03:05:50 +02:00
John Ericson
bc83b9dc1f
Remove comparator.hh and switch to <=> in a bunch of places
...
Known behavior changes:
- `MemorySourceAccessor`'s comparison operators no longer forget to
compare the `SourceAccessor` base class.
Progress on #10832
What remains for that issue is hopefully much easier!
2024-07-12 14:54:18 -04:00
Lexi Mattick
e764ed31f6
Eval cache: fix cache regressions
...
- Fix eval cache not being persisted in `nix develop` (since #10570 )
- Don't attempt to commit cache transaction if there is no active transaction, which will spew errors in edge cases
- Drive-by: trivial typo fix
2024-07-12 09:45:35 -07:00
John Ericson
337a5a23b7
Merge pull request #11089 from NixOS/warnings-includes
...
Fix warnings and optimize includes
2024-07-12 10:29:26 -04:00
Robert Hensing
8df041cbc6
Solve unused header warnings reported by clangd
2024-07-12 15:37:54 +02:00
John Ericson
3fc77f281e
No global settings in libnixfetchers and libnixflake
...
Progress on #5638
There are still a global fetcher and eval settings, but they are pushed
down into `libnixcmd`, which is a lot less bad a place for this sort of
thing.
Continuing process pioneered in
52bfccf8d8 .
2024-07-12 08:50:28 -04:00
Eelco Dolstra
61080554ab
SymbolStr: Remove std::string conversion
...
This refactoring allows the symbol table to be stored as something
other than std::strings.
2024-07-11 17:43:10 +02:00
Eelco Dolstra
87323a5689
Remove unused InstallableFlake::getFlakeOutputs()
2024-07-11 16:21:27 +02:00
Robert Hensing
bb312a7174
Edit CompatibilitySettings
2024-07-11 13:59:49 +02:00
Robert Hensing
c4e3e2dc27
Soft-deprecate the compatibility settings
2024-07-10 16:24:31 +02:00
Robert Hensing
d942d505ca
Merge remote-tracking branch 'upstream/master' into more-nix-shell
2024-07-10 16:19:18 +02:00
John Ericson
1439de874f
Merge pull request #11063 from obsidiansystems/config-expr
...
Forgot to include `config-expr.hh` in two places
2024-07-08 11:27:57 -04:00
John Ericson
c5284a84f3
Forgot to include config-expr.hh in some places
2024-07-08 10:37:34 -04:00
Robert Hensing
cfe3ee3de8
nix-shell: look up shell.nix when argument is a directory (#11057 )
...
* Refactor: rename runEnv -> isNixShell
* Refactor: rename left -> remainingArgs
* nix-build.cc: Refactor: extract baseDir variable
* nix-build.cc: Refactor: extract sourcePath, resolvedPath variables
* nix-shell: Look for shell.nix when directory is specified
* Add legacy setting: nix-shell-always-looks-for-shell-nix
* rl-next: Add note about shell.nix lookups
* tests/functional/shell.nix: Implement runHook for dummy stdenv
2024-07-08 14:36:36 +02:00
Robert Hensing
63262e78c7
Add opt-out: nix-shell-shebang-arguments-relative-to-script
2024-07-07 00:55:33 +02:00
Robert Hensing
4c59d6e9f5
Merge branch 'nix-shell-lookup-shell-nix' into more-nix-shell
2024-07-07 00:27:07 +02:00
Robert Hensing
6c6d5263e2
Add legacy setting: nix-shell-always-looks-for-shell-nix
2024-07-07 00:25:56 +02:00
Robert Hensing
f5b59fbc64
Fix and extend nix-shell baseDir test
2024-07-07 00:23:22 +02:00
Robert Hensing
32fb127b9c
Add legacy setting: nix-shell-always-looks-for-shell-nix
2024-07-06 23:05:34 +02:00
Robert Hensing
0729f0a113
packaging: Pass version directly
2024-07-06 17:52:57 +02:00
John Ericson
3acf3fc746
Package libnixmain and libnixcmd with Meson
...
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2024-07-05 16:40:55 -04:00
Robert Hensing
ddff76f667
Merge pull request #10973 from NixOS/meson-libexpr
...
Meson build for libexpr libflake, external C API, unit tests
2024-07-05 20:27:12 +02:00
Valentin Gagarin
a713476790
docs: split types from syntax ( #11013 )
...
move together all syntactic and semantic information into one
page, and add a page on data types, which in turn links to the syntax and
semantics.
also split out the note on scoping rules into its own page.
Co-authored-by: Ryan Hendrickson <ryan.hendrickson@alum.mit.edu>
2024-07-03 09:03:41 +02:00
John Ericson
874ff000d4
Fix format
2024-07-02 09:26:22 -04:00
John Ericson
6a0582d9fd
Rename file to avoid reserved name
2024-07-02 09:26:22 -04:00
John Ericson
0b539dea4a
Improve boost hacks
2024-07-02 09:26:22 -04:00
John Ericson
a81e319528
Deduplicating
2024-07-02 09:23:24 -04:00
John Ericson
0084a486cc
Split out a new libnixflake
...
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2024-06-26 19:56:21 -04:00
John Ericson
52730d38e2
Factor out flake:... lookup path from evaluator
...
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2024-06-26 19:56:21 -04:00
John Ericson
05580a373f
Fix error in the no-GC build
2024-06-24 17:18:16 -04:00
John Ericson
52bfccf8d8
No global eval settings in libnixexpr
...
Progress on #5638
There is still a global eval settings, but it pushed down into
`libnixcmd`, which is a lot less bad a place for this sort of thing.
2024-06-24 12:15:16 -04:00
John Ericson
1620ad4587
Split out GlobalConfig into its own header
...
This makes it easier to understand the reach of global variables /
global state in the config system.
2024-06-24 11:36:21 -04:00