Opened 2 years ago
Last modified 2 years ago
#65326 new defect
py-mayavi: dependency resolution does not install correct vtk variant
Reported by: | p-bro | Owned by: | |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | jjstickel (Jonathan Stickel), stromnov (Andrey Stromnov), rubendibattista (Ruben Di Battista) | |
Port: | py-mayavi |
Description
Hi,
I just attempted to install py-mayavi. As my default variant is py39, this then attempted to install py39-mayavi, and a list of dependencies:
The following dependencies will be installed: eigen3 gl2ps jsoncpp libharu netcdf-cxx py39-alabaster py39-apptools py39-babel py39-configobj py39-envisage py39-imagesize py39-mayavi py39-pyface py39-snowballstemmer py39-sphinx py39-sphinxcontrib-applehelp py39-sphinxcontrib-devhelp py39-sphinxcontrib-htmlhelp py39-sphinxcontrib-jsmath py39-sphinxcontrib-qthelp py39-sphinxcontrib-serializinghtml py39-traits py39-traitsui sphinx_select vtk
However, the final installation of py39-mayavi failed with the error message:
---> Fetching archive for py39-mayavi ---> Attempting to fetch py39-mayavi-4.7.4_0.darwin_19.x86_64.tbz2 from https://packages.macports.org/py39-mayavi ---> Attempting to fetch py39-mayavi-4.7.4_0.darwin_19.x86_64.tbz2 from https://mse.uk.packages.macports.org/py39-mayavi ---> Attempting to fetch py39-mayavi-4.7.4_0.darwin_19.x86_64.tbz2 from https://ema.uk.packages.macports.org/py39-mayavi ---> Fetching distfiles for py39-mayavi ---> Attempting to fetch mayavi-4.7.4.tar.gz from https://distfiles.macports.org/py-mayavi ---> Verifying checksums for py39-mayavi ---> Extracting py39-mayavi ---> Configuring py39-mayavi Error: Failed to configure py39-mayavi: vtk must be installed with +python39. Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_python_py-mayavi/py39-mayavi/main.log for details. Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug. Error: Processing of port py-mayavi failed
My expectation would be that ports manages to recongise it needs vtk+python39, if vtk isn't installed yet.
The same happens, if one explicity installs py39-mayavi - it still does not install the right variant of vtk.
A log of the install attempt is attached.
Attachments (1)
Change History (5)
Changed 2 years ago by p-bro
Attachment: | install_py-mayavi.log added |
---|
comment:1 Changed 2 years ago by jmroot (Joshua Root)
Cc: | stromnov rubendibattista added |
---|---|
Port: | py39-mayavi removed |
It's not possible for a port to depend on a specific variant of another port. A corollary to this is that a variant should not add anything that some other port might want to depend on. The message printed by py39-mayavi is there to alert you to this unfortunate situation so it can at least be fixed manually. Ideally, the python-related components of VTK would be installed by separate ports or subports, one per python version.
comment:2 Changed 2 years ago by p-bro
That is unfortunate - it also means I cannot maintain multiple python versions of py-mayavi as easily, as that requires activation and deactivation of the various vtk +pythonXX variants...
comment:3 Changed 2 years ago by jjstickel (Jonathan Stickel)
See #126. Extending the logic from that ticket, this one should be closed as won't fix
.
comment:4 Changed 2 years ago by jmroot (Joshua Root)
Or it could be considered an enhancement request for vtk.
py-mayavi install log