diff --git a/enums/.buildinfo b/enums/.buildinfo index ab95d8d82..512b12491 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: ce3d912cccc8925edc33f523731215c3 +config: 94567c256091601775efd054449fbfbc tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/enums/.doctrees/developer/explanations/entities.doctree b/enums/.doctrees/developer/explanations/entities.doctree index 176fec1d8..900ed6e65 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 945be1e72..5c5da4e7a 100644 Binary files a/enums/.doctrees/environment.pickle and b/enums/.doctrees/environment.pickle differ diff --git a/enums/_modules/ibek/globals.html b/enums/_modules/ibek/globals.html index 577721c1f..44473684d 100644 --- a/enums/_modules/ibek/globals.html +++ b/enums/_modules/ibek/globals.html @@ -8,7 +8,7 @@ - ibek.globals — ibek 1.10.2.dev69+g85ba8d6 documentation + ibek.globals — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/_modules/ibek/ioc.html b/enums/_modules/ibek/ioc.html index 7d60d3712..029007daa 100644 --- a/enums/_modules/ibek/ioc.html +++ b/enums/_modules/ibek/ioc.html @@ -8,7 +8,7 @@ - ibek.ioc — ibek 1.10.2.dev69+g85ba8d6 documentation + ibek.ioc — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/_modules/ibek/render.html b/enums/_modules/ibek/render.html index b8046fabd..93758a462 100644 --- a/enums/_modules/ibek/render.html +++ b/enums/_modules/ibek/render.html @@ -8,7 +8,7 @@ - ibek.render — ibek 1.10.2.dev69+g85ba8d6 documentation + ibek.render — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/_modules/ibek/support.html b/enums/_modules/ibek/support.html index 45aba8e9a..a449e95b0 100644 --- a/enums/_modules/ibek/support.html +++ b/enums/_modules/ibek/support.html @@ -8,7 +8,7 @@ - ibek.support — ibek 1.10.2.dev69+g85ba8d6 documentation + ibek.support — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/_modules/ibek/utils.html b/enums/_modules/ibek/utils.html index 1d495845e..8e9eef387 100644 --- a/enums/_modules/ibek/utils.html +++ b/enums/_modules/ibek/utils.html @@ -8,7 +8,7 @@ - ibek.utils — ibek 1.10.2.dev69+g85ba8d6 documentation + ibek.utils — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/_modules/index.html b/enums/_modules/index.html index fc7c693f6..08c7c7a64 100644 --- a/enums/_modules/index.html +++ b/enums/_modules/index.html @@ -8,7 +8,7 @@ - Overview: module code — ibek 1.10.2.dev69+g85ba8d6 documentation + Overview: module code — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/_static/documentation_options.js b/enums/_static/documentation_options.js index d700a5ba8..0834061e5 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.dev69+g85ba8d6', + VERSION: '1.10.2.dev70+g95d3c03', LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/enums/developer/explanations/decisions.html b/enums/developer/explanations/decisions.html index 5bff227b0..5c7b7196f 100644 --- a/enums/developer/explanations/decisions.html +++ b/enums/developer/explanations/decisions.html @@ -9,7 +9,7 @@ - Architectural Decision Records — ibek 1.10.2.dev69+g85ba8d6 documentation + Architectural Decision Records — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/explanations/decisions/0001-record-architecture-decisions.html b/enums/developer/explanations/decisions/0001-record-architecture-decisions.html index 2b8dd722b..7eea33a89 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.dev69+g85ba8d6 documentation + 1. Record architecture decisions — ibek 1.10.2.dev70+g95d3c03 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 245d5de8e..97ef40664 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.dev69+g85ba8d6 documentation + 2. Adopt python3-pip-skeleton for project structure — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/explanations/entities.html b/enums/developer/explanations/entities.html index 06311252d..619d3e5ce 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.dev69+g85ba8d6 documentation + Modules, Definitions and Entities — ibek 1.10.2.dev70+g95d3c03 documentation @@ -673,6 +673,7 @@

Entitymy_object: Ref1 my_int_enum: full_speed my_inferred_enum: third + clock_rate: dummy - type: module.AllObject name: Another Consumer @@ -709,7 +710,7 @@

Entity# testPreInit identifier TestValue testPreInit A Consumer test_value: The value of my_inferred_enum is third -The value of clock_rate is None +The value of clock_rate is dummy testPreInit Another Consumer test_value: The value of my_inferred_enum is hello The value of clock_rate is 1 @@ -1427,7 +1428,8 @@

Schemas"1Hz", "2Hz", "5Hz", - "10Hz" + "10Hz", + "dummy" ], "title": "clock_rate", "type": "string" diff --git a/enums/developer/how-to/build-docs.html b/enums/developer/how-to/build-docs.html index a3dbbdd4f..f32a572e5 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.dev69+g85ba8d6 documentation + Build the docs using sphinx — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/how-to/contribute.html b/enums/developer/how-to/contribute.html index d002810e6..7eb66ad86 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.dev69+g85ba8d6 documentation + Contributing to the project — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/how-to/lint.html b/enums/developer/how-to/lint.html index ed4a80f61..d41ea7a9a 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.dev69+g85ba8d6 documentation + Run linting using pre-commit — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/how-to/make-release.html b/enums/developer/how-to/make-release.html index e44172b0e..c5877de22 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.dev69+g85ba8d6 documentation + Make a release — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/how-to/pin-requirements.html b/enums/developer/how-to/pin-requirements.html index 6100a6def..fb1af224d 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.dev69+g85ba8d6 documentation + Pinning Requirements — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/how-to/run-tests.html b/enums/developer/how-to/run-tests.html index 45c6738db..e725d934d 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.dev69+g85ba8d6 documentation + Run the tests using pytest — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/how-to/static-analysis.html b/enums/developer/how-to/static-analysis.html index 8d1ed5ea1..173c680f8 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.dev69+g85ba8d6 documentation + Run static analysis using mypy — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/how-to/test-container.html b/enums/developer/how-to/test-container.html index 3c970f9d2..60a913b9f 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.dev69+g85ba8d6 documentation + Container Local Build and Test — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/how-to/update-tools.html b/enums/developer/how-to/update-tools.html index a3f5dc437..c613819e8 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.dev69+g85ba8d6 documentation + Update the tools — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/index.html b/enums/developer/index.html index 15d168279..bad70b9a6 100644 --- a/enums/developer/index.html +++ b/enums/developer/index.html @@ -9,7 +9,7 @@ - Developer Guide — ibek 1.10.2.dev69+g85ba8d6 documentation + Developer Guide — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/reference/standards.html b/enums/developer/reference/standards.html index e92621761..0981394f5 100644 --- a/enums/developer/reference/standards.html +++ b/enums/developer/reference/standards.html @@ -9,7 +9,7 @@ - Standards — ibek 1.10.2.dev69+g85ba8d6 documentation + Standards — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/developer/tutorials/dev-install.html b/enums/developer/tutorials/dev-install.html index 82103f057..46b962161 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.dev69+g85ba8d6 documentation + Developer install — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/genindex.html b/enums/genindex.html index 5cd30229f..7fa7909cc 100644 --- a/enums/genindex.html +++ b/enums/genindex.html @@ -8,7 +8,7 @@ - Index — ibek 1.10.2.dev69+g85ba8d6 documentation + Index — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/index.html b/enums/index.html index dd5f84aa8..b8cd4a0b0 100644 --- a/enums/index.html +++ b/enums/index.html @@ -9,7 +9,7 @@ - ibek — ibek 1.10.2.dev69+g85ba8d6 documentation + ibek — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/py-modindex.html b/enums/py-modindex.html index 923f0f22e..d373ef1bd 100644 --- a/enums/py-modindex.html +++ b/enums/py-modindex.html @@ -8,7 +8,7 @@ - Python Module Index — ibek 1.10.2.dev69+g85ba8d6 documentation + Python Module Index — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/search.html b/enums/search.html index 139ef9180..12c413ef5 100644 --- a/enums/search.html +++ b/enums/search.html @@ -7,7 +7,7 @@ - Search - ibek 1.10.2.dev69+g85ba8d6 documentation + Search - ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/searchindex.js b/enums/searchindex.js index 87a3cac48..63d27cb6b 100644 --- a/enums/searchindex.js +++ b/enums/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["developer/explanations/decisions", "developer/explanations/decisions/0001-record-architecture-decisions", "developer/explanations/decisions/0002-switched-to-pip-skeleton", "developer/explanations/entities", "developer/how-to/build-docs", "developer/how-to/contribute", "developer/how-to/lint", "developer/how-to/make-release", "developer/how-to/pin-requirements", "developer/how-to/run-tests", "developer/how-to/static-analysis", "developer/how-to/test-container", "developer/how-to/update-tools", "developer/index", "developer/reference/standards", "developer/tutorials/dev-install", "genindex", "index", "user/explanations/docs-structure", "user/how-to/edit-yaml", "user/how-to/run-container", "user/index", "user/reference/api", "user/reference/naming", "user/tutorials/installation"], "filenames": ["developer/explanations/decisions.rst", "developer/explanations/decisions/0001-record-architecture-decisions.rst", "developer/explanations/decisions/0002-switched-to-pip-skeleton.rst", "developer/explanations/entities.rst", "developer/how-to/build-docs.rst", "developer/how-to/contribute.rst", "developer/how-to/lint.rst", "developer/how-to/make-release.rst", "developer/how-to/pin-requirements.rst", "developer/how-to/run-tests.rst", "developer/how-to/static-analysis.rst", "developer/how-to/test-container.rst", "developer/how-to/update-tools.rst", "developer/index.rst", "developer/reference/standards.rst", "developer/tutorials/dev-install.rst", "genindex.rst", "index.rst", "user/explanations/docs-structure.rst", "user/how-to/edit-yaml.rst", "user/how-to/run-container.rst", "user/index.rst", "user/reference/api.rst", "user/reference/naming.rst", "user/tutorials/installation.rst"], "titles": ["Architectural Decision Records", "1. Record architecture decisions", "2. Adopt python3-pip-skeleton for project structure", "Modules, Definitions and Entities", "Build the docs using sphinx", "Contributing to the project", "Run linting using pre-commit", "Make a release", "Pinning Requirements", "Run the tests using pytest", "Run static analysis using mypy", "Container Local Build and Test", "Update the tools", "Developer Guide", "Standards", "Developer install", "API Index", "ibek", "About the documentation", "YAML schema", "Run in a container", "User Guide", "API", "Support YAML Conventions", "Installation"], "terms": {"we": [0, 1, 2, 5, 8, 22, 23], "major": 0, "adr": [0, 1], "describ": [0, 1, 3, 17], "michael": [0, 1], "nygard": [0, 1], "below": [0, 3], "i": [0, 3, 5, 6, 8, 9, 10, 11, 12, 13, 14, 18, 19, 21, 22, 23, 24], "list": [0, 3, 8, 17, 22], "our": [0, 22], "current": [0, 3, 12, 22, 24], "1": [0, 3, 14, 22], "2": [0, 3, 14, 17], "adopt": 0, "python3": [0, 8, 12, 15, 17, 24], "pip": [0, 8, 12, 15, 17, 24], "skeleton": [0, 8, 12, 17], "project": [0, 1, 3, 4, 8, 9, 11, 12, 13, 17], "structur": [0, 3, 12], "date": [1, 2], "2022": [1, 2], "02": [1, 2, 3], "18": [1, 2], "accept": [1, 2], "need": [1, 3, 8, 18, 24], "made": [1, 8, 22], "thi": [1, 2, 3, 4, 6, 7, 8, 11, 12, 14, 15, 17, 18, 19, 22, 23, 24], "us": [1, 2, 3, 8, 13, 14, 15, 17, 19, 20, 22, 23, 24], "see": [1, 3, 4, 7, 17], "": [1, 22], "articl": 1, "link": [1, 13, 21, 23], "abov": [1, 3, 6, 23], "To": [1, 7, 8, 11, 12, 15, 20, 24], "creat": [1, 3, 7, 8, 17, 19, 22, 23], "new": [1, 5, 7, 15, 21, 22, 23], "copi": [1, 8], "past": 1, "from": [1, 2, 3, 4, 6, 13, 14, 20, 21, 22, 23, 24], "exist": [1, 5, 22, 24], "ones": 1, "should": [2, 3, 5, 8, 17, 22, 23, 24], "follow": [2, 3, 5, 7, 11, 14, 15, 17, 23], "The": [2, 3, 4, 5, 6, 8, 11, 14, 17, 18, 22, 23, 24], "ensur": 2, "consist": [2, 22], "develop": [2, 3, 11, 17], "environ": [2, 3, 5, 8, 15, 22], "packag": [2, 8, 15], "manag": 2, "have": [2, 3, 5, 6, 8, 11, 15, 22, 23], "switch": 2, "modul": [2, 12, 13, 17], "fix": [2, 8, 11], "set": [2, 3, 5, 6, 8, 14, 22], "tool": [2, 13, 14], "can": [2, 3, 4, 5, 6, 8, 9, 10, 11, 15, 17, 22, 23, 24], "pull": [2, 4, 5, 12, 20, 24], "updat": [2, 8, 13, 17], "latest": [2, 8, 12], "techniqu": [2, 12], "As": [2, 14], "mai": [2, 3, 8, 22], "chang": [2, 4, 5, 6, 8, 12, 17, 23], "could": 2, "differ": [2, 3, 8, 18], "lint": [2, 13, 14, 15], "format": [2, 14], "venv": [2, 15, 24], "setup": [2, 12, 15], "ci": [2, 11], "cd": [2, 3, 11, 15], "page": [3, 4, 7, 8, 14], "top": 3, "down": 3, "explan": [3, 18], "kei": [3, 22], "term": 3, "referenc": 3, "exampl": [3, 8, 11, 14], "ioc": [3, 17, 23], "instanc": [3, 17, 22, 23], "bl45p": 3, "mo": 3, "system": 3, "test": [3, 5, 8, 13], "reli": 3, "an": [3, 4, 6, 8, 12, 17, 22], "understand": [3, 18], "between": [3, 12, 22], "gener": [3, 7, 12, 17, 22], "everi": [3, 6, 8, 22, 23], "imag": [3, 17], "includ": [3, 4, 19, 21], "number": [3, 5, 7, 8, 20, 22], "epic": [3, 15, 17, 20, 22, 24], "support": [3, 17, 21], "contain": [3, 5, 8, 13, 14, 15, 17, 21, 22], "pmac": [3, 23], "motor": 3, "plu": 3, "common": 3, "each": [3, 6, 8, 22], "mount": 3, "therefor": 3, "abl": 3, "make": [3, 4, 5, 13, 23], "librari": [3, 5, 8, 21], "db": [3, 22], "templat": [3, 17, 22, 23], "ani": [3, 4, 5, 6, 8, 11, 12, 22, 24], "those": [3, 6], "goal": 3, "allow": [3, 22], "defin": [3, 8, 14, 17, 22, 23], "function": [3, 9, 14, 18, 22], "its": [3, 20, 22, 23, 24], "determin": 3, "what": [3, 5, 17, 22, 23], "featur": [3, 23, 24], "instanti": [3, 22, 23], "henc": 3, "collect": 3, "insid": [3, 22], "In": [3, 8, 11, 17], "code": [3, 4, 6, 15, 17, 19], "class": [3, 22, 23], "genericioc": 3, "repres": [3, 18, 22, 23], "ha": [3, 7, 8, 12, 22, 23, 24], "own": [3, 19], "yaml": [3, 17, 21, 22], "whose": 3, "name": [3, 22, 23], "convent": [3, 14, 21], "support_modul": 3, "These": [3, 15, 23], "all": [3, 5, 6, 8, 11, 22, 23], "resid": 3, "folder": [3, 23], "call": [3, 11, 17, 18, 22, 23], "which": [3, 4, 11, 12, 15, 22], "For": [3, 8, 14], "declar": [3, 23], "limit": 3, "3": [3, 8, 14, 15, 24], "full": [3, 8], "implement": 3, "would": [3, 11, 17, 23], "more": [3, 8, 12, 15, 17, 18, 21, 22], "geobrick": 3, "dlspmacasynipport": 3, "dlspmacasynmotor": 3, "provid": [3, 8, 12, 22], "argument": [3, 17, 22, 23], "suppli": [3, 7, 22], "when": [3, 5, 8, 15, 17, 22], "boot": [3, 22], "script": [3, 17, 22, 23], "entri": [3, 22], "add": [3, 17, 22, 23], "form": 3, "jinja": [3, 22], "refer": [3, 18, 22, 23], "databas": [3, 17, 22, 23], "macro": [3, 23], "valu": [3, 14, 17, 22], "expand": 3, "object": [3, 17, 22], "languag": 3, "server": 3, "json": [3, 6, 17, 19], "demonstr": 3, "object_modul": 3, "def": [3, 14, 22, 23], "refobject": 3, "descript": [3, 14, 22], "consum": [3, 8], "arg": [3, 14, 22], "type": [3, 10, 14, 15, 22, 23, 24], "id": [3, 22], "port": 3, "str": [3, 14, 22], "ip": [3, 23], "address": 3, "default": [3, 22], "127": 3, "0": [3, 22], "test_valu": 3, "render": 3, "env_var": [3, 22], "ref_object_nam": 3, "pre_init": [3, 22], "testvalu": 3, "A": [3, 22], "consumertwo": 3, "anoth": [3, 22], "exampletestfunct": 3, "asynportip": 3, "e": [3, 4, 6, 8, 9, 10, 15, 17, 22, 23], "same": [3, 5, 7, 8, 23], "ioc_nam": [3, 22], "requir": [3, 11, 13, 15, 17, 18, 22, 23, 24], "piec": 3, "configur": [3, 22], "through": [3, 5, 15], "startup": [3, 17, 22, 23], "given": [3, 22], "ar": [3, 4, 5, 8, 14, 17, 18, 20, 23], "caus": 3, "line": [3, 11, 14, 22], "also": [3, 4, 5, 6, 9, 13, 21, 22, 23, 24], "dbloadrecord": [3, 22], "motion": 3, "one": [3, 5, 8, 18, 22, 23], "connect": 3, "control": 3, "via": [3, 11], "pmacasynipconfigur": 3, "itself": 3, "pmaccreatecontrol": 3, "pmaccreateax": 3, "pmaccontrol": 3, "pmacstatu": 3, "two": 3, "singl": [3, 22], "dls_pmac_asyn_motor": 3, "shown": 3, "along": 3, "st": [3, 17], "cmd": [3, 17], "click": [3, 7, 8, 15], "arrow": 3, "reveal": 3, "multipl": [3, 8, 12], "basic": 3, "generic_ioc_imag": [3, 22], "ghcr": [3, 20, 24], "io": [3, 17, 20, 24], "23": 3, "ref1": 3, "allobject": 3, "my_object": 3, "my_int_enum": 3, "full_spe": 3, "my_inferred_enum": 3, "third": 3, "all_ahead": 3, "first": [3, 15], "clock_rat": 3, "2hz": 3, "disabl": 3, "entity_en": [3, 22], "fals": [3, 12], "http": [3, 4, 7, 12, 17, 19, 24], "github": [3, 5, 7, 12, 15, 17, 20, 24], "com": [3, 12, 15, 24], "repo": [3, 6, 8, 23], "epicsenvset": 3, "dbloaddatabas": 3, "dbd": 3, "ioc_registerrecorddevicedriv": 3, "pdbbase": 3, "testpreinit": 3, "identifi": 3, "none": [3, 22], "hello": 3, "tmp": 3, "iocinit": [3, 22], "testpostinit": 3, "constrain": 3, "avail": [3, 8, 11, 20], "assist": 3, "note": [3, 7, 21], "author": 3, "access": [3, 13, 21], "order": [3, 14, 18, 23], "correctli": 3, "craft": 3, "correct": [3, 8, 22], "reason": [3, 8], "publish": [3, 7, 8], "artifact": 3, "releas": [3, 8, 13, 17, 20, 21, 24], "other": [3, 11, 22, 23], "oper": 3, "happen": 3, "within": 3, "dure": 3, "thu": 3, "num": 3, "global": 3, "part": 3, "4": 3, "combin": [3, 22], "5": 3, "boolarg": [3, 22], "additionalproperti": 3, "bool": [3, 14, 22], "properti": [3, 23], "const": 3, "titl": [3, 7, 14], "pass": [3, 8, 11, 22], "string": [3, 22], "anyof": 3, "boolean": 3, "null": 3, "comment": [3, 22], "snippet": [3, 17, 22], "prepend": [3, 22], "nfor": 3, "insert": [3, 22], "allof": 3, "ref": 3, "One": 3, "last": 3, "load": [3, 22], "filenam": 3, "module_root": 3, "dictionari": 3, "equival": 3, "here": [3, 8, 21], "item": [3, 17], "floatarg": [3, 22], "strarg": [3, 22], "intarg": [3, 22], "objectarg": [3, 22], "idarg": [3, 22], "enumarg": [3, 22], "arrai": 3, "befor": [3, 5], "text": [3, 22], "pre": [3, 13, 14, 15, 20], "init": [3, 22], "post_init": [3, 22], "post": [3, 22], "dbpf": 3, "variabl": [3, 22], "environmentvari": [3, 22], "env": 3, "var": 3, "enum": [3, 17, 22], "float": [3, 22], "header": [3, 22, 23], "appear": 3, "explicit": [3, 22], "int": [3, 14, 22], "integ": 3, "raw": 3, "calcul": [3, 22], "expos": 3, "content": 3, "n": 3, "nprovid": 3, "deseri": [3, 22], "point": [3, 22], "normal": 3, "entitymodel": 3, "discrimin": 3, "map": 3, "module_allobject": 3, "object_module_consum": 3, "object_module_consumertwo": 3, "object_module_refobject": 3, "propertynam": 3, "oneof": 3, "1hz": 3, "5hz": 3, "10hz": 3, "true": [3, 14, 22], "enabl": [3, 6, 19], "enumer": [3, 22], "my_mixed_enum": 3, "mix": 3, "infer": 3, "vme": 3, "clock": 3, "rate": 3, "nthi": 3, "illeg": 3, "python": [3, 7, 8, 12, 15, 23], "my_str": 3, "my": 3, "my_int": 3, "my_float": 3, "my_bool": 3, "second": 3, "ramming_spe": 3, "stop": [3, 22], "doe": [3, 5, 22], "registri": [3, 20, 24], "url": 3, "newioc": 3, "result": [3, 6], "overal": 3, "jsonpmac": 3, "yamlasyn": 3, "yamlcontain": 3, "jsonioc": 3, "progress": 3, "hand": 3, "held": 3, "run": [3, 4, 5, 11, 12, 13, 14, 15, 17, 21], "build": [3, 8, 13, 14, 17], "time": [3, 5, 6, 8, 22], "design": [3, 8], "you": [4, 5, 6, 7, 8, 9, 10, 11, 15, 17, 23, 24], "base": [4, 17, 22], "directori": [4, 14, 17], "tox": [4, 6, 9, 10, 11, 15], "static": [4, 13, 14, 15], "api": [4, 14, 21], "docstr": [4, 14], "document": [4, 5, 13, 15, 21], "standard": [4, 5, 13], "built": [4, 20], "html": 4, "open": [4, 5, 15], "local": [4, 13, 15], "web": 4, "browser": 4, "firefox": 4, "index": [4, 21], "process": [4, 14], "watch": 4, "your": [4, 5, 6, 8, 11, 19], "rebuild": 4, "whenev": 4, "reload": 4, "view": 4, "localhost": 4, "8000": 4, "If": [4, 5, 6, 11, 24], "sourc": [4, 10, 15, 17, 22, 24], "too": 4, "tell": [4, 6], "src": 4, "most": [5, 18], "welcom": 5, "request": [5, 12], "handl": [5, 6], "pleas": [5, 7, 14], "check": [5, 6, 9, 10, 11, 12, 14, 15, 23], "file": [5, 6, 10, 17, 19, 22, 23], "great": 5, "idea": [5, 8], "involv": 5, "big": 5, "ticket": 5, "want": 5, "sure": 5, "don": 5, "t": [5, 11, 18], "spend": 5, "someth": [5, 12, 17], "might": 5, "fit": 5, "scope": 5, "offer": 5, "place": [5, 8], "ask": 5, "question": 5, "share": 5, "end": 5, "obviou": 5, "close": [5, 12], "rais": 5, "instead": [5, 11, 20], "while": 5, "100": 5, "bug": 5, "free": 5, "significantli": 5, "reduc": 5, "easili": 5, "caught": 5, "remain": 5, "improv": [5, 18], "inform": [5, 18], "up": [5, 13, 17], "black": [6, 14], "flake8": [6, 14], "isort": [6, 14], "under": [6, 15], "command": [6, 11], "Or": 6, "instal": [6, 8, 11, 13, 17, 20, 21], "hook": 6, "do": [6, 8, 10, 11, 17], "git": [6, 12, 15, 23, 24], "just": 6, "It": [6, 8, 9, 10, 22, 24], "possibl": [6, 8, 17], "automat": 6, "clone": 6, "repositori": [6, 8, 14, 23], "being": 6, "user": [6, 17], "now": [6, 15, 24], "report": [6, 9], "reformat": 6, "likewis": 6, "get": [6, 7, 8, 13, 15, 20, 22], "manual": 6, "formatt": 6, "well": 6, "save": [6, 17], "highlight": [6, 10], "editor": 6, "window": 6, "checklist": 7, "choos": [7, 15], "pep440": 7, "compliant": 7, "pep": 7, "org": 7, "0440": 7, "go": [7, 8], "draft": 7, "tag": 7, "chose": 7, "review": 7, "edit": [7, 19], "push": [7, 8], "main": [7, 20, 24], "branch": 7, "effect": 7, "except": 7, "option": 7, "By": 8, "onli": [8, 22, 23], "tabl": 8, "pyproject": 8, "toml": 8, "version": [8, 12, 20, 22], "some": 8, "best": [8, 11], "leav": 8, "minimum": 8, "so": [8, 15, 17, 24], "widest": 8, "rang": 8, "applic": [8, 11], "compat": 8, "after": 8, "approach": [8, 17, 18], "mean": [8, 12, 23], "futur": 8, "break": [8, 23], "becaus": [8, 11, 22, 23], "wai": [8, 21], "issu": [8, 10], "work": [8, 17, 21], "out": [8, 23], "resolv": 8, "problem": [8, 11], "howev": [8, 23], "quit": 8, "hard": 8, "simpli": 8, "try": 8, "minor": 8, "mechan": 8, "previou": 8, "success": 8, "quick": 8, "guarante": 8, "asset": 8, "take": [8, 15, 17], "look": [8, 9], "cli": [8, 11], "diamondlightsourc": [8, 12], "There": [8, 18, 23], "txt": 8, "show": 8, "virtual": 8, "freez": 8, "sub": 8, "download": 8, "them": [8, 9, 10, 17], "ran": 8, "lowest": 8, "like": [8, 9], "matrix": 8, "ubuntu": 8, "8": [8, 15, 24], "lockfil": 8, "root": [8, 11, 23], "renam": 8, "commit": [8, 13, 14, 15], "exactli": 8, "onc": [8, 22], "been": [8, 22, 24], "good": [8, 18], "back": [8, 17], "unlock": 8, "earli": 8, "indic": [8, 12], "incom": 8, "restor": 8, "done": [9, 10, 17, 22], "find": 9, "error": 9, "coverag": 9, "commandlin": [9, 24], "cov": 9, "xml": 9, "definit": [10, 13, 22], "without": 10, "potenti": 10, "where": [10, 12, 17, 22, 23], "match": 10, "runtim": 11, "p": [11, 15], "verifi": 11, "docker": [11, 20, 24], "fail": 11, "podman": [11, 15], "workstat": 11, "interchang": 11, "depend": [11, 20, 24], "help": [11, 18, 19], "paramet": 11, "merg": 12, "keep": 12, "sync": 12, "rebas": 12, "conflict": 12, "area": 12, "detail": [12, 17], "split": [13, 17, 21, 23], "four": [13, 18, 21], "categori": [13, 21], "side": [13, 21], "bar": [13, 21], "contribut": [13, 17], "doc": [13, 14, 15], "sphinx": [13, 14, 15], "pytest": [13, 15], "analysi": [13, 14, 15], "mypi": [13, 14, 15], "pin": 13, "practic": [13, 21], "step": [13, 15, 21], "dai": 13, "dev": [13, 15, 19], "task": 13, "architectur": 13, "decis": 13, "record": 13, "entiti": [13, 17, 22, 23], "why": [13, 21], "technic": [13, 18, 21], "materi": [13, 21], "conform": 14, "style": 14, "import": 14, "how": [14, 18, 19], "guid": [14, 17, 18], "napoleon": 14, "extens": 14, "googl": 14, "consid": 14, "hint": 14, "signatur": 14, "func": 14, "arg1": 14, "arg2": 14, "summari": [14, 23], "extend": 14, "return": [14, 22], "extract": 14, "underlin": 14, "headl": 14, "head": 14, "instruct": 15, "minim": 15, "ibek": [15, 20, 23, 24], "either": 15, "host": 15, "machin": 15, "later": [15, 24], "vscode": [15, 19], "virtualenv": 15, "m": [15, 24], "bin": [15, 24], "activ": [15, 24], "devcontain": 15, "reopen": 15, "prompt": 15, "termin": [15, 24], "complex": 15, "case": [15, 23], "integr": 15, "graph": 15, "tree": 15, "pipdeptre": 15, "parallel": 15, "builder": [17, 23], "kubernet": 17, "thei": [17, 18, 23], "togeth": 17, "schema": [17, 21], "write": [17, 18], "against": 17, "pypi": 17, "complet": [17, 19], "still": 17, "diagram": 17, "draw": 17, "svg": 17, "emb": 17, "abil": [17, 22], "embed": 17, "g": [17, 22, 23], "asynip": 17, "asynseri": 17, "both": 17, "asynport": 17, "similar": 17, "origin": [17, 23], "py": [17, 23], "inlin": 17, "helm": 17, "config": 17, "start": [17, 21, 22, 23], "sh": 17, "section": 17, "grand": 18, "unifi": 18, "theori": 18, "david": 18, "la": 18, "secret": 18, "understood": 18, "softwar": [18, 24], "isn": 18, "thing": 18, "tutori": 18, "purpos": 18, "creation": 18, "implic": 18, "often": 18, "immens": 18, "topic": 18, "discuss": 19, "valid": [19, 22], "brpaz": 19, "auto": 19, "v": 19, "k1i": 19, "alreadi": [20, 22], "typic": [21, 23], "usag": 21, "experienc": 21, "about": 21, "intern": [22, 23], "__version__": 22, "pypa": 22, "setuptools_scm": 22, "few": 22, "baseset": 22, "pydant": 22, "model": 22, "render_with_util": 22, "context": 22, "dict": 22, "template_text": 22, "__utils__": 22, "module_nam": 22, "liter": 22, "sequenc": 22, "iocinst": 22, "deriv": 22, "enumv": 22, "print": 22, "baseclass": 22, "classmethod": 22, "add_ibek_attribut": 22, "whole": 22, "make_entity_model": 22, "subclass": 22, "make_ioc_model": 22, "entity_model": 22, "attribut": 22, "clear_entity_model_id": 22, "reset": 22, "id_to_ent": 22, "blank": 22, "popul": 22, "jinja2": 22, "substitut": 22, "render_text": 22, "suffix": 22, "next": 22, "honour": 22, "flag": 22, "per": [22, 23], "__post_init__": 22, "though": 22, "again": 22, "track": 22, "than": 22, "element": 22, "render_funct": 22, "render_pre_ioc_init": 22, "render_post_ioc_init": 22, "render_databas": 22, "render_environment_vari": 22, "render_el": 22, "method": 22, "callabl": 22, "render_pre_ioc_init_el": 22, "render_post_ioc_init_el": 22, "render_database_el": 22, "render_environment_variable_el": 22, "u": 22, "simpl": 22, "function_nam": 22, "maintain": [22, 23], "state": 22, "counter": 22, "uniqu": 22, "ad": 22, "set_var": 22, "get_var": 22, "65535": 22, "inc": 22, "increment": 22, "yet": 22, "apischema": 22, "undefinedtyp": 22, "sentinel": 22, "detect": 22, "todo": 23, "linter": 23, "dl": 23, "adher": 23, "alwai": 23, "supportmodul": 23, "store": 23, "locat": 23, "adcor": 23, "aravisgig": 23, "prefix": 23, "legal": 23, "adjust": 23, "usual": 23, "replac": 23, "_": 23, "field": 23, "uppercamelcas": 23, "snake_cas": 23, "include_arg": 23, "addit": 23, "caveat": 23, "histor": 23, "adhoc": 23, "must": 23, "iocshel": 23, "pscaddipmodul": 23, "carrierid": 23, "carrier": 23, "ipsitenumb": 23, "ip_site_numb": 23, "vector": 23, "interrupt_vector": 23, "recommend": 24, "interfer": 24, "path": 24, "interfac": 24}, "objects": {"ibek": [[22, 0, 1, "", "__version__"], [22, 1, 0, "-", "globals"], [22, 1, 0, "-", "ioc"], [22, 1, 0, "-", "modules"], [22, 1, 0, "-", "render"], [22, 1, 0, "-", "support"], [22, 1, 0, "-", "utils"]], "ibek.globals": [[22, 2, 1, "", "BaseSettings"], [22, 3, 1, "", "render_with_utils"]], "ibek.ioc": [[22, 2, 1, "", "Entity"], [22, 2, 1, "", "EnumVal"], [22, 2, 1, "", "IOC"], [22, 3, 1, "", "clear_entity_model_ids"], [22, 3, 1, "", "make_entity_model"], [22, 3, 1, "", "make_entity_models"], [22, 3, 1, "", "make_ioc_model"]], "ibek.ioc.Entity": [[22, 4, 1, "", "add_ibek_attributes"]], "ibek.render": [[22, 2, 1, "", "Render"]], "ibek.render.Render": [[22, 4, 1, "", "render_database"], [22, 4, 1, "", "render_database_elements"], [22, 4, 1, "", "render_elements"], [22, 4, 1, "", "render_environment_variable_elements"], [22, 4, 1, "", "render_environment_variables"], [22, 4, 1, "", "render_function"], [22, 4, 1, "", "render_post_ioc_init"], [22, 4, 1, "", "render_post_ioc_init_elements"], [22, 4, 1, "", "render_pre_ioc_init"], [22, 4, 1, "", "render_pre_ioc_init_elements"], [22, 4, 1, "", "render_text"]], "ibek.support": [[22, 2, 1, "", "Arg"], [22, 2, 1, "", "BoolArg"], [22, 2, 1, "", "Comment"], [22, 2, 1, "", "Database"], [22, 2, 1, "", "Definition"], [22, 2, 1, "", "EnumArg"], [22, 2, 1, "", "EnvironmentVariable"], [22, 2, 1, "", "FloatArg"], [22, 2, 1, "", "Function"], [22, 2, 1, "", "IdArg"], [22, 2, 1, "", "IntArg"], [22, 2, 1, "", "ObjectArg"], [22, 2, 1, "", "StrArg"], [22, 2, 1, "", "Support"], [22, 2, 1, "", "Text"], [22, 2, 1, "", "Value"], [22, 2, 1, "", "When"]], "ibek.utils": [[22, 2, 1, "", "Counter"], [22, 2, 1, "", "Utils"]], "ibek.utils.Utils": [[22, 4, 1, "", "counter"], [22, 4, 1, "", "get_var"], [22, 4, 1, "", "set_var"]], "ibek.utils.apischema.types": [[22, 2, 1, "", "UndefinedType"]]}, "objtypes": {"0": "py:data", "1": "py:module", "2": "py:class", "3": "py:function", "4": "py:method"}, "objnames": {"0": ["py", "data", "Python data"], "1": ["py", "module", "Python module"], "2": ["py", "class", "Python class"], "3": ["py", "function", "Python function"], "4": ["py", "method", "Python method"]}, "titleterms": {"architectur": [0, 1], "decis": [0, 1, 2], "record": [0, 1], "1": 1, "statu": [1, 2], "context": [1, 2], "consequ": [1, 2], "2": 2, "adopt": 2, "python3": 2, "pip": 2, "skeleton": 2, "project": [2, 5], "structur": [2, 17], "modul": [3, 22, 23], "definit": [3, 23], "entiti": 3, "schema": [3, 19], "summari": 3, "ibek": [3, 17, 22], "file": [3, 8], "sequenc": 3, "command": 3, "stage": 3, "build": [4, 11, 15], "doc": 4, "us": [4, 6, 9, 10], "sphinx": 4, "autobuild": 4, "contribut": 5, "issu": [5, 6], "discuss": 5, "code": [5, 14], "coverag": 5, "develop": [5, 13, 15], "guid": [5, 13, 21], "run": [6, 9, 10, 20, 24], "lint": 6, "pre": 6, "commit": 6, "fix": 6, "vscode": 6, "support": [6, 22, 23], "make": 7, "releas": 7, "pin": 8, "requir": 8, "introduct": 8, "find": 8, "lock": 8, "appli": 8, "remov": 8, "depend": [8, 15], "from": 8, "ci": 8, "test": [9, 11, 15], "pytest": 9, "static": 10, "analysi": 10, "mypi": 10, "contain": [11, 20, 24], "local": 11, "updat": 12, "tool": 12, "tutori": [13, 21], "how": [13, 17, 21], "explan": [13, 21], "refer": [13, 21], "standard": 14, "document": [14, 17, 18], "instal": [15, 24], "clone": 15, "repositori": 15, "see": 15, "what": 15, "wa": 15, "api": [16, 22], "index": 16, "todo": 17, "i": 17, "about": 18, "yaml": [19, 23], "start": 20, "user": 21, "global": 22, "ioc": 22, "render": 22, "util": 22, "convent": 23, "filenam": 23, "arg": 23, "function": 23, "check": 24, "your": 24, "version": 24, "python": 24, "creat": 24, "virtual": 24, "environ": 24, "librari": 24}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.viewcode": 1, "sphinx": 57}, "alltitles": {"Architectural Decision Records": [[0, "architectural-decision-records"]], "1. Record architecture decisions": [[1, "record-architecture-decisions"]], "Status": [[1, "status"], [2, "status"]], "Context": [[1, "context"], [2, "context"]], "Decision": [[1, "decision"], [2, "decision"]], "Consequences": [[1, "consequences"], [2, "consequences"]], "2. Adopt python3-pip-skeleton for project structure": [[2, "adopt-python3-pip-skeleton-for-project-structure"]], "Modules, Definitions and Entities": [[3, "modules-definitions-and-entities"]], "Modules": [[3, "modules"]], "Definition": [[3, "definition"]], "Entity": [[3, "entity"]], "Schemas": [[3, "schemas"]], "Summary of ibek files sequence": [[3, "id1"]], "Commands": [[3, "commands"]], "Summary of ibek stages": [[3, "id2"]], "Build the docs using sphinx": [[4, "build-the-docs-using-sphinx"]], "Autobuild": [[4, "autobuild"]], "Contributing to the project": [[5, "contributing-to-the-project"]], "Issue or Discussion?": [[5, "issue-or-discussion"]], "Code coverage": [[5, "code-coverage"]], "Developer guide": [[5, "developer-guide"]], "Run linting using pre-commit": [[6, "run-linting-using-pre-commit"]], "Running pre-commit": [[6, "running-pre-commit"]], "Fixing issues": [[6, "fixing-issues"]], "VSCode support": [[6, "vscode-support"]], "Make a release": [[7, "make-a-release"]], "Pinning Requirements": [[8, "pinning-requirements"]], "Introduction": [[8, "introduction"]], "Finding the lock files": [[8, "finding-the-lock-files"]], "Applying the lock file": [[8, "applying-the-lock-file"]], "Removing dependency locking from CI": [[8, "removing-dependency-locking-from-ci"]], "Run the tests using pytest": [[9, "run-the-tests-using-pytest"]], "Run static analysis using mypy": [[10, "run-static-analysis-using-mypy"]], "Container Local Build and Test": [[11, "container-local-build-and-test"]], "Update the tools": [[12, "update-the-tools"]], "Developer Guide": [[13, "developer-guide"]], "Tutorials": [[13, null], [21, null]], "How-to Guides": [[13, null], [21, null]], "Explanations": [[13, null], [21, null]], "Reference": [[13, null], [21, null]], "Standards": [[14, "standards"]], "Code Standards": [[14, "code-standards"]], "Documentation Standards": [[14, "documentation-standards"]], "Developer install": [[15, "developer-install"]], "Clone the repository": [[15, "clone-the-repository"]], "Install dependencies": [[15, "install-dependencies"]], "See what was installed": [[15, "see-what-was-installed"]], "Build and test": [[15, "build-and-test"]], "API Index": [[16, "api-index"]], "ibek": [[17, "ibek"], [22, "ibek"]], "TODO": [[17, "todo"]], "How the documentation is structured": [[17, "how-the-documentation-is-structured"]], "About the documentation": [[18, "about-the-documentation"]], "YAML schema": [[19, "yaml-schema"]], "Run in a container": [[20, "run-in-a-container"]], "Starting the container": [[20, "starting-the-container"]], "User Guide": [[21, "user-guide"]], "API": [[22, "api"]], "ibek.globals": [[22, "module-ibek.globals"]], "ibek.support": [[22, "module-ibek.support"]], "ibek.ioc": [[22, "module-ibek.ioc"]], "ibek.modules": [[22, "module-ibek.modules"]], "ibek.render": [[22, "module-ibek.render"]], "ibek.utils": [[22, "module-ibek.utils"]], "Support YAML Conventions": [[23, "support-yaml-conventions"]], "Filename": [[23, "filename"]], "Module": [[23, "module"]], "Definitions": [[23, "definitions"]], "Args": [[23, "args"]], "Functions": [[23, "functions"]], "Installation": [[24, "installation"]], "Check your version of python": [[24, "check-your-version-of-python"]], "Create a virtual environment": [[24, "create-a-virtual-environment"]], "Installing the library": [[24, "installing-the-library"]], "Running in a container": [[24, "running-in-a-container"]]}, "indexentries": {"arg (class in ibek.support)": [[22, "ibek.support.Arg"]], "basesettings (class in ibek.globals)": [[22, "ibek.globals.BaseSettings"]], "boolarg (class in ibek.support)": [[22, "ibek.support.BoolArg"]], "comment (class in ibek.support)": [[22, "ibek.support.Comment"]], "counter (class in ibek.utils)": [[22, "ibek.utils.Counter"]], "database (class in ibek.support)": [[22, "ibek.support.Database"]], "definition (class in ibek.support)": [[22, "ibek.support.Definition"]], "entity (class in ibek.ioc)": [[22, "ibek.ioc.Entity"]], "enumarg (class in ibek.support)": [[22, "ibek.support.EnumArg"]], "enumval (class in ibek.ioc)": [[22, "ibek.ioc.EnumVal"]], "environmentvariable (class in ibek.support)": [[22, "ibek.support.EnvironmentVariable"]], "floatarg (class in ibek.support)": [[22, "ibek.support.FloatArg"]], "function (class in ibek.support)": [[22, "ibek.support.Function"]], "ioc (class in ibek.ioc)": [[22, "ibek.ioc.IOC"]], "idarg (class in ibek.support)": [[22, "ibek.support.IdArg"]], "intarg (class in ibek.support)": [[22, "ibek.support.IntArg"]], "objectarg (class in ibek.support)": [[22, "ibek.support.ObjectArg"]], "render (class in ibek.render)": [[22, "ibek.render.Render"]], "strarg (class in ibek.support)": [[22, "ibek.support.StrArg"]], "support (class in ibek.support)": [[22, "ibek.support.Support"]], "text (class in ibek.support)": [[22, "ibek.support.Text"]], "utils (class in ibek.utils)": [[22, "ibek.utils.Utils"]], "value (class in ibek.support)": [[22, "ibek.support.Value"]], "when (class in ibek.support)": [[22, "ibek.support.When"]], "add_ibek_attributes() (ibek.ioc.entity class method)": [[22, "ibek.ioc.Entity.add_ibek_attributes"]], "apischema.types.undefinedtype (class in ibek.utils)": [[22, "ibek.utils.apischema.types.UndefinedType"]], "clear_entity_model_ids() (in module ibek.ioc)": [[22, "ibek.ioc.clear_entity_model_ids"]], "counter() (ibek.utils.utils method)": [[22, "ibek.utils.Utils.counter"]], "get_var() (ibek.utils.utils method)": [[22, "ibek.utils.Utils.get_var"]], "ibek.__version__ (built-in variable)": [[22, "ibek.__version__"]], "ibek.globals": [[22, "module-ibek.globals"]], "ibek.ioc": [[22, "module-ibek.ioc"]], "ibek.modules": [[22, "module-ibek.modules"]], "ibek.render": [[22, "module-ibek.render"]], "ibek.support": [[22, "module-ibek.support"]], "ibek.utils": [[22, "module-ibek.utils"]], "make_entity_model() (in module ibek.ioc)": [[22, "ibek.ioc.make_entity_model"]], "make_entity_models() (in module ibek.ioc)": [[22, "ibek.ioc.make_entity_models"]], "make_ioc_model() (in module ibek.ioc)": [[22, "ibek.ioc.make_ioc_model"]], "module": [[22, "module-ibek.globals"], [22, "module-ibek.ioc"], [22, "module-ibek.modules"], [22, "module-ibek.render"], [22, "module-ibek.support"], [22, "module-ibek.utils"]], "render_database() (ibek.render.render method)": [[22, "ibek.render.Render.render_database"]], "render_database_elements() (ibek.render.render method)": [[22, "ibek.render.Render.render_database_elements"]], "render_elements() (ibek.render.render method)": [[22, "ibek.render.Render.render_elements"]], "render_environment_variable_elements() (ibek.render.render method)": [[22, "ibek.render.Render.render_environment_variable_elements"]], "render_environment_variables() (ibek.render.render method)": [[22, "ibek.render.Render.render_environment_variables"]], "render_function() (ibek.render.render method)": [[22, "ibek.render.Render.render_function"]], "render_post_ioc_init() (ibek.render.render method)": [[22, "ibek.render.Render.render_post_ioc_init"]], "render_post_ioc_init_elements() (ibek.render.render method)": [[22, "ibek.render.Render.render_post_ioc_init_elements"]], "render_pre_ioc_init() (ibek.render.render method)": [[22, "ibek.render.Render.render_pre_ioc_init"]], "render_pre_ioc_init_elements() (ibek.render.render method)": [[22, "ibek.render.Render.render_pre_ioc_init_elements"]], "render_text() (ibek.render.render method)": [[22, "ibek.render.Render.render_text"]], "render_with_utils() (in module ibek.globals)": [[22, "ibek.globals.render_with_utils"]], "set_var() (ibek.utils.utils method)": [[22, "ibek.utils.Utils.set_var"]]}}) \ No newline at end of file +Search.setIndex({"docnames": ["developer/explanations/decisions", "developer/explanations/decisions/0001-record-architecture-decisions", "developer/explanations/decisions/0002-switched-to-pip-skeleton", "developer/explanations/entities", "developer/how-to/build-docs", "developer/how-to/contribute", "developer/how-to/lint", "developer/how-to/make-release", "developer/how-to/pin-requirements", "developer/how-to/run-tests", "developer/how-to/static-analysis", "developer/how-to/test-container", "developer/how-to/update-tools", "developer/index", "developer/reference/standards", "developer/tutorials/dev-install", "genindex", "index", "user/explanations/docs-structure", "user/how-to/edit-yaml", "user/how-to/run-container", "user/index", "user/reference/api", "user/reference/naming", "user/tutorials/installation"], "filenames": ["developer/explanations/decisions.rst", "developer/explanations/decisions/0001-record-architecture-decisions.rst", "developer/explanations/decisions/0002-switched-to-pip-skeleton.rst", "developer/explanations/entities.rst", "developer/how-to/build-docs.rst", "developer/how-to/contribute.rst", "developer/how-to/lint.rst", "developer/how-to/make-release.rst", "developer/how-to/pin-requirements.rst", "developer/how-to/run-tests.rst", "developer/how-to/static-analysis.rst", "developer/how-to/test-container.rst", "developer/how-to/update-tools.rst", "developer/index.rst", "developer/reference/standards.rst", "developer/tutorials/dev-install.rst", "genindex.rst", "index.rst", "user/explanations/docs-structure.rst", "user/how-to/edit-yaml.rst", "user/how-to/run-container.rst", "user/index.rst", "user/reference/api.rst", "user/reference/naming.rst", "user/tutorials/installation.rst"], "titles": ["Architectural Decision Records", "1. Record architecture decisions", "2. Adopt python3-pip-skeleton for project structure", "Modules, Definitions and Entities", "Build the docs using sphinx", "Contributing to the project", "Run linting using pre-commit", "Make a release", "Pinning Requirements", "Run the tests using pytest", "Run static analysis using mypy", "Container Local Build and Test", "Update the tools", "Developer Guide", "Standards", "Developer install", "API Index", "ibek", "About the documentation", "YAML schema", "Run in a container", "User Guide", "API", "Support YAML Conventions", "Installation"], "terms": {"we": [0, 1, 2, 5, 8, 22, 23], "major": 0, "adr": [0, 1], "describ": [0, 1, 3, 17], "michael": [0, 1], "nygard": [0, 1], "below": [0, 3], "i": [0, 3, 5, 6, 8, 9, 10, 11, 12, 13, 14, 18, 19, 21, 22, 23, 24], "list": [0, 3, 8, 17, 22], "our": [0, 22], "current": [0, 3, 12, 22, 24], "1": [0, 3, 14, 22], "2": [0, 3, 14, 17], "adopt": 0, "python3": [0, 8, 12, 15, 17, 24], "pip": [0, 8, 12, 15, 17, 24], "skeleton": [0, 8, 12, 17], "project": [0, 1, 3, 4, 8, 9, 11, 12, 13, 17], "structur": [0, 3, 12], "date": [1, 2], "2022": [1, 2], "02": [1, 2, 3], "18": [1, 2], "accept": [1, 2], "need": [1, 3, 8, 18, 24], "made": [1, 8, 22], "thi": [1, 2, 3, 4, 6, 7, 8, 11, 12, 14, 15, 17, 18, 19, 22, 23, 24], "us": [1, 2, 3, 8, 13, 14, 15, 17, 19, 20, 22, 23, 24], "see": [1, 3, 4, 7, 17], "": [1, 22], "articl": 1, "link": [1, 13, 21, 23], "abov": [1, 3, 6, 23], "To": [1, 7, 8, 11, 12, 15, 20, 24], "creat": [1, 3, 7, 8, 17, 19, 22, 23], "new": [1, 5, 7, 15, 21, 22, 23], "copi": [1, 8], "past": 1, "from": [1, 2, 3, 4, 6, 13, 14, 20, 21, 22, 23, 24], "exist": [1, 5, 22, 24], "ones": 1, "should": [2, 3, 5, 8, 17, 22, 23, 24], "follow": [2, 3, 5, 7, 11, 14, 15, 17, 23], "The": [2, 3, 4, 5, 6, 8, 11, 14, 17, 18, 22, 23, 24], "ensur": 2, "consist": [2, 22], "develop": [2, 3, 11, 17], "environ": [2, 3, 5, 8, 15, 22], "packag": [2, 8, 15], "manag": 2, "have": [2, 3, 5, 6, 8, 11, 15, 22, 23], "switch": 2, "modul": [2, 12, 13, 17], "fix": [2, 8, 11], "set": [2, 3, 5, 6, 8, 14, 22], "tool": [2, 13, 14], "can": [2, 3, 4, 5, 6, 8, 9, 10, 11, 15, 17, 22, 23, 24], "pull": [2, 4, 5, 12, 20, 24], "updat": [2, 8, 13, 17], "latest": [2, 8, 12], "techniqu": [2, 12], "As": [2, 14], "mai": [2, 3, 8, 22], "chang": [2, 4, 5, 6, 8, 12, 17, 23], "could": 2, "differ": [2, 3, 8, 18], "lint": [2, 13, 14, 15], "format": [2, 14], "venv": [2, 15, 24], "setup": [2, 12, 15], "ci": [2, 11], "cd": [2, 3, 11, 15], "page": [3, 4, 7, 8, 14], "top": 3, "down": 3, "explan": [3, 18], "kei": [3, 22], "term": 3, "referenc": 3, "exampl": [3, 8, 11, 14], "ioc": [3, 17, 23], "instanc": [3, 17, 22, 23], "bl45p": 3, "mo": 3, "system": 3, "test": [3, 5, 8, 13], "reli": 3, "an": [3, 4, 6, 8, 12, 17, 22], "understand": [3, 18], "between": [3, 12, 22], "gener": [3, 7, 12, 17, 22], "everi": [3, 6, 8, 22, 23], "imag": [3, 17], "includ": [3, 4, 19, 21], "number": [3, 5, 7, 8, 20, 22], "epic": [3, 15, 17, 20, 22, 24], "support": [3, 17, 21], "contain": [3, 5, 8, 13, 14, 15, 17, 21, 22], "pmac": [3, 23], "motor": 3, "plu": 3, "common": 3, "each": [3, 6, 8, 22], "mount": 3, "therefor": 3, "abl": 3, "make": [3, 4, 5, 13, 23], "librari": [3, 5, 8, 21], "db": [3, 22], "templat": [3, 17, 22, 23], "ani": [3, 4, 5, 6, 8, 11, 12, 22, 24], "those": [3, 6], "goal": 3, "allow": [3, 22], "defin": [3, 8, 14, 17, 22, 23], "function": [3, 9, 14, 18, 22], "its": [3, 20, 22, 23, 24], "determin": 3, "what": [3, 5, 17, 22, 23], "featur": [3, 23, 24], "instanti": [3, 22, 23], "henc": 3, "collect": 3, "insid": [3, 22], "In": [3, 8, 11, 17], "code": [3, 4, 6, 15, 17, 19], "class": [3, 22, 23], "genericioc": 3, "repres": [3, 18, 22, 23], "ha": [3, 7, 8, 12, 22, 23, 24], "own": [3, 19], "yaml": [3, 17, 21, 22], "whose": 3, "name": [3, 22, 23], "convent": [3, 14, 21], "support_modul": 3, "These": [3, 15, 23], "all": [3, 5, 6, 8, 11, 22, 23], "resid": 3, "folder": [3, 23], "call": [3, 11, 17, 18, 22, 23], "which": [3, 4, 11, 12, 15, 22], "For": [3, 8, 14], "declar": [3, 23], "limit": 3, "3": [3, 8, 14, 15, 24], "full": [3, 8], "implement": 3, "would": [3, 11, 17, 23], "more": [3, 8, 12, 15, 17, 18, 21, 22], "geobrick": 3, "dlspmacasynipport": 3, "dlspmacasynmotor": 3, "provid": [3, 8, 12, 22], "argument": [3, 17, 22, 23], "suppli": [3, 7, 22], "when": [3, 5, 8, 15, 17, 22], "boot": [3, 22], "script": [3, 17, 22, 23], "entri": [3, 22], "add": [3, 17, 22, 23], "form": 3, "jinja": [3, 22], "refer": [3, 18, 22, 23], "databas": [3, 17, 22, 23], "macro": [3, 23], "valu": [3, 14, 17, 22], "expand": 3, "object": [3, 17, 22], "languag": 3, "server": 3, "json": [3, 6, 17, 19], "demonstr": 3, "object_modul": 3, "def": [3, 14, 22, 23], "refobject": 3, "descript": [3, 14, 22], "consum": [3, 8], "arg": [3, 14, 22], "type": [3, 10, 14, 15, 22, 23, 24], "id": [3, 22], "port": 3, "str": [3, 14, 22], "ip": [3, 23], "address": 3, "default": [3, 22], "127": 3, "0": [3, 22], "test_valu": 3, "render": 3, "env_var": [3, 22], "ref_object_nam": 3, "pre_init": [3, 22], "testvalu": 3, "A": [3, 22], "consumertwo": 3, "anoth": [3, 22], "exampletestfunct": 3, "asynportip": 3, "e": [3, 4, 6, 8, 9, 10, 15, 17, 22, 23], "same": [3, 5, 7, 8, 23], "ioc_nam": [3, 22], "requir": [3, 11, 13, 15, 17, 18, 22, 23, 24], "piec": 3, "configur": [3, 22], "through": [3, 5, 15], "startup": [3, 17, 22, 23], "given": [3, 22], "ar": [3, 4, 5, 8, 14, 17, 18, 20, 23], "caus": 3, "line": [3, 11, 14, 22], "also": [3, 4, 5, 6, 9, 13, 21, 22, 23, 24], "dbloadrecord": [3, 22], "motion": 3, "one": [3, 5, 8, 18, 22, 23], "connect": 3, "control": 3, "via": [3, 11], "pmacasynipconfigur": 3, "itself": 3, "pmaccreatecontrol": 3, "pmaccreateax": 3, "pmaccontrol": 3, "pmacstatu": 3, "two": 3, "singl": [3, 22], "dls_pmac_asyn_motor": 3, "shown": 3, "along": 3, "st": [3, 17], "cmd": [3, 17], "click": [3, 7, 8, 15], "arrow": 3, "reveal": 3, "multipl": [3, 8, 12], "basic": 3, "generic_ioc_imag": [3, 22], "ghcr": [3, 20, 24], "io": [3, 17, 20, 24], "23": 3, "ref1": 3, "allobject": 3, "my_object": 3, "my_int_enum": 3, "full_spe": 3, "my_inferred_enum": 3, "third": 3, "clock_rat": 3, "dummi": 3, "all_ahead": 3, "first": [3, 15], "2hz": 3, "disabl": 3, "entity_en": [3, 22], "fals": [3, 12], "http": [3, 4, 7, 12, 17, 19, 24], "github": [3, 5, 7, 12, 15, 17, 20, 24], "com": [3, 12, 15, 24], "repo": [3, 6, 8, 23], "epicsenvset": 3, "dbloaddatabas": 3, "dbd": 3, "ioc_registerrecorddevicedriv": 3, "pdbbase": 3, "testpreinit": 3, "identifi": 3, "hello": 3, "tmp": 3, "iocinit": [3, 22], "testpostinit": 3, "constrain": 3, "avail": [3, 8, 11, 20], "assist": 3, "note": [3, 7, 21], "author": 3, "access": [3, 13, 21], "order": [3, 14, 18, 23], "correctli": 3, "craft": 3, "correct": [3, 8, 22], "reason": [3, 8], "publish": [3, 7, 8], "artifact": 3, "releas": [3, 8, 13, 17, 20, 21, 24], "other": [3, 11, 22, 23], "oper": 3, "happen": 3, "within": 3, "dure": 3, "thu": 3, "num": 3, "global": 3, "part": 3, "4": 3, "combin": [3, 22], "5": 3, "boolarg": [3, 22], "additionalproperti": 3, "bool": [3, 14, 22], "properti": [3, 23], "const": 3, "titl": [3, 7, 14], "pass": [3, 8, 11, 22], "string": [3, 22], "anyof": 3, "boolean": 3, "null": 3, "comment": [3, 22], "snippet": [3, 17, 22], "prepend": [3, 22], "nfor": 3, "insert": [3, 22], "allof": 3, "ref": 3, "One": 3, "last": 3, "load": [3, 22], "filenam": 3, "module_root": 3, "dictionari": 3, "none": [3, 22], "equival": 3, "here": [3, 8, 21], "item": [3, 17], "floatarg": [3, 22], "strarg": [3, 22], "intarg": [3, 22], "objectarg": [3, 22], "idarg": [3, 22], "enumarg": [3, 22], "arrai": 3, "befor": [3, 5], "text": [3, 22], "pre": [3, 13, 14, 15, 20], "init": [3, 22], "post_init": [3, 22], "post": [3, 22], "dbpf": 3, "variabl": [3, 22], "environmentvari": [3, 22], "env": 3, "var": 3, "enum": [3, 17, 22], "float": [3, 22], "header": [3, 22, 23], "appear": 3, "explicit": [3, 22], "int": [3, 14, 22], "integ": 3, "raw": 3, "calcul": [3, 22], "expos": 3, "content": 3, "n": 3, "nprovid": 3, "deseri": [3, 22], "point": [3, 22], "normal": 3, "entitymodel": 3, "discrimin": 3, "map": 3, "module_allobject": 3, "object_module_consum": 3, "object_module_consumertwo": 3, "object_module_refobject": 3, "propertynam": 3, "oneof": 3, "1hz": 3, "5hz": 3, "10hz": 3, "true": [3, 14, 22], "enabl": [3, 6, 19], "enumer": [3, 22], "my_mixed_enum": 3, "mix": 3, "infer": 3, "vme": 3, "clock": 3, "rate": 3, "nthi": 3, "illeg": 3, "python": [3, 7, 8, 12, 15, 23], "my_str": 3, "my": 3, "my_int": 3, "my_float": 3, "my_bool": 3, "second": 3, "ramming_spe": 3, "stop": [3, 22], "doe": [3, 5, 22], "registri": [3, 20, 24], "url": 3, "newioc": 3, "result": [3, 6], "overal": 3, "jsonpmac": 3, "yamlasyn": 3, "yamlcontain": 3, "jsonioc": 3, "progress": 3, "hand": 3, "held": 3, "run": [3, 4, 5, 11, 12, 13, 14, 15, 17, 21], "build": [3, 8, 13, 14, 17], "time": [3, 5, 6, 8, 22], "design": [3, 8], "you": [4, 5, 6, 7, 8, 9, 10, 11, 15, 17, 23, 24], "base": [4, 17, 22], "directori": [4, 14, 17], "tox": [4, 6, 9, 10, 11, 15], "static": [4, 13, 14, 15], "api": [4, 14, 21], "docstr": [4, 14], "document": [4, 5, 13, 15, 21], "standard": [4, 5, 13], "built": [4, 20], "html": 4, "open": [4, 5, 15], "local": [4, 13, 15], "web": 4, "browser": 4, "firefox": 4, "index": [4, 21], "process": [4, 14], "watch": 4, "your": [4, 5, 6, 8, 11, 19], "rebuild": 4, "whenev": 4, "reload": 4, "view": 4, "localhost": 4, "8000": 4, "If": [4, 5, 6, 11, 24], "sourc": [4, 10, 15, 17, 22, 24], "too": 4, "tell": [4, 6], "src": 4, "most": [5, 18], "welcom": 5, "request": [5, 12], "handl": [5, 6], "pleas": [5, 7, 14], "check": [5, 6, 9, 10, 11, 12, 14, 15, 23], "file": [5, 6, 10, 17, 19, 22, 23], "great": 5, "idea": [5, 8], "involv": 5, "big": 5, "ticket": 5, "want": 5, "sure": 5, "don": 5, "t": [5, 11, 18], "spend": 5, "someth": [5, 12, 17], "might": 5, "fit": 5, "scope": 5, "offer": 5, "place": [5, 8], "ask": 5, "question": 5, "share": 5, "end": 5, "obviou": 5, "close": [5, 12], "rais": 5, "instead": [5, 11, 20], "while": 5, "100": 5, "bug": 5, "free": 5, "significantli": 5, "reduc": 5, "easili": 5, "caught": 5, "remain": 5, "improv": [5, 18], "inform": [5, 18], "up": [5, 13, 17], "black": [6, 14], "flake8": [6, 14], "isort": [6, 14], "under": [6, 15], "command": [6, 11], "Or": 6, "instal": [6, 8, 11, 13, 17, 20, 21], "hook": 6, "do": [6, 8, 10, 11, 17], "git": [6, 12, 15, 23, 24], "just": 6, "It": [6, 8, 9, 10, 22, 24], "possibl": [6, 8, 17], "automat": 6, "clone": 6, "repositori": [6, 8, 14, 23], "being": 6, "user": [6, 17], "now": [6, 15, 24], "report": [6, 9], "reformat": 6, "likewis": 6, "get": [6, 7, 8, 13, 15, 20, 22], "manual": 6, "formatt": 6, "well": 6, "save": [6, 17], "highlight": [6, 10], "editor": 6, "window": 6, "checklist": 7, "choos": [7, 15], "pep440": 7, "compliant": 7, "pep": 7, "org": 7, "0440": 7, "go": [7, 8], "draft": 7, "tag": 7, "chose": 7, "review": 7, "edit": [7, 19], "push": [7, 8], "main": [7, 20, 24], "branch": 7, "effect": 7, "except": 7, "option": 7, "By": 8, "onli": [8, 22, 23], "tabl": 8, "pyproject": 8, "toml": 8, "version": [8, 12, 20, 22], "some": 8, "best": [8, 11], "leav": 8, "minimum": 8, "so": [8, 15, 17, 24], "widest": 8, "rang": 8, "applic": [8, 11], "compat": 8, "after": 8, "approach": [8, 17, 18], "mean": [8, 12, 23], "futur": 8, "break": [8, 23], "becaus": [8, 11, 22, 23], "wai": [8, 21], "issu": [8, 10], "work": [8, 17, 21], "out": [8, 23], "resolv": 8, "problem": [8, 11], "howev": [8, 23], "quit": 8, "hard": 8, "simpli": 8, "try": 8, "minor": 8, "mechan": 8, "previou": 8, "success": 8, "quick": 8, "guarante": 8, "asset": 8, "take": [8, 15, 17], "look": [8, 9], "cli": [8, 11], "diamondlightsourc": [8, 12], "There": [8, 18, 23], "txt": 8, "show": 8, "virtual": 8, "freez": 8, "sub": 8, "download": 8, "them": [8, 9, 10, 17], "ran": 8, "lowest": 8, "like": [8, 9], "matrix": 8, "ubuntu": 8, "8": [8, 15, 24], "lockfil": 8, "root": [8, 11, 23], "renam": 8, "commit": [8, 13, 14, 15], "exactli": 8, "onc": [8, 22], "been": [8, 22, 24], "good": [8, 18], "back": [8, 17], "unlock": 8, "earli": 8, "indic": [8, 12], "incom": 8, "restor": 8, "done": [9, 10, 17, 22], "find": 9, "error": 9, "coverag": 9, "commandlin": [9, 24], "cov": 9, "xml": 9, "definit": [10, 13, 22], "without": 10, "potenti": 10, "where": [10, 12, 17, 22, 23], "match": 10, "runtim": 11, "p": [11, 15], "verifi": 11, "docker": [11, 20, 24], "fail": 11, "podman": [11, 15], "workstat": 11, "interchang": 11, "depend": [11, 20, 24], "help": [11, 18, 19], "paramet": 11, "merg": 12, "keep": 12, "sync": 12, "rebas": 12, "conflict": 12, "area": 12, "detail": [12, 17], "split": [13, 17, 21, 23], "four": [13, 18, 21], "categori": [13, 21], "side": [13, 21], "bar": [13, 21], "contribut": [13, 17], "doc": [13, 14, 15], "sphinx": [13, 14, 15], "pytest": [13, 15], "analysi": [13, 14, 15], "mypi": [13, 14, 15], "pin": 13, "practic": [13, 21], "step": [13, 15, 21], "dai": 13, "dev": [13, 15, 19], "task": 13, "architectur": 13, "decis": 13, "record": 13, "entiti": [13, 17, 22, 23], "why": [13, 21], "technic": [13, 18, 21], "materi": [13, 21], "conform": 14, "style": 14, "import": 14, "how": [14, 18, 19], "guid": [14, 17, 18], "napoleon": 14, "extens": 14, "googl": 14, "consid": 14, "hint": 14, "signatur": 14, "func": 14, "arg1": 14, "arg2": 14, "summari": [14, 23], "extend": 14, "return": [14, 22], "extract": 14, "underlin": 14, "headl": 14, "head": 14, "instruct": 15, "minim": 15, "ibek": [15, 20, 23, 24], "either": 15, "host": 15, "machin": 15, "later": [15, 24], "vscode": [15, 19], "virtualenv": 15, "m": [15, 24], "bin": [15, 24], "activ": [15, 24], "devcontain": 15, "reopen": 15, "prompt": 15, "termin": [15, 24], "complex": 15, "case": [15, 23], "integr": 15, "graph": 15, "tree": 15, "pipdeptre": 15, "parallel": 15, "builder": [17, 23], "kubernet": 17, "thei": [17, 18, 23], "togeth": 17, "schema": [17, 21], "write": [17, 18], "against": 17, "pypi": 17, "complet": [17, 19], "still": 17, "diagram": 17, "draw": 17, "svg": 17, "emb": 17, "abil": [17, 22], "embed": 17, "g": [17, 22, 23], "asynip": 17, "asynseri": 17, "both": 17, "asynport": 17, "similar": 17, "origin": [17, 23], "py": [17, 23], "inlin": 17, "helm": 17, "config": 17, "start": [17, 21, 22, 23], "sh": 17, "section": 17, "grand": 18, "unifi": 18, "theori": 18, "david": 18, "la": 18, "secret": 18, "understood": 18, "softwar": [18, 24], "isn": 18, "thing": 18, "tutori": 18, "purpos": 18, "creation": 18, "implic": 18, "often": 18, "immens": 18, "topic": 18, "discuss": 19, "valid": [19, 22], "brpaz": 19, "auto": 19, "v": 19, "k1i": 19, "alreadi": [20, 22], "typic": [21, 23], "usag": 21, "experienc": 21, "about": 21, "intern": [22, 23], "__version__": 22, "pypa": 22, "setuptools_scm": 22, "few": 22, "baseset": 22, "pydant": 22, "model": 22, "render_with_util": 22, "context": 22, "dict": 22, "template_text": 22, "__utils__": 22, "module_nam": 22, "liter": 22, "sequenc": 22, "iocinst": 22, "deriv": 22, "enumv": 22, "print": 22, "baseclass": 22, "classmethod": 22, "add_ibek_attribut": 22, "whole": 22, "make_entity_model": 22, "subclass": 22, "make_ioc_model": 22, "entity_model": 22, "attribut": 22, "clear_entity_model_id": 22, "reset": 22, "id_to_ent": 22, "blank": 22, "popul": 22, "jinja2": 22, "substitut": 22, "render_text": 22, "suffix": 22, "next": 22, "honour": 22, "flag": 22, "per": [22, 23], "__post_init__": 22, "though": 22, "again": 22, "track": 22, "than": 22, "element": 22, "render_funct": 22, "render_pre_ioc_init": 22, "render_post_ioc_init": 22, "render_databas": 22, "render_environment_vari": 22, "render_el": 22, "method": 22, "callabl": 22, "render_pre_ioc_init_el": 22, "render_post_ioc_init_el": 22, "render_database_el": 22, "render_environment_variable_el": 22, "u": 22, "simpl": 22, "function_nam": 22, "maintain": [22, 23], "state": 22, "counter": 22, "uniqu": 22, "ad": 22, "set_var": 22, "get_var": 22, "65535": 22, "inc": 22, "increment": 22, "yet": 22, "apischema": 22, "undefinedtyp": 22, "sentinel": 22, "detect": 22, "todo": 23, "linter": 23, "dl": 23, "adher": 23, "alwai": 23, "supportmodul": 23, "store": 23, "locat": 23, "adcor": 23, "aravisgig": 23, "prefix": 23, "legal": 23, "adjust": 23, "usual": 23, "replac": 23, "_": 23, "field": 23, "uppercamelcas": 23, "snake_cas": 23, "include_arg": 23, "addit": 23, "caveat": 23, "histor": 23, "adhoc": 23, "must": 23, "iocshel": 23, "pscaddipmodul": 23, "carrierid": 23, "carrier": 23, "ipsitenumb": 23, "ip_site_numb": 23, "vector": 23, "interrupt_vector": 23, "recommend": 24, "interfer": 24, "path": 24, "interfac": 24}, "objects": {"ibek": [[22, 0, 1, "", "__version__"], [22, 1, 0, "-", "globals"], [22, 1, 0, "-", "ioc"], [22, 1, 0, "-", "modules"], [22, 1, 0, "-", "render"], [22, 1, 0, "-", "support"], [22, 1, 0, "-", "utils"]], "ibek.globals": [[22, 2, 1, "", "BaseSettings"], [22, 3, 1, "", "render_with_utils"]], "ibek.ioc": [[22, 2, 1, "", "Entity"], [22, 2, 1, "", "EnumVal"], [22, 2, 1, "", "IOC"], [22, 3, 1, "", "clear_entity_model_ids"], [22, 3, 1, "", "make_entity_model"], [22, 3, 1, "", "make_entity_models"], [22, 3, 1, "", "make_ioc_model"]], "ibek.ioc.Entity": [[22, 4, 1, "", "add_ibek_attributes"]], "ibek.render": [[22, 2, 1, "", "Render"]], "ibek.render.Render": [[22, 4, 1, "", "render_database"], [22, 4, 1, "", "render_database_elements"], [22, 4, 1, "", "render_elements"], [22, 4, 1, "", "render_environment_variable_elements"], [22, 4, 1, "", "render_environment_variables"], [22, 4, 1, "", "render_function"], [22, 4, 1, "", "render_post_ioc_init"], [22, 4, 1, "", "render_post_ioc_init_elements"], [22, 4, 1, "", "render_pre_ioc_init"], [22, 4, 1, "", "render_pre_ioc_init_elements"], [22, 4, 1, "", "render_text"]], "ibek.support": [[22, 2, 1, "", "Arg"], [22, 2, 1, "", "BoolArg"], [22, 2, 1, "", "Comment"], [22, 2, 1, "", "Database"], [22, 2, 1, "", "Definition"], [22, 2, 1, "", "EnumArg"], [22, 2, 1, "", "EnvironmentVariable"], [22, 2, 1, "", "FloatArg"], [22, 2, 1, "", "Function"], [22, 2, 1, "", "IdArg"], [22, 2, 1, "", "IntArg"], [22, 2, 1, "", "ObjectArg"], [22, 2, 1, "", "StrArg"], [22, 2, 1, "", "Support"], [22, 2, 1, "", "Text"], [22, 2, 1, "", "Value"], [22, 2, 1, "", "When"]], "ibek.utils": [[22, 2, 1, "", "Counter"], [22, 2, 1, "", "Utils"]], "ibek.utils.Utils": [[22, 4, 1, "", "counter"], [22, 4, 1, "", "get_var"], [22, 4, 1, "", "set_var"]], "ibek.utils.apischema.types": [[22, 2, 1, "", "UndefinedType"]]}, "objtypes": {"0": "py:data", "1": "py:module", "2": "py:class", "3": "py:function", "4": "py:method"}, "objnames": {"0": ["py", "data", "Python data"], "1": ["py", "module", "Python module"], "2": ["py", "class", "Python class"], "3": ["py", "function", "Python function"], "4": ["py", "method", "Python method"]}, "titleterms": {"architectur": [0, 1], "decis": [0, 1, 2], "record": [0, 1], "1": 1, "statu": [1, 2], "context": [1, 2], "consequ": [1, 2], "2": 2, "adopt": 2, "python3": 2, "pip": 2, "skeleton": 2, "project": [2, 5], "structur": [2, 17], "modul": [3, 22, 23], "definit": [3, 23], "entiti": 3, "schema": [3, 19], "summari": 3, "ibek": [3, 17, 22], "file": [3, 8], "sequenc": 3, "command": 3, "stage": 3, "build": [4, 11, 15], "doc": 4, "us": [4, 6, 9, 10], "sphinx": 4, "autobuild": 4, "contribut": 5, "issu": [5, 6], "discuss": 5, "code": [5, 14], "coverag": 5, "develop": [5, 13, 15], "guid": [5, 13, 21], "run": [6, 9, 10, 20, 24], "lint": 6, "pre": 6, "commit": 6, "fix": 6, "vscode": 6, "support": [6, 22, 23], "make": 7, "releas": 7, "pin": 8, "requir": 8, "introduct": 8, "find": 8, "lock": 8, "appli": 8, "remov": 8, "depend": [8, 15], "from": 8, "ci": 8, "test": [9, 11, 15], "pytest": 9, "static": 10, "analysi": 10, "mypi": 10, "contain": [11, 20, 24], "local": 11, "updat": 12, "tool": 12, "tutori": [13, 21], "how": [13, 17, 21], "explan": [13, 21], "refer": [13, 21], "standard": 14, "document": [14, 17, 18], "instal": [15, 24], "clone": 15, "repositori": 15, "see": 15, "what": 15, "wa": 15, "api": [16, 22], "index": 16, "todo": 17, "i": 17, "about": 18, "yaml": [19, 23], "start": 20, "user": 21, "global": 22, "ioc": 22, "render": 22, "util": 22, "convent": 23, "filenam": 23, "arg": 23, "function": 23, "check": 24, "your": 24, "version": 24, "python": 24, "creat": 24, "virtual": 24, "environ": 24, "librari": 24}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.viewcode": 1, "sphinx": 57}, "alltitles": {"Architectural Decision Records": [[0, "architectural-decision-records"]], "1. Record architecture decisions": [[1, "record-architecture-decisions"]], "Status": [[1, "status"], [2, "status"]], "Context": [[1, "context"], [2, "context"]], "Decision": [[1, "decision"], [2, "decision"]], "Consequences": [[1, "consequences"], [2, "consequences"]], "2. Adopt python3-pip-skeleton for project structure": [[2, "adopt-python3-pip-skeleton-for-project-structure"]], "Modules, Definitions and Entities": [[3, "modules-definitions-and-entities"]], "Modules": [[3, "modules"]], "Definition": [[3, "definition"]], "Entity": [[3, "entity"]], "Schemas": [[3, "schemas"]], "Summary of ibek files sequence": [[3, "id1"]], "Commands": [[3, "commands"]], "Summary of ibek stages": [[3, "id2"]], "Build the docs using sphinx": [[4, "build-the-docs-using-sphinx"]], "Autobuild": [[4, "autobuild"]], "Contributing to the project": [[5, "contributing-to-the-project"]], "Issue or Discussion?": [[5, "issue-or-discussion"]], "Code coverage": [[5, "code-coverage"]], "Developer guide": [[5, "developer-guide"]], "Run linting using pre-commit": [[6, "run-linting-using-pre-commit"]], "Running pre-commit": [[6, "running-pre-commit"]], "Fixing issues": [[6, "fixing-issues"]], "VSCode support": [[6, "vscode-support"]], "Make a release": [[7, "make-a-release"]], "Pinning Requirements": [[8, "pinning-requirements"]], "Introduction": [[8, "introduction"]], "Finding the lock files": [[8, "finding-the-lock-files"]], "Applying the lock file": [[8, "applying-the-lock-file"]], "Removing dependency locking from CI": [[8, "removing-dependency-locking-from-ci"]], "Run the tests using pytest": [[9, "run-the-tests-using-pytest"]], "Run static analysis using mypy": [[10, "run-static-analysis-using-mypy"]], "Container Local Build and Test": [[11, "container-local-build-and-test"]], "Update the tools": [[12, "update-the-tools"]], "Developer Guide": [[13, "developer-guide"]], "Tutorials": [[13, null], [21, null]], "How-to Guides": [[13, null], [21, null]], "Explanations": [[13, null], [21, null]], "Reference": [[13, null], [21, null]], "Standards": [[14, "standards"]], "Code Standards": [[14, "code-standards"]], "Documentation Standards": [[14, "documentation-standards"]], "Developer install": [[15, "developer-install"]], "Clone the repository": [[15, "clone-the-repository"]], "Install dependencies": [[15, "install-dependencies"]], "See what was installed": [[15, "see-what-was-installed"]], "Build and test": [[15, "build-and-test"]], "API Index": [[16, "api-index"]], "ibek": [[17, "ibek"], [22, "ibek"]], "TODO": [[17, "todo"]], "How the documentation is structured": [[17, "how-the-documentation-is-structured"]], "About the documentation": [[18, "about-the-documentation"]], "YAML schema": [[19, "yaml-schema"]], "Run in a container": [[20, "run-in-a-container"]], "Starting the container": [[20, "starting-the-container"]], "User Guide": [[21, "user-guide"]], "API": [[22, "api"]], "ibek.globals": [[22, "module-ibek.globals"]], "ibek.support": [[22, "module-ibek.support"]], "ibek.ioc": [[22, "module-ibek.ioc"]], "ibek.modules": [[22, "module-ibek.modules"]], "ibek.render": [[22, "module-ibek.render"]], "ibek.utils": [[22, "module-ibek.utils"]], "Support YAML Conventions": [[23, "support-yaml-conventions"]], "Filename": [[23, "filename"]], "Module": [[23, "module"]], "Definitions": [[23, "definitions"]], "Args": [[23, "args"]], "Functions": [[23, "functions"]], "Installation": [[24, "installation"]], "Check your version of python": [[24, "check-your-version-of-python"]], "Create a virtual environment": [[24, "create-a-virtual-environment"]], "Installing the library": [[24, "installing-the-library"]], "Running in a container": [[24, "running-in-a-container"]]}, "indexentries": {"arg (class in ibek.support)": [[22, "ibek.support.Arg"]], "basesettings (class in ibek.globals)": [[22, "ibek.globals.BaseSettings"]], "boolarg (class in ibek.support)": [[22, "ibek.support.BoolArg"]], "comment (class in ibek.support)": [[22, "ibek.support.Comment"]], "counter (class in ibek.utils)": [[22, "ibek.utils.Counter"]], "database (class in ibek.support)": [[22, "ibek.support.Database"]], "definition (class in ibek.support)": [[22, "ibek.support.Definition"]], "entity (class in ibek.ioc)": [[22, "ibek.ioc.Entity"]], "enumarg (class in ibek.support)": [[22, "ibek.support.EnumArg"]], "enumval (class in ibek.ioc)": [[22, "ibek.ioc.EnumVal"]], "environmentvariable (class in ibek.support)": [[22, "ibek.support.EnvironmentVariable"]], "floatarg (class in ibek.support)": [[22, "ibek.support.FloatArg"]], "function (class in ibek.support)": [[22, "ibek.support.Function"]], "ioc (class in ibek.ioc)": [[22, "ibek.ioc.IOC"]], "idarg (class in ibek.support)": [[22, "ibek.support.IdArg"]], "intarg (class in ibek.support)": [[22, "ibek.support.IntArg"]], "objectarg (class in ibek.support)": [[22, "ibek.support.ObjectArg"]], "render (class in ibek.render)": [[22, "ibek.render.Render"]], "strarg (class in ibek.support)": [[22, "ibek.support.StrArg"]], "support (class in ibek.support)": [[22, "ibek.support.Support"]], "text (class in ibek.support)": [[22, "ibek.support.Text"]], "utils (class in ibek.utils)": [[22, "ibek.utils.Utils"]], "value (class in ibek.support)": [[22, "ibek.support.Value"]], "when (class in ibek.support)": [[22, "ibek.support.When"]], "add_ibek_attributes() (ibek.ioc.entity class method)": [[22, "ibek.ioc.Entity.add_ibek_attributes"]], "apischema.types.undefinedtype (class in ibek.utils)": [[22, "ibek.utils.apischema.types.UndefinedType"]], "clear_entity_model_ids() (in module ibek.ioc)": [[22, "ibek.ioc.clear_entity_model_ids"]], "counter() (ibek.utils.utils method)": [[22, "ibek.utils.Utils.counter"]], "get_var() (ibek.utils.utils method)": [[22, "ibek.utils.Utils.get_var"]], "ibek.__version__ (built-in variable)": [[22, "ibek.__version__"]], "ibek.globals": [[22, "module-ibek.globals"]], "ibek.ioc": [[22, "module-ibek.ioc"]], "ibek.modules": [[22, "module-ibek.modules"]], "ibek.render": [[22, "module-ibek.render"]], "ibek.support": [[22, "module-ibek.support"]], "ibek.utils": [[22, "module-ibek.utils"]], "make_entity_model() (in module ibek.ioc)": [[22, "ibek.ioc.make_entity_model"]], "make_entity_models() (in module ibek.ioc)": [[22, "ibek.ioc.make_entity_models"]], "make_ioc_model() (in module ibek.ioc)": [[22, "ibek.ioc.make_ioc_model"]], "module": [[22, "module-ibek.globals"], [22, "module-ibek.ioc"], [22, "module-ibek.modules"], [22, "module-ibek.render"], [22, "module-ibek.support"], [22, "module-ibek.utils"]], "render_database() (ibek.render.render method)": [[22, "ibek.render.Render.render_database"]], "render_database_elements() (ibek.render.render method)": [[22, "ibek.render.Render.render_database_elements"]], "render_elements() (ibek.render.render method)": [[22, "ibek.render.Render.render_elements"]], "render_environment_variable_elements() (ibek.render.render method)": [[22, "ibek.render.Render.render_environment_variable_elements"]], "render_environment_variables() (ibek.render.render method)": [[22, "ibek.render.Render.render_environment_variables"]], "render_function() (ibek.render.render method)": [[22, "ibek.render.Render.render_function"]], "render_post_ioc_init() (ibek.render.render method)": [[22, "ibek.render.Render.render_post_ioc_init"]], "render_post_ioc_init_elements() (ibek.render.render method)": [[22, "ibek.render.Render.render_post_ioc_init_elements"]], "render_pre_ioc_init() (ibek.render.render method)": [[22, "ibek.render.Render.render_pre_ioc_init"]], "render_pre_ioc_init_elements() (ibek.render.render method)": [[22, "ibek.render.Render.render_pre_ioc_init_elements"]], "render_text() (ibek.render.render method)": [[22, "ibek.render.Render.render_text"]], "render_with_utils() (in module ibek.globals)": [[22, "ibek.globals.render_with_utils"]], "set_var() (ibek.utils.utils method)": [[22, "ibek.utils.Utils.set_var"]]}}) \ No newline at end of file diff --git a/enums/user/explanations/docs-structure.html b/enums/user/explanations/docs-structure.html index 1f713d988..2ca03e05d 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.dev69+g85ba8d6 documentation + About the documentation — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/user/how-to/edit-yaml.html b/enums/user/how-to/edit-yaml.html index 5a8349b1d..8ed63b9dd 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.dev69+g85ba8d6 documentation + YAML schema — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/user/how-to/run-container.html b/enums/user/how-to/run-container.html index 2557a55f5..71a03032b 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.dev69+g85ba8d6 documentation + Run in a container — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/user/index.html b/enums/user/index.html index 074bd5824..2e49ef025 100644 --- a/enums/user/index.html +++ b/enums/user/index.html @@ -9,7 +9,7 @@ - User Guide — ibek 1.10.2.dev69+g85ba8d6 documentation + User Guide — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/user/reference/api.html b/enums/user/reference/api.html index 0dc2b49b2..0d18eb39f 100644 --- a/enums/user/reference/api.html +++ b/enums/user/reference/api.html @@ -9,7 +9,7 @@ - API — ibek 1.10.2.dev69+g85ba8d6 documentation + API — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/user/reference/naming.html b/enums/user/reference/naming.html index 635f3ebf0..9b11210a4 100644 --- a/enums/user/reference/naming.html +++ b/enums/user/reference/naming.html @@ -9,7 +9,7 @@ - Support YAML Conventions — ibek 1.10.2.dev69+g85ba8d6 documentation + Support YAML Conventions — ibek 1.10.2.dev70+g95d3c03 documentation diff --git a/enums/user/tutorials/installation.html b/enums/user/tutorials/installation.html index bfb03e9a1..c8acddd20 100644 --- a/enums/user/tutorials/installation.html +++ b/enums/user/tutorials/installation.html @@ -9,7 +9,7 @@ - Installation — ibek 1.10.2.dev69+g85ba8d6 documentation + Installation — ibek 1.10.2.dev70+g95d3c03 documentation