head	1.16;
access;
symbols
	pkgsrc-2026Q1:1.16.0.6
	pkgsrc-2026Q1-base:1.16
	pkgsrc-2025Q4:1.16.0.4
	pkgsrc-2025Q4-base:1.16
	pkgsrc-2025Q3:1.16.0.2
	pkgsrc-2025Q3-base:1.16
	pkgsrc-2025Q2:1.15.0.2
	pkgsrc-2025Q2-base:1.15
	pkgsrc-2025Q1:1.14.0.4
	pkgsrc-2025Q1-base:1.14
	pkgsrc-2024Q4:1.14.0.2
	pkgsrc-2024Q4-base:1.14
	pkgsrc-2024Q3:1.13.0.2
	pkgsrc-2024Q3-base:1.13
	pkgsrc-2024Q2:1.12.0.2
	pkgsrc-2024Q2-base:1.12
	pkgsrc-2024Q1:1.11.0.2
	pkgsrc-2024Q1-base:1.11
	pkgsrc-2023Q4:1.9.0.6
	pkgsrc-2023Q4-base:1.9
	pkgsrc-2023Q3:1.9.0.4
	pkgsrc-2023Q3-base:1.9
	pkgsrc-2023Q2:1.9.0.2
	pkgsrc-2023Q2-base:1.9
	pkgsrc-2023Q1:1.8.0.6
	pkgsrc-2023Q1-base:1.8
	pkgsrc-2022Q4:1.8.0.4
	pkgsrc-2022Q4-base:1.8
	pkgsrc-2022Q3:1.8.0.2
	pkgsrc-2022Q3-base:1.8
	pkgsrc-2022Q2:1.7.0.4
	pkgsrc-2022Q2-base:1.7
	pkgsrc-2022Q1:1.7.0.2
	pkgsrc-2022Q1-base:1.7
	pkgsrc-2021Q4:1.5.0.6
	pkgsrc-2021Q4-base:1.5
	pkgsrc-2021Q3:1.5.0.4
	pkgsrc-2021Q3-base:1.5
	pkgsrc-2021Q2:1.5.0.2
	pkgsrc-2021Q2-base:1.5
	pkgsrc-2021Q1:1.4.0.8
	pkgsrc-2021Q1-base:1.4
	pkgsrc-2020Q4:1.4.0.6
	pkgsrc-2020Q4-base:1.4
	pkgsrc-2020Q3:1.4.0.4
	pkgsrc-2020Q3-base:1.4
	pkgsrc-2020Q2:1.4.0.2
	pkgsrc-2020Q2-base:1.4
	pkgsrc-2020Q1:1.2.0.16
	pkgsrc-2020Q1-base:1.2
	pkgsrc-2019Q4:1.2.0.18
	pkgsrc-2019Q4-base:1.2
	pkgsrc-2019Q3:1.2.0.14
	pkgsrc-2019Q3-base:1.2
	pkgsrc-2019Q2:1.2.0.12
	pkgsrc-2019Q2-base:1.2
	pkgsrc-2019Q1:1.2.0.10
	pkgsrc-2019Q1-base:1.2
	pkgsrc-2018Q4:1.2.0.8
	pkgsrc-2018Q4-base:1.2
	pkgsrc-2018Q3:1.2.0.6
	pkgsrc-2018Q3-base:1.2
	pkgsrc-2018Q2:1.2.0.4
	pkgsrc-2018Q2-base:1.2
	pkgsrc-2018Q1:1.2.0.2
	pkgsrc-2018Q1-base:1.2;
locks; strict;
comment	@# @;


1.16
date	2025.08.27.09.21.19;	author adam;	state Exp;
branches;
next	1.15;
commitid	2vcLsdBu8GvCIl8G;

1.15
date	2025.04.14.09.56.26;	author adam;	state Exp;
branches;
next	1.14;
commitid	zSlXXF6KpCuYf0RF;

1.14
date	2024.11.11.07.28.38;	author wiz;	state Exp;
branches;
next	1.13;
commitid	1fBDq3LwS98NncxF;

1.13
date	2024.07.02.09.17.11;	author adam;	state Exp;
branches;
next	1.12;
commitid	1c0x7jy5ZjcrefgF;

1.12
date	2024.06.17.15.23.34;	author adam;	state Exp;
branches;
next	1.11;
commitid	1nkJc1P3jGDYJleF;

1.11
date	2024.02.27.08.39.39;	author adam;	state Exp;
branches;
next	1.10;
commitid	sppo9Rr37ZHE430F;

1.10
date	2024.01.31.00.02.03;	author adam;	state Exp;
branches;
next	1.9;
commitid	hlGnDwBFDdBO4xWE;

1.9
date	2023.05.05.10.07.57;	author wiz;	state Exp;
branches;
next	1.8;
commitid	mytZN9mrXiuR8LnE;

1.8
date	2022.08.23.21.49.56;	author wiz;	state Exp;
branches;
next	1.7;
commitid	9OpZj2nvv0lNd3RD;

1.7
date	2022.01.05.15.41.13;	author wiz;	state Exp;
branches;
next	1.6;
commitid	FQ77UruBIUsgzsnD;

1.6
date	2022.01.04.20.54.11;	author wiz;	state Exp;
branches;
next	1.5;
commitid	CYyhdK9qtoffkmnD;

1.5
date	2021.06.13.17.38.33;	author adam;	state Exp;
branches;
next	1.4;
commitid	Bqek42299KhwQZWC;

1.4
date	2020.05.29.08.56.54;	author adam;	state Exp;
branches;
next	1.3;
commitid	qb4BcKueKoKNa7aC;

1.3
date	2020.05.01.08.12.08;	author adam;	state Exp;
branches;
next	1.2;
commitid	OTdvYx6zHbviPv6C;

1.2
date	2018.01.18.08.43.40;	author adam;	state Exp;
branches;
next	1.1;
commitid	3dPJmtRhqwNfOknA;

1.1
date	2018.01.18.08.35.48;	author adam;	state Exp;
branches;
next	;
commitid	v9MA7ydiaQfrLknA;


desc
@@


1.16
log
@py-email_validator: updated to 2.3.0

2.3.0

The package name is changed from using an underscore (email_validator) to a dash (email-validator) to match PyPi's normalized package name.
The library no longer checks that the local part is at most 64 characters because a more careful reading of RFC 5321 indicates the limit is optional and such email addresses have been found in the wild. However the check can be restored using a new strict=True parameter, and the overall 254 character email address length limit is still in place.
New EmailSyntaxError messages are used for some exiting syntax errors related to @@-sign homoglyphs and invalid characters in internationalized domains.
When using allow_display_name=True, display names are now returned with Unicode NFC normalization.
TypeError is now raised if something other than str (or bytes) is passed as the email address.
@
text
@# $NetBSD: Makefile,v 1.15 2025/04/14 09:56:26 adam Exp $

DISTNAME=	email_validator-2.3.0
PKGNAME=	${PYPKGPREFIX}-${DISTNAME}
CATEGORIES=	mail python
MASTER_SITES=	${MASTER_SITE_PYPI:=e/email-validator/}

MAINTAINER=	pkgsrc-users@@NetBSD.org
HOMEPAGE=	https://github.com/JoshData/python-email-validator
COMMENT=	Robust email syntax and deliverability validation library
LICENSE=	cc0-1.0-universal

TOOL_DEPENDS+=	${PYPKGPREFIX}-setuptools>=78:../../devel/py-setuptools
DEPENDS+=	${PYPKGPREFIX}-idna>=2.0.0:../../www/py-idna
DEPENDS+=	${PYPKGPREFIX}-dns>=2.0.0:../../net/py-dns

USE_LANGUAGES=	# none

post-install:
	cd ${DESTDIR}${PREFIX}/bin && \
	${MV} email_validator email_validator-${PYVERSSUFFIX} || ${TRUE}

.include "../../lang/python/wheel.mk"
.include "../../mk/bsd.pkg.mk"
@


1.15
log
@Fix PLIST after py-setuptools update; bump depends and revision
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.14 2024/11/11 07:28:38 wiz Exp $
d3 1
a3 1
DISTNAME=	email_validator-2.2.0
a4 1
PKGREVISION=	1
@


1.14
log
@py-*: remove unused tool dependency

py-setuptools includes the py-wheel functionality nowadays
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.13 2024/07/02 09:17:11 adam Exp $
d5 1
d14 1
a14 1
TOOL_DEPENDS+=	${PYPKGPREFIX}-setuptools-[0-9]*:../../devel/py-setuptools
a19 2
PYTHON_VERSIONS_INCOMPATIBLE=	27

@


1.13
log
@py-email_validator: updated to 2.2.0

2.2.0 (June 20, 2024)

Email addresses with internationalized local parts could, with rare Unicode characters, be returned as valid but actually be invalid in their normalized form (returned in the normalized field). In particular, it is possible to get a normalized address with a ";" character, which is not valid and could change the interpretation of the address. Local parts now re-validated after Unicode NFC normalization to ensure that invalid characters cannot be injected into the normalized address and that characters with length-increasing NFC normalizations cannot cause a local part to exceed the maximum length after normalization. Thanks to khanh@@calif.io from https://calif.io for reporting the issue.
The length check for email addresses with internationalized local parts is now also applied to the original address string prior to Unicode NFC normalization, which may be longer and could exceed the maximum email address length, to protect callers who do not use the returned normalized address.
Improved error message for IDNA domains that are too long or have invalid characters after Unicode normalization.
A new option to parse My Name <address@@domain> strings, i.e. a display name plus an email address in angle brackets, is now available. It is off by default.
Improvements to Python typing.
Some additional tests added.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.12 2024/06/17 15:23:34 adam Exp $
a13 1
TOOL_DEPENDS+=	${PYPKGPREFIX}-wheel-[0-9]*:../../devel/py-wheel
@


1.12
log
@py-email_validator: updated to 2.1.2

2.1.2 (June 16, 2024)

The domain name length limit is corrected from 255 to 253 IDNA ASCII characters. I misread the RFCs.
When a domain name has no MX record but does have an A or AAAA record, if none of the IP addresses in the response are globally reachable (i.e. not Private-Use, Loopback, etc.), the response is treated as if there was no A/AAAA response and the email address will fail the deliverability check.
When a domain name has no MX record but does have an A or AAAA record, the mx field in the object returned by validate_email incorrectly held the IP addresses rather than the domain itself.
Fixes in tests.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.11 2024/02/27 08:39:39 adam Exp $
d3 1
a3 1
DISTNAME=	email_validator-2.1.2
@


1.11
log
@py-email_validator: updated to 2.1.1

2.1.1

Fixed typo 'marking' instead of 'marketing' in case-insensitive mailbox name list.
When DNS-based deliverability checks fail, in some cases exceptions are now thrown with raise ... from for better nested exception tracking.
Fixed tests to work when no local resolver can be configured.
This project is now licensed under the Unlicense (instead of CC0).
Minor improvements to tests.
Minor improvements to code style.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.10 2024/01/31 00:02:03 adam Exp $
d3 1
a3 1
DISTNAME=	email_validator-2.1.1
@


1.10
log
@py-email_validator: updated to 2.1.0.post1

2.1.0 (October 22, 2023)

Python 3.8+ is now required (support for Python 3.7 was dropped).
The old email field on the returned ValidatedEmail object, which in the previous version was superseded by normalized, will now raise a deprecation warning if used. See https://stackoverflow.com/q/879173 for strategies to suppress the DeprecationWarning.
A __version__ module attribute is added.
The email address argument to validate_email is now marked as positional-only to better reflect the documented usage using the new Python 3.8 feature.

2.0.0 (April 15, 2023)

This is a major update to the library, but since email address specs haven't changed there should be no significant changes to which email addresses are considered valid or invalid with default options. There are new options for accepting unusual email addresses that were previously always rejected, some changes to how DNS errors are handled, many changes in error message text, and major internal improvements including the addition of type annotations. Python 3.7+ is now required. Details follow:

Python 2.x and 3.x versions through 3.6, and dnspython 1.x, are no longer supported. Python 3.7+ with dnspython 2.x are now required.
The dnspython package is no longer required if DNS checks are not used, although it will install automatically.
NoNameservers and NXDOMAIN DNS errors are now handled differently: NoNameservers no longer fails validation, and NXDOMAIN now skips checking for an A/AAAA fallback and goes straight to failing validation.
Some syntax error messages have changed because they are now checked explicitly rather than as a part of other checks.
The quoted-string local part syntax (e.g. multiple @@-signs, spaces, etc. if surrounded by quotes) and domain-literal addresses (e.g. @@[192.XXX...] or @@[IPv6:...]) are now parsed but not considered valid by default. Better error messages are now given for these addresses since it can be confusing for a technically valid address to be rejected, and new allow_quoted_local and allow_domain_literal options are added to allow these addresses if you really need them.
Some other error messages have changed to not repeat the email address in the error message.
The email field on the returned ValidatedEmail object has been renamed to normalized to be clearer about its importance, but access via .email is also still supported.
Some mailbox names like postmaster are now normalized to lowercase per RFC 2142.
The library has been reorganized internally into smaller modules.
The tests have been reorganized and expanded. Deliverability tests now mostly use captured DNS responses so they can be run off-line.
The main tool now reads options to validate_email from environment variables.
Type annotations have been added to the exported methods and the ValidatedEmail class and some internal methods.
The old dict-like pattern for the return value of validate_email is deprecated.
Versions 2.0.0.post1 and 2.0.0.post2 corrected some packaging issues. 2.0.0.post2 also added a check for an invalid combination of arguments.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.9 2023/05/05 10:07:57 wiz Exp $
d3 1
a3 1
DISTNAME=	email_validator-2.1.0.post1
@


1.9
log
@py-email_validator: not for Python 2
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.8 2022/08/23 21:49:56 wiz Exp $
d3 1
a3 1
DISTNAME=	email_validator-1.1.3
a4 1
PKGREVISION=	2
d13 2
d16 1
a16 3
DEPENDS+=	${PYPKGPREFIX}-dns-[0-9]*:../../net/py-dns

PYTHON_VERSIONS_INCOMPATIBLE=	27
d20 1
a20 1
USE_PKG_RESOURCES=	yes
d26 1
a26 1
.include "../../lang/python/egg.mk"
@


1.8
log
@*: switch to appropriate py-dns version
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.7 2022/01/05 15:41:13 wiz Exp $
d15 1
d17 1
a17 1
PYTHON_VERSIONED_DEPENDENCIES=	dns
a26 1
.include "../../lang/python/versioned_dependencies.mk"
@


1.7
log
@python: egg.mk: add USE_PKG_RESOURCES flag

This flag should be set for packages that import pkg_resources
and thus need setuptools after the build step.

Set this flag for packages that need it and bump PKGREVISION.
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.6 2022/01/04 20:54:11 wiz Exp $
a13 1
DEPENDS+=	${PYPKGPREFIX}-dns>=1.15.0:../../net/py-dns
d16 2
d26 1
@


1.6
log
@*: bump PKGREVISION for egg.mk users

They now have a tool dependency on py-setuptools instead of a DEPENDS
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.5 2021/06/13 17:38:33 adam Exp $
d5 1
a5 1
PKGREVISION=	1
d19 2
@


1.5
log
@py-email_validator: updated to 1.1.3

1.1.3:
Unknown changes
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.4 2020/05/29 08:56:54 adam Exp $
d5 1
@


1.4
log
@py-email_validator: updated to 1.1.1

1.1.1:
Unknown changes
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.3 2020/05/01 08:12:08 adam Exp $
d3 1
a3 1
DISTNAME=	email_validator-1.1.1
d6 1
a6 1
MASTER_SITES=	${MASTER_SITE_PYPI:=e/email_validator/}
@


1.3
log
@py-email_validator: updated to 1.1.0

1.1.0:
Unknown changes
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.2 2018/01/18 08:43:40 adam Exp $
d3 1
a3 1
DISTNAME=	email_validator-1.1.0
@


1.2
log
@Fixed typo
@
text
@d1 1
a1 1
# $NetBSD: Makefile,v 1.1 2018/01/18 08:35:48 adam Exp $
d3 1
a3 1
DISTNAME=	email_validator-1.0.2
d20 1
a20 1
	${MV} email_validator email_validator${PYVERSSUFFIX} || ${TRUE}
@


1.1
log
@py-email_validator: added version 1.0.2

This library validates that address are of the form x@@y.com. This is the sort
of validation you would want for a login form on a website.

Key features:
* Good for validating email addresses used for logins/identity.
* Friendly error messages when validation fails (appropriate to show to end
   users).
* (optionally) Checks deliverability: Does the domain name resolve?
* Supports internationalized domain names and (optionally) internationalized
  local parts.
* Normalizes email addresses (super important for internationalized addresses!).
@
text
@d1 1
a1 1
# $NetBSD$
d10 1
a10 1
COMMENT=	Rrobust email syntax and deliverability validation library
@

