git: 736629435e1f - main - devel/py-uuid7: add port: UUID version 7, which are time-sortable

From: Hiroki Tagato <tagattie_at_FreeBSD.org>
Date: Thu, 11 Sep 2025 14:46:31 UTC
The branch main has been updated by tagattie:

URL: https://cgit.FreeBSD.org/ports/commit/?id=736629435e1f7d6e1d7338302057b473d85331c4

commit 736629435e1f7d6e1d7338302057b473d85331c4
Author:     Hiroki Tagato <tagattie@FreeBSD.org>
AuthorDate: 2025-09-11 14:20:27 +0000
Commit:     Hiroki Tagato <tagattie@FreeBSD.org>
CommitDate: 2025-09-11 14:46:16 +0000

    devel/py-uuid7: add port: UUID version 7, which are time-sortable
    
    This module implements the version 7 UUIDs, proposed by Peabody and
    Davis in
    https://www.ietf.org/id/draft-peabody-dispatch-new-uuid-format-02.html
    as an extension to RFC4122.
    
    Version 7 has the nice characteristic that the start of a UUID encodes
    the time with a chronological sort order and potentially ~50ns time
    resolution, while the end of the UUID includes sufficient random bits
    to ensure consecutive UUIDs will remain unique.
    
    WWW: https://github.com/stevesimmons/uuid7
---
 devel/Makefile           |  1 +
 devel/py-uuid7/Makefile  | 27 +++++++++++++++++++++++++++
 devel/py-uuid7/distinfo  |  3 +++
 devel/py-uuid7/pkg-descr |  9 +++++++++
 4 files changed, 40 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index df9dee91cc8d..e5e4668651b5 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -6149,6 +6149,7 @@
     SUBDIR += py-user_agents
     SUBDIR += py-userpath
     SUBDIR += py-usort
+    SUBDIR += py-uuid7
     SUBDIR += py-uv-dynamic-versioning
     SUBDIR += py-uvloop
     SUBDIR += py-validate-pyproject
diff --git a/devel/py-uuid7/Makefile b/devel/py-uuid7/Makefile
new file mode 100644
index 000000000000..cc9728e84495
--- /dev/null
+++ b/devel/py-uuid7/Makefile
@@ -0,0 +1,27 @@
+PORTNAME=	uuid7
+DISTVERSION=	0.1.0
+CATEGORIES=	devel python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	tagattie@FreeBSD.org
+COMMENT=	UUID version 7, which are time-sortable
+WWW=		https://github.com/stevesimmons/uuid7
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		python
+USE_PYTHON=	autoplist distutils pytest
+
+NO_ARCH=	yes
+
+PORTDOCS=	CONTRIBUTING.rst README.rst
+
+OPTIONS_DEFINE=	DOCS
+
+post-install-DOCS-on:
+	@${MKDIR} ${STAGEDIR}${DOCSDIR}
+	${INSTALL_MAN} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/devel/py-uuid7/distinfo b/devel/py-uuid7/distinfo
new file mode 100644
index 000000000000..883397eb2e14
--- /dev/null
+++ b/devel/py-uuid7/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1757571998
+SHA256 (uuid7-0.1.0.tar.gz) = 8c57aa32ee7456d3cc68c95c4530bc571646defac01895cfc73545449894a63c
+SIZE (uuid7-0.1.0.tar.gz) = 14052
diff --git a/devel/py-uuid7/pkg-descr b/devel/py-uuid7/pkg-descr
new file mode 100644
index 000000000000..8356f1d52a4b
--- /dev/null
+++ b/devel/py-uuid7/pkg-descr
@@ -0,0 +1,9 @@
+This module implements the version 7 UUIDs, proposed by Peabody and
+Davis in
+https://www.ietf.org/id/draft-peabody-dispatch-new-uuid-format-02.html
+as an extension to RFC4122.
+
+Version 7 has the nice characteristic that the start of a UUID encodes
+the time with a chronological sort order and potentially ~50ns time
+resolution, while the end of the UUID includes sufficient random bits
+to ensure consecutive UUIDs will remain unique.