telometer 2.0.1__tar.gz → 2.0.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,19 @@
1
+ Copyright (c) 2024 The Python Packaging Authority
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ of this software and associated documentation files (the "Software"), to deal
5
+ in the Software without restriction, including without limitation the rights
6
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ copies of the Software, and to permit persons to whom the Software is
8
+ furnished to do so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in all
11
+ copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19
+ SOFTWARE.
@@ -0,0 +1,48 @@
1
+ Metadata-Version: 2.2
2
+ Name: telometer
3
+ Version: 2.0.2
4
+ Summary: Quantitative digital telomere measurement from nanopore long reads
5
+ Author-email: "Santiago E. Sanchez" <santy.esanchez@gmail.com>
6
+ License: Copyright (c) 2024 The Python Packaging Authority
7
+
8
+ Permission is hereby granted, free of charge, to any person obtaining a copy
9
+ of this software and associated documentation files (the "Software"), to deal
10
+ in the Software without restriction, including without limitation the rights
11
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12
+ copies of the Software, and to permit persons to whom the Software is
13
+ furnished to do so, subject to the following conditions:
14
+
15
+ The above copyright notice and this permission notice shall be included in all
16
+ copies or substantial portions of the Software.
17
+
18
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
24
+ SOFTWARE.
25
+
26
+ Classifier: Development Status :: 4 - Beta
27
+ Classifier: Intended Audience :: Science/Research
28
+ Classifier: License :: OSI Approved :: MIT License
29
+ Classifier: Operating System :: OS Independent
30
+ Classifier: Programming Language :: Python :: 3
31
+ Classifier: Programming Language :: Python :: 3.8
32
+ Classifier: Programming Language :: Python :: 3.9
33
+ Classifier: Programming Language :: Python :: 3.10
34
+ Classifier: Programming Language :: Python :: 3.11
35
+ Classifier: Programming Language :: Python :: 3.12
36
+ Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
37
+ Requires-Python: >=3.8
38
+ Description-Content-Type: text/markdown
39
+ License-File: LICENSE.txt
40
+ Requires-Dist: numpy
41
+ Requires-Dist: pandas
42
+ Requires-Dist: pysam
43
+ Requires-Dist: regex
44
+ Requires-Dist: scipy
45
+
46
+ A simple tool for measuring chromosome-specific telomeres from long-read alignments.
47
+
48
+ [Telometer Github](https://github.com/santiago-es/Telometer)
@@ -0,0 +1,55 @@
1
+ [build-system]
2
+ requires = [
3
+ "setuptools>=61,<76",
4
+ "wheel"
5
+ ]
6
+ build-backend = "setuptools.build_meta"
7
+
8
+
9
+ [project]
10
+ name = "telometer"
11
+ version = "2.0.2"
12
+ description = "Quantitative digital telomere measurement from nanopore long reads"
13
+ readme = { file = "README.md", content-type = "text/markdown" }
14
+ requires-python = ">=3.8"
15
+ license = { file = "LICENSE.txt" }
16
+
17
+ authors = [
18
+ { name = "Santiago E. Sanchez", email = "santy.esanchez@gmail.com" }
19
+ ]
20
+
21
+ classifiers = [
22
+ "Development Status :: 4 - Beta",
23
+ "Intended Audience :: Science/Research",
24
+ "License :: OSI Approved :: MIT License",
25
+ "Operating System :: OS Independent",
26
+ "Programming Language :: Python :: 3",
27
+ "Programming Language :: Python :: 3.8",
28
+ "Programming Language :: Python :: 3.9",
29
+ "Programming Language :: Python :: 3.10",
30
+ "Programming Language :: Python :: 3.11",
31
+ "Programming Language :: Python :: 3.12",
32
+ "Topic :: Scientific/Engineering :: Bio-Informatics"
33
+ ]
34
+
35
+ dependencies = [
36
+ "numpy",
37
+ "pandas",
38
+ "pysam",
39
+ "regex",
40
+ "scipy"
41
+ ]
42
+
43
+
44
+ [project.scripts]
45
+ telometer = "telometer.telometer:run_telometer"
46
+
47
+
48
+ [tool.setuptools]
49
+ include-package-data = true
50
+
51
+
52
+ [tool.setuptools.packages.find]
53
+ where = ["."]
54
+ include = ["telometer", "telometer.*"]
55
+ exclude = ["build", "build.*", "dist", "dist.*"]
@@ -0,0 +1,3 @@
1
+ """Telometer package."""
2
+
3
+ __version__ = "2.0.2"
@@ -1,24 +1,19 @@
1
1
  #!/usr/bin/env python3
2
- # Telometer v2.0: eight-feature baseline with optional variant detection and enrichment
3
- # Baseline changes retained: 01, 03, 07, 11, 12, 14, 15, 16
2
+ # Telometer v2.0
3
+
4
4
  # Created by: Santiago E Sanchez
5
5
  # Artandi Lab, Stanford University, 2024
6
- # Measures telomeres from ONT or PacBio long reads aligned to a T2T genome assembly
6
+
7
+ # Measures telomeres from ONT long reads
8
+
7
9
  # Simple Usage: telometer -b sorted_t2t.bam -o output.tsv
8
- # Optional enrichment: add -e to your existing Telometer command.
9
- # -e adds the sample-level telomeres_per_gb column and console totals. Each QNAME
10
- # contributes one consistent recorded full length, including soft/hard clips,
11
- # before any Telometer filter. Missing/conflicting lengths yield NA, not a
12
- # partial-denominator rate. This measures yield represented by the input BAM;
13
- # reads/bases removed upstream without retained metadata cannot be recovered.
14
- # Memory for -e scales with unique read IDs; -l is not a total-RSS limit.
15
10
 
16
- __version__ = "2.0"
11
+ __version__ = "2.0.2"
17
12
 
18
13
  import pysam
19
14
  from pathlib import Path
20
- from variant_support_v2 import (BASE_COLUMNS, VARIANT_COLUMNS, TRACT_COLUMNS,
21
- validate_variant_options, strict_runs, coverage_prefix, combined_window_density, summarize_variant)
15
+ #from variant_support_v2 import (BASE_COLUMNS, VARIANT_COLUMNS, TRACT_COLUMNS,
16
+ # validate_variant_options, strict_runs, coverage_prefix, combined_window_density, summarize_variant)
22
17
  import regex as re
23
18
  import pandas as pd
24
19
  import time
@@ -27,7 +22,27 @@ import sys
27
22
  from multiprocessing import Pool, cpu_count
28
23
  import numpy as np
29
24
  from scipy.signal import savgol_filter
30
- from telometer_variant_support import alignment_fields, cached_findall, note, reverse_complement_iupac, stable_record_key
25
+ #from telometer_variant_support import alignment_fields, cached_findall, note, reverse_complement_iupac, stable_record_key
26
+
27
+ from .variant_support_v2 import (
28
+ BASE_COLUMNS,
29
+ VARIANT_COLUMNS,
30
+ TRACT_COLUMNS,
31
+ validate_variant_options,
32
+ strict_runs,
33
+ coverage_prefix,
34
+ combined_window_density,
35
+ summarize_variant,
36
+ )
37
+
38
+ from .telometer_variant_support import (
39
+ alignment_fields,
40
+ cached_findall,
41
+ note,
42
+ reverse_complement_iupac,
43
+ stable_record_key,
44
+ )
45
+
31
46
 
32
47
  def reverse_complement(seq):
33
48
  complement = {'A': 'T', 'C': 'G', 'G': 'C', 'T': 'A', 'N': 'N'}
@@ -11,7 +11,7 @@ import re
11
11
  import warnings
12
12
  from typing import NamedTuple
13
13
  import numpy as np
14
- from telometer_variant_support import reverse_complement_iupac
14
+ from .telometer_variant_support import reverse_complement_iupac
15
15
 
16
16
  BASE_COLUMNS = ['chromosome', 'reference_start', 'reference_end', 'telomere_length',
17
17
  'read_id', 'mapping_quality', 'read_length', 'arm', 'direction']
@@ -0,0 +1,48 @@
1
+ Metadata-Version: 2.2
2
+ Name: telometer
3
+ Version: 2.0.2
4
+ Summary: Quantitative digital telomere measurement from nanopore long reads
5
+ Author-email: "Santiago E. Sanchez" <santy.esanchez@gmail.com>
6
+ License: Copyright (c) 2024 The Python Packaging Authority
7
+
8
+ Permission is hereby granted, free of charge, to any person obtaining a copy
9
+ of this software and associated documentation files (the "Software"), to deal
10
+ in the Software without restriction, including without limitation the rights
11
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12
+ copies of the Software, and to permit persons to whom the Software is
13
+ furnished to do so, subject to the following conditions:
14
+
15
+ The above copyright notice and this permission notice shall be included in all
16
+ copies or substantial portions of the Software.
17
+
18
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
24
+ SOFTWARE.
25
+
26
+ Classifier: Development Status :: 4 - Beta
27
+ Classifier: Intended Audience :: Science/Research
28
+ Classifier: License :: OSI Approved :: MIT License
29
+ Classifier: Operating System :: OS Independent
30
+ Classifier: Programming Language :: Python :: 3
31
+ Classifier: Programming Language :: Python :: 3.8
32
+ Classifier: Programming Language :: Python :: 3.9
33
+ Classifier: Programming Language :: Python :: 3.10
34
+ Classifier: Programming Language :: Python :: 3.11
35
+ Classifier: Programming Language :: Python :: 3.12
36
+ Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
37
+ Requires-Python: >=3.8
38
+ Description-Content-Type: text/markdown
39
+ License-File: LICENSE.txt
40
+ Requires-Dist: numpy
41
+ Requires-Dist: pandas
42
+ Requires-Dist: pysam
43
+ Requires-Dist: regex
44
+ Requires-Dist: scipy
45
+
46
+ A simple tool for measuring chromosome-specific telomeres from long-read alignments.
47
+
48
+ [Telometer Github](https://github.com/santiago-es/Telometer)
@@ -1,10 +1,13 @@
1
+ LICENSE.txt
1
2
  README.md
2
3
  pyproject.toml
4
+ telometer/__init__.py
3
5
  telometer/telometer.py
4
6
  telometer/telometer_variant_support.py
5
7
  telometer/variant_support_v2.py
6
8
  telometer.egg-info/PKG-INFO
7
9
  telometer.egg-info/SOURCES.txt
8
10
  telometer.egg-info/dependency_links.txt
11
+ telometer.egg-info/entry_points.txt
9
12
  telometer.egg-info/requires.txt
10
13
  telometer.egg-info/top_level.txt
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ telometer = telometer.telometer:run_telometer
@@ -0,0 +1,5 @@
1
+ numpy
2
+ pandas
3
+ pysam
4
+ regex
5
+ scipy
telometer-2.0.1/PKG-INFO DELETED
@@ -1,16 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: telometer
3
- Version: 2.0.1
4
- Summary: Quantitative digital telomere measurement from nanopore long-reads
5
- Author-email: "Santiago E. Sanchez" <santy.esanchez@gmail.com>
6
- License-Expression: MIT
7
- Classifier: Programming Language :: Python :: 3
8
- Classifier: Operating System :: OS Independent
9
- Requires-Python: >=3.7
10
- Description-Content-Type: text/markdown
11
- Requires-Dist: requests
12
- Requires-Dist: numpy
13
-
14
- A simple tool for measuring chromosome-specific telomeres from long-read alignments.
15
-
16
- [Telometer Github](https://github.com/santiago-es/Telometer)
@@ -1,31 +0,0 @@
1
- [build-system]
2
- requires = ["setuptools>=77.0.3", "wheel"]
3
- build-backend = "setuptools.build_meta"
4
-
5
- [project]
6
- name = "telometer"
7
- version = "2.0.1"
8
- description = "Quantitative digital telomere measurement from nanopore long-reads"
9
- readme = "README.md"
10
- requires-python = ">=3.7"
11
- license = "MIT"
12
- license-files = ["LICENSE"]
13
-
14
- authors = [
15
- { name = "Santiago E. Sanchez", email = "santy.esanchez@gmail.com" }
16
- ]
17
-
18
- classifiers = [
19
- "Programming Language :: Python :: 3",
20
- "Operating System :: OS Independent"
21
- ]
22
-
23
- dependencies = [
24
- "requests",
25
- "numpy"
26
- ]
27
-
28
- [tool.setuptools.packages.find]
29
- where = ["."]
30
- include = ["telometer*"]
31
- exclude = ["build*", "dist*"]
@@ -1,16 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: telometer
3
- Version: 2.0.1
4
- Summary: Quantitative digital telomere measurement from nanopore long-reads
5
- Author-email: "Santiago E. Sanchez" <santy.esanchez@gmail.com>
6
- License-Expression: MIT
7
- Classifier: Programming Language :: Python :: 3
8
- Classifier: Operating System :: OS Independent
9
- Requires-Python: >=3.7
10
- Description-Content-Type: text/markdown
11
- Requires-Dist: requests
12
- Requires-Dist: numpy
13
-
14
- A simple tool for measuring chromosome-specific telomeres from long-read alignments.
15
-
16
- [Telometer Github](https://github.com/santiago-es/Telometer)
@@ -1,2 +0,0 @@
1
- requests
2
- numpy
File without changes
File without changes