Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flakes: provide robust access to outPath through new meta argument. #8908

Open
wants to merge 9 commits into
base: master
Choose a base branch
from

Commits on Sep 3, 2023

  1. Configuration menu
    Copy the full SHA
    dfe4fa9 View commit details
    Browse the repository at this point in the history

Commits on Sep 4, 2023

  1. flakes: Add robust meta argument to outputs arguments

    This way, flake frameworks have access to the flake location even when
    an error causes `self` not to evaluate.
    roberth committed Sep 4, 2023
    Configuration menu
    Copy the full SHA
    2d235db View commit details
    Browse the repository at this point in the history
  2. flakes: Reserve input names self and meta

    ... and do not add `meta` to the lock when formal is present, like
    we do for `self`.
    roberth committed Sep 4, 2023
    Configuration menu
    Copy the full SHA
    d10bc47 View commit details
    Browse the repository at this point in the history
  3. libexpr: Add more builtins.function* reflection primops

    These are relevant for determining compatibility properties of functions.
    - Can I add an attribute? Is it open for extension?
    - If I omit an attribute that I'd be expected to add, does that lead to a conflict?
      Such a conflict arises when the function is closed and also binds all attributes
      using `@` syntax.
    
    It also answers a related question: is the function defined using the strict syntax?
    This is useful for explaining the misconception that changing a plain lambda to a
    strict lambda is a no-op refactor. The fact that it makes the function strict is
    overlooked and the error message, infinite recursion sends users into panic mode.
    With the new functionStrict primop we can write functions that catch the mistake
    before we enter it, which could be very helpful.
    roberth committed Sep 4, 2023
    Configuration menu
    Copy the full SHA
    4e3890d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    e9e1897 View commit details
    Browse the repository at this point in the history
  5. tests: Rename outputs arguments to args instead of inputs

    Inputs is not quite an appropriate name because of `self` and `meta`,
    which aren't inputs.
    roberth committed Sep 4, 2023
    Configuration menu
    Copy the full SHA
    2cf4b75 View commit details
    Browse the repository at this point in the history
  6. rl-next: Two functions -> A pair of functions

    This doesn't suggest that two is the total count, and I think it's
    a nice way to phrase it, because the functions are related.
    roberth committed Sep 4, 2023
    Configuration menu
    Copy the full SHA
    ab6dbf3 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1f739ff View commit details
    Browse the repository at this point in the history
  8. flakes: Don't warn about meta and ellipsis except for root flake

    ... and fix an incorrect use of `grep -v`
    roberth committed Sep 4, 2023
    Configuration menu
    Copy the full SHA
    72675eb View commit details
    Browse the repository at this point in the history