-
-
Notifications
You must be signed in to change notification settings - Fork 481
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
Add spkg-legacy-uninstall scripts for most standard packages #25140
Comments
Changed keywords from none to uninstall |
Changed dependencies from #25139 to none |
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
|
comment:5
As a reminder, the goal of this is to make it so that |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:7
Added This is now done for at least most, if not all packages that have DESTDIR support from #24024. It doesn't make sense to do for packages that haven't been converted to the new install/uninstall method yet. However, for any remaining packages that need to be converted, they should also get an |
comment:8
Feel free to set this to positive review if you are confident that this still works. |
Reviewer: Julian Rüth |
comment:9
The pyflakes plugin found an actual bug in the elliptic_curves package; it wasn't otherwise caught since I didn't bump the package versions for this (it isn't really necessary to). I think I should fix that, and test doing a forced-reinstall of all these packages. I know I did that a long time ago back when this was part of #22510, but that was then... |
comment:11
I believe this issue can reasonably be addressed for Sage 8.4. |
This comment has been minimized.
This comment has been minimized.
comment:13
First of all, there are merge conflicts. Second, do we really need this? I understand that you want to clean up the I'm not actively against this ticket, it's just that I don't see the point. |
Changed commit from |
comment:19
When reinstalling an already installed elliptic_curves:
This breaks incremental rebuilds... |
comment:20
Please check that all packages can be installed twice before settings back to positive review. |
Changed branch from |
Commit: |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:23
Yes, there were still several problems with the spkg-install for elliptic_curves; I think it should just be updated in a separate ticket. It should not have been included in this ticket in the first place since it was only intending to update packages that already had working DESTDIR support. New commits:
|
comment:25
Retargeting some of my tickets (somewhat optimistically for now). |
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
|
comment:27
Rebased this, though some of these are now handled in other tickets so I need to clean it up a bit more (focus only on packages that already otherwise have been fixed as part of #24024). |
comment:28
Removing most of the rest of my open tickets out of the 8.7 milestone, which should be closed. |
<!-- ^^^^^ Please provide a concise, informative and self-explanatory title. Don't put issue numbers in there, do this in the PR body below. For example, instead of "Fixes sagemath#1234" use "Introduce new method to calculate 1+1" --> <!-- Describe your changes here in detail --> Most normal SPKGs are installed by staging in `DESTDIR`. When copying to the final install location in `SAGE_LOCAL`, an installation record is created, which is used later in package uninstallation. However, when SPKG installation was switched to using staging in `DESTDIR` (Meta-ticket sagemath#24024), the parts of `spkg-install` scripts that used to be responsible for removing an old version of the installed package were either kept in place or moved to `spkg-legacy-uninstall` scripts. This was done to enable incremental builds from older installations. By passage of time, this is no longer needed. Some of the removals are a partial cherry-pick from sagemath#25140 by @embray. We also switch `frobby` to `DESTDIR` staging and *add* an `spkg-legacy- uninstall` script. Resolves sagemath#25140. Resolves sagemath#30480. <!-- Why is this change required? What problem does it solve? --> <!-- If this PR resolves an open issue, please link to it here. For example "Fixes sagemath#12345". --> <!-- If your change requires a documentation PR, please link it appropriately. --> ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> <!-- If your change requires a documentation PR, please link it appropriately --> <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> <!-- Feel free to remove irrelevant items. --> - [x] The title is concise, informative, and self-explanatory. - [x] The description explains in detail what this PR is about. - [x] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation accordingly. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on - sagemath#12345: short description why this is a dependency - sagemath#34567: ... --> - Depends on sagemath#36778 (merged here to resolve merge conflict) <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> URL: sagemath#36839 Reported by: Matthias Köppe Reviewer(s): Dima Pasechnik
This is a followup to #25139 and represents work that was originally done in #22510 to convert most packages to use
spkg-legacy-uninstall
and remove uninstall-related commands from theirspkg-install
scripts.This work was brought over from an older branch and still needs some adjustment: It should incorporate the changes from the #24024 metaticket which conflict with some of these changes. There are also some additional optional and experimental packages (and maybe a couple standard packages) that still need to be updated as well.
Probably won't bother with that until and unless #25139 is approved of in some form that still includes the
spkg-legacy-uninstall
feature.To summarize what this is about: Part of the goal in implementing the new installation/uninstallation system for packages is that
spkg-install
should, ideally, not modify$SAGE_LOCAL
in any way, at least for packages that supportDESTDIR
-based installation. This allows more separation from the building of packages from their runtime installation target.However, many packages'
spkg-install
orspkg-build
include commands (mostly in the form ofrm -rf
's) to clean up files from previous installs of those packages. This is no longer necessary for new-style package installations that track exactly what files are installed by a package. But it is still necessary when upgrading from old installs of packages that don't have a file manifest. This is what thespkg-legacy-uninstall
script is for. It's just taking therm -rf
's fromspkg-install
and moving it into a separate script that is called by the uninstaller if it doesn't have a file manifest for that package.So this ticket is just creating the
spkg-legacy-uninstall
for many packages that already haveDESTDIR
support.Component: build
Keywords: uninstall
Author: Erik Bray
Branch/Commit: u/embray/build/spkg-uninstall/legacy-uninstallers @
e2d2b01
Reviewer: Julian Rüth
Issue created by migration from https://trac.sagemath.org/ticket/25140
The text was updated successfully, but these errors were encountered: