GRAYBYTE WORDPRESS FILE MANAGER4968

Server IP : 198.54.121.189 / Your IP : 216.73.216.140
System : Linux premium69.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
PHP Version : 7.4.33
Disable Function : NONE
cURL : ON | WGET : ON | Sudo : OFF | Pkexec : OFF
Directory : /opt/hc_python/lib/python3.12/site-packages/pydantic/
Upload Files :
Current_dir [ Not Writeable ] Document_root [ Writeable ]

Command :


Current File : /opt/hc_python/lib/python3.12/site-packages/pydantic//errors.py
"""Pydantic-specific errors."""

from __future__ import annotations as _annotations

import re

from typing_extensions import Literal, Self

from ._migration import getattr_migration
from .version import version_short

__all__ = (
    'PydanticUserError',
    'PydanticUndefinedAnnotation',
    'PydanticImportError',
    'PydanticSchemaGenerationError',
    'PydanticInvalidForJsonSchema',
    'PydanticErrorCodes',
)

# We use this URL to allow for future flexibility about how we host the docs, while allowing for Pydantic
# code in the while with "old" URLs to still work.
# 'u' refers to "user errors" - e.g. errors caused by developers using pydantic, as opposed to validation errors.
DEV_ERROR_DOCS_URL = f'https://errors.pydantic.dev/{version_short()}/u/'
PydanticErrorCodes = Literal[
    'class-not-fully-defined',
    'custom-json-schema',
    'decorator-missing-field',
    'discriminator-no-field',
    'discriminator-alias-type',
    'discriminator-needs-literal',
    'discriminator-alias',
    'discriminator-validator',
    'callable-discriminator-no-tag',
    'typed-dict-version',
    'model-field-overridden',
    'model-field-missing-annotation',
    'config-both',
    'removed-kwargs',
    'invalid-for-json-schema',
    'json-schema-already-used',
    'base-model-instantiated',
    'undefined-annotation',
    'schema-for-unknown-type',
    'import-error',
    'create-model-field-definitions',
    'create-model-config-base',
    'validator-no-fields',
    'validator-invalid-fields',
    'validator-instance-method',
    'root-validator-pre-skip',
    'model-serializer-instance-method',
    'validator-field-config-info',
    'validator-v1-signature',
    'validator-signature',
    'field-serializer-signature',
    'model-serializer-signature',
    'multiple-field-serializers',
    'invalid_annotated_type',
    'type-adapter-config-unused',
    'root-model-extra',
    'unevaluable-type-annotation',
    'dataclass-init-false-extra-allow',
    'clashing-init-and-init-var',
    'model-config-invalid-field-name',
    'with-config-on-model',
    'dataclass-on-model',
]


class PydanticErrorMixin:
    """A mixin class for common functionality shared by all Pydantic-specific errors.

    Attributes:
        message: A message describing the error.
        code: An optional error code from PydanticErrorCodes enum.
    """

    def __init__(self, message: str, *, code: PydanticErrorCodes | None) -> None:
        self.message = message
        self.code = code

    def __str__(self) -> str:
        if self.code is None:
            return self.message
        else:
            return f'{self.message}\n\nFor further information visit {DEV_ERROR_DOCS_URL}{self.code}'


class PydanticUserError(PydanticErrorMixin, TypeError):
    """An error raised due to incorrect use of Pydantic."""


class PydanticUndefinedAnnotation(PydanticErrorMixin, NameError):
    """A subclass of `NameError` raised when handling undefined annotations during `CoreSchema` generation.

    Attributes:
        name: Name of the error.
        message: Description of the error.
    """

    def __init__(self, name: str, message: str) -> None:
        self.name = name
        super().__init__(message=message, code='undefined-annotation')

    @classmethod
    def from_name_error(cls, name_error: NameError) -> Self:
        """Convert a `NameError` to a `PydanticUndefinedAnnotation` error.

        Args:
            name_error: `NameError` to be converted.

        Returns:
            Converted `PydanticUndefinedAnnotation` error.
        """
        try:
            name = name_error.name  # type: ignore  # python > 3.10
        except AttributeError:
            name = re.search(r".*'(.+?)'", str(name_error)).group(1)  # type: ignore[union-attr]
        return cls(name=name, message=str(name_error))


class PydanticImportError(PydanticErrorMixin, ImportError):
    """An error raised when an import fails due to module changes between V1 and V2.

    Attributes:
        message: Description of the error.
    """

    def __init__(self, message: str) -> None:
        super().__init__(message, code='import-error')


class PydanticSchemaGenerationError(PydanticUserError):
    """An error raised during failures to generate a `CoreSchema` for some type.

    Attributes:
        message: Description of the error.
    """

    def __init__(self, message: str) -> None:
        super().__init__(message, code='schema-for-unknown-type')


class PydanticInvalidForJsonSchema(PydanticUserError):
    """An error raised during failures to generate a JSON schema for some `CoreSchema`.

    Attributes:
        message: Description of the error.
    """

    def __init__(self, message: str) -> None:
        super().__init__(message, code='invalid-for-json-schema')


__getattr__ = getattr_migration(__name__)

[ Back ]
Name
Size
Last Modified
Owner / Group
Permissions
Options
..
--
May 23 2025 08:31:29
root / root
0755
__pycache__
--
April 04 2025 08:00:28
root / root
0755
_internal
--
April 04 2025 08:00:28
root / root
0755
deprecated
--
April 04 2025 08:00:28
root / root
0755
experimental
--
April 04 2025 08:00:28
root / root
0755
plugin
--
April 04 2025 08:00:28
root / root
0755
v1
--
April 04 2025 08:00:28
root / root
0755
__init__.py
13.604 KB
April 04 2025 08:00:28
root / root
0644
_migration.py
11.634 KB
April 04 2025 08:00:28
root / root
0644
alias_generators.py
2.074 KB
April 04 2025 08:00:28
root / root
0644
aliases.py
4.706 KB
April 04 2025 08:00:28
root / root
0644
annotated_handlers.py
4.251 KB
April 04 2025 08:00:28
root / root
0644
class_validators.py
0.145 KB
April 04 2025 08:00:28
root / root
0644
color.py
20.99 KB
April 04 2025 08:00:28
root / root
0644
config.py
34.289 KB
April 04 2025 08:00:28
root / root
0644
dataclasses.py
13.583 KB
April 04 2025 08:00:28
root / root
0644
datetime_parse.py
0.146 KB
April 04 2025 08:00:28
root / root
0644
decorator.py
0.142 KB
April 04 2025 08:00:28
root / root
0644
env_settings.py
0.145 KB
April 04 2025 08:00:28
root / root
0644
error_wrappers.py
0.146 KB
April 04 2025 08:00:28
root / root
0644
errors.py
4.722 KB
April 04 2025 08:00:28
root / root
0644
fields.py
50.533 KB
April 04 2025 08:00:28
root / root
0644
functional_serializers.py
14.273 KB
April 04 2025 08:00:28
root / root
0644
functional_validators.py
23.656 KB
April 04 2025 08:00:28
root / root
0644
generics.py
0.141 KB
April 04 2025 08:00:28
root / root
0644
json.py
0.137 KB
April 04 2025 08:00:28
root / root
0644
json_schema.py
103.806 KB
April 04 2025 08:00:28
root / root
0644
main.py
68.463 KB
April 04 2025 08:00:28
root / root
0644
mypy.py
55.637 KB
April 04 2025 08:00:28
root / root
0644
networks.py
22.181 KB
April 04 2025 08:00:28
root / root
0644
parse.py
0.138 KB
April 04 2025 08:00:28
root / root
0644
py.typed
0 KB
April 04 2025 08:00:28
root / root
0644
root_model.py
6.049 KB
April 04 2025 08:00:28
root / root
0644
schema.py
0.139 KB
April 04 2025 08:00:28
root / root
0644
tools.py
0.138 KB
April 04 2025 08:00:28
root / root
0644
type_adapter.py
24.389 KB
April 04 2025 08:00:28
root / root
0644
types.py
93.5 KB
April 04 2025 08:00:28
root / root
0644
typing.py
0.135 KB
April 04 2025 08:00:28
root / root
0644
utils.py
0.138 KB
April 04 2025 08:00:28
root / root
0644
validate_call_decorator.py
2.077 KB
April 04 2025 08:00:28
root / root
0644
validators.py
0.143 KB
April 04 2025 08:00:28
root / root
0644
version.py
2.385 KB
April 04 2025 08:00:28
root / root
0644
warnings.py
2.647 KB
April 04 2025 08:00:28
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025
CONTACT ME
Static GIF