mgnify-pipelines-toolkit 1.1.2__tar.gz → 1.2.0__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.

Potentially problematic release.


This version of mgnify-pipelines-toolkit might be problematic. Click here for more details.

Files changed (62) hide show
  1. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/PKG-INFO +6 -6
  2. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/antismash_gff_builder.py +24 -27
  3. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit.egg-info/PKG-INFO +6 -6
  4. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit.egg-info/requires.txt +1 -1
  5. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/pyproject.toml +3 -3
  6. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/LICENSE +0 -0
  7. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/README.md +0 -0
  8. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/__init__.py +0 -0
  9. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/__init__.py +0 -0
  10. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/amplicon_utils.py +0 -0
  11. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/are_there_primers.py +0 -0
  12. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/assess_inflection_point_mcp.py +0 -0
  13. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/assess_mcp_proportions.py +0 -0
  14. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/classify_var_regions.py +0 -0
  15. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/find_mcp_inflection_points.py +0 -0
  16. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/make_asv_count_table.py +0 -0
  17. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/mapseq_to_asv_table.py +0 -0
  18. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/primer_val_classification.py +0 -0
  19. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/remove_ambiguous_reads.py +0 -0
  20. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/rev_comp_se_primers.py +0 -0
  21. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/standard_primer_matching.py +0 -0
  22. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/amplicon/study_summary_generator.py +0 -0
  23. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/add_rhea_chebi_annotation.py +0 -0
  24. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/combined_gene_caller_merge.py +0 -0
  25. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/generate_gaf.py +0 -0
  26. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/gff_annotation_utils.py +0 -0
  27. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/gff_file_utils.py +0 -0
  28. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/gff_toolkit.py +0 -0
  29. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/go_utils.py +0 -0
  30. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/krona_txt_from_cat_classification.py +0 -0
  31. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/process_dbcan_result_cazys.py +0 -0
  32. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/process_dbcan_result_clusters.py +0 -0
  33. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/study_summary_generator.py +0 -0
  34. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/summarise_antismash_bgcs.py +0 -0
  35. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/summarise_goslims.py +0 -0
  36. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/assembly/summarise_sanntis_bgcs.py +0 -0
  37. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/genomes/__init__.py +0 -0
  38. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/shared/__init__.py +0 -0
  39. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/shared/convert_cmscan_to_cmsearch_tblout.py +0 -0
  40. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/shared/dwc_summary_generator.py +0 -0
  41. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/shared/fastq_suffix_header_check.py +0 -0
  42. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/shared/get_subunits.py +0 -0
  43. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/shared/get_subunits_coords.py +0 -0
  44. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/shared/library_strategy_check.py +0 -0
  45. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/shared/mapseq2biom.py +0 -0
  46. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/analysis/shared/markergene_study_summary.py +0 -0
  47. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/constants/db_labels.py +0 -0
  48. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/constants/ncrna.py +0 -0
  49. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/constants/regex_ambiguous_bases.py +0 -0
  50. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/constants/regex_fasta_header.py +0 -0
  51. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/constants/tax_ranks.py +0 -0
  52. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/constants/thresholds.py +0 -0
  53. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/constants/var_region_coordinates.py +0 -0
  54. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/schemas/schemas.py +0 -0
  55. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/utils/__init__.py +0 -0
  56. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/utils/fasta_to_delimited.py +0 -0
  57. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit/utils/get_mpt_version.py +0 -0
  58. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit.egg-info/SOURCES.txt +0 -0
  59. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit.egg-info/dependency_links.txt +0 -0
  60. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit.egg-info/entry_points.txt +0 -0
  61. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/mgnify_pipelines_toolkit.egg-info/top_level.txt +0 -0
  62. {mgnify_pipelines_toolkit-1.1.2 → mgnify_pipelines_toolkit-1.2.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mgnify_pipelines_toolkit
3
- Version: 1.1.2
3
+ Version: 1.2.0
4
4
  Summary: Collection of scripts and tools for MGnify pipelines
5
5
  Author-email: MGnify team <metagenomics-help@ebi.ac.uk>
6
6
  License: Apache Software License 2.0
@@ -8,7 +8,7 @@ Keywords: bioinformatics,pipelines,metagenomics
8
8
  Classifier: Programming Language :: Python :: 3
9
9
  Classifier: License :: OSI Approved :: Apache Software License
10
10
  Classifier: Operating System :: OS Independent
11
- Requires-Python: >=3.10
11
+ Requires-Python: >=3.11
12
12
  Description-Content-Type: text/markdown
13
13
  License-File: LICENSE
14
14
  Requires-Dist: biopython>=1.85
@@ -20,10 +20,10 @@ Requires-Dist: click<9,>=8.1.8
20
20
  Requires-Dist: pandera<0.24,>=0.23.1
21
21
  Requires-Dist: pyfastx<3,>=2.2.0
22
22
  Requires-Dist: intervaltree<4,>=3.1.0
23
- Provides-Extra: tests
24
- Requires-Dist: pytest<9,>=8.3.5; extra == "tests"
25
- Requires-Dist: pytest-md>=0.2.0; extra == "tests"
26
- Requires-Dist: pytest-workflow==2.1.0; extra == "tests"
23
+ Provides-Extra: test
24
+ Requires-Dist: pytest<9,>=8.3.5; extra == "test"
25
+ Requires-Dist: pytest-md>=0.2.0; extra == "test"
26
+ Requires-Dist: pytest-workflow==2.1.0; extra == "test"
27
27
  Provides-Extra: dev
28
28
  Requires-Dist: pre-commit>=4.2.0; extra == "dev"
29
29
  Requires-Dist: black>=25.1.0; extra == "dev"
@@ -22,7 +22,6 @@ import pandas as pd
22
22
 
23
23
 
24
24
  def parse_args():
25
-
26
25
  parser = argparse.ArgumentParser()
27
26
  parser.add_argument(
28
27
  "-i", "--input", required=True, type=str, help="Input JSON from antiSMASH"
@@ -64,7 +63,6 @@ def main():
64
63
  region_name = None
65
64
 
66
65
  for feature in record["features"]:
67
-
68
66
  if feature["type"] == "region":
69
67
  # Annotate region features
70
68
  region_name = (
@@ -129,35 +127,34 @@ def main():
129
127
  cds_by_protocluster = record["modules"][
130
128
  "antismash.detection.hmm_detection"
131
129
  ]["rule_results"]["cds_by_protocluster"]
132
- if len(cds_by_protocluster) > 0:
133
- for feature in cds_by_protocluster[0][1]:
134
- if "cds_name" in feature.keys():
135
- locus_tag = feature["cds_name"]
136
- as_clusters = ",".join(
137
- list(feature["definition_domains"].keys())
130
+
131
+ if not cds_by_protocluster:
132
+ continue
133
+
134
+ for feature in cds_by_protocluster[0][1]:
135
+ if locus_tag := feature.get("cds_name"):
136
+ as_clusters = ",".join(list(feature["definition_domains"].keys()))
137
+ if locus_tag in attributes_dict:
138
+ attributes_dict[locus_tag].update(
139
+ {"as_gene_clusters": as_clusters}
138
140
  )
139
- if locus_tag in attributes_dict.keys():
140
- attributes_dict[locus_tag].update(
141
- {"as_gene_clusters": as_clusters}
142
- )
143
141
 
144
142
  if "antismash.detection.genefunctions" in record["modules"].keys():
145
- for tool in record["modules"]["antismash.detection.genefunctions"]["tools"]:
146
- if tool["tool"] == "smcogs":
147
- for locus_tag in tool["best_hits"]:
148
- hit_id = tool["best_hits"][locus_tag]["hit_id"].split(":")[0]
149
- hit_desc = (
150
- tool["best_hits"][locus_tag]["hit_id"]
151
- .split(":")[1]
152
- .replace(" ", "_")
153
- )
154
- score = tool["best_hits"][locus_tag]["bitscore"]
155
- e_value = tool["best_hits"][locus_tag]["evalue"]
143
+ gene_function_tools = record["modules"][
144
+ "antismash.detection.genefunctions"
145
+ ]["tools"]
146
+ if tool_data := gene_function_tools.get("smcogs"):
147
+
148
+ for locus_tag in tool_data["best_hits"]:
149
+ smcog_id = tool_data["best_hits"][locus_tag]["reference_id"]
150
+ smcog_description = tool_data["best_hits"][locus_tag]["description"]
151
+
152
+ score = tool_data["best_hits"][locus_tag]["bitscore"]
153
+ e_value = tool_data["best_hits"][locus_tag]["evalue"]
156
154
 
157
- smcog_note = f"smCOG:{hit_id}:{hit_desc.replace(' ', '_')}(Score:{score}%3BE-value:{e_value})"
158
- if locus_tag in attributes_dict.keys():
159
- attributes_dict[locus_tag].update({"as_notes": smcog_note})
160
- break
155
+ smcog_note = f"smCOG:{smcog_id}:{smcog_description.replace(' ', '_')}(Score:{score}%3BE-value:{e_value})"
156
+ if locus_tag in attributes_dict.keys():
157
+ attributes_dict[locus_tag].update({"as_notes": smcog_note})
161
158
 
162
159
  attributes = [
163
160
  ";".join(f"{k}={v}" for k, v in attrib_data.items() if v)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mgnify_pipelines_toolkit
3
- Version: 1.1.2
3
+ Version: 1.2.0
4
4
  Summary: Collection of scripts and tools for MGnify pipelines
5
5
  Author-email: MGnify team <metagenomics-help@ebi.ac.uk>
6
6
  License: Apache Software License 2.0
@@ -8,7 +8,7 @@ Keywords: bioinformatics,pipelines,metagenomics
8
8
  Classifier: Programming Language :: Python :: 3
9
9
  Classifier: License :: OSI Approved :: Apache Software License
10
10
  Classifier: Operating System :: OS Independent
11
- Requires-Python: >=3.10
11
+ Requires-Python: >=3.11
12
12
  Description-Content-Type: text/markdown
13
13
  License-File: LICENSE
14
14
  Requires-Dist: biopython>=1.85
@@ -20,10 +20,10 @@ Requires-Dist: click<9,>=8.1.8
20
20
  Requires-Dist: pandera<0.24,>=0.23.1
21
21
  Requires-Dist: pyfastx<3,>=2.2.0
22
22
  Requires-Dist: intervaltree<4,>=3.1.0
23
- Provides-Extra: tests
24
- Requires-Dist: pytest<9,>=8.3.5; extra == "tests"
25
- Requires-Dist: pytest-md>=0.2.0; extra == "tests"
26
- Requires-Dist: pytest-workflow==2.1.0; extra == "tests"
23
+ Provides-Extra: test
24
+ Requires-Dist: pytest<9,>=8.3.5; extra == "test"
25
+ Requires-Dist: pytest-md>=0.2.0; extra == "test"
26
+ Requires-Dist: pytest-workflow==2.1.0; extra == "test"
27
27
  Provides-Extra: dev
28
28
  Requires-Dist: pre-commit>=4.2.0; extra == "dev"
29
29
  Requires-Dist: black>=25.1.0; extra == "dev"
@@ -14,7 +14,7 @@ black>=25.1.0
14
14
  flake8>=7.1.2
15
15
  pep8-naming>=0.14.1
16
16
 
17
- [tests]
17
+ [test]
18
18
  pytest<9,>=8.3.5
19
19
  pytest-md>=0.2.0
20
20
  pytest-workflow==2.1.0
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "mgnify_pipelines_toolkit"
3
- version = "1.1.2"
3
+ version = "1.2.0"
4
4
  readme = "README.md"
5
5
  license = { text = "Apache Software License 2.0" }
6
6
  authors = [
@@ -8,7 +8,7 @@ authors = [
8
8
  ]
9
9
  keywords = ["bioinformatics", "pipelines", "metagenomics"]
10
10
  description = "Collection of scripts and tools for MGnify pipelines"
11
- requires-python = ">=3.10"
11
+ requires-python = ">=3.11"
12
12
  classifiers = [
13
13
  "Programming Language :: Python :: 3",
14
14
  "License :: OSI Approved :: Apache Software License",
@@ -89,7 +89,7 @@ fasta_to_delimited = "mgnify_pipelines_toolkit.utils.fasta_to_delimited:main"
89
89
  get_mpt_version = "mgnify_pipelines_toolkit.utils.get_mpt_version:main"
90
90
 
91
91
  [project.optional-dependencies]
92
- tests = [
92
+ test = [
93
93
  "pytest>=8.3.5,<9",
94
94
  "pytest-md>=0.2.0",
95
95
  "pytest-workflow==2.1.0",