build: minor changes

This commit is contained in:
Anand Balakrishnan 2023-09-06 13:30:59 -07:00
parent 980a08227f
commit a52f6a756c
No known key found for this signature in database
5 changed files with 64 additions and 51 deletions

View file

@ -13,5 +13,5 @@ argus-semantics = { version = "0.1.0", path = "../argus-semantics" }
derive_more = "0.99.17"
log = "0.4.20"
paste = "1.0.14"
pyo3 = { version = "0.19.2", features = ["extension-module"] }
pyo3 = "0.19.2"
pyo3-log = "0.8.3"

View file

@ -3,81 +3,81 @@ from typing import ClassVar, Protocol, TypeVar, final
from typing_extensions import Self
class NumExpr(Protocol):
def __ge__(self, other) -> NumExpr: ...
def __gt__(self, other) -> NumExpr: ...
def __le__(self, other) -> NumExpr: ...
def __lt__(self, other) -> NumExpr: ...
def __mul__(self, other) -> NumExpr: ...
def __eq__(self, other) -> NumExpr: ... # type: ignore[override]
def __ne__(self, other) -> NumExpr: ... # type: ignore[override]
def __ge__(self, other: Self) -> NumExpr: ...
def __gt__(self, other: Self) -> NumExpr: ...
def __le__(self, other: Self) -> NumExpr: ...
def __lt__(self, other: Self) -> NumExpr: ...
def __mul__(self, other: Self) -> NumExpr: ...
def __eq__(self, other: Self) -> NumExpr: ... # type: ignore[override]
def __ne__(self, other: Self) -> NumExpr: ... # type: ignore[override]
def __neg__(self) -> NumExpr: ...
def __add__(self, other) -> NumExpr: ...
def __radd__(self, other) -> NumExpr: ...
def __rmul__(self, other) -> NumExpr: ...
def __sub__(self, other) -> NumExpr: ...
def __rsub__(self, other) -> NumExpr: ...
def __truediv__(self, other) -> NumExpr: ...
def __rtruediv__(self, other) -> NumExpr: ...
def __add__(self, other: Self) -> NumExpr: ...
def __radd__(self, other: Self) -> NumExpr: ...
def __rmul__(self, other: Self) -> NumExpr: ...
def __sub__(self, other: Self) -> NumExpr: ...
def __rsub__(self, other: Self) -> NumExpr: ...
def __truediv__(self, other: Self) -> NumExpr: ...
def __rtruediv__(self, other: Self) -> NumExpr: ...
def __abs__(self) -> NumExpr: ...
@final
class ConstInt(NumExpr):
def __init__(self, value: int): ...
def __init__(self, value: int) -> None: ...
@final
class ConstUInt(NumExpr):
def __init__(self, value: int): ...
def __init__(self, value: int) -> None: ...
@final
class ConstFloat(NumExpr):
def __init__(self, value: float): ...
def __init__(self, value: float) -> None: ...
@final
class VarInt(NumExpr):
def __init__(self, name: str): ...
def __init__(self, name: str) -> None: ...
@final
class VarUInt(NumExpr):
def __init__(self, name: str): ...
def __init__(self, name: str) -> None: ...
@final
class VarFloat(NumExpr):
def __init__(self, name: str): ...
def __init__(self, name: str) -> None: ...
@final
class Negate(NumExpr):
def __init__(self, arg: NumExpr): ...
def __init__(self, arg: NumExpr) -> None: ...
@final
class Add(NumExpr):
def __init__(self, args: list[NumExpr]): ...
def __init__(self, args: list[NumExpr]) -> None: ...
@final
class Mul(NumExpr):
def __init__(self, args: list[NumExpr]): ...
def __init__(self, args: list[NumExpr]) -> None: ...
@final
class Div(NumExpr):
def __init__(self, dividend: NumExpr, divisor: NumExpr): ...
def __init__(self, dividend: NumExpr, divisor: NumExpr) -> None: ...
@final
class Abs(NumExpr):
def __init__(self, arg: NumExpr): ...
def __init__(self, arg: NumExpr) -> None: ...
class BoolExpr(Protocol):
def __and__(self, other) -> BoolExpr: ...
def __and__(self, other: Self) -> BoolExpr: ...
def __invert__(self) -> BoolExpr: ...
def __or__(self, other) -> BoolExpr: ...
def __rand__(self, other) -> BoolExpr: ...
def __ror__(self, other) -> BoolExpr: ...
def __or__(self, other: Self) -> BoolExpr: ...
def __rand__(self, other: Self) -> BoolExpr: ...
def __ror__(self, other: Self) -> BoolExpr: ...
@final
class ConstBool(BoolExpr):
def __init__(self, value: bool): ...
def __init__(self, value: bool) -> None: ...
@final
class VarBool(BoolExpr):
def __init__(self, name: str): ...
def __init__(self, name: str) -> None: ...
@final
class Cmp(BoolExpr):
@ -96,31 +96,31 @@ class Cmp(BoolExpr):
@final
class Not(BoolExpr):
def __init__(self, arg: BoolExpr): ...
def __init__(self, arg: BoolExpr) -> None: ...
@final
class And(BoolExpr):
def __init__(self, args: list[BoolExpr]): ...
def __init__(self, args: list[BoolExpr]) -> None: ...
@final
class Or(BoolExpr):
def __init__(self, args: list[BoolExpr]): ...
def __init__(self, args: list[BoolExpr]) -> None: ...
@final
class Next(BoolExpr):
def __init__(self, arg: BoolExpr): ...
def __init__(self, arg: BoolExpr) -> None: ...
@final
class Always(BoolExpr):
def __init__(self, arg: BoolExpr): ...
def __init__(self, arg: BoolExpr) -> None: ...
@final
class Eventually(BoolExpr):
def __init__(self, arg: BoolExpr): ...
def __init__(self, arg: BoolExpr) -> None: ...
@final
class Until(BoolExpr):
def __init__(self, lhs: BoolExpr, rhs: BoolExpr): ...
def __init__(self, lhs: BoolExpr, rhs: BoolExpr) -> None: ...
@final
class DType:
@ -131,7 +131,7 @@ class DType:
@classmethod
def convert(cls, dtype: type[bool | int | float] | Self) -> Self: ... # noqa: Y041
def __eq__(self, other) -> bool: ...
def __eq__(self, other: object) -> bool: ...
def __int__(self) -> int: ...
_SignalKind = TypeVar("_SignalKind", bool, int, float, covariant=True)
@ -151,7 +151,7 @@ class BoolSignal(Signal[bool]):
def constant(cls, value: bool) -> Self: ...
@classmethod
def from_samples(cls, samples: list[tuple[float, bool]]) -> Self: ...
def push(self, time: float, value: bool): ...
def push(self, time: float, value: bool) -> None: ...
def at(self, time: float) -> _SignalKind | None: ...
@final
@ -160,7 +160,7 @@ class IntSignal(Signal[int]):
def constant(cls, value: int) -> Self: ...
@classmethod
def from_samples(cls, samples: list[tuple[float, int]]) -> Self: ...
def push(self, time: float, value: int): ...
def push(self, time: float, value: int) -> None: ...
def at(self, time: float) -> int | None: ...
@final
@ -169,7 +169,7 @@ class UnsignedIntSignal(Signal[int]):
def constant(cls, value: int) -> Self: ...
@classmethod
def from_samples(cls, samples: list[tuple[float, int]]) -> Self: ...
def push(self, time: float, value: int): ...
def push(self, time: float, value: int) -> None: ...
def at(self, time: float) -> int | None: ...
@final
@ -178,7 +178,7 @@ class FloatSignal(Signal[float]):
def constant(cls, value: float) -> Self: ...
@classmethod
def from_samples(cls, samples: list[tuple[float, float]]) -> Self: ...
def push(self, time: float, value: float): ...
def push(self, time: float, value: float) -> None: ...
def at(self, time: float) -> float | None: ...
@final

View file

@ -46,8 +46,12 @@ show_error_codes = true
[tool.ruff]
line-length = 127
select = ["E", "F", "W", "N"]
ignore = ["F403"]
select = ["E", "F", "W", "N", "B", "ANN", "PYI"]
ignore = ["ANN101", "ANN102"]
[tool.ruff.per-file-ignores]
"*.py" = ["B905", "E203", "E501", "W291", "W293"]
"*.pyi" = ["B", "E501", "E701"]
[tool.flake8]
max-line-length = 127

View file

@ -1,4 +1,4 @@
from typing import List, Type, Union
from typing import List, Tuple, Type, Union
import pytest
from hypothesis import Verbosity, given, note, settings
@ -11,7 +11,9 @@ AllowedDtype = Union[bool, int, float]
@composite
def gen_samples(draw: st.DrawFn, *, min_size: int, max_size: int, dtype: Type[AllowedDtype]):
def gen_samples(
draw: st.DrawFn, *, min_size: int, max_size: int, dtype: Type[AllowedDtype]
) -> List[Tuple[float, AllowedDtype]]:
"""
Generate arbitrary samples for a signal where the time stamps are strictly
monotonically increasing
@ -53,7 +55,6 @@ def gen_dtype() -> SearchStrategy[Type[AllowedDtype]]:
return st.one_of(st.just(bool), st.just(int), st.just(float))
@settings(verbosity=Verbosity.verbose)
@given(st.data())
def test_correctly_create_signals(data: st.DataObject) -> None:
dtype = data.draw(gen_dtype())