Commit Graph

8 Commits

Author SHA1 Message Date
8f33d9c4fb Fix inputs autoload with top-level follows
Previously, if the root node had follows, the autoloading code did not
work as it assumed the inputs of the root nodes were all strings and not
lists.
2024-05-22 23:44:25 -07:00
cecfafe9a4 Set defaults for inputs from flake.lock
If the `src` passed to flakelight contains a flake.lock, it will now be
read and used to set defaults for `inputs`. Explicitly passed inputs
will override this.
2024-03-10 19:26:37 -07:00
a6f3658ae9 Make mocked pkgs not depend on overlay prev stdenvs
Accessing some of the stdenvs would cause an infinite recursion. We can
continue to rely on base stdenv and also bail if any field other than
mkDerivation is used. All the stdenvs supported have a subset of the
attrs of base stdenv, so this is safe.
2024-01-21 22:22:31 -08:00
787ce03070 Support package functions without named args 2024-01-16 11:01:32 -08:00
1fc128d2aa Add more stdenvs to mocked pkg set 2024-01-15 02:02:48 -08:00
11e65b623d Fix evaluation of packages.default not using mkDerivation
The mock pkgs set passed `{}` as the value for unknown args; if a
package def tried to evaluate one, this can raise an error that can't be
caught. Replacing the default value with `throw ""` enables bailing out
if one of the fake args is accessed.
2024-01-14 23:52:48 -08:00
333a383ff0 Simplify mock builders that get name from attrs 2024-01-12 01:52:55 -08:00
99d8fc8a85 Use mocked builders to get default pkg name faster
Since evaluating pkgs is expensive, this speeds up evaluation of flakes
with `packages.default` by attempting to get the name using a pkgs set
containing only mocked builders that just return the name.
2024-01-12 00:36:36 -08:00