[med-svn] [Git][med-team/python-deeptools][master] 2 commits: New upstream version 3.5.6+dfsg

Alexandre Detiste (@detiste-guest) gitlab at salsa.debian.org
Sat Feb 8 21:01:48 GMT 2025



Alexandre Detiste pushed to branch master at Debian Med / python-deeptools


Commits:
63101d35 by Alexandre Detiste at 2025-02-08T21:59:31+01:00
New upstream version 3.5.6+dfsg
- - - - -
844fb99f by Alexandre Detiste at 2025-02-08T21:59:42+01:00
Update upstream source from tag 'upstream/3.5.6+dfsg'

Update to upstream version '3.5.6+dfsg'
with Debian dir 42e7690bf12079f55751b8d1f4f7362a5272599a
- - - - -


14 changed files:

- − .github/test_and_build.yml
- .github/workflows/planemo.yml
- .github/workflows/pypi.yml
- .github/workflows/test.yml
- deeptools/bigwigAverage.py
- deeptools/bigwigCompare.py
- deeptools/computeMatrix.py
- deeptools/computeMatrixOperations.py
- deeptools/heatmapper.py
- deeptools/multiBigwigSummary.py
- deeptools/plotCoverage.py
- deeptools/plotFingerprint.py
- galaxy/wrapper/deepTools_macros.xml
- pyproject.toml


Changes:

=====================================
.github/test_and_build.yml deleted
=====================================
@@ -1,20 +0,0 @@
-channels:
-  - conda-forge
-  - bioconda
-dependencies:
-  - python > 3.7
-  - numpy
-  - scipy
-  - flake8
-  - pysam
-  - deeptoolsintervals
-  - pytest
-  - samtools
-  - py2bit
-  - pyBigWig
-  - twine
-  - pip
-  - tomli  # remove dependency when lowest supported version is py 3.11
-  - pip:
-    - build
-    - planemo
\ No newline at end of file


=====================================
.github/workflows/planemo.yml
=====================================
@@ -2,16 +2,12 @@ name: Planemo
 on: [push, pull_request]
 
 env:
-  GALAXY_BRANCH: release_23.1
+  GALAXY_BRANCH: release_24.1
 
 defaults:
   run:
     shell: bash -l {0}
 
-# setup micromamba doesn't work as galaxy setup by planemo requires conda.
-# installing conda over into micromamba built env screws up the PATH
-# setup-miniconda + changing over to libmamba to solve is the easiest workaround
-
 jobs:
   planemo_test:
     name: Planemo test
@@ -20,26 +16,22 @@ jobs:
       matrix:
         chunk: [1, 2, 3]
     steps:
-    - uses: actions/checkout at v3
-    - uses: conda-incubator/setup-miniconda at v2
+    - uses: actions/checkout at v4
+    - uses: conda-incubator/setup-miniconda at v3
       with:
         miniconda-version: "latest"
         auto-activate-base: true
-    - name: setup env
+        python-version: "3.12"
+    - name: get samtools
       run: |
-        conda env list
-        conda install -n base conda-libmamba-solver
-        conda config --set solver libmamba
-        conda env create -f .github/test_and_build.yml -n test_and_build
+        conda install -c conda-forge -c bioconda samtools
     - name: pip install
       run: |
-        conda activate test_and_build
-        pip install .
+        pip install .[actions]
     - name: planemo
       run: |
-        conda activate test_and_build
         ./.planemo.sh ${{ matrix.chunk }} ${{ env.GALAXY_BRANCH }}
-    - uses: actions/upload-artifact at v3
+    - uses: actions/upload-artifact at v4
       with:
         name: 'Tool test output ${{ matrix.chunk }}'
         path: upload
@@ -47,29 +39,17 @@ jobs:
     name: Combine chunked test results
     needs: planemo_test
     runs-on: ubuntu-latest
-    strategy:
-      matrix:
-        python-version: ['3.8', '3.11']
     steps:
-    - uses: actions/download-artifact at v3
+    - uses: actions/download-artifact at v4
       with:
         path: artifacts
-    - uses: actions/setup-python at v4
-      with:
-        python-version: ${{ matrix.python-version }}
-    - name: Cache .cache/pip
-      uses: actions/cache at v3
-      id: cache-pip
-      with:
-        path: ~/.cache/pip
-        key: pip_cache_py_${{ matrix.python-version }}_gxy_${{ env.GALAXY_BRANCH }}
     - name: Combine outputs
       uses: galaxyproject/planemo-ci-action at v1
       id: combine
       with:
         mode: combine
         html-report: true
-    - uses: actions/upload-artifact at v3
+    - uses: actions/upload-artifact at v4
       with:
         name: 'All tool test results'
         path: upload


=====================================
.github/workflows/pypi.yml
=====================================
@@ -15,15 +15,14 @@ jobs:
     name: upload to pypi
     runs-on: ubuntu-latest
     steps:
-    - uses: actions/checkout at v3
-    - uses: mamba-org/setup-micromamba at main
+    - uses: actions/checkout at v4
+    - uses: actions/setup-python at v5
       with:
-        environment-file: .github/test_and_build.yml
-        cache-downloads: true
-        environment-name: test_and_build
+        python-version: '3.12'
+        cache: 'pip'
     - name: build
       run: |
-        micromamba activate test_and_build
+        pip install .[actions]
         rm -f dist/*
         python -m build
     - name: upload
@@ -31,5 +30,4 @@ jobs:
         TWINE_USERNAME: "__token__"
         TWINE_PASSWORD: ${{ secrets.pypi_password }}
       run: |
-        micromamba activate test_and_build
         twine upload dist/*


=====================================
.github/workflows/test.yml
=====================================
@@ -11,7 +11,7 @@ jobs:
     runs-on: ubuntu-latest
     if: github.base_ref == 'master'
     steps:
-    - uses: actions/checkout at v3
+    - uses: actions/checkout at v4
     - name: Check path
       run: find /home/runner/work/deepTools/deepTools -name "pyproject.toml"
     - name: Get Version of Deeptools
@@ -40,30 +40,26 @@ jobs:
     name: Test on Linux
     runs-on: ubuntu-latest
     steps:
-    - uses: actions/checkout at v3
-    - uses: mamba-org/setup-micromamba at main
+    - uses: actions/checkout at v4
+    - uses: actions/setup-python at v5
       with:
-        environment-file: .github/test_and_build.yml
-        cache-downloads: true
-        environment-name: test_and_build
+        python-version: '3.12'
+        cache: 'pip'
     - name: pip install
       run: |
-        micromamba activate test_and_build
-        pip install .
+        pip install .[actions]
     - name: PEP8
       run: |
         micromamba activate test_and_build
         flake8 . --exclude=.venv,.build,build --ignore=E501,F403,E402,F999,F405,E722,W504,W605
     - name: Test deepTools
       run: |
-        micromamba activate test_and_build
         pytest -v
     - name: make an artifact
       run: |
-        micromamba activate test_and_build
         rm -f dist/*
         python -m build
-    - uses: actions/upload-artifact at v3
+    - uses: actions/upload-artifact at v4
       with:
         name: "distfiles"
         path: "dist"
@@ -73,14 +69,14 @@ jobs:
     needs: build-linux
     strategy:
       matrix:
-        python-version: ['3.8','3.9','3.10', '3.11', '3.12']
+        python-version: ['3.9','3.10', '3.11', '3.12']
     steps:
-      - uses: actions/checkout at v3
-      - uses: actions/download-artifact at v3
+      - uses: actions/checkout at v4
+      - uses: actions/download-artifact at v4
         with:
           name: "distfiles"
           path: ~/dist/
-      - uses: actions/setup-python at v4
+      - uses: actions/setup-python at v5
         with:
           python-version: ${{ matrix.python-version }}
           cache: 'pip'
@@ -96,17 +92,14 @@ jobs:
     name: Test on OSX
     runs-on: macOS-latest
     steps:
-    - uses: actions/checkout at v3
-    - uses: mamba-org/setup-micromamba at main
+    - uses: actions/checkout at v4
+    - uses: actions/setup-python at v5
       with:
-        environment-file: .github/test_and_build.yml
-        cache-downloads: true
-        environment-name: test_and_build
+        python-version: '3.12'
+        cache: 'pip'
     - name: pip install
       run: |
-        micromamba activate test_and_build
-        pip install .
+        pip install .[actions]
     - name: Test deepTools
       run: |
-        micromamba activate test_and_build
         pytest -v


=====================================
deeptools/bigwigAverage.py
=====================================
@@ -55,8 +55,7 @@ def parse_arguments(args=None):
 
 def getType(fname):
     """
-    Tries to determine if a file is a wiggle file a bigWig file.
-    Returns 'wiggle' if the file name ends with .wig, otherwise 'bigwig'
+    Tries to determine if a file is a wiggle, a bedgraph, or a bigWig file.
     """
     if fname.endswith(".wig") or fname.endswith(".wiggle"):
         return "wiggle"


=====================================
deeptools/bigwigCompare.py
=====================================
@@ -99,8 +99,7 @@ def parse_arguments(args=None):
 
 def getType(fname):
     """
-    Tries to determine if a file is a wiggle file or a bigWig file.
-    Returns 'wiggle' if the file name ends with .wig, otherwise 'bigwig'
+    Tries to determine if a file is a wiggle, a bedgraph or a bigWig.
     """
     if fname.endswith(".wig") or fname.endswith(".wiggle"):
         return "wiggle"


=====================================
deeptools/computeMatrix.py
=====================================
@@ -355,6 +355,14 @@ def process_args(args=None):
     if args.quiet is True:
         args.verbose = False
 
+    # Ensure before and after region length is positive
+    if args.beforeRegionStartLength < 0:
+        print(f"beforeRegionStartLength changed from {args.beforeRegionStartLength} into {abs(args.beforeRegionStartLength)}")
+        args.beforeRegionStartLength = abs(args.beforeRegionStartLength)
+    if args.afterRegionStartLength < 0:
+        print(f"afterRegionStartLength changed from {args.afterRegionStartLength} into {abs(args.afterRegionStartLength)}")
+        args.afterRegionStartLength = abs(args.afterRegionStartLength)
+
     if args.command == 'scale-regions':
         args.nanAfterEnd = False
         args.referencePoint = None


=====================================
deeptools/computeMatrixOperations.py
=====================================
@@ -546,7 +546,7 @@ def cbindMatrices(hm, args):
         # Add on additional NA initialized columns
         ncol = hm.matrix.matrix.shape[1]
         hm.matrix.matrix = np.hstack((hm.matrix.matrix, np.empty(hm2.matrix.matrix.shape)))
-        hm.matrix.matrix[:, ncol:] = np.NAN
+        hm.matrix.matrix[:, ncol:] = np.nan
 
         # Update the values
         for idx2, group in enumerate(hm2.parameters["group_labels"]):


=====================================
deeptools/heatmapper.py
=====================================
@@ -376,7 +376,7 @@ class heatmapper(object):
 
         # create an empty matrix to store the values
         sub_matrix = np.zeros((len(regions), matrix_cols))
-        sub_matrix[:] = np.NAN
+        sub_matrix[:] = np.nan
 
         j = 0
         sub_regions = []


=====================================
deeptools/multiBigwigSummary.py
=====================================
@@ -41,7 +41,7 @@ A detailed sub-commands help is available by typing:
             conflict_handler='resolve')
 
     parser.add_argument('--version', action='version',
-                        version='multiBigwigSummary {}'.format(version('deeptools')))
+                        version='%(prog)s {}'.format(version('deeptools')))
     subparsers = parser.add_subparsers(
         title="commands",
         dest='command',


=====================================
deeptools/plotCoverage.py
=====================================
@@ -50,7 +50,7 @@ detailed usage help:
                   'help: plotCoverage -h / plotCoverage --help\n')
 
     parser.add_argument('--version', action='version',
-                        version='plotCoverage {}'.format(version('deeptools')))
+                        version='%(prog)s {}'.format(version('deeptools')))
 
     return parser
 


=====================================
deeptools/plotFingerprint.py
=====================================
@@ -203,10 +203,10 @@ def getCHANCE(args, idx, mat):
     """
     # Get the index of the reference sample
     if args.JSDsample not in args.bamfiles:
-        return [np.NAN, np.NAN, np.NAN]
+        return [np.nan, np.nan, np.nan]
     refIdx = args.bamfiles.index(args.JSDsample)
     if refIdx == idx:
-        return [np.NAN, np.NAN, np.NAN]
+        return [np.nan, np.nan, np.nan]
 
     subMatrix = np.copy(mat[:, [idx, refIdx]])
     subMatrix[np.isnan(subMatrix)] = 0
@@ -272,10 +272,10 @@ def getJSD(args, idx, mat):
 
     # Get the index of the reference sample
     if args.JSDsample not in args.bamfiles:
-        return np.NAN
+        return np.nan
     refIdx = args.bamfiles.index(args.JSDsample)
     if refIdx == idx:
-        return np.NAN
+        return np.nan
 
     # These will hold the coverage histograms
     chip = np.zeros(MAXLEN, dtype=int)
@@ -339,7 +339,7 @@ def getJSDcommon(chip, input):
 
     if abs(sum(PMFinput) - 1) > 0.01 or abs(sum(PMFchip) - 1) > 0.01:
         sys.stderr.write("Warning: At least one PMF integral is significantly different from 1! The JSD will not be returned")
-        return np.NAN
+        return np.nan
 
     # Compute the JSD from the PMFs
     M = (PMFinput + PMFchip) / 2.0


=====================================
galaxy/wrapper/deepTools_macros.xml
=====================================
@@ -1,7 +1,7 @@
 <macros>
 
     <token name="@THREADS@">--numberOfProcessors "\${GALAXY_SLOTS:-4}"</token>
-    <token name="@TOOL_VERSION@">3.5.5</token>
+    <token name="@TOOL_VERSION@">3.5.6</token>
     <token name="@GALAXY_VERSION@">22.05</token>
     <xml name="requirements">
         <requirements>


=====================================
pyproject.toml
=====================================
@@ -5,7 +5,7 @@ requires = [
 
 [project]
 name = "deepTools"
-version = "3.5.5"
+version = "3.5.6"
 authors = [
     {name="Fidel Ramirez"},
     {name="Devon P Ryan"},
@@ -19,9 +19,9 @@ authors = [
     {name="Thomas Manke"},
     {email="bioinfo-core at ie-freiburg.mpg.de"}
 ]
-requires-python = ">=3.8"
+requires-python = "> 3.8"
 dependencies = [
-    "numpy >= 1.9.0",
+    "numpy >= 2.0.0",
     "scipy >= 0.17.0",
     "matplotlib >= 3.5.0",
     "pysam >= 0.14.0",
@@ -38,7 +38,14 @@ classifiers = [
     "Topic :: Scientific/Engineering :: Bio-Informatics"
 ]
 readme = "README.rst"
-
+[project.optional-dependencies]
+actions = [
+    "flake8",
+    "pytest",
+    "twine",
+    "build",
+    "planemo"
+]
 [project.urls]
 homepage = "https://pypi.python.org/pypi/deepTools/"
 documentation = "https://deeptools.readthedocs.io/en/latest/"



View it on GitLab: https://salsa.debian.org/med-team/python-deeptools/-/compare/d6efda86d7d30bcefaf53087670aa68a473bd6da...844fb99f2bcb57ebc37f7a53c05523193f010136

-- 
View it on GitLab: https://salsa.debian.org/med-team/python-deeptools/-/compare/d6efda86d7d30bcefaf53087670aa68a473bd6da...844fb99f2bcb57ebc37f7a53c05523193f010136
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20250208/88994831/attachment-0001.htm>


More information about the debian-med-commit mailing list