-
-
Notifications
You must be signed in to change notification settings - Fork 121
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
refactor: implement a validation system for builders / translators, reorganize files #155
Conversation
Well, that's certainly nicer than my shit attempts xD I think it would be useful to get this in even without validation or even if the eventual plan is to go full on modules like #156 suggests, just for the external extensibility it affords. So a +1 on incorporating this, maybe even with postponing actual validation to a follow-up PR – would be nice to base my Ruby (and other) stuff on actual upstream extensibility implementation. |
…-extended to also test it instead of only testing crane builder
…t get out of sync with our dream-lock
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems like many files have been moved and edited but git doesn't show them as moved files, instead files are deleted and re-created. This breaks the git history of these files.
I'm not sure if this is easy to fix now, retrospectively.
Next time please do the move and the modify in separate commits, so git won't get confused.
I still think we would benefit a lot by just using evalModules
from nixpkgs/nixos/lib/eval-config-minimal.nix
. But I will keep this discussion in #156 as it might explode the scope here.
…s, subsystems.translators)
Thanks a lot! |
TODOs:
actually implement the validation functions (or leave it for later PR)This reorganizes translators, builders, discoverers and adds validation for these. These are also made extensible through the dream2nix config.
Example:
If modules are to be used, this could be able to easily modified to use
lib.evalModules
for validation and evaluating. Personally I'd prefer using something like https://github.com/divnix/yants for validation and keep the code currently as is.Supersedes #151