Skip to content

Define own hierarchy of exceptions? #248

@tomschr

Description

@tomschr

Situation

Currently, our code catches an invalid version and raise an exception. This is good. However, the exceptions are usually builtin exceptions like TypeError, ValueError, or AttributeError.

This could make it likely, that an semver exceptions are "hidden". It cannot explicitly be checked that a TypeError is coming from semver and not from another, unrelated third party library.

Proposal

This part could be solved by introducing our own hierarchy of exceptions like so:

class InvalidVersionError(ValueError):
    """Raised by invalid parts in a semver version"""

The nice thing about this approach is, any old code would still work (as InvalidVersionError is derived from ValueError).

@python-semver/reviewers would that be an option?

Metadata

Metadata

Assignees

No one assigned

    Labels

    DesignIdeas, suggestions, musings about design questionsEnhancementNot a bug, but increases or improves in value, quality, desirability, or attractivenessQuestionUnclear or open issue subject for debateRelease_3.x.yOnly for the major release 3

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      pFad - Phonifier reborn

      Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

      Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


      Alternative Proxies:

      Alternative Proxy

      pFad Proxy

      pFad v3 Proxy

      pFad v4 Proxy