Comment 2 for bug 1293278

Revision history for this message
Faré (fahree) wrote :

Actually, what I would do is:

1- split default-source-registry into two parts:
   default-user-source-registry, after user-source-registry and user-source-registry-directory,
   and default-system-source-registry, after system-source-registry and system-source-registry-directory.

2- all user stuff go into default-user-source-registry, which seems to be everthing currently in default-source-registry, with exceptions below: XDG_DATA_HOME is for the user, but XDG_DATA_DIRS is for the system. local-appdata and appdata are for the user, but common-appdata is for the system.

3- then comes the issue of upgrade. defparameter* needs be enriched with some optional version thing, and only overwrite the previous value if upgrading from too old a version, which if not necessary older than *oldest-forward-compatible-asdf-version* (but defaulting to it). Instead of using a hook on *post-upgrade-cleanup-hook*, it should probably compare to the version, and overwrite if (version< actual-version-upgraded-from oldest-forward-compatible-asdf-version-for-this-variable).