Skip to content

Commit 4c2dd78

Browse files
committed
fix 3.10 missing Self
1 parent 0644d4e commit 4c2dd78

4 files changed

Lines changed: 16 additions & 12 deletions

File tree

pyenzyme/petab/conditions.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from typing import Dict, Self, Any
1+
from typing import Dict, Any
22
from pydantic import Field
33

44
from pyenzyme.versions import v2
@@ -35,14 +35,16 @@ def to_row(self) -> Dict[str, Any]:
3535
}
3636

3737
@classmethod
38-
def from_measurements(cls, measurements: list[v2.Measurement]) -> list[Self]:
38+
def from_measurements(
39+
cls, measurements: list[v2.Measurement]
40+
) -> list["ConditionRow"]:
3941
"""
4042
Creates a list of ConditionRow objects from a list of PyEnzyme Measurement objects.
4143
"""
4244
return [cls.from_measurement(measurement) for measurement in measurements]
4345

4446
@classmethod
45-
def from_measurement(cls, measurement: v2.Measurement) -> Self:
47+
def from_measurement(cls, measurement: v2.Measurement) -> "ConditionRow":
4648
"""
4749
Creates a ConditionRow from a PyEnzyme Measurement object.
4850

pyenzyme/petab/measurements.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from typing import List, Self, Union
1+
from typing import List, Union
22
from pydantic import Field
33

44
from pyenzyme.versions import v2
@@ -58,7 +58,9 @@ class MeasurementRow(BaseRow):
5858
replicate_id: str | None = Field(alias="replicateId", default=None)
5959

6060
@classmethod
61-
def from_measurements(cls, measurements: list[v2.Measurement]) -> List[Self]:
61+
def from_measurements(
62+
cls, measurements: list[v2.Measurement]
63+
) -> List["MeasurementRow"]:
6264
"""
6365
Convert a list of EnzymeML Measurement objects to a list of PEtab MeasurementRow objects.
6466
"""
@@ -69,7 +71,7 @@ def from_measurements(cls, measurements: list[v2.Measurement]) -> List[Self]:
6971
]
7072

7173
@classmethod
72-
def from_measurement(cls, measurement: v2.Measurement) -> List[Self]:
74+
def from_measurement(cls, measurement: v2.Measurement) -> List["MeasurementRow"]:
7375
"""
7476
Convert an EnzymeML Measurement object to a list of PEtab MeasurementRow objects.
7577
@@ -81,7 +83,7 @@ def from_measurement(cls, measurement: v2.Measurement) -> List[Self]:
8183
species concentration time series data.
8284
8385
Returns:
84-
List[Self]: A list of MeasurementRow objects, each representing a single
86+
List["MeasurementRow"]: A list of MeasurementRow objects, each representing a single
8587
data point from the original measurement. Each row contains the species ID,
8688
measurement condition ID, the measured value, and the time point.
8789

pyenzyme/petab/observables.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from enum import Enum
2-
from typing import Optional, Self
2+
from typing import List, Optional
33
from pydantic import ConfigDict, Field
44

55
from pyenzyme.versions import v2
@@ -38,7 +38,7 @@ class ObservableRow(BaseRow):
3838
)
3939

4040
@classmethod
41-
def from_enzymeml(cls, enzmldoc: v2.EnzymeMLDocument) -> list[Self]:
41+
def from_enzymeml(cls, enzmldoc: v2.EnzymeMLDocument) -> List["ObservableRow"]:
4242
"""Extract observable rows from an EnzymeML document.
4343
4444
Collects all species with data across measurements and creates observable rows.

pyenzyme/petab/parameters.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from enum import Enum
2-
from typing import List, Optional, Self
2+
from typing import List, Optional
33
from pydantic import ConfigDict, Field, field_serializer, field_validator
44

55
from pyenzyme.versions import v2
@@ -108,14 +108,14 @@ def validate_prior_parameters(cls, v: str) -> List[float]:
108108
return [float(x) for x in v.split(";")]
109109

110110
@classmethod
111-
def from_parameters(cls, parameters: list[v2.Parameter]) -> list[Self]:
111+
def from_parameters(cls, parameters: List[v2.Parameter]) -> List["ParameterRow"]:
112112
"""
113113
Creates a list of ParameterRow objects from a list of PyEnzyme Parameter objects.
114114
"""
115115
return [cls.from_parameter(parameter) for parameter in parameters]
116116

117117
@classmethod
118-
def from_parameter(cls, parameter: v2.Parameter) -> Self:
118+
def from_parameter(cls, parameter: v2.Parameter) -> "ParameterRow":
119119
"""
120120
Creates a ParameterRow from a PyEnzyme Parameter object.
121121
"""

0 commit comments

Comments
 (0)