From d9b0c4ee806500aa7fd1238d71a4c66f4b03a140 Mon Sep 17 00:00:00 2001 From: Gavin John Date: Sat, 13 Jan 2024 07:56:29 -0600 Subject: Add py-nanoplot and py-nanostat (#41190) * Add py-nanoplot and py-nanostat * Add myself as spack package maintainer * Remove python version requirement * Remove python dependency * Apply suggestions from code review Co-authored-by: Adam J. Stewart * Update package.py: remove python dependency * Set dependency types * Update py-nanomath package.py * Update py-nanoplot package.py * Update py-nanostat package.py * Add missing py-python-deprecated dependency * Make kaleido a source package * Fix py-nanoget deps * Kaleido lint * Nanoget lint * Nanomath lint * Nanoplot lint * Nanostat lint * Another kaleido lint I missed * py-nanoplot missed lint * py-nanostat missed lint * py-kaleido even more missed lint * The linter really can't make up its mind * The linter REALLY can't make up its mind * Add py-python-deprecated package --------- Co-authored-by: Adam J. Stewart --- .../repos/builtin/packages/py-kaleido/package.py | 21 +++++++++++++++ .../repos/builtin/packages/py-nanoget/package.py | 23 +++++++++++++++++ .../repos/builtin/packages/py-nanomath/package.py | 22 ++++++++++++++++ .../repos/builtin/packages/py-nanoplot/package.py | 30 ++++++++++++++++++++++ .../repos/builtin/packages/py-nanostat/package.py | 21 +++++++++++++++ .../packages/py-python-deprecated/package.py | 19 ++++++++++++++ 6 files changed, 136 insertions(+) create mode 100644 var/spack/repos/builtin/packages/py-kaleido/package.py create mode 100644 var/spack/repos/builtin/packages/py-nanoget/package.py create mode 100644 var/spack/repos/builtin/packages/py-nanomath/package.py create mode 100644 var/spack/repos/builtin/packages/py-nanoplot/package.py create mode 100644 var/spack/repos/builtin/packages/py-nanostat/package.py create mode 100644 var/spack/repos/builtin/packages/py-python-deprecated/package.py (limited to 'var') diff --git a/var/spack/repos/builtin/packages/py-kaleido/package.py b/var/spack/repos/builtin/packages/py-kaleido/package.py new file mode 100644 index 0000000000..b9d65bc800 --- /dev/null +++ b/var/spack/repos/builtin/packages/py-kaleido/package.py @@ -0,0 +1,21 @@ +# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class PyKaleido(PythonPackage): + """Static image export for web-based visualization libraries with zero dependencies""" + + homepage = "https://github.com/wdecoster/nanostat" + url = "https://github.com/plotly/Kaleido/archive/refs/tags/v0.2.1.tar.gz" + + maintainers("Pandapip1") + + version("0.2.1", sha256="fdb673a9759835d4f455990fc1ff8919bd100a0d34f2d3de7bd5eeb2162b57ec") + + depends_on("py-setuptools", type="build") + + build_directory = join_path("repos", "kaleido", "py") diff --git a/var/spack/repos/builtin/packages/py-nanoget/package.py b/var/spack/repos/builtin/packages/py-nanoget/package.py new file mode 100644 index 0000000000..dfb86cfbdd --- /dev/null +++ b/var/spack/repos/builtin/packages/py-nanoget/package.py @@ -0,0 +1,23 @@ +# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class PyNanoget(PythonPackage): + """Functions to extract information from Oxford Nanopore sequencing data and alignments""" + + homepage = "https://github.com/wdecoster/nanoget" + pypi = "nanoget/nanoget-1.19.3.tar.gz" + + maintainers("Pandapip1") + + version("1.19.3", sha256="da981810edb1cbe42cbbfbe5fcf753f29bf5555204cd51256b28a284a036a71b") + + depends_on("py-setuptools", type=("build",)) + depends_on("py-pandas@2.0.0:", type=("build", "run")) + depends_on("py-numpy", type=("build", "run")) + depends_on("py-biopython", type=("build", "run")) + depends_on("py-pysam@0.10.0.1:", type=("build", "run")) diff --git a/var/spack/repos/builtin/packages/py-nanomath/package.py b/var/spack/repos/builtin/packages/py-nanomath/package.py new file mode 100644 index 0000000000..f9db95f64a --- /dev/null +++ b/var/spack/repos/builtin/packages/py-nanomath/package.py @@ -0,0 +1,22 @@ +# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class PyNanomath(PythonPackage): + """A few simple math function for other Oxford Nanopore processing scripts""" + + homepage = "https://github.com/wdecoster/nanomath" + pypi = "nanomath/nanomath-1.3.0.tar.gz" + + maintainers("Pandapip1") + + version("1.3.0", sha256="c35a024b10b34dd8f539cefed1fd69e0a46d18037ca48bed63c7941c67ae028e") + + depends_on("py-setuptools", type=("build",)) + depends_on("py-python-deprecated", type=("build", "run")) + depends_on("py-pandas", type=("build", "run")) + depends_on("py-numpy@1.9:", type=("build", "run")) diff --git a/var/spack/repos/builtin/packages/py-nanoplot/package.py b/var/spack/repos/builtin/packages/py-nanoplot/package.py new file mode 100644 index 0000000000..080ae62bf0 --- /dev/null +++ b/var/spack/repos/builtin/packages/py-nanoplot/package.py @@ -0,0 +1,30 @@ +# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class PyNanoplot(PythonPackage): + """Plotting scripts for long read sequencing data""" + + homepage = "https://github.com/wdecoster/NanoPlot" + pypi = "NanoPlot/NanoPlot-1.42.0.tar.gz" + + maintainers("Pandapip1") + + version("1.42.0", sha256="0f8fd2cffd33a346b3306716058c6cb4091c931e8ab502f10b17a28749e8b6d9") + + depends_on("py-setuptools", type=("build",)) + depends_on("py-biopython", type=("build", "run")) + depends_on("py-pysam@0.10.0.1:", type=("build", "run")) + depends_on("py-pandas@1.1.0:", type=("build", "run")) + depends_on("py-numpy@1.16.5:", type=("build", "run")) + depends_on("py-scipy", type=("build", "run")) + depends_on("py-python-dateutil", type=("build", "run")) + depends_on("py-nanoget@1.19.1:", type=("build", "run")) + depends_on("py-nanomath@1.0.0:", type=("build", "run")) + depends_on("py-plotly@5.4.0:", type=("build", "run")) + depends_on("py-pyarrow", type=("build", "run")) + depends_on("py-kaleido", type=("build", "run")) diff --git a/var/spack/repos/builtin/packages/py-nanostat/package.py b/var/spack/repos/builtin/packages/py-nanostat/package.py new file mode 100644 index 0000000000..d15151d530 --- /dev/null +++ b/var/spack/repos/builtin/packages/py-nanostat/package.py @@ -0,0 +1,21 @@ +# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class PyNanostat(PythonPackage): + """Calculate statistics for Oxford Nanopore sequencing data and alignments""" + + homepage = "https://github.com/wdecoster/nanostat" + pypi = "NanoStat/NanoStat-1.6.0.tar.gz" + + maintainers("Pandapip1") + + version("1.6.0", sha256="e45fa8d1ab49bdaed17596c26c0af148b44e4af46238391a8bb7a1b4cc940079") + + depends_on("py-setuptools", type=("build",)) + depends_on("py-nanoget@1.13.2:", type=("build", "run")) + depends_on("py-nanomath@1.0.0:", type=("build", "run")) diff --git a/var/spack/repos/builtin/packages/py-python-deprecated/package.py b/var/spack/repos/builtin/packages/py-python-deprecated/package.py new file mode 100644 index 0000000000..3af97f84c1 --- /dev/null +++ b/var/spack/repos/builtin/packages/py-python-deprecated/package.py @@ -0,0 +1,19 @@ +# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class PyPythonDeprecated(PythonPackage): + """Python @deprecated decorator to deprecate old python classes, functions or methods.""" + + homepage = "https://github.com/vrcmarcos/python-deprecated" + pypi = "Python-Deprecated/Python-Deprecated-1.1.0.tar.gz" + + maintainers("Pandapip1") + + version("1.1.0", sha256="a242b3c1721f97912330b12cd5529abfa5b3876084a6c60a2c683a87d4b0dd6f") + + depends_on("py-setuptools", type=("build",)) -- cgit v1.2.3-70-g09d2