-
Notifications
You must be signed in to change notification settings - Fork 1
Implementation: Fix references #14
Comments
Taking a closer look at these failures, there's at least these two types: Failures caused by packages referencing other packages files (the
|
Catch: This only works when the generic attribute (here {
docbook_xml_dtd_412 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.1.2.nix { };
docbook_xml_dtd_42 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.2.nix { };
docbook_xml_dtd_43 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.3.nix { };
docbook_xml_dtd_44 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.4.nix { };
docbook_xml_dtd_45 = callPackage ../data/sgml+xml/schemas/xml-dtd/docbook/4.5.nix { };
} And they have a single generic shared file between them, Not yet sure how to resolve this. Maybe one of the non-ideal solutions mentioned earlier would be okay here |
@infinisil have you thought about a possible broader structured approach to version matrices that can be generalized? It maybe, though, something for a later iteration of the NAT. |
@blaggacao Yeah, that's for a future iteration but definitely in scope :) |
In the last meeting we decided to just not move any files that require updating file references: #20 (review), so I think this can be closed |
In https://github.com/nixpkgs-architecture/nixpkgs/tree/auto-calling I implemented a rough version of this RFC draft using a hacky bash script (see commit message). The main problem with it is that evaluation is broken due to references to moved files:
The fix for this particular issue is
But there might be hundreds or even more of these evaluation failures.
Ideally the script to do the transition would automatically fix such references, but that's not very trivial without parsing Nix. I and @roberth had the idea of using rnix to write a tool that could do renames of files while updating references to those files automatically: nix-community/rnix-parser#151
In the absence of such a tool, we need to either manually do these fixes, or write a hacky tool and manually fix the problems.
The text was updated successfully, but these errors were encountered: