From nobody Wed Mar 19 18:18:35 2025 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZHxmC673jz5qFjq; Wed, 19 Mar 2025 18:18:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZHxmC2HPHz3BrV; Wed, 19 Mar 2025 18:18:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1742408315; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OusX3LgU2eFEZbes7ZHHUDOPxw/Q92DwFBAfBit/ca4=; b=s+ZJQoU7IC7l6PGxY31Zqhpugz5SOmQJd5O5crs1CGMKeEO2IcxI96DkGSvjUZcu3gJ08b 9qQXfjBMrCVIUElEmpYG7T5JQp7lkWG7As3SwuzxnEgq85CS43lpGfrDQe4pJ2loQN+oA3 4LimGJ8g4RN94EggM/rkuwrLegAgY1Pjabba4JbeaOXvbkE+NoJ8EThkjw45B1hhpZJFj3 qX3+/OfXGVFrGUq5qfuOD1z9EzEKtNT5cJyt8B21ZlIjBEho8aEMi6ZVQ9KMBMz/JHh0ho GBbNsu0qF1m445TU5hVG3V778/thJeRTGUDRHdBPR4qC3k6S7J3ga8kN6IYvfw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1742408315; a=rsa-sha256; cv=none; b=ucj1qaBVI5A1X6dpN8qxz6pZXw1pzMyGowJnOmiDvMpmC2QqNsUy3MtjON5gfpNm7+S4V1 EwHHIq4wgzrS7PrLmMKJPumLwWTiYdpbIxMC7oPBZIoETJ+GtMZL0oDAz95RMJiNBhOQGL AB84rsfuKNHZdYtq5eKXIHb/qIiy4l6osTyyL5puNXLOUW6u58U9xzLlFdmTFsLw7ZEjDx YOXsSPeczZuuDkwfo7RyrxoxxAZiSHKAGTlGuUxi7GR4YdznGhkIo946pyFqv1xcMAdHEM 4OFXtJRnccsriOJsGBmpXOCCNuIrpItRtLkmZ7hrRvaR/4TVjjQePqcPhGIWYA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1742408315; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OusX3LgU2eFEZbes7ZHHUDOPxw/Q92DwFBAfBit/ca4=; b=E1dl+qgH+XFEKAyQ4IlcQ2se4GfHerrlfhBCXxZ7jaFzjGaFL87VWWo1Yn3UzAPskniQx1 Vx9r8E2qihui3G+F/Zdg1pnUTJ3NhBGSOoF2TNsmZqMnaIDpxyvM0oYKlYZY+/KaPaYWPy 394NWrida+1dPPJ102fOgqMbMGbbo0Qn5mmJyoidCj9S2dQgw24UKbBDsah8rpxkcX/1dI QkLi3mEpAkf47Weue2WG/uKJqVp2W2zBmr+r0yJo76UfGw42Nyo8hZ5Nr+0lLn/V2kJPdN Tse3FEZtgASB6ujgsRh5nKQGZxjuFesagzbWKI2k3klmoeajJ1RKhc6xFcdxpA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZHxmC1fNGzWGR; Wed, 19 Mar 2025 18:18:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 52JIIZgo077397; Wed, 19 Mar 2025 18:18:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 52JIIZ8f077394; Wed, 19 Mar 2025 18:18:35 GMT (envelope-from git) Date: Wed, 19 Mar 2025 18:18:35 GMT Message-Id: <202503191818.52JIIZ8f077394@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Po-Chuan Hsieh Subject: git: b0f76cf31497 - main - devel/py-pendulum: Update to 3.0.0 List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-ports-main@freebsd.org Sender: owner-dev-commits-ports-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sunpoet X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b0f76cf31497e4c0a768e1c67e943bbb06504b59 Auto-Submitted: auto-generated The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=b0f76cf31497e4c0a768e1c67e943bbb06504b59 commit b0f76cf31497e4c0a768e1c67e943bbb06504b59 Author: Po-Chuan Hsieh AuthorDate: 2025-03-19 18:15:53 +0000 Commit: Po-Chuan Hsieh CommitDate: 2025-03-19 18:15:53 +0000 devel/py-pendulum: Update to 3.0.0 - Update WWW - Update version requirement of RUN_DEPENDS - Convert to USE_PYTHON=pep517 - Remove PORTSCOUT - Update pkg-descr - Take maintainership Changes: https://github.com/python-pendulum/pendulum/releases https://pendulum.eustace.io/history/ --- devel/py-pendulum/Makefile | 29 +++++++------- devel/py-pendulum/Makefile.crates | 37 ++++++++++++++++++ devel/py-pendulum/distinfo | 80 +++++++++++++++++++++++++++++++++++++-- devel/py-pendulum/pkg-descr | 20 +++++++--- 4 files changed, 143 insertions(+), 23 deletions(-) diff --git a/devel/py-pendulum/Makefile b/devel/py-pendulum/Makefile index 252e9ffa2979..6c2f4a5edb45 100644 --- a/devel/py-pendulum/Makefile +++ b/devel/py-pendulum/Makefile @@ -1,28 +1,29 @@ PORTNAME= pendulum -PORTVERSION= 2.1.1 -PORTREVISION= 3 +PORTVERSION= 3.0.0 CATEGORIES= devel python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +DISTFILES= pendulum-${PORTVERSION}${EXTRACT_SUFX} -MAINTAINER= ports@FreeBSD.org +MAINTAINER= sunpoet@FreeBSD.org COMMENT= Python package to ease datetimes manipulation -WWW= https://pendulum.eustace.io +WWW= https://pendulum.eustace.io/ \ + https://pendulum.eustace.io/docs/ \ + https://github.com/python-pendulum/pendulum LICENSE= MIT -LICENSE_FILE= ${WRKSRC}/LICENSE +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}maturin>=1.0<2.0:devel/py-maturin@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-dateutil>=2.6:devel/py-python-dateutil@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pytz>=2018.3:devel/py-pytz@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pytzdata>=2020.1:devel/py-pytzdata@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}time-machine>=2.6.0:devel/py-time-machine@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}tzdata>=2020.1:devel/py-tzdata@${PY_FLAVOR} -USES= python -USE_PYTHON= autoplist distutils +USES= cargo python:3.9+ +USE_PYTHON= autoplist concurrent pep517 -PORTSCOUT= skipv:2.1.2 - -post-install: - @${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/pendulum/_extensions/_helpers*.so - @${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/pendulum/parsing/_iso8601*.so +CARGO_BUILD= no +CARGO_CARGOLOCK=${WRKSRC}/rust/Cargo.lock +CARGO_CARGOTOML=${WRKSRC}/rust/Cargo.toml +CARGO_INSTALL= no .include diff --git a/devel/py-pendulum/Makefile.crates b/devel/py-pendulum/Makefile.crates new file mode 100644 index 000000000000..58fccca3c271 --- /dev/null +++ b/devel/py-pendulum/Makefile.crates @@ -0,0 +1,37 @@ +CARGO_CRATES= autocfg-1.1.0 \ + bitflags-1.3.2 \ + cc-1.0.79 \ + cfg-if-1.0.0 \ + indoc-1.0.9 \ + libc-0.2.139 \ + libmimalloc-sys-0.1.35 \ + lock_api-0.4.9 \ + memoffset-0.9.0 \ + mimalloc-0.1.39 \ + once_cell-1.17.1 \ + parking_lot-0.12.1 \ + parking_lot_core-0.9.7 \ + proc-macro2-1.0.51 \ + pyo3-0.19.1 \ + pyo3-build-config-0.19.1 \ + pyo3-ffi-0.19.1 \ + pyo3-macros-0.19.1 \ + pyo3-macros-backend-0.19.1 \ + python3-dll-a-0.2.9 \ + quote-1.0.23 \ + redox_syscall-0.2.16 \ + scopeguard-1.1.0 \ + smallvec-1.10.0 \ + syn-1.0.109 \ + target-lexicon-0.12.6 \ + unicode-ident-1.0.6 \ + unindent-0.1.11 \ + windows-sys-0.45.0 \ + windows-targets-0.42.1 \ + windows_aarch64_gnullvm-0.42.1 \ + windows_aarch64_msvc-0.42.1 \ + windows_i686_gnu-0.42.1 \ + windows_i686_msvc-0.42.1 \ + windows_x86_64_gnu-0.42.1 \ + windows_x86_64_gnullvm-0.42.1 \ + windows_x86_64_msvc-0.42.1 diff --git a/devel/py-pendulum/distinfo b/devel/py-pendulum/distinfo index 618d84ab8223..66b194b8edf6 100644 --- a/devel/py-pendulum/distinfo +++ b/devel/py-pendulum/distinfo @@ -1,3 +1,77 @@ -TIMESTAMP = 1594728548 -SHA256 (pendulum-2.1.1.tar.gz) = d97739a7a5d5fc64e98bab46b292ac9f15aee88b5d3851cd6037d011a7b18af0 -SIZE (pendulum-2.1.1.tar.gz) = 84012 +TIMESTAMP = 1742405456 +SHA256 (pendulum-3.0.0.tar.gz) = 5d034998dea404ec31fae27af6b22cff1708f830a1ed7353be4d1019bb9f584e +SIZE (pendulum-3.0.0.tar.gz) = 84524 +SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa +SIZE (rust/crates/autocfg-1.1.0.crate) = 13272 +SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a +SIZE (rust/crates/bitflags-1.3.2.crate) = 23021 +SHA256 (rust/crates/cc-1.0.79.crate) = 50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f +SIZE (rust/crates/cc-1.0.79.crate) = 62624 +SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd +SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934 +SHA256 (rust/crates/indoc-1.0.9.crate) = bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306 +SIZE (rust/crates/indoc-1.0.9.crate) = 13475 +SHA256 (rust/crates/libc-0.2.139.crate) = 201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79 +SIZE (rust/crates/libc-0.2.139.crate) = 638983 +SHA256 (rust/crates/libmimalloc-sys-0.1.35.crate) = 3979b5c37ece694f1f5e51e7ecc871fdb0f517ed04ee45f88d15d6d553cb9664 +SIZE (rust/crates/libmimalloc-sys-0.1.35.crate) = 184695 +SHA256 (rust/crates/lock_api-0.4.9.crate) = 435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df +SIZE (rust/crates/lock_api-0.4.9.crate) = 25685 +SHA256 (rust/crates/memoffset-0.9.0.crate) = 5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c +SIZE (rust/crates/memoffset-0.9.0.crate) = 9033 +SHA256 (rust/crates/mimalloc-0.1.39.crate) = fa01922b5ea280a911e323e4d2fd24b7fe5cc4042e0d2cda3c40775cdc4bdc9c +SIZE (rust/crates/mimalloc-0.1.39.crate) = 3727 +SHA256 (rust/crates/once_cell-1.17.1.crate) = b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3 +SIZE (rust/crates/once_cell-1.17.1.crate) = 32856 +SHA256 (rust/crates/parking_lot-0.12.1.crate) = 3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f +SIZE (rust/crates/parking_lot-0.12.1.crate) = 40967 +SHA256 (rust/crates/parking_lot_core-0.9.7.crate) = 9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521 +SIZE (rust/crates/parking_lot_core-0.9.7.crate) = 32412 +SHA256 (rust/crates/proc-macro2-1.0.51.crate) = 5d727cae5b39d21da60fa540906919ad737832fe0b1c165da3a34d6548c849d6 +SIZE (rust/crates/proc-macro2-1.0.51.crate) = 41804 +SHA256 (rust/crates/pyo3-0.19.1.crate) = ffb88ae05f306b4bfcde40ac4a51dc0b05936a9207a4b75b798c7729c4258a59 +SIZE (rust/crates/pyo3-0.19.1.crate) = 418297 +SHA256 (rust/crates/pyo3-build-config-0.19.1.crate) = 554db24f0b3c180a9c0b1268f91287ab3f17c162e15b54caaae5a6b3773396b0 +SIZE (rust/crates/pyo3-build-config-0.19.1.crate) = 29205 +SHA256 (rust/crates/pyo3-ffi-0.19.1.crate) = 922ede8759e8600ad4da3195ae41259654b9c55da4f7eec84a0ccc7d067a70a4 +SIZE (rust/crates/pyo3-ffi-0.19.1.crate) = 64837 +SHA256 (rust/crates/pyo3-macros-0.19.1.crate) = 8a5caec6a1dd355964a841fcbeeb1b89fe4146c87295573f94228911af3cc5a2 +SIZE (rust/crates/pyo3-macros-0.19.1.crate) = 7173 +SHA256 (rust/crates/pyo3-macros-backend-0.19.1.crate) = e0b78ccbb160db1556cdb6fd96c50334c5d4ec44dc5e0a968d0a1208fa0efa8b +SIZE (rust/crates/pyo3-macros-backend-0.19.1.crate) = 49916 +SHA256 (rust/crates/python3-dll-a-0.2.9.crate) = d5f07cd4412be8fa09a721d40007c483981bbe072cd6a21f2e83e04ec8f8343f +SIZE (rust/crates/python3-dll-a-0.2.9.crate) = 66092 +SHA256 (rust/crates/quote-1.0.23.crate) = 8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b +SIZE (rust/crates/quote-1.0.23.crate) = 28058 +SHA256 (rust/crates/redox_syscall-0.2.16.crate) = fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a +SIZE (rust/crates/redox_syscall-0.2.16.crate) = 24012 +SHA256 (rust/crates/scopeguard-1.1.0.crate) = d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd +SIZE (rust/crates/scopeguard-1.1.0.crate) = 11470 +SHA256 (rust/crates/smallvec-1.10.0.crate) = a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0 +SIZE (rust/crates/smallvec-1.10.0.crate) = 31564 +SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237 +SIZE (rust/crates/syn-1.0.109.crate) = 237611 +SHA256 (rust/crates/target-lexicon-0.12.6.crate) = 8ae9980cab1db3fceee2f6c6f643d5d8de2997c58ee8d25fb0cc8a9e9e7348e5 +SIZE (rust/crates/target-lexicon-0.12.6.crate) = 24357 +SHA256 (rust/crates/unicode-ident-1.0.6.crate) = 84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc +SIZE (rust/crates/unicode-ident-1.0.6.crate) = 42158 +SHA256 (rust/crates/unindent-0.1.11.crate) = e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c +SIZE (rust/crates/unindent-0.1.11.crate) = 7700 +SHA256 (rust/crates/windows-sys-0.45.0.crate) = 75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0 +SIZE (rust/crates/windows-sys-0.45.0.crate) = 2568659 +SHA256 (rust/crates/windows-targets-0.42.1.crate) = 8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7 +SIZE (rust/crates/windows-targets-0.42.1.crate) = 5524 +SHA256 (rust/crates/windows_aarch64_gnullvm-0.42.1.crate) = 8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608 +SIZE (rust/crates/windows_aarch64_gnullvm-0.42.1.crate) = 362795 +SHA256 (rust/crates/windows_aarch64_msvc-0.42.1.crate) = 4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7 +SIZE (rust/crates/windows_aarch64_msvc-0.42.1.crate) = 664655 +SHA256 (rust/crates/windows_i686_gnu-0.42.1.crate) = de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640 +SIZE (rust/crates/windows_i686_gnu-0.42.1.crate) = 733428 +SHA256 (rust/crates/windows_i686_msvc-0.42.1.crate) = bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605 +SIZE (rust/crates/windows_i686_msvc-0.42.1.crate) = 722583 +SHA256 (rust/crates/windows_x86_64_gnu-0.42.1.crate) = c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45 +SIZE (rust/crates/windows_x86_64_gnu-0.42.1.crate) = 697614 +SHA256 (rust/crates/windows_x86_64_gnullvm-0.42.1.crate) = 628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463 +SIZE (rust/crates/windows_x86_64_gnullvm-0.42.1.crate) = 362788 +SHA256 (rust/crates/windows_x86_64_msvc-0.42.1.crate) = 447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd +SIZE (rust/crates/windows_x86_64_msvc-0.42.1.crate) = 664606 diff --git a/devel/py-pendulum/pkg-descr b/devel/py-pendulum/pkg-descr index 113bf420e8f7..0082e0e45967 100644 --- a/devel/py-pendulum/pkg-descr +++ b/devel/py-pendulum/pkg-descr @@ -1,8 +1,16 @@ -Pendulum is a Python package to ease datetimes manipulation. +Native datetime instances are enough for basic cases but when you face more +complex use-cases they often show limitations and are not so intuitive to work +with. Pendulum provides a cleaner and more easy to use API while still relying +on the standard library. So it's still datetime but better. -It provides classes that are drop-in replacements for the native ones (they -inherit from them). +Unlike other datetime libraries for Python, Pendulum is a drop-in replacement +for the standard datetime class (it inherits from it), so, basically, you can +replace all your datetime instances by DateTime instances in your code +(exceptions exist for libraries that check the type of the objects by using the +type function like sqlite3 or PyMySQL for instance). -Special care has been taken to ensure timezones are handled correctly, and -are based on the underlying tzinfo implementation. For example all -comparisons are done in UTC or in the timezone of the datetime being used. +It also removes the notion of naive datetimes: each Pendulum instance is +timezone-aware and by default in UTC for ease of use. + +Pendulum also improves the standard timedelta class by providing more intuitive +methods and properties.