CVS commit: pkgsrc/mail/py-flufl.bounce

"Adam Ciarcinski" <[email protected]> Wed, 5 Aug 2026 02:30:44 +0000
Newsgroups gmane.os.netbsd.devel.pkgsrc.cvs
Message-ID <[email protected]>
This is a multi-part message in MIME format.

--_----------=_1785897044103160
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset="US-ASCII"

Module Name:	pkgsrc
Committed By:	adam
Date:		Wed Aug  5 02:30:44 UTC 2026

Modified Files:
	pkgsrc/mail/py-flufl.bounce: Makefile PLIST distinfo

Log Message:
py-flufl.bounce: updated to 5.0.1

5.0.1 (2026-05-21)

* Fix a false recognition of Microsoft bounces from the Groupwise detector. :GL:`16`
  Found and fixed by Mark Sapiro.

5.0 (2026-05-20)

* Major project management modernization.
* Add Mark as a named co-owner.
* Drop Python 3.9, add Python 3.13, 3.14, and 3.15.
* Added recognition for a non-compliant Earthlink DSN.
* Fixed a long-standing bug in the Caiwireless detector that returned a set of individual address
  characters instead of the bouncing address itself, and added a test exercising the previously
  buggy return path.
* Replaced deprecated/removed pkg_resources.
* Replaced the ``zope.interface`` dependency with ``typing.Protocol``; the ``IBounceDetector``
  marker interface has been renamed to ``BounceDetector``.  **This is a backwards incompatible
  change**.
* The return types of ``scan_message``, ``all_failures``, and detector ``process`` methods
  are now ``frozenset[bytes]`` instead of mutable ``set[bytes]``; the ``NoTemporaryFailures``,
  ``NoPermanentFailures``, and ``NoFailures`` sentinel constants are correspondingly empty
  frozensets rather than empty tuples.  **This is a backwards incompatible change**.


To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 pkgsrc/mail/py-flufl.bounce/Makefile
cvs rdiff -u -r1.2 -r1.3 pkgsrc/mail/py-flufl.bounce/PLIST
cvs rdiff -u -r1.4 -r1.5 pkgsrc/mail/py-flufl.bounce/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.


--_----------=_1785897044103160
Content-Disposition: inline
Content-Length: 10689
Content-Transfer-Encoding: binary
Content-Type: text/x-diff; charset=us-ascii

Modified files:

Index: pkgsrc/mail/py-flufl.bounce/Makefile
diff -u pkgsrc/mail/py-flufl.bounce/Makefile:1.8 pkgsrc/mail/py-flufl.bounce/Makefile:1.9
--- pkgsrc/mail/py-flufl.bounce/Makefile:1.8	Sun Jun 18 05:39:37 2023
+++ pkgsrc/mail/py-flufl.bounce/Makefile	Wed Aug  5 02:30:44 2026
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.8 2023/06/18 05:39:37 adam Exp $
+# $NetBSD: Makefile,v 1.9 2026/08/05 02:30:44 adam Exp $
 
-DISTNAME=	flufl.bounce-4.0
-PKGNAME=	${PYPKGPREFIX}-${DISTNAME}
-CATEGORIES=	mail
+DISTNAME=	flufl_bounce-5.0.1
+PKGNAME=	${PYPKGPREFIX}-${DISTNAME:S/_/./}
+CATEGORIES=	mail python
 MASTER_SITES=	${MASTER_SITE_PYPI:=f/flufl.bounce/}
 
 MAINTAINER=	[email protected]
@@ -10,12 +10,11 @@ HOMEPAGE=	https://fluflbounce.readthedoc
 COMMENT=	Email bounce detectors
 LICENSE=	apache-2.0
 
-PYTHON_VERSIONS_INCOMPATIBLE=	27
-
+TOOL_DEPENDS+=	${PYPKGPREFIX}-hatchling>=0:../../devel/py-hatchling
 DEPENDS+=	${PYPKGPREFIX}-atpublic-[0-9]*:../../devel/py-atpublic
-DEPENDS+=	${PYPKGPREFIX}-zope.interface-[0-9]*:../../devel/py-zope.interface
+TEST_DEPENDS+=	${PYPKGPREFIX}-sybil>=0:../../devel/py-sybil
 
-TOOL_DEPENDS+=	${PYPKGPREFIX}-nose2-[0-9]*:../../devel/py-nose2
+USE_LANGUAGES=	# none
 
-.include "../../lang/python/egg.mk"
+.include "../../lang/python/wheel.mk"
 .include "../../mk/bsd.pkg.mk"

Index: pkgsrc/mail/py-flufl.bounce/PLIST
diff -u pkgsrc/mail/py-flufl.bounce/PLIST:1.2 pkgsrc/mail/py-flufl.bounce/PLIST:1.3
--- pkgsrc/mail/py-flufl.bounce/PLIST:1.2	Mon May  8 20:35:35 2023
+++ pkgsrc/mail/py-flufl.bounce/PLIST	Wed Aug  5 02:30:44 2026
@@ -1,14 +1,8 @@
-@comment $NetBSD: PLIST,v 1.2 2023/05/08 20:35:35 markd Exp $
-${PYSITELIB}/${EGG_NAME}-nspkg.pth
-${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
-${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
-${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
-${PYSITELIB}/${EGG_INFODIR}/namespace_packages.txt
-${PYSITELIB}/${EGG_INFODIR}/not-zip-safe
-${PYSITELIB}/${EGG_INFODIR}/requires.txt
-${PYSITELIB}/${EGG_INFODIR}/top_level.txt
-${PYSITELIB}/flufl/bounce/NEWS.rst
-${PYSITELIB}/flufl/bounce/README.rst
+@comment $NetBSD: PLIST,v 1.3 2026/08/05 02:30:44 adam Exp $
+${PYSITELIB}/${WHEEL_INFODIR}/METADATA
+${PYSITELIB}/${WHEEL_INFODIR}/RECORD
+${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
+${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE
 ${PYSITELIB}/flufl/bounce/__init__.py
 ${PYSITELIB}/flufl/bounce/__init__.pyc
 ${PYSITELIB}/flufl/bounce/__init__.pyo
@@ -69,143 +63,6 @@ ${PYSITELIB}/flufl/bounce/_detectors/yal
 ${PYSITELIB}/flufl/bounce/_scan.py
 ${PYSITELIB}/flufl/bounce/_scan.pyc
 ${PYSITELIB}/flufl/bounce/_scan.pyo
-${PYSITELIB}/flufl/bounce/conf.py
-${PYSITELIB}/flufl/bounce/conf.pyc
-${PYSITELIB}/flufl/bounce/conf.pyo
-${PYSITELIB}/flufl/bounce/docs/__init__.py
-${PYSITELIB}/flufl/bounce/docs/__init__.pyc
-${PYSITELIB}/flufl/bounce/docs/__init__.pyo
-${PYSITELIB}/flufl/bounce/docs/using.rst
 ${PYSITELIB}/flufl/bounce/interfaces.py
 ${PYSITELIB}/flufl/bounce/interfaces.pyc
 ${PYSITELIB}/flufl/bounce/interfaces.pyo
-${PYSITELIB}/flufl/bounce/testing/__init__.py
-${PYSITELIB}/flufl/bounce/testing/__init__.pyc
-${PYSITELIB}/flufl/bounce/testing/__init__.pyo
-${PYSITELIB}/flufl/bounce/testing/helpers.py
-${PYSITELIB}/flufl/bounce/testing/helpers.pyc
-${PYSITELIB}/flufl/bounce/testing/helpers.pyo
-${PYSITELIB}/flufl/bounce/tests/__init__.py
-${PYSITELIB}/flufl/bounce/tests/__init__.pyc
-${PYSITELIB}/flufl/bounce/tests/__init__.pyo
-${PYSITELIB}/flufl/bounce/tests/data/__init__.py
-${PYSITELIB}/flufl/bounce/tests/data/__init__.pyc
-${PYSITELIB}/flufl/bounce/tests/data/__init__.pyo
-${PYSITELIB}/flufl/bounce/tests/data/aol_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/bounce_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/bounce_02.txt
-${PYSITELIB}/flufl/bounce/tests/data/bounce_03.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_02.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_03.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_04.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_05.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_06.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_07.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_08.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_09.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_10.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_11.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_12.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_13.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_14.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_15.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_16.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_17.txt
-${PYSITELIB}/flufl/bounce/tests/data/dsn_18.txt
-${PYSITELIB}/flufl/bounce/tests/data/dumbass_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/exim_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/groupwise_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/groupwise_02.txt
-${PYSITELIB}/flufl/bounce/tests/data/groupwise_03.txt
-${PYSITELIB}/flufl/bounce/tests/data/hotpop_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/llnl_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/microsoft_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/microsoft_02.txt
-${PYSITELIB}/flufl/bounce/tests/data/microsoft_03.txt
-${PYSITELIB}/flufl/bounce/tests/data/microsoft_04.txt
-${PYSITELIB}/flufl/bounce/tests/data/netscape_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/newmailru_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/postfix_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/postfix_02.txt
-${PYSITELIB}/flufl/bounce/tests/data/postfix_03.txt
-${PYSITELIB}/flufl/bounce/tests/data/postfix_04.txt
-${PYSITELIB}/flufl/bounce/tests/data/postfix_05.txt
-${PYSITELIB}/flufl/bounce/tests/data/qmail_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/qmail_02.txt
-${PYSITELIB}/flufl/bounce/tests/data/qmail_03.txt
-${PYSITELIB}/flufl/bounce/tests/data/qmail_04.txt
-${PYSITELIB}/flufl/bounce/tests/data/qmail_05.txt
-${PYSITELIB}/flufl/bounce/tests/data/qmail_06.txt
-${PYSITELIB}/flufl/bounce/tests/data/qmail_07.txt
-${PYSITELIB}/flufl/bounce/tests/data/qmail_08.txt
-${PYSITELIB}/flufl/bounce/tests/data/sendmail_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_02.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_03.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_04.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_05.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_06.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_07.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_08.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_09.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_10.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_11.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_12.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_13.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_14.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_15.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_16.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_17.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_18.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_19.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_20.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_21.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_22.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_23.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_24.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_25.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_26.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_27.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_28.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_29.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_30.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_31.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_32.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_33.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_34.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_35.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_36.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_37.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_38.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_39.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_40.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_41.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_42.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_43.txt
-${PYSITELIB}/flufl/bounce/tests/data/simple_44.txt
-${PYSITELIB}/flufl/bounce/tests/data/sina_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/smtp32_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/smtp32_02.txt
-${PYSITELIB}/flufl/bounce/tests/data/smtp32_03.txt
-${PYSITELIB}/flufl/bounce/tests/data/smtp32_04.txt
-${PYSITELIB}/flufl/bounce/tests/data/smtp32_05.txt
-${PYSITELIB}/flufl/bounce/tests/data/smtp32_06.txt
-${PYSITELIB}/flufl/bounce/tests/data/smtp32_07.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_01.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_02.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_03.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_04.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_05.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_06.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_07.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_08.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_09.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_10.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_11.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_12.txt
-${PYSITELIB}/flufl/bounce/tests/data/yahoo_13.txt
-${PYSITELIB}/flufl/bounce/tests/data/yale_01.txt
-${PYSITELIB}/flufl/bounce/tests/test_detectors.py
-${PYSITELIB}/flufl/bounce/tests/test_detectors.pyc
-${PYSITELIB}/flufl/bounce/tests/test_detectors.pyo

Index: pkgsrc/mail/py-flufl.bounce/distinfo
diff -u pkgsrc/mail/py-flufl.bounce/distinfo:1.4 pkgsrc/mail/py-flufl.bounce/distinfo:1.5
--- pkgsrc/mail/py-flufl.bounce/distinfo:1.4	Mon May  8 20:35:35 2023
+++ pkgsrc/mail/py-flufl.bounce/distinfo	Wed Aug  5 02:30:44 2026
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.4 2023/05/08 20:35:35 markd Exp $
+$NetBSD: distinfo,v 1.5 2026/08/05 02:30:44 adam Exp $
 
-BLAKE2s (flufl.bounce-4.0.tar.gz) = f535b1dc8285b5f76ff19f038f29eccca2c54c3be63b0f3a5b4735787e00c082
-SHA512 (flufl.bounce-4.0.tar.gz) = c6dd8cf2f4f0ea7c8698054042dfc9da3bd1a2d9cae082e01a0be9c39018fefba07154e2c9c15b1a00c896e58bb0a6d2063a3c067bec6b464d201bb7b3220e9e
-Size (flufl.bounce-4.0.tar.gz) = 108623 bytes
+BLAKE2s (flufl_bounce-5.0.1.tar.gz) = 9060d7bd129ffb569d9f2de686b0fe35c46aa23f7f8415713aa2f36743e35a27
+SHA512 (flufl_bounce-5.0.1.tar.gz) = cdeae4728a25b8aa81560344990c31f04d5c9794ffaab01abf0df35eb62911faa8741b8abeedd470c856ab6640871c823157c005c3d21e57ba8bd891c8b07be8
+Size (flufl_bounce-5.0.1.tar.gz) = 98935 bytes


--_----------=_1785897044103160--