Silvan Mosberger
c34e96f7e0
Make function arguments retain position info
...
This allows querying the location of function arguments. E.g.
builtins.unsafeGetAttrPos "x" (builtins.functionArgs ({ x }: null))
=> { column = 57; file = "/home/infinisil/src/nix/inst/test.nix"; line = 1; }
2020-04-02 05:52:52 +02:00
Ben Burdette
e697884f65
using std:: everywhere; fix a formatting error; add exception flags
2020-04-01 21:30:19 -06:00
Ben Burdette
dd7b8183a5
indenting
2020-04-01 16:20:20 -06:00
Ben Burdette
8713aeac5e
remove using std::*, switch to include guard
2020-04-01 15:51:14 -06:00
Ben Burdette
a72b6b2ec8
examples of invalid errors
2020-03-31 18:29:41 -06:00
Ben Burdette
5b3aefff85
add some explanatory comments
2020-03-31 12:42:41 -06:00
Ben Burdette
9e7b89bf10
rename errors/warnings
2020-03-31 11:56:37 -06:00
Ben Burdette
09652f597c
enum style
2020-03-31 09:36:20 -06:00
Eelco Dolstra
a7540294cf
Merge pull request #3460 from NixOS/dev-shell
...
Backport 'nix dev-shell' from the flakes branch
2020-03-31 14:46:15 +02:00
Eelco Dolstra
d4d456c6b1
Merge pull request #3463 from Ninlives/placeholder-passAsFile
...
fix placeholder not substituted in passAsFile
2020-03-31 13:50:39 +02:00
Eelco Dolstra
3166b97174
nix shell -> nix dev-shell
2020-03-31 13:45:28 +02:00
mlatus
12556e5709
fix placeholder not substituted in passAsFile
2020-03-31 19:40:16 +08:00
John Ericson
8aa46cd340
Get rid of FileIngestionMethod casts in perl bindings, too
2020-03-30 22:40:41 +00:00
John Ericson
7e9a2718f0
s/outputHashRecursive/ingestionMethod/c
2020-03-30 22:36:15 +00:00
John Ericson
51afea3af2
Never cast FileIngestionMethod
to or from boolean
2020-03-30 22:31:51 +00:00
John Ericson
c251b011cd
Merge remote-tracking branch 'upstream/master' into enum-FileIngestionMethod
2020-03-30 18:16:44 -04:00
John Ericson
bbbb7c1bc7
Use auto
with some FileIngestionMethod
local variables
2020-03-30 18:15:55 -04:00
Eelco Dolstra
e1a94ad852
Backport 'nix dev-shell' from the flakes branch
...
This also adds a '--profile' option to 'nix build' (replacing 'nix-env
--set').
2020-03-30 19:16:45 +02:00
John Ericson
832bd534dc
Store parsed hashes in DerivationOutput
...
It's best to detect invalid data as soon as possible, with data types
that make storing it impossible.
2020-03-30 11:33:35 -04:00
Ben Burdette
28d073e810
remove cruft
2020-03-30 09:15:21 -06:00
Ben Burdette
35c7bab09a
build with make
2020-03-30 09:14:29 -06:00
John Ericson
f5494d9442
Merge remote-tracking branch 'me/enum-FileIngestionMethod' into HEAD
2020-03-30 11:08:13 -04:00
Eelco Dolstra
367577d9a6
Fix macOS build
2020-03-30 17:00:40 +02:00
Eelco Dolstra
e322a16523
Remove global -I flags
...
(cherry picked from commit 2c692a3b14
)
2020-03-30 15:30:19 +02:00
Julian Stecklina
40c023ecfe
fetchGit: don't use std::filesystem to filter git repos
...
Using std::filesystem means also having to link with -lstdc++fs on
some platforms and it's hard to discover for what platforms this is
needed. As all the functionality is already implemented as utilities,
use those instead.
2020-03-30 00:32:42 +02:00
Bjørn Forsman
f686efeed4
fetchGit: fix submodule corner case by fetching all refs from cacheDir
...
Due to fetchGit not checking if rev is an ancestor of ref (there is even
a FIXME comment about it in the code), the cache repo might not have the
ref even though it has the rev. This doesn't matter when submodule =
false, but the submodule = true code blows up because it tries to fetch
the (missing) ref from the cache repo.
Fix this in the simplest way possible: fetch all refs from the local
cache repo when submodules = true.
TODO: Add tests.
2020-03-29 22:29:58 +02:00
Bjørn Forsman
cc522d0d23
fetchGit: fix submodules = true for dirty trees
2020-03-29 22:29:58 +02:00
Bjørn Forsman
b306b7039e
fetchGit: checkout rev instead of latest ref
...
Major bugfix for the submodules = true code path.
TODO: Add tests.
2020-03-29 22:29:58 +02:00
Bjørn Forsman
be84049baf
tests/fetchGitSubmodules.sh: more checks
2020-03-29 22:29:58 +02:00
Bjørn Forsman
369fffd6f1
fetchGit: add submodules attribute to the .link file
...
The .link file is used as a lock, so I think we should put the
"submodule" attribute in there since turning on submodules creates a new
.link file path.
2020-03-29 22:29:58 +02:00
Bjørn Forsman
6864ad7cf5
fetchGit: fix submodule output attribute
...
Before this change it would be false for all evaluations but the first.
Now it follows the input argument (as it should).
2020-03-29 22:29:58 +02:00
Bjørn Forsman
587e259bfd
tests/fetchGitSubmodules: add more tests
2020-03-29 22:29:58 +02:00
Bjørn Forsman
002a3a95dc
fetchGit: fix "fatal: couldn't find remote ref refs/heads/master" issue with submodules
2020-03-29 22:29:58 +02:00
Julian Stecklina
cc4fe977e5
Link to stdc++fs
...
Some platforms seem to still require linking with stdc++fs to enable
STL std::filesystem support.
2020-03-29 22:29:58 +02:00
Julian Stecklina
6c00a9545f
Fix typo in submodule test
2020-03-29 22:29:58 +02:00
Julian Stecklina
435366ed3c
Rename fetchGit fetchSubmodules to just submodules
2020-03-29 22:29:58 +02:00
Julian Stecklina
c846abb5cc
Add more test for git submodule functionality
2020-03-29 22:29:58 +02:00
Julian Stecklina
c8d33de777
Add git submodule fixes from @bjornfor
...
This fixes fetching repositories with no submodules and also cleans up
.git files in checkouts.
2020-03-29 22:29:57 +02:00
Julian Stecklina
ea861be292
Add documentation for submodule support in fetchGit
2020-03-29 22:29:57 +02:00
Julian Stecklina
c2a24c2b88
Add test for fetchGit submodule support
2020-03-29 22:29:57 +02:00
Julian Stecklina
f58604ac32
Add fetchSubmodules to builtins.fetchGit
...
There are some downsides to this features:
- Submodules are not cached (unlike the root repo),
- Full checkouts are created in a temporary directory.
2020-03-29 22:29:57 +02:00
John Ericson
225e62a56a
Replace some bool recursive
with a new FileIngestionMethod
enum
2020-03-29 15:16:20 -04:00
John Ericson
87b32bab05
Use enum struct
and drop prefixes
...
This does a few enums; the rest will be gotten in subsequent commits.
2020-03-29 11:23:15 -04:00
Ben Burdette
759f39800b
remove util.hh from deps
2020-03-27 10:55:09 -06:00
Ben Burdette
00eb3fcb7a
more cleanup
2020-03-27 10:13:46 -06:00
Ben Burdette
a3ef00be6c
camelcase; optional hint
2020-03-27 10:03:02 -06:00
John Ericson
e433d4af4c
Extend Rust FFI
...
Do idiomatic C++ copy and move constructors for a few things, so
wrapping structs' defaults can work.
2020-03-25 16:12:14 -04:00
Ben Burdette
d44c9c5581
some colors
2020-03-25 11:20:44 -06:00
Ben Burdette
3582dc3c88
programName as static member var
2020-03-25 10:52:03 -06:00
Eelco Dolstra
eb1911e277
Merge pull request #3445 from gnprice/pr-installer-colors
...
installer: Fix terminal colors.
2020-03-25 09:04:24 +01:00