This pull request includes several changes to the pyprobe package, primarily focusing on enhancing type annotations and simplifying class structures. The most important changes involve updating the info field to support nested dictionaries and removing re-definitions of inherited attributes from multiple classes.
Type Annotations and Field Updates:
pyprobe/cell.py: Updated the info field in the Cell class to support nested dictionaries. This change is reflected in the type annotations and the corresponding field validator. [1][2][3]
Codebase Simplification:
pyprobe/filters.py: Removed inherited attributes such as base_dataframe, info, and column_definitions from multiple classes (Procedure, Experiment, Cycle, Step). This helps in simplifying the class definitions and reducing clutter. [1][2][3][4]
pyprobe/rawdata.py: Removed the base_dataframe and info attributes from the RawData class and added a detailed docstring for the step_descriptions attribute.
Additional Changes:
pyprobe/result.py: Updated the info field in the Result class to support nested dictionaries and adjusted the type annotations accordingly. [1][2]
pyprobe/filters.py: Removed the import of Field from pydantic as it is no longer needed.
This pull request includes several changes to the
pyprobe
package, primarily focusing on enhancing type annotations and simplifying class structures. The most important changes involve updating theinfo
field to support nested dictionaries and removing re-definitions of inherited attributes from multiple classes.Type Annotations and Field Updates:
pyprobe/cell.py
: Updated theinfo
field in theCell
class to support nested dictionaries. This change is reflected in the type annotations and the corresponding field validator. [1] [2] [3]Codebase Simplification:
pyprobe/filters.py
: Removed inherited attributes such asbase_dataframe
,info
, andcolumn_definitions
from multiple classes (Procedure
,Experiment
,Cycle
,Step
). This helps in simplifying the class definitions and reducing clutter. [1] [2] [3] [4]pyprobe/rawdata.py
: Removed thebase_dataframe
andinfo
attributes from theRawData
class and added a detailed docstring for thestep_descriptions
attribute.Additional Changes:
pyprobe/result.py
: Updated theinfo
field in theResult
class to support nested dictionaries and adjusted the type annotations accordingly. [1] [2]pyprobe/filters.py
: Removed the import ofField
frompydantic
as it is no longer needed.