From 34237f7536d4703b5efa687d47a812b37f1543f8 Mon Sep 17 00:00:00 2001 From: github-actions Date: Mon, 2 Oct 2023 22:42:07 +0000 Subject: [PATCH] Auto-update from Github Actions Workflow Deployed from commit e1c04c81f4a70f1f1e51fe0c1567d049e2c95b98 (refs/heads/master) Deployed from commit 2c89f458ae253a0c7270cf3efd6668bdfd2fb9a3 (refs/heads/master) Deployed from commit a775d1a99c2ebdbc9192daa404ac4029fa7e3105 (refs/heads/master) Deployed from commit ce4f64a3c1ff349db9487be6d464a6e9c818e3bc (refs/heads/master) Deployed from commit 27163dad78ef7bb0992e6162e191cea23d4a7f04 (refs/heads/master) Deployed from commit 920f76c2f76e6e54f7cba8eb1c43368eea8d1df3 (refs/heads/master) --- master/_modules/atef/check.html | 50 +++- master/_modules/atef/config.html | 266 +++++++++++++++++- master/_modules/atef/procedure.html | 143 +++++++--- master/_modules/atef/tools.html | 10 +- master/_modules/index.html | 10 +- .../_sources/generated/atef.procedure.rst.txt | 1 - .../atef.check.AnyComparison.rst.txt | 2 + .../atef.config.Configuration.rst.txt | 3 + .../atef.config.ConfigurationFile.rst.txt | 1 + .../atef.config.ConfigurationGroup.rst.txt | 3 + .../atef.config.DeviceConfiguration.rst.txt | 3 + .../atef.config.PVConfiguration.rst.txt | 3 + .../atef.config.PreparedFile.rst.txt | 1 + .../atef.config.ToolConfiguration.rst.txt | 3 + .../generated/atef.procedure.CodeStep.rst.txt | 1 + ...f.procedure.ConfigurationCheckStep.rst.txt | 1 + .../atef.procedure.DescriptionStep.rst.txt | 1 + .../atef.procedure.PassiveStep.rst.txt | 1 + .../generated/atef.procedure.PlanStep.rst.txt | 1 + ...f.procedure.PreparedProcedureGroup.rst.txt | 1 + .../atef.procedure.ProcedureFile.rst.txt | 1 + .../atef.procedure.ProcedureGroup.rst.txt | 2 + .../atef.procedure.ProcedureStep.rst.txt | 1 + .../atef.procedure.PydmDisplayStep.rst.txt | 1 + .../atef.procedure.SetValueStep.rst.txt | 2 + .../atef.procedure.TyphosDisplayStep.rst.txt | 1 + .../atef.procedure.walk_steps.rst.txt | 6 - .../213-mnt_bug_misc_fixes.rst.txt | 27 ++ .../214-tst_qt_teardown.rst.txt | 22 ++ .../219-mnt_enum_check.rst.txt | 22 ++ .../221-enh_status_out.rst.txt | 23 ++ .../224-perf_lazy_page.rst.txt | 24 ++ .../226-enh_paged_table.rst.txt | 23 ++ master/api.html | 12 +- master/framework.html | 12 +- master/generated/atef.check.html | 12 +- master/generated/atef.config.html | 12 +- master/generated/atef.procedure.html | 16 +- master/generated/atef.tools.html | 12 +- .../generated/atef.check.AnyComparison.html | 75 +++-- .../generated/atef.check.AnyValue.html | 38 +-- .../generated/atef.check.BasicDynamic.html | 36 +-- .../generated/atef.check.Comparison.html | 36 +-- .../generated/atef.check.DynamicValue.html | 26 +- .../generated/atef.check.EpicsValue.html | 28 +- .../generated/atef.check.Equals.html | 42 +-- .../generated/atef.check.Greater.html | 40 +-- .../generated/atef.check.GreaterOrEqual.html | 40 +-- .../generated/atef.check.HappiValue.html | 30 +- .../generated/generated/atef.check.Less.html | 40 +-- .../generated/atef.check.LessOrEqual.html | 40 +-- .../generated/atef.check.NotEquals.html | 42 +-- .../generated/generated/atef.check.Range.html | 54 ++-- .../generated/generated/atef.check.Value.html | 28 +- .../generated/atef.check.ValueRange.html | 28 +- .../generated/atef.check.ValueSet.html | 38 +-- .../generated/atef.config.Configuration.html | 70 ++++- .../atef.config.ConfigurationFile.html | 57 ++-- .../atef.config.ConfigurationGroup.html | 71 ++++- .../atef.config.DeviceConfiguration.html | 75 ++++- .../atef.config.FailedConfiguration.html | 20 +- .../atef.config.PVConfiguration.html | 73 ++++- .../atef.config.PreparedComparison.html | 22 +- .../atef.config.PreparedConfiguration.html | 24 +- ...ef.config.PreparedDeviceConfiguration.html | 28 +- .../generated/atef.config.PreparedFile.html | 41 ++- .../generated/atef.config.PreparedGroup.html | 30 +- .../atef.config.PreparedPVConfiguration.html | 26 +- .../atef.config.PreparedSignalComparison.html | 34 +-- .../atef.config.PreparedToolComparison.html | 24 +- ...atef.config.PreparedToolConfiguration.html | 26 +- .../atef.config.ToolConfiguration.html | 73 ++++- ...tef.config.get_result_from_comparison.html | 14 +- .../atef.config.run_passive_step.html | 12 +- .../generated/atef.procedure.CodeStep.html | 44 +-- .../atef.procedure.ComparisonToPlanData.html | 27 +- .../atef.procedure.ComparisonToTarget.html | 29 +- ...atef.procedure.ConfigurationCheckStep.html | 38 ++- .../atef.procedure.DescriptionStep.html | 38 ++- .../atef.procedure.DeviceConfiguration.html | 21 +- .../atef.procedure.DisplayOptions.html | 21 +- .../generated/atef.procedure.FailedStep.html | 19 +- .../generated/atef.procedure.PassiveStep.html | 38 ++- .../generated/atef.procedure.PlanData.html | 25 +- .../generated/atef.procedure.PlanOptions.html | 27 +- .../generated/atef.procedure.PlanStep.html | 44 +-- ...tef.procedure.PreparedDescriptionStep.html | 21 +- .../atef.procedure.PreparedPassiveStep.html | 23 +- .../atef.procedure.PreparedPlan.html | 27 +- ...atef.procedure.PreparedPlanComparison.html | 29 +- .../atef.procedure.PreparedPlanStep.html | 29 +- .../atef.procedure.PreparedProcedureFile.html | 15 +- ...atef.procedure.PreparedProcedureGroup.html | 37 ++- .../atef.procedure.PreparedProcedureStep.html | 21 +- .../atef.procedure.PreparedSetValueStep.html | 27 +- .../atef.procedure.PreparedValueToSignal.html | 23 +- .../atef.procedure.ProcedureFile.html | 42 +-- .../atef.procedure.ProcedureGroup.html | 50 ++-- .../atef.procedure.ProcedureStep.html | 38 ++- .../atef.procedure.PydmDisplayStep.html | 38 ++- .../atef.procedure.SetValueStep.html | 53 ++-- .../generated/atef.procedure.Target.html | 29 +- .../atef.procedure.TyphosDisplayStep.html | 38 ++- .../atef.procedure.ValueToTarget.html | 33 +-- ....procedure.create_prepared_comparison.html | 15 +- .../generated/atef.procedure.get_RE_data.html | 15 +- .../atef.procedure.get_bs_state.html | 17 +- .../generated/atef.procedure.walk_steps.html | 183 ------------ .../generated/generated/atef.tools.Ping.html | 24 +- .../generated/atef.tools.PingResult.html | 32 ++- .../generated/generated/atef.tools.Tool.html | 16 +- .../generated/atef.tools.ToolResult.html | 14 +- .../atef.tools.get_result_value_by_key.html | 14 +- master/genindex.html | 94 ++++++- master/index.html | 20 +- master/objects.inv | Bin 5628 -> 5927 bytes master/py-modindex.html | 10 +- master/releases.html | 12 +- master/search.html | 10 +- master/searchindex.js | 2 +- master/upcoming_changes.html | 30 +- .../213-mnt_bug_misc_fixes.html | 169 +++++++++++ .../214-tst_qt_teardown.html | 165 +++++++++++ .../219-mnt_enum_check.html | 165 +++++++++++ .../221-enh_status_out.html | 166 +++++++++++ .../224-perf_lazy_page.html | 167 +++++++++++ .../226-enh_paged_table.html | 164 +++++++++++ .../upcoming_release_notes/template-full.html | 12 +- .../template-short.html | 12 +- 129 files changed, 3281 insertions(+), 1308 deletions(-) delete mode 100644 master/_sources/generated/generated/atef.procedure.walk_steps.rst.txt create mode 100644 master/_sources/upcoming_release_notes/213-mnt_bug_misc_fixes.rst.txt create mode 100644 master/_sources/upcoming_release_notes/214-tst_qt_teardown.rst.txt create mode 100644 master/_sources/upcoming_release_notes/219-mnt_enum_check.rst.txt create mode 100644 master/_sources/upcoming_release_notes/221-enh_status_out.rst.txt create mode 100644 master/_sources/upcoming_release_notes/224-perf_lazy_page.rst.txt create mode 100644 master/_sources/upcoming_release_notes/226-enh_paged_table.rst.txt delete mode 100644 master/generated/generated/atef.procedure.walk_steps.html create mode 100644 master/upcoming_release_notes/213-mnt_bug_misc_fixes.html create mode 100644 master/upcoming_release_notes/214-tst_qt_teardown.html create mode 100644 master/upcoming_release_notes/219-mnt_enum_check.html create mode 100644 master/upcoming_release_notes/221-enh_status_out.html create mode 100644 master/upcoming_release_notes/224-perf_lazy_page.html create mode 100644 master/upcoming_release_notes/226-enh_paged_table.html diff --git a/master/_modules/atef/check.html b/master/_modules/atef/check.html index c1034b2d..e98299f1 100644 --- a/master/_modules/atef/check.html +++ b/master/_modules/atef/check.html @@ -1,12 +1,14 @@ - + atef.check — atef documentation - - - + + + + + @@ -173,12 +175,14 @@

Source code for atef.check

 [docs]
     def compare(self, value: PrimitiveType) -> bool:
         """Compare the provided value with this one, using tolerance settings."""
-        if self.rtol is not None or self.atol is not None:
+        if ((self.rtol is not None or self.atol is not None)
+                and not isinstance(value, (str, bool))):
             return np.isclose(
                 value, self.value,
                 rtol=(self.rtol or 0.0),
                 atol=(self.atol or 0.0)
             )
+
         return value == self.value
@@ -850,6 +854,38 @@

Source code for atef.check

         for comp in self.comparisons:
             await comp.prepare(cache)
         self.is_prepared = True
+ + +
+[docs] + def children(self) -> List[Comparison]: + """Return children of this group, as a tree view might expect""" + return self.comparisons
+ + +
+[docs] + def replace_comparison( + self, + old_comp: Comparison, + new_comp: Comparison, + ) -> None: + """ + Replace ``old_comp`` with ``new_comp`` in this dataclass. + A common method for all dataclasses that hold comparisons. + + Parameters + ---------- + old_comp : Comparison + Comparsion to replace + new_comp : Comparison + Comparison to replace ``old_comp`` with + """ + util.replace_in_list( + old=old_comp, + new=new_comp, + item_list=self.comparisons, + )
@@ -1052,6 +1088,10 @@

Source code for atef.check

         self.is_prepared = True
+ + +ALL_COMPARISONS = [Equals, NotEquals, Greater, GreaterOrEqual, Less, LessOrEqual, + Range, ValueSet, AnyValue, AnyComparison] diff --git a/master/_modules/atef/config.html b/master/_modules/atef/config.html index 33f8f8d7..8dd5341c 100644 --- a/master/_modules/atef/config.html +++ b/master/_modules/atef/config.html @@ -1,12 +1,14 @@ - + atef.config — atef documentation - - - + + + + + @@ -131,7 +133,88 @@

Source code for atef.config

     #: Description tied to this configuration.
     description: Optional[str] = None
     #: Tags tied to this configuration.
-    tags: Optional[List[str]] = None
+ tags: Optional[List[str]] = None + +
+[docs] + def children(self) -> List[Any]: + """Return children of this group, as a tree view might expect""" + return []
+ + +
+[docs] + def replace_comparison( + self, + old_comp: Comparison, + new_comp: Comparison, + comp_attrs: Optional[List[str]] = None + ) -> None: + """ + Replace ``old_comp`` with ``new_comp`` in this dataclass, wherever it is. + Looks through ``shared``, then any of the attributes in ``comp_attrs`` + + Parameters + ---------- + old_comp : Comparison + Comparison to be replaced + new_comp : Comparison + Comparison to replace ``old_comp`` with + comp_attrs : Optional[List[str]], optional + Attribute names in the dataclass to check, by default None + """ + comp_attrs = comp_attrs or [] + if not any(hasattr(self, attr) for attr in comp_attrs + ["shared"]): + return + + try: + util.replace_in_list( + old=old_comp, + new=new_comp, + item_list=self.shared, + ) + except ValueError: + for attr in comp_attrs: + for comp_list in getattr(self, attr, {}).values(): + try: + util.replace_in_list( + old=old_comp, + new=new_comp, + item_list=comp_list, + ) + except ValueError: + continue + else: + break
+ + +
+[docs] + def move_comparison( + self, + comp: Comparison, + new_attr: str, + comp_attrs: List[str], + ) -> None: + if not any(hasattr(self, att) for att in comp_attrs + ["shared"]): + logger.debug('cannot find a requested attr in dataclass') + return + + # remove from all attrs + util.remove_by_id(self.shared, comp) + for attr in comp_attrs: + for comp_list in getattr(self, attr, {}).values(): + util.remove_by_id(comp_list, comp) + + # place into new_attr + if new_attr == "shared": + self.shared.append(comp) + else: + for attr in comp_attrs: + attr_dict = getattr(self, attr, {}) + if new_attr in attr_dict: + attr_dict[new_attr].append(comp)
+ @@ -160,6 +243,13 @@

Source code for atef.config

             yield config
             if isinstance(config, ConfigurationGroup):
                 yield from config.walk_configs()
+ + +
+[docs] + def children(self) -> List[Configuration]: + """Return children of this group, as a tree view might expect""" + return self.configs
@@ -183,7 +273,53 @@

Source code for atef.config

     #: Device attribute name to comparison list.
     by_attr: Dict[str, List[Comparison]] = field(default_factory=dict)
     #: Comparisons to be run on *all* identifiers in the `by_attr` dictionary.
-    shared: List[Comparison] = field(default_factory=list)
+ shared: List[Comparison] = field(default_factory=list) + +
+[docs] + def children(self) -> List[Comparison]: + """Return children of this group, as a tree view might expect""" + return ([comp for comp_list in self.by_attr.values() for comp in comp_list] + + self.shared)
+ + +
+[docs] + def replace_comparison( + self, + old_comp: Comparison, + new_comp: Comparison, + comp_attrs: Optional[List[str]] = None + ) -> None: + """ + Replace ``old_comp`` with ``new_comp`` in this dataclass, wherever it is. + Looks through ``shared``, then any of the attributes in ``comp_attrs`` + + Parameters + ---------- + old_comp : Comparison + Comparison to be replaced + new_comp : Comparison + Comparison to replace ``old_comp`` with + comp_attrs : Optional[List[str]], optional + Attribute names in the dataclass to check, by default ['by_attr'] if + no value is provided + """ + if comp_attrs is None: + comp_attrs = ['by_attr'] + super().replace_comparison(old_comp, new_comp, comp_attrs)
+ + +
+[docs] + def move_comparison( + self, + comp: Comparison, + new_attr: str, + comp_attrs: Optional[List[str]] = None + ) -> None: + super().move_comparison(comp, new_attr, comp_attrs=['by_attr'])
+ @@ -197,7 +333,53 @@

Source code for atef.config

     #: PV name to comparison list.
     by_pv: Dict[str, List[Comparison]] = field(default_factory=dict)
     #: Comparisons to be run on *all* PVs in the `by_pv` dictionary.
-    shared: List[Comparison] = field(default_factory=list)
+ shared: List[Comparison] = field(default_factory=list) + +
+[docs] + def children(self) -> List[Comparison]: + """Return children of this group, as a tree view might expect""" + return ([comp for comp_list in self.by_pv.values() for comp in comp_list] + + self.shared)
+ + +
+[docs] + def replace_comparison( + self, + old_comp: Comparison, + new_comp: Comparison, + comp_attrs: Optional[List[str]] = None + ) -> None: + """ + Replace ``old_comp`` with ``new_comp`` in this dataclass, wherever it is. + Looks through ``shared``, then any of the attributes in ``comp_attrs`` + + Parameters + ---------- + old_comp : Comparison + Comparison to be replaced + new_comp : Comparison + Comparison to replace ``old_comp`` with + comp_attrs : Optional[List[str]], optional + Attribute names in the dataclass to check, by default ['by_pv'] if + no value is provided + """ + if comp_attrs is None: + comp_attrs = ['by_pv'] + super().replace_comparison(old_comp, new_comp, comp_attrs)
+ + +
+[docs] + def move_comparison( + self, + comp: Comparison, + new_attr: str, + comp_attrs: Optional[List[str]] = None + ) -> None: + super().move_comparison(comp, new_attr, comp_attrs=['by_pv'])
+ @@ -217,7 +399,53 @@

Source code for atef.config

     #: Result attribute name to comparison list.
     by_attr: Dict[str, List[Comparison]] = field(default_factory=dict)
     #: Comparisons to be run on *all* identifiers in the `by_attr` dictionary.
-    shared: List[Comparison] = field(default_factory=list)
+ shared: List[Comparison] = field(default_factory=list) + +
+[docs] + def children(self) -> List[Comparison]: + """Return children of this group, as a tree view might expect""" + return ([comp for comp_list in self.by_attr.values() for comp in comp_list] + + self.shared)
+ + +
+[docs] + def replace_comparison( + self, + old_comp: Comparison, + new_comp: Comparison, + comp_attrs: Optional[List[str]] = None + ) -> None: + """ + Replace ``old_comp`` with ``new_comp`` in this dataclass, wherever it is. + Looks through ``shared``, then any of the attributes in ``comp_attrs`` + + Parameters + ---------- + old_comp : Comparison + Comparison to be replaced + new_comp : Comparison + Comparison to replace ``old_comp`` with + comp_attrs : Optional[List[str]], optional + Attribute names in the dataclass to check, by default ['by_attr'] if + no value is provided + """ + if comp_attrs is None: + comp_attrs = ['by_attr'] + super().replace_comparison(old_comp, new_comp, comp_attrs)
+ + +
+[docs] + def move_comparison( + self, + comp: Comparison, + new_attr: str, + comp_attrs: Optional[List[str]] = None + ) -> None: + super().move_comparison(comp, new_attr, comp_attrs=['by_attr'])
+ @@ -256,6 +484,13 @@

Source code for atef.config

         yield from self.root.walk_configs()
+
+[docs] + def children(self) -> List[ConfigurationGroup]: + """Return children of this group, as a tree view might expect""" + return [self.root]
+ +
[docs] def get_by_device(self, name: str) -> Generator[DeviceConfiguration, None, None]: @@ -295,7 +530,7 @@

Source code for atef.config

 [docs]
     @classmethod
     def from_filename(cls, filename: AnyPath) -> ConfigurationFile:
-        """ Load a configuration file from a file.  Dispatches based on file type """
+        """Load a configuration file from a file.  Dispatches based on file type"""
         path = pathlib.Path(filename)
         if path.suffix.lower() == '.json':
             config = ConfigurationFile.from_json(path)
@@ -453,6 +688,13 @@ 

Source code for atef.config

         yield from self.root.walk_groups()
+
+[docs] + def children(self) -> List[PreparedGroup]: + """Return children of this group, as a tree view might expect""" + return [self.root]
+ +
[docs] async def compare(self) -> Result: @@ -627,7 +869,7 @@

Source code for atef.config

 
     @property
     def result(self) -> Result:
-        """ Re-compute the combined result and return it """
+        """Re-compute the combined result and return it"""
         # read results without running steps
         results = []
         for config in self.comparisons:
@@ -813,7 +1055,7 @@ 

Source code for atef.config

 
     @property
     def result(self) -> Result:
-        """ Re-compute the combined result and return it """
+        """Re-compute the combined result and return it"""
         # read results without running steps
         results = []
         for config in self.configs:
@@ -1748,7 +1990,7 @@ 

Source code for atef.config

 async def run_passive_step(
     config: Union[PreparedComparison, PreparedConfiguration, PreparedFile]
 ):
-    """ Runs a given check and returns the result. """
+    """Runs a given check and returns the result."""
     # Warn if will run all subcomparisons?
     cache_fill_tasks = []
     try:
diff --git a/master/_modules/atef/procedure.html b/master/_modules/atef/procedure.html
index 2b732c0f..07ca0431 100644
--- a/master/_modules/atef/procedure.html
+++ b/master/_modules/atef/procedure.html
@@ -1,12 +1,14 @@
 
-
+
 
   
   
   atef.procedure — atef  documentation
-      
-      
-      
+      
+      
+      
+
+  
   
@@ -98,6 +100,7 @@ 

Source code for atef.procedure

 import json
 import logging
 import pathlib
+from copy import deepcopy
 from dataclasses import dataclass, field
 from typing import (Any, Dict, Generator, List, Literal, Optional, Sequence,
                     Tuple, Union, cast)
@@ -137,27 +140,6 @@ 

Source code for atef.procedure

 MAX_PLAN_DEPTH = 200
 
 
-
-[docs] -def walk_steps(step: ProcedureStep) -> Generator[ProcedureStep, None, None]: - """ - Yield ProedureSteps in ``step``, depth-first. - - Parameters - ---------- - step : ProcedureStep - Step to yield ProcedureSteps from - - Yields - ------ - Generator[ProcedureStep, None, None] - """ - yield step - for sub_step in getattr(step, 'steps', []): - yield from walk_steps(sub_step)
- - -
[docs] @dataclasses.dataclass @@ -187,6 +169,13 @@

Source code for atef.procedure

         To be further expanded or overloaded in subclass,
         """
         return self.result.severity == Severity.success
+ + +
+[docs] + def children(self) -> List[Any]: + """Return children of this group, as a tree view might expect""" + return []
@@ -207,6 +196,23 @@

Source code for atef.procedure

             yield step
             if isinstance(step, ProcedureGroup):
                 yield from step.walk_steps()
+ + +
+[docs] + def children(self) -> List[Union[ProcedureStep, ProcedureGroup]]: + """Return children of this group, as a tree view might expect""" + return self.steps
+ + +
+[docs] + def replace_step( + self, + old_step: Union[ProcedureStep, ProcedureGroup], + new_step: Union[ProcedureStep, ProcedureGroup] + ) -> None: + util.replace_in_list(old_step, new_step, self.steps)
@@ -233,14 +239,46 @@

Source code for atef.procedure

 [docs]
 @dataclass
 class SetValueStep(ProcedureStep):
-    """ A step that sets one or more values and checks one or more values after """
+    """A step that sets one or more values and checks one or more values after"""
     actions: List[ValueToTarget] = field(default_factory=list)
     success_criteria: List[ComparisonToTarget] = field(default_factory=list)
 
     #: Stop performing actions if one fails
     halt_on_fail: bool = True
     #: Only mark the step_result as successful if all actions have succeeded
-    require_action_success: bool = True
+ require_action_success: bool = True + +
+[docs] + def children(self) -> List[ComparisonToTarget]: + """Return children of this group, as a tree view might expect""" + return [crit.comparison for crit in self.success_criteria]
+ + +
+[docs] + def replace_comparison( + self, + old_comp: Comparison, + new_comp: Comparison + ) -> None: + """replace ``old_comp`` with ``new_comp``, in success_criteria""" + comp_list = [crit.comparison for crit in self.success_criteria] + try: + idx = comp_list.index(old_comp) + except ValueError: + raise ValueError('attempted to replace a comparison that does not ' + f'exist: {old_comp} -> {new_comp}') + + new_crit = deepcopy(self.success_criteria[idx]) + new_crit.comparison = new_comp + + util.replace_in_list( + old=self.success_criteria[idx], + new=new_crit, + item_list=self.success_criteria + )
+
@@ -258,13 +296,14 @@

Source code for atef.procedure

     attr: Optional[str] = None
     #: EPICS PV
     pv: Optional[str] = None
+    # TODO: a method for getting the PV from device/attr pairs
 
 
[docs] def to_signal( self, signal_cache: Optional[_SignalCache] = None - ) -> Optional[ophyd.EpicsSignal]: + ) -> Optional[ophyd.Signal]: """ Return the signal described by this Target. First attempts to use the device + attr information to look up the signal in happi, falling back @@ -272,7 +311,7 @@

Source code for atef.procedure

 
         Returns
         -------
-        ophyd.EpicsSignal
+        ophyd.Signal
             the signal described by this Target
         """
         try:
@@ -382,7 +421,7 @@ 

Source code for atef.procedure

 
[docs] def to_plan_item(self: PlanOptions) -> Dict[str, Any]: - """ Makes a plan item (dictionary of parameters) for a given PlanStep """ + """Makes a plan item (dictionary of parameters) for a given PlanStep""" it = { "name": self.plan, "args": self.args, @@ -408,7 +447,16 @@

Source code for atef.procedure

     #: Stop performing plans if one fails
     halt_on_fail: bool = True
     #: Only mark step_result successfull if all steps have succeeded
-    require_plan_success: bool = True
+ require_plan_success: bool = True + +
+[docs] + def children(self) -> List[Union[PlanOptions, ComparisonToTarget, + ComparisonToPlanData]]: + """Return children of this group, as a tree view might expect""" + # Subject to change as PlanStep is developed + return self.plans + [check.comparison for check in self.checks]
+
@@ -496,6 +544,13 @@

Source code for atef.procedure

         yield from self.root.walk_steps()
+
+[docs] + def children(self) -> List[ProcedureGroup]: + """Return children of this group, as a tree view might expect""" + return [self.root]
+ +
[docs] @classmethod @@ -606,7 +661,7 @@

Source code for atef.procedure

 [docs]
 @dataclass
 class FailedStep:
-    """ A step that failed to be prepared for running. """
+    """A step that failed to be prepared for running."""
     #: The data cache to use for the preparation step.
     parent: Optional[PreparedProcedureGroup]
     #: Configuration instance.
@@ -690,7 +745,7 @@ 

Source code for atef.procedure

 
[docs] async def run(self) -> Result: - """ Run the step and return the result """ + """Run the step and return the result""" try: result = await self._run() except Exception as ex: @@ -817,7 +872,7 @@

Source code for atef.procedure

 
[docs] async def run(self) -> Result: - """ Run all steps and return a combined result """ + """Run all steps and return a combined result""" results = [] for step in self.steps: results.append(await step.run()) @@ -837,7 +892,7 @@

Source code for atef.procedure

 
     @property
     def result(self) -> Result:
-        """ Re-compute the combined result and return it """
+        """Re-compute the combined result and return it"""
         results = []
         for step in self.steps:
             results.append(step.result)
@@ -853,7 +908,17 @@ 

Source code for atef.procedure

 
         self.step_result = result
 
-        return super().result
+ return super().result + +
+[docs] + def walk_steps(self) -> Generator[AnyPreparedProcedure]: + for step in self.steps: + step = cast(AnyPreparedProcedure, step) + yield step + if hasattr(step, 'walk_steps'): + yield from step.walk_steps()
+
@@ -899,7 +964,7 @@

Source code for atef.procedure

     prepared_passive_file: Optional[PreparedFile] = None
 
     async def _run(self) -> Result:
-        """ Load, prepare, and run the passive step """
+        """Load, prepare, and run the passive step"""
         if not self.prepared_passive_file:
             return Result(severity=Severity.error, reason='No passive checkout to run')
         return await run_passive_step(self.prepared_passive_file)
@@ -960,7 +1025,7 @@ 

Source code for atef.procedure

 
[docs] def walk_comparisons(self) -> Generator[PreparedComparison, None, None]: - """ Yields PreparedComparisons in this ProcedureStep """ + """Yields PreparedComparisons in this ProcedureStep""" yield from self.prepared_criteria
@@ -1214,7 +1279,7 @@

Source code for atef.procedure

     )
 
     async def _run(self) -> Result:
-        """ Gather plan options and run the bluesky plan """
+        """Gather plan options and run the bluesky plan"""
         # Construct plan (get devices, organize args/kwargs, run)
         # verify
         # - gather namespace (plans, devices)
diff --git a/master/_modules/atef/tools.html b/master/_modules/atef/tools.html
index 890c5858..597a11a9 100644
--- a/master/_modules/atef/tools.html
+++ b/master/_modules/atef/tools.html
@@ -1,12 +1,14 @@
 
-
+
 
   
   
   atef.tools — atef  documentation
-      
-      
-      
+      
+      
+      
+
+  
   
diff --git a/master/_modules/index.html b/master/_modules/index.html
index 9030dc63..b880f3fe 100644
--- a/master/_modules/index.html
+++ b/master/_modules/index.html
@@ -1,12 +1,14 @@
 
-
+
 
   
   
   Overview: module code — atef  documentation
-      
-      
-      
+      
+      
+      
+
+  
   
diff --git a/master/_sources/generated/atef.procedure.rst.txt b/master/_sources/generated/atef.procedure.rst.txt
index 8f8dcc3c..cfc51081 100644
--- a/master/_sources/generated/atef.procedure.rst.txt
+++ b/master/_sources/generated/atef.procedure.rst.txt
@@ -13,7 +13,6 @@
       create_prepared_comparison
       get_RE_data
       get_bs_state
-      walk_steps
    
    
 
diff --git a/master/_sources/generated/generated/atef.check.AnyComparison.rst.txt b/master/_sources/generated/generated/atef.check.AnyComparison.rst.txt
index 84feec96..c8d5d737 100644
--- a/master/_sources/generated/generated/atef.check.AnyComparison.rst.txt
+++ b/master/_sources/generated/generated/atef.check.AnyComparison.rst.txt
@@ -11,11 +11,13 @@ atef.check.AnyComparison
 
     
     .. automethod:: __init__
+    .. automethod:: children
     .. automethod:: compare
     .. automethod:: describe
     .. automethod:: get_data_for_signal
     .. automethod:: get_data_for_signal_async
     .. automethod:: prepare
+    .. automethod:: replace_comparison
     
     
 
diff --git a/master/_sources/generated/generated/atef.config.Configuration.rst.txt b/master/_sources/generated/generated/atef.config.Configuration.rst.txt
index 9a3b1273..88f2d05c 100644
--- a/master/_sources/generated/generated/atef.config.Configuration.rst.txt
+++ b/master/_sources/generated/generated/atef.config.Configuration.rst.txt
@@ -11,6 +11,9 @@ atef.config.Configuration
 
     
     .. automethod:: __init__
+    .. automethod:: children
+    .. automethod:: move_comparison
+    .. automethod:: replace_comparison
     
     
 
diff --git a/master/_sources/generated/generated/atef.config.ConfigurationFile.rst.txt b/master/_sources/generated/generated/atef.config.ConfigurationFile.rst.txt
index 2d0c7b14..5b12d1d4 100644
--- a/master/_sources/generated/generated/atef.config.ConfigurationFile.rst.txt
+++ b/master/_sources/generated/generated/atef.config.ConfigurationFile.rst.txt
@@ -11,6 +11,7 @@ atef.config.ConfigurationFile
 
     
     .. automethod:: __init__
+    .. automethod:: children
     .. automethod:: from_filename
     .. automethod:: from_json
     .. automethod:: from_yaml
diff --git a/master/_sources/generated/generated/atef.config.ConfigurationGroup.rst.txt b/master/_sources/generated/generated/atef.config.ConfigurationGroup.rst.txt
index 6c421339..37767db9 100644
--- a/master/_sources/generated/generated/atef.config.ConfigurationGroup.rst.txt
+++ b/master/_sources/generated/generated/atef.config.ConfigurationGroup.rst.txt
@@ -11,6 +11,9 @@ atef.config.ConfigurationGroup
 
     
     .. automethod:: __init__
+    .. automethod:: children
+    .. automethod:: move_comparison
+    .. automethod:: replace_comparison
     .. automethod:: walk_configs
     
     
diff --git a/master/_sources/generated/generated/atef.config.DeviceConfiguration.rst.txt b/master/_sources/generated/generated/atef.config.DeviceConfiguration.rst.txt
index c16d9569..fbf9bf81 100644
--- a/master/_sources/generated/generated/atef.config.DeviceConfiguration.rst.txt
+++ b/master/_sources/generated/generated/atef.config.DeviceConfiguration.rst.txt
@@ -11,6 +11,9 @@ atef.config.DeviceConfiguration
 
     
     .. automethod:: __init__
+    .. automethod:: children
+    .. automethod:: move_comparison
+    .. automethod:: replace_comparison
     
     
 
diff --git a/master/_sources/generated/generated/atef.config.PVConfiguration.rst.txt b/master/_sources/generated/generated/atef.config.PVConfiguration.rst.txt
index d7b45369..91253104 100644
--- a/master/_sources/generated/generated/atef.config.PVConfiguration.rst.txt
+++ b/master/_sources/generated/generated/atef.config.PVConfiguration.rst.txt
@@ -11,6 +11,9 @@ atef.config.PVConfiguration
 
     
     .. automethod:: __init__
+    .. automethod:: children
+    .. automethod:: move_comparison
+    .. automethod:: replace_comparison
     
     
 
diff --git a/master/_sources/generated/generated/atef.config.PreparedFile.rst.txt b/master/_sources/generated/generated/atef.config.PreparedFile.rst.txt
index 816b02c9..a9981435 100644
--- a/master/_sources/generated/generated/atef.config.PreparedFile.rst.txt
+++ b/master/_sources/generated/generated/atef.config.PreparedFile.rst.txt
@@ -11,6 +11,7 @@ atef.config.PreparedFile
 
     
     .. automethod:: __init__
+    .. automethod:: children
     .. automethod:: compare
     .. automethod:: fill_cache
     .. automethod:: from_config
diff --git a/master/_sources/generated/generated/atef.config.ToolConfiguration.rst.txt b/master/_sources/generated/generated/atef.config.ToolConfiguration.rst.txt
index e1529c0e..8aae248e 100644
--- a/master/_sources/generated/generated/atef.config.ToolConfiguration.rst.txt
+++ b/master/_sources/generated/generated/atef.config.ToolConfiguration.rst.txt
@@ -11,6 +11,9 @@ atef.config.ToolConfiguration
 
     
     .. automethod:: __init__
+    .. automethod:: children
+    .. automethod:: move_comparison
+    .. automethod:: replace_comparison
     
     
 
diff --git a/master/_sources/generated/generated/atef.procedure.CodeStep.rst.txt b/master/_sources/generated/generated/atef.procedure.CodeStep.rst.txt
index c36198c1..c1e3d69f 100644
--- a/master/_sources/generated/generated/atef.procedure.CodeStep.rst.txt
+++ b/master/_sources/generated/generated/atef.procedure.CodeStep.rst.txt
@@ -12,6 +12,7 @@ atef.procedure.CodeStep
     
     .. automethod:: __init__
     .. automethod:: allow_verify
+    .. automethod:: children
     
     
 
diff --git a/master/_sources/generated/generated/atef.procedure.ConfigurationCheckStep.rst.txt b/master/_sources/generated/generated/atef.procedure.ConfigurationCheckStep.rst.txt
index 925ab9f1..999ab7d5 100644
--- a/master/_sources/generated/generated/atef.procedure.ConfigurationCheckStep.rst.txt
+++ b/master/_sources/generated/generated/atef.procedure.ConfigurationCheckStep.rst.txt
@@ -12,6 +12,7 @@ atef.procedure.ConfigurationCheckStep
     
     .. automethod:: __init__
     .. automethod:: allow_verify
+    .. automethod:: children
     
     
 
diff --git a/master/_sources/generated/generated/atef.procedure.DescriptionStep.rst.txt b/master/_sources/generated/generated/atef.procedure.DescriptionStep.rst.txt
index d0fd723a..bbe0766d 100644
--- a/master/_sources/generated/generated/atef.procedure.DescriptionStep.rst.txt
+++ b/master/_sources/generated/generated/atef.procedure.DescriptionStep.rst.txt
@@ -12,6 +12,7 @@ atef.procedure.DescriptionStep
     
     .. automethod:: __init__
     .. automethod:: allow_verify
+    .. automethod:: children
     
     
 
diff --git a/master/_sources/generated/generated/atef.procedure.PassiveStep.rst.txt b/master/_sources/generated/generated/atef.procedure.PassiveStep.rst.txt
index 0b129e76..106f0b06 100644
--- a/master/_sources/generated/generated/atef.procedure.PassiveStep.rst.txt
+++ b/master/_sources/generated/generated/atef.procedure.PassiveStep.rst.txt
@@ -12,6 +12,7 @@ atef.procedure.PassiveStep
     
     .. automethod:: __init__
     .. automethod:: allow_verify
+    .. automethod:: children
     
     
 
diff --git a/master/_sources/generated/generated/atef.procedure.PlanStep.rst.txt b/master/_sources/generated/generated/atef.procedure.PlanStep.rst.txt
index 53706836..e4f33054 100644
--- a/master/_sources/generated/generated/atef.procedure.PlanStep.rst.txt
+++ b/master/_sources/generated/generated/atef.procedure.PlanStep.rst.txt
@@ -12,6 +12,7 @@ atef.procedure.PlanStep
     
     .. automethod:: __init__
     .. automethod:: allow_verify
+    .. automethod:: children
     
     
 
diff --git a/master/_sources/generated/generated/atef.procedure.PreparedProcedureGroup.rst.txt b/master/_sources/generated/generated/atef.procedure.PreparedProcedureGroup.rst.txt
index 311347f9..41d7c772 100644
--- a/master/_sources/generated/generated/atef.procedure.PreparedProcedureGroup.rst.txt
+++ b/master/_sources/generated/generated/atef.procedure.PreparedProcedureGroup.rst.txt
@@ -13,6 +13,7 @@ atef.procedure.PreparedProcedureGroup
     .. automethod:: __init__
     .. automethod:: from_origin
     .. automethod:: run
+    .. automethod:: walk_steps
     
     
 
diff --git a/master/_sources/generated/generated/atef.procedure.ProcedureFile.rst.txt b/master/_sources/generated/generated/atef.procedure.ProcedureFile.rst.txt
index dcae9b45..69adedab 100644
--- a/master/_sources/generated/generated/atef.procedure.ProcedureFile.rst.txt
+++ b/master/_sources/generated/generated/atef.procedure.ProcedureFile.rst.txt
@@ -11,6 +11,7 @@ atef.procedure.ProcedureFile
 
     
     .. automethod:: __init__
+    .. automethod:: children
     .. automethod:: from_filename
     .. automethod:: from_json
     .. automethod:: from_yaml
diff --git a/master/_sources/generated/generated/atef.procedure.ProcedureGroup.rst.txt b/master/_sources/generated/generated/atef.procedure.ProcedureGroup.rst.txt
index 83046986..337e63c4 100644
--- a/master/_sources/generated/generated/atef.procedure.ProcedureGroup.rst.txt
+++ b/master/_sources/generated/generated/atef.procedure.ProcedureGroup.rst.txt
@@ -12,6 +12,8 @@ atef.procedure.ProcedureGroup
     
     .. automethod:: __init__
     .. automethod:: allow_verify
+    .. automethod:: children
+    .. automethod:: replace_step
     .. automethod:: walk_steps
     
     
diff --git a/master/_sources/generated/generated/atef.procedure.ProcedureStep.rst.txt b/master/_sources/generated/generated/atef.procedure.ProcedureStep.rst.txt
index 1895ab3e..c0cb5a73 100644
--- a/master/_sources/generated/generated/atef.procedure.ProcedureStep.rst.txt
+++ b/master/_sources/generated/generated/atef.procedure.ProcedureStep.rst.txt
@@ -12,6 +12,7 @@ atef.procedure.ProcedureStep
     
     .. automethod:: __init__
     .. automethod:: allow_verify
+    .. automethod:: children
     
     
 
diff --git a/master/_sources/generated/generated/atef.procedure.PydmDisplayStep.rst.txt b/master/_sources/generated/generated/atef.procedure.PydmDisplayStep.rst.txt
index 7164818b..f3a5fa7e 100644
--- a/master/_sources/generated/generated/atef.procedure.PydmDisplayStep.rst.txt
+++ b/master/_sources/generated/generated/atef.procedure.PydmDisplayStep.rst.txt
@@ -12,6 +12,7 @@ atef.procedure.PydmDisplayStep
     
     .. automethod:: __init__
     .. automethod:: allow_verify
+    .. automethod:: children
     
     
 
diff --git a/master/_sources/generated/generated/atef.procedure.SetValueStep.rst.txt b/master/_sources/generated/generated/atef.procedure.SetValueStep.rst.txt
index 3824e9df..569afc37 100644
--- a/master/_sources/generated/generated/atef.procedure.SetValueStep.rst.txt
+++ b/master/_sources/generated/generated/atef.procedure.SetValueStep.rst.txt
@@ -12,6 +12,8 @@ atef.procedure.SetValueStep
     
     .. automethod:: __init__
     .. automethod:: allow_verify
+    .. automethod:: children
+    .. automethod:: replace_comparison
     
     
 
diff --git a/master/_sources/generated/generated/atef.procedure.TyphosDisplayStep.rst.txt b/master/_sources/generated/generated/atef.procedure.TyphosDisplayStep.rst.txt
index b94fdb51..82d92743 100644
--- a/master/_sources/generated/generated/atef.procedure.TyphosDisplayStep.rst.txt
+++ b/master/_sources/generated/generated/atef.procedure.TyphosDisplayStep.rst.txt
@@ -12,6 +12,7 @@ atef.procedure.TyphosDisplayStep
     
     .. automethod:: __init__
     .. automethod:: allow_verify
+    .. automethod:: children
     
     
 
diff --git a/master/_sources/generated/generated/atef.procedure.walk_steps.rst.txt b/master/_sources/generated/generated/atef.procedure.walk_steps.rst.txt
deleted file mode 100644
index c179b304..00000000
--- a/master/_sources/generated/generated/atef.procedure.walk_steps.rst.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-atef.procedure.walk\_steps
-==========================
-
-.. currentmodule:: atef.procedure
-
-.. autofunction:: walk_steps
\ No newline at end of file
diff --git a/master/_sources/upcoming_release_notes/213-mnt_bug_misc_fixes.rst.txt b/master/_sources/upcoming_release_notes/213-mnt_bug_misc_fixes.rst.txt
new file mode 100644
index 00000000..10590d8a
--- /dev/null
+++ b/master/_sources/upcoming_release_notes/213-mnt_bug_misc_fixes.rst.txt
@@ -0,0 +1,27 @@
+213 mnt_bug_misc_fixes
+######################
+
+API Breaks
+----------
+- N/A
+
+Features
+--------
+- N/A
+
+Bugfixes
+--------
+- `RangeWidget`'s visualizations update a bit more frequently, and also the label text actually updates. Closes #212
+- Adds a menu option to open the welcome tab, since people like it.  Closes #201
+- Properly shows an error message box when a file can't be opened.  Closes #202
+- Removes child `AtefItem` from a ProcedureStep when it's changed from the specific-step-combobox.  Closes #195
+- Allow tolerances to be `None` in `Equals` comparison.  Modifies the line-edit setup to allow null values (`''`, `None`) when casting the line edit value.  Closes #128
+
+
+Maintenance
+-----------
+- N/A
+
+Contributors
+------------
+- tangkong
diff --git a/master/_sources/upcoming_release_notes/214-tst_qt_teardown.rst.txt b/master/_sources/upcoming_release_notes/214-tst_qt_teardown.rst.txt
new file mode 100644
index 00000000..14e28719
--- /dev/null
+++ b/master/_sources/upcoming_release_notes/214-tst_qt_teardown.rst.txt
@@ -0,0 +1,22 @@
+214 tst_qt_teardown
+#################
+
+API Breaks
+----------
+- N/A
+
+Features
+--------
+- N/A
+
+Bugfixes
+--------
+- N/A
+
+Maintenance
+-----------
+- Replaces use of functools.partial with `WeakPartialMethodSlot` in qt slots, cleaning up intermittent test suite failures (and hopefully production crashes)
+
+Contributors
+------------
+- tangkong
diff --git a/master/_sources/upcoming_release_notes/219-mnt_enum_check.rst.txt b/master/_sources/upcoming_release_notes/219-mnt_enum_check.rst.txt
new file mode 100644
index 00000000..5d2d8bd8
--- /dev/null
+++ b/master/_sources/upcoming_release_notes/219-mnt_enum_check.rst.txt
@@ -0,0 +1,22 @@
+219 mnt_enum_check
+##################
+
+API Breaks
+----------
+- N/A
+
+Features
+--------
+- N/A
+
+Bugfixes
+--------
+- N/A
+
+Maintenance
+-----------
+- Make comparisons against enum signals more robust by trying both the int and string versions if the check fails.
+
+Contributors
+------------
+- tangkong
diff --git a/master/_sources/upcoming_release_notes/221-enh_status_out.rst.txt b/master/_sources/upcoming_release_notes/221-enh_status_out.rst.txt
new file mode 100644
index 00000000..8843ebed
--- /dev/null
+++ b/master/_sources/upcoming_release_notes/221-enh_status_out.rst.txt
@@ -0,0 +1,23 @@
+221 enh_status_out
+#################
+
+API Breaks
+----------
+- N/A
+
+Features
+--------
+- Adds results summary page accessible from run-mode in the `atef config` GUI
+- Adds icons to run-mode tree view
+
+Bugfixes
+--------
+- N/A
+
+Maintenance
+-----------
+- Refactors tree-walking helpers to a separate submodle
+
+Contributors
+------------
+- tangkong
diff --git a/master/_sources/upcoming_release_notes/224-perf_lazy_page.rst.txt b/master/_sources/upcoming_release_notes/224-perf_lazy_page.rst.txt
new file mode 100644
index 00000000..4b1c8eab
--- /dev/null
+++ b/master/_sources/upcoming_release_notes/224-perf_lazy_page.rst.txt
@@ -0,0 +1,24 @@
+224 perf_lazy_page
+##################
+
+API Breaks
+----------
+- N/A
+
+Features
+--------
+- Adds page widget cache and lazy loading functionality to the atef config GUI
+
+Bugfixes
+--------
+- N/A
+
+Maintenance
+-----------
+- Refactors GUI backend to support lazy page loading
+- Move tree-building logic to dataclasses
+- Consolidate GUI backend classes (EditTree/RunTree -> DualTree, AtefItem/TreeItem -> TreeItem)
+
+Contributors
+------------
+- tangkong
diff --git a/master/_sources/upcoming_release_notes/226-enh_paged_table.rst.txt b/master/_sources/upcoming_release_notes/226-enh_paged_table.rst.txt
new file mode 100644
index 00000000..95038fb5
--- /dev/null
+++ b/master/_sources/upcoming_release_notes/226-enh_paged_table.rst.txt
@@ -0,0 +1,23 @@
+226 enh_paged_table
+###################
+
+API Breaks
+----------
+- N/A
+
+Features
+--------
+- Adds PagedTableWidget, apply it to passive checkout group pages
+  to substantially improve the loading performance of group pages with many, many comparisons.
+
+Bugfixes
+--------
+- N/A
+
+Maintenance
+-----------
+- N/A
+
+Contributors
+------------
+- tangkong
diff --git a/master/api.html b/master/api.html
index e8ba3a5a..fc40da22 100644
--- a/master/api.html
+++ b/master/api.html
@@ -1,13 +1,15 @@
 
-
+
 
-  
+  
 
   
   ATEF API — atef  documentation
-      
-      
-      
+      
+      
+      
+
+  
   
diff --git a/master/framework.html b/master/framework.html
index ee872df6..a1cfd4e1 100644
--- a/master/framework.html
+++ b/master/framework.html
@@ -1,13 +1,15 @@
 
-
+
 
-  
+  
 
   
   ATEF Framework — atef  documentation
-      
-      
-      
+      
+      
+      
+
+  
   
diff --git a/master/generated/atef.check.html b/master/generated/atef.check.html
index b068a668..3d20c730 100644
--- a/master/generated/atef.check.html
+++ b/master/generated/atef.check.html
@@ -1,13 +1,15 @@
 
-
+
 
-  
+  
 
   
   atef.check — atef  documentation
-      
-      
-      
+      
+      
+      
+
+  
   
diff --git a/master/generated/atef.config.html b/master/generated/atef.config.html
index 766cfda6..2ea20be7 100644
--- a/master/generated/atef.config.html
+++ b/master/generated/atef.config.html
@@ -1,13 +1,15 @@
 
-
+
 
-  
+  
 
   
   atef.config — atef  documentation
-      
-      
-      
+      
+      
+      
+
+  
   
diff --git a/master/generated/atef.procedure.html b/master/generated/atef.procedure.html
index 5712dec3..12dbac3a 100644
--- a/master/generated/atef.procedure.html
+++ b/master/generated/atef.procedure.html
@@ -1,13 +1,15 @@
 
-
+
 
-  
+  
 
   
   atef.procedure — atef  documentation
-      
-      
-      
+      
+      
+      
+
+  
   
@@ -54,7 +56,6 @@
 
  • atef.procedure.create_prepared_comparison
  • atef.procedure.get_RE_data
  • atef.procedure.get_bs_state
  • -
  • atef.procedure.walk_steps
  • atef.procedure.CodeStep
  • atef.procedure.ComparisonToPlanData
  • atef.procedure.ComparisonToTarget
  • @@ -149,9 +150,6 @@

    get_bs_state(dclass)

    Get the BlueskyState instance corresponding to dclass.

    -

    walk_steps(step)

    -

    Yield ProedureSteps in step, depth-first.

    -

    Classes

    diff --git a/master/generated/atef.tools.html b/master/generated/atef.tools.html index 9b59c57d..996c4ba4 100644 --- a/master/generated/atef.tools.html +++ b/master/generated/atef.tools.html @@ -1,13 +1,15 @@ - + - + atef.tools — atef documentation - - - + + + + + diff --git a/master/generated/generated/atef.check.AnyComparison.html b/master/generated/generated/atef.check.AnyComparison.html index e5386395..aece09ed 100644 --- a/master/generated/generated/atef.check.AnyComparison.html +++ b/master/generated/generated/atef.check.AnyComparison.html @@ -1,13 +1,15 @@ - + - + atef.check.AnyComparison — atef documentation - - - + + + + + @@ -131,32 +133,44 @@

    atef.check.AnyComparison

    __call__(value)

    Run the comparison against value.

    -

    compare(value[, identifier])

    +

    children()

    +

    Return children of this group, as a tree view might expect

    + +

    compare(value[, identifier])

    Compare the provided value using the comparator's settings.

    -

    describe()

    +

    describe()

    Describe the comparison in words.

    -

    get_data_for_signal(signal)

    +

    get_data_for_signal(signal)

    Get data for the given signal, according to the string and data reduction settings.

    -

    get_data_for_signal_async(signal, *[, executor])

    +

    get_data_for_signal_async(signal, *[, executor])

    Get data for the given signal, according to the string and data reduction settings.

    -

    prepare([cache])

    +

    prepare([cache])

    Prepare this comparison's value data.

    +

    replace_comparison(old_comp, new_comp)

    +

    Replace old_comp with new_comp in this dataclass.

    +

    Methods

    -__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ~atef.reduce.ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: ~atef.enums.Severity = Severity.error, if_disconnected: ~atef.enums.Severity = Severity.error, comparisons: ~typing.List[~atef.check.Comparison] = <factory>) None
    +__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ~atef.reduce.ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: ~atef.enums.Severity = Severity.error, if_disconnected: ~atef.enums.Severity = Severity.error, comparisons: ~typing.List[~atef.check.Comparison] = <factory>) None
    +
    +
    +children() List[Comparison][source]
    +

    Return children of this group, as a tree view might expect

    +
    +
    -compare(value: Any, identifier: str | None = None) Result
    +compare(value: Any, identifier: str | None = None) Result

    Compare the provided value using the comparator’s settings.

    Parameters:
    @@ -173,13 +187,13 @@

    atef.check.AnyComparison
    -describe() str[source]
    +describe() str[source]

    Describe the comparison in words.

    -get_data_for_signal(signal: Signal) Any
    +get_data_for_signal(signal: Signal) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -206,7 +220,7 @@

    atef.check.AnyComparison
    -async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any
    +async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -236,7 +250,7 @@

    atef.check.AnyComparison
    -async prepare(cache: DataCache | None = None) None[source]
    +async prepare(cache: DataCache | None = None) None[source]

    Prepare this comparison’s value data. Prepares all comparisons contained in this comparison.

    @@ -249,10 +263,27 @@

    atef.check.AnyComparison +
    +replace_comparison(old_comp: Comparison, new_comp: Comparison) None[source]
    +

    Replace old_comp with new_comp in this dataclass. +A common method for all dataclasses that hold comparisons.

    +
    +
    Parameters:
    +
    +
    old_compComparison

    Comparsion to replace

    +
    +
    new_compComparison

    Comparison to replace old_comp with

    +
    +
    +
    +
    +

    +

    Attributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this comparison.

    @@ -265,7 +296,7 @@

    atef.check.AnyComparison
    -invert: bool = False
    +invert: bool = False

    Invert the comparison’s result. Normally, a valid comparison - that is, one that evaluates to True - is considered successful. When invert is set, such a comparison would be considered a failure.

    @@ -273,7 +304,7 @@

    atef.check.AnyComparison
    -name: str | None = None
    +name: str | None = None

    @@ -284,7 +315,7 @@

    atef.check.AnyComparison
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the comparison will occur, where multiple samples may be acquired prior to a result being available.

    @@ -297,14 +328,14 @@

    atef.check.AnyComparison
    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default specified.

    -comparisons: List[Comparison]
    +comparisons: List[Comparison]
    diff --git a/master/generated/generated/atef.check.AnyValue.html b/master/generated/generated/atef.check.AnyValue.html index af1b4402..533b2134 100644 --- a/master/generated/generated/atef.check.AnyValue.html +++ b/master/generated/generated/atef.check.AnyValue.html @@ -1,13 +1,15 @@ - + - + atef.check.AnyValue — atef documentation - - - + + + + + @@ -151,12 +153,12 @@

    atef.check.AnyValueMethods

    -__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ~atef.reduce.ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: ~atef.enums.Severity = Severity.error, if_disconnected: ~atef.enums.Severity = Severity.error, values: ~typing.List[str | int | bool | float] = <factory>, values_dynamic: ~typing.List[~atef.check.DynamicValue | None] = <factory>) None
    +__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ~atef.reduce.ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: ~atef.enums.Severity = Severity.error, if_disconnected: ~atef.enums.Severity = Severity.error, values: ~typing.List[str | int | bool | float] = <factory>, values_dynamic: ~typing.List[~atef.check.DynamicValue | None] = <factory>) None
    -compare(value: Any, identifier: str | None = None) Result
    +compare(value: Any, identifier: str | None = None) Result

    Compare the provided value using the comparator’s settings.

    Parameters:
    @@ -173,13 +175,13 @@

    atef.check.AnyValue
    -describe() str[source]
    +describe() str[source]

    Describe the comparison in words.

    -get_data_for_signal(signal: Signal) Any
    +get_data_for_signal(signal: Signal) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -206,7 +208,7 @@

    atef.check.AnyValue
    -async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any
    +async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -236,7 +238,7 @@

    atef.check.AnyValue
    -async prepare(cache: DataCache | None = None) None[source]
    +async prepare(cache: DataCache | None = None) None[source]

    Prepare this comparison’s value data. Prepares each DynamicValue in the value_dynamic list, if specified.

    @@ -252,7 +254,7 @@

    atef.check.AnyValueAttributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this comparison.

    @@ -265,7 +267,7 @@

    atef.check.AnyValue
    -invert: bool = False
    +invert: bool = False

    Invert the comparison’s result. Normally, a valid comparison - that is, one that evaluates to True - is considered successful. When invert is set, such a comparison would be considered a failure.

    @@ -273,7 +275,7 @@

    atef.check.AnyValue
    -name: str | None = None
    +name: str | None = None

    @@ -284,7 +286,7 @@

    atef.check.AnyValue
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the comparison will occur, where multiple samples may be acquired prior to a result being available.

    @@ -297,19 +299,19 @@

    atef.check.AnyValue
    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default specified.

    -values: List[str | int | bool | float]
    +values: List[str | int | bool | float]
    -values_dynamic: List[DynamicValue | None]
    +values_dynamic: List[DynamicValue | None]

    diff --git a/master/generated/generated/atef.check.BasicDynamic.html b/master/generated/generated/atef.check.BasicDynamic.html index 2e4766c1..922f38a1 100644 --- a/master/generated/generated/atef.check.BasicDynamic.html +++ b/master/generated/generated/atef.check.BasicDynamic.html @@ -1,13 +1,15 @@ - + - + atef.check.BasicDynamic — atef documentation - - - + + + + + @@ -151,12 +153,12 @@

    atef.check.BasicDynamicMethods

    -__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None) None
    +__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None) None
    -compare(value: Any, identifier: str | None = None) Result
    +compare(value: Any, identifier: str | None = None) Result

    Compare the provided value using the comparator’s settings.

    Parameters:
    @@ -173,14 +175,14 @@

    atef.check.BasicDynamic
    -describe() str
    +describe() str

    Human-readable description of the comparison operation itself.

    To be implemented by subclass.

    -get_data_for_signal(signal: Signal) Any
    +get_data_for_signal(signal: Signal) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -207,7 +209,7 @@

    atef.check.BasicDynamic
    -async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any
    +async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -237,7 +239,7 @@

    atef.check.BasicDynamic
    -async prepare(cache: DataCache | None = None) None[source]
    +async prepare(cache: DataCache | None = None) None[source]

    Prepare this comparison’s value data. If a value_dynamic is specified, prepare its data

    @@ -253,7 +255,7 @@

    atef.check.BasicDynamicAttributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this comparison.

    @@ -266,7 +268,7 @@

    atef.check.BasicDynamic
    -invert: bool = False
    +invert: bool = False

    Invert the comparison’s result. Normally, a valid comparison - that is, one that evaluates to True - is considered successful. When invert is set, such a comparison would be considered a failure.

    @@ -274,7 +276,7 @@

    atef.check.BasicDynamic
    -name: str | None = None
    +name: str | None = None

    @@ -285,7 +287,7 @@

    atef.check.BasicDynamic
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the comparison will occur, where multiple samples may be acquired prior to a result being available.

    @@ -298,14 +300,14 @@

    atef.check.BasicDynamic
    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default specified.

    -value_dynamic: DynamicValue | None = None
    +value_dynamic: DynamicValue | None = None

    diff --git a/master/generated/generated/atef.check.Comparison.html b/master/generated/generated/atef.check.Comparison.html index 78b2ec91..113708cc 100644 --- a/master/generated/generated/atef.check.Comparison.html +++ b/master/generated/generated/atef.check.Comparison.html @@ -1,13 +1,15 @@ - + - + atef.check.Comparison — atef documentation - - - + + + + + @@ -113,7 +115,7 @@

    atef.check.Comparison

    -class atef.check.Comparison(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error)[source]
    +class atef.check.Comparison(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error)[source]

    Base class for all atef value comparisons.

    Subclasses of Comparison will be serialized as a tagged union. This means that the subclass name will be used as an identifier for the generated @@ -154,12 +156,12 @@

    atef.check.ComparisonMethods

    -__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error) None
    +__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error) None
    -compare(value: Any, identifier: str | None = None) Result[source]
    +compare(value: Any, identifier: str | None = None) Result[source]

    Compare the provided value using the comparator’s settings.

    Parameters:
    @@ -176,14 +178,14 @@

    atef.check.Comparison
    -describe() str[source]
    +describe() str[source]

    Human-readable description of the comparison operation itself.

    To be implemented by subclass.

    -get_data_for_signal(signal: Signal) Any[source]
    +get_data_for_signal(signal: Signal) Any[source]

    Get data for the given signal, according to the string and data reduction settings.

    @@ -210,7 +212,7 @@

    atef.check.Comparison
    -async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any[source]
    +async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any[source]

    Get data for the given signal, according to the string and data reduction settings.

    @@ -240,7 +242,7 @@

    atef.check.Comparison
    -async prepare(cache: DataCache | None = None) None[source]
    +async prepare(cache: DataCache | None = None) None[source]

    Implement in subclass to grab and cache dynamic values. This is expected to set self.is_prepared to True if successful.

    @@ -249,7 +251,7 @@

    atef.check.ComparisonAttributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this comparison.

    @@ -262,7 +264,7 @@

    atef.check.Comparison
    -invert: bool = False
    +invert: bool = False

    Invert the comparison’s result. Normally, a valid comparison - that is, one that evaluates to True - is considered successful. When invert is set, such a comparison would be considered a failure.

    @@ -270,7 +272,7 @@

    atef.check.Comparison
    -name: str | None = None
    +name: str | None = None

    @@ -281,7 +283,7 @@

    atef.check.Comparison
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the comparison will occur, where multiple samples may be acquired prior to a result being available.

    @@ -294,7 +296,7 @@

    atef.check.Comparison
    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default specified.

    diff --git a/master/generated/generated/atef.check.DynamicValue.html b/master/generated/generated/atef.check.DynamicValue.html index 2675e516..cc7e2742 100644 --- a/master/generated/generated/atef.check.DynamicValue.html +++ b/master/generated/generated/atef.check.DynamicValue.html @@ -1,13 +1,15 @@ - + - + atef.check.DynamicValue — atef documentation - - - + + + + + @@ -113,7 +115,7 @@

    atef.check.DynamicValue

    -class atef.check.DynamicValue(value: str | int | bool | float | None = None, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None)[source]
    +class atef.check.DynamicValue(value: str | int | bool | float | None = None, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None)[source]

    A primitive value from an external source that may change over time. This necessarily picks up a runtime performance cost and getting the value is not guaranteed to be successful. If unsuccessful, @@ -143,18 +145,18 @@

    atef.check.DynamicValueMethods

    -__init__(value: str | int | bool | float | None = None, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None) None
    +__init__(value: str | int | bool | float | None = None, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None) None
    -get() str | int | bool | float[source]
    +get() str | int | bool | float[source]

    Return the cached value from prepare, or raise a DynamicValueError if there is no such value.

    -async prepare(cache: DataCache) None[source]
    +async prepare(cache: DataCache) None[source]

    Implement in child class to get the current value from source. Should set the self.value

    @@ -168,19 +170,19 @@

    atef.check.DynamicValue
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the value will be read

    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default

    -value: str | int | bool | float | None = None
    +value: str | int | bool | float | None = None

    Value is now optional, and will be filled in when prepared

    diff --git a/master/generated/generated/atef.check.EpicsValue.html b/master/generated/generated/atef.check.EpicsValue.html index e2430bbc..6c884b29 100644 --- a/master/generated/generated/atef.check.EpicsValue.html +++ b/master/generated/generated/atef.check.EpicsValue.html @@ -1,13 +1,15 @@ - + - + atef.check.EpicsValue — atef documentation - - - + + + + + @@ -113,7 +115,7 @@

    atef.check.EpicsValue

    -class atef.check.EpicsValue(value: str | int | bool | float | None = None, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, pvname: str = '')[source]
    +class atef.check.EpicsValue(value: str | int | bool | float | None = None, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, pvname: str = '')[source]

    A primitive value sourced from an EPICS PV. This will create and cache an EpicsSignalRO object, and defer to that signal’s get handling.

    @@ -140,18 +142,18 @@

    atef.check.EpicsValueMethods

    -__init__(value: str | int | bool | float | None = None, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, pvname: str = '') None
    +__init__(value: str | int | bool | float | None = None, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, pvname: str = '') None
    -get() str | int | bool | float
    +get() str | int | bool | float

    Return the cached value from prepare, or raise a DynamicValueError if there is no such value.

    -async prepare(cache: DataCache | None = None) None[source]
    +async prepare(cache: DataCache | None = None) None[source]

    Prepare the EpicsValue. Accesses the EPICS PV using the data cache provided.

    @@ -174,7 +176,7 @@

    atef.check.EpicsValueAttributes

    -pvname: str = ''
    +pvname: str = ''

    The EPICS PV to use.

    @@ -186,19 +188,19 @@

    atef.check.EpicsValue
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the value will be read

    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default

    -value: str | int | bool | float | None = None
    +value: str | int | bool | float | None = None

    Value is now optional, and will be filled in when prepared

    diff --git a/master/generated/generated/atef.check.Equals.html b/master/generated/generated/atef.check.Equals.html index f7bba2d7..8c3e3474 100644 --- a/master/generated/generated/atef.check.Equals.html +++ b/master/generated/generated/atef.check.Equals.html @@ -1,13 +1,15 @@ - + - + atef.check.Equals — atef documentation - - - + + + + + @@ -153,12 +155,12 @@

    atef.check.EqualsMethods

    -__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: str | int | bool | float = 0.0, rtol: int | float | None = None, atol: int | float | None = None) None
    +__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: str | int | bool | float = 0.0, rtol: int | float | None = None, atol: int | float | None = None) None
    -compare(value: Any, identifier: str | None = None) Result
    +compare(value: Any, identifier: str | None = None) Result

    Compare the provided value using the comparator’s settings.

    Parameters:
    @@ -175,13 +177,13 @@

    atef.check.Equals
    -describe() str[source]
    +describe() str[source]

    Describe the equality comparison in words.

    -get_data_for_signal(signal: Signal) Any
    +get_data_for_signal(signal: Signal) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -208,7 +210,7 @@

    atef.check.Equals
    -async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any
    +async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -238,7 +240,7 @@

    atef.check.Equals
    -async prepare(cache: DataCache | None = None) None
    +async prepare(cache: DataCache | None = None) None

    Prepare this comparison’s value data. If a value_dynamic is specified, prepare its data

    @@ -254,12 +256,12 @@

    atef.check.EqualsAttributes

    -atol: int | float | None = None
    +atol: int | float | None = None
    -description: str | None = None
    +description: str | None = None

    Description tied to this comparison.

    @@ -272,7 +274,7 @@

    atef.check.Equals
    -invert: bool = False
    +invert: bool = False

    Invert the comparison’s result. Normally, a valid comparison - that is, one that evaluates to True - is considered successful. When invert is set, such a comparison would be considered a failure.

    @@ -280,7 +282,7 @@

    atef.check.Equals
    -name: str | None = None
    +name: str | None = None

    @@ -291,14 +293,14 @@

    atef.check.Equals
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the comparison will occur, where multiple samples may be acquired prior to a result being available.

    -rtol: int | float | None = None
    +rtol: int | float | None = None
    @@ -309,19 +311,19 @@

    atef.check.Equals
    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default specified.

    -value: str | int | bool | float = 0.0
    +value: str | int | bool | float = 0.0
    -value_dynamic: DynamicValue | None = None
    +value_dynamic: DynamicValue | None = None

    diff --git a/master/generated/generated/atef.check.Greater.html b/master/generated/generated/atef.check.Greater.html index 72f8f9f9..575f26e4 100644 --- a/master/generated/generated/atef.check.Greater.html +++ b/master/generated/generated/atef.check.Greater.html @@ -1,13 +1,15 @@ - + - + atef.check.Greater — atef documentation - - - + + + + + @@ -113,7 +115,7 @@

    atef.check.Greater

    -class atef.check.Greater(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0)[source]
    +class atef.check.Greater(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0)[source]

    Comparison: value > self.value.

    Attributes:
    @@ -152,12 +154,12 @@

    atef.check.GreaterMethods

    -__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0) None
    +__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0) None
    -compare(value: Any, identifier: str | None = None) Result
    +compare(value: Any, identifier: str | None = None) Result

    Compare the provided value using the comparator’s settings.

    Parameters:
    @@ -174,14 +176,14 @@

    atef.check.Greater
    -describe() str[source]
    +describe() str[source]

    Human-readable description of the comparison operation itself.

    To be implemented by subclass.

    -get_data_for_signal(signal: Signal) Any
    +get_data_for_signal(signal: Signal) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -208,7 +210,7 @@

    atef.check.Greater
    -async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any
    +async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -238,7 +240,7 @@

    atef.check.Greater
    -async prepare(cache: DataCache | None = None) None
    +async prepare(cache: DataCache | None = None) None

    Prepare this comparison’s value data. If a value_dynamic is specified, prepare its data

    @@ -254,7 +256,7 @@

    atef.check.GreaterAttributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this comparison.

    @@ -267,7 +269,7 @@

    atef.check.Greater
    -invert: bool = False
    +invert: bool = False

    Invert the comparison’s result. Normally, a valid comparison - that is, one that evaluates to True - is considered successful. When invert is set, such a comparison would be considered a failure.

    @@ -275,7 +277,7 @@

    atef.check.Greater
    -name: str | None = None
    +name: str | None = None

    @@ -286,7 +288,7 @@

    atef.check.Greater
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the comparison will occur, where multiple samples may be acquired prior to a result being available.

    @@ -299,19 +301,19 @@

    atef.check.Greater
    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default specified.

    -value: int | float = 0
    +value: int | float = 0
    -value_dynamic: DynamicValue | None = None
    +value_dynamic: DynamicValue | None = None

    diff --git a/master/generated/generated/atef.check.GreaterOrEqual.html b/master/generated/generated/atef.check.GreaterOrEqual.html index 81e06117..6c7f8860 100644 --- a/master/generated/generated/atef.check.GreaterOrEqual.html +++ b/master/generated/generated/atef.check.GreaterOrEqual.html @@ -1,13 +1,15 @@ - + - + atef.check.GreaterOrEqual — atef documentation - - - + + + + + @@ -113,7 +115,7 @@

    atef.check.GreaterOrEqual

    -class atef.check.GreaterOrEqual(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0)[source]
    +class atef.check.GreaterOrEqual(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0)[source]

    Comparison: value >= self.value.

    Attributes:
    @@ -152,12 +154,12 @@

    atef.check.GreaterOrEqualMethods

    -__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0) None
    +__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0) None
    -compare(value: Any, identifier: str | None = None) Result
    +compare(value: Any, identifier: str | None = None) Result

    Compare the provided value using the comparator’s settings.

    Parameters:
    @@ -174,14 +176,14 @@

    atef.check.GreaterOrEqual
    -describe() str[source]
    +describe() str[source]

    Human-readable description of the comparison operation itself.

    To be implemented by subclass.

    -get_data_for_signal(signal: Signal) Any
    +get_data_for_signal(signal: Signal) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -208,7 +210,7 @@

    atef.check.GreaterOrEqual
    -async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any
    +async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -238,7 +240,7 @@

    atef.check.GreaterOrEqual
    -async prepare(cache: DataCache | None = None) None
    +async prepare(cache: DataCache | None = None) None

    Prepare this comparison’s value data. If a value_dynamic is specified, prepare its data

    @@ -254,7 +256,7 @@

    atef.check.GreaterOrEqualAttributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this comparison.

    @@ -267,7 +269,7 @@

    atef.check.GreaterOrEqual
    -invert: bool = False
    +invert: bool = False

    Invert the comparison’s result. Normally, a valid comparison - that is, one that evaluates to True - is considered successful. When invert is set, such a comparison would be considered a failure.

    @@ -275,7 +277,7 @@

    atef.check.GreaterOrEqual
    -name: str | None = None
    +name: str | None = None

    @@ -286,7 +288,7 @@

    atef.check.GreaterOrEqual
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the comparison will occur, where multiple samples may be acquired prior to a result being available.

    @@ -299,19 +301,19 @@

    atef.check.GreaterOrEqual
    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default specified.

    -value: int | float = 0
    +value: int | float = 0
    -value_dynamic: DynamicValue | None = None
    +value_dynamic: DynamicValue | None = None

    diff --git a/master/generated/generated/atef.check.HappiValue.html b/master/generated/generated/atef.check.HappiValue.html index e8b6117d..c662372d 100644 --- a/master/generated/generated/atef.check.HappiValue.html +++ b/master/generated/generated/atef.check.HappiValue.html @@ -1,13 +1,15 @@ - + - + atef.check.HappiValue — atef documentation - - - + + + + + @@ -113,7 +115,7 @@

    atef.check.HappiValue

    -class atef.check.HappiValue(value: str | int | bool | float | None = None, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, device_name: str = '', signal_attr: str = '')[source]
    +class atef.check.HappiValue(value: str | int | bool | float | None = None, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, device_name: str = '', signal_attr: str = '')[source]

    A primitive value sourced from a specific happi device signal. This will query happi to cache a Signal object, and defer to that signal’s get handling.

    @@ -140,18 +142,18 @@

    atef.check.HappiValueMethods

    -__init__(value: str | int | bool | float | None = None, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, device_name: str = '', signal_attr: str = '') None
    +__init__(value: str | int | bool | float | None = None, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, device_name: str = '', signal_attr: str = '') None
    -get() str | int | bool | float
    +get() str | int | bool | float

    Return the cached value from prepare, or raise a DynamicValueError if there is no such value.

    -async prepare(cache: DataCache | None = None) None[source]
    +async prepare(cache: DataCache | None = None) None[source]

    Prepare the HappiValue. Accesses the specified device and component from the happi database.

    @@ -174,7 +176,7 @@

    atef.check.HappiValueAttributes

    -device_name: str = ''
    +device_name: str = ''

    The name of the device to use.

    @@ -186,25 +188,25 @@

    atef.check.HappiValue
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the value will be read

    -signal_attr: str = ''
    +signal_attr: str = ''

    The attr name of the signal to get from.

    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default

    -value: str | int | bool | float | None = None
    +value: str | int | bool | float | None = None

    Value is now optional, and will be filled in when prepared

    diff --git a/master/generated/generated/atef.check.Less.html b/master/generated/generated/atef.check.Less.html index 26010135..28a16448 100644 --- a/master/generated/generated/atef.check.Less.html +++ b/master/generated/generated/atef.check.Less.html @@ -1,13 +1,15 @@ - + - + atef.check.Less — atef documentation - - - + + + + + @@ -113,7 +115,7 @@

    atef.check.Less

    -class atef.check.Less(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0)[source]
    +class atef.check.Less(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0)[source]

    Comparison: value < self.value.

    Attributes:
    @@ -152,12 +154,12 @@

    atef.check.LessMethods

    -__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0) None
    +__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0) None
    -compare(value: Any, identifier: str | None = None) Result
    +compare(value: Any, identifier: str | None = None) Result

    Compare the provided value using the comparator’s settings.

    Parameters:
    @@ -174,14 +176,14 @@

    atef.check.Less
    -describe() str[source]
    +describe() str[source]

    Human-readable description of the comparison operation itself.

    To be implemented by subclass.

    -get_data_for_signal(signal: Signal) Any
    +get_data_for_signal(signal: Signal) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -208,7 +210,7 @@

    atef.check.Less
    -async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any
    +async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -238,7 +240,7 @@

    atef.check.Less
    -async prepare(cache: DataCache | None = None) None
    +async prepare(cache: DataCache | None = None) None

    Prepare this comparison’s value data. If a value_dynamic is specified, prepare its data

    @@ -254,7 +256,7 @@

    atef.check.LessAttributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this comparison.

    @@ -267,7 +269,7 @@

    atef.check.Less
    -invert: bool = False
    +invert: bool = False

    Invert the comparison’s result. Normally, a valid comparison - that is, one that evaluates to True - is considered successful. When invert is set, such a comparison would be considered a failure.

    @@ -275,7 +277,7 @@

    atef.check.Less
    -name: str | None = None
    +name: str | None = None

    @@ -286,7 +288,7 @@

    atef.check.Less
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the comparison will occur, where multiple samples may be acquired prior to a result being available.

    @@ -299,19 +301,19 @@

    atef.check.Less
    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default specified.

    -value: int | float = 0
    +value: int | float = 0
    -value_dynamic: DynamicValue | None = None
    +value_dynamic: DynamicValue | None = None

    diff --git a/master/generated/generated/atef.check.LessOrEqual.html b/master/generated/generated/atef.check.LessOrEqual.html index dc675d34..6c850984 100644 --- a/master/generated/generated/atef.check.LessOrEqual.html +++ b/master/generated/generated/atef.check.LessOrEqual.html @@ -1,13 +1,15 @@ - + - + atef.check.LessOrEqual — atef documentation - - - + + + + + @@ -113,7 +115,7 @@

    atef.check.LessOrEqual

    -class atef.check.LessOrEqual(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0)[source]
    +class atef.check.LessOrEqual(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0)[source]

    Comparison: value <= self.value.

    Attributes:
    @@ -152,12 +154,12 @@

    atef.check.LessOrEqualMethods

    -__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0) None
    +__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: int | float = 0) None
    -compare(value: Any, identifier: str | None = None) Result
    +compare(value: Any, identifier: str | None = None) Result

    Compare the provided value using the comparator’s settings.

    Parameters:
    @@ -174,14 +176,14 @@

    atef.check.LessOrEqual
    -describe() str[source]
    +describe() str[source]

    Human-readable description of the comparison operation itself.

    To be implemented by subclass.

    -get_data_for_signal(signal: Signal) Any
    +get_data_for_signal(signal: Signal) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -208,7 +210,7 @@

    atef.check.LessOrEqual
    -async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any
    +async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -238,7 +240,7 @@

    atef.check.LessOrEqual
    -async prepare(cache: DataCache | None = None) None
    +async prepare(cache: DataCache | None = None) None

    Prepare this comparison’s value data. If a value_dynamic is specified, prepare its data

    @@ -254,7 +256,7 @@

    atef.check.LessOrEqualAttributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this comparison.

    @@ -267,7 +269,7 @@

    atef.check.LessOrEqual
    -invert: bool = False
    +invert: bool = False

    Invert the comparison’s result. Normally, a valid comparison - that is, one that evaluates to True - is considered successful. When invert is set, such a comparison would be considered a failure.

    @@ -275,7 +277,7 @@

    atef.check.LessOrEqual
    -name: str | None = None
    +name: str | None = None

    @@ -286,7 +288,7 @@

    atef.check.LessOrEqual
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the comparison will occur, where multiple samples may be acquired prior to a result being available.

    @@ -299,19 +301,19 @@

    atef.check.LessOrEqual
    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default specified.

    -value: int | float = 0
    +value: int | float = 0
    -value_dynamic: DynamicValue | None = None
    +value_dynamic: DynamicValue | None = None

    diff --git a/master/generated/generated/atef.check.NotEquals.html b/master/generated/generated/atef.check.NotEquals.html index 8e602553..45f62df7 100644 --- a/master/generated/generated/atef.check.NotEquals.html +++ b/master/generated/generated/atef.check.NotEquals.html @@ -1,13 +1,15 @@ - + - + atef.check.NotEquals — atef documentation - - - + + + + + @@ -153,12 +155,12 @@

    atef.check.NotEqualsMethods

    -__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: str | int | bool | float = 0, rtol: int | float | None = None, atol: int | float | None = None) None
    +__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, value_dynamic: DynamicValue | None = None, value: str | int | bool | float = 0, rtol: int | float | None = None, atol: int | float | None = None) None
    -compare(value: Any, identifier: str | None = None) Result
    +compare(value: Any, identifier: str | None = None) Result

    Compare the provided value using the comparator’s settings.

    Parameters:
    @@ -175,13 +177,13 @@

    atef.check.NotEquals
    -describe() str[source]
    +describe() str[source]

    Describe the equality comparison in words.

    -get_data_for_signal(signal: Signal) Any
    +get_data_for_signal(signal: Signal) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -208,7 +210,7 @@

    atef.check.NotEquals
    -async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any
    +async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -238,7 +240,7 @@

    atef.check.NotEquals
    -async prepare(cache: DataCache | None = None) None
    +async prepare(cache: DataCache | None = None) None

    Prepare this comparison’s value data. If a value_dynamic is specified, prepare its data

    @@ -254,12 +256,12 @@

    atef.check.NotEqualsAttributes

    -atol: int | float | None = None
    +atol: int | float | None = None
    -description: str | None = None
    +description: str | None = None

    Description tied to this comparison.

    @@ -272,7 +274,7 @@

    atef.check.NotEquals
    -invert: bool = False
    +invert: bool = False

    Invert the comparison’s result. Normally, a valid comparison - that is, one that evaluates to True - is considered successful. When invert is set, such a comparison would be considered a failure.

    @@ -280,7 +282,7 @@

    atef.check.NotEquals
    -name: str | None = None
    +name: str | None = None

    @@ -291,14 +293,14 @@

    atef.check.NotEquals
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the comparison will occur, where multiple samples may be acquired prior to a result being available.

    -rtol: int | float | None = None
    +rtol: int | float | None = None
    @@ -309,19 +311,19 @@

    atef.check.NotEquals
    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default specified.

    -value: str | int | bool | float = 0
    +value: str | int | bool | float = 0
    -value_dynamic: DynamicValue | None = None
    +value_dynamic: DynamicValue | None = None

    diff --git a/master/generated/generated/atef.check.Range.html b/master/generated/generated/atef.check.Range.html index fc2f0615..4c59905b 100644 --- a/master/generated/generated/atef.check.Range.html +++ b/master/generated/generated/atef.check.Range.html @@ -1,13 +1,15 @@ - + - + atef.check.Range — atef documentation - - - + + + + + @@ -113,7 +115,7 @@

    atef.check.Range

    -class atef.check.Range(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, low: int | float = 0, low_dynamic: DynamicValue | None = None, high: int | float = 0, high_dynamic: DynamicValue | None = None, warn_low: int | float | None = None, warn_low_dynamic: DynamicValue | None = None, warn_high: int | float | None = None, warn_high_dynamic: DynamicValue | None = None, inclusive: bool = True)[source]
    +class atef.check.Range(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, low: int | float = 0, low_dynamic: DynamicValue | None = None, high: int | float = 0, high_dynamic: DynamicValue | None = None, warn_low: int | float | None = None, warn_low_dynamic: DynamicValue | None = None, warn_high: int | float | None = None, warn_high_dynamic: DynamicValue | None = None, inclusive: bool = True)[source]

    A range comparison.

    Notes

    If the following inequality holds, the range comparison will succeed:

    @@ -180,12 +182,12 @@

    atef.check.RangeMethods

    -__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, low: int | float = 0, low_dynamic: DynamicValue | None = None, high: int | float = 0, high_dynamic: DynamicValue | None = None, warn_low: int | float | None = None, warn_low_dynamic: DynamicValue | None = None, warn_high: int | float | None = None, warn_high_dynamic: DynamicValue | None = None, inclusive: bool = True) None
    +__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: Severity = Severity.error, if_disconnected: Severity = Severity.error, low: int | float = 0, low_dynamic: DynamicValue | None = None, high: int | float = 0, high_dynamic: DynamicValue | None = None, warn_low: int | float | None = None, warn_low_dynamic: DynamicValue | None = None, warn_high: int | float | None = None, warn_high_dynamic: DynamicValue | None = None, inclusive: bool = True) None
    -compare(value: Any, identifier: str | None = None) Result
    +compare(value: Any, identifier: str | None = None) Result

    Compare the provided value using the comparator’s settings.

    Parameters:
    @@ -202,14 +204,14 @@

    atef.check.Range
    -describe() str[source]
    +describe() str[source]

    Human-readable description of the comparison operation itself.

    To be implemented by subclass.

    -get_data_for_signal(signal: Signal) Any
    +get_data_for_signal(signal: Signal) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -236,7 +238,7 @@

    atef.check.Range
    -async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any
    +async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -266,7 +268,7 @@

    atef.check.Range
    -async prepare(cache: DataCache | None = None) None[source]
    +async prepare(cache: DataCache | None = None) None[source]

    Prepare this comparison’s value data. If a value_dynamic is specified, prepare its data. Prepares the high/low limits along with dynamic high/low warning values if they exist

    @@ -283,19 +285,19 @@

    atef.check.RangeAttributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this comparison.

    -high: int | float = 0
    +high: int | float = 0

    The high end of the range, which must be >= low.

    -high_dynamic: DynamicValue | None = None
    +high_dynamic: DynamicValue | None = None
    @@ -307,13 +309,13 @@

    atef.check.Range
    -inclusive: bool = True
    +inclusive: bool = True

    Should the low and high values be included in the range?

    -invert: bool = False
    +invert: bool = False

    Invert the comparison’s result. Normally, a valid comparison - that is, one that evaluates to True - is considered successful. When invert is set, such a comparison would be considered a failure.

    @@ -321,18 +323,18 @@

    atef.check.Range
    -low: int | float = 0
    +low: int | float = 0

    The low end of the range, which must be <= high.

    -low_dynamic: DynamicValue | None = None
    +low_dynamic: DynamicValue | None = None
    -name: str | None = None
    +name: str | None = None
    @@ -348,7 +350,7 @@

    atef.check.Range
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the comparison will occur, where multiple samples may be acquired prior to a result being available.

    @@ -361,31 +363,31 @@

    atef.check.Range
    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default specified.

    -warn_high: int | float | None = None
    +warn_high: int | float | None = None

    The high end of the warning range, which must be >= warn_low.

    -warn_high_dynamic: DynamicValue | None = None
    +warn_high_dynamic: DynamicValue | None = None
    -warn_low: int | float | None = None
    +warn_low: int | float | None = None

    The low end of the warning range, which must be <= warn_high.

    -warn_low_dynamic: DynamicValue | None = None
    +warn_low_dynamic: DynamicValue | None = None

    diff --git a/master/generated/generated/atef.check.Value.html b/master/generated/generated/atef.check.Value.html index 4fc52b69..e4cff426 100644 --- a/master/generated/generated/atef.check.Value.html +++ b/master/generated/generated/atef.check.Value.html @@ -1,13 +1,15 @@ - + - + atef.check.Value — atef documentation - - - + + + + + @@ -113,7 +115,7 @@

    atef.check.Value

    -class atef.check.Value(value: str | int | bool | float, description: str = '', rtol: int | float | None = None, atol: int | float | None = None, severity: Severity = Severity.success)[source]
    +class atef.check.Value(value: str | int | bool | float, description: str = '', rtol: int | float | None = None, atol: int | float | None = None, severity: Severity = Severity.success)[source]

    A primitive (static) value with optional metadata.

    Attributes:
    @@ -137,37 +139,37 @@

    atef.check.ValueMethods

    -__init__(value: str | int | bool | float, description: str = '', rtol: int | float | None = None, atol: int | float | None = None, severity: Severity = Severity.success) None
    +__init__(value: str | int | bool | float, description: str = '', rtol: int | float | None = None, atol: int | float | None = None, severity: Severity = Severity.success) None
    -compare(value: str | int | bool | float) bool[source]
    +compare(value: str | int | bool | float) bool[source]

    Compare the provided value with this one, using tolerance settings.

    -get() str | int | bool | float[source]
    +get() str | int | bool | float[source]

    Get the value from this container.

    Attributes

    -atol: int | float | None = None
    +atol: int | float | None = None

    Absolute tolerance value.

    -description: str = ''
    +description: str = ''

    A description of what the value represents.

    -rtol: int | float | None = None
    +rtol: int | float | None = None

    Relative tolerance value.

    @@ -179,7 +181,7 @@

    atef.check.Value
    -value: str | int | bool | float
    +value: str | int | bool | float

    The value for comparison.

    diff --git a/master/generated/generated/atef.check.ValueRange.html b/master/generated/generated/atef.check.ValueRange.html index 0a80b041..0da61cc5 100644 --- a/master/generated/generated/atef.check.ValueRange.html +++ b/master/generated/generated/atef.check.ValueRange.html @@ -1,13 +1,15 @@ - + - + atef.check.ValueRange — atef documentation - - - + + + + + @@ -113,7 +115,7 @@

    atef.check.ValueRange

    -class atef.check.ValueRange(low: int | float, high: int | float, inclusive: bool = True, in_range: bool = True, description: str = '', severity: Severity = Severity.success)[source]
    +class atef.check.ValueRange(low: int | float, high: int | float, inclusive: bool = True, in_range: bool = True, description: str = '', severity: Severity = Severity.success)[source]

    A range of primitive values with optional metadata.

    Methods

    @@ -126,31 +128,31 @@

    atef.check.ValueRangeMethods

    -__init__(low: int | float, high: int | float, inclusive: bool = True, in_range: bool = True, description: str = '', severity: Severity = Severity.success) None
    +__init__(low: int | float, high: int | float, inclusive: bool = True, in_range: bool = True, description: str = '', severity: Severity = Severity.success) None
    -compare(value: int | float) bool[source]
    +compare(value: int | float) bool[source]

    Compare the provided value with this range.

    Attributes

    -description: str = ''
    +description: str = ''

    A description of what the value represents.

    -in_range: bool = True
    +in_range: bool = True

    Check if inside the range.

    -inclusive: bool = True
    +inclusive: bool = True

    Should the low and high values be included in the range?

    @@ -162,13 +164,13 @@

    atef.check.ValueRange
    -low: int | float
    +low: int | float

    The low value for comparison.

    -high: int | float
    +high: int | float

    The high value for comparison.

    diff --git a/master/generated/generated/atef.check.ValueSet.html b/master/generated/generated/atef.check.ValueSet.html index 101c71df..ad55a02f 100644 --- a/master/generated/generated/atef.check.ValueSet.html +++ b/master/generated/generated/atef.check.ValueSet.html @@ -1,13 +1,15 @@ - + - + atef.check.ValueSet — atef documentation - - - + + + + + @@ -151,12 +153,12 @@

    atef.check.ValueSetMethods

    -__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ~atef.reduce.ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: ~atef.enums.Severity = Severity.error, if_disconnected: ~atef.enums.Severity = Severity.error, values: ~typing.Sequence[~atef.check.Value] = <factory>, values_dynamic: ~typing.Sequence[~atef.check.DynamicValue | None] = <factory>) None
    +__init__(name: str | None = None, description: str | None = None, invert: bool = False, reduce_period: int | float | None = None, reduce_method: ~atef.reduce.ReduceMethod = ReduceMethod.average, string: bool | None = None, severity_on_failure: ~atef.enums.Severity = Severity.error, if_disconnected: ~atef.enums.Severity = Severity.error, values: ~typing.Sequence[~atef.check.Value] = <factory>, values_dynamic: ~typing.Sequence[~atef.check.DynamicValue | None] = <factory>) None
    -compare(value: Any, identifier: str | None = None) Result
    +compare(value: Any, identifier: str | None = None) Result

    Compare the provided value using the comparator’s settings.

    Parameters:
    @@ -173,13 +175,13 @@

    atef.check.ValueSet
    -describe() str[source]
    +describe() str[source]

    Describe the equality comparison in words.

    -get_data_for_signal(signal: Signal) Any
    +get_data_for_signal(signal: Signal) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -206,7 +208,7 @@

    atef.check.ValueSet
    -async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any
    +async get_data_for_signal_async(signal: Signal, *, executor: Executor | None = None) Any

    Get data for the given signal, according to the string and data reduction settings.

    @@ -236,7 +238,7 @@

    atef.check.ValueSet
    -async prepare(cache: DataCache | None = None) None[source]
    +async prepare(cache: DataCache | None = None) None[source]

    Prepare this comparison’s value data. If a value_dynamic is specified, prepare its data

    @@ -252,7 +254,7 @@

    atef.check.ValueSetAttributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this comparison.

    @@ -265,7 +267,7 @@

    atef.check.ValueSet
    -invert: bool = False
    +invert: bool = False

    Invert the comparison’s result. Normally, a valid comparison - that is, one that evaluates to True - is considered successful. When invert is set, such a comparison would be considered a failure.

    @@ -273,7 +275,7 @@

    atef.check.ValueSet
    -name: str | None = None
    +name: str | None = None

    @@ -284,7 +286,7 @@

    atef.check.ValueSet
    -reduce_period: int | float | None = None
    +reduce_period: int | float | None = None

    Period over which the comparison will occur, where multiple samples may be acquired prior to a result being available.

    @@ -297,19 +299,19 @@

    atef.check.ValueSet
    -string: bool | None = None
    +string: bool | None = None

    If applicable, request and compare string values rather than the default specified.

    -values: Sequence[Value]
    +values: Sequence[Value]
    -values_dynamic: Sequence[DynamicValue | None]
    +values_dynamic: Sequence[DynamicValue | None]

    diff --git a/master/generated/generated/atef.config.Configuration.html b/master/generated/generated/atef.config.Configuration.html index 649496b0..970f9657 100644 --- a/master/generated/generated/atef.config.Configuration.html +++ b/master/generated/generated/atef.config.Configuration.html @@ -1,13 +1,15 @@ - + - + atef.config.Configuration — atef documentation - - - + + + + + @@ -114,7 +116,7 @@

    atef.config.Configuration

    -class atef.config.Configuration(name: str | None = None, description: str | None = None, tags: List[str] | None = None)[source]
    +class atef.config.Configuration(name: str | None = None, description: str | None = None, tags: List[str] | None = None)[source]

    Configuration base class for shared settings between all configurations.

    Subclasses of Comparison will be serialized as a tagged union. This means that the subclass name will be used as an identifier for the generated @@ -129,27 +131,75 @@

    atef.config.ConfigurationMethods

    +

    + + + + + + + + +

    children()

    Return children of this group, as a tree view might expect

    replace_comparison(old_comp, new_comp[, ...])

    Replace old_comp with new_comp in this dataclass, wherever it is.

    + + + + + + +

    move_comparison

    +

    Methods

    -__init__(name: str | None = None, description: str | None = None, tags: List[str] | None = None) None
    +__init__(name: str | None = None, description: str | None = None, tags: List[str] | None = None) None +
    + +
    +
    +children() List[Any][source]
    +

    Return children of this group, as a tree view might expect

    +
    + +
    +
    +move_comparison(comp: Comparison, new_attr: str, comp_attrs: List[str]) None[source]
    +
    +
    +replace_comparison(old_comp: Comparison, new_comp: Comparison, comp_attrs: List[str] | None = None) None[source]
    +

    Replace old_comp with new_comp in this dataclass, wherever it is. +Looks through shared, then any of the attributes in comp_attrs

    +
    +
    Parameters:
    +
    +
    old_compComparison

    Comparison to be replaced

    +
    +
    new_compComparison

    Comparison to replace old_comp with

    +
    +
    comp_attrsOptional[List[str]], optional

    Attribute names in the dataclass to check, by default None

    +
    +
    +
    +
    +
    +

    Attributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this configuration.

    -name: str | None = None
    +name: str | None = None

    Name tied to this configuration.

    -tags: List[str] | None = None
    +tags: List[str] | None = None

    Tags tied to this configuration.

    diff --git a/master/generated/generated/atef.config.ConfigurationFile.html b/master/generated/generated/atef.config.ConfigurationFile.html index 4b59d43b..0e9a84df 100644 --- a/master/generated/generated/atef.config.ConfigurationFile.html +++ b/master/generated/generated/atef.config.ConfigurationFile.html @@ -1,13 +1,15 @@ - + - + atef.config.ConfigurationFile — atef documentation - - - + + + + + @@ -119,31 +121,34 @@

    atef.config.ConfigurationFileMethods

    - + + + + - + - + - + - + - + - + - + - + @@ -151,42 +156,48 @@

    atef.config.ConfigurationFileMethods

    -__init__(version: ~typing.Literal[0] = 0, root: ~atef.config.ConfigurationGroup = <factory>) None
    +__init__(version: ~typing.Literal[0] = 0, root: ~atef.config.ConfigurationGroup = <factory>) None
    +
    +
    +children() List[ConfigurationGroup][source]
    +

    Return children of this group, as a tree view might expect

    +
    +
    -classmethod from_filename(filename: str | Path) ConfigurationFile[source]
    +classmethod from_filename(filename: str | Path) ConfigurationFile[source]

    Load a configuration file from a file. Dispatches based on file type

    -classmethod from_json(filename: str | Path) ConfigurationFile[source]
    +classmethod from_json(filename: str | Path) ConfigurationFile[source]

    Load a configuration file from JSON.

    -classmethod from_yaml(filename: str | Path) ConfigurationFile[source]
    +classmethod from_yaml(filename: str | Path) ConfigurationFile[source]

    Load a configuration file from yaml.

    -get_by_device(name: str) Generator[DeviceConfiguration, None, None][source]
    +get_by_device(name: str) Generator[DeviceConfiguration, None, None][source]

    Get all configurations that match the device name.

    -get_by_pv(pvname: str) Generator[PVConfiguration, None, None][source]
    +get_by_pv(pvname: str) Generator[PVConfiguration, None, None][source]

    Get all configurations + IdentifierAndComparison that match the PV name.

    -get_by_tag(*tags: str) Generator[Configuration, None, None][source]
    +get_by_tag(*tags: str) Generator[Configuration, None, None][source]

    Get all configurations that match the tag name.

    @@ -204,7 +215,7 @@

    atef.config.ConfigurationFile
    -walk_configs() Generator[PVConfiguration | DeviceConfiguration | ToolConfiguration | ConfigurationGroup, None, None][source]
    +walk_configs() Generator[PVConfiguration | DeviceConfiguration | ToolConfiguration | ConfigurationGroup, None, None][source]

    Walk configurations defined in this file. This includes the “root” node.

    @@ -219,7 +230,7 @@

    atef.config.ConfigurationFileAttributes

    -version: Literal[0] = 0
    +version: Literal[0] = 0

    atef configuration file version information.

    diff --git a/master/generated/generated/atef.config.ConfigurationGroup.html b/master/generated/generated/atef.config.ConfigurationGroup.html index 0f7aeac1..c9aa3f2e 100644 --- a/master/generated/generated/atef.config.ConfigurationGroup.html +++ b/master/generated/generated/atef.config.ConfigurationGroup.html @@ -1,13 +1,15 @@ - + - + atef.config.ConfigurationGroup — atef documentation - - - + + + + + @@ -126,9 +128,22 @@

    atef.config.ConfigurationGroupMethods

    +

    from_filename(filename)

    children()

    Return children of this group, as a tree view might expect

    from_filename(filename)

    Load a configuration file from a file.

    from_json(filename)

    from_json(filename)

    Load a configuration file from JSON.

    from_yaml(filename)

    from_yaml(filename)

    Load a configuration file from yaml.

    get_by_device(name)

    get_by_device(name)

    Get all configurations that match the device name.

    get_by_pv(pvname)

    get_by_pv(pvname)

    Get all configurations + IdentifierAndComparison that match the PV name.

    get_by_tag(*tags)

    get_by_tag(*tags)

    Get all configurations that match the tag name.

    to_json()

    to_json()

    Dump this configuration file to a JSON-compatible dictionary.

    to_yaml()

    to_yaml()

    Dump this configuration file to yaml.

    walk_configs()

    walk_configs()

    Walk configurations defined in this file.

    + + + + + + + + +

    children()

    Return children of this group, as a tree view might expect

    replace_comparison(old_comp, new_comp[, ...])

    Replace old_comp with new_comp in this dataclass, wherever it is.

    - + + + + @@ -136,18 +151,48 @@

    atef.config.ConfigurationGroupMethods

    -__init__(name: str | None = None, description: str | None = None, tags: ~typing.List[str] | None = None, configs: ~typing.List[~atef.config.Configuration] = <factory>, values: ~typing.Dict[str, ~typing.Any] = <factory>, mode: ~atef.enums.GroupResultMode = GroupResultMode.all_) None
    +__init__(name: str | None = None, description: str | None = None, tags: ~typing.List[str] | None = None, configs: ~typing.List[~atef.config.Configuration] = <factory>, values: ~typing.Dict[str, ~typing.Any] = <factory>, mode: ~atef.enums.GroupResultMode = GroupResultMode.all_) None +
    + +
    +
    +children() List[Configuration][source]
    +

    Return children of this group, as a tree view might expect

    +
    + +
    +
    +move_comparison(comp: Comparison, new_attr: str, comp_attrs: List[str]) None
    +
    +
    +replace_comparison(old_comp: Comparison, new_comp: Comparison, comp_attrs: List[str] | None = None) None
    +

    Replace old_comp with new_comp in this dataclass, wherever it is. +Looks through shared, then any of the attributes in comp_attrs

    +
    +
    Parameters:
    +
    +
    old_compComparison

    Comparison to be replaced

    +
    +
    new_compComparison

    Comparison to replace old_comp with

    +
    +
    comp_attrsOptional[List[str]], optional

    Attribute names in the dataclass to check, by default None

    +
    +
    +
    +
    +
    +
    -walk_configs() Generator[PVConfiguration | DeviceConfiguration | ToolConfiguration | ConfigurationGroup, None, None][source]
    +walk_configs() Generator[PVConfiguration | DeviceConfiguration | ToolConfiguration | ConfigurationGroup, None, None][source]

    Attributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this configuration.

    @@ -159,25 +204,25 @@

    atef.config.ConfigurationGroup
    -name: str | None = None
    +name: str | None = None

    Name tied to this configuration.

    -tags: List[str] | None = None
    +tags: List[str] | None = None

    Tags tied to this configuration.

    -configs: List[Configuration]
    +configs: List[Configuration]

    Configurations underneath this group.

    -values: Dict[str, Any]
    +values: Dict[str, Any]

    Values that can be reused in comparisons underneath this group.

    diff --git a/master/generated/generated/atef.config.DeviceConfiguration.html b/master/generated/generated/atef.config.DeviceConfiguration.html index 4d694832..b910a92d 100644 --- a/master/generated/generated/atef.config.DeviceConfiguration.html +++ b/master/generated/generated/atef.config.DeviceConfiguration.html @@ -1,13 +1,15 @@ - + - + atef.config.DeviceConfiguration — atef documentation - - - + + + + + @@ -132,45 +134,94 @@

    atef.config.DeviceConfigurationMethods

    +

    walk_configs

    move_comparison

    walk_configs

    + + + + + + + + +

    children()

    Return children of this group, as a tree view might expect

    replace_comparison(old_comp, new_comp[, ...])

    Replace old_comp with new_comp in this dataclass, wherever it is.

    + + + + + + +

    move_comparison

    +

    Methods

    -__init__(name: str | None = None, description: str | None = None, tags: ~typing.List[str] | None = None, devices: ~typing.List[str] = <factory>, by_attr: ~typing.Dict[str, ~typing.List[~atef.check.Comparison]] = <factory>, shared: ~typing.List[~atef.check.Comparison] = <factory>) None
    +__init__(name: str | None = None, description: str | None = None, tags: ~typing.List[str] | None = None, devices: ~typing.List[str] = <factory>, by_attr: ~typing.Dict[str, ~typing.List[~atef.check.Comparison]] = <factory>, shared: ~typing.List[~atef.check.Comparison] = <factory>) None +
    + +
    +
    +children() List[Comparison][source]
    +

    Return children of this group, as a tree view might expect

    +
    + +
    +
    +move_comparison(comp: Comparison, new_attr: str, comp_attrs: List[str] | None = None) None[source]
    +
    +
    +replace_comparison(old_comp: Comparison, new_comp: Comparison, comp_attrs: List[str] | None = None) None[source]
    +

    Replace old_comp with new_comp in this dataclass, wherever it is. +Looks through shared, then any of the attributes in comp_attrs

    +
    +
    Parameters:
    +
    +
    old_compComparison

    Comparison to be replaced

    +
    +
    new_compComparison

    Comparison to replace old_comp with

    +
    +
    comp_attrsOptional[List[str]], optional

    Attribute names in the dataclass to check, by default [‘by_attr’] if +no value is provided

    +
    +
    +
    +
    +
    +

    Attributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this configuration.

    -name: str | None = None
    +name: str | None = None

    Name tied to this configuration.

    -tags: List[str] | None = None
    +tags: List[str] | None = None

    Tags tied to this configuration.

    -devices: List[str]
    +devices: List[str]

    The device names.

    -by_attr: Dict[str, List[Comparison]]
    +by_attr: Dict[str, List[Comparison]]

    Device attribute name to comparison list.

    -shared: List[Comparison]
    +shared: List[Comparison]

    Comparisons to be run on all identifiers in the by_attr dictionary.

    diff --git a/master/generated/generated/atef.config.FailedConfiguration.html b/master/generated/generated/atef.config.FailedConfiguration.html index a3f933d7..3e823655 100644 --- a/master/generated/generated/atef.config.FailedConfiguration.html +++ b/master/generated/generated/atef.config.FailedConfiguration.html @@ -1,13 +1,15 @@ - + - + atef.config.FailedConfiguration — atef documentation - - - + + + + + @@ -114,7 +116,7 @@

    atef.config.FailedConfiguration

    -class atef.config.FailedConfiguration(parent: PreparedGroup | None, config: PVConfiguration | DeviceConfiguration | ToolConfiguration | ConfigurationGroup, result: Result, exception: Exception | None = None)[source]
    +class atef.config.FailedConfiguration(parent: PreparedGroup | None, config: PVConfiguration | DeviceConfiguration | ToolConfiguration | ConfigurationGroup, result: Result, exception: Exception | None = None)[source]

    A Configuration that failed to be prepared for running.

    Attributes:
    @@ -126,19 +128,19 @@

    atef.config.FailedConfigurationMethods

    -__init__(parent: PreparedGroup | None, config: PVConfiguration | DeviceConfiguration | ToolConfiguration | ConfigurationGroup, result: Result, exception: Exception | None = None) None
    +__init__(parent: PreparedGroup | None, config: PVConfiguration | DeviceConfiguration | ToolConfiguration | ConfigurationGroup, result: Result, exception: Exception | None = None) None

    Attributes

    -exception: Exception | None = None
    +exception: Exception | None = None

    Exception that was caught, if available.

    -parent: PreparedGroup | None
    +parent: PreparedGroup | None

    The data cache to use for the preparation step.

    diff --git a/master/generated/generated/atef.config.PVConfiguration.html b/master/generated/generated/atef.config.PVConfiguration.html index 427f24cb..0bce3931 100644 --- a/master/generated/generated/atef.config.PVConfiguration.html +++ b/master/generated/generated/atef.config.PVConfiguration.html @@ -1,13 +1,15 @@ - + - + atef.config.PVConfiguration — atef documentation - - - + + + + + @@ -126,39 +128,88 @@

    atef.config.PVConfigurationMethods

    + + + + + + + + + +

    children()

    Return children of this group, as a tree view might expect

    replace_comparison(old_comp, new_comp[, ...])

    Replace old_comp with new_comp in this dataclass, wherever it is.

    + + + + + + +

    move_comparison

    +

    Methods

    -__init__(name: str | None = None, description: str | None = None, tags: ~typing.List[str] | None = None, by_pv: ~typing.Dict[str, ~typing.List[~atef.check.Comparison]] = <factory>, shared: ~typing.List[~atef.check.Comparison] = <factory>) None
    +__init__(name: str | None = None, description: str | None = None, tags: ~typing.List[str] | None = None, by_pv: ~typing.Dict[str, ~typing.List[~atef.check.Comparison]] = <factory>, shared: ~typing.List[~atef.check.Comparison] = <factory>) None +
    + +
    +
    +children() List[Comparison][source]
    +

    Return children of this group, as a tree view might expect

    +
    + +
    +
    +move_comparison(comp: Comparison, new_attr: str, comp_attrs: List[str] | None = None) None[source]
    +
    +
    +replace_comparison(old_comp: Comparison, new_comp: Comparison, comp_attrs: List[str] | None = None) None[source]
    +

    Replace old_comp with new_comp in this dataclass, wherever it is. +Looks through shared, then any of the attributes in comp_attrs

    +
    +
    Parameters:
    +
    +
    old_compComparison

    Comparison to be replaced

    +
    +
    new_compComparison

    Comparison to replace old_comp with

    +
    +
    comp_attrsOptional[List[str]], optional

    Attribute names in the dataclass to check, by default [‘by_pv’] if +no value is provided

    +
    +
    +
    +
    +
    +

    Attributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this configuration.

    -name: str | None = None
    +name: str | None = None

    Name tied to this configuration.

    -tags: List[str] | None = None
    +tags: List[str] | None = None

    Tags tied to this configuration.

    -by_pv: Dict[str, List[Comparison]]
    +by_pv: Dict[str, List[Comparison]]

    PV name to comparison list.

    -shared: List[Comparison]
    +shared: List[Comparison]

    Comparisons to be run on all PVs in the by_pv dictionary.

    diff --git a/master/generated/generated/atef.config.PreparedComparison.html b/master/generated/generated/atef.config.PreparedComparison.html index e8e2d6ed..492ec264 100644 --- a/master/generated/generated/atef.config.PreparedComparison.html +++ b/master/generated/generated/atef.config.PreparedComparison.html @@ -1,13 +1,15 @@ - + - + atef.config.PreparedComparison — atef documentation - - - + + + + + @@ -138,7 +140,7 @@

    atef.config.PreparedComparisonMethods

    -__init__(cache: ~atef.cache.DataCache, identifier: str = '', comparison: ~atef.check.Comparison = <factory>, name: str | None = None, parent: ~atef.config.PreparedGroup | None = None, result: ~atef.result.Result = <factory>) None
    +__init__(cache: ~atef.cache.DataCache, identifier: str = '', comparison: ~atef.check.Comparison = <factory>, name: str | None = None, parent: ~atef.config.PreparedGroup | None = None, result: ~atef.result.Result = <factory>) None
    @@ -157,7 +159,7 @@

    atef.config.PreparedComparison
    -async get_data_async() Any[source]
    +async get_data_async() Any[source]

    Get the data according to the comparison’s configuration.

    To be implemented in subclass.

    @@ -173,19 +175,19 @@

    atef.config.PreparedComparisonAttributes

    -identifier: str = ''
    +identifier: str = ''

    The identifier used for the comparison.

    -name: str | None = None
    +name: str | None = None

    The name of the associated configuration.

    -parent: PreparedGroup | None = None
    +parent: PreparedGroup | None = None

    The hierarhical parent of this comparison.

    diff --git a/master/generated/generated/atef.config.PreparedConfiguration.html b/master/generated/generated/atef.config.PreparedConfiguration.html index 31e54746..f92b23ba 100644 --- a/master/generated/generated/atef.config.PreparedConfiguration.html +++ b/master/generated/generated/atef.config.PreparedConfiguration.html @@ -1,13 +1,15 @@ - + - + atef.config.PreparedConfiguration — atef documentation - - - + + + + + @@ -142,7 +144,7 @@

    atef.config.PreparedConfigurationMethods

    -__init__(cache: ~atef.cache.DataCache, parent: ~atef.config.PreparedGroup | None = None, comparisons: ~typing.List[~atef.config.PreparedSignalComparison | ~atef.config.PreparedToolComparison] = <factory>, prepare_failures: ~typing.List[~atef.exceptions.PreparedComparisonException] = <factory>, combined_result: ~atef.result.Result = <factory>) None
    +__init__(cache: ~atef.cache.DataCache, parent: ~atef.config.PreparedGroup | None = None, comparisons: ~typing.List[~atef.config.PreparedSignalComparison | ~atef.config.PreparedToolComparison] = <factory>, prepare_failures: ~typing.List[~atef.exceptions.PreparedComparisonException] = <factory>, combined_result: ~atef.result.Result = <factory>) None
    @@ -153,7 +155,7 @@

    atef.config.PreparedConfiguration
    -classmethod from_config(config: PVConfiguration | DeviceConfiguration | ToolConfiguration | ConfigurationGroup, parent: PreparedGroup | None = None, *, client: Client | None = None, cache: DataCache | None = None) PreparedPVConfiguration | PreparedDeviceConfiguration | PreparedToolConfiguration | PreparedGroup | FailedConfiguration[source]
    +classmethod from_config(config: PVConfiguration | DeviceConfiguration | ToolConfiguration | ConfigurationGroup, parent: PreparedGroup | None = None, *, client: Client | None = None, cache: DataCache | None = None) PreparedPVConfiguration | PreparedDeviceConfiguration | PreparedToolConfiguration | PreparedGroup | FailedConfiguration[source]

    Prepare a Configuration for running.

    If available, provide an instantiated happi Client and a data cache. If unspecified, a configuration-derived happi Client will @@ -177,14 +179,14 @@

    atef.config.PreparedConfiguration
    -walk_comparisons() Generator[PreparedComparison, None, None][source]
    +walk_comparisons() Generator[PreparedComparison, None, None][source]

    Walk through the prepared comparisons.

    Attributes

    -parent: PreparedGroup | None = None
    +parent: PreparedGroup | None = None

    The hierarchical parent of this step.

    @@ -202,13 +204,13 @@

    atef.config.PreparedConfiguration
    -comparisons: List[PreparedSignalComparison | PreparedToolComparison]
    +comparisons: List[PreparedSignalComparison | PreparedToolComparison]

    The comparisons to be run on the given devices.

    -prepare_failures: List[PreparedComparisonException]
    +prepare_failures: List[PreparedComparisonException]

    The comparisons that failed to be prepared.

    diff --git a/master/generated/generated/atef.config.PreparedDeviceConfiguration.html b/master/generated/generated/atef.config.PreparedDeviceConfiguration.html index 78649de1..ce6243a5 100644 --- a/master/generated/generated/atef.config.PreparedDeviceConfiguration.html +++ b/master/generated/generated/atef.config.PreparedDeviceConfiguration.html @@ -1,13 +1,15 @@ - + - + atef.config.PreparedDeviceConfiguration — atef documentation - - - + + + + + @@ -144,7 +146,7 @@

    atef.config.PreparedDeviceConfigurationMethods

    -__init__(cache: ~atef.cache.DataCache, parent: ~atef.config.PreparedGroup | None = None, comparisons: ~typing.List[~atef.config.PreparedSignalComparison] = <factory>, prepare_failures: ~typing.List[~atef.exceptions.PreparedComparisonException] = <factory>, combined_result: ~atef.result.Result = <factory>, config: ~atef.config.DeviceConfiguration = <factory>, devices: ~typing.List[~ophyd.device.Device] = <factory>) None
    +__init__(cache: ~atef.cache.DataCache, parent: ~atef.config.PreparedGroup | None = None, comparisons: ~typing.List[~atef.config.PreparedSignalComparison] = <factory>, prepare_failures: ~typing.List[~atef.exceptions.PreparedComparisonException] = <factory>, combined_result: ~atef.result.Result = <factory>, config: ~atef.config.DeviceConfiguration = <factory>, devices: ~typing.List[~ophyd.device.Device] = <factory>) None
    @@ -155,7 +157,7 @@

    atef.config.PreparedDeviceConfiguration
    -classmethod from_config(config: DeviceConfiguration, client: Client | None = None, parent: PreparedGroup | None = None, cache: DataCache | None = None, additional_devices: List[Device] | None = None) PreparedDeviceConfiguration[source]
    +classmethod from_config(config: DeviceConfiguration, client: Client | None = None, parent: PreparedGroup | None = None, cache: DataCache | None = None, additional_devices: List[Device] | None = None) PreparedDeviceConfiguration[source]

    Prepare a DeviceConfiguration for running comparisons.

    Parameters:
    @@ -186,7 +188,7 @@

    atef.config.PreparedDeviceConfiguration
    -classmethod from_device(device: Device | Sequence[Device], by_attr: Dict[str, List[Comparison]], shared: List[Comparison] | None = None, parent: PreparedGroup | None = None, cache: DataCache | None = None, client: Client | None = None) PreparedDeviceConfiguration[source]
    +classmethod from_device(device: Device | Sequence[Device], by_attr: Dict[str, List[Comparison]], shared: List[Comparison] | None = None, parent: PreparedGroup | None = None, cache: DataCache | None = None, client: Client | None = None) PreparedDeviceConfiguration[source]

    Create a PreparedDeviceConfiguration given a device and some checks.

    Parameters:
    @@ -217,14 +219,14 @@

    atef.config.PreparedDeviceConfiguration
    -walk_comparisons() Generator[PreparedComparison, None, None]
    +walk_comparisons() Generator[PreparedComparison, None, None]

    Walk through the prepared comparisons.

    Attributes

    -parent: PreparedGroup | None = None
    +parent: PreparedGroup | None = None

    The hierarchical parent of this step.

    @@ -242,19 +244,19 @@

    atef.config.PreparedDeviceConfiguration
    -devices: List[Device]
    +devices: List[Device]

    The device the comparisons apply to.

    -comparisons: List[PreparedSignalComparison]
    +comparisons: List[PreparedSignalComparison]

    The comparisons to be run on the given devices.

    -prepare_failures: List[PreparedComparisonException]
    +prepare_failures: List[PreparedComparisonException]

    The comparisons that failed to be prepared.

    diff --git a/master/generated/generated/atef.config.PreparedFile.html b/master/generated/generated/atef.config.PreparedFile.html index 7d7d200a..17eecf5c 100644 --- a/master/generated/generated/atef.config.PreparedFile.html +++ b/master/generated/generated/atef.config.PreparedFile.html @@ -1,13 +1,15 @@ - + - + atef.config.PreparedFile — atef documentation - - - + + + + + @@ -118,19 +120,22 @@

    atef.config.PreparedFileMethods

    - + + + + - + - + - + - + @@ -138,9 +143,15 @@

    atef.config.PreparedFileMethods

    -__init__(cache: DataCache, file: ConfigurationFile, client: Client, root: PreparedGroup) None
    +__init__(cache: DataCache, file: ConfigurationFile, client: Client, root: PreparedGroup) None
    +
    +
    +children() List[PreparedGroup][source]
    +

    Return children of this group, as a tree view might expect

    +
    +
    async compare() Result[source]
    @@ -149,7 +160,7 @@

    atef.config.PreparedFile
    -async fill_cache(parallel: bool = True) List[Task] | None[source]
    +async fill_cache(parallel: bool = True) List[Task] | None[source]

    Fill the DataCache.

    Parameters:
    @@ -170,7 +181,7 @@

    atef.config.PreparedFile
    -classmethod from_config(file: ConfigurationFile, *, client: Client | None = None, cache: DataCache | None = None) PreparedFile[source]
    +classmethod from_config(file: ConfigurationFile, *, client: Client | None = None, cache: DataCache | None = None) PreparedFile[source]

    Prepare a ConfigurationFile for running.

    If available, provide an instantiated happi Client and a data cache. If unspecified, a configuration-derived happi Client will @@ -194,13 +205,13 @@

    atef.config.PreparedFile
    -walk_comparisons() Generator[PreparedComparison, None, None][source]
    +walk_comparisons() Generator[PreparedComparison, None, None][source]

    Walk through the prepared comparisons.

    -walk_groups() Generator[PreparedDeviceConfiguration | PreparedGroup | PreparedPVConfiguration | PreparedToolConfiguration, None, None][source]
    +walk_groups() Generator[PreparedDeviceConfiguration | PreparedGroup | PreparedPVConfiguration | PreparedToolConfiguration, None, None][source]

    Walk through the prepared groups.

    diff --git a/master/generated/generated/atef.config.PreparedGroup.html b/master/generated/generated/atef.config.PreparedGroup.html index dac78add..9ee77bf6 100644 --- a/master/generated/generated/atef.config.PreparedGroup.html +++ b/master/generated/generated/atef.config.PreparedGroup.html @@ -1,13 +1,15 @@ - + - + atef.config.PreparedGroup — atef documentation - - - + + + + + @@ -149,7 +151,7 @@

    atef.config.PreparedGroupMethods

    -__init__(cache: ~atef.cache.DataCache, parent: ~atef.config.PreparedGroup | ~atef.config.PreparedFile | None = None, comparisons: ~typing.List[~atef.config.PreparedSignalComparison | ~atef.config.PreparedToolComparison] = <factory>, prepare_failures: ~typing.List[~atef.config.FailedConfiguration] = <factory>, combined_result: ~atef.result.Result = <factory>, config: ~atef.config.ConfigurationGroup = <factory>, configs: ~typing.List[~atef.config.PreparedDeviceConfiguration | ~atef.config.PreparedGroup | ~atef.config.PreparedPVConfiguration | ~atef.config.PreparedToolConfiguration] = <factory>) None
    +__init__(cache: ~atef.cache.DataCache, parent: ~atef.config.PreparedGroup | ~atef.config.PreparedFile | None = None, comparisons: ~typing.List[~atef.config.PreparedSignalComparison | ~atef.config.PreparedToolComparison] = <factory>, prepare_failures: ~typing.List[~atef.config.FailedConfiguration] = <factory>, combined_result: ~atef.result.Result = <factory>, config: ~atef.config.ConfigurationGroup = <factory>, configs: ~typing.List[~atef.config.PreparedDeviceConfiguration | ~atef.config.PreparedGroup | ~atef.config.PreparedPVConfiguration | ~atef.config.PreparedToolConfiguration] = <factory>) None
    @@ -160,7 +162,7 @@

    atef.config.PreparedGroup
    -classmethod from_config(group: ConfigurationGroup, parent: PreparedGroup | PreparedFile | None = None, *, client: Client | None = None, cache: DataCache | None = None) PreparedGroup[source]
    +classmethod from_config(group: ConfigurationGroup, parent: PreparedGroup | PreparedFile | None = None, *, client: Client | None = None, cache: DataCache | None = None) PreparedGroup[source]

    Prepare a ConfigurationGroup for running.

    If available, provide an instantiated happi Client and a data cache. If unspecified, a configuration-derived happi Client will @@ -187,7 +189,7 @@

    atef.config.PreparedGroup
    -get_value_by_name(name: str) Any[source]
    +get_value_by_name(name: str) Any[source]

    Get a value defined in this group or in any ancestor. The first found is returned.

    @@ -214,20 +216,20 @@

    atef.config.PreparedGroup
    -walk_comparisons() Generator[PreparedComparison, None, None][source]
    +walk_comparisons() Generator[PreparedComparison, None, None][source]

    Walk through the prepared comparisons.

    -walk_groups() Generator[PreparedDeviceConfiguration | PreparedGroup | PreparedPVConfiguration | PreparedToolConfiguration, None, None][source]
    +walk_groups() Generator[PreparedDeviceConfiguration | PreparedGroup | PreparedPVConfiguration | PreparedToolConfiguration, None, None][source]

    Walk through the prepared groups.

    Attributes

    -parent: PreparedGroup | PreparedFile | None = None
    +parent: PreparedGroup | PreparedFile | None = None

    The hierarhical parent of this group. If this is the root group, ‘parent’ may be a PreparedFile.

    @@ -259,13 +261,13 @@

    atef.config.PreparedGroup
    -configs: List[PreparedDeviceConfiguration | PreparedGroup | PreparedPVConfiguration | PreparedToolConfiguration]
    +configs: List[PreparedDeviceConfiguration | PreparedGroup | PreparedPVConfiguration | PreparedToolConfiguration]

    The configs defined in the group.

    -prepare_failures: List[FailedConfiguration]
    +prepare_failures: List[FailedConfiguration]

    The configs that failed to prepare.

    @@ -277,7 +279,7 @@

    atef.config.PreparedGroup
    -comparisons: List[PreparedSignalComparison | PreparedToolComparison]
    +comparisons: List[PreparedSignalComparison | PreparedToolComparison]

    The comparisons to be run on the given devices.

    diff --git a/master/generated/generated/atef.config.PreparedPVConfiguration.html b/master/generated/generated/atef.config.PreparedPVConfiguration.html index bef97c95..5f5f1c10 100644 --- a/master/generated/generated/atef.config.PreparedPVConfiguration.html +++ b/master/generated/generated/atef.config.PreparedPVConfiguration.html @@ -1,13 +1,15 @@ - + - + atef.config.PreparedPVConfiguration — atef documentation - - - + + + + + @@ -144,7 +146,7 @@

    atef.config.PreparedPVConfigurationMethods

    -__init__(cache: ~atef.cache.DataCache, parent: ~atef.config.PreparedGroup | None = None, comparisons: ~typing.List[~atef.config.PreparedSignalComparison] = <factory>, prepare_failures: ~typing.List[~atef.exceptions.PreparedComparisonException] = <factory>, combined_result: ~atef.result.Result = <factory>, config: ~atef.config.PVConfiguration = <factory>) None
    +__init__(cache: ~atef.cache.DataCache, parent: ~atef.config.PreparedGroup | None = None, comparisons: ~typing.List[~atef.config.PreparedSignalComparison] = <factory>, prepare_failures: ~typing.List[~atef.exceptions.PreparedComparisonException] = <factory>, combined_result: ~atef.result.Result = <factory>, config: ~atef.config.PVConfiguration = <factory>) None
    @@ -155,7 +157,7 @@

    atef.config.PreparedPVConfiguration
    -classmethod from_config(config: PVConfiguration, parent: PreparedGroup | None = None, cache: DataCache | None = None) PreparedPVConfiguration[source]
    +classmethod from_config(config: PVConfiguration, parent: PreparedGroup | None = None, cache: DataCache | None = None) PreparedPVConfiguration[source]

    Prepare a PVConfiguration for running.

    Parameters:
    @@ -179,7 +181,7 @@

    atef.config.PreparedPVConfiguration
    -classmethod from_pvs(by_pv: Dict[str, List[Comparison]], shared: List[Comparison] | None = None, parent: PreparedGroup | None = None, cache: DataCache | None = None) PreparedPVConfiguration[source]
    +classmethod from_pvs(by_pv: Dict[str, List[Comparison]], shared: List[Comparison] | None = None, parent: PreparedGroup | None = None, cache: DataCache | None = None) PreparedPVConfiguration[source]

    Ready a set of PV checks without requiring an existing PVConfiguration.

    Parameters:
    @@ -205,14 +207,14 @@

    atef.config.PreparedPVConfiguration
    -walk_comparisons() Generator[PreparedComparison, None, None]
    +walk_comparisons() Generator[PreparedComparison, None, None]

    Walk through the prepared comparisons.

    Attributes

    -parent: PreparedGroup | None = None
    +parent: PreparedGroup | None = None

    The hierarchical parent of this step.

    @@ -230,13 +232,13 @@

    atef.config.PreparedPVConfiguration
    -comparisons: List[PreparedSignalComparison]
    +comparisons: List[PreparedSignalComparison]

    The comparisons to be run on the given devices.

    -prepare_failures: List[PreparedComparisonException]
    +prepare_failures: List[PreparedComparisonException]

    The comparisons to be run on the given devices.

    diff --git a/master/generated/generated/atef.config.PreparedSignalComparison.html b/master/generated/generated/atef.config.PreparedSignalComparison.html index 652b96e6..75c980a8 100644 --- a/master/generated/generated/atef.config.PreparedSignalComparison.html +++ b/master/generated/generated/atef.config.PreparedSignalComparison.html @@ -1,13 +1,15 @@ - + - + atef.config.PreparedSignalComparison — atef documentation - - - + + + + + @@ -169,7 +171,7 @@

    atef.config.PreparedSignalComparisonMethods

    -__init__(cache: ~atef.cache.DataCache, identifier: str = '', comparison: ~atef.check.Comparison = <factory>, name: str | None = None, parent: ~atef.config.PreparedDeviceConfiguration | ~atef.config.PreparedPVConfiguration | None = None, result: ~atef.result.Result = <factory>, device: ~ophyd.device.Device | None = None, signal: ~ophyd.signal.Signal | None = None, data: ~typing.Any | None = None) None
    +__init__(cache: ~atef.cache.DataCache, identifier: str = '', comparison: ~atef.check.Comparison = <factory>, name: str | None = None, parent: ~atef.config.PreparedDeviceConfiguration | ~atef.config.PreparedPVConfiguration | None = None, result: ~atef.result.Result = <factory>, device: ~ophyd.device.Device | None = None, signal: ~ophyd.signal.Signal | None = None, data: ~typing.Any | None = None) None
    @@ -188,7 +190,7 @@

    atef.config.PreparedSignalComparison
    -classmethod from_device(device: Device, attr: str, comparison: Comparison, name: str | None = None, parent: PreparedDeviceConfiguration | None = None, cache: DataCache | None = None) PreparedSignalComparison[source]
    +classmethod from_device(device: Device, attr: str, comparison: Comparison, name: str | None = None, parent: PreparedDeviceConfiguration | None = None, cache: DataCache | None = None) PreparedSignalComparison[source]

    Create one PreparedComparison from a device, attribute, and comparison.

    Parameters:
    @@ -218,7 +220,7 @@

    atef.config.PreparedSignalComparison
    -classmethod from_pvname(pvname: str, comparison: Comparison, name: str | None = None, parent: PreparedPVConfiguration | None = None, cache: DataCache | None = None) PreparedSignalComparison[source]
    +classmethod from_pvname(pvname: str, comparison: Comparison, name: str | None = None, parent: PreparedPVConfiguration | None = None, cache: DataCache | None = None) PreparedSignalComparison[source]

    Create one PreparedComparison from a PV name and comparison.

    Parameters:
    @@ -246,7 +248,7 @@

    atef.config.PreparedSignalComparison
    -classmethod from_signal(signal: Signal, comparison: Comparison, name: str | None = None, parent: PreparedPVConfiguration | None = None, cache: DataCache | None = None) PreparedSignalComparison[source]
    +classmethod from_signal(signal: Signal, comparison: Comparison, name: str | None = None, parent: PreparedPVConfiguration | None = None, cache: DataCache | None = None) PreparedSignalComparison[source]

    Create a PreparedSignalComparison from a signal directly

    Parameters:
    @@ -274,7 +276,7 @@

    atef.config.PreparedSignalComparison
    -async get_data_async() Any[source]
    +async get_data_async() Any[source]

    Get the provided signal’s data from the cache according to the reduction configuration.

    @@ -296,37 +298,37 @@

    atef.config.PreparedSignalComparisonAttributes

    -data: Any | None = None
    +data: Any | None = None

    The value from the signal the comparison is to be run on.

    -device: Device | None = None
    +device: Device | None = None

    The device the comparison applies to, if applicable.

    -identifier: str = ''
    +identifier: str = ''

    The identifier used for the comparison.

    -name: str | None = None
    +name: str | None = None

    The name of the associated configuration.

    -parent: PreparedDeviceConfiguration | PreparedPVConfiguration | None = None
    +parent: PreparedDeviceConfiguration | PreparedPVConfiguration | None = None

    The hierarhical parent of this comparison.

    -signal: Signal | None = None
    +signal: Signal | None = None

    The signal the comparison is to be run on.

    diff --git a/master/generated/generated/atef.config.PreparedToolComparison.html b/master/generated/generated/atef.config.PreparedToolComparison.html index 450aa40e..f2b333fe 100644 --- a/master/generated/generated/atef.config.PreparedToolComparison.html +++ b/master/generated/generated/atef.config.PreparedToolComparison.html @@ -1,13 +1,15 @@ - + - + atef.config.PreparedToolComparison — atef documentation - - - + + + + + @@ -156,7 +158,7 @@

    atef.config.PreparedToolComparisonMethods

    -__init__(cache: ~atef.cache.DataCache, identifier: str = '', comparison: ~atef.check.Comparison = <factory>, name: str | None = None, parent: ~atef.config.PreparedGroup | None = None, result: ~atef.result.Result = <factory>, tool: ~atef.tools.Tool = <factory>) None
    +__init__(cache: ~atef.cache.DataCache, identifier: str = '', comparison: ~atef.check.Comparison = <factory>, name: str | None = None, parent: ~atef.config.PreparedGroup | None = None, result: ~atef.result.Result = <factory>, tool: ~atef.tools.Tool = <factory>) None
    @@ -175,7 +177,7 @@

    atef.config.PreparedToolComparison
    -classmethod from_tool(tool: Tool, result_key: str, comparison: Comparison, name: str | None = None, parent: PreparedToolConfiguration | None = None, cache: DataCache | None = None) PreparedToolComparison[source]
    +classmethod from_tool(tool: Tool, result_key: str, comparison: Comparison, name: str | None = None, parent: PreparedToolConfiguration | None = None, cache: DataCache | None = None) PreparedToolComparison[source]

    Prepare a tool-based comparison for execution.

    Parameters:
    @@ -204,7 +206,7 @@

    atef.config.PreparedToolComparison
    -async get_data_async() Any[source]
    +async get_data_async() Any[source]

    Get the provided tool’s result data from the cache.

    Returns:
    @@ -219,19 +221,19 @@

    atef.config.PreparedToolComparisonAttributes

    -identifier: str = ''
    +identifier: str = ''

    The identifier used for the comparison.

    -name: str | None = None
    +name: str | None = None

    The name of the associated configuration.

    -parent: PreparedGroup | None = None
    +parent: PreparedGroup | None = None

    The hierarhical parent of this comparison.

    diff --git a/master/generated/generated/atef.config.PreparedToolConfiguration.html b/master/generated/generated/atef.config.PreparedToolConfiguration.html index e7afceeb..6ad361c7 100644 --- a/master/generated/generated/atef.config.PreparedToolConfiguration.html +++ b/master/generated/generated/atef.config.PreparedToolConfiguration.html @@ -1,13 +1,15 @@ - + - + atef.config.PreparedToolConfiguration — atef documentation - - - + + + + + @@ -144,7 +146,7 @@

    atef.config.PreparedToolConfigurationMethods

    -__init__(cache: ~atef.cache.DataCache, parent: ~atef.config.PreparedGroup | None = None, comparisons: ~typing.List[~atef.config.PreparedSignalComparison] = <factory>, prepare_failures: ~typing.List[~atef.exceptions.PreparedComparisonException] = <factory>, combined_result: ~atef.result.Result = <factory>, config: ~atef.config.ToolConfiguration = <factory>) None
    +__init__(cache: ~atef.cache.DataCache, parent: ~atef.config.PreparedGroup | None = None, comparisons: ~typing.List[~atef.config.PreparedSignalComparison] = <factory>, prepare_failures: ~typing.List[~atef.exceptions.PreparedComparisonException] = <factory>, combined_result: ~atef.result.Result = <factory>, config: ~atef.config.ToolConfiguration = <factory>) None
    @@ -155,7 +157,7 @@

    atef.config.PreparedToolConfiguration
    -classmethod from_config(config: ToolConfiguration, parent: PreparedGroup | None = None, cache: DataCache | None = None) PreparedToolConfiguration[source]
    +classmethod from_config(config: ToolConfiguration, parent: PreparedGroup | None = None, cache: DataCache | None = None) PreparedToolConfiguration[source]

    Prepare a ToolConfiguration for running.

    Parameters:
    @@ -179,7 +181,7 @@

    atef.config.PreparedToolConfiguration
    -classmethod from_tool(tool: Tool, by_attr: Dict[str, List[Comparison]], shared: List[Comparison] | None = None, parent: PreparedGroup | None = None, cache: DataCache | None = None) PreparedToolConfiguration[source]
    +classmethod from_tool(tool: Tool, by_attr: Dict[str, List[Comparison]], shared: List[Comparison] | None = None, parent: PreparedGroup | None = None, cache: DataCache | None = None) PreparedToolConfiguration[source]

    Prepare a Tool for running tests without an associated configuration.

    Parameters:
    @@ -208,14 +210,14 @@

    atef.config.PreparedToolConfiguration
    -walk_comparisons() Generator[PreparedComparison, None, None]
    +walk_comparisons() Generator[PreparedComparison, None, None]

    Walk through the prepared comparisons.

    Attributes

    -parent: PreparedGroup | None = None
    +parent: PreparedGroup | None = None

    The hierarchical parent of this step.

    @@ -233,13 +235,13 @@

    atef.config.PreparedToolConfiguration
    -comparisons: List[PreparedSignalComparison]
    +comparisons: List[PreparedSignalComparison]

    The comparisons to be run on the given devices.

    -prepare_failures: List[PreparedComparisonException]
    +prepare_failures: List[PreparedComparisonException]

    The comparisons that failed to be prepared.

    diff --git a/master/generated/generated/atef.config.ToolConfiguration.html b/master/generated/generated/atef.config.ToolConfiguration.html index ec72e868..db60d9d3 100644 --- a/master/generated/generated/atef.config.ToolConfiguration.html +++ b/master/generated/generated/atef.config.ToolConfiguration.html @@ -1,13 +1,15 @@ - + - + atef.config.ToolConfiguration — atef documentation - - - + + + + + @@ -128,27 +130,76 @@

    atef.config.ToolConfigurationMethods

    +

    compare()

    children()

    Return children of this group, as a tree view might expect

    compare()

    Run all comparisons and return a combined result.

    fill_cache([parallel])

    fill_cache([parallel])

    Fill the DataCache.

    from_config(file, *[, client, cache])

    from_config(file, *[, client, cache])

    Prepare a ConfigurationFile for running.

    walk_comparisons()

    walk_comparisons()

    Walk through the prepared comparisons.

    walk_groups()

    walk_groups()

    Walk through the prepared groups.

    + + + + + + + + +

    children()

    Return children of this group, as a tree view might expect

    replace_comparison(old_comp, new_comp[, ...])

    Replace old_comp with new_comp in this dataclass, wherever it is.

    + + + + + + +

    move_comparison

    +

    Methods

    -__init__(name: str | None = None, description: str | None = None, tags: ~typing.List[str] | None = None, tool: ~atef.tools.Tool = <factory>, by_attr: ~typing.Dict[str, ~typing.List[~atef.check.Comparison]] = <factory>, shared: ~typing.List[~atef.check.Comparison] = <factory>) None
    +__init__(name: str | None = None, description: str | None = None, tags: ~typing.List[str] | None = None, tool: ~atef.tools.Tool = <factory>, by_attr: ~typing.Dict[str, ~typing.List[~atef.check.Comparison]] = <factory>, shared: ~typing.List[~atef.check.Comparison] = <factory>) None +
    + +
    +
    +children() List[Comparison][source]
    +

    Return children of this group, as a tree view might expect

    +
    + +
    +
    +move_comparison(comp: Comparison, new_attr: str, comp_attrs: List[str] | None = None) None[source]
    +
    +
    +replace_comparison(old_comp: Comparison, new_comp: Comparison, comp_attrs: List[str] | None = None) None[source]
    +

    Replace old_comp with new_comp in this dataclass, wherever it is. +Looks through shared, then any of the attributes in comp_attrs

    +
    +
    Parameters:
    +
    +
    old_compComparison

    Comparison to be replaced

    +
    +
    new_compComparison

    Comparison to replace old_comp with

    +
    +
    comp_attrsOptional[List[str]], optional

    Attribute names in the dataclass to check, by default [‘by_attr’] if +no value is provided

    +
    +
    +
    +
    +
    +

    Attributes

    -description: str | None = None
    +description: str | None = None

    Description tied to this configuration.

    -name: str | None = None
    +name: str | None = None

    Name tied to this configuration.

    -tags: List[str] | None = None
    +tags: List[str] | None = None

    Tags tied to this configuration.

    @@ -161,13 +212,13 @@

    atef.config.ToolConfiguration
    -by_attr: Dict[str, List[Comparison]]
    +by_attr: Dict[str, List[Comparison]]

    Result attribute name to comparison list.

    -shared: List[Comparison]
    +shared: List[Comparison]

    Comparisons to be run on all identifiers in the by_attr dictionary.

    diff --git a/master/generated/generated/atef.config.get_result_from_comparison.html b/master/generated/generated/atef.config.get_result_from_comparison.html index 3dd91c79..00577aa2 100644 --- a/master/generated/generated/atef.config.get_result_from_comparison.html +++ b/master/generated/generated/atef.config.get_result_from_comparison.html @@ -1,13 +1,15 @@ - + - + atef.config.get_result_from_comparison — atef documentation - - - + + + + + @@ -114,7 +116,7 @@

    atef.config.get_result_from_comparison

    -atef.config.get_result_from_comparison(item: PreparedComparison | Exception | None) Tuple[PreparedComparison | None, Result][source]
    +atef.config.get_result_from_comparison(item: PreparedComparison | Exception | None) Tuple[PreparedComparison | None, Result][source]

    Get a Result, if available, from the provided arguments.

    In the case of an exception (or None/internal error), create one.

    diff --git a/master/generated/generated/atef.config.run_passive_step.html b/master/generated/generated/atef.config.run_passive_step.html index daef1633..d5429f83 100644 --- a/master/generated/generated/atef.config.run_passive_step.html +++ b/master/generated/generated/atef.config.run_passive_step.html @@ -1,13 +1,15 @@ - + - + atef.config.run_passive_step — atef documentation - - - + + + + + diff --git a/master/generated/generated/atef.procedure.CodeStep.html b/master/generated/generated/atef.procedure.CodeStep.html index 81eb74d6..b5edf809 100644 --- a/master/generated/generated/atef.procedure.CodeStep.html +++ b/master/generated/generated/atef.procedure.CodeStep.html @@ -1,13 +1,15 @@ - + - + atef.procedure.CodeStep — atef documentation - - - + + + + + @@ -22,7 +24,7 @@ - + @@ -54,7 +56,6 @@
  • atef.procedure.create_prepared_comparison
  • atef.procedure.get_RE_data
  • atef.procedure.get_bs_state
  • -
  • atef.procedure.walk_steps
  • atef.procedure.CodeStep
  • atef.procedure.ComparisonToPlanData
  • atef.procedure.ComparisonToTarget
  • @@ -147,61 +148,70 @@

    atef.procedure.CodeStep

    allow_verify()

    Whether or not the step can be verified.

    +

    children()

    +

    Return children of this group, as a tree view might expect

    +

    Methods

    -__init__(name: str | None = None, description: str | None = None, parent: ~atef.procedure.ProcedureGroup | None = None, verify_required: bool = True, step_success_required: bool = True, source_code: str = '', arguments: ~typing.Dict[~typing.Any, ~typing.Any] = <factory>) None
    +__init__(name: str | None = None, description: str | None = None, parent: ~atef.procedure.ProcedureGroup | None = None, verify_required: bool = True, step_success_required: bool = True, source_code: str = '', arguments: ~typing.Dict[~typing.Any, ~typing.Any] = <factory>) None
    -allow_verify() bool
    +allow_verify() bool

    Whether or not the step can be verified. To be further expanded or overloaded in subclass,

    +
    +
    +children() List[Any]
    +

    Return children of this group, as a tree view might expect

    +
    +

    Attributes

    -description: str | None = None
    +description: str | None = None

    A description of narrative explanation of setup steps, what is to happen, etc.

    -name: str | None = None
    +name: str | None = None

    The title of the procedure

    -parent: ProcedureGroup | None = None
    +parent: ProcedureGroup | None = None

    The hierarchical parent of this step.

    -source_code: str = ''
    +source_code: str = ''

    The source code to execute.

    -step_success_required: bool = True
    +step_success_required: bool = True

    step success requirements, does the step need to complete?

    -verify_required: bool = True
    +verify_required: bool = True

    verification requirements, is human verification required?

    -arguments: Dict[Any, Any]
    +arguments: Dict[Any, Any]

    Arguments to pass into the code.

    @@ -213,7 +223,7 @@

    atef.procedure.CodeStep


    diff --git a/master/generated/generated/atef.procedure.walk_steps.html b/master/generated/generated/atef.procedure.walk_steps.html deleted file mode 100644 index 086f6834..00000000 --- a/master/generated/generated/atef.procedure.walk_steps.html +++ /dev/null @@ -1,183 +0,0 @@ - - - - - - - atef.procedure.walk_steps — atef documentation - - - - - - - - - - - - - - - - - - - -
    - - -
    - -
    -
    -
    - -
    -
    -
    -
    - -
    -

    atef.procedure.walk_steps

    -
    -
    -atef.procedure.walk_steps(step: ProcedureStep) Generator[ProcedureStep, None, None][source]
    -

    Yield ProedureSteps in step, depth-first.

    -
    -
    Parameters:
    -
    -
    stepProcedureStep

    Step to yield ProcedureSteps from

    -
    -
    -
    -
    Yields:
    -
    -
    Generator[ProcedureStep, None, None]
    -
    -
    -
    -
    - -
    - - -
    -
    - -
    -
    -
    -
    - - - - \ No newline at end of file diff --git a/master/generated/generated/atef.tools.Ping.html b/master/generated/generated/atef.tools.Ping.html index 00425388..eeccad83 100644 --- a/master/generated/generated/atef.tools.Ping.html +++ b/master/generated/generated/atef.tools.Ping.html @@ -1,13 +1,15 @@ - + - + atef.tools.Ping — atef documentation - - - + + + + + @@ -120,12 +122,12 @@

    atef.tools.PingMethods

    -__init__(hosts: ~typing.List[str] = <factory>, count: int = 3, encoding: str = 'utf-8') None
    +__init__(hosts: ~typing.List[str] = <factory>, count: int = 3, encoding: str = 'utf-8') None
    -check_result_key(key: str) None
    +check_result_key(key: str) None

    Check that the result key is valid for the given tool.

    For example, PingResult keys can include "min_time", "max_time", and so on.

    @@ -147,7 +149,7 @@

    atef.tools.Ping
    -async ping(host: str) PingResult[source]
    +async ping(host: str) PingResult[source]

    Ping the given host.

    Parameters:
    @@ -180,19 +182,19 @@

    atef.tools.PingAttributes

    -count: int = 3
    +count: int = 3

    The number of ping attempts to make per host.

    -encoding: str = 'utf-8'
    +encoding: str = 'utf-8'

    The assumed output encoding of the ‘ping’ command.

    -hosts: List[str]
    +hosts: List[str]

    The hosts to ping.

    diff --git a/master/generated/generated/atef.tools.PingResult.html b/master/generated/generated/atef.tools.PingResult.html index b6c03e96..d37e7ef8 100644 --- a/master/generated/generated/atef.tools.PingResult.html +++ b/master/generated/generated/atef.tools.PingResult.html @@ -1,13 +1,15 @@ - + - + atef.tools.PingResult — atef documentation - - - + + + + + @@ -117,12 +119,12 @@

    atef.tools.PingResultMethods

    -__init__(result: ~atef.result.Result, alive: ~typing.List[str] = <factory>, num_alive: int = 0, unresponsive: ~typing.List[str] = <factory>, num_unresponsive: int = 0, times: ~typing.Dict[str, float] = <factory>, min_time: float = 0.0, max_time: float = 0.0) None
    +__init__(result: ~atef.result.Result, alive: ~typing.List[str] = <factory>, num_alive: int = 0, unresponsive: ~typing.List[str] = <factory>, num_unresponsive: int = 0, times: ~typing.Dict[str, float] = <factory>, min_time: float = 0.0, max_time: float = 0.0) None
    -add_host_result(host: str, result: PingResult | Exception, *, failure_time: float = 100.0) None[source]
    +add_host_result(host: str, result: PingResult | Exception, *, failure_time: float = 100.0) None[source]

    Add a new per-host result to this aggregate one.

    Parameters:
    @@ -141,7 +143,7 @@

    atef.tools.PingResult
    -classmethod from_output(host: str, output: str, unresponsive_time: float = 100.0) PingResult[source]
    +classmethod from_output(host: str, output: str, unresponsive_time: float = 100.0) PingResult[source]

    Fill a PingResult from the results of the ping program.

    Parameters:
    @@ -165,43 +167,43 @@

    atef.tools.PingResultAttributes

    -max_time: float = 0.0
    +max_time: float = 0.0

    Maximum time in seconds from times.

    -min_time: float = 0.0
    +min_time: float = 0.0

    Minimum time in seconds from times.

    -num_alive: int = 0
    +num_alive: int = 0

    Number of hosts that are alive.

    -num_unresponsive: int = 0
    +num_unresponsive: int = 0

    Number of hosts that are unresponsive.

    -alive: List[str]
    +alive: List[str]

    Host(s) that are alive

    -unresponsive: List[str]
    +unresponsive: List[str]

    Host(s) that are unresponsvie

    -times: Dict[str, float]
    +times: Dict[str, float]

    Host name to time taken.

    diff --git a/master/generated/generated/atef.tools.Tool.html b/master/generated/generated/atef.tools.Tool.html index 0e258d31..3cdf4fa3 100644 --- a/master/generated/generated/atef.tools.Tool.html +++ b/master/generated/generated/atef.tools.Tool.html @@ -1,13 +1,15 @@ - + - + atef.tools.Tool — atef documentation - - - + + + + + @@ -121,12 +123,12 @@

    atef.tools.ToolMethods

    -__init__() None
    +__init__() None
    -check_result_key(key: str) None[source]
    +check_result_key(key: str) None[source]

    Check that the result key is valid for the given tool.

    For example, PingResult keys can include "min_time", "max_time", and so on.

    diff --git a/master/generated/generated/atef.tools.ToolResult.html b/master/generated/generated/atef.tools.ToolResult.html index a3c2863d..6bcbb217 100644 --- a/master/generated/generated/atef.tools.ToolResult.html +++ b/master/generated/generated/atef.tools.ToolResult.html @@ -1,13 +1,15 @@ - + - + atef.tools.ToolResult — atef documentation - - - + + + + + @@ -106,7 +108,7 @@

    atef.tools.ToolResultMethods

    -__init__(result: Result) None
    +__init__(result: Result) None

    Attributes

    diff --git a/master/generated/generated/atef.tools.get_result_value_by_key.html b/master/generated/generated/atef.tools.get_result_value_by_key.html index 62793318..d8b2a6d1 100644 --- a/master/generated/generated/atef.tools.get_result_value_by_key.html +++ b/master/generated/generated/atef.tools.get_result_value_by_key.html @@ -1,13 +1,15 @@ - + - + atef.tools.get_result_value_by_key — atef documentation - - - + + + + + @@ -101,7 +103,7 @@

    atef.tools.get_result_value_by_key

    -atef.tools.get_result_value_by_key(result: ToolResult, key: str) Any[source]
    +atef.tools.get_result_value_by_key(result: ToolResult, key: str) Any[source]

    Retrieve the value indicated by the dotted key name from the ToolResult.

    Supports attributes of generic types, items (for mappings as in dictionaries), and iterables (by numeric index).

    diff --git a/master/genindex.html b/master/genindex.html index 17c24bda..7958d72f 100644 --- a/master/genindex.html +++ b/master/genindex.html @@ -1,12 +1,14 @@ - + Index — atef documentation - - - + + + + + @@ -388,6 +390,46 @@

    C

  • checks (atef.procedure.PlanStep attribute)
  • +
  • children() (atef.check.AnyComparison method) + +
  • client (atef.config.PreparedFile attribute)
  • CodeStep (class in atef.procedure) @@ -1052,8 +1094,6 @@

    M

  • mode (atef.config.ConfigurationGroup attribute)
  • - - + + @@ -1501,6 +1555,26 @@

    R

  • (atef.procedure.PlanData attribute)
  • +
  • replace_comparison() (atef.check.AnyComparison method) + +
  • +
  • replace_step() (atef.procedure.ProcedureGroup method) +
  • + + - - -
  • Upcoming Changes diff --git a/master/objects.inv b/master/objects.inv index 16e6a775020ecfd31da732de3f662a833855ab30..9616680e673a5d8ce988b7ddd1b2498f11ffaaef 100644 GIT binary patch delta 5861 zcmVdNE2l1yc7NN*v4!{i6^QWN_ShOvIKtk^ddxV&o>54;+9J>-*bR#WIC!)~ z|9ay^5+oj#c}@cKW=2g^oi9mLjg&+^NKdhg_^;hq3{M$a+6uZ#-llK(HVH)J& z=8wU-zz@&)e)or_$ix4653A0h*YWX9vOffAlqGScwB7|-=6}8F2n|YJ)oTD#%0Kvi z6i2!5*TIJQbF#5#te>OZCJp0R8TCKI`4QDWvkDXBc^W+yd1z1CgxR{(p7q-_j6)tZ z&1=SQ^AzU(CddPSo1}ggJ;lLp&M!8A^MmXdujhnDTYnQ}>m-iDbtyITFB-)!VVchj ziGzJOGvbhjbANZ*G~5*H&~N4E{W>k{5T?-rtivuSVe2cCnCn-}!m`0d`O!~ee;Y)* zBAvTwWTkTaGza8Muq#5Hqt;a>^-v!bC}Ykh5C&aFtPFaKK%aLM3O_xw;dglvmYf3u^}A-up=D+uq7RUu_uTG*_4jN z+m(`s*p?1adkknXP7*Zx=eYVI=l$gBfVs%U5o6J+Bc>u}kcL8m^kyQ*aYmxxASNQ0 z2Mk0m4u6=3T%0iuH3c#aIfXY21q(3?hkTpdwbM=AYEE4!jq3o{erKUhVOHP4$ zm0TX_Q7-l0i(r>&`chqCLJR9dPSqe!cG|D*6n_OSG2EiarG-=#xukGwla~?@Kz|A0 z#&DMo0)6C?!7YoVSEndq2~JTeS4-8g9PL)0BZ2VO7Xk)kDo$C*Ok}Fybk>CW&uLix zl`4FytudtrIh8~guoa0cVk~l9#9Ackq`80yy}d|4oWY0)h{Z^R0h5u)0yZO&WsF9l z4}V#WM4$Hs5e0Dui7?^~VqMT31p2?FwT0+iqOB;2j5vhf-Y z2s@7gYvMy19^py~4DL}12<})4h=G6UX^fjGXlCA~VG>TKz!1KtrEo4dMf)W<93t%$ z`K6LW6EZ-#`X+pd%BBot0y#rD4KEi4Qh$qFoJlEa3Y1FZl#^4I+Ve4xlp&W#QiVhP zpJAq%iLZ)}>OkFeS`iqNP75OAPl+Nj)|}QQ$CYYv{TOl@!HpLk+Q`^&S`x_q(}F-^ zo)%=1u}B$8z|+e7xXq!DB;099B*_XC!Liq*vVQKNQ_H0aXLG4OnA@fDXr|Zcqknl{ zN-=N&0)=^k6v#V-n1uR;6ac!1R37vasXXf}N)GHZQjU%5h-s(?Ndc%Msq_hdn&SML zecfu%oEX~6fS(un8jv=P6P5=gHjFnXVp!Z?o;QxJcXiUZyzl?HrG zD$RJBk^%Xdm@!`>;%!n)LM&1$j(^yrN*lDsX~xGOe$q^q*X75RATxAn0#4
      x+{ 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 delta 5560 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 GC?^;6=EKwg diff --git a/master/py-modindex.html b/master/py-modindex.html index a11495f6..7551e943 100644 --- a/master/py-modindex.html +++ b/master/py-modindex.html @@ -1,12 +1,14 @@ - + Python Module Index — atef documentation - - - + + + + + diff --git a/master/releases.html b/master/releases.html index 34932ca1..5a397ed3 100644 --- a/master/releases.html +++ b/master/releases.html @@ -1,13 +1,15 @@ - + - + Release History — atef documentation - - - + + + + + diff --git a/master/search.html b/master/search.html index 5917ea82..c9ced072 100644 --- a/master/search.html +++ b/master/search.html @@ -1,12 +1,14 @@ - + Search — atef documentation - - - + + + + + @@ -21,6 +23,7 @@ + @@ -47,7 +50,13 @@

  • diff --git a/master/upcoming_release_notes/213-mnt_bug_misc_fixes.html b/master/upcoming_release_notes/213-mnt_bug_misc_fixes.html new file mode 100644 index 00000000..13d9786b --- /dev/null +++ b/master/upcoming_release_notes/213-mnt_bug_misc_fixes.html @@ -0,0 +1,169 @@ + + + + + + + 213 mnt_bug_misc_fixes — atef documentation + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    213 mnt_bug_misc_fixes

    +
    +

    API Breaks

    +
      +
    • N/A

    • +
    +
    +
    +

    Features

    +
      +
    • N/A

    • +
    +
    +
    +

    Bugfixes

    +
      +
    • RangeWidget’s visualizations update a bit more frequently, and also the label text actually updates. Closes #212

    • +
    • Adds a menu option to open the welcome tab, since people like it. Closes #201

    • +
    • Properly shows an error message box when a file can’t be opened. Closes #202

    • +
    • Removes child AtefItem from a ProcedureStep when it’s changed from the specific-step-combobox. Closes #195

    • +
    • Allow tolerances to be None in Equals comparison. Modifies the line-edit setup to allow null values ('', None) when casting the line edit value. Closes #128

    • +
    +
    +
    +

    Maintenance

    +
      +
    • N/A

    • +
    +
    +
    +

    Contributors

    +
      +
    • tangkong

    • +
    +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/master/upcoming_release_notes/214-tst_qt_teardown.html b/master/upcoming_release_notes/214-tst_qt_teardown.html new file mode 100644 index 00000000..fcccfde0 --- /dev/null +++ b/master/upcoming_release_notes/214-tst_qt_teardown.html @@ -0,0 +1,165 @@ + + + + + + + 214 tst_qt_teardown — atef documentation + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    214 tst_qt_teardown

    +
    +

    API Breaks

    +
      +
    • N/A

    • +
    +
    +
    +

    Features

    +
      +
    • N/A

    • +
    +
    +
    +

    Bugfixes

    +
      +
    • N/A

    • +
    +
    +
    +

    Maintenance

    +
      +
    • Replaces use of functools.partial with WeakPartialMethodSlot in qt slots, cleaning up intermittent test suite failures (and hopefully production crashes)

    • +
    +
    +
    +

    Contributors

    +
      +
    • tangkong

    • +
    +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/master/upcoming_release_notes/219-mnt_enum_check.html b/master/upcoming_release_notes/219-mnt_enum_check.html new file mode 100644 index 00000000..3f587563 --- /dev/null +++ b/master/upcoming_release_notes/219-mnt_enum_check.html @@ -0,0 +1,165 @@ + + + + + + + 219 mnt_enum_check — atef documentation + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    219 mnt_enum_check

    +
    +

    API Breaks

    +
      +
    • N/A

    • +
    +
    +
    +

    Features

    +
      +
    • N/A

    • +
    +
    +
    +

    Bugfixes

    +
      +
    • N/A

    • +
    +
    +
    +

    Maintenance

    +
      +
    • Make comparisons against enum signals more robust by trying both the int and string versions if the check fails.

    • +
    +
    +
    +

    Contributors

    +
      +
    • tangkong

    • +
    +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/master/upcoming_release_notes/221-enh_status_out.html b/master/upcoming_release_notes/221-enh_status_out.html new file mode 100644 index 00000000..6a84853a --- /dev/null +++ b/master/upcoming_release_notes/221-enh_status_out.html @@ -0,0 +1,166 @@ + + + + + + + 221 enh_status_out — atef documentation + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    221 enh_status_out

    +
    +

    API Breaks

    +
      +
    • N/A

    • +
    +
    +
    +

    Features

    +
      +
    • Adds results summary page accessible from run-mode in the atef config GUI

    • +
    • Adds icons to run-mode tree view

    • +
    +
    +
    +

    Bugfixes

    +
      +
    • N/A

    • +
    +
    +
    +

    Maintenance

    +
      +
    • Refactors tree-walking helpers to a separate submodle

    • +
    +
    +
    +

    Contributors

    +
      +
    • tangkong

    • +
    +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/master/upcoming_release_notes/224-perf_lazy_page.html b/master/upcoming_release_notes/224-perf_lazy_page.html new file mode 100644 index 00000000..3f969c7a --- /dev/null +++ b/master/upcoming_release_notes/224-perf_lazy_page.html @@ -0,0 +1,167 @@ + + + + + + + 224 perf_lazy_page — atef documentation + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    224 perf_lazy_page

    +
    +

    API Breaks

    +
      +
    • N/A

    • +
    +
    +
    +

    Features

    +
      +
    • Adds page widget cache and lazy loading functionality to the atef config GUI

    • +
    +
    +
    +

    Bugfixes

    +
      +
    • N/A

    • +
    +
    +
    +

    Maintenance

    +
      +
    • Refactors GUI backend to support lazy page loading

    • +
    • Move tree-building logic to dataclasses

    • +
    • Consolidate GUI backend classes (EditTree/RunTree -> DualTree, AtefItem/TreeItem -> TreeItem)

    • +
    +
    +
    +

    Contributors

    +
      +
    • tangkong

    • +
    +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/master/upcoming_release_notes/226-enh_paged_table.html b/master/upcoming_release_notes/226-enh_paged_table.html new file mode 100644 index 00000000..642cabf8 --- /dev/null +++ b/master/upcoming_release_notes/226-enh_paged_table.html @@ -0,0 +1,164 @@ + + + + + + + 226 enh_paged_table — atef documentation + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    226 enh_paged_table

    +
    +

    API Breaks

    +
      +
    • N/A

    • +
    +
    +
    +

    Features

    +
      +
    • Adds PagedTableWidget, apply it to passive checkout group pages +to substantially improve the loading performance of group pages with many, many comparisons.

    • +
    +
    +
    +

    Bugfixes

    +
      +
    • N/A

    • +
    +
    +
    +

    Maintenance

    +
      +
    • N/A

    • +
    +
    +
    +

    Contributors

    +
      +
    • tangkong

    • +
    +
    +
    + + +
    +
    + +
    +
    +
    +
    + + + + \ No newline at end of file diff --git a/master/upcoming_release_notes/template-full.html b/master/upcoming_release_notes/template-full.html index f1664ac2..ac2423df 100644 --- a/master/upcoming_release_notes/template-full.html +++ b/master/upcoming_release_notes/template-full.html @@ -1,13 +1,15 @@ - + - + IssueNumber Title — atef documentation - - - + + + + + diff --git a/master/upcoming_release_notes/template-short.html b/master/upcoming_release_notes/template-short.html index 0ef2ddbc..22eb170c 100644 --- a/master/upcoming_release_notes/template-short.html +++ b/master/upcoming_release_notes/template-short.html @@ -1,13 +1,15 @@ - + - + IssueNumber Title — atef documentation - - - + + + + +