You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, removal of a package from METADATA which was once a dependency of some other packages can cause failure of installing those that once depended on it (even if the dependency is no longer there).
This virtually makes all packages unremovable (if they served as a dependency of some others at some point). In the long run, METADATA might be filled with packages that are no longer useful.
We should have a mechanism to allow an unused package to safely exit the stage.
See JuliaLang/METADATA.jl#347 (comment) for a proposal I made on how to deal with this a while ago. Point 4 is the most relevant to this discussion (although the other 3 are still important).
Periodically create a new METADATA.jl branch, removing packages which do not work with recent versions of Julia
Older Julia versions would point to other branches (which would not get package updates)
The default branch to use for each Julia version could be stored in METADATA.jl itself (in all branches)
The biggest issue I see is that some users will solve a problem using a particular package using an older version of Julia, and depend on that package existing and working with that version of Julia well into the future. So even if a package is no longer useful presently, it really still needs to be kept available for these situations.
Currently, removal of a package from METADATA which was once a dependency of some other packages can cause failure of installing those that once depended on it (even if the dependency is no longer there).
This virtually makes all packages unremovable (if they served as a dependency of some others at some point). In the long run, METADATA might be filled with packages that are no longer useful.
We should have a mechanism to allow an unused package to safely exit the stage.
(See JuliaStats/Distributions.jl#262)
The text was updated successfully, but these errors were encountered: