Bug#886570: Please move all Recommends to Suggests, or delete them

Ian Jackson ijackson at chiark.greenend.org.uk
Sun Jan 7 18:22:02 UTC 2018


Package: admesh
Version: 0.98.2-3+b1

I asked to install admesh:

root at zealot:~# apt-get install admesh
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  cython cython3 geomview gmsh gmsh-doc libadmesh1 libaec0 libarmadillo7
  libarpack2 libcgns3.3 libdap23 libdapclient6v5 libdapserver7v5 libepsilon1
  libfabric1 libfltk-gl1.3 libfreexl1 libgdal20 libgeomview-1.9.5
  libgeos-3.5.1 libgeos-c1v5 libgeotiff2 libgmsh2v5 libhdf4-0-alt libhdf5-100
  libhdf5-openmpi-100 libhwloc-plugins libhwloc5 libibverbs1 libkmlbase1
  libkmlconvenience1 libkmldom1 libkmlengine1 libkmlregionator1 libkmlxsd1
  libmed1v5 libminizip1 libnetcdf-c++4 libnetcdf11 libogdi3.2 libopenmpi2
  libproj12 libpsm-infinipath1 libpython3-dev libpython3.5-dev libqt5qml5
  libqt5quick5 libqt5sql5 libqt5sql5-sqlite libqt5webkit5 librdmacm1
  libspatialite7 libsuperlu5 libsz2 libtet1.5 liburiparser1 libvtk6.3
  libvtk6.3-qt mpi-default-bin ocl-icd-libopencl1 odbcinst odbcinst1debian2
  openmpi-bin openmpi-common paraview paraview-doc paraview-python proj-bin
  proj-data python-admesh python-autobahn python-cbor python-cffi
  python-concurrent.futures python-lz4 python-mpi4py python-msgpack
  python-nacl python-pycparser python-qrcode python-snappy python-trollius
  python-txaio python-vtk6 python3-admesh python3-dev python3.5-dev
Suggested packages:
  cython-doc geotiff-bin gdal-bin libgeotiff-epsg libhdf4-doc libhdf4-alt-dev
  hdf4-tools libhwloc-contrib-plugins libmed-doc libmed-tools ogdi-bin
  qt5-qmltooling-plugins vtk6-doc vtk6-examples opencl-icd hdf5-tools h5utils
  python-nacl-doc python-txaio-doc mayavi2
The following NEW packages will be installed:
  admesh cython cython3 geomview gmsh gmsh-doc libadmesh1 libaec0
  libarmadillo7 libarpack2 libcgns3.3 libdap23 libdapclient6v5 libdapserver7v5
  libepsilon1 libfabric1 libfltk-gl1.3 libfreexl1 libgdal20 libgeomview-1.9.5
  libgeos-3.5.1 libgeos-c1v5 libgeotiff2 libgmsh2v5 libhdf4-0-alt libhdf5-100
  libhdf5-openmpi-100 libhwloc-plugins libhwloc5 libibverbs1 libkmlbase1
  libkmlconvenience1 libkmldom1 libkmlengine1 libkmlregionator1 libkmlxsd1
  libmed1v5 libminizip1 libnetcdf-c++4 libnetcdf11 libogdi3.2 libopenmpi2
  libproj12 libpsm-infinipath1 libpython3-dev libpython3.5-dev libqt5qml5
  libqt5quick5 libqt5sql5 libqt5sql5-sqlite libqt5webkit5 librdmacm1
  libspatialite7 libsuperlu5 libsz2 libtet1.5 liburiparser1 libvtk6.3
  libvtk6.3-qt mpi-default-bin ocl-icd-libopencl1 odbcinst odbcinst1debian2
  openmpi-bin openmpi-common paraview paraview-doc paraview-python proj-bin
  proj-data python-admesh python-autobahn python-cbor python-cffi
  python-concurrent.futures python-lz4 python-mpi4py python-msgpack
  python-nacl python-pycparser python-qrcode python-snappy python-trollius
  python-txaio python-vtk6 python3-admesh python3-dev python3.5-dev
0 upgraded, 88 newly installed, 0 to remove and 0 not upgraded.
Need to get 159 MB/159 MB of archives.
After this operation, 583 MB of additional disk space will be used.
Do you want to continue? [Y/n] ^C
root at zealot:~# 

That's not really sensible.  This seems to be due to:

  Recommends: geomview, gmsh, paraview, python-admesh, python3-admesh

According to policy (7.2):

  Recommends

    This declares a strong, but not absolute, dependency.

    The Recommends field should list packages that would be found
    together with this one in all but unusual installations.
    
The package admesh.deb is a command-line utility which seems to me to
work quite well standalone.  My installation - which I use for 3D
printing design - doesn't need any of those dependencies.  I use
openscad to make stls and meshlab to view them.

The first three seem to be programs which one might use for viewing or
generating STL files.  I don't think it makes sense to say that "all
but unusual" installations would have one of those.  

The python libraries should likewise be omitted.  If the user has
chosen to install a command line utility, there is no reason to think
they should install some python library.


Also, looking at python3-admesh I see it
  Recommends: admesh
That also seems wrong to me, unless the python modules work by
calling the command line utility (in which case it should be Depends).

You don't want someone whose Python program uses the Python admesh
libraries to pull in whole piles of stuff, too.


Thanks,
Ian.

-- 
Ian Jackson <ijackson at chiark.greenend.org.uk>   These opinions are my own.

If I emailed you from an address @fyvzl.net or @evade.org.uk, that is
a private address which bypasses my fierce spamfilter.



More information about the debian-science-maintainers mailing list