pheval-exomiser 0.1.3__py3-none-any.whl → 0.2.1__py3-none-any.whl

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.
pheval_exomiser/runner.py CHANGED
@@ -1,11 +1,13 @@
1
1
  """Exomiser Runner"""
2
+
2
3
  from dataclasses import dataclass
3
4
  from pathlib import Path
4
5
 
5
6
  from pheval.runners.runner import PhEvalRunner
6
7
 
7
- from pheval_exomiser.config_parser import parse_exomiser_config
8
8
  from pheval_exomiser.post_process.post_process import post_process_result_format
9
+ from pheval_exomiser.prepare.tool_specific_configuration_options import ExomiserConfigurations
10
+ from pheval_exomiser.prepare.write_application_properties import ExomiserConfigurationFileWriter
9
11
  from pheval_exomiser.run.run import prepare_batch_files, run_exomiser
10
12
 
11
13
 
@@ -18,51 +20,54 @@ class ExomiserPhEvalRunner(PhEvalRunner):
18
20
  tmp_dir: Path
19
21
  output_dir: Path
20
22
  config_file: Path
23
+ version: str
21
24
 
22
25
  def prepare(self):
23
26
  """prepare"""
24
27
  print("preparing")
25
- # config = parse_exomiser_config(self.config_file)
26
- # try:
27
- # Path(self.input_dir).mkdir()
28
- # except FileExistsError:
29
- # pass
30
- # prepare_updated_phenopackets(
31
- # input_dir=Path(self.input_dir).joinpath("phenopackets"),
32
- # testdata_dir=Path(self.testdata_dir),
33
- # config=config,
34
- # )
35
- # prepare_scrambled_phenopackets(
36
- # input_dir=Path(self.input_dir), testdata_dir=Path(self.testdata_dir), config=config
37
- # )
38
- # prepare_spiked_vcfs(
39
- # input_dir=Path(self.input_dir), testdata_dir=Path(self.testdata_dir), config=config
40
- # )
28
+ ExomiserConfigurationFileWriter(
29
+ input_dir=self.input_dir,
30
+ configurations=ExomiserConfigurations.parse_obj(
31
+ self.input_dir_config.tool_specific_configuration_options
32
+ ),
33
+ ).write_application_properties()
41
34
 
42
35
  def run(self):
43
36
  """run"""
44
37
  print("running with exomiser")
45
- config = parse_exomiser_config(self.config_file)
38
+ config = ExomiserConfigurations.parse_obj(
39
+ self.input_dir_config.tool_specific_configuration_options
40
+ )
46
41
  prepare_batch_files(
47
42
  input_dir=self.input_dir,
48
- output_dir=Path(self.output_dir),
49
43
  config=config,
50
44
  testdata_dir=self.testdata_dir,
45
+ tool_input_commands_dir=self.tool_input_commands_dir,
46
+ raw_results_dir=self.raw_results_dir,
47
+ variant_analysis=self.input_dir_config.variant_analysis,
51
48
  )
52
49
  run_exomiser(
53
50
  input_dir=self.input_dir,
54
51
  testdata_dir=self.testdata_dir,
55
- output_dir=self.output_dir,
56
52
  config=config,
53
+ output_dir=self.output_dir,
54
+ tool_input_commands_dir=self.tool_input_commands_dir,
55
+ raw_results_dir=self.raw_results_dir,
56
+ exomiser_version=self.version,
57
+ variant_analysis=self.input_dir_config.variant_analysis,
57
58
  )
58
59
 
59
60
  def post_process(self):
60
61
  """post_process"""
61
62
  print("post processing")
62
- config = parse_exomiser_config(self.config_file)
63
+ config = ExomiserConfigurations.parse_obj(
64
+ self.input_dir_config.tool_specific_configuration_options
65
+ )
63
66
  post_process_result_format(
64
- testdata_dir=Path(self.testdata_dir),
65
- input_dir=Path(self.input_dir),
66
- output_dir=Path(self.output_dir),
67
67
  config=config,
68
+ raw_results_dir=self.raw_results_dir,
69
+ output_dir=self.output_dir,
70
+ variant_analysis=self.input_dir_config.variant_analysis,
71
+ gene_analysis=self.input_dir_config.gene_analysis,
72
+ disease_analysis=self.input_dir_config.disease_analysis,
68
73
  )
@@ -0,0 +1,183 @@
1
+ Metadata-Version: 2.1
2
+ Name: pheval_exomiser
3
+ Version: 0.2.1
4
+ Summary:
5
+ Author: Yasemin Bridges
6
+ Author-email: y.bridges@qmul.ac.uk
7
+ Requires-Python: >=3.9,<4.0.0
8
+ Classifier: Programming Language :: Python :: 3
9
+ Classifier: Programming Language :: Python :: 3.9
10
+ Classifier: Programming Language :: Python :: 3.10
11
+ Classifier: Programming Language :: Python :: 3.11
12
+ Classifier: Programming Language :: Python :: 3.12
13
+ Requires-Dist: click (>=8.1.3,<9.0.0)
14
+ Requires-Dist: docker (>=6.0.1,<7.0.0)
15
+ Requires-Dist: google (>=3.0.0,<4.0.0)
16
+ Requires-Dist: oaklib (>=0.5.12,<0.6.0)
17
+ Requires-Dist: pandas (>=1.5.2,<2.0.0)
18
+ Requires-Dist: phenopackets (>=2.0.2,<3.0.0)
19
+ Requires-Dist: pheval (>=0.3.1,<0.4.0)
20
+ Requires-Dist: pyaml (>=21.10.1,<22.0.0)
21
+ Requires-Dist: pydantic (>=1.10.7,<2.0.0)
22
+ Description-Content-Type: text/markdown
23
+
24
+ # Exomiser Runner for PhEval
25
+
26
+ This is the Exomiser plugin for PhEval. With this plugin, you can leverage the variant prioritisation tool, Exomiser, to run the PhEval pipeline seamlessly. Detailed documentation on how to set up and run the PhEval Makefile pipeline with the Exomiser runner can be found [here](https://monarch-initiative.github.io/pheval/exomiser_pipeline/). The setup process for running the full PhEval Makefile pipeline differs from setting up for a single run. The Makefile pipeline creates directory structures for corpora and configurations to handle multiple run configurations. Detailed instructions on setting up the appropriate directory layout, including the input directory and test data directory, can be found here.
27
+
28
+ ## Installation
29
+
30
+ Clone the pheval.exomiser repo and set up the poetry environment:
31
+
32
+ ```shell
33
+ git clone https://github.com/monarch-initiative/pheval.exomiser.git
34
+ cd pheval.exomiser
35
+ poetry shell
36
+ poetry install
37
+ ```
38
+
39
+ ## Configuring a *single* run:
40
+
41
+ ### Setting up the input directory
42
+
43
+ A `config.yaml` should be located in the input directory and formatted like so:
44
+
45
+ ```yaml
46
+ tool: exomiser
47
+ tool_version: 13.2.0
48
+ variant_analysis: True
49
+ gene_analysis: True
50
+ disease_analysis: False
51
+ tool_specific_configuration_options:
52
+ environment: local
53
+ exomiser_software_directory: exomiser-cli-13.2.0
54
+ analysis_configuration_file: preset-exome-analysis.yml
55
+ max_jobs: 0
56
+ application_properties:
57
+ remm_version:
58
+ cadd_version:
59
+ hg19_data_version: 2302
60
+ hg19_local_frequency_path: # name of hg19 local frequency file
61
+ hg19_whitelist_path: 2302_hg19_clinvar_whitelist.tsv.gz # only required for Exomiser v13.3.0 and earlier, can be left blank for Exomiser v14.0.0 onwards.
62
+ hg38_data_version: 2302
63
+ hg38_local_frequency_path: # name of hg38 local frequency file
64
+ hg38_whitelist_path:
65
+ phenotype_data_version: 2302
66
+ cache_type:
67
+ cache_caffeine_spec:
68
+ post_process:
69
+ score_name: combinedScore
70
+ sort_order: DESCENDING
71
+ ```
72
+ The bare minimum fields are filled to give an idea on the requirements. This is so that the application.properties for Exomiser can be correctly configured. An example config has been provided `pheval.exomiser/config.yaml`.
73
+
74
+ The Exomiser input data directories (phenotype database and variant database) should also be located in the input directory - or a symlink pointing to the location.
75
+
76
+ The `exomiser_software_directory` points to the name of the Exomiser distribution directory located in the input directory.
77
+
78
+ The analysis configuration file (in this case: `preset-exome-analysis.yml`) should be located within the input directory.
79
+
80
+ The whitelist paths for the hg19 and hg38 dbs need only be specified for Exomiser v13.3.0 and earlier (unless specifying your own whitelist), as Exomiser v14.0.0 now includes this in the db.
81
+
82
+ If using optional databases, such as REMM/CADD/local frequency the optional data input should look like so in the input
83
+ directory:
84
+
85
+ ```tree
86
+ ├── cadd
87
+ │   └── {{CADD-VERSION}}
88
+ │   ├── hg19
89
+ │   │   ├── InDels.tsv.gz
90
+ │   │   └── whole_genome_SNVs.tsv.gz
91
+ │   └── hg38
92
+ │   ├── InDels.tsv.gz
93
+ │   └── whole_genome_SNVs.tsv.gz
94
+ ├── local
95
+ │   ├── local_frequency_test_hg19.tsv.gz
96
+ │   └── local_frequency_test_hg38.tsv.gz
97
+ └── remm
98
+ ├── ReMM.v{{REMM-VERSION}}.hg19.tsv.gz
99
+ └── ReMM.v{{REMM-VERSION}}.hg38.tsv.gz
100
+ ```
101
+
102
+
103
+ The overall structure of the input directory should look like this with the cadd, local and remm directories being optional, depending on the exomiser configuration:
104
+ ```tree
105
+ .
106
+ ├── 2302_hg19
107
+ │   ├── 2302_hg19_clinvar_whitelist.tsv.gz
108
+ │   ├── 2302_hg19_clinvar_whitelist.tsv.gz.tbi
109
+ │   ├── 2302_hg19_genome.h2.db
110
+ │   ├── 2302_hg19_transcripts_ensembl.ser
111
+ │   ├── 2302_hg19_transcripts_refseq.ser
112
+ │   ├── 2302_hg19_transcripts_ucsc.ser
113
+ │   └── 2302_hg19_variants.mv.db
114
+ ├── 2302_phenotype
115
+ │   ├── 2302_phenotype.h2.db
116
+ │   ├── hp.obo
117
+ │   ├── phenix
118
+ │   │   ├── ALL_SOURCES_ALL_FREQUENCIES_genes_to_phenotype.txt
119
+ │   │   ├── hp.obo
120
+ │   │   └── out
121
+ │   └── rw_string_10.mv
122
+ ├── config.yaml
123
+ ├── exomiser-cli-13.2.0
124
+ │   ├── lib
125
+ │   └── exomiser-cli-13.2.0.jar
126
+ ├── preset-exome-analysis.yml
127
+ ├── cadd
128
+ │   └── {{CADD-VERSION}}
129
+ │   ├── hg19
130
+ │   │   ├── InDels.tsv.gz
131
+ │   │   └── whole_genome_SNVs.tsv.gz
132
+ │   └── hg38
133
+ │   ├── InDels.tsv.gz
134
+ │   └── whole_genome_SNVs.tsv.gz
135
+ ├── local
136
+ │   ├── local_frequency_test_hg19.tsv.gz
137
+ │   └── local_frequency_test_hg38.tsv.gz
138
+ └── remm
139
+ ├── ReMM.v{{REMM-VERSION}}.hg19.tsv.gz
140
+ └── ReMM.v{{REMM-VERSION}}.hg38.tsv.gz
141
+ ```
142
+ ### Setting up the testdata directory
143
+
144
+ The Exomiser plugin for PhEval accepts phenopackets and vcf files as an input for running Exomiser. The plugin can be run in `phenotype_only` mode, where only phenopackets are required as an input, however, this *must* be specified in the `config.yaml`.
145
+
146
+ The testdata directory should include subdirectories named `phenopackets` and `vcf` if running with variant prioritisation.
147
+
148
+ e.g.,
149
+
150
+ ```tree
151
+ ├── testdata_dir
152
+    ├── phenopackets
153
+    └── vcf
154
+ ```
155
+
156
+ ## Run command
157
+
158
+ Once the testdata and input directories are correctly configured for the run, the `pheval run` command can be executed.
159
+
160
+ ```bash
161
+ pheval run --input-dir /path/to/input_dir \
162
+ --testdata-dir /path/to/testdata_dir \
163
+ --runner exomiserphevalrunner \
164
+ --output-dir /path/to/output_dir \
165
+ --version 13.2.0
166
+ ```
167
+
168
+ ## Common errors
169
+
170
+ You may see an error that is related to the current `setuptools` being used:
171
+
172
+ ```shell
173
+ pkg_resources.extern.packaging.requirements.InvalidRequirement: Expected closing RIGHT_PARENTHESIS
174
+ requests (<3,>=2.12.*) ; extra == 'parse'
175
+ ~~~~~~~~~~^
176
+ ```
177
+
178
+ To fix the error, `setuptools` needs to be downgraded to version 66:
179
+
180
+ ```shell
181
+ pip uninstall setuptools
182
+ pip install -U setuptools=="66"
183
+ ```
@@ -0,0 +1,18 @@
1
+ pheval_exomiser/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ pheval_exomiser/cli.py,sha256=0SR1-L2sREEkFRfUPwYwkbSaBsz_L_Sxq1S4c9LQLJg,350
3
+ pheval_exomiser/constants.py,sha256=o_pLWF8kX74BqyTsAZa7twwSKzedLnpupCI90k_bMqY,517
4
+ pheval_exomiser/post_process/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
+ pheval_exomiser/post_process/post_process.py,sha256=ZLIGPeADGZn08jFc152QraiJnYSADlL35GOwxkCQDwA,901
6
+ pheval_exomiser/post_process/post_process_results_format.py,sha256=WVtCQv5uiFk-6xL6zKsB0VWR2L52kCji_1fsXLitX3o,12112
7
+ pheval_exomiser/prepare/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
+ pheval_exomiser/prepare/create_batch_commands.py,sha256=tp5edNdpIQWp_XBTSNNhUtsA6EZvKOgu1FiDTmhWgiU,16190
9
+ pheval_exomiser/prepare/tool_specific_configuration_options.py,sha256=i4aXdEVfAnA6uQD4ZOk_OO4nXAVIFQ1nN_aVul56DZg,2661
10
+ pheval_exomiser/prepare/write_application_properties.py,sha256=KmG7GvkQo8AhnhRyqohTFvqjfhEhbcs78UYYoigxJ3w,8933
11
+ pheval_exomiser/prepare/yaml_to_family_phenopacket.py,sha256=Hz77dHpVaRMV1fQWKmOCqCKJfmk_hdpZh_6o7hq9Sec,14452
12
+ pheval_exomiser/run/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
+ pheval_exomiser/run/run.py,sha256=6RokrunCoouhP_c4xpGR3EDzK6nxx_iOgyG3q1PYZmk,6892
14
+ pheval_exomiser/runner.py,sha256=LaWhC0F9LoPvP0Ie1sG2GkC8EG-tWjBBY_tFYmx6dxA,2548
15
+ pheval_exomiser-0.2.1.dist-info/METADATA,sha256=5_4_INuZMSIuqPRo_puvFn8rKd4YMbmtSNQm2qEF_H8,7059
16
+ pheval_exomiser-0.2.1.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
17
+ pheval_exomiser-0.2.1.dist-info/entry_points.txt,sha256=lbZMu-x7ns8UrFveWSqEQ1UB5l33TbRMomqBUyGYIwI,131
18
+ pheval_exomiser-0.2.1.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 1.4.0
2
+ Generator: poetry-core 1.9.0
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
@@ -1,160 +0,0 @@
1
- from dataclasses import dataclass
2
- from pathlib import Path
3
-
4
- import yaml
5
- from serde import serde
6
- from serde.yaml import from_yaml
7
-
8
- # @serde
9
- # @dataclass
10
- # class ExomiserPrepareScramble:
11
- # scramble_semsim: float
12
- # scramble_phenopacket: float
13
- #
14
- #
15
- # @serde
16
- # @dataclass
17
- # class ExomiserPrepareUpdatePhenopacket:
18
- # update: bool
19
- # gene_identifer_to_update: str
20
- #
21
- #
22
- # @serde
23
- # @dataclass
24
- # class ExomiserPrepareSpikeVcf:
25
- # spike: bool
26
- # path_to_template_vcf: Path | None
27
- # path_to_template_vcf_directory: Path | None
28
- #
29
- #
30
- # @serde
31
- # @dataclass
32
- # class ExomiserPrepareConvertAnalysisYaml:
33
- # convert: bool
34
- # path_to_diagnoses_file: Path | None
35
- #
36
- #
37
- # @serde
38
- # @dataclass
39
- # class ExomiserConfigPrepare:
40
- # scramble: ExomiserPrepareScramble
41
- # update_phenopacket_gene_identifier: ExomiserPrepareUpdatePhenopacket
42
- # create_spiked_vcf: ExomiserPrepareSpikeVcf
43
- # convert_exomiser_analysis_yaml: ExomiserPrepareConvertAnalysisYaml
44
- #
45
- #
46
- # @serde
47
- # @dataclass
48
- # class ExomiserConfigRunPrepareBatch:
49
- # max_jobs: int
50
- #
51
- #
52
- # @serde
53
- # @dataclass
54
- # class ExomiserConfigRunExomiserManualConfigs:
55
- # exomiser_phenotype_version: str
56
- # exomiser_hg19_version: str
57
- # exomiser_hg38_version: str
58
- #
59
- #
60
- # @serde
61
- # @dataclass
62
- # class ExomiserConfigRunExomiserConfigs:
63
- # exomiser_version: str
64
- # path_to_application_properties_config: Path | None
65
- # exomiser_data_directory: Path
66
- # application_properties_arguments: ExomiserConfigRunExomiserManualConfigs
67
- #
68
- #
69
- # @serde
70
- # @dataclass
71
- # class ExomiserConfigSingleRun:
72
- # prepare_batch: ExomiserConfigRunPrepareBatch
73
- # run_identifier: str
74
- # exomiser_configurations: ExomiserConfigRunExomiserConfigs
75
- # path_to_exomiser_software_directory: Path
76
- # path_to_analysis_yaml: Path
77
- # path_to_input_phenopacket_data: Path
78
- # path_to_input_vcf: Path
79
- # path_to_output_option_file: Path | None
80
- # path_to_output_option_directory: Path | None
81
- #
82
- #
83
- # @serde
84
- # @dataclass
85
- # class ExomiserConfigRun:
86
- # environment: str
87
- # runs: List[ExomiserConfigSingleRun]
88
- #
89
- #
90
- # @serde
91
- # @dataclass
92
- # class ExomiserConfigPostProcessing:
93
- # benchmark_gene_prioritisation: bool
94
- # benchmark_variant_prioritisation: bool
95
- # ranking_method: str
96
- # threshold: float
97
- # output_prefix: str
98
- #
99
- #
100
- # @serde
101
- # @dataclass
102
- # class ExomiserConfig:
103
- # prepare: ExomiserConfigPrepare
104
- # run: ExomiserConfigRun
105
- # post_processing: ExomiserConfigPostProcessing
106
-
107
-
108
- # def parse_exomiser_config(config_path: Path) -> ExomiserConfig:
109
- # """Reads the config file."""
110
- # with open(config_path, "r") as config_file:
111
- # config = yaml.safe_load(config_file)
112
- # config_file.close()
113
- # return from_yaml(ExomiserConfig, yaml.dump(config))
114
-
115
-
116
- @serde
117
- @dataclass
118
- class ExomiserConfigRunExomiserManualConfigs:
119
- exomiser_phenotype_version: str
120
- exomiser_hg19_version: str
121
- exomiser_hg38_version: str
122
-
123
-
124
- @serde
125
- @dataclass
126
- class ExomiserConfigRunExomiserConfigs:
127
- exomiser_version: str
128
- path_to_application_properties_config: Path
129
- application_properties_arguments: ExomiserConfigRunExomiserManualConfigs
130
-
131
-
132
- @serde
133
- @dataclass
134
- class ExomiserConfigRun:
135
- environment: str
136
- path_to_exomiser_software_directory: Path
137
- path_to_analysis_yaml: Path
138
- exomiser_configurations: ExomiserConfigRunExomiserConfigs
139
- max_jobs: int
140
-
141
-
142
- @serde
143
- @dataclass
144
- class ExomiserConfigPostProcess:
145
- ranking_method: str
146
-
147
-
148
- @serde
149
- @dataclass
150
- class ExomiserConfig:
151
- run: ExomiserConfigRun
152
- post_process: ExomiserConfigPostProcess
153
-
154
-
155
- def parse_exomiser_config(config_path: Path) -> ExomiserConfig:
156
- """Reads the config file."""
157
- with open(config_path, "r") as config_file:
158
- config = yaml.safe_load(config_file)
159
- config_file.close()
160
- return from_yaml(ExomiserConfig, yaml.dump(config))
@@ -1,56 +0,0 @@
1
- import shutil
2
- from distutils.dir_util import copy_tree
3
- from pathlib import Path
4
-
5
- from pheval.prepare.create_noisy_phenopackets import create_scrambled_phenopackets
6
- from pheval.prepare.create_spiked_vcf import create_spiked_vcfs
7
- from pheval.prepare.update_phenopacket import update_phenopackets
8
-
9
- from pheval_exomiser.config_parser import ExomiserConfig
10
-
11
-
12
- def prepare_updated_phenopackets(
13
- input_dir: Path, testdata_dir: Path, config: ExomiserConfig
14
- ) -> None:
15
- """Update the gene data for phenopackets."""
16
- try:
17
- Path(input_dir).mkdir()
18
- except FileExistsError:
19
- pass
20
- if config.prepare.update_phenopacket_gene_identifier.update is True:
21
- print("...updating phenopacket causative gene data...")
22
- update_phenopackets(
23
- phenopacket_dir=testdata_dir.joinpath("phenopackets"),
24
- gene_identifier=config.prepare.update_phenopacket_gene_identifier.gene_identifer_to_update,
25
- output_dir=Path(input_dir),
26
- )
27
- else:
28
- copy_tree(str(testdata_dir.joinpath("phenopackets")), str(input_dir))
29
-
30
-
31
- def prepare_scrambled_phenopackets(input_dir: Path, testdata_dir: Path, config: ExomiserConfig):
32
- """Scramble the phenopacket phenotypic profiles."""
33
- if config.prepare.scramble.scramble_phenopacket != 0:
34
- print("...scrambling phenopacket phenotypic profiles...")
35
- create_scrambled_phenopackets(
36
- output_dir=input_dir.joinpath(
37
- f"scrambled_phenopackets_{config.prepare.scramble.scramble_phenopacket}"
38
- ),
39
- output_file_suffix=f"scrambled_{config.prepare.scramble.scramble_phenopacket}",
40
- phenopacket_dir=testdata_dir.joinpath("phenopackets"),
41
- scramble_factor=config.prepare.scramble.scramble_phenopacket,
42
- )
43
-
44
-
45
- def prepare_spiked_vcfs(input_dir: Path, testdata_dir: Path, config: ExomiserConfig):
46
- """Create spiked vcf files with proband variants."""
47
- if config.prepare.create_spiked_vcf.spike is True:
48
- print("...spiking vcfs...")
49
- create_spiked_vcfs(
50
- output_dir=input_dir.joinpath("vcfs"),
51
- phenopacket_dir=testdata_dir.joinpath("phenopackets"),
52
- template_vcf_path=config.prepare.create_spiked_vcf.path_to_template_vcf,
53
- vcf_dir=config.prepare.create_spiked_vcf.path_to_template_vcf_directory,
54
- )
55
- else:
56
- shutil.copytree(testdata_dir.joinpath("vcfs"), input_dir.joinpath("vcfs"))
File without changes
File without changes
@@ -1,36 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: pheval-exomiser
3
- Version: 0.1.3
4
- Summary:
5
- Author: Yasemin Bridges
6
- Author-email: y.bridges@qmul.ac.uk
7
- Requires-Python: >=3.9,<4.0.0
8
- Classifier: Programming Language :: Python :: 3
9
- Classifier: Programming Language :: Python :: 3.9
10
- Classifier: Programming Language :: Python :: 3.10
11
- Classifier: Programming Language :: Python :: 3.11
12
- Requires-Dist: click (>=8.1.3,<9.0.0)
13
- Requires-Dist: docker (>=6.0.1,<7.0.0)
14
- Requires-Dist: google (>=3.0.0,<4.0.0)
15
- Requires-Dist: oaklib (>=0.1.55,<0.2.0)
16
- Requires-Dist: pandas (>=1.5.2,<2.0.0)
17
- Requires-Dist: phenopackets (>=2.0.2,<3.0.0)
18
- Requires-Dist: pyaml (>=21.10.1,<22.0.0)
19
- Requires-Dist: pyserde (>=0.9.7,<0.10.0)
20
- Description-Content-Type: text/markdown
21
-
22
- # Exomiser Runner for PhEval
23
-
24
- This is the Exomiser plugin for PhEval. Highly experimental. Do not use.
25
-
26
- ## Developers
27
-
28
- Warning, the `pheval` library is currently included as a file reference in the toml file.
29
-
30
- ```
31
- pheval = { path = "/Users/matentzn/ws/pheval" }
32
- ```
33
-
34
- This will change when pheval is published on pypi.
35
-
36
-
@@ -1,19 +0,0 @@
1
- pheval_exomiser/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- pheval_exomiser/cli.py,sha256=0SR1-L2sREEkFRfUPwYwkbSaBsz_L_Sxq1S4c9LQLJg,350
3
- pheval_exomiser/config_parser.py,sha256=MIZc2NPYVl24kQmZcrAvwoKY2asU0Bqo6B0PJkdsgVM,3803
4
- pheval_exomiser/post_process/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
- pheval_exomiser/post_process/post_process.py,sha256=z-Nb4_iCpo_HkYSD72-WhEJrs49K5DuBSUmqeM0fxd8,897
6
- pheval_exomiser/post_process/post_process_results_format.py,sha256=AP6xPKCbpqD_5iOvWVueCf-xuG15FFSxR617KGgEBTM,8781
7
- pheval_exomiser/prepare/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
- pheval_exomiser/prepare/create_batch_commands.py,sha256=TNThNNBLs5Ya-9HJCAwyC_pCS8TX1ruKsv6Q8w4sMqU,16266
9
- pheval_exomiser/prepare/prepare.py,sha256=FEcghQ__BcLi1DF_ZbM_Px_3GrmxFuqhaimHGjylru8,2432
10
- pheval_exomiser/prepare/yaml_to_family_phenopacket.py,sha256=Hz77dHpVaRMV1fQWKmOCqCKJfmk_hdpZh_6o7hq9Sec,14452
11
- pheval_exomiser/run/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
- pheval_exomiser/run/run.py,sha256=ByyiJ3i-UHsl3v3GmYAY1AjI-8Lft0Lb8KaD6Kbf3AA,13013
13
- pheval_exomiser/runner.py,sha256=IvUXvDlhG0aUMql9cogUIapWSqj8wSDlGrnnZ1NpcLE,2133
14
- pheval_exomiser/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
- pheval_exomiser/utils/exomiser_config_parser.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
- pheval_exomiser-0.1.3.dist-info/METADATA,sha256=L1oGTTwgi-flbayNYiXJCxMPuQB-CIoEkwGDYueyvMY,1041
17
- pheval_exomiser-0.1.3.dist-info/entry_points.txt,sha256=lbZMu-x7ns8UrFveWSqEQ1UB5l33TbRMomqBUyGYIwI,131
18
- pheval_exomiser-0.1.3.dist-info/WHEEL,sha256=vVCvjcmxuUltf8cYhJ0sJMRDLr1XsPuxEId8YDzbyCY,88
19
- pheval_exomiser-0.1.3.dist-info/RECORD,,