Upstream CI: send patches to use Debian packages when existing?
Hello,
I am not really sure about how this would be perceived by upstream since
they do not only want to ensure that their software works on
Debian/Ubuntu .. but that their users can repeat the installation on
their platform, too. There may hence be a point to install software from
pip or via conda, both being mostly cross-platform, instead of using the
same package from the Linux distribution.
But then again ... let's discuss a few:
https://github.com/nanoporetech/pychopper/blob/master/.gitlab-ci.yml
before_script:
- apt-get update
- apt-get remove python
- apt-get install -y python3 python3-pip make python3-numpy
python3-matplotlib hmmer
- update-alternatives --install /usr/bin/python python
/usr/bin/python3 10
- alias python=python3; pip3 install --upgrade pip
- hash -r pip3
- alias python=python3; pip3 install sphinx sphinx-argparse
sphinx_rtd_theme pytest pandas
- alias python=python3; pip3 install -e ./
So, if the above installs numpy from "us", it can also install sphinx,
pytest and pandas from us. Right?
https://github.com/nanoporetech/medaka/blob/master/.gitlab-ci.yml
is completely debianised already.
https://github.com/nanoporetech/flappie/blob/master/.travis.yml
debianised but
https://github.com/nanoporetech/flappie/blob/master/.gitlab-ci.yml
cheats with their own scrappie-docker image
https://github.com/nanoporetech/qcat/blob/master/Dockerfile
starts out with Ubuntu 16:04 and updates a wheels and setuptools via pip.
https://github.com/arq5x/poretools/blob/master/Dockerfile
was last edited 2014. Ouch. Ubuntu trusty this is, right? From pip it
fetches what today is python3-numexpr and the R packages we have, too.
https://github.com/wdecoster/nanomath/blob/master/.travis.yml
nothing bound to any distribution - we have flake8 which is installed
via pip
https://github.com/python-streamz/streamz/blob/master/.travis.yml
installs conda (and the requirements.txt that Debian also has with it)
but gets python3-distributed from git
Don't see anything particularly Debianish here.
I sense that there are two major categories of testing/distribution
environments:
A) those that give all they can to be platform independent - like only
using Python associated tools
B) those that start out with a Debian environment (typically Ubuntu)
and then mix downstream from there
We should not bother A) but the B)-types - yes, they should get pull
requests from us, especially so when
their package is distributed with Debian already.
Opinions?
Steffen
Reply to: