diff --git a/enums/.buildinfo b/enums/.buildinfo index 512b12491..0f856182c 100644 --- a/enums/.buildinfo +++ b/enums/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 94567c256091601775efd054449fbfbc +config: 4ad7bc70a5261a9f214df9d7d7f3fa9f tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/enums/.doctrees/developer/explanations/entities.doctree b/enums/.doctrees/developer/explanations/entities.doctree index 900ed6e65..aba13fdd7 100644 Binary files a/enums/.doctrees/developer/explanations/entities.doctree and b/enums/.doctrees/developer/explanations/entities.doctree differ diff --git a/enums/.doctrees/environment.pickle b/enums/.doctrees/environment.pickle index 5c5da4e7a..6772ca2e2 100644 Binary files a/enums/.doctrees/environment.pickle and b/enums/.doctrees/environment.pickle differ diff --git a/enums/.doctrees/user/reference/api.doctree b/enums/.doctrees/user/reference/api.doctree index 2565967c8..37cf8657b 100644 Binary files a/enums/.doctrees/user/reference/api.doctree and b/enums/.doctrees/user/reference/api.doctree differ diff --git a/enums/_modules/ibek/globals.html b/enums/_modules/ibek/globals.html index 44473684d..7849fcc97 100644 --- a/enums/_modules/ibek/globals.html +++ b/enums/_modules/ibek/globals.html @@ -8,7 +8,7 @@ - ibek.globals — ibek 1.10.2.dev70+g95d3c03 documentation + ibek.globals — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/_modules/ibek/ioc.html b/enums/_modules/ibek/ioc.html index 029007daa..96fab45d5 100644 --- a/enums/_modules/ibek/ioc.html +++ b/enums/_modules/ibek/ioc.html @@ -8,7 +8,7 @@ - ibek.ioc — ibek 1.10.2.dev70+g95d3c03 documentation + ibek.ioc — ibek 1.10.2.dev71+g69da8ff documentation @@ -520,13 +520,11 @@

Source code for ibek.ioc

             arg_type = str
 
         elif isinstance(arg, EnumArg):
-            values = getattr(arg, "values")
-            assert isinstance(values, dict)
             # Pydantic uses the values of the Enum as the options in the schema.
             # Here we arrange for the keys to be in the schema (what a user supplies)
             # but the values to be what is rendered when jinja refers to the enum
             enum_swapped = {}
-            for k, v in values.items():
+            for k, v in arg.values.items():
                 enum_swapped[str(v) if v else str(k)] = k
             val_enum = EnumVal(arg.name, enum_swapped)  # type: ignore
             arg_type = val_enum
diff --git a/enums/_modules/ibek/render.html b/enums/_modules/ibek/render.html
index 93758a462..09a1d37e3 100644
--- a/enums/_modules/ibek/render.html
+++ b/enums/_modules/ibek/render.html
@@ -8,7 +8,7 @@
   
     
     
-    ibek.render — ibek 1.10.2.dev70+g95d3c03 documentation
+    ibek.render — ibek 1.10.2.dev71+g69da8ff documentation
   
   
   
diff --git a/enums/_modules/ibek/support.html b/enums/_modules/ibek/support.html
index a449e95b0..983b1d818 100644
--- a/enums/_modules/ibek/support.html
+++ b/enums/_modules/ibek/support.html
@@ -8,7 +8,7 @@
   
     
     
-    ibek.support — ibek 1.10.2.dev70+g95d3c03 documentation
+    ibek.support — ibek 1.10.2.dev71+g69da8ff documentation
   
   
   
@@ -423,13 +423,19 @@ 

Source code for ibek.support

 
 import json
 from enum import Enum
-from typing import Any, Dict, Optional, Sequence, Union
+from typing import Any, Dict, ForwardRef, Optional, Sequence, TypeVar, Union
 
 from pydantic import Field
 from typing_extensions import Literal
 
 from .globals import BaseSettings
 
+UndefinedType = ForwardRef("UndefinedType")
+
+T = TypeVar("T")
+
+Default = Union[Optional[T], UndefinedType]
+
 
 
[docs]class When(Enum): first = "first" @@ -497,7 +503,7 @@

Source code for ibek.support

     type: Literal["enum"] = "enum"
     default: Optional[Any] = None
 
-    values: Optional[Dict[str, Any]] = Field(
+    values: Dict[str, Any] = Field(
         description="provides a list of values to make this argument an Enum",
         default=(None),
     )
diff --git a/enums/_modules/ibek/utils.html b/enums/_modules/ibek/utils.html index 8e9eef387..7eedd695f 100644 --- a/enums/_modules/ibek/utils.html +++ b/enums/_modules/ibek/utils.html @@ -8,7 +8,7 @@ - ibek.utils — ibek 1.10.2.dev70+g95d3c03 documentation + ibek.utils — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/_modules/index.html b/enums/_modules/index.html index 08c7c7a64..a4b15ccea 100644 --- a/enums/_modules/index.html +++ b/enums/_modules/index.html @@ -8,7 +8,7 @@ - Overview: module code — ibek 1.10.2.dev70+g95d3c03 documentation + Overview: module code — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/_static/documentation_options.js b/enums/_static/documentation_options.js index 0834061e5..cdfee5d88 100644 --- a/enums/_static/documentation_options.js +++ b/enums/_static/documentation_options.js @@ -1,6 +1,6 @@ var DOCUMENTATION_OPTIONS = { URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), - VERSION: '1.10.2.dev70+g95d3c03', + VERSION: '1.10.2.dev71+g69da8ff', LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/enums/developer/explanations/decisions.html b/enums/developer/explanations/decisions.html index 5c7b7196f..8edfc22af 100644 --- a/enums/developer/explanations/decisions.html +++ b/enums/developer/explanations/decisions.html @@ -9,7 +9,7 @@ - Architectural Decision Records — ibek 1.10.2.dev70+g95d3c03 documentation + Architectural Decision Records — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/explanations/decisions/0001-record-architecture-decisions.html b/enums/developer/explanations/decisions/0001-record-architecture-decisions.html index 7eea33a89..75f0f6656 100644 --- a/enums/developer/explanations/decisions/0001-record-architecture-decisions.html +++ b/enums/developer/explanations/decisions/0001-record-architecture-decisions.html @@ -9,7 +9,7 @@ - 1. Record architecture decisions — ibek 1.10.2.dev70+g95d3c03 documentation + 1. Record architecture decisions — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/explanations/decisions/0002-switched-to-pip-skeleton.html b/enums/developer/explanations/decisions/0002-switched-to-pip-skeleton.html index 97ef40664..93ad4020d 100644 --- a/enums/developer/explanations/decisions/0002-switched-to-pip-skeleton.html +++ b/enums/developer/explanations/decisions/0002-switched-to-pip-skeleton.html @@ -9,7 +9,7 @@ - 2. Adopt python3-pip-skeleton for project structure — ibek 1.10.2.dev70+g95d3c03 documentation + 2. Adopt python3-pip-skeleton for project structure — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/explanations/entities.html b/enums/developer/explanations/entities.html index 619d3e5ce..e61954109 100644 --- a/enums/developer/explanations/entities.html +++ b/enums/developer/explanations/entities.html @@ -9,7 +9,7 @@ - Modules, Definitions and Entities — ibek 1.10.2.dev70+g95d3c03 documentation + Modules, Definitions and Entities — ibek 1.10.2.dev71+g69da8ff documentation @@ -1025,17 +1025,10 @@

Schemas"title": "Default" }, "values": { - "anyOf": [ - { - "type": "object" - }, - { - "type": "null" - } - ], "default": null, "description": "provides a list of values to make this argument an Enum", - "title": "Values" + "title": "Values", + "type": "object" } }, "required": [ diff --git a/enums/developer/how-to/build-docs.html b/enums/developer/how-to/build-docs.html index f32a572e5..19cc2f399 100644 --- a/enums/developer/how-to/build-docs.html +++ b/enums/developer/how-to/build-docs.html @@ -9,7 +9,7 @@ - Build the docs using sphinx — ibek 1.10.2.dev70+g95d3c03 documentation + Build the docs using sphinx — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/how-to/contribute.html b/enums/developer/how-to/contribute.html index 7eb66ad86..6cccb9e4b 100644 --- a/enums/developer/how-to/contribute.html +++ b/enums/developer/how-to/contribute.html @@ -9,7 +9,7 @@ - Contributing to the project — ibek 1.10.2.dev70+g95d3c03 documentation + Contributing to the project — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/how-to/lint.html b/enums/developer/how-to/lint.html index d41ea7a9a..e63aaf968 100644 --- a/enums/developer/how-to/lint.html +++ b/enums/developer/how-to/lint.html @@ -9,7 +9,7 @@ - Run linting using pre-commit — ibek 1.10.2.dev70+g95d3c03 documentation + Run linting using pre-commit — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/how-to/make-release.html b/enums/developer/how-to/make-release.html index c5877de22..56803b6cc 100644 --- a/enums/developer/how-to/make-release.html +++ b/enums/developer/how-to/make-release.html @@ -9,7 +9,7 @@ - Make a release — ibek 1.10.2.dev70+g95d3c03 documentation + Make a release — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/how-to/pin-requirements.html b/enums/developer/how-to/pin-requirements.html index fb1af224d..0ebea8960 100644 --- a/enums/developer/how-to/pin-requirements.html +++ b/enums/developer/how-to/pin-requirements.html @@ -9,7 +9,7 @@ - Pinning Requirements — ibek 1.10.2.dev70+g95d3c03 documentation + Pinning Requirements — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/how-to/run-tests.html b/enums/developer/how-to/run-tests.html index e725d934d..f56b021fb 100644 --- a/enums/developer/how-to/run-tests.html +++ b/enums/developer/how-to/run-tests.html @@ -9,7 +9,7 @@ - Run the tests using pytest — ibek 1.10.2.dev70+g95d3c03 documentation + Run the tests using pytest — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/how-to/static-analysis.html b/enums/developer/how-to/static-analysis.html index 173c680f8..3f3683eb6 100644 --- a/enums/developer/how-to/static-analysis.html +++ b/enums/developer/how-to/static-analysis.html @@ -9,7 +9,7 @@ - Run static analysis using mypy — ibek 1.10.2.dev70+g95d3c03 documentation + Run static analysis using mypy — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/how-to/test-container.html b/enums/developer/how-to/test-container.html index 60a913b9f..a780bf8dd 100644 --- a/enums/developer/how-to/test-container.html +++ b/enums/developer/how-to/test-container.html @@ -9,7 +9,7 @@ - Container Local Build and Test — ibek 1.10.2.dev70+g95d3c03 documentation + Container Local Build and Test — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/how-to/update-tools.html b/enums/developer/how-to/update-tools.html index c613819e8..69f8d19d3 100644 --- a/enums/developer/how-to/update-tools.html +++ b/enums/developer/how-to/update-tools.html @@ -9,7 +9,7 @@ - Update the tools — ibek 1.10.2.dev70+g95d3c03 documentation + Update the tools — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/index.html b/enums/developer/index.html index bad70b9a6..db9236c71 100644 --- a/enums/developer/index.html +++ b/enums/developer/index.html @@ -9,7 +9,7 @@ - Developer Guide — ibek 1.10.2.dev70+g95d3c03 documentation + Developer Guide — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/reference/standards.html b/enums/developer/reference/standards.html index 0981394f5..59180b26c 100644 --- a/enums/developer/reference/standards.html +++ b/enums/developer/reference/standards.html @@ -9,7 +9,7 @@ - Standards — ibek 1.10.2.dev70+g95d3c03 documentation + Standards — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/developer/tutorials/dev-install.html b/enums/developer/tutorials/dev-install.html index 46b962161..8b940ca9f 100644 --- a/enums/developer/tutorials/dev-install.html +++ b/enums/developer/tutorials/dev-install.html @@ -9,7 +9,7 @@ - Developer install — ibek 1.10.2.dev70+g95d3c03 documentation + Developer install — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/genindex.html b/enums/genindex.html index 7fa7909cc..c44fec385 100644 --- a/enums/genindex.html +++ b/enums/genindex.html @@ -8,7 +8,7 @@ - Index — ibek 1.10.2.dev70+g95d3c03 documentation + Index — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/index.html b/enums/index.html index b8cd4a0b0..f4b0a4d52 100644 --- a/enums/index.html +++ b/enums/index.html @@ -9,7 +9,7 @@ - ibek — ibek 1.10.2.dev70+g95d3c03 documentation + ibek — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/py-modindex.html b/enums/py-modindex.html index d373ef1bd..e93864863 100644 --- a/enums/py-modindex.html +++ b/enums/py-modindex.html @@ -8,7 +8,7 @@ - Python Module Index — ibek 1.10.2.dev70+g95d3c03 documentation + Python Module Index — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/search.html b/enums/search.html index 12c413ef5..281de4223 100644 --- a/enums/search.html +++ b/enums/search.html @@ -7,7 +7,7 @@ - Search - ibek 1.10.2.dev70+g95d3c03 documentation + Search - ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/user/explanations/docs-structure.html b/enums/user/explanations/docs-structure.html index 2ca03e05d..df2645b70 100644 --- a/enums/user/explanations/docs-structure.html +++ b/enums/user/explanations/docs-structure.html @@ -9,7 +9,7 @@ - About the documentation — ibek 1.10.2.dev70+g95d3c03 documentation + About the documentation — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/user/how-to/edit-yaml.html b/enums/user/how-to/edit-yaml.html index 8ed63b9dd..d46b922a3 100644 --- a/enums/user/how-to/edit-yaml.html +++ b/enums/user/how-to/edit-yaml.html @@ -9,7 +9,7 @@ - YAML schema — ibek 1.10.2.dev70+g95d3c03 documentation + YAML schema — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/user/how-to/run-container.html b/enums/user/how-to/run-container.html index 71a03032b..6972975a6 100644 --- a/enums/user/how-to/run-container.html +++ b/enums/user/how-to/run-container.html @@ -9,7 +9,7 @@ - Run in a container — ibek 1.10.2.dev70+g95d3c03 documentation + Run in a container — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/user/index.html b/enums/user/index.html index 2e49ef025..d7d2978c9 100644 --- a/enums/user/index.html +++ b/enums/user/index.html @@ -9,7 +9,7 @@ - User Guide — ibek 1.10.2.dev70+g95d3c03 documentation + User Guide — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/user/reference/api.html b/enums/user/reference/api.html index 0d18eb39f..b93459697 100644 --- a/enums/user/reference/api.html +++ b/enums/user/reference/api.html @@ -9,7 +9,7 @@ - API — ibek 1.10.2.dev70+g95d3c03 documentation + API — ibek 1.10.2.dev71+g69da8ff documentation @@ -529,7 +529,7 @@

ibek
-class ibek.support.EnumArg(*, type: Literal['enum'] = 'enum', name: str, description: str, default: Any | None = None, values: Dict[str, Any] | None = None)[source]#
+class ibek.support.EnumArg(*, type: Literal['enum'] = 'enum', name: str, description: str, default: Any | None = None, values: Dict[str, Any] = None)[source]#

An argument with an enum value

diff --git a/enums/user/reference/naming.html b/enums/user/reference/naming.html index 9b11210a4..2d4acf520 100644 --- a/enums/user/reference/naming.html +++ b/enums/user/reference/naming.html @@ -9,7 +9,7 @@ - Support YAML Conventions — ibek 1.10.2.dev70+g95d3c03 documentation + Support YAML Conventions — ibek 1.10.2.dev71+g69da8ff documentation diff --git a/enums/user/tutorials/installation.html b/enums/user/tutorials/installation.html index c8acddd20..c1d1d9ddf 100644 --- a/enums/user/tutorials/installation.html +++ b/enums/user/tutorials/installation.html @@ -9,7 +9,7 @@ - Installation — ibek 1.10.2.dev70+g95d3c03 documentation + Installation — ibek 1.10.2.dev71+g69da8ff documentation