Back to Explore

JoshData/python-email-validator

GitHub
2 watchersOpen source

Last release: 2025-08-26

python-email-validator is a small Python library for validating email addresses. It’s useful for checking whether an email string is in a valid format in your applications.

Project status

  • Maintenance status: Evidence suggests the GitHub source is still actively maintained, with an upstream push on 2026-05-19 (close to today), though the most recent tagged version in the provided history is v2.3.0 on 2025-08-26.
  • Update cadence: Tagged updates appear irregular but generally frequent during active development (for example, v2.1.1 in Feb 2024, v2.2.0 in Jun 2024, then v2.3.0 in Aug 2025), with a longer gap from the last tagged update to today.

AI summary generated 2026-06-09

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • v2.3.0

    2025-08-26

    This release focuses on email syntax behavior, packaging, and Unicode handling. It renames the distribution to `email-validator`, adds an optional `strict` mode to restore the local-part length check, normalizes display names to NFC, and improves error reporting for homoglyph and internationalized-domain cases.

    BreakingFeatures
  • v2.2.0

    2024-06-20

    This release tightens validation for internationalized email addresses, especially after Unicode NFC normalization, and adds optional parsing for display-name plus address inputs. It also ships a broad typing cleanup and small deliverability and error-message refinements.

    BreakingFeatures
  • v2.1.2

    2024-06-17

    v2.1.2 tightens email validation around domain length and DNS fallback behavior, and fixes the metadata returned when MX-less domains fall back to A/AAAA records. The release also refreshes test tooling, CI configuration, and pinned development dependencies.

    Breaking
  • v2.1.1

    2024-02-26

    v2.1.1 is a maintenance release that fixes a mailbox-name typo, improves exception chaining in deliverability error paths, and updates the project licensing to Unlicense. It also includes test and documentation cleanup, plus one notable internal behavior change around unsafe-character detection.

  • v2.1.0

    2023-10-22

    v2.1.0 raises the minimum Python version to 3.8, adds a module-level __version__ export, and deprecates the legacy ValidatedEmail.email accessor in favor of normalized. The implementation also refactors address parsing and adds normalized-length validation, which changes how some edge-case email addresses are accepted or rejected.

    BreakingFeatures
  • v2.0.0

    2023-04-16

    v2.0.0 is a major modernization release for email-validator, with a package reorganization, a new CLI entrypoint, type annotations, and new opt-in support for quoted local parts and domain literals. It also raises the minimum supported runtime to Python 3.7+, changes DNS deliverability behavior, and shifts the canonical normalized address field to `ValidatedEmail.normalized` while keeping backward compatibility aliases.

    BreakingFeatures
  • v1.3.1

    2023-01-21

    v1.3.1 narrows the SPF reject-all deliverability check so it only runs when a domain has no MX record but does have an A/AAAA fallback. The diff also updates documentation and packaging metadata, and the packaging change raises the minimum supported Python version to 3.5.

    Breaking
  • v1.3.0

    2022-09-18

    v1.3.0 tightens email validation and makes the main validator keyword-only, while also adding SPF `v=spf1 -all` rejection and a new `globally_deliverable` mode for non-global address forms. It shifts special-use domain handling into syntax validation, introduces module-level defaults for validator behavior, and expands the test matrix with pyIsEmail cases and Python 3.10 CI.

    BreakingFeatures
  • v1.2.1

    2022-05-01

    This release tightens email validation by rejecting unsafe Unicode, most special-use reserved domains, and NULL MX domains when deliverability checks are enabled. It also exposes module-level defaults for key validator options, documents the special-use domain list, and refreshes CI and test dependencies.

    BreakingSecurityFeatures
  • v1.1.3

    2022-04-24

    The provided release metadata for v1.1.3 includes no actual release notes or changelog content. As a result, I cannot reliably identify new features, breaking changes, bug fixes, security updates, performance changes, dependency updates, or required migration steps from the text available.