-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Labels
Description
Hi guys,
thx for your tool! Your concept is really cool and a handy feature :)
I have decided to integrate this tool in my Snakemake-Pipeline.
However, I now already stumbled multiple times over the issue of having metadata-files that fail the eido evaluation, but the Error messages which are returned by the tool are not helping at all.
Thus, every time when I face such an error I have to invest a lot of time to finally figure out what's the reason for the failing validation.
Here is a minimal reproducible example:
pep_schemal.yaml
description: Minimal example
imports:
- http://schema.databio.org/pep/2.1.0.yaml
properties:
samples:
type: array
items:
type: object
properties:
sample_directory:
type: string
pattern: "^/\\S+$|None"
input_no_error.csv
sample_name,sample_directory
test,/testung
input_error.csv
sample_name,sample_directory
test,testung
Then the output:
# No error
$ eido validate input_no_error.csv -s pep_schema.yaml
Validation successful
# Error
$ eido validate input_error.csv -s pep_schema.yaml
Traceback (most recent call last):
File "/Users/oliverkuchler/miniforge3/envs/snakemake7/bin/eido", line 10, in <module>
sys.exit(main())
^^^^^^
File "/Users/oliverkuchler/miniforge3/envs/snakemake7/lib/python3.12/site-packages/eido/cli.py", line 159, in main
validator(*arguments)
File "/Users/oliverkuchler/miniforge3/envs/snakemake7/lib/python3.12/site-packages/eido/validation.py", line 73, in validate_project
_validate_object(
File "/Users/oliverkuchler/miniforge3/envs/snakemake7/lib/python3.12/site-packages/eido/validation.py", line 45, in _validate_object
instance_name = error.instance[sample_name_colname]
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
Is there any plans for the future to improve the output?
It would be very cool if one could at least see, because of which input the validation fails.
Reactions are currently unavailable