Compare commits
18 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e322b6777a | ||
|
|
3fad9f5840 | ||
|
|
cffcef4887 | ||
|
|
accc35ddf7 | ||
|
|
661eb80d46 | ||
|
|
48b1c49075 | ||
|
|
ad3250599d | ||
|
|
b5bf37d4e2 | ||
|
|
e106accc5f | ||
|
|
7dd074baa3 | ||
|
|
dd5f87b403 | ||
|
|
934e14efcb | ||
|
|
21d9bbaf32 | ||
|
|
02ba907167 | ||
|
|
39b75841a0 | ||
|
|
a54d2f9237 | ||
|
|
fc6248a03a | ||
|
|
59542fc2bf |
4 changed files with 102 additions and 12 deletions
13
.gitignore
vendored
13
.gitignore
vendored
|
|
@ -16,3 +16,16 @@
|
|||
/snakemake-7.18.1.tar.gz
|
||||
/snakemake-7.18.2.tar.gz
|
||||
/snakemake-7.19.1.tar.gz
|
||||
/snakemake-7.20.0.tar.gz
|
||||
/snakemake-7.21.0.tar.gz
|
||||
/snakemake-7.22.0.tar.gz
|
||||
/snakemake-7.24.1.tar.gz
|
||||
/snakemake-7.25.2.tar.gz
|
||||
/snakemake-7.25.3.tar.gz
|
||||
/snakemake-7.26.0.tar.gz
|
||||
/snakemake-7.30.1.tar.gz
|
||||
/snakemake-7.31.1.tar.gz
|
||||
/snakemake-7.32.0.tar.gz
|
||||
/snakemake-7.32.2.tar.gz
|
||||
/snakemake-7.32.3.tar.gz
|
||||
/snakemake-7.32.4.tar.gz
|
||||
|
|
|
|||
3
README.packit
Normal file
3
README.packit
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
This repository is maintained by packit.
|
||||
https://packit.dev/
|
||||
The file was generated using packit 0.80.0.post8+gf2b5fcbc.
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
%bcond_without tests
|
||||
%bcond tests 1
|
||||
# Sphinx-generated HTML documentation is not suitable for packaging; see
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2006555 for discussion.
|
||||
%bcond_without doc_pdf
|
||||
%bcond doc_pdf 1
|
||||
|
||||
%global _description %{expand:
|
||||
The Snakemake workflow management system is a tool to create reproducible and
|
||||
|
|
@ -12,15 +12,18 @@ Finally, Snakemake workflows can entail a description of required software,
|
|||
which will be automatically deployed to any execution environment.}
|
||||
|
||||
Name: snakemake
|
||||
Version: 7.19.1
|
||||
Version: 7.32.4
|
||||
Release: %autorelease
|
||||
Summary: Workflow management system to create reproducible and scalable data analyses
|
||||
|
||||
# The entire project is (SPDX) MIT, except:
|
||||
# - versioneer.py is LicenseRef-Fedora-Public-Domain (“License: Public Domain”)
|
||||
# but does not contribute to the license of the binary RPM
|
||||
# SPDX
|
||||
License: MIT
|
||||
# - versioneer.py is Unlicense
|
||||
# - snakemake/_version.py says:
|
||||
# This file is released into the public domain.
|
||||
# which would be LicenseRef-Fedora-Public-Domain, except that the comments in
|
||||
# versioneer.py make it clear that Unlicense is intended for the generated
|
||||
# files as well.
|
||||
License: MIT AND Unlicense
|
||||
URL: https://snakemake.readthedocs.io/en/stable/index.html
|
||||
Source0: https://github.com/snakemake/snakemake/archive/v%{version}/snakemake-%{version}.tar.gz
|
||||
|
||||
|
|
@ -32,6 +35,13 @@ Patch: snakemake-7.11.0-docs-no-animated-demo.patch
|
|||
|
||||
BuildRequires: python3-devel
|
||||
|
||||
BuildRequires: help2man
|
||||
|
||||
BuildRequires: vim-filesystem
|
||||
Requires: vim-filesystem
|
||||
|
||||
Provides: vim-snakemake = %{version}-%{release}
|
||||
|
||||
%if %{with tests}
|
||||
# See test-environment.yml for a listing of test dependencies, along with a lot
|
||||
# of other cruft.
|
||||
|
|
@ -67,7 +77,7 @@ BuildRequires: /usr/bin/rsvg-convert
|
|||
# No metapackage for “pep” extra because the following are not packaged:
|
||||
# - python3-eido
|
||||
# - python3-peppy
|
||||
%pyproject_extras_subpkg -n snakemake reports messaging google-cloud
|
||||
%pyproject_extras_subpkg -n snakemake reports messaging google-cloud azure
|
||||
|
||||
%prep
|
||||
%autosetup -n snakemake-%{version} -p1
|
||||
|
|
@ -83,10 +93,16 @@ sed -r -i 's@"python"@"%{python3}"@g' tests/test_linting.py
|
|||
sed -r -i '/sphinxcontrib-napoleon/d' docs/requirements.txt
|
||||
# Since pdflatex cannot handle Unicode inputs in general:
|
||||
echo "latex_engine = 'xelatex'" >> docs/conf.py
|
||||
# Copy and rename nano and vim extensions readmes for use in the main
|
||||
# documentation directory.
|
||||
for editor in nano vim
|
||||
do
|
||||
cp -vp "misc/${editor}/README.md" "README-${editor}.md"
|
||||
done
|
||||
|
||||
%generate_buildrequires
|
||||
# Generate BR’s for all supported extras to ensure they do not FTI
|
||||
%pyproject_buildrequires -x reports,messaging,google-cloud %{?with_doc_pdf:docs/requirements.txt}
|
||||
%pyproject_buildrequires -x reports,messaging,google-cloud,azure %{?with_doc_pdf:docs/requirements.txt}
|
||||
|
||||
%build
|
||||
%pyproject_wheel
|
||||
|
|
@ -108,6 +124,37 @@ PYTHONPATH="${PWD}" %make_build -C docs latexpdf SPHINXOPTS='%{?_smp_mflags}'
|
|||
%pyproject_install
|
||||
%pyproject_save_files snakemake
|
||||
|
||||
# We wait until %%install to generate the man page so that we can use the
|
||||
# proper script entry point. The generated man page is not perfect, but it is
|
||||
# good enough to be useful.
|
||||
install -d %{buildroot}%{_mandir}/man1
|
||||
PATH="${PATH-}:%{buildroot}%{_bindir}" \
|
||||
PYTHONPATH='%{buildroot}%{python3_sitelib}' \
|
||||
help2man --no-info --name='%{summary}' snakemake \
|
||||
> %{buildroot}%{_mandir}/man1/snakemake.1
|
||||
# No man page for snakemake-bash-completion since it is not intended for manual
|
||||
# invocation.
|
||||
|
||||
# Generate and install shell completions.
|
||||
install -d %{buildroot}%{bash_completions_dir}
|
||||
# Since 7.29.0, snakemake --bash-completion no longer works without a Snakefile
|
||||
# https://github.com/snakemake/snakemake/issues/2336
|
||||
touch Snakefile
|
||||
PATH="${PATH-}:%{buildroot}%{_bindir}" \
|
||||
PYTHONPATH='%{buildroot}%{python3_sitelib}' \
|
||||
snakemake --bash-completion \
|
||||
> %{buildroot}%{bash_completions_dir}/snakemake.bash
|
||||
|
||||
# Install nano syntax highlighting
|
||||
install -t '%{buildroot}%{_datadir}/nano' -D -m 0644 -p \
|
||||
misc/nano/syntax/snakemake.nanorc
|
||||
|
||||
# Install vim syntax highlighting
|
||||
install -d '%{buildroot}%{_datadir}/vim/vimfiles'
|
||||
cp -vrp misc/vim/* '%{buildroot}%{_datadir}/vim/vimfiles'
|
||||
find '%{buildroot}%{_datadir}/vim/vimfiles' \
|
||||
-type f -name 'README.*' -print -delete
|
||||
|
||||
%check
|
||||
%if %{with tests}
|
||||
# Lint output “Migrate long run directives into scripts or notebooks …” is
|
||||
|
|
@ -120,19 +167,46 @@ k="${k-}${k+ and }not test_tes"
|
|||
# Require a running slurm instance; maybe this is possible to set up
|
||||
# temporarily in the offline build environment, but we don’t know how.
|
||||
k="${k-}${k+ and }not test_slurm_"
|
||||
# tests/test_google_lifesciences.py needs a network connection (and GCP credentials)
|
||||
%pytest -v -k "${k-}" --ignore tests/test_google_lifesciences.py
|
||||
|
||||
# Needs a network connection (and GCP credentials):
|
||||
ignore="${ignore-} --ignore=tests/test_google_lifesciences.py"
|
||||
# ______ ERROR collecting tests/test_conda_python_script/test_script.py ______
|
||||
# import file mismatch:
|
||||
# imported module 'test_script' has this __file__ attribute:
|
||||
# /builddir/build/BUILD/snakemake-7.31.1/tests/test_conda_python_3_7_script/test_script.py
|
||||
# which is not the same as the test file we want to collect:
|
||||
# /builddir/build/BUILD/snakemake-7.31.1/tests/test_conda_python_script/test_script.py
|
||||
# HINT: remove __pycache__ / .pyc files and/or use a unique basename for your test file modules
|
||||
#
|
||||
# Plus, this would add an unwanted BuildRequires on %%{py3_dist Pillow}.
|
||||
ignore="${ignore-} --ignore-glob=tests/test_conda_python_3_7_script/*"
|
||||
|
||||
%pytest -v -k "${k-}" ${ignore-}
|
||||
%endif
|
||||
|
||||
%files -f %{pyproject_files}
|
||||
%{_bindir}/snakemake
|
||||
%{_mandir}/man1/snakemake.1*
|
||||
|
||||
%{_bindir}/snakemake-bash-completion
|
||||
%{bash_completions_dir}/snakemake.bash
|
||||
|
||||
# This is not owned by the filesystem package, and there is no nano-filesystem
|
||||
# subpackage, so we co-own the directory to avoid depending on nano.
|
||||
%dir %{_datadir}/nano/
|
||||
%{_datadir}/nano/snakemake.nanorc
|
||||
|
||||
%{_datadir}/vim/vimfiles/ftdetect/snakemake.vim
|
||||
%{_datadir}/vim/vimfiles/ftplugin/snakemake/
|
||||
%{_datadir}/vim/vimfiles/syntax/snakemake.vim
|
||||
|
||||
%files doc
|
||||
%license LICENSE.md
|
||||
%doc CHANGELOG.md
|
||||
%doc CODE_OF_CONDUCT.md
|
||||
%doc README.md
|
||||
%doc README-nano.md
|
||||
%doc README-vim.md
|
||||
%if %{with doc_pdf}
|
||||
%doc docs/_build/latex/Snakemake.pdf
|
||||
%endif
|
||||
|
|
|
|||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (snakemake-7.19.1.tar.gz) = d35d4f61eef4f25a7f4b5f1869e10e259fe9aad11704ee59cd4f9c0ba1a2f58cde197be57eee6ed478bedc865971b584c1a3802e2044bb9817be5d5c4d1800d1
|
||||
SHA512 (snakemake-7.32.4.tar.gz) = 34fef61528b18facab798652c88ed5c698ef02161e023255fdd024b7c7781c4e582cdb04b2740fdff9b6f3600acaec719742984acee57920bb48ef3b5af99d9a
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue