From d7a5c01fd06913da5276bb7ec4dae52743278c39 Mon Sep 17 00:00:00 2001 From: Mostapha Date: Wed, 24 Feb 2021 15:58:25 -0500 Subject: [PATCH] style(optional artifact): catch the cause for misleading warning This changes ensures the warning for optional artifacts will only be printed in valid cases. --- queenbee/base/basemodel.py | 2 +- queenbee/io/inputs/dag.py | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/queenbee/base/basemodel.py b/queenbee/base/basemodel.py index 8f5e10f0..2d55ecbc 100644 --- a/queenbee/base/basemodel.py +++ b/queenbee/base/basemodel.py @@ -5,7 +5,7 @@ import yaml from pydantic import BaseModel as PydanticBaseModel -from pydantic import validator, Field, constr, Extra +from pydantic import validator, Field, constr from .parser import parse_file from .variable import get_ref_variable diff --git a/queenbee/io/inputs/dag.py b/queenbee/io/inputs/dag.py index dfa54ecf..a9f72369 100644 --- a/queenbee/io/inputs/dag.py +++ b/queenbee/io/inputs/dag.py @@ -270,7 +270,9 @@ class DAGFolderInput(DAGGenericInput): @validator('required', always=True) def check_required(cls, v, values): """Overwrite check_required fro artifacts to allow optional artifacts.""" - default = values.get('default', None) + if 'default' not in values: + return v + default = values.get('default') name = values.get('name', None) if default is None and v is False: warnings.warn(