-
-
Notifications
You must be signed in to change notification settings - Fork 372
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
Allow default CURIs to be disabled #5338
base: main
Are you sure you want to change the base?
Conversation
Previously there was no convenient way to disable the e.g. site, vendor, and core repositories. But when developing with application specific module install locations one might not want for modules to be used outside of that location. This add a new environment variables, RAKU_DISABLE_DEFAULT_CURIS, which can be set to anything to prevent the default repositories from being added to the repo chain itself. Note that it does still register those repositories with the registry.
Allow disabling default CURIsOne pattern developers might want to follow is to install all application dependencies into an app-specific location i.e.
But when a module isn't found by
|
I haven't thought too much on how to best implement this, but this PR is one way to do it. |
Looks like this will disable the And if that is the case, I think it will be better to allow disabling indvidual repos (eg. Another option may be have a generic env var to specify the allowed repos and their order in the repo chain, for example |
In a self contained environment as described one would also install the core modules. Just because NativeCall doesn’t exist in an ecosystem doesn’t mean something like zef —contained option can’t obtain it from somewhere else (like the current rakudo installation) |
You can accomplish custom repo chain by just disabling them all (as in this PR) and set RAKULIB. I was originally going to write such a custom repo chain mechanism, but this seemed cleaner to me, and far easier to implement. |
Previously there was no convenient way to disable the e.g. site, vendor, and core repositories. But when developing with application specific module install locations one might not want for modules to be used outside of that location. This add a new environment variables, RAKU_DISABLE_DEFAULT_CURIS, which can be set to anything to prevent the default repositories from being added to the repo chain itself. Note that it does still register those repositories with the registry.