Date: Mon, 01 Jun 2026 18:43:46 +0000 From: Jimmy Olgeni <olgeni@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: 6816c9a39b2b - main - sysutils/bttf: New port: Command-line utility for datetime processing Message-ID: <6a1dd2e2.22908.47612123@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by olgeni: URL: https://cgit.FreeBSD.org/ports/commit/?id=6816c9a39b2bf444c503b68caa7ad9f9a04a47c6 commit 6816c9a39b2bf444c503b68caa7ad9f9a04a47c6 Author: Jimmy Olgeni <olgeni@FreeBSD.org> AuthorDate: 2026-06-01 14:00:04 +0000 Commit: Jimmy Olgeni <olgeni@FreeBSD.org> CommitDate: 2026-06-01 18:42:48 +0000 sysutils/bttf: New port: Command-line utility for datetime processing bttf is a command-line utility for working with dates and times. It exposes much of the functionality of the Jiff datetime library on the command line, providing a more intuitive way to format datetimes or do arithmetic than traditional tools like date(1). --- sysutils/Makefile | 1 + sysutils/bttf/Makefile | 132 ++++++++++++++++++++++++++++ sysutils/bttf/distinfo | 225 ++++++++++++++++++++++++++++++++++++++++++++++++ sysutils/bttf/pkg-descr | 12 +++ 4 files changed, 370 insertions(+) diff --git a/sysutils/Makefile b/sysutils/Makefile index 9016a1f6ad06..b4bc8334a6df 100644 --- a/sysutils/Makefile +++ b/sysutils/Makefile @@ -153,6 +153,7 @@ SUBDIR += bstack SUBDIR += btop SUBDIR += btsixad + SUBDIR += bttf SUBDIR += budgie-control-center SUBDIR += buildah SUBDIR += bulk_extractor diff --git a/sysutils/bttf/Makefile b/sysutils/bttf/Makefile new file mode 100644 index 000000000000..47dfae160566 --- /dev/null +++ b/sysutils/bttf/Makefile @@ -0,0 +1,132 @@ +PORTNAME= bttf +DISTVERSION= 0.1.4 +CATEGORIES= sysutils + +MAINTAINER= olgeni@FreeBSD.org +COMMENT= Command-line utility for datetime arithmetic, parsing and formatting +WWW= https://github.com/BurntSushi/bttf + +LICENSE= MIT UNLICENSE +LICENSE_COMB= dual +LICENSE_FILE_MIT= ${WRKSRC}/LICENSE-MIT +LICENSE_FILE_UNLICENSE= ${WRKSRC}/UNLICENSE + +USES= cargo +USE_GITHUB= yes +GH_ACCOUNT= BurntSushi + +CARGO_CRATES= aho-corasick-1.1.4 \ + anstyle-1.0.14 \ + anyhow-1.0.102 \ + bitflags-2.11.1 \ + bstr-1.12.1 \ + calendrical_calculations-0.2.4 \ + cfg-if-1.0.4 \ + console-0.16.3 \ + core_maths-0.1.1 \ + displaydoc-0.2.6 \ + either-1.16.0 \ + encode_unicode-1.0.0 \ + equivalent-1.0.2 \ + errno-0.3.14 \ + fastrand-2.4.1 \ + fixed_decimal-0.7.2 \ + flume-0.12.0 \ + foldhash-0.1.5 \ + getrandom-0.4.2 \ + hashbrown-0.15.5 \ + hashbrown-0.17.1 \ + heck-0.5.0 \ + icu_calendar-2.2.1 \ + icu_calendar_data-2.2.0 \ + icu_collections-2.2.0 \ + icu_datetime-2.2.0 \ + icu_datetime_data-2.2.0 \ + icu_decimal-2.2.0 \ + icu_decimal_data-2.2.0 \ + icu_locale-2.2.0 \ + icu_locale_core-2.2.0 \ + icu_locale_data-2.2.0 \ + icu_pattern-0.4.2 \ + icu_plurals-2.2.0 \ + icu_plurals_data-2.2.0 \ + icu_provider-2.2.0 \ + icu_time-2.2.0 \ + icu_time_data-2.2.0 \ + id-arena-2.3.0 \ + indexmap-2.14.0 \ + insta-1.47.2 \ + itoa-1.0.18 \ + ixdtf-0.6.5 \ + jiff-0.2.27 \ + jiff-icu-0.2.2 \ + jiff-static-0.2.27 \ + jiff-tzdb-0.1.6 \ + jiff-tzdb-platform-0.1.3 \ + leb128fmt-0.1.0 \ + lexopt-0.3.2 \ + libc-0.2.186 \ + libm-0.2.16 \ + linux-raw-sys-0.12.1 \ + litemap-0.8.2 \ + lock_api-0.4.14 \ + log-0.4.30 \ + memchr-2.8.1 \ + memmap2-0.9.10 \ + once_cell-1.21.4 \ + portable-atomic-1.13.1 \ + portable-atomic-util-0.2.7 \ + potential_utf-0.1.5 \ + prettyplease-0.2.37 \ + proc-macro2-1.0.106 \ + quote-1.0.45 \ + r-efi-6.0.0 \ + regex-1.12.3 \ + regex-automata-0.4.14 \ + regex-syntax-0.8.10 \ + rustix-1.1.4 \ + scopeguard-1.2.0 \ + semver-1.0.28 \ + serde-1.0.228 \ + serde_core-1.0.228 \ + serde_derive-1.0.228 \ + serde_json-1.0.150 \ + similar-2.7.0 \ + smallvec-1.15.1 \ + spin-0.9.8 \ + stable_deref_trait-1.2.1 \ + syn-2.0.117 \ + synstructure-0.13.2 \ + tempfile-3.27.0 \ + textwrap-0.16.2 \ + tinystr-0.8.3 \ + unicode-ident-1.0.24 \ + unicode-xid-0.2.6 \ + utf8_iter-1.0.4 \ + wasip2-1.0.3+wasi-0.2.9 \ + wasip3-0.4.0+wasi-0.3.0-rc-2026-01-06 \ + wasm-encoder-0.244.0 \ + wasm-metadata-0.244.0 \ + wasmparser-0.244.0 \ + windows-link-0.2.1 \ + windows-sys-0.61.2 \ + wit-bindgen-0.51.0 \ + wit-bindgen-0.57.1 \ + wit-bindgen-core-0.51.0 \ + wit-bindgen-rust-0.51.0 \ + wit-bindgen-rust-macro-0.51.0 \ + wit-component-0.244.0 \ + wit-parser-0.244.0 \ + writeable-0.6.3 \ + yoke-0.8.2 \ + yoke-derive-0.8.2 \ + zerofrom-0.1.8 \ + zerofrom-derive-0.1.7 \ + zerotrie-0.2.4 \ + zerovec-0.11.6 \ + zerovec-derive-0.11.3 \ + zmij-1.0.21 + +PLIST_FILES= bin/${PORTNAME} + +.include <bsd.port.mk> diff --git a/sysutils/bttf/distinfo b/sysutils/bttf/distinfo new file mode 100644 index 000000000000..068264abc612 --- /dev/null +++ b/sysutils/bttf/distinfo @@ -0,0 +1,225 @@ +TIMESTAMP = 1780319459 +SHA256 (rust/crates/aho-corasick-1.1.4.crate) = ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301 +SIZE (rust/crates/aho-corasick-1.1.4.crate) = 184015 +SHA256 (rust/crates/anstyle-1.0.14.crate) = 940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000 +SIZE (rust/crates/anstyle-1.0.14.crate) = 17787 +SHA256 (rust/crates/anyhow-1.0.102.crate) = 7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c +SIZE (rust/crates/anyhow-1.0.102.crate) = 48658 +SHA256 (rust/crates/bitflags-2.11.1.crate) = c4512299f36f043ab09a583e57bceb5a5aab7a73db1805848e8fef3c9e8c78b3 +SIZE (rust/crates/bitflags-2.11.1.crate) = 49082 +SHA256 (rust/crates/bstr-1.12.1.crate) = 63044e1ae8e69f3b5a92c736ca6269b8d12fa7efe39bf34ddb06d102cf0e2cab +SIZE (rust/crates/bstr-1.12.1.crate) = 354916 +SHA256 (rust/crates/calendrical_calculations-0.2.4.crate) = 5abbd6eeda6885048d357edc66748eea6e0268e3dd11f326fff5bd248d779c26 +SIZE (rust/crates/calendrical_calculations-0.2.4.crate) = 68875 +SHA256 (rust/crates/cfg-if-1.0.4.crate) = 9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801 +SIZE (rust/crates/cfg-if-1.0.4.crate) = 9360 +SHA256 (rust/crates/console-0.16.3.crate) = d64e8af5551369d19cf50138de61f1c42074ab970f74e99be916646777f8fc87 +SIZE (rust/crates/console-0.16.3.crate) = 34041 +SHA256 (rust/crates/core_maths-0.1.1.crate) = 77745e017f5edba1a9c1d854f6f3a52dac8a12dd5af5d2f54aecf61e43d80d30 +SIZE (rust/crates/core_maths-0.1.1.crate) = 6528 +SHA256 (rust/crates/displaydoc-0.2.6.crate) = 1ac70aa55017e108007fbaf5aa0f54b021c98f92ff8af59d42eda9da96e3dd4f +SIZE (rust/crates/displaydoc-0.2.6.crate) = 21191 +SHA256 (rust/crates/either-1.16.0.crate) = 91622ff5e7162018101f2fea40d6ebf4a78bbe5a49736a2020649edf9693679e +SIZE (rust/crates/either-1.16.0.crate) = 21248 +SHA256 (rust/crates/encode_unicode-1.0.0.crate) = 34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0 +SIZE (rust/crates/encode_unicode-1.0.0.crate) = 56986 +SHA256 (rust/crates/equivalent-1.0.2.crate) = 877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f +SIZE (rust/crates/equivalent-1.0.2.crate) = 7419 +SHA256 (rust/crates/errno-0.3.14.crate) = 39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb +SIZE (rust/crates/errno-0.3.14.crate) = 12002 +SHA256 (rust/crates/fastrand-2.4.1.crate) = 9f1f227452a390804cdb637b74a86990f2a7d7ba4b7d5693aac9b4dd6defd8d6 +SIZE (rust/crates/fastrand-2.4.1.crate) = 20773 +SHA256 (rust/crates/fixed_decimal-0.7.2.crate) = 79c3c892f121fff406e5dd6b28c1b30096b95111c30701a899d4f2b18da6d1bd +SIZE (rust/crates/fixed_decimal-0.7.2.crate) = 49222 +SHA256 (rust/crates/flume-0.12.0.crate) = 5e139bc46ca777eb5efaf62df0ab8cc5fd400866427e56c68b22e414e53bd3be +SIZE (rust/crates/flume-0.12.0.crate) = 68700 +SHA256 (rust/crates/foldhash-0.1.5.crate) = d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2 +SIZE (rust/crates/foldhash-0.1.5.crate) = 21901 +SHA256 (rust/crates/getrandom-0.4.2.crate) = 0de51e6874e94e7bf76d726fc5d13ba782deca734ff60d5bb2fb2607c7406555 +SIZE (rust/crates/getrandom-0.4.2.crate) = 53905 +SHA256 (rust/crates/hashbrown-0.15.5.crate) = 9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1 +SIZE (rust/crates/hashbrown-0.15.5.crate) = 140908 +SHA256 (rust/crates/hashbrown-0.17.1.crate) = ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a +SIZE (rust/crates/hashbrown-0.17.1.crate) = 155512 +SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea +SIZE (rust/crates/heck-0.5.0.crate) = 11517 +SHA256 (rust/crates/icu_calendar-2.2.1.crate) = a2b2acc6263f494f1df50685b53ff8e57869e47d5c6fe39c23d518ae9a4f3e45 +SIZE (rust/crates/icu_calendar-2.2.1.crate) = 812916 +SHA256 (rust/crates/icu_calendar_data-2.2.0.crate) = 118577bcf3a0fa7c6ac0a7d6e951814da84ee56b9b1f68fb4d8d10b08cefaf4d +SIZE (rust/crates/icu_calendar_data-2.2.0.crate) = 5465 +SHA256 (rust/crates/icu_collections-2.2.0.crate) = 2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c +SIZE (rust/crates/icu_collections-2.2.0.crate) = 88011 +SHA256 (rust/crates/icu_datetime-2.2.0.crate) = 989d56ea5bbc43ae2b4e0388874b002884eaf4ed3a76c84a6c8c5ad575e04d72 +SIZE (rust/crates/icu_datetime-2.2.0.crate) = 205694 +SHA256 (rust/crates/icu_datetime_data-2.2.0.crate) = 40d3cc1b690d9703202bc319692ac8a1f3a6390686f0930ff40542450fa34f0b +SIZE (rust/crates/icu_datetime_data-2.2.0.crate) = 1690928 +SHA256 (rust/crates/icu_decimal-2.2.0.crate) = 288247df2e32aa776ac54fdd64de552149ac43cb840f2761811f0e8d09719dd4 +SIZE (rust/crates/icu_decimal-2.2.0.crate) = 29106 +SHA256 (rust/crates/icu_decimal_data-2.2.0.crate) = 6f14a5ca9e8af29eef62064f269078424283d90dbaffeac5225addf62aaabc22 +SIZE (rust/crates/icu_decimal_data-2.2.0.crate) = 22861 +SHA256 (rust/crates/icu_locale-2.2.0.crate) = d5a396343c7208121dc86e35623d3dfe19814a7613cfd14964994cdc9c9a2e26 +SIZE (rust/crates/icu_locale-2.2.0.crate) = 34517 +SHA256 (rust/crates/icu_locale_core-2.2.0.crate) = 92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29 +SIZE (rust/crates/icu_locale_core-2.2.0.crate) = 78639 +SHA256 (rust/crates/icu_locale_data-2.2.0.crate) = d5fdcc9ac77c6d74ff5cf6e65ef3181d6af32003b16fce3a77fb451d2f695993 +SIZE (rust/crates/icu_locale_data-2.2.0.crate) = 116702 +SHA256 (rust/crates/icu_pattern-0.4.2.crate) = 1c4c568054ffe735398a9f4c55aec37ad7c768844553cc0978f09cc9b933a1fb +SIZE (rust/crates/icu_pattern-0.4.2.crate) = 29892 +SHA256 (rust/crates/icu_plurals-2.2.0.crate) = 2a50023f1d49ad5c4333380328a0d4a19e4b9d6d842ec06639affd5ba47c8103 +SIZE (rust/crates/icu_plurals-2.2.0.crate) = 50366 +SHA256 (rust/crates/icu_plurals_data-2.2.0.crate) = 8485497155dc865f901decb93ecc20d3e467df67bfeceb91e3ba34e2b11e8e1d +SIZE (rust/crates/icu_plurals_data-2.2.0.crate) = 7594 +SHA256 (rust/crates/icu_provider-2.2.0.crate) = 139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421 +SIZE (rust/crates/icu_provider-2.2.0.crate) = 51620 +SHA256 (rust/crates/icu_time-2.2.0.crate) = ec3af0c141da0a61d4f6970cd1d5f4b388b17ea22f8124f8f6049d3d5147586a +SIZE (rust/crates/icu_time-2.2.0.crate) = 49546 +SHA256 (rust/crates/icu_time_data-2.2.0.crate) = 6f2f8aeca682d874a5247084aa4fb7d1cef9ba45d889c21209a8818dcaaa0ec9 +SIZE (rust/crates/icu_time_data-2.2.0.crate) = 28713 +SHA256 (rust/crates/id-arena-2.3.0.crate) = 3d3067d79b975e8844ca9eb072e16b31c3c1c36928edf9c6789548c524d0d954 +SIZE (rust/crates/id-arena-2.3.0.crate) = 12883 +SHA256 (rust/crates/indexmap-2.14.0.crate) = d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9 +SIZE (rust/crates/indexmap-2.14.0.crate) = 104085 +SHA256 (rust/crates/insta-1.47.2.crate) = 7b4a6248eb93a4401ed2f37dfe8ea592d3cf05b7cf4f8efa867b6895af7e094e +SIZE (rust/crates/insta-1.47.2.crate) = 118367 +SHA256 (rust/crates/itoa-1.0.18.crate) = 8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682 +SIZE (rust/crates/itoa-1.0.18.crate) = 15935 +SHA256 (rust/crates/ixdtf-0.6.5.crate) = 2ceaf4c6c48465bead8cb6a0b7c4ee0c86ecbb31239032b9c66ab9a08d2f3ee1 +SIZE (rust/crates/ixdtf-0.6.5.crate) = 34334 +SHA256 (rust/crates/jiff-0.2.27.crate) = 392c70591e8749fe235ddaf513e6f58b26bce3dcc16524cecc8936f75afa161e +SIZE (rust/crates/jiff-0.2.27.crate) = 763049 +SHA256 (rust/crates/jiff-icu-0.2.2.crate) = 0e67c2beaae8b10a82d849b9aabb698a43a682f32b17bcdc035d5ecadb44d646 +SIZE (rust/crates/jiff-icu-0.2.2.crate) = 15025 +SHA256 (rust/crates/jiff-static-0.2.27.crate) = 47b605b0c050d845fc355bb11eb3f9a8deddc218ea60c76e61aa1f2adfb2c96a +SIZE (rust/crates/jiff-static-0.2.27.crate) = 83735 +SHA256 (rust/crates/jiff-tzdb-0.1.6.crate) = c900ef84826f1338a557697dc8fc601df9ca9af4ac137c7fb61d4c6f2dfd3076 +SIZE (rust/crates/jiff-tzdb-0.1.6.crate) = 62478 +SHA256 (rust/crates/jiff-tzdb-platform-0.1.3.crate) = 875a5a69ac2bab1a891711cf5eccbec1ce0341ea805560dcd90b7a2e925132e8 +SIZE (rust/crates/jiff-tzdb-platform-0.1.3.crate) = 3179 +SHA256 (rust/crates/leb128fmt-0.1.0.crate) = 09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2 +SIZE (rust/crates/leb128fmt-0.1.0.crate) = 14138 +SHA256 (rust/crates/lexopt-0.3.2.crate) = 803ec87c9cfb29b9d2633f20cba1f488db3fd53f2158b1024cbefb47ba05d413 +SIZE (rust/crates/lexopt-0.3.2.crate) = 27407 +SHA256 (rust/crates/libc-0.2.186.crate) = 68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66 +SIZE (rust/crates/libc-0.2.186.crate) = 821883 +SHA256 (rust/crates/libm-0.2.16.crate) = b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981 +SIZE (rust/crates/libm-0.2.16.crate) = 164243 +SHA256 (rust/crates/linux-raw-sys-0.12.1.crate) = 32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53 +SIZE (rust/crates/linux-raw-sys-0.12.1.crate) = 3006116 +SHA256 (rust/crates/litemap-0.8.2.crate) = 92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0 +SIZE (rust/crates/litemap-0.8.2.crate) = 34572 +SHA256 (rust/crates/lock_api-0.4.14.crate) = 224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965 +SIZE (rust/crates/lock_api-0.4.14.crate) = 29249 +SHA256 (rust/crates/log-0.4.30.crate) = 616ec5685824bcc94416c6d4a7a446eea774a31efd7062c8480ba6fd06d7a6e5 +SIZE (rust/crates/log-0.4.30.crate) = 52400 +SHA256 (rust/crates/memchr-2.8.1.crate) = 6b947ae49db0d222b1dbc6b113ce7248a3fc3a6ca21b696717bfc000ba4484d8 +SIZE (rust/crates/memchr-2.8.1.crate) = 98743 +SHA256 (rust/crates/memmap2-0.9.10.crate) = 714098028fe011992e1c3962653c96b2d578c4b4bce9036e15ff220319b1e0e3 +SIZE (rust/crates/memmap2-0.9.10.crate) = 34846 +SHA256 (rust/crates/once_cell-1.21.4.crate) = 9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50 +SIZE (rust/crates/once_cell-1.21.4.crate) = 35010 +SHA256 (rust/crates/portable-atomic-1.13.1.crate) = c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49 +SIZE (rust/crates/portable-atomic-1.13.1.crate) = 197001 +SHA256 (rust/crates/portable-atomic-util-0.2.7.crate) = c2a106d1259c23fac8e543272398ae0e3c0b8d33c88ed73d0cc71b0f1d902618 +SIZE (rust/crates/portable-atomic-util-0.2.7.crate) = 53577 +SHA256 (rust/crates/potential_utf-0.1.5.crate) = 0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564 +SIZE (rust/crates/potential_utf-0.1.5.crate) = 10189 +SHA256 (rust/crates/prettyplease-0.2.37.crate) = 479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b +SIZE (rust/crates/prettyplease-0.2.37.crate) = 72033 +SHA256 (rust/crates/proc-macro2-1.0.106.crate) = 8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934 +SIZE (rust/crates/proc-macro2-1.0.106.crate) = 59765 +SHA256 (rust/crates/quote-1.0.45.crate) = 41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924 +SIZE (rust/crates/quote-1.0.45.crate) = 31564 +SHA256 (rust/crates/r-efi-6.0.0.crate) = f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf +SIZE (rust/crates/r-efi-6.0.0.crate) = 65303 +SHA256 (rust/crates/regex-1.12.3.crate) = e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276 +SIZE (rust/crates/regex-1.12.3.crate) = 153392 +SHA256 (rust/crates/regex-automata-0.4.14.crate) = 6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f +SIZE (rust/crates/regex-automata-0.4.14.crate) = 618012 +SHA256 (rust/crates/regex-syntax-0.8.10.crate) = dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a +SIZE (rust/crates/regex-syntax-0.8.10.crate) = 358781 +SHA256 (rust/crates/rustix-1.1.4.crate) = b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190 +SIZE (rust/crates/rustix-1.1.4.crate) = 425241 +SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49 +SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619 +SHA256 (rust/crates/semver-1.0.28.crate) = 8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd +SIZE (rust/crates/semver-1.0.28.crate) = 33064 +SHA256 (rust/crates/serde-1.0.228.crate) = 9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e +SIZE (rust/crates/serde-1.0.228.crate) = 83652 +SHA256 (rust/crates/serde_core-1.0.228.crate) = 41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad +SIZE (rust/crates/serde_core-1.0.228.crate) = 63111 +SHA256 (rust/crates/serde_derive-1.0.228.crate) = d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79 +SIZE (rust/crates/serde_derive-1.0.228.crate) = 59605 +SHA256 (rust/crates/serde_json-1.0.150.crate) = e8014e44b4736ed0538adeecded0fce2a272f22dc9578a7eb6b2d9993c74cfb9 +SIZE (rust/crates/serde_json-1.0.150.crate) = 155574 +SHA256 (rust/crates/similar-2.7.0.crate) = bbbb5d9659141646ae647b42fe094daf6c6192d1620870b449d9557f748b2daa +SIZE (rust/crates/similar-2.7.0.crate) = 53928 +SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03 +SIZE (rust/crates/smallvec-1.15.1.crate) = 38116 +SHA256 (rust/crates/spin-0.9.8.crate) = 6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67 +SIZE (rust/crates/spin-0.9.8.crate) = 38958 +SHA256 (rust/crates/stable_deref_trait-1.2.1.crate) = 6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596 +SIZE (rust/crates/stable_deref_trait-1.2.1.crate) = 8186 +SHA256 (rust/crates/syn-2.0.117.crate) = e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99 +SIZE (rust/crates/syn-2.0.117.crate) = 306011 +SHA256 (rust/crates/synstructure-0.13.2.crate) = 728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2 +SIZE (rust/crates/synstructure-0.13.2.crate) = 18950 +SHA256 (rust/crates/tempfile-3.27.0.crate) = 32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd +SIZE (rust/crates/tempfile-3.27.0.crate) = 44780 +SHA256 (rust/crates/textwrap-0.16.2.crate) = c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057 +SIZE (rust/crates/textwrap-0.16.2.crate) = 57077 +SHA256 (rust/crates/tinystr-0.8.3.crate) = c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d +SIZE (rust/crates/tinystr-0.8.3.crate) = 24710 +SHA256 (rust/crates/unicode-ident-1.0.24.crate) = e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75 +SIZE (rust/crates/unicode-ident-1.0.24.crate) = 49298 +SHA256 (rust/crates/unicode-xid-0.2.6.crate) = ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853 +SIZE (rust/crates/unicode-xid-0.2.6.crate) = 15744 +SHA256 (rust/crates/utf8_iter-1.0.4.crate) = b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be +SIZE (rust/crates/utf8_iter-1.0.4.crate) = 10437 +SHA256 (rust/crates/wasip2-1.0.3+wasi-0.2.9.crate) = 20064672db26d7cdc89c7798c48a0fdfac8213434a1186e5ef29fd560ae223d6 +SIZE (rust/crates/wasip2-1.0.3+wasi-0.2.9.crate) = 134512 +SHA256 (rust/crates/wasip3-0.4.0+wasi-0.3.0-rc-2026-01-06.crate) = 5428f8bf88ea5ddc08faddef2ac4a67e390b88186c703ce6dbd955e1c145aca5 +SIZE (rust/crates/wasip3-0.4.0+wasi-0.3.0-rc-2026-01-06.crate) = 123354 +SHA256 (rust/crates/wasm-encoder-0.244.0.crate) = 990065f2fe63003fe337b932cfb5e3b80e0b4d0f5ff650e6985b1048f62c8319 +SIZE (rust/crates/wasm-encoder-0.244.0.crate) = 85804 +SHA256 (rust/crates/wasm-metadata-0.244.0.crate) = bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909 +SIZE (rust/crates/wasm-metadata-0.244.0.crate) = 21500 +SHA256 (rust/crates/wasmparser-0.244.0.crate) = 47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe +SIZE (rust/crates/wasmparser-0.244.0.crate) = 265607 +SHA256 (rust/crates/windows-link-0.2.1.crate) = f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5 +SIZE (rust/crates/windows-link-0.2.1.crate) = 6133 +SHA256 (rust/crates/windows-sys-0.61.2.crate) = ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc +SIZE (rust/crates/windows-sys-0.61.2.crate) = 2517186 +SHA256 (rust/crates/wit-bindgen-0.51.0.crate) = d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5 +SIZE (rust/crates/wit-bindgen-0.51.0.crate) = 68035 +SHA256 (rust/crates/wit-bindgen-0.57.1.crate) = 1ebf944e87a7c253233ad6766e082e3cd714b5d03812acc24c318f549614536e +SIZE (rust/crates/wit-bindgen-0.57.1.crate) = 71227 +SHA256 (rust/crates/wit-bindgen-core-0.51.0.crate) = ea61de684c3ea68cb082b7a88508a8b27fcc8b797d738bfc99a82facf1d752dc +SIZE (rust/crates/wit-bindgen-core-0.51.0.crate) = 35048 +SHA256 (rust/crates/wit-bindgen-rust-0.51.0.crate) = b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21 +SIZE (rust/crates/wit-bindgen-rust-0.51.0.crate) = 57051 +SHA256 (rust/crates/wit-bindgen-rust-macro-0.51.0.crate) = 0c0f9bfd77e6a48eccf51359e3ae77140a7f50b1e2ebfe62422d8afdaffab17a +SIZE (rust/crates/wit-bindgen-rust-macro-0.51.0.crate) = 14283 +SHA256 (rust/crates/wit-component-0.244.0.crate) = 9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2 +SIZE (rust/crates/wit-component-0.244.0.crate) = 256882 +SHA256 (rust/crates/wit-parser-0.244.0.crate) = ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736 +SIZE (rust/crates/wit-parser-0.244.0.crate) = 159371 +SHA256 (rust/crates/writeable-0.6.3.crate) = 1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4 +SIZE (rust/crates/writeable-0.6.3.crate) = 26685 +SHA256 (rust/crates/yoke-0.8.2.crate) = abe8c5fda708d9ca3df187cae8bfb9ceda00dd96231bed36e445a1a48e66f9ca +SIZE (rust/crates/yoke-0.8.2.crate) = 32790 +SHA256 (rust/crates/yoke-derive-0.8.2.crate) = de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e +SIZE (rust/crates/yoke-derive-0.8.2.crate) = 15077 +SHA256 (rust/crates/zerofrom-0.1.8.crate) = 0ec05a11813ea801ff6d75110ad09cd0824ddba17dfe17128ea0d5f68e6c5272 +SIZE (rust/crates/zerofrom-0.1.8.crate) = 6156 +SHA256 (rust/crates/zerofrom-derive-0.1.7.crate) = 11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1 +SIZE (rust/crates/zerofrom-derive-0.1.7.crate) = 8853 +SHA256 (rust/crates/zerotrie-0.2.4.crate) = 0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf +SIZE (rust/crates/zerotrie-0.2.4.crate) = 83690 +SHA256 (rust/crates/zerovec-0.11.6.crate) = 90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239 +SIZE (rust/crates/zerovec-0.11.6.crate) = 128583 +SHA256 (rust/crates/zerovec-derive-0.11.3.crate) = 625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555 +SIZE (rust/crates/zerovec-derive-0.11.3.crate) = 22115 +SHA256 (rust/crates/zmij-1.0.21.crate) = b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa +SIZE (rust/crates/zmij-1.0.21.crate) = 26665 +SHA256 (BurntSushi-bttf-0.1.4_GH0.tar.gz) = 21b265959403c02406137adac1012f676a25ad67d6fbf29a553b9e459c7bbc73 +SIZE (BurntSushi-bttf-0.1.4_GH0.tar.gz) = 165705 diff --git a/sysutils/bttf/pkg-descr b/sysutils/bttf/pkg-descr new file mode 100644 index 000000000000..f8bc0609c776 --- /dev/null +++ b/sysutils/bttf/pkg-descr @@ -0,0 +1,12 @@ +bttf is a command-line utility for working with dates and times. It exposes +much of the functionality of the Jiff datetime library on the command line, +providing a more intuitive way to format datetimes or do arithmetic than +traditional tools like date(1). + +Features include datetime formatting with custom patterns, arithmetic with +durations, time zone conversions, duration calculations, sequence generation +for recurring dates, and a "tag" mode that finds and processes datetimes +embedded in arbitrary data. + +bttf deliberately does not aim for POSIX date(1) compatibility, instead +offering a fresh, modern approach.home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a1dd2e2.22908.47612123>
