For some time, I have been feeling indecisive about how long I want to
continue maintaining Snakemake, https://snakemake.github.io/, in Fedora.
The decision to orphan Snakemake is not an obvious one, but if I am to
free up some time then I must let some things go. None of the packages
involved is currently all that troublesome or high-maintenance, but the
number of packages involved is very high once you consider all of the
Snakemake plugins and the various dependencies that I am taking care of
solely to support Snakemake. Even with a low workload per package, the
total effort does add up.
I also don’t love the bundle of pre-compiled assets for HTML reports,
especially in light of unresolved questions like
https://github.com/snakemake/snakemake/issues/3905 and
https://github.com/snakemake/snakemake/issues/3841. This is not a crisis
for packaging Snakemake. I believe that the way the asset bundle is
packaged complies with current guidelines considering
https://pagure.io/fesco/issue/3177 and pagure.io/fesco/issue/3269, and I
put a *lot* of effort into fully auditing and documenting the applicable
licenses. Still, it constitutes a sort of long-term liability at best,
and the situation will probably worsen with time due to upstream inertia
and as FPC looks to find realistic ways to tighten up the rules around
such assets.
Maybe it’s all worth it, and Snakemake in Fedora is providing a lot of
value to some people. I’m not really sure. Snakemake uses mixed-integer
linear programming to optimize execution plans via python-pulp, and
having all of this in system packages nicely exposes the system-packaged
optimization solvers. But I don’t have very good insight into how people
are actually using all of this in practice. Are people mostly installing
Snakemake the upstream-recommended way, with pixi, instead?
In addition to the top-level snakemake package, I am orphaning the
following 23 packages that are part of Snakemake. Some of these are hard
dependencies for the snakemake package, and a number are useful optional
plugins, mostly first-party ones written by the Snakemake developers.
python-snakemake-executor-plugin-cluster-generic
python-snakemake-executor-plugin-cluster-sync
python-snakemake-executor-plugin-flux
python-snakemake-executor-plugin-kubernetes
python-snakemake-executor-plugin-slurm
python-snakemake-executor-plugin-slurm-jobstep
python-snakemake-executor-plugin-tes
python-snakemake-interface-common
python-snakemake-interface-executor-plugins
python-snakemake-interface-logger-plugins
python-snakemake-interface-report-plugins
python-snakemake-interface-scheduler-plugins
python-snakemake-interface-storage-plugins
python-snakemake-logger-plugin-rich
python-snakemake-storage-plugin-azure
python-snakemake-storage-plugin-fs
python-snakemake-storage-plugin-ftp
python-snakemake-storage-plugin-gcs
python-snakemake-storage-plugin-http
python-snakemake-storage-plugin-s3
python-snakemake-storage-plugin-webdav
python-snakemake-storage-plugin-xrootd
python-snakemake-storage-plugin-zenodo
I also abandoned review requests for two more Snakemake plugins:
python-snakemake-executor-plugin-aws-batch,
python-snakemake-storage-plugin-irods,
https://bugzilla.redhat.com/show_bug.cgi?id=2406722
python-snakemake-storage-plugin-irods,
https://bugzilla.redhat.com/show_bug.cgi?id=2406722
In addition, I am orphaning the following 14 Python packages that I have
been maintaining solely because they are dependencies for one or more of
the Snakemake packages above. Each of these would become a leaf package
if the Snakemake packages were retired. The python-webdav4,
python-wsgidav, and python-yte packages contain potentially-useful
command-line tools, and the others are library-only.
python-argparse-dataclass
python-conda-inject
python-connection_pool
python-dpath
python-ftputil
python-irodsclient
python-py-tes
python-reretry
python-smart_open
python-sysrsync
python-throttler
python-webdav4
python-wsgidav
python-yte
In addition, I’m orphaning the following two packages that are
dependencies for python-google-cloud-storage, which I don’t maintain but
which is only a dependency for packages in the above lists.
python-google-crc32c
python-google-resumable-media
All of the above packages have been carefully maintained downstream and
are up to date. Some of the upstreams are not very active. In addition
to orphaning these packages, I am removing neuro-sig as a group
co-maintainer.
I’m holding on to the following packages for now, even though they only
support Snakemake, because I have a general interest in keeping the
COIN-OR optimizers packaged in Fedora. For these, too, I’m removing
neuro-sig as a group co-maintainer. I might change my mind about these
later. If you are interested in co-maintaining these or taking them over
entirely, let me know.
python-pulp
python-pyscipopt
--
_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct:
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives:
https://lists.fedoraproject.org/archives/list/[email protected]
Do not reply to spam, report it:
https://forge.fedoraproject.org/infra/tickets/issues/new