Opened 3 years ago

Last modified 13 days ago

#28218 needs_info defect

fix awali installation procedure to provide files list

Reported by: Dima Pasechnik Owned by:
Priority: major Milestone: sage-9.8
Component: build Keywords:
Cc: Thierry Monteil, Erik Bray Merged in:
Authors: Dima Pasechnik Reviewers:
Report Upstream: N/A Work issues:
Branch: u/dimpase/packages/awali-inst (Commits, GitHub, GitLab) Commit: dbe578f49d449452104e1e04cf21e590d4172f5d
Dependencies: #28217 Stopgaps:

Status badges

Description

See https://groups.google.com/d/msg/sage-devel/2T3VWmbiIX4/0-YAA48lAgAJ

The uninstaller looks in local/var/lib/sage/installed/awali-* for a list of files to unstall. However, it seems to contain no files:

{
    "package_name": "awali",
    "package_version": "1.0.2-190218",
    "install_date": "Sat Jul 20 10:44:01 BST 2019",
    "system_uname": "Linux hilbert 5.1.12-gentoo #1 SMP Fri Jun 21 19:27:38 BST 2019 x86_64 Intel(R) Core(TM) i7-6600U CPU @ 2.60GHz GenuineIntel GNU/Linux",
    "sage_version": "SageMath version 8.9.beta2, Release Date: 2019-07-10",
    "test_result": "",
    "files": [
        
    ]
}

Change History (20)

comment:1 Changed 3 years ago by Thierry Monteil

Cc: Thierry Monteil added

comment:2 Changed 3 years ago by Dima Pasechnik

I suspect cmake in spkg-install of awali should be sdh_cmake. Checking if it helps now.

comment:3 Changed 3 years ago by Thierry Monteil

See also #28217

comment:4 Changed 3 years ago by Dima Pasechnik

Authors: Dima Pasechnik
Branch: u/dimpase/packages/awali-inst
Commit: dbe578f49d449452104e1e04cf21e590d4172f5d
Status: newneeds_review

attached branch fixes the issue for me


New commits:

dbe578ffixes uninstallation issue with awali on #28218

comment:5 Changed 3 years ago by Dima Pasechnik

one needs to double-check if all the files installed are actually removed. I can confirm that most are removed by make awali-clean after installing it with this patch applied.

comment:6 Changed 3 years ago by Vincent Delecroix

Could you double check that awalipy also get uninstalled? (there are 3 files in site-packages, a .so, a .py and an egg). The install procedure of awalipy uses distutils (which does not provide any uninstall procedure).

comment:7 Changed 3 years ago by Dima Pasechnik

no, it doesn't get uninstalled, local/lib/python*/site-packages/awalipy* files still linger on. And they are not listed in local/var/lib/sage/installed/awali-*.

One way around it would be to add spkg-legacy-uninstall file, although, strictly speaking, simply removing these files there is not completely kosher. (Although spkg-legacy-uninstall does this kind of removal).

I read somewhere that distutils2 have an uninstall feature, but I have no idea what distutils2 is.

comment:8 Changed 3 years ago by Dima Pasechnik

Cc: Erik Bray added
Status: needs_reviewneeds_info

Sorry, spkg-legacy-uninstall won't work (it only is called if there is no files field in the JSON file local/var/lib/sage/installed/awali-*, but we do get files field, it's just these awalipy files are not present there.

Perhaps Erik can comment on this, it looks to me like a bug in sdh_make_install...

comment:9 Changed 3 years ago by Vincent Delecroix

Dependencies: #28217

comment:10 Changed 3 years ago by Erik Bray

I have no idea what this package is, but it sounds like it just doesn't fully perform a DESTDIR installation properly.

Whatever you do you just need to make sure that when the package is "installed" it correctly installs all files to the temporary root given by SAGE_DESTDIR (most of the sdh_ commands take care of this automatically, for packages that do things in a standard way).

Your package should not be installing files directly into SAGE_LOCAL. If it's doing that then its build script is wrong.

comment:11 Changed 3 years ago by Dima Pasechnik

it uses cmake, and one needs to supply the installation prefix to it. everything is done with sdh_ scripts, so it could be an upstream bug, or an sdh_cmake bug...

comment:12 Changed 3 years ago by Erik Bray

I don't have time right now to look at it in detail, but just from a quick glance of its CMakeLists.txt it is doing some complicated customizations that definitely don't seem to support DESTDIR-like installs.

comment:13 Changed 3 years ago by Erik Bray

Milestone: sage-8.9sage-9.1

Ticket retargeted after milestone closed

comment:14 Changed 2 years ago by Matthias Köppe

Milestone: sage-9.1sage-9.2

comment:15 Changed 2 years ago by Matthias Köppe

Milestone: sage-9.2sage-9.3

comment:16 Changed 19 months ago by Matthias Köppe

Milestone: sage-9.3sage-9.4

Sage development has entered the release candidate phase for 9.3. Setting a new milestone for this ticket based on a cursory review of ticket status, priority, and last modification date.

comment:17 Changed 15 months ago by Matthias Köppe

Milestone: sage-9.4sage-9.5

Setting a new milestone for this ticket based on a cursory review.

comment:18 Changed 10 months ago by Matthias Köppe

Milestone: sage-9.5sage-9.6

Stalled in needs_review or needs_info; likely won't make it into Sage 9.5.

comment:19 Changed 6 months ago by Matthias Köppe

Milestone: sage-9.6sage-9.7

comment:20 Changed 13 days ago by Matthias Köppe

Milestone: sage-9.7sage-9.8
Note: See TracTickets for help on using tickets.