diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 2d7f2d29..affb820c 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -27,7 +27,7 @@ repos: - id: add-trailing-comma - repo: https://github.com/asottile/pyupgrade - rev: v3.15.0 + rev: v3.15.1 hooks: - id: pyupgrade @@ -37,12 +37,12 @@ repos: # - id: autopep8 - repo: https://github.com/PyCQA/autoflake - rev: v2.2.1 + rev: v2.3.0 hooks: - id: autoflake - repo: https://github.com/charliermarsh/ruff-pre-commit - rev: v0.1.14 + rev: v0.2.2 hooks: - id: ruff args: [--fix, --exit-non-zero-on-fix] diff --git a/pyproject.toml b/pyproject.toml index 25bf220e..e5c916ee 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,10 +18,10 @@ dependencies = [ [project.optional-dependencies] dev = [ "bumpver==2023.1129", - "hypothesis==6.98.1", - "pre-commit==3.6.0", - "pytest==7.4.4", - "pytest-asyncio==0.23.4", + "hypothesis==6.98.8", + "pre-commit==3.6.2", + "pytest==8.0.1", + "pytest-asyncio==0.23.5", "pytest-cov==4.1.0", # https://github.com/pytest-dev/pytest/issues/11868#issuecomment-1913516238 ] diff --git a/src/musiclib/svg/isomorphic/base.py b/src/musiclib/svg/isomorphic/base.py index e452b433..3f481979 100644 --- a/src/musiclib/svg/isomorphic/base.py +++ b/src/musiclib/svg/isomorphic/base.py @@ -25,9 +25,9 @@ def __init__( *, interval_colors: dict[AbstractInterval | int, Color] | None = None, interval_strokes: dict[AbstractInterval | int, Color] | None = None, - interval_radial_parts_colors: dict[int, dict[int, Color]] | None = None, - interval_horizontal_parts_colors: dict[int, dict[int, Color]] | None = None, - interval_vertical_parts_colors: dict[int, dict[int, Color]] | None = None, + interval_radial_parts_colors: dict[AbstractInterval | int, dict[int, Color]] | None = None, + interval_horizontal_parts_colors: dict[AbstractInterval | int, dict[int, Color]] | None = None, + interval_vertical_parts_colors: dict[AbstractInterval | int, dict[int, Color]] | None = None, n_parts: int | None = None, interval_text: TEXT_CALLABLE | None = middle_text_kw_abstract_interval, interval_subtext: TEXT_CALLABLE | None = None, @@ -76,9 +76,9 @@ def __init__( def validate_parts_colors( self, - interval_radial_parts_colors: dict[int, dict[int, Color]] | None = None, - interval_horizontal_parts_colors: dict[int, dict[int, Color]] | None = None, - interval_vertical_parts_colors: dict[int, dict[int, Color]] | None = None, + interval_radial_parts_colors: dict[AbstractInterval | int, dict[int, Color]] | None = None, + interval_horizontal_parts_colors: dict[AbstractInterval | int, dict[int, Color]] | None = None, + interval_vertical_parts_colors: dict[AbstractInterval | int, dict[int, Color]] | None = None, n_parts: int | None = None, ) -> None: if not are_mutually_exclusive( @@ -163,7 +163,7 @@ def add_parts(self, interval: int, x: float, y: float, id_: str) -> None: # noq if self.n_parts is None: raise ValueError('n_parts must be provided if any of interval_radial_parts_colors, interval_horizontal_parts_colors, interval_vertical_parts_colors is provided') if self.interval_radial_parts_colors is not None: - for part, color in self.interval_radial_parts_colors.get(interval, {}).items(): + for part, color in self.interval_radial_parts_colors.get(interval, self.interval_radial_parts_colors.get(AbstractInterval(interval), {})).items(): if part >= self.n_parts: raise ValueError(f'part={part} must be less than n_parts={self.n_parts}') p0 = vertex(x, y, self.radius, self.n_parts, part) @@ -182,7 +182,7 @@ def add_parts(self, interval: int, x: float, y: float, id_: str) -> None: # noq ) if self.interval_horizontal_parts_colors is not None: - for part, color in self.interval_horizontal_parts_colors.get(interval, {}).items(): + for part, color in self.interval_horizontal_parts_colors.get(interval, self.interval_horizontal_parts_colors.get(AbstractInterval(interval), {})).items(): if part >= self.n_parts: raise ValueError(f'part={part} must be less than n_parts={self.n_parts}') self.elements.append( @@ -194,7 +194,7 @@ def add_parts(self, interval: int, x: float, y: float, id_: str) -> None: # noq ) if self.interval_vertical_parts_colors is not None: - for part, color in self.interval_vertical_parts_colors.get(interval, {}).items(): + for part, color in self.interval_vertical_parts_colors.get(interval, self.interval_vertical_parts_colors.get(AbstractInterval(interval), {})).items(): if part >= self.n_parts: raise ValueError(f'part={part} must be less than n_parts={self.n_parts}') self.elements.append(