loqusdb 2.6.10__tar.gz → 2.7.1__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.
Files changed (99) hide show
  1. {loqusdb-2.6.10 → loqusdb-2.7.1}/PKG-INFO +1 -1
  2. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/build_models/variant.py +8 -2
  3. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/load.py +3 -0
  4. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/utils/load.py +6 -2
  5. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb.egg-info/PKG-INFO +1 -1
  6. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb.egg-info/requires.txt +2 -2
  7. {loqusdb-2.6.10 → loqusdb-2.7.1}/setup.py +4 -9
  8. {loqusdb-2.6.10 → loqusdb-2.7.1}/CHANGELOG.md +0 -0
  9. {loqusdb-2.6.10 → loqusdb-2.7.1}/CONTRIBUTING.md +0 -0
  10. {loqusdb-2.6.10 → loqusdb-2.7.1}/LICENSE +0 -0
  11. {loqusdb-2.6.10 → loqusdb-2.7.1}/MANIFEST.in +0 -0
  12. {loqusdb-2.6.10 → loqusdb-2.7.1}/README.md +0 -0
  13. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/__init__.py +0 -0
  14. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/__main__.py +0 -0
  15. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/build_models/__init__.py +0 -0
  16. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/build_models/case.py +0 -0
  17. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/build_models/profile_variant.py +0 -0
  18. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/__init__.py +0 -0
  19. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/annotate.py +0 -0
  20. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/cli.py +0 -0
  21. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/delete.py +0 -0
  22. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/export.py +0 -0
  23. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/identity.py +0 -0
  24. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/load_profile.py +0 -0
  25. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/migrate.py +0 -0
  26. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/restore.py +0 -0
  27. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/update.py +0 -0
  28. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/view.py +0 -0
  29. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/commands/wipe.py +0 -0
  30. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/constants/__init__.py +0 -0
  31. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/exceptions/__init__.py +0 -0
  32. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/exceptions/case.py +0 -0
  33. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/exceptions/profile.py +0 -0
  34. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/exceptions/vcf.py +0 -0
  35. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/log.py +0 -0
  36. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/models/__init__.py +0 -0
  37. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/models/case.py +0 -0
  38. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/models/identity.py +0 -0
  39. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/models/profile_variant.py +0 -0
  40. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/models/variant.py +0 -0
  41. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/plugins/__init__.py +0 -0
  42. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/plugins/mongo/__init__.py +0 -0
  43. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/plugins/mongo/adapter.py +0 -0
  44. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/plugins/mongo/case.py +0 -0
  45. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/plugins/mongo/profile_variant.py +0 -0
  46. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/plugins/mongo/structural_variant.py +0 -0
  47. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/plugins/mongo/variant.py +0 -0
  48. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/resources/__init__.py +0 -0
  49. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/utils/__init__.py +0 -0
  50. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/utils/annotate.py +0 -0
  51. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/utils/case.py +0 -0
  52. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/utils/delete.py +0 -0
  53. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/utils/migrate.py +0 -0
  54. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/utils/profiling.py +0 -0
  55. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/utils/update.py +0 -0
  56. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/utils/variant.py +0 -0
  57. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb/utils/vcf.py +0 -0
  58. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb.egg-info/SOURCES.txt +0 -0
  59. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb.egg-info/dependency_links.txt +0 -0
  60. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb.egg-info/entry_points.txt +0 -0
  61. {loqusdb-2.6.10 → loqusdb-2.7.1}/loqusdb.egg-info/top_level.txt +0 -0
  62. {loqusdb-2.6.10 → loqusdb-2.7.1}/setup.cfg +0 -0
  63. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/build_models/test_build_case.py +0 -0
  64. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/build_models/test_build_variant.py +0 -0
  65. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/build_models/test_is_greater.py +0 -0
  66. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/conftest.py +0 -0
  67. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/fixtures/643594.clinical.SV.vcf +0 -0
  68. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/fixtures/643594.clinical.vcf.gz +0 -0
  69. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/fixtures/double_variant.vcf +0 -0
  70. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/fixtures/funny_trio.ped +0 -0
  71. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/fixtures/profile_snv.vcf +0 -0
  72. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/fixtures/recessive_trio.ped +0 -0
  73. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/fixtures/test.SV.vcf +0 -0
  74. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/fixtures/test.vcf +0 -0
  75. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/fixtures/test.vcf.gz +0 -0
  76. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/fixtures/test.vcf.gz.tbi +0 -0
  77. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/fixtures/unsorted.vcf +0 -0
  78. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/functional/test_cli.py +0 -0
  79. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/plugins/mongo/test_case_operations.py +0 -0
  80. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/plugins/mongo/test_connect.py +0 -0
  81. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/plugins/mongo/test_flask_extension.py +0 -0
  82. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/plugins/mongo/test_get_sv.py +0 -0
  83. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/plugins/mongo/test_load_svs.py +0 -0
  84. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/plugins/mongo/test_variant_operations.py +0 -0
  85. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/utils/test_case.py +0 -0
  86. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/utils/test_delete.py +0 -0
  87. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/utils/test_delete_family.py +0 -0
  88. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/utils/test_delete_variant.py +0 -0
  89. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/utils/test_get_family.py +0 -0
  90. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/utils/test_load_database.py +0 -0
  91. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/utils/test_load_family.py +0 -0
  92. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/utils/test_load_variants.py +0 -0
  93. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/utils/test_migrate.py +0 -0
  94. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/utils/test_profiling.py +0 -0
  95. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/vcf_tools/test_check_par.py +0 -0
  96. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/vcf_tools/test_check_vcf.py +0 -0
  97. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/vcf_tools/test_format_sv_variant.py +0 -0
  98. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/vcf_tools/test_format_variant.py +0 -0
  99. {loqusdb-2.6.10 → loqusdb-2.7.1}/tests/vcf_tools/test_vcf.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: loqusdb
3
- Version: 2.6.10
3
+ Version: 2.7.1
4
4
  Summary: Store observations of vcf variants in a mongodb
5
5
  Home-page: https://github.com/moonso/loqusdb
6
6
  Author: Måns Magnusson
@@ -139,7 +139,7 @@ def get_coords(variant):
139
139
  return coordinates
140
140
 
141
141
 
142
- def build_variant(variant, case_obj, case_id=None, gq_threshold=None, genome_build=None):
142
+ def build_variant(variant, case_obj, case_id=None, gq_threshold=None, gq_qual=False, genome_build=None):
143
143
  """Return a Variant object
144
144
 
145
145
  Take a cyvcf2 formated variant line and return a models.Variant.
@@ -188,7 +188,13 @@ def build_variant(variant, case_obj, case_id=None, gq_threshold=None, genome_bui
188
188
  ind_id = ind_obj["ind_id"]
189
189
  # Get the index position for the individual in the VCF
190
190
  ind_pos = ind_obj["ind_index"]
191
- gq = int(variant.gt_quals[ind_pos])
191
+
192
+ if gq_qual:
193
+ gq = int(variant.QUAL)
194
+
195
+ if not gq_qual:
196
+ gq = int(variant.gt_quals[ind_pos])
197
+
192
198
  if gq_threshold and gq < gq_threshold:
193
199
  continue
194
200
 
@@ -55,6 +55,7 @@ def validate_profile_threshold(ctx, param, value):
55
55
  )
56
56
  @click.option("--ensure-index", is_flag=True, help="Make sure that the indexes are in place")
57
57
  @click.option("--gq-threshold", default=20, show_default=True, help="Threshold to consider variant")
58
+ @click.option("--qual-gq", is_flag=True, default=False, show_default=True, help="Use QUAL tag instead of GQ value for quality filter")
58
59
  @click.option(
59
60
  "--max-window",
60
61
  "-m",
@@ -96,6 +97,7 @@ def load(
96
97
  check_profile,
97
98
  hard_threshold,
98
99
  soft_threshold,
100
+ qual_gq
99
101
  ):
100
102
  """Load the variants of a case
101
103
 
@@ -137,6 +139,7 @@ def load(
137
139
  skip_case_id=skip_case_id,
138
140
  case_id=case_id,
139
141
  gq_threshold=gq_threshold,
142
+ qual_gq=qual_gq,
140
143
  max_window=max_window,
141
144
  profile_file=variant_profile_path,
142
145
  hard_threshold=hard_threshold,
@@ -32,6 +32,7 @@ def load_database(
32
32
  family_type="ped",
33
33
  skip_case_id=False,
34
34
  gq_threshold=None,
35
+ qual_gq=False,
35
36
  case_id=None,
36
37
  max_window=3000,
37
38
  profile_file=None,
@@ -49,6 +50,7 @@ def load_database(
49
50
  family_type(str): Format of family file
50
51
  skip_case_id(bool): If no case information should be added to variants
51
52
  gq_threshold(int): If only quality variants should be considered
53
+ qual_gq(bool): Use QUAL field instead of GQ format tag to gate quality
52
54
  case_id(str): If different case id than the one in family file should be used
53
55
  max_window(int): Specify the max size for sv windows
54
56
  check_profile(bool): Does profile check if True
@@ -92,7 +94,7 @@ def load_database(
92
94
  # Get a cyvcf2.VCF object
93
95
  vcf = get_vcf(_vcf_file)
94
96
 
95
- if gq_threshold and not vcf.contains("GQ"):
97
+ if gq_threshold and not vcf.contains("GQ") and not qual_gq:
96
98
  LOG.warning("Set gq-threshold to 0 or add info to vcf {0}".format(_vcf_file))
97
99
  raise SyntaxError("GQ is not defined in vcf header")
98
100
 
@@ -144,6 +146,7 @@ def load_database(
144
146
  case_obj=case_obj,
145
147
  skip_case_id=skip_case_id,
146
148
  gq_threshold=gq_threshold,
149
+ qual_gq=qual_gq,
147
150
  max_window=max_window,
148
151
  variant_type=variant_type,
149
152
  genome_build=genome_build,
@@ -190,6 +193,7 @@ def load_variants(
190
193
  case_obj,
191
194
  skip_case_id=False,
192
195
  gq_threshold=None,
196
+ qual_gq=False,
193
197
  max_window=3000,
194
198
  variant_type="snv",
195
199
  genome_build=None,
@@ -222,7 +226,7 @@ def load_variants(
222
226
  with click.progressbar(vcf_obj, label="Inserting variants", length=nr_variants) as bar:
223
227
 
224
228
  variants = (
225
- build_variant(variant, case_obj, case_id, gq_threshold, genome_build=genome_build)
229
+ build_variant(variant, case_obj, case_id, gq_threshold, qual_gq, genome_build=genome_build)
226
230
  for variant in bar
227
231
  )
228
232
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: loqusdb
3
- Version: 2.6.10
3
+ Version: 2.7.1
4
4
  Summary: Store observations of vcf variants in a mongodb
5
5
  Home-page: https://github.com/moonso/loqusdb
6
6
  Author: Måns Magnusson
@@ -7,7 +7,7 @@ numpy==1.21.4
7
7
  coloredlogs==14.0
8
8
  pyyaml==5.4.0
9
9
  vcftoolbox==1.5
10
- pip==21.3.1
11
- setuptools==59.2.0
10
+ pip==23.1.2
11
+ setuptools==65.5.1
12
12
  mongo_adapter>=0.3.3
13
13
  ped_parser
@@ -10,8 +10,6 @@
10
10
  import io
11
11
  import os
12
12
 
13
- from pip._internal.network.session import PipSession
14
- from pip._internal.req import parse_requirements
15
13
  from setuptools import find_packages, setup
16
14
 
17
15
  # Package meta-data.
@@ -21,13 +19,10 @@ URL = "https://github.com/moonso/loqusdb"
21
19
  EMAIL = "mans.magnusson@scilifelab.com"
22
20
  AUTHOR = "Måns Magnusson"
23
21
  REQUIRES_PYTHON = ">=3.7.0"
24
- VERSION = "2.6.10"
25
-
26
- requirements = [
27
- requirement.requirement
28
- for requirement in parse_requirements(filename="./requirements.txt", session=PipSession())
29
- ]
22
+ VERSION = "2.7.1"
30
23
 
24
+ with open('requirements.txt') as f:
25
+ install_requires = f.read().strip().split('\n')
31
26
 
32
27
  # The rest you shouldn't have to touch too much :)
33
28
  # ------------------------------------------------
@@ -68,7 +63,7 @@ setup(
68
63
  entry_points={
69
64
  "console_scripts": ["loqusdb = loqusdb.__main__:base_command"],
70
65
  },
71
- install_requires=requirements,
66
+ install_requires=install_requires,
72
67
  include_package_data=True,
73
68
  license="MIT",
74
69
  keywords=["vcf", "variants"],
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes