Skip to content

Conversation

@Radvendii
Copy link
Contributor

@Radvendii Radvendii commented Sep 29, 2025

⚠️ not working yet

Motivation

See [this tracking issue] for more big-picture motivation

  1. removes 16 bytes per ExprPath
  2. enables us in the future to shrink path value payload to 8 bytes
  3. enables us in the future to directly refer to path values where we are currently referring to ExrPaths that forward us to a path value
  4. enables getting rid of enable_shared_from_this

Context

Discussed with Eelco here (and on the nix maintainers call): #14106 (comment)
Eelco's original work: DeterminateSystems@4c02828#diff-531b7e0b6ecbff13af7eeb43f6273b7349912536c225532f8ce4144234fe9c72


Add 👍 to pull requests you find important.

The Nix maintainer team uses a GitHub project board to schedule and track reviews.

CC @xokdvium @NaN-git @Ericson2314

@github-actions github-actions bot added new-cli Relating to the "nix" command with-tests Issues related to testing. PRs with tests have some priority c api Nix as a C library with a stable interface labels Sep 29, 2025
Co-authored-by: Eelco Dolstra <[email protected]>

We can use the rootFS accessor for everything and just mount any other
accessor (like corepkgsFS) on top of that.

1. removes 16 bytes per ExprPath
2. enables us in the future to shrink path value payload to 8 bytes
3. enables us in the future to directly refer to path values where we
are currently referring to ExrPaths that forward us to a path value
4. enables getting rid of enable_shared_from_this<SourceAccessor>
@Radvendii Radvendii force-pushed the remove-accessor-field branch from daca17d to a1262c2 Compare September 29, 2025 20:15
@Radvendii Radvendii mentioned this pull request Sep 29, 2025
41 tasks
@Radvendii
Copy link
Contributor Author

After further discussion on the nix-maintainers call, we're going to postpone this change until we know exactly what we want things to look like. It's not going to block any progress until we get to decreasing the size of Value payload, which isn't for a while.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

c api Nix as a C library with a stable interface new-cli Relating to the "nix" command with-tests Issues related to testing. PRs with tests have some priority

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant