Skip to content

Support Python 3.12 and drop Python 3.8 #121

@tyralla

Description

@tyralla

During the first experiments, I identified the following necessary work steps:

  • Import e.g. Hashable from abc.collections instead of typing, especially those mentioned in the deprecation timeline of major features.
  • Stop Python from appending hints to "attribute not ready" errors as in AttributeError: The actual HydPy instance does not handle any elements at the moment.. Did you mean: '_elements'?. The solution is to always raise AttributeNotReady (which is a subtype of RuntimeError, not of AttributeError) when an existing property is currently not accessible.
  • Fix (the doctest of) make_abc_testable.

Not strictly necessary, but nice to have when dropping Python 3.8:

  • Switch to all "generic types" introduced by PEP 585.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions