summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2025-10-16 12:03:23 -0700
committerYuri Victorovich <yuri@FreeBSD.org>2025-10-16 16:15:06 -0700
commitc1c2248290be2f93909d5eb8eae8774efda1e7fc (patch)
treea6b193bb31f5baa4bb19665e83cf6843005bc1ee
parentscience/py-corner: New port: Make some beautiful corner plots (diff)
devel/py-daiquiri: New port: Library to configure Python logging easily
-rw-r--r--devel/Makefile1
-rw-r--r--devel/py-daiquiri/Makefile28
-rw-r--r--devel/py-daiquiri/distinfo3
-rw-r--r--devel/py-daiquiri/files/patch-pyproject.toml9
-rw-r--r--devel/py-daiquiri/pkg-descr15
5 files changed, 56 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index a56fabd6c81c..f571dcd4ac4b 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4775,6 +4775,7 @@
SUBDIR += py-daemon-runner
SUBDIR += py-daemonize
SUBDIR += py-daemons
+ SUBDIR += py-daiquiri
SUBDIR += py-dal
SUBDIR += py-darts.util.lru
SUBDIR += py-dask
diff --git a/devel/py-daiquiri/Makefile b/devel/py-daiquiri/Makefile
new file mode 100644
index 000000000000..4b7f39c2ad94
--- /dev/null
+++ b/devel/py-daiquiri/Makefile
@@ -0,0 +1,28 @@
+PORTNAME= daiquiri
+DISTVERSION= 3.4.0
+CATEGORIES= devel python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Library to configure Python logging easily
+WWW= https://github.com/Mergifyio/daiquiri
+
+LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= ${PY_SETUPTOOLS} \
+ ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=8:devel/py-setuptools-scm@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-json-logger>=3:devel/py-python-json-logger@${PY_FLAVOR}
+
+USES= python
+USE_PYTHON= pep517 autoplist concurrent pytest
+
+TEST_WRKSRC= ${WRKSRC}/daiquiri/tests
+
+NO_ARCH= yes
+
+# tests as of 3.4.0: 21 passed, 1 warning in 3.83s
+
+.include <bsd.port.mk>
diff --git a/devel/py-daiquiri/distinfo b/devel/py-daiquiri/distinfo
new file mode 100644
index 000000000000..b4022acdf59c
--- /dev/null
+++ b/devel/py-daiquiri/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1760469552
+SHA256 (daiquiri-3.4.0.tar.gz) = ca1d32c2c0a06f3614ff803a87ac1d50d628db34d0bf7ed97df0ca576332054f
+SIZE (daiquiri-3.4.0.tar.gz) = 19527
diff --git a/devel/py-daiquiri/files/patch-pyproject.toml b/devel/py-daiquiri/files/patch-pyproject.toml
new file mode 100644
index 000000000000..dc5f5b7219af
--- /dev/null
+++ b/devel/py-daiquiri/files/patch-pyproject.toml
@@ -0,0 +1,9 @@
+--- pyproject.toml.orig 2024-09-04 01:30:43 UTC
++++ pyproject.toml
+@@ -1,5 +1,5 @@
+ [build-system]
+-requires = ["setuptools>=64", "setuptools_scm>=8"]
++requires = ["setuptools>=63", "setuptools_scm>=8"]
+ build-backend = "setuptools.build_meta"
+
+ [project]
diff --git a/devel/py-daiquiri/pkg-descr b/devel/py-daiquiri/pkg-descr
new file mode 100644
index 000000000000..16f4e7a9417d
--- /dev/null
+++ b/devel/py-daiquiri/pkg-descr
@@ -0,0 +1,15 @@
+Daiquiri is a Python library that simplifies the configuration and usage of
+Python's built-in logging module. It provides an easy-to-use interface for
+setting up basic logging functionalities, often with a single call to
+`daiquiri.setup()`.
+
+Key features include:
+- Flexible output options: logs to stderr (with colored output), syslog, systemd
+ journal, or files.
+- Custom formatters: supports plain text and structured JSON logs.
+- Enhanced logger: allows passing keyword arguments to logging methods, which
+ become part of the log record.
+- Warning handling: overrides Python's default warning behavior to log warnings
+ via the logging system.
+- Exception handling: integrates with `sys.excepthook` to automatically log
+ uncaught exceptions.