Compare commits
No commits in common. "rawhide" and "f42" have entirely different histories.
10 changed files with 892 additions and 256 deletions
74
.gitignore
vendored
74
.gitignore
vendored
|
|
@ -65,77 +65,3 @@
|
|||
/snakemake-8.18.2.tar.gz
|
||||
/snakemake-8.30.0.tar.gz
|
||||
/snakemake-8.30.0-assets.tar.zst
|
||||
/snakemake-9.3.3.tar.gz
|
||||
/snakemake-9.3.3-assets.tar.zst
|
||||
/snakemake-9.3.4.tar.gz
|
||||
/snakemake-9.3.4-assets.tar.zst
|
||||
/snakemake-9.4.0.tar.gz
|
||||
/snakemake-9.4.0-assets.tar.zst
|
||||
/snakemake-9.5.1.tar.gz
|
||||
/snakemake-9.5.1-assets.tar.zst
|
||||
/snakemake-6dee2b55fbfff3bdad33cecdbeb8bd55ff4586bc.tar.gz
|
||||
/snakemake-6dee2b55fbfff3bdad33cecdbeb8bd55ff4586bc-assets.tar.zst
|
||||
/snakemake-9.6.1.tar.gz
|
||||
/snakemake-9.6.1-assets.tar.zst
|
||||
/snakemake-9.6.2.tar.gz
|
||||
/snakemake-9.6.2-assets.tar.zst
|
||||
/snakemake-9.7.1.tar.gz
|
||||
/snakemake-9.7.1-assets.tar.zst
|
||||
/snakemake-9.8.0.tar.gz
|
||||
/snakemake-9.8.0-assets.tar.zst
|
||||
/snakemake-9.8.1.tar.gz
|
||||
/snakemake-9.8.1-assets.tar.zst
|
||||
/snakemake-9.8.2.tar.gz
|
||||
/snakemake-9.8.2-assets.tar.zst
|
||||
/snakemake-9.9.0.tar.gz
|
||||
/snakemake-9.9.0-assets.tar.zst
|
||||
/snakemake-9.10.0.tar.gz
|
||||
/snakemake-9.10.0-assets.tar.zst
|
||||
/snakemake-9.10.1.tar.gz
|
||||
/snakemake-9.10.1-assets.tar.zst
|
||||
/snakemake-9.11.0.tar.gz
|
||||
/snakemake-9.11.0-assets.tar.zst
|
||||
/snakemake-9.11.2.tar.gz
|
||||
/snakemake-9.11.2-assets.tar.zst
|
||||
/snakemake-9.11.3.tar.gz
|
||||
/snakemake-9.11.3-assets.tar.zst
|
||||
/snakemake-9.11.4.tar.gz
|
||||
/snakemake-9.11.4-assets.tar.zst
|
||||
/snakemake-9.11.5.tar.gz
|
||||
/snakemake-9.11.5-assets.tar.zst
|
||||
/snakemake-9.11.6.tar.gz
|
||||
/snakemake-9.11.6-assets.tar.zst
|
||||
/snakemake-9.11.7.tar.gz
|
||||
/snakemake-9.11.7-assets.tar.zst
|
||||
/snakemake-9.11.8.tar.gz
|
||||
/snakemake-9.11.8-assets.tar.zst
|
||||
/snakemake-9.11.9.tar.gz
|
||||
/snakemake-9.11.9-assets.tar.zst
|
||||
/snakemake-9.12.0.tar.gz
|
||||
/snakemake-9.12.0-assets.tar.zst
|
||||
/snakemake-9.13.0.tar.gz
|
||||
/snakemake-9.13.0-assets.tar.zst
|
||||
/snakemake-9.13.1.tar.gz
|
||||
/snakemake-9.13.1-assets.tar.zst
|
||||
/snakemake-9.13.2.tar.gz
|
||||
/snakemake-9.13.2-assets.tar.zst
|
||||
/snakemake-9.13.3.tar.gz
|
||||
/snakemake-9.13.3-assets.tar.zst
|
||||
/snakemake-9.13.4.tar.gz
|
||||
/snakemake-9.13.4-assets.tar.zst
|
||||
/snakemake-9.13.5.tar.gz
|
||||
/snakemake-9.13.5-assets.tar.zst
|
||||
/snakemake-9.13.6.tar.gz
|
||||
/snakemake-9.13.6-assets.tar.zst
|
||||
/snakemake-9.13.7.tar.gz
|
||||
/snakemake-9.13.7-assets.tar.zst
|
||||
/snakemake-9.14.2.tar.gz
|
||||
/snakemake-9.14.2-assets.tar.zst
|
||||
/snakemake-9.14.3.tar.gz
|
||||
/snakemake-9.14.3-assets.tar.zst
|
||||
/snakemake-9.14.4.tar.gz
|
||||
/snakemake-9.14.4-assets.tar.zst
|
||||
/snakemake-9.14.5.tar.gz
|
||||
/snakemake-9.14.5-assets.tar.zst
|
||||
/snakemake-9.14.6.tar.gz
|
||||
/snakemake-9.14.6-assets.tar.zst
|
||||
|
|
|
|||
13
.packit.yaml
Normal file
13
.packit.yaml
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
upstream_project_url: https://github.com/snakemake/snakemake
|
||||
copy_upstream_release_description: false
|
||||
upstream_tag_template: v{version}
|
||||
|
||||
jobs:
|
||||
- job: pull_from_upstream
|
||||
trigger: release
|
||||
dist_git_branches:
|
||||
- fedora-rawhide
|
||||
- job: koji_build
|
||||
trigger: commit
|
||||
dist_git_branches:
|
||||
- fedora-all
|
||||
|
|
@ -0,0 +1,54 @@
|
|||
From 9d99c1c7fc2bb7ebfcba570fe64f07b0646f294a Mon Sep 17 00:00:00 2001
|
||||
From: "Benjamin A. Beasley" <code@musicinmybrain.net>
|
||||
Date: Tue, 18 Mar 2025 22:18:47 -0400
|
||||
Subject: [PATCH] Revert "chore: work around setuptools 76 hash mismatch from
|
||||
March 9, 2025 (#3370)"
|
||||
|
||||
This reverts commit 477e5f80d781334afcd549c612823caba1ef6299.
|
||||
---
|
||||
pyproject.toml | 3 +--
|
||||
test-environment.yml | 5 ++---
|
||||
2 files changed, 3 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/pyproject.toml b/pyproject.toml
|
||||
index 52229b4d..275a4655 100644
|
||||
--- a/pyproject.toml
|
||||
+++ b/pyproject.toml
|
||||
@@ -1,8 +1,7 @@
|
||||
[build-system]
|
||||
build-backend = "setuptools.build_meta"
|
||||
requires = [
|
||||
- # TODO relax upper bound, as of March 9 2025 there is a hash mismatch in setuptools on pypi
|
||||
- "setuptools>=42,<76",
|
||||
+ "setuptools>=42",
|
||||
'tomli; python_version < "3.11"',
|
||||
]
|
||||
|
||||
diff --git a/test-environment.yml b/test-environment.yml
|
||||
index 6b778458..df8a30de 100644
|
||||
--- a/test-environment.yml
|
||||
+++ b/test-environment.yml
|
||||
@@ -4,7 +4,6 @@ channels:
|
||||
- nodefaults
|
||||
dependencies:
|
||||
- python >=3.11
|
||||
- - setuptools
|
||||
- yte
|
||||
- packaging
|
||||
- boto3
|
||||
@@ -58,10 +57,10 @@ dependencies:
|
||||
- nodejs # for cwltool
|
||||
- immutables
|
||||
- conda
|
||||
- - cwltool
|
||||
- - cwl-utils
|
||||
- pip
|
||||
- pip:
|
||||
+ - cwltool
|
||||
+ - cwl-utils
|
||||
- snakemake-interface-executor-plugins >=9.3.1
|
||||
- snakemake-executor-plugin-cluster-generic >=1.0.9
|
||||
- snakemake-storage-plugin-http
|
||||
--
|
||||
2.48.1
|
||||
|
||||
677
0001-chore-Add-license-texts-for-things-bundled-in-the-as.patch
Normal file
677
0001-chore-Add-license-texts-for-things-bundled-in-the-as.patch
Normal file
|
|
@ -0,0 +1,677 @@
|
|||
From 5d4175e75a0981d9d925ecde4297d3b568c403c2 Mon Sep 17 00:00:00 2001
|
||||
From: Ben Beasley <code@musicinmybrain.net>
|
||||
Date: Tue, 11 Mar 2025 11:46:53 -0400
|
||||
Subject: [PATCH] chore: Add license texts for things bundled in the assets
|
||||
(#3099)
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
<!--Add a description of your PR here-->
|
||||
This PR is intended to apply on top of
|
||||
https://github.com/snakemake/snakemake/pull/3098; see that PR for the
|
||||
first two commits.
|
||||
|
||||
From there, I attempted to account for all of the NPM packages that are
|
||||
bundled in `vega/vega.js` via dependencies. I made an effort to verify
|
||||
that every license file added in this commit actually corresponds to
|
||||
some code present in `vega.js`.
|
||||
|
||||
Next, I inspected `vega.js` for comments indicating that particular
|
||||
routines were copied, derived, or adapted from other projects, and added
|
||||
the license files for those projects. I didn’t attempt to judge whether
|
||||
or not any of snippets might be distant enough from their inspirations
|
||||
that they could perhaps claim not to be derived works under a particular
|
||||
set of copyright laws – I just took the attributions at their word.
|
||||
|
||||
Almost all of these licenses are ones (like `MIT`, `Apache-2.0`, `ISC`
|
||||
or `BSD-3-Clause`) that require including the copyright and permission
|
||||
statements (the license text) in copies and derived works, so while this
|
||||
work is fussy, tedious, and unrewarding, it would seem to be necessary.
|
||||
|
||||
So far, I only dug through `vega.js`. I still need to check if there is
|
||||
anything in `vega-lite.js` or `vega-embed.js` that isn’t already
|
||||
accounted for in `vega.js`, and I need to look at the other libraries
|
||||
too. Still, I thought I should post my work in progress in case it
|
||||
collected any feedback.
|
||||
|
||||
|
||||
### QC
|
||||
<!-- Make sure that you can tick the boxes below. -->
|
||||
|
||||
* [ ] The PR contains a test case for the changes or the changes are
|
||||
already covered by an existing test case. **N/A – this change is not
|
||||
really testable – except that building the package confirms the
|
||||
checksums match.**
|
||||
* [x] The documentation (`docs/`) is updated to reflect the changes or
|
||||
this is not necessary (e.g. if the change does neither modify the
|
||||
language nor the behavior or functionalities of Snakemake). **N/A – no
|
||||
documentation update is believed to be necessary.**
|
||||
|
||||
|
||||
<!-- This is an auto-generated comment: release notes by coderabbit.ai
|
||||
-->
|
||||
## Summary by CodeRabbit
|
||||
|
||||
- **New Features**
|
||||
- Added numerous new assets and dependencies related to the Vega
|
||||
library, enhancing functionality.
|
||||
- Expanded package declarations for various D3 modules and other
|
||||
libraries in the reporting system.
|
||||
- Introduced a new class for executing Xonsh scripts, allowing for more
|
||||
scripting options.
|
||||
- Added a new rule for running Python scripts in a Conda environment,
|
||||
improving workflow flexibility.
|
||||
- Enhanced documentation with a new "Maintainers" section and expanded
|
||||
resources.
|
||||
- Introduced a new test suite for validating Conda functionalities.
|
||||
- Enhanced data validation capabilities using both Pandas and Polars for
|
||||
handling sample data.
|
||||
|
||||
- **Bug Fixes**
|
||||
- Ensured that licenses and versions are accurately maintained for
|
||||
various libraries.
|
||||
- Improved error handling for Windows-specific issues in the testing
|
||||
framework.
|
||||
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||||
|
||||
---------
|
||||
|
||||
Co-authored-by: Filipe G. Vieira <1151762+fgvieira@users.noreply.github.com>
|
||||
Co-authored-by: Johannes Köster <johannes.koester@tu-dortmund.de>
|
||||
---
|
||||
snakemake/assets/__init__.py | 400 ++++++++++++++++++
|
||||
.../report/html_reporter/data/packages.py | 137 ++++++
|
||||
2 files changed, 537 insertions(+)
|
||||
|
||||
diff --git a/snakemake/assets/__init__.py b/snakemake/assets/__init__.py
|
||||
index 123bf130..ac343e25 100644
|
||||
--- a/snakemake/assets/__init__.py
|
||||
+++ b/snakemake/assets/__init__.py
|
||||
@@ -93,6 +93,262 @@ class Assets:
|
||||
sha256="b75f7ed0af20dedadf92c52bc236161bcf0d294ff2e6e34ca76403203349f71d",
|
||||
version="5.21.0",
|
||||
),
|
||||
+ # Begin dependencies for vega, included in vega/vega.js
|
||||
+ # Versions from https://github.com/vega/vega/blob/v5.21.0/yarn.lock.
|
||||
+ # Via vega-crossfilter, vega-encode, vega-format,
|
||||
+ # vega-functions, vega-geo, vega-regression, vega-scale, vega-statistics,
|
||||
+ # vega-time, vega-transforms, vega-view; and via d3-geo (via vega-functions,
|
||||
+ # vega-geo, vega-projection); and via d3-geo-projection (via vega-projection)
|
||||
+ #
|
||||
+ # This has its own dependency, internmap (1.0.1); however, while we can
|
||||
+ # find code from vega-crossfilter and d3-array in vega.js, there does
|
||||
+ # not appear to be any code from internmap after tree-shaking.
|
||||
+ "d3-array/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-array/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="0747bebeb06b10954913149be9b9a8bdf6fad3e6fdcbd9f9524e7a94c13d2cea",
|
||||
+ version="2.12.1",
|
||||
+ ),
|
||||
+ # Via vega-format
|
||||
+ "d3-format/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-format/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="7eea8533ea92bd8c32a901e89ecb0305890905bb12711449565ddff96891146d",
|
||||
+ version="2.0.0",
|
||||
+ ),
|
||||
+ # Via vega-format
|
||||
+ "d3-time-format/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-time-format/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="7a3cb0e5055874e67db9aa2d5fe26de23204fa994ffbad198901ffe9c812a717",
|
||||
+ version="3.0.0",
|
||||
+ ),
|
||||
+ # Via vega-time, vega-view; and via d3-time-format (via vega-format)
|
||||
+ "d3-time/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-time/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="e1211892da0b0e0585b7aebe8f98c1274fba15bafe47fa1f4ee8a7a502c06304",
|
||||
+ version="2.1.1",
|
||||
+ ),
|
||||
+ # Via vega-encode, vega-scale
|
||||
+ "d3-interpolate/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-interpolate/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="e1211892da0b0e0585b7aebe8f98c1274fba15bafe47fa1f4ee8a7a502c06304",
|
||||
+ version="2.0.1",
|
||||
+ ),
|
||||
+ # Via vega-functions, vega-geo; and via d3-interpolate (via vega-encode)
|
||||
+ "d3-color/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-color/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="e1211892da0b0e0585b7aebe8f98c1274fba15bafe47fa1f4ee8a7a502c06304",
|
||||
+ version="2.0.0",
|
||||
+ ),
|
||||
+ # Via vega-scale
|
||||
+ "d3-scale/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-scale/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="7eea8533ea92bd8c32a901e89ecb0305890905bb12711449565ddff96891146d",
|
||||
+ version="3.3.0",
|
||||
+ ),
|
||||
+ # Via vega-expression (vega-lite also depends on vega-expression)
|
||||
+ # The license file included in the NPM package does not exist directly
|
||||
+ # in https://github.com/DefinitelyTyped/DefinitelyTyped, so we use an
|
||||
+ # unpkg URL to reference the contents of the NPM package instead.
|
||||
+ "@types-estree/LICENSE": Asset(
|
||||
+ url="https://unpkg.com/@types/estree@{version}/LICENSE",
|
||||
+ sha256="c2cfccb812fe482101a8f04597dfc5a9991a6b2748266c47ac91b6a5aae15383",
|
||||
+ version="0.0.50",
|
||||
+ ),
|
||||
+ # Via vega-force
|
||||
+ "d3-force/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-force/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="e1211892da0b0e0585b7aebe8f98c1274fba15bafe47fa1f4ee8a7a502c06304",
|
||||
+ version="2.1.1",
|
||||
+ ),
|
||||
+ # Via d3-force (via vega-force)
|
||||
+ "d3-dispatch/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-dispatch/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="e1211892da0b0e0585b7aebe8f98c1274fba15bafe47fa1f4ee8a7a502c06304",
|
||||
+ version="2.0.0",
|
||||
+ ),
|
||||
+ # Via d3-force (via vega-force)
|
||||
+ "d3-quadtree/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-quadtree/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="e1211892da0b0e0585b7aebe8f98c1274fba15bafe47fa1f4ee8a7a502c06304",
|
||||
+ version="2.0.0",
|
||||
+ ),
|
||||
+ # Via vega-view; and via d3-force (via vega-force)
|
||||
+ "d3-timer/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-timer/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="e1211892da0b0e0585b7aebe8f98c1274fba15bafe47fa1f4ee8a7a502c06304",
|
||||
+ version="2.0.0",
|
||||
+ ),
|
||||
+ # Via vega-functions, vega-geo, vega-projection (directly and via
|
||||
+ # d3-geo-projection)
|
||||
+ "d3-geo/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-geo/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="c3c9d41a75b64963748657932167ec4c56404b8fd557d4f89c9eeda6e2fdf39a",
|
||||
+ version="2.0.2",
|
||||
+ ),
|
||||
+ # Via vega-hierarchy
|
||||
+ "d3-hierarchy/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-hierarchy/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="e1211892da0b0e0585b7aebe8f98c1274fba15bafe47fa1f4ee8a7a502c06304",
|
||||
+ version="2.0.0",
|
||||
+ ),
|
||||
+ # Via vega-loader
|
||||
+ # This has its own dependencies (commander 2.20.3, iconv-lite 0.4.24,
|
||||
+ # rw 1.3.3), but they are all used only in the command-line tools
|
||||
+ # rather than in the library that is bundled in vega.js.
|
||||
+ "d3-dsv/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-dsv/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="8b5304265ccedbd17567aa14a0dc6b9bf4013fee44964c46aa54fdf8527d6a68",
|
||||
+ version="2.0.0",
|
||||
+ ),
|
||||
+ # Via vega-loader; also from vega-geo/src/util/contours.js, "Based on
|
||||
+ # https://github.com/topojson/topojson-client/blob/v3.0.0/src/stitch.js"
|
||||
+ # This has its own dependency (commander 2.20.3), but it is used only
|
||||
+ # in the command-line tools rather than in the library that is bundled
|
||||
+ # in vega.js. Dependency node-fetch 2.6.4, via vega-loader, is not
|
||||
+ # used for browser builds.
|
||||
+ "topojson-client/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/topojson/topojson-client/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="4c4d15b635e04e691825a76db7d33f7f2033b55669a7430011694f31e6c65999",
|
||||
+ version="3.1.0",
|
||||
+ ),
|
||||
+ # Via vega-projection
|
||||
+ # This has its own dependencies (commander 2.20.3, resolve 1.20.0), but
|
||||
+ # they are all used only in the command-line tools rather than in the
|
||||
+ # library that is bundled in vega.js.
|
||||
+ "d3-geo-projection/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-geo-projection/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="4108a126a74cc35d4d5ae39ca5d0cc926fa7c8ec40e459a0c6d3481c69decbd8",
|
||||
+ version="3.0.0",
|
||||
+ ),
|
||||
+ # Via vega-scenegraph (directly and via d3-shape)
|
||||
+ "d3-path/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-path/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="b8265327ab678f554800e71188b1cc6b1ff57522e292d2b1c0be66f27cf328b6",
|
||||
+ version="2.0.0",
|
||||
+ ),
|
||||
+ # Via vega-scenegraph
|
||||
+ "d3-shape/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-shape/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="7eea8533ea92bd8c32a901e89ecb0305890905bb12711449565ddff96891146d",
|
||||
+ version="2.1.0",
|
||||
+ ),
|
||||
+ # Via vega-voronoi
|
||||
+ "d3-delaunay/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-delaunay/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="d19bf35c4080eea32e098a9c8d62540ffd425611ac8dfc856a233f0357d8b02e",
|
||||
+ version="5.2.0",
|
||||
+ ),
|
||||
+ # Via d3-delaunay (via vega-voronoi)
|
||||
+ "delaunator/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/mapbox/delaunator/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="27043d1a6a0e1985fde12660decbbd3b23c67de900b00609c90d4f0aa492f425",
|
||||
+ version="4.0.1",
|
||||
+ ),
|
||||
+ # End dependencies for vega, included in vega/vega.js
|
||||
+ # Begin copied/derived/adapted code in vega, included in vega/vega.js
|
||||
+ # From vega-util/src/lruCache.js, "adapted from
|
||||
+ # https://github.com/dominictarr/hashlru/ (MIT License)". Version 1.0.4
|
||||
+ # was the current version when the function was added to vega, in
|
||||
+ # commit f153863f3575bff1b42294c9cb065d80afb757ff on 2020-02-28.
|
||||
+ "hashlru/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/dominictarr/hashlru/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="08e4bd7a280eaaf1fbcaad9dad1fb94412477fcdd1cf81660988303297e5e1d1",
|
||||
+ version="1.0.4",
|
||||
+ ),
|
||||
+ # From
|
||||
+ # vega-statistics/src/regression/{poly,r-squared,pow,log,linear}.js,
|
||||
+ # "Adapted from d3-regression by Harry Stevens". Version 1.2.1 was the
|
||||
+ # current version when the functions were added to vega, in commit
|
||||
+ # 71610e4456a3a4145435d83f8458748ba137a2a3 2019-05-10. That release was
|
||||
+ # not tagged in git, so we use the corresponding commit hash.
|
||||
+ "d3-regression/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/HarryStevens/d3-regression/e23d40a663dffba14b92cb42d9989de3a32894b5/LICENSE",
|
||||
+ sha256="d210203f922101502894baf700b9a392e323a26e4b603ab166c57e09a6e773b5",
|
||||
+ version="1.2.1",
|
||||
+ ),
|
||||
+ # From vega-statistics/src/regression/poly.js, "Adapted from
|
||||
+ # d3-regression by Harry Stevens [...] which was adapted from
|
||||
+ # regression-js by Tom Alexander" Version 2.0.1 was the current version
|
||||
+ # when the functions were added to vega, in commit
|
||||
+ # 71610e4456a3a4145435d83f8458748ba137a2a3 2019-05-10.
|
||||
+ "regression/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/Tom-Alexander/regression-js/refs/tags/{version}/LICENSE",
|
||||
+ sha256="2f932f5cfb9b042cc6c0089ee8004b33e3746ffeab879341dbd453c150524307",
|
||||
+ version="2.0.1",
|
||||
+ ),
|
||||
+ # From vega-statistics/src/regression/loess.js, "Adapted from
|
||||
+ # science.js by Jason Davies". Version 1.9.3 was the current version
|
||||
+ # when the functions were added to vega, in commit
|
||||
+ # 71610e4456a3a4145435d83f8458748ba137a2a3 on 2019-05-10.
|
||||
+ "science/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/jasondavies/science.js/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="3bd1fdf686ffcad175daddcb36ee28599ac8f090b6cec2c7654118c8a6f3d4c9",
|
||||
+ version="1.9.3",
|
||||
+ ),
|
||||
+ # From src/quickselect.js in d3-array, "Based on
|
||||
+ # https://github.com/mourner/quickselect". Version 2.0.0 was the
|
||||
+ # current version when the file was added to d3-array, in commit
|
||||
+ # d447c2a31cd6aacf54a40b22c29620f7e17bbd7e on 2018-11-10.
|
||||
+ "quickselect/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/mourner/quickselect/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="597034cb7c11c916ad407344ea99a0b08e3c443a6b4421460f1d23c411c69707",
|
||||
+ version="2.0.0",
|
||||
+ ),
|
||||
+ # From vega-statistics/src/normal.js, "Ported from Apache Commons
|
||||
+ # Math". Version 3.6.1 was the current version when this implementation
|
||||
+ # of erfinv was added to vega, in commit
|
||||
+ # c26050f21b0c95620f8f1a3094056716ec6c5aaa on 2019-09-26.
|
||||
+ "commons-math/LICENSE.txt": Asset(
|
||||
+ url="https://raw.githubusercontent.com/apache/commons-math/refs/tags/MATH_3_6_1/LICENSE.txt",
|
||||
+ sha256="64f23963615950bad9ddd31569a7f09afbbe11b81d94873ffd9b1cac6081a11d",
|
||||
+ version="3.6.1",
|
||||
+ ),
|
||||
+ "commons-math/NOTICE.txt": Asset(
|
||||
+ url="https://raw.githubusercontent.com/apache/commons-math/refs/tags/MATH_3_6_1/NOTICE.txt",
|
||||
+ sha256="5495442a32bfc2b93b4a8f2c34c5c218d16cca434aa5684fb953d9419120e3fa",
|
||||
+ version="3.6.1",
|
||||
+ ),
|
||||
+ # From vega-expression/src/parser.js, "The following expression parser
|
||||
+ # is based on Esprima (http://esprima.org/)." Unusually, the original
|
||||
+ # license text is reproduced in the source file, so we could get by
|
||||
+ # without a separate license file (and in fact the license file lacks
|
||||
+ # the necessary copyright statement present in the code) but we add it
|
||||
+ # for consistency. Version 2.2.0 was the last version of Esprima that
|
||||
+ # had a copyright statement in esprima.js attributing specific
|
||||
+ # individual contributors, as reproduced in the vega source.
|
||||
+ "esprima/LICENSE.BSD": Asset(
|
||||
+ url="https://raw.githubusercontent.com/jquery/esprima/refs/tags/{version}/LICENSE.BSD",
|
||||
+ sha256="0e74697a68cebdcd61502c30fe80ab7f9e341d995dcd452023654d57133534b1",
|
||||
+ version="2.2.0",
|
||||
+ ),
|
||||
+ # From vega-scenegraph/src/path/arc.js, "Copied from Inkscape svgtopdf,
|
||||
+ # thanks!" We cannot find the original implementation in Inkscape or
|
||||
+ # anywhere else, so we do not add a license file for this snippet.
|
||||
+ # From vega-scenegraph/src/path/parse.js, "Path parsing and rendering
|
||||
+ # code adapted from fabric.js -- Thanks!" This was added in commit
|
||||
+ # 82932143de7cef4187a34026689df12abaa25959 on 2018-12-20, and the
|
||||
+ # current release of fabric.js at that time was 2.4.5.
|
||||
+ "fabric/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/fabricjs/fabric.js/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="9f6c2cc99aa9c618df93fed7d1cf7279d4e329d92dd2ce5e96173c73ce305055",
|
||||
+ version="2.4.5",
|
||||
+ ),
|
||||
+ # From vega-geo/src/util/{contours,density2D}.js, "Implementation
|
||||
+ # adapted from d3/d3-contour. Thanks!" When these routines were added
|
||||
+ # in 0ab6b730a7e576d33d00e12063855bb132194191 on 2019-11-11, the latest
|
||||
+ # version was 1.3.2.
|
||||
+ "d3-contour/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/d3/d3-contour/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="5f5dcce265668080a60fbdc513f6f8ef21466780bcaa331e64ee39df19e63b30",
|
||||
+ version="1.3.2",
|
||||
+ ),
|
||||
+ # From vega-geo/src/util/contours.js, "Based on
|
||||
+ # https://github.com/mbostock/shapefile/blob/v0.6.2/shp/polygon.js"
|
||||
+ "shapefile/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/mbostock/shapefile/refs/tags/v{version}/LICENSE.txt",
|
||||
+ sha256="c16529a9d5b8802982abd714a6823344e24b0cb5131596bc343927ead605d708",
|
||||
+ version="0.6.2",
|
||||
+ ),
|
||||
+ # End copied/derived/adapted code in vega, included in vega/vega.js
|
||||
"vega-lite/vega-lite.js": Asset(
|
||||
url="https://cdnjs.cloudflare.com/ajax/libs/vega-lite/{version}/vega-lite.js",
|
||||
sha256="6eb7f93121cd9f44cf8640244f87c5e143f87c7a0b6cd113da4a9e41e3adf0aa",
|
||||
@@ -103,6 +359,57 @@ class Assets:
|
||||
sha256="f618900fd0d64046963b29f40590cdd1e341a2f41449f99110d82fd81fea808c",
|
||||
version="5.2.0",
|
||||
),
|
||||
+ # Begin dependencies for vega-lite, included in vega-lite/vega-lite.js
|
||||
+ # Versions from https://github.com/vega/vega-lite/blob/v5.2.0/yarn.lock.
|
||||
+ "@types-clone/LICENSE": Asset(
|
||||
+ url="https://unpkg.com/@types/clone@{version}/LICENSE",
|
||||
+ sha256="c2cfccb812fe482101a8f04597dfc5a9991a6b2748266c47ac91b6a5aae15383",
|
||||
+ version="2.1.1",
|
||||
+ ),
|
||||
+ "array-flat-polyfill/LICENSE": Asset(
|
||||
+ # Releases are not tagged in git; we use the commit hash
|
||||
+ # corresponding to the 1.0.1 release
|
||||
+ url="https://raw.githubusercontent.com/jonathantneal/array-flat-polyfill/362d855cb6ea2ef12f0676b116c5f9e4233b6f31/LICENSE.md",
|
||||
+ sha256="597756adcb51f243ef4fb386920377f61d012ace0904364e1a8ee9aaec6afc84",
|
||||
+ version="1.0.1",
|
||||
+ ),
|
||||
+ "clone/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/pvorb/clone/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="3fb0857ef0133928cf72c88dfc464e931486e88778961eedec25585e2321507f",
|
||||
+ version="2.1.2",
|
||||
+ ),
|
||||
+ "fast-deep-equal/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/epoberezkin/fast-deep-equal/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="7bf9b2de73a6b356761c948d0e9eeb4be6c1270bd04c79cd489c1e400ffdfc1a",
|
||||
+ version="3.1.3",
|
||||
+ ),
|
||||
+ "fast-json-stable-stringify/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/epoberezkin/fast-json-stable-stringify/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="a833d366242c298cf1b10263516572fb8dcbe68eb5072cdcac2b4546e2b4eb36",
|
||||
+ version="2.1.0",
|
||||
+ ),
|
||||
+ "json-stringify-pretty-compact/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/lydell/json-stringify-pretty-compact/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="d0800a7c9b5f723f7fe029f75d3a9ae44173178b9729d1521e18371ab24ae97a",
|
||||
+ version="3.0.0",
|
||||
+ ),
|
||||
+ # The tslib package is among vega-lite's direct dependencies, and the
|
||||
+ # yarn.lock file shows three versions could be included: 2.2.0, 2.1.0
|
||||
+ # (both MIT-licensed), and 1.1.0 (Apache-2.0-licensed). However, we
|
||||
+ # found no trace of any of these in the actual vega-lite.js bundle.
|
||||
+ # ----
|
||||
+ # The following packages are part of vega, and are already covered by
|
||||
+ # vega/LICENSE.
|
||||
+ # - vega-event-selector: no dependencies
|
||||
+ # - vega-expression: depends on vega-util, @types/estree (already
|
||||
+ # covered as one of vega's dependencies)
|
||||
+ # - vega-util (no dependencies; includes code from hashlru, already
|
||||
+ # covered as one of vega's dependencies)
|
||||
+ # ----
|
||||
+ # End dependencies for vega-lite, included in vega-lite/vega-lite.js
|
||||
+ # Begin copied/derived/adapted code in vega-lite, included in vega-lite/vega-lite.js
|
||||
+ # - hashlru is included in vega-util; already covered as one of vega's dependencies
|
||||
+ # End copied/derived/adapted code in vega-lite, included in vega-lite/vega-lite.js
|
||||
"vega-embed/vega-embed.js": Asset(
|
||||
url="https://cdnjs.cloudflare.com/ajax/libs/vega-embed/{version}/vega-embed.js",
|
||||
sha256="4e546c1f86eb200333606440e92f76e2940b905757018d9672cd1708e4e6ff0a",
|
||||
@@ -113,6 +420,78 @@ class Assets:
|
||||
sha256="32df67148f0fc3db0eb9e263a7b75d07f1eb14c61955005a4a39c6918d10d137",
|
||||
version="6.20.8",
|
||||
),
|
||||
+ # Begin dependencies for vega-embed, included in vega-embed/vega-embed.js
|
||||
+ # Versions from https://github.com/vega/vega-embed/blob/v6.20.8/yarn.lock.
|
||||
+ "fast-json-patch/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/Starcounter-Jack/JSON-Patch/refs/tags/v{version}/LICENSE.txt",
|
||||
+ sha256="26593d78926902a82eb9bc7e40d1811fc381055f23516b92fe48ca8399bf02df",
|
||||
+ version="3.1.0",
|
||||
+ ),
|
||||
+ # json-stringify-pretty-compact 3.0.0 is already covered as one of
|
||||
+ # vega's dependencies
|
||||
+ # ----
|
||||
+ # There are four versions of the semver package in yarn.lock (5.7.1,
|
||||
+ # 6.3.0, 7.0.0, 7.3.5), but it appears that only one copy remains in
|
||||
+ # the vega-embed.js bundle. The bundle has a compareBuild function,
|
||||
+ # added in 6.1.0. It does not export a "tokens" list, added in 6.3.0
|
||||
+ # and present in 7.0.0, but that is not conclusive because the package
|
||||
+ # was split into separate source files to improve tree-shaking. By
|
||||
+ # 7.3.5, the first line of the SemVer class constructor changes to
|
||||
+ # "options = parseOptions(options)", and this does match what we see in
|
||||
+ # the bundle, so we conclude that we have semver 7.3.5. In any case,
|
||||
+ # the ISC license was unchanged across all four versions.
|
||||
+ "semver/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/npm/node-semver/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="4ec3d4c66cd87f5c8d8ad911b10f99bf27cb00cdfcff82621956e379186b016b",
|
||||
+ version="7.3.5",
|
||||
+ ),
|
||||
+ # The tslib package is among vega-embed's direct dependencies, and the
|
||||
+ # yarn.lock file shows four versions could be included: 2.3.1, 2.1.0,
|
||||
+ # 1.14.1 (all MIT-licensed), and 1.1.0 (Apache-2.0-licensed). However,
|
||||
+ # we found no trace of any of these in the actual vega-embed.js bundle.
|
||||
+ # ----
|
||||
+ # The following packages are part of vega, and are already covered by
|
||||
+ # vega/LICENSE.
|
||||
+ # - vega-interpreter: no dependencies
|
||||
+ # ----
|
||||
+ # This is not part of https://github.com/vega/vega, as far as we can
|
||||
+ # tell, so we handle it separately. The repository
|
||||
+ # https://github.com/vega/schema linked from NPM appears to contain
|
||||
+ # only JSON schemas, not JavaScript source code, so we use an unpkg URL
|
||||
+ # to reference the contents of the NPM package instead.
|
||||
+ "vega-schema-url-parser/LICENSE": Asset(
|
||||
+ url="https://unpkg.com/vega-schema-url-parser@{version}/LICENSE",
|
||||
+ sha256="eeb1606fda238f623c36d1eb5e27c33b986a446445340b220c141097424af045",
|
||||
+ version="2.2.0",
|
||||
+ ),
|
||||
+ "vega-themes/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/vega/vega-themes/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="ceb75fa4fbebbc381c0465442a502ffc13b73f36ccb385a66bcd5f55869e3979",
|
||||
+ version="2.10.0",
|
||||
+ ),
|
||||
+ # Depends on vega-util, which is already covered in vega
|
||||
+ "vega-tooltip/LICENSE": Asset(
|
||||
+ url="https://raw.githubusercontent.com/vega/vega-tooltip/refs/tags/v{version}/LICENSE",
|
||||
+ sha256="93cd20d9cee8c77c080d1a585e3b07644ad2c8e9ccdfc86e350136884d62d935",
|
||||
+ version="0.28.0",
|
||||
+ ),
|
||||
+ # End dependencies for vega-embed, included in vega-embed/vega-embed.js
|
||||
+ # Begin copied/derived/adapted code in vega-embed, included in vega-embed/vega-embed.js
|
||||
+ # - hashlru is included in vega-util (via vega-tooltip); already
|
||||
+ # covered as one of vega's dependencies
|
||||
+ # - _areEquals() is based on fast-deep-equal; already covered as one of
|
||||
+ # vega-lite's dependencies
|
||||
+ # - googlecharts theme in vega-themes carries its own copyright statement,
|
||||
+ # Copyright 2020 Google LLC.
|
||||
+ #
|
||||
+ # Use of this source code is governed by a BSD-style
|
||||
+ # license that can be found in the LICENSE file or at
|
||||
+ # https://developers.google.com/open-source/licenses/bsd
|
||||
+ # No plain-text version of that URL is available, and the license has
|
||||
+ # the same BSD-3-Clause permission statement as vega-themes itself,
|
||||
+ # so we consider the combination of vega-themes/LICENSE and the
|
||||
+ # copyright statement in the source code sufficient.
|
||||
+ # End copied/derived/adapted code in vega-embed, included in vega-embed/vega-embed.js
|
||||
"heroicons/LICENSE": Asset(
|
||||
url="https://raw.githubusercontent.com/tailwindlabs/heroicons/refs/tags/v{version}/LICENSE",
|
||||
sha256="75523ddd65d9620bea09f84e89d0c373b4205a3708b8a1e9f9598a5438a3e641",
|
||||
@@ -128,6 +507,27 @@ class Assets:
|
||||
sha256="f657f99d3fb9647db92628e96007aabb46e5f04f33e49999075aab8e250ca7ce",
|
||||
version="15.7.2",
|
||||
),
|
||||
+ # Begin dependencies for prop-types, included in prop-types/prop-types.min.js
|
||||
+ # Versions from https://github.com/facebook/prop-types/blob/v15.7.2/yarn.lock
|
||||
+ # ----
|
||||
+ # The loose-envify package is among prop-types's direct dependencies,
|
||||
+ # and the yarn.lock file shows two versions could be included: 1.4.0
|
||||
+ # and 1.3.1 (both MIT-licensed). However, we found no trace of
|
||||
+ # loose-envify code in the actual prop-types.min.js bundle, so it
|
||||
+ # appears this dependency was removed in tree-shaking, along with its
|
||||
+ # dependency js-tokens (3.0.0 and/or 4.0.0).
|
||||
+ # ----
|
||||
+ # The object-assign package (version 4.1.1) is among prop-types's
|
||||
+ # direct dependencies, but we found no trace of it in the actual
|
||||
+ # prop-types.min.js bundle, so it appears this dependency (a polyfill)
|
||||
+ # was removed in tree-shaking.
|
||||
+ # ----
|
||||
+ # The react-is package (version 16.8.1) is among prop-types's
|
||||
+ # direct dependencies, but we found no trace of it in the actual
|
||||
+ # prop-types.min.js bundle, so it appears this dependency was removed
|
||||
+ # in tree-shaking.
|
||||
+ # ----
|
||||
+ # End dependencies for prop-types, included in prop-types/prop-types.min.js
|
||||
}
|
||||
|
||||
@classmethod
|
||||
diff --git a/snakemake/report/html_reporter/data/packages.py b/snakemake/report/html_reporter/data/packages.py
|
||||
index 963a4c10..2b8e364f 100644
|
||||
--- a/snakemake/report/html_reporter/data/packages.py
|
||||
+++ b/snakemake/report/html_reporter/data/packages.py
|
||||
@@ -38,14 +38,151 @@ def get_packages():
|
||||
source_path="vega/vega.js",
|
||||
license_path="vega/LICENSE",
|
||||
),
|
||||
+ # Begin dependencies for vega, included in vega/vega.js
|
||||
+ "d3-array": Package(
|
||||
+ license_path="d3-array/LICENSE",
|
||||
+ ),
|
||||
+ "d3-format": Package(
|
||||
+ license_path="d3-format/LICENSE",
|
||||
+ ),
|
||||
+ "d3-time-format": Package(
|
||||
+ license_path="d3-time-format/LICENSE",
|
||||
+ ),
|
||||
+ "d3-time": Package(
|
||||
+ license_path="d3-time/LICENSE",
|
||||
+ ),
|
||||
+ "d3-interpolate": Package(
|
||||
+ license_path="d3-interpolate/LICENSE",
|
||||
+ ),
|
||||
+ "d3-color": Package(
|
||||
+ license_path="d3-color/LICENSE",
|
||||
+ ),
|
||||
+ "d3-scale": Package(
|
||||
+ license_path="d3-scale/LICENSE",
|
||||
+ ),
|
||||
+ "@types-estree": Package(
|
||||
+ license_path="@types-estree/LICENSE",
|
||||
+ ),
|
||||
+ "d3-force": Package(
|
||||
+ license_path="d3-force/LICENSE",
|
||||
+ ),
|
||||
+ "d3-dispatch": Package(
|
||||
+ license_path="d3-dispatch/LICENSE",
|
||||
+ ),
|
||||
+ "d3-quadtree": Package(
|
||||
+ license_path="d3-quadtree/LICENSE",
|
||||
+ ),
|
||||
+ "d3-timer": Package(
|
||||
+ license_path="d3-timer/LICENSE",
|
||||
+ ),
|
||||
+ "d3-geo": Package(
|
||||
+ license_path="d3-geo/LICENSE",
|
||||
+ ),
|
||||
+ "d3-hierarchy": Package(
|
||||
+ license_path="d3-hierarchy/LICENSE",
|
||||
+ ),
|
||||
+ "d3-dsv": Package(
|
||||
+ license_path="d3-dsv/LICENSE",
|
||||
+ ),
|
||||
+ "topojson-client": Package(
|
||||
+ license_path="topojson-client/LICENSE",
|
||||
+ ),
|
||||
+ "d3-geo-projection": Package(
|
||||
+ license_path="d3-geo-projection/LICENSE",
|
||||
+ ),
|
||||
+ "d3-path": Package(
|
||||
+ license_path="d3-path/LICENSE",
|
||||
+ ),
|
||||
+ "d3-shape": Package(
|
||||
+ license_path="d3-shape/LICENSE",
|
||||
+ ),
|
||||
+ "d3-delaunay": Package(
|
||||
+ license_path="d3-delaunay/LICENSE",
|
||||
+ ),
|
||||
+ "delaunator": Package(
|
||||
+ license_path="delaunator/LICENSE",
|
||||
+ ),
|
||||
+ # End dependencies for vega, included in vega/vega.js
|
||||
+ # Begin copied/derived/adapted code in vega, included in vega/vega.js
|
||||
+ "hashlru": Package(
|
||||
+ license_path="hashlru/LICENSE",
|
||||
+ ),
|
||||
+ "d3-regression": Package(
|
||||
+ license_path="d3-regression/LICENSE",
|
||||
+ ),
|
||||
+ "regression": Package(
|
||||
+ license_path="regression/LICENSE",
|
||||
+ ),
|
||||
+ "science": Package(
|
||||
+ license_path="science/LICENSE",
|
||||
+ ),
|
||||
+ "quickselect": Package(
|
||||
+ license_path="quickselect/LICENSE",
|
||||
+ ),
|
||||
+ "commons-math": Package(
|
||||
+ license_path="commons-math/LICENSE.txt",
|
||||
+ # This must be included with LICENSE.txt.
|
||||
+ notice="commons-math/NOTICE.txt",
|
||||
+ ),
|
||||
+ "esprima": Package(
|
||||
+ license_path="esprima/LICENSE.BSD",
|
||||
+ ),
|
||||
+ "fabric": Package(
|
||||
+ license_path="fabric/LICENSE",
|
||||
+ ),
|
||||
+ "d3-contour": Package(
|
||||
+ license_path="d3-contour/LICENSE",
|
||||
+ ),
|
||||
+ # End copied/derived/adapted code in vega, included in vega/vega.js
|
||||
"vega-lite": Package(
|
||||
source_path="vega-lite/vega-lite.js",
|
||||
license_path="vega-lite/LICENSE",
|
||||
),
|
||||
+ # Begin dependencies for vega-lite, included in vega-lite/vega-lite.js
|
||||
+ # (excluding those shared with vega and therefore already documented)
|
||||
+ "@types-clone": Package(
|
||||
+ license_path="@types-estree/LICENSE",
|
||||
+ ),
|
||||
+ "array-flat-polyfill": Package(
|
||||
+ license_path="array-flat-polyfill/LICENSE",
|
||||
+ ),
|
||||
+ "clone": Package(
|
||||
+ license_path="clone/LICENSE",
|
||||
+ ),
|
||||
+ "fast-deep-equal": Package(
|
||||
+ license_path="fast-deep-equal/LICENSE",
|
||||
+ ),
|
||||
+ "fast-json-stable-stringify": Package(
|
||||
+ license_path="fast-json-stable-stringify/LICENSE",
|
||||
+ ),
|
||||
+ "json-stringify-pretty-compact": Package(
|
||||
+ license_path="json-stringify-pretty-compact/LICENSE",
|
||||
+ ),
|
||||
+ # End dependencies for vega-lite, included in vega-lite/vega-lite.js
|
||||
+ # Any copied/derived/adapted code in vega-lite is shared with vega.
|
||||
"vega-embed": Package(
|
||||
source_path="vega-embed/vega-embed.js",
|
||||
license_path="vega-embed/LICENSE",
|
||||
),
|
||||
+ # Begin dependencies for vega-embed, included in vega-embed/vega-embed.js
|
||||
+ # (excluding those shared with vega/vega-lite and therefore already documented)
|
||||
+ "fast-json-patch": Package(
|
||||
+ license_path="fast-json-patch/LICENSE",
|
||||
+ ),
|
||||
+ "semver": Package(
|
||||
+ license_path="semver/LICENSE",
|
||||
+ ),
|
||||
+ "vega-schema-url-parser": Package(
|
||||
+ license_path="vega-schema-url-parser/LICENSE",
|
||||
+ ),
|
||||
+ "vega-themes": Package(
|
||||
+ license_path="vega-themes/LICENSE",
|
||||
+ ),
|
||||
+ "vega-tooltip": Package(
|
||||
+ license_path="vega-tooltip/LICENSE",
|
||||
+ ),
|
||||
+ # End dependencies for vega-embed, included in vega-embed/vega-embed.js
|
||||
+ # Any copied/derived/adapted code in vega-embed is shared with vega and/or vega-lite.
|
||||
"heroicons": Package(
|
||||
license_path="heroicons/LICENSE",
|
||||
),
|
||||
--
|
||||
2.48.1
|
||||
|
||||
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.100.2.post1.dev4+g31a74ebd.
|
||||
16
get_assets
16
get_assets
|
|
@ -25,7 +25,7 @@ tar -xzf "${TARNAME}"
|
|||
# Capture modification time from the original source archive, before we touch
|
||||
# anything; everything in our asset archive will have this mtime for better
|
||||
# reproducibility.
|
||||
MTIME="$(stat --format='%Y' "${XDIR}/src/snakemake/assets/")"
|
||||
MTIME="$(stat --format='%Y' "${XDIR}/snakemake/assets/")"
|
||||
|
||||
echo "==== Apply patches ====" 1>&2
|
||||
spectool --list-files "${SPEC}" |
|
||||
|
|
@ -40,14 +40,14 @@ spectool --list-files "${SPEC}" |
|
|||
done
|
||||
|
||||
echo "==== Download assets ====" 1>&2
|
||||
PYTHONPATH="${PWD}/${XDIR}/src/snakemake" python3 <<'EOF'
|
||||
PYTHONPATH="${PWD}/${XDIR}/snakemake" python3 <<'EOF'
|
||||
from assets import Assets
|
||||
Assets.deploy()
|
||||
EOF
|
||||
|
||||
echo "==== Modify assets ====" 1>&2
|
||||
echo "--> Remove array-flat-polyfill (CC0-1.0 code, unused)" 1>&2
|
||||
target='src/snakemake/assets/data/vega-lite/vega-lite.js'
|
||||
target='snakemake/assets/data/vega-lite/vega-lite.js'
|
||||
echo "To be removed from ${target}:" 1>&2
|
||||
grep -E '^[[:blank:]]*Array\.prototype\.flat[[:blank:]]*\|\|' \
|
||||
"${XDIR}/${target}" 1>&2
|
||||
|
|
@ -55,15 +55,15 @@ sed -r -i '/^[[:blank:]]*Array\.prototype\.flat[[:blank:]]*\|\|/d' \
|
|||
"${XDIR}/${target}"
|
||||
echo '--> Search for vestiges of array-flat-polyfill' 1>&2
|
||||
if grep -ErinI 'defineProperty\(Array\.prototype,[[:blank:]]*.flat' \
|
||||
"${XDIR}/src/snakemake/assets"
|
||||
"${XDIR}/snakemake/assets"
|
||||
then
|
||||
echo 'MANUAL AUDIT REQUIRED' 1>&2
|
||||
exit 1
|
||||
fi
|
||||
# Remove license file and the directory containing it
|
||||
rm -rv "${XDIR}/src/snakemake/assets/data/array-flat-polyfill"
|
||||
rm -rv "${XDIR}/snakemake/assets/data/array-flat-polyfill"
|
||||
echo "--> Search for missed CC0-1.0 licenses" 1>&2
|
||||
if grep -ErinI '\bCC0\b' "${XDIR}/src/snakemake/assets"
|
||||
if grep -ErinI '\bCC0\b' "${XDIR}/snakemake/assets"
|
||||
then
|
||||
echo 'MANUAL AUDIT REQUIRED' 1>&2
|
||||
exit 1
|
||||
|
|
@ -71,7 +71,7 @@ fi
|
|||
|
||||
echo "==== Archive assets ====" 1>&2
|
||||
RESULT="${XDIR}-assets.tar.zst"
|
||||
ls -ld "${XDIR}/src/snakemake/assets/"
|
||||
ls -ld "${XDIR}/snakemake/assets/"
|
||||
# https://www.gnu.org/software/tar/manual/html_section/Reproducibility.html
|
||||
TZ=UTC LC_ALL=C tar \
|
||||
--create \
|
||||
|
|
@ -82,7 +82,7 @@ TZ=UTC LC_ALL=C tar \
|
|||
--pax-option='delete=atime,delete=ctime' \
|
||||
--clamp-mtime --mtime="@${MTIME}" \
|
||||
--directory="${XDIR}" \
|
||||
src/snakemake/assets/data |
|
||||
snakemake/assets/data |
|
||||
zstdmt --ultra -22 > "${RESULT}"
|
||||
|
||||
mv -v "${RESULT}" "${DIST_GIT}"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
diff -Naur snakemake-9.1.1-original/src/snakemake/assets/__init__.py snakemake-9.1.1/src/snakemake/assets/__init__.py
|
||||
--- snakemake-9.1.1-original/src/snakemake/assets/__init__.py 2025-03-21 14:49:12.112309938 -0400
|
||||
+++ snakemake-9.1.1/src/snakemake/assets/__init__.py 2025-03-21 14:49:56.495171724 -0400
|
||||
@@ -379,9 +379,12 @@
|
||||
diff -Naur snakemake-8.30.0-original/snakemake/assets/__init__.py snakemake-8.30.0/snakemake/assets/__init__.py
|
||||
--- snakemake-8.30.0-original/snakemake/assets/__init__.py 2025-03-19 10:16:19.899201489 -0400
|
||||
+++ snakemake-8.30.0/snakemake/assets/__init__.py 2025-03-19 10:20:34.376310829 -0400
|
||||
@@ -349,9 +349,12 @@
|
||||
version="0.6.2",
|
||||
),
|
||||
# End copied/derived/adapted code in vega, included in vega/vega.js
|
||||
|
|
@ -15,7 +15,7 @@ diff -Naur snakemake-9.1.1-original/src/snakemake/assets/__init__.py snakemake-9
|
|||
version="5.2.0",
|
||||
),
|
||||
"vega-lite/LICENSE": Asset(
|
||||
@@ -428,13 +431,6 @@
|
||||
@@ -366,13 +369,6 @@
|
||||
sha256="c2cfccb812fe482101a8f04597dfc5a9991a6b2748266c47ac91b6a5aae15383",
|
||||
version="2.1.1",
|
||||
),
|
||||
|
|
@ -29,12 +29,12 @@ diff -Naur snakemake-9.1.1-original/src/snakemake/assets/__init__.py snakemake-9
|
|||
"clone/LICENSE": Asset(
|
||||
url="https://raw.githubusercontent.com/pvorb/clone/refs/tags/v{version}/LICENSE",
|
||||
sha256="3fb0857ef0133928cf72c88dfc464e931486e88778961eedec25585e2321507f",
|
||||
diff -Naur snakemake-9.1.1-original/src/snakemake/report/html_reporter/data/packages.py snakemake-9.1.1/src/snakemake/report/html_reporter/data/packages.py
|
||||
--- snakemake-9.1.1-original/src/snakemake/report/html_reporter/data/packages.py 2025-03-21 14:49:08.721489278 -0400
|
||||
+++ snakemake-9.1.1/src/snakemake/report/html_reporter/data/packages.py 2025-03-21 14:49:56.496478714 -0400
|
||||
diff -Naur snakemake-8.30.0-original/snakemake/report/html_reporter/data/packages.py snakemake-8.30.0/snakemake/report/html_reporter/data/packages.py
|
||||
--- snakemake-8.30.0-original/snakemake/report/html_reporter/data/packages.py 2025-03-19 10:16:19.900335558 -0400
|
||||
+++ snakemake-8.30.0/snakemake/report/html_reporter/data/packages.py 2025-03-19 10:16:47.850551627 -0400
|
||||
@@ -143,9 +143,6 @@
|
||||
"@types-clone": Package(
|
||||
license_path="@types-clone/LICENSE",
|
||||
license_path="@types-estree/LICENSE",
|
||||
),
|
||||
- "array-flat-polyfill": Package(
|
||||
- license_path="array-flat-polyfill/LICENSE",
|
||||
|
|
@ -1,12 +1,17 @@
|
|||
# It is normal that extras metapackages should not have documentation, or any
|
||||
# files at all.
|
||||
addFilter(r"\+\w+.noarch: W: no-documentation")
|
||||
# Removed in Snakemake 9.6 with no equivalent replacement.
|
||||
addFilter(r" obsolete-not-provided snakemake\+(messaging)$")
|
||||
# These extras were removed with Snakemake 8.0 and have no equivalent
|
||||
# replacements.
|
||||
addFilter(r" obsolete-not-provided snakemake\+(azure|google-cloud)$")
|
||||
# The -doc subpackage was removed and has no equivalent replacement.
|
||||
addFilter(r" obsolete-not-provided snakemake-doc$")
|
||||
# Not a spelling error
|
||||
addFilter(r"spelling-error \('([Mm]etapackage)s?',")
|
||||
# Some small files may incidentally have duplicate contents. Because they are
|
||||
# small in size and few in number, it is not worth the spec-file complexity to
|
||||
# hardlink them (which would itself trigger an rpmlint warning about
|
||||
# cross-directory hardlinking).
|
||||
addFilter(r"files-duplicate .*/snakemake/.*/remote/[^/]+\.py")
|
||||
# This is, unfortunately, intentional. See the comments in the spec file.
|
||||
addFilter(r" python-leftover-require python-unversioned-command$")
|
||||
# The assets bundle needs to be generated with a script, so it has no URL (and
|
||||
# .tar.zst is perfectly legitimate).
|
||||
addFilter(r" (invalid-url|inconsistent-file-extension).* snakemake-.*-assets\.tar\.zst")
|
||||
|
|
|
|||
274
snakemake.spec
274
snakemake.spec
|
|
@ -1,10 +1,7 @@
|
|||
# Work around a series of circular test dependencies:
|
||||
#
|
||||
# ⬐─python-snakemake-logger-plugin-rich🠔────╮
|
||||
# python-snakemake-interface-logger-plugins─╯
|
||||
# │↑python-snakemake-interface-scheduler-plugins
|
||||
# │││↑ python-snakemake-interface-report-plugins
|
||||
# ↓│↓│ ↓↑ ⬐───╮
|
||||
# python-snakemake-interface-report-plugins
|
||||
# ↓↑ ⬐───╮
|
||||
# snakemake → python-snakemake-interface-executor-plugins⬎
|
||||
# ↑↑↑ │ ⬑────────────────────python-snakemake-executor-plugin-cluster-generic
|
||||
# │││ ↳python-snakemake-interface-storage-plugins─────────────────╮
|
||||
|
|
@ -15,26 +12,17 @@
|
|||
#
|
||||
# A good build order is:
|
||||
#
|
||||
# 1. BOOTSTRAP:
|
||||
# python-snakemake-interface-common
|
||||
# 2. BOOTSTRAP:
|
||||
# python-snakemake-interface-executor-plugins
|
||||
# python-snakemake-interface-logger-plugins
|
||||
# 1. BOOTSTRAP: python-snakemake-interface-executor-plugins,
|
||||
# python-snakemake-interface-storage-plugins,
|
||||
# python-snakemake-interface-report-plugins
|
||||
# python-snakemake-interface-scheduler-plugins
|
||||
# python-snakemake-interface-storage-plugins
|
||||
# 3. BOOTSTRAP: snakemake
|
||||
# 4. python-snakemake-executor-plugin-cluster-generic
|
||||
# python-snakemake-logger-plugin-rich
|
||||
# 2. BOOTSTRAP: snakemake
|
||||
# 3. python-snakemake-executor-plugin-cluster-generic,
|
||||
# python-snakemake-storage-plugin-http,
|
||||
# python-snakemake-storage-plugin-s3,
|
||||
# python-snakemake-storage-plugin-fs
|
||||
# python-snakemake-storage-plugin-http
|
||||
# python-snakemake-storage-plugin-s3
|
||||
# 5. snakemake
|
||||
# python-snakemake-interface-executor-plugins
|
||||
# python-snakemake-interface-logger-plugins
|
||||
# 4. snakemake, python-snakemake-interface-executor-plugins,
|
||||
# python-snakemake-interface-storage-plugins,
|
||||
# python-snakemake-interface-report-plugins
|
||||
# python-snakemake-interface-scheduler-plugins
|
||||
# python-snakemake-interface-storage-plugins
|
||||
%bcond bootstrap 0
|
||||
%bcond tests %{without bootstrap}
|
||||
# Run tests that require network access? This only makes sense for local mock
|
||||
|
|
@ -43,35 +31,47 @@
|
|||
# Almost all of the conda tests require network access, but there are also
|
||||
# other failures that are not straightforward to understand.
|
||||
%bcond conda_tests 0
|
||||
%bcond gcs_tests 1
|
||||
|
||||
%global _description %{expand:
|
||||
The Snakemake workflow management system is a tool to create reproducible and
|
||||
scalable data analyses. Workflows are described via a human readable, Python
|
||||
based language. They can be seamlessly scaled to server, cluster, grid and
|
||||
cloud environments, without the need to modify the workflow definition.
|
||||
Finally, Snakemake workflows can entail a description of required software,
|
||||
which will be automatically deployed to any execution environment.}
|
||||
|
||||
Name: snakemake
|
||||
Version: 9.14.6
|
||||
%global srcversion %(echo '%{version}' | cut -d '^' -f 1)
|
||||
Version: 8.30.0
|
||||
Release: %autorelease
|
||||
Summary: Workflow management system to create reproducible and scalable data analyses
|
||||
|
||||
# The primary license for Snakemake is MIT; web assets contribute a variety of
|
||||
# other licenses.
|
||||
# The primary license for Snakemake is MIT; versioneer contributes Unlicense,
|
||||
# and web assets contribute a variety of other licenses.
|
||||
#
|
||||
# Apache-2.0 AND BSD-2-Clause AND BSD-3-CLause AND ISC AND MIT AND MIT-0:
|
||||
# - src/snakemake/assets/data/vega/vega.js
|
||||
# - snakemake/assets/data/vega/vega.js
|
||||
#
|
||||
# BSD-3-Clause AND MIT:
|
||||
# - src/snakemake/assets/data/vega-lite/vega-lite.js
|
||||
# - snakemake/assets/data/vega-lite/vega-lite.js
|
||||
#
|
||||
# BSD-3-Clause AND ISC AND MIT:
|
||||
# - src/snakemake/assets/data/vega-embed/vega-embed.js
|
||||
# - snakemake/assets/data/vega-embed/vega-embed.js
|
||||
#
|
||||
# MIT:
|
||||
# - All Snakemake code unless otherwise noted
|
||||
# - heroicons: It is unclear if anything derived from heroicons is actually
|
||||
# present in the package, but upstream carries a copy of its license file, so
|
||||
# we mention the possibility.
|
||||
# - src/snakemake/assets/data/prop-types/prop-types.min.js
|
||||
# - src/snakemake/assets/data/tailwindcss/tailwind.css
|
||||
# - snakemake/assets/data/prop-types/prop-types.min.js
|
||||
# - snakemake/assets/data/tailwindcss/tailwind.css
|
||||
#
|
||||
# == License breakdown: src/snakemake/assets/data/vega/vega.js ==
|
||||
# Unlicense:
|
||||
# - versioneer.py
|
||||
# - snakemake/_version.py (which says “This file is released into the public
|
||||
# domain,” but the comments in versioneer.py make it clear that Unlicense is
|
||||
# intended for the generated files as well)
|
||||
#
|
||||
# == License breakdown for snakemake/assets/data/vega/vega.js ==
|
||||
#
|
||||
# The primary license for npm(vega) is BSD-3-Clause. The bundle contains:
|
||||
#
|
||||
|
|
@ -101,7 +101,7 @@ Summary: Workflow management system to create reproducible and scalable d
|
|||
# MIT-0:
|
||||
# - npm(fabric), bundled as a copied, derived, or adapted snippet
|
||||
#
|
||||
# == License breakdown: src/snakemake/assets/data/vega-lite/vega-lite.js ==
|
||||
# == License breakdown for snakemake/assets/data/vega-lite/vega-lite.js ==
|
||||
#
|
||||
# The primary license for npm(vega-lite) is BSD-3-Clause. The bundle contains:
|
||||
#
|
||||
|
|
@ -116,7 +116,7 @@ Summary: Workflow management system to create reproducible and scalable d
|
|||
# - npm(hashlru), bundled as a copied, derived, or adapted snippet
|
||||
# - npm(json-stringify-pretty-compact)
|
||||
#
|
||||
# == License breakdown: src/snakemake/assets/data/vega-embed/vega-embed.js ==
|
||||
# == License breakdown for snakemake/assets/data/vega-embed/vega-embed.js ==
|
||||
#
|
||||
# The primary license for npm(vega-embed) is BSD-3-Clause. The bundle contains:
|
||||
#
|
||||
|
|
@ -133,7 +133,8 @@ License: %{shrink:
|
|||
BSD-3-Clause AND
|
||||
ISC AND
|
||||
MIT AND
|
||||
MIT-0
|
||||
MIT-0 AND
|
||||
Unlicense
|
||||
}
|
||||
URL: https://snakemake.readthedocs.io/en/stable/index.html
|
||||
%global forgeurl https://github.com/snakemake/snakemake
|
||||
|
|
@ -151,6 +152,17 @@ Source0: %{forgeurl}/archive/v%{version}/snakemake-%{version}.tar.gz
|
|||
Source1: snakemake-%{version}-assets.tar.zst
|
||||
Source2: get_assets
|
||||
|
||||
# Upstream upper-bounded the version of setuptools to work around a hash
|
||||
# mismatch in setuptools 76 on PyPI observed on March 9, 2025. The system
|
||||
# setuptools is fine. The upper-bound was removed in a later release. Here we
|
||||
# revert it as a downstream-only patch.
|
||||
Patch: 0001-Revert-chore-work-around-setuptools-76-hash-mismatch.patch
|
||||
|
||||
# chore: Add license texts for things bundled in the assets
|
||||
# https://github.com/snakemake/snakemake/pull/3099
|
||||
# Rebased on v8.30.0
|
||||
Patch: 0001-chore-Add-license-texts-for-things-bundled-in-the-as.patch
|
||||
|
||||
# Downstream-only: adjust the asset metadata in the sources, including
|
||||
# checksums, for any adjustments that happened in the get_assets script.
|
||||
#
|
||||
|
|
@ -158,19 +170,12 @@ Source2: get_assets
|
|||
# download assets, it skips this patch, because we need to first fetch the
|
||||
# original assets in order to then modify them. The signal for this behavior is
|
||||
# the substring "modified-assets" in the patch name.
|
||||
Patch: snakemake-9.1.1-modified-assets.patch
|
||||
|
||||
BuildSystem: pyproject
|
||||
# Generate BR’s for all supported extras to ensure they do not FTI
|
||||
BuildOption(generate_buildrequires): -x reports
|
||||
BuildOption(install): -l snakemake
|
||||
BuildOption(check): %{shrink:
|
||||
-e '*.tests*'
|
||||
%{?!with_gcs_tests:-e 'snakemake.executors.google_lifesciences_helper'}
|
||||
}
|
||||
Patch: snakemake-8.30.0-modified-assets.patch
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
BuildRequires: python3-devel
|
||||
|
||||
BuildRequires: help2man
|
||||
|
||||
# Snakemake uses (unversioned) "python" as the default remote execution
|
||||
|
|
@ -203,18 +208,18 @@ Provides: vim-snakemake = %{version}-%{release}
|
|||
# of a Pygments license file), but the styles come from the system
|
||||
# python3-pygments package and are not actually bundled in this package.
|
||||
|
||||
# tailwind.css 3.4.16 is src/snakemake/assets/data/tailwindcss/tailwind.css,
|
||||
# but we do not normally treat CSS frameworks as bundled dependencies, and it
|
||||
# is not clear how we should name a virtusl Provides if we added one.
|
||||
# tailwind.css 3.4.16 is snakemake/assets/data/tailwindcss/tailwind.css, but we
|
||||
# do not normally treat CSS frameworks as bundled dependencies, and it is not
|
||||
# clear how we should name a virtusl Provides if we added one.
|
||||
|
||||
# src/snakemake/assets/data/react/react.production.min.js
|
||||
# snakemake/assets/data/react/react.production.min.js
|
||||
Provides: bundled(npm(react)) = 18.2.0
|
||||
# src/snakemake/assets/data/react/react-dom.production.min.js
|
||||
# snakemake/assets/data/react/react-dom.production.min.js
|
||||
Provides: bundled(npm(react-dom)) = 18.2.0
|
||||
|
||||
# src/snakemake/assets/data/vega/vega.js
|
||||
# snakemake/assets/data/vega/vega.js
|
||||
Provides: bundled(npm(vega)) = 5.21.0
|
||||
# Bundled in src/snakemake/assets/data/vega/vega.js as dependencies:
|
||||
# Bundled in snakemake/assets/data/vega/vega.js as dependencies:
|
||||
# For versions of vega-* packages, see:
|
||||
# https://github.com/vega/vega/blob/v5.21.0/packages
|
||||
Provides: bundled(npm(vega-crossfilter)) = 4.0.5
|
||||
|
|
@ -244,7 +249,7 @@ Provides: bundled(npm(vega-view)) = 5.10.1
|
|||
Provides: bundled(npm(vega-view-transforms)) = 4.5.8
|
||||
Provides: bundled(npm(vega-voronoi)) = 4.1.5
|
||||
Provides: bundled(npm(vega-wordcloud)) = 4.1.3
|
||||
# For these, see notes in src/snakemake/assets/__init__.py.
|
||||
# For these, see notes in snakemake/assets/__init__.py.
|
||||
Provides: bundled(npm(@types/estree)) = 0.0.50
|
||||
Provides: bundled(npm(d3-array)) = 2.12.1
|
||||
Provides: bundled(npm(d3-color)) = 2.0.0
|
||||
|
|
@ -266,8 +271,8 @@ Provides: bundled(npm(d3-time-format)) = 3.0.0
|
|||
Provides: bundled(npm(d3-timer)) = 2.0.0
|
||||
Provides: bundled(npm(delaunator)) = 4.0.1
|
||||
Provides: bundled(npm(topojson-client)) = 3.1.0
|
||||
# Present in src/snakemake/assets/data/vega/vega.js in the form of copied,
|
||||
# derived, or adapted snippets. See notes in src/snakemake/assets/__init__.py.
|
||||
# Present in snakemake/assets/data/vega/vega.js in the form of copied, derived,
|
||||
# or adapted snippets. See notes in snakemake/assets/__init__.py.
|
||||
# Implementation of erfinv is based on:
|
||||
Provides: bundled(apache-commons-math) = 3.6.1
|
||||
# Expression parser is based on:
|
||||
|
|
@ -281,21 +286,21 @@ Provides: bundled(npm(regression)) = 2.0.1
|
|||
Provides: bundled(npm(science)) = 1.9.3
|
||||
Provides: bundled(npm(shapefile)) = 0.6.2
|
||||
|
||||
# src/snakemake/assets/data/vega-lite/vega-lite.js
|
||||
# snakemake/assets/data/vega-lite/vega-lite.js
|
||||
Provides: bundled(npm(vega-lite)) = 5.2.0
|
||||
# NOTE: Some of the following virtual Provides are commented out. These are
|
||||
# correct, and need to be considered when determining the license of
|
||||
# vega-lite.js, but they do not need to be repeated in the spec file because
|
||||
# they duplicate virtual Provides from vega.js.
|
||||
#
|
||||
# Bundled in src/snakemake/assets/data/vega-lite/vega-lite.js as dependencies:
|
||||
# See notes in src/snakemake/assets/__init__.py.
|
||||
# Bundled in snakemake/assets/data/vega-lite/vega-lite.js as dependencies:
|
||||
# See notes in snakemake/assets/__init__.py.
|
||||
Provides: bundled(npm(@types/clone)) = 2.1.1
|
||||
Provides: bundled(npm(clone)) = 2.1.2
|
||||
Provides: bundled(npm(fast-deep-equal)) = 3.1.3
|
||||
Provides: bundled(npm(fast-json-stable-stringify)) = 2.1.0
|
||||
Provides: bundled(npm(json-stringify-pretty-compact)) = 3.0.0
|
||||
# See notes in src/snakemake/assets/__init__.py, as well as dependencies in
|
||||
# See notes in snakemake/assets/__init__.py, as well as dependencies in
|
||||
# https://github.com/vega/vega-lite/blob/v5.2.0/package.json, and for versions,
|
||||
# see https://github.com/vega/vega-lite/blob/v5.2.0/yarn.lock; these correspond
|
||||
# to those associated with vega 5.2.1.
|
||||
|
|
@ -303,25 +308,24 @@ Provides: bundled(npm(json-stringify-pretty-compact)) = 3.0.0
|
|||
#Provides: bundled(npm(vega-event-selector)) = 3.0.0
|
||||
#Provides: bundled(npm(vega-expression)) = 5.0.0
|
||||
#Provides: bundled(npm(vega-util)) = 1.17.0
|
||||
# Present in src/snakemake/assets/data/vega-lite/vega-lite.js in the form of
|
||||
# Present in snakemake/assets/data/vega-lite/vega-lite.js in the form of
|
||||
# copied, derived, or adapted snippets. See notes in
|
||||
# src/snakemake/assets/__init__.py.
|
||||
# snakemake/assets/__init__.py.
|
||||
#Provides: bundled(npm(hashlru)) = 1.0.4
|
||||
|
||||
# src/snakemake/assets/data/vega-embed/vega-embed.js
|
||||
# snakemake/assets/data/vega-embed/vega-embed.js
|
||||
Provides: bundled(npm(vega-embed)) = 6.20.8
|
||||
# NOTE: Some of the following virtual Provides are commented out. These are
|
||||
# correct, and need to be considered when determining the license of
|
||||
# vega-embed.js, but they do not need to be repeated in the spec file because
|
||||
# they duplicate virtual Provides from vega.js and/or vega-lite.js.
|
||||
#
|
||||
# Bundled in src/snakemake/assets/data/vega-embed/vega-embed.js as
|
||||
# dependencies:
|
||||
# See notes in src/snakemake/assets/__init__.py.
|
||||
# Bundled in snakemake/assets/data/vega-embed/vega-embed.js as dependencies:
|
||||
# See notes in snakemake/assets/__init__.py.
|
||||
Provides: bundled(npm(fast-json-patch)) = 3.1.0
|
||||
#Provides: bundled(npm(json-stringify-pretty-compact)) = 3.0.0
|
||||
Provides: bundled(npm(semver)) = 7.3.5
|
||||
# See notes in src/snakemake/assets/__init__.py, as well as dependencies in
|
||||
# See notes in snakemake/assets/__init__.py, as well as dependencies in
|
||||
# https://github.com/vega/vega-embed/blob/v6.20.8/package.json, and for
|
||||
# versions, see https://github.com/vega/vega-embed/blob/v6.20.8/yarn.lock;
|
||||
# these correspond to those associated with vega 5.2.1.
|
||||
|
|
@ -330,9 +334,9 @@ Provides: bundled(npm(vega-schema-url-parser)) = 2.2.0
|
|||
Provides: bundled(npm(vega-themes)) = 2.10.0
|
||||
Provides: bundled(npm(vega-tooltip)) = 0.28.0
|
||||
#Provides: bundled(npm(vega-util)) = 1.17.0
|
||||
# Present in src/snakemake/assets/data/vega-embed/vega-embed.js in the form of
|
||||
# Present in snakemake/assets/data/vega-embed/vega-embed.js in the form of
|
||||
# copied, derived, or adapted snippets. See notes in
|
||||
# src/snakemake/assets/__init__.py.
|
||||
# snakemake/assets/__init__.py.
|
||||
#Provides: bundled(npm(hashlru)) = 1.0.4
|
||||
# _areEquals() is based on:
|
||||
#Provides: bundled(npm(fast-deep-equal)) = 3.1.3
|
||||
|
|
@ -342,23 +346,23 @@ Provides: bundled(npm(vega-tooltip)) = 0.28.0
|
|||
# the virtual Provides, just in case we have missed something.
|
||||
Provides: bundled(npm(heroicons)) = 1.0.3
|
||||
|
||||
# src/snakemake/assets/data/prop-types/prop-types.min.js
|
||||
# snakemake/assets/data/prop-types/prop-types.min.js
|
||||
Provides: bundled(npm(prop-types)) = 15.7.2
|
||||
|
||||
# These extras were removed upstream in Snakemake 8.0.0. Retain the Obsoletes
|
||||
# until F40 reaches EOL so we have a clean upgrade path.
|
||||
Obsoletes: snakemake+azure < 8.1.0-1
|
||||
Obsoletes: snakemake+google-cloud < 8.1.0-1
|
||||
# We no longer build Sphinx-generated PDF documentation. Beginning with 8.2.3,
|
||||
# this would require patching out sphinxawesome-theme from docs/conf.py. It’s
|
||||
# possible but tedious.
|
||||
Obsoletes: snakemake-doc < 8.2.1-2
|
||||
# Removed in 9.6.0; keep the Obsoletes through Fedora 45.
|
||||
Obsoletes: snakemake+messaging < 9.6.1-1
|
||||
|
||||
%if %{with tests}
|
||||
# For several tests (either apptainer or singularity-ce should work):
|
||||
BuildRequires: (apptainer or singularity-ce)
|
||||
%if %{with conda_tests}
|
||||
# We need this for test_jupyter_notebook*, even if we are not running tests
|
||||
# that have conda in their names. When the conda_tests bcond is enabled, this
|
||||
# is also needed for tests/tests_using_conda.py.
|
||||
# For tests/tests_using_conda.py
|
||||
BuildRequires: conda
|
||||
# For test_conda_pin_file, test_conda_named, test_conda_function
|
||||
BuildRequires: ripgrep
|
||||
|
|
@ -387,18 +391,8 @@ BuildRequires: %{py3_dist snakemake-storage-plugin-s3}
|
|||
%endif
|
||||
# For import-testing snakemake.gui
|
||||
BuildRequires: %{py3_dist flask}
|
||||
%if %{with gcs_tests}
|
||||
# For import-testing snakemake.executors.google_lifesciences_helper:
|
||||
BuildRequires: %{py3_dist google-cloud-storage}
|
||||
%endif
|
||||
|
||||
%global _description %{expand:
|
||||
The Snakemake workflow management system is a tool to create reproducible and
|
||||
scalable data analyses. Workflows are described via a human readable, Python
|
||||
based language. They can be seamlessly scaled to server, cluster, grid and
|
||||
cloud environments, without the need to modify the workflow definition.
|
||||
Finally, Snakemake workflows can entail a description of required software,
|
||||
which will be automatically deployed to any execution environment.}
|
||||
|
||||
%description %_description
|
||||
|
||||
|
|
@ -406,14 +400,20 @@ which will be automatically deployed to any execution environment.}
|
|||
# No metapackage for “pep” extra because the following are not packaged:
|
||||
# - python3-eido
|
||||
# - python3-peppy
|
||||
# Therefore, also no metapakge for “all” extra
|
||||
%pyproject_extras_subpkg -n snakemake reports
|
||||
%pyproject_extras_subpkg -n snakemake reports messaging
|
||||
|
||||
|
||||
%prep
|
||||
%autosetup -n snakemake-%{version} -p1
|
||||
%setup -q -T -D -a 1 -c -n snakemake-%{version}
|
||||
|
||||
%py3_shebang_fix .
|
||||
# Remove shebangs from non-executable scripts. The Python script is executable
|
||||
# in the source tree but will be installed without executable permissions.
|
||||
sed -r -i '1{/^#!/d}' \
|
||||
snakemake/executors/jobscript.sh \
|
||||
snakemake/executors/google_lifesciences_helper.py
|
||||
|
||||
# Copy and rename nano and vim extensions readmes for use in the main
|
||||
# documentation directory.
|
||||
for editor in nano vim
|
||||
|
|
@ -422,41 +422,36 @@ do
|
|||
done
|
||||
|
||||
# The CDN URL for tailwind.css does not deliver a file with a stable checksum,
|
||||
# so upstream has not recorded a checksum in src/snakemake/assets/__init__.py.
|
||||
# A consequence of this is that setup.py will *always* re-download
|
||||
# tailwind.css, even if it is already present, when building an sdist or
|
||||
# bdist/wheel. Of course, this is not acceptable in an offline build, so we
|
||||
# record the actual checksum of the tailwind.css file we are packaging.
|
||||
cat >> src/snakemake/assets/__init__.py <<EOF
|
||||
# so upstream has not recorded a checksum in snakemake/assets/__init__.py. A
|
||||
# consequence of this is that setup.py will *always* re-download tailwind.css,
|
||||
# even if it is already present, when building an sdist or bdist/wheel. Of
|
||||
# course, this is not acceptable in an offline build, so we record the actual
|
||||
# checksum of the tailwind.css file we are packaging.
|
||||
cat >> snakemake/assets/__init__.py <<EOF
|
||||
|
||||
# Fedora patch: Upstream does not record a checksum for tailwind.css because
|
||||
# they report that the CDN URL may serve trivially different copies. Since we
|
||||
# package a copy of the file, we record the checksum of the actual packaged
|
||||
# file.
|
||||
Assets.spec["tailwindcss/tailwind.css"].sha256 = "$(
|
||||
sha256sum -b src/snakemake/assets/data/tailwindcss/tailwind.css |
|
||||
sha256sum -b snakemake/assets/data/tailwindcss/tailwind.css |
|
||||
awk '{print $1}'
|
||||
)"
|
||||
EOF
|
||||
|
||||
|
||||
%generate_buildrequires -p
|
||||
export SETUPTOOLS_SCM_PRETEND_VERSION='%{srcversion}'
|
||||
%generate_buildrequires
|
||||
# Generate BR’s for all supported extras to ensure they do not FTI
|
||||
%pyproject_buildrequires -x reports,messaging
|
||||
|
||||
|
||||
%build -p
|
||||
export SETUPTOOLS_SCM_PRETEND_VERSION='%{srcversion}'
|
||||
%build
|
||||
%pyproject_wheel
|
||||
|
||||
|
||||
%install -a
|
||||
# Fix shebangs (no /usr/env shebangs)
|
||||
%py3_shebang_fix %{buildroot}%{python3_sitelib} %{buildroot}%{_bindir}
|
||||
|
||||
# Remove shebangs from non-executable scripts. The Python script is executable
|
||||
# in the source tree but will be installed without executable permissions.
|
||||
sed -r -i '1{/^#!/d}' \
|
||||
%{buildroot}%{python3_sitelib}/snakemake/executors/jobscript.sh \
|
||||
%{buildroot}%{python3_sitelib}/snakemake/executors/google_lifesciences_helper.py
|
||||
%install
|
||||
%pyproject_install
|
||||
%pyproject_save_files -l snakemake
|
||||
|
||||
# Mark license files in the asset bundle.
|
||||
sed -r -i 's@^.*/(LICEN[CS]E|NOTICE)[^/]*$@%%license &@' %{pyproject_files}
|
||||
|
|
@ -481,20 +476,20 @@ find '%{buildroot}%{_datadir}/vim/vimfiles' \
|
|||
-type f -name 'README.*' -print -delete
|
||||
|
||||
|
||||
%check -a
|
||||
%check
|
||||
# Even if we are running the tests, this is useful; it could turn up import
|
||||
# errors that would only be revealed by tests we had to disable (e.g. due to
|
||||
# network access).
|
||||
%pyproject_check_import -e '*.tests*'
|
||||
|
||||
%if %{with tests}
|
||||
%if %{without network_tests}
|
||||
# The following require network access (at least DNS) and pass if it is
|
||||
# available.
|
||||
k="${k-}${k+ and }not test_ancient"
|
||||
k="${k-}${k+ and }not test_dynamic_container"
|
||||
k="${k-}${k+ and }not test_github_issue78"
|
||||
k="${k-}${k+ and }not test_issue1083"
|
||||
k="${k-}${k+ and }not test_issue3361_pass"
|
||||
k="${k-}${k+ and }not test_keep_local"
|
||||
k="${k-}${k+ and }not test_modules_prefix"
|
||||
k="${k-}${k+ and }not test_report_after_run"
|
||||
k="${k-}${k+ and }not test_retrieve"
|
||||
k="${k-}${k+ and }not test_shell_exec"
|
||||
%endif
|
||||
|
||||
|
|
@ -513,7 +508,6 @@ k="${k-}${k+ and }not test_cwl_singularity"
|
|||
|
||||
# The following requires polars, which is not packaged.
|
||||
k="${k-}${k+ and }not test_params_pickling"
|
||||
k="${k-}${k+ and }not test_validate"
|
||||
|
||||
# The following require the “pep” extra. They might also require network
|
||||
# access.
|
||||
|
|
@ -521,58 +515,22 @@ k="${k-}${k+ and }not test_modules_peppy"
|
|||
k="${k-}${k+ and }not test_pep_pathlib"
|
||||
k="${k-}${k+ and }not test_peppy"
|
||||
|
||||
%if %{without conda_tests}
|
||||
# All of these try to call conda info --json. We might experiment with making
|
||||
# conda an unconditional BuildRequires, or with enabling the conda_tests bcond
|
||||
# and filtering out the tests we cannot run, but we should wait for:
|
||||
#
|
||||
# F43FailsToInstall: python3-conda
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2371696
|
||||
k="${k-}${k+ and }not test_jupyter_notebook"
|
||||
k="${k-}${k+ and }not test_jupyter_notebook_nbconvert"
|
||||
k="${k-}${k+ and }not test_jupyter_notebook_draft"
|
||||
%endif
|
||||
|
||||
# Flaky; so far, we have not attempted to understand or report these.
|
||||
#
|
||||
# FAILED ../tests/tests.py::test_update_flag - AssertionError: wrong result
|
||||
# produced for file 'test.txt':
|
||||
# ------found------
|
||||
# foo
|
||||
# -----expected-----
|
||||
# foo
|
||||
# bar
|
||||
# -----------------
|
||||
k="${k-}${k+ and }not test_update_flag"
|
||||
# FAILED ../tests/tests.py::test_queue_input_dryrun -
|
||||
# snakemake_interface_common.exceptions.WorkflowError: At least one job did not
|
||||
# complete successfully.
|
||||
# (produces no other useful output)
|
||||
|
||||
# Hangs on s390x; we have not attempted to understand or report this, although
|
||||
# it would be nice to do so. For simplicity, we just skip it on all
|
||||
# architectures.
|
||||
k="${k-}${k+ and }not test_github_issue1158"
|
||||
|
||||
# Workaround for Python path issues
|
||||
cd src/
|
||||
|
||||
# See discussion in https://github.com/snakemake/snakemake/issues/2961
|
||||
# regarding running individual tests explicitly rather than letting pytest
|
||||
# discover them freely, and see the “Running the full test suite” section in
|
||||
# docs/project_info/contributing.rst for the list of tests that should be run.
|
||||
# - tests/test_api.py requires network access and S3 credentials
|
||||
%pytest -v -k "${k-}" ${ignore-} \
|
||||
../tests/tests.py \
|
||||
tests/tests.py \
|
||||
%if %{with conda_tests}
|
||||
../tests/tests_using_conda.py \
|
||||
tests/tests_using_conda.py \
|
||||
%endif
|
||||
../tests/test_expand.py \
|
||||
../tests/test_io.py \
|
||||
../tests/test_schema.py \
|
||||
../tests/test_linting.py \
|
||||
../tests/test_executor_test_suite.py \
|
||||
../tests/test_internals.py
|
||||
tests/test_expand.py \
|
||||
tests/test_io.py \
|
||||
tests/test_schema.py \
|
||||
tests/test_linting.py \
|
||||
tests/test_executor_test_suite.py \
|
||||
tests/test_internals.py
|
||||
%endif
|
||||
|
||||
|
||||
|
|
|
|||
4
sources
4
sources
|
|
@ -1,2 +1,2 @@
|
|||
SHA512 (snakemake-9.14.6.tar.gz) = 3858d5610271fbf3617e3b88b10b55546ddb2eafffa929a882bf5584c91f85280fa7c5b25bae8951e4feb5aa9568ba51c0979c35b37472d03e1efc239392f1ae
|
||||
SHA512 (snakemake-9.14.6-assets.tar.zst) = c58043d640c14cdb4057b515ee65d8c8eb76a4abf34d7ebae70cc929023df780ef234dd5a8fa9d76a96bb1aceda8dab1c8f5337d72ff6bb9ae7d6b82c10a16a7
|
||||
SHA512 (snakemake-8.30.0.tar.gz) = f8e5f09377b55cd2394dbc6ce82e221a52a7f7a4a6fb70d57f72297ee5d3cb045f4fbbb24c589b6785d9edeaa0ce6ba13cb54f26470918166ed49af4497f0ebe
|
||||
SHA512 (snakemake-8.30.0-assets.tar.zst) = beadfe2c8a2b41e927b20420cdec88670acc6111283f413260213d70e6e5f9e6007249b83f889a043810ab72b89e3963d5732be79873ace6637c3b7675c21e19
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue