EI-CoreBioinformatics / mikado

Mikado is a lightweight Python3 pipeline whose purpose is to facilitate the identification of expressed loci from RNA-Seq data * and to select the best models in each locus.
https://mikado.readthedocs.io/en/stable/
GNU Lesser General Public License v3.0
97 stars 18 forks source link

configuration error with mikado 2.3.2 #437

Open baozg opened 1 year ago

baozg commented 1 year ago

Hi,

I am using mikado 2.3.2, but some configuration errors remain. Would you mind helping debug for this?

command


mikado configure --full --list list.txt --reference ref.fasta --mode permissive --scoring plant.yaml --copy-scoring plant.yaml -bt uniprot_sprot_plants.fa --junctions portcullis.pass.junctions.bed -od /public/home/baizhigui88/Projects/T2T/00.data/RNA-Seq/results/04.mikado/02.mikado configuration.yaml

mikado prepare --json-conf configuration.yaml
The configuration file is invalid.
Validation errors if a Daijin configuration file was expected:
{'out_dir': ['Missing data for required field.'], 'name': ['Missing data for required field.'], 'threads': ['Missing data for required field.'], 'serialise': {'max_regression': ['Missing data for required field.'], 'substitution_matrix': ['Missing data for required field.']}}
Validation errors if a Mikado configuration file was expected:
{'threads': ['Missing data for required field.'], 'serialise': {'max_regression': ['Missing data for required field.'], 'substitution_matrix': ['Missing data for required field.']}}
Loading the configuration file failed with error:
The configuration file is invalid.
Validation errors if a Daijin configuration file was expected:
{'out_dir': ['Missing data for required field.'], 'name': ['Missing data for required field.'], 'threads': ['Missing data for required field.'], 'serialise': {'max_regression': ['Missing data for required field.'], 'substitution_matrix': ['Missing data for required field.']}}
Validation errors if a Mikado configuration file was expected:
{'threads': ['Missing data for required field.'], 'serialise': {'max_regression': ['Missing data for required field.'], 'substitution_matrix': ['Missing data for required field.']}}

Traceback (most recent call last):
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/Mikado/configuration/configurator.py", line 183, in load_and_validate_config
    config = MikadoConfiguration.Schema().load(config, partial=external)
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/marshmallow_dataclass/__init__.py", line 756, in load
    all_loaded = super().load(data, many=many, **kwargs)
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/marshmallow/schema.py", line 723, in load
    data, many=many, partial=partial, unknown=unknown, postprocess=True
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/marshmallow/schema.py", line 909, in _do_load
    raise exc
marshmallow.exceptions.ValidationError: {'threads': ['Missing data for required field.'], 'serialise': {'max_regression': ['Missing data for required field.'], 'substitution_matrix': ['Missing data for required field.']}}

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/Mikado/configuration/configurator.py", line 186, in load_and_validate_config
    config = DaijinConfiguration.Schema().load(config, partial=external)
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/marshmallow_dataclass/__init__.py", line 756, in load
    all_loaded = super().load(data, many=many, **kwargs)
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/marshmallow/schema.py", line 723, in load
    data, many=many, partial=partial, unknown=unknown, postprocess=True
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/marshmallow/schema.py", line 909, in _do_load
    raise exc
marshmallow.exceptions.ValidationError: {'out_dir': ['Missing data for required field.'], 'name': ['Missing data for required field.'], 'threads': ['Missing data for required field.'], 'serialise': {'max_regression': ['Missing data for required field.'], 'substitution_matrix': ['Missing data for required field.']}}

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/Mikado/configuration/configurator.py", line 186, in load_and_validate_config
    config = DaijinConfiguration.Schema().load(config, partial=external)
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/marshmallow_dataclass/__init__.py", line 756, in load
    all_loaded = super().load(data, many=many, **kwargs)
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/marshmallow/schema.py", line 723, in load
    data, many=many, partial=partial, unknown=unknown, postprocess=True
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/marshmallow/schema.py", line 909, in _do_load
    raise exc
marshmallow.exceptions.ValidationError: {'out_dir': ['Missing data for required field.'], 'name': ['Missing data for required field.'], 'threads': ['Missing data for required field.'], 'serialise': {'max_regression': ['Missing data for required field.'], 'substitution_matrix': ['Missing data for required field.']}}

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/Mikado/configuration/configurator.py", line 195, in load_and_validate_config
    raise exc
marshmallow.exceptions.ValidationError: The configuration file is invalid.
Validation errors if a Daijin configuration file was expected:
{'out_dir': ['Missing data for required field.'], 'name': ['Missing data for required field.'], 'threads': ['Missing data for required field.'], 'serialise': {'max_regression': ['Missing data for required field.'], 'substitution_matrix': ['Missing data for required field.']}}
Validation errors if a Mikado configuration file was expected:
{'threads': ['Missing data for required field.'], 'serialise': {'max_regression': ['Missing data for required field.'], 'substitution_matrix': ['Missing data for required field.']}}

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/Mikado/__main__.py", line 68, in main
    args.func(args)
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/Mikado/subprograms/prepare.py", line 199, in prepare_launcher
    args, mikado_config, logger = setup(args)
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/Mikado/subprograms/prepare.py", line 158, in setup
    mikado_config = load_and_validate_config(args.configuration, logger=logger)
  File "/public/home/baizhigui88/miniconda3/envs/mikado2/lib/python3.7/site-packages/Mikado/configuration/configurator.py", line 208, in load_and_validate_config
    raise InvalidConfiguration(f"The configuration file passed is invalid. Please double check. Exception: {exc}")
Mikado.exceptions.InvalidConfiguration: "The configuration file passed is invalid. Please double check. Exception: The configuration file is invalid. \nValidation errors if a Daijin configuration file was expected:\n{'out_dir': ['Missing data for required field.'], 'name': ['Missing data for required field.'], 'threads': ['Missing data for required field.'], 'serialise': {'max_regression': ['Missing data for required field.'], 'substitution_matrix': ['Missing data for required field.']}}\nValidation errors if a Mikado configuration file was expected:\n{'threads': ['Missing data for required field.'], 'serialise': {'max_regression': ['Missing data for required field.'], 'substitution_matrix': ['Missing data for required field.']}}"
swarbred commented 1 year ago

@baozg can you attach the configuration.yaml