Monday, February 02, 2026

Re: audio/beets: update to 2.6.1; www/py-requests-cache update to 1.2.1; plus import required new dependencies

hello,

> Our www/py-requests-cache is old. It was imported in 2020 with
> www/py-metallum and never updated. www/py-requests-cache is a dependency of
> two ports: www/py-metallum and databases/py-shillelagh. The first has no
> tests, and the second has broken tests.

yeah, this is my fault, I wanted py-metallum for beets so I got it and
py-requests-cache imported. Unfortunately py-metallum seems to be
abandonware now, and it doesn't work with beets anymore (I see there
are a few forks I'll try to take a look if one of them fixes the
issues I've seen and will either send an update or a removal request
for this port it in the next month or so). py-requests-cache oddly
shows not needing any updates on portroach, which is what I normally
check to see if my ports are falling behind, clicking through though
shows it needs updating. If someone is willing to take maintainer of
py-requests-cache that would be good as I don't have a direct use for
it and don't really have time right now.

thanks,

.jh

Re: [PATCH] lang/nim-2.2.6

Index: Makefile
===================================================================
RCS file: /cvs/ports/lang/nim/Makefile,v
diff -u -p -r1.25 Makefile
--- Makefile 21 Dec 2024 11:38:19 -0000 1.25
+++ Makefile 3 Feb 2026 02:05:29 -0000
@@ -2,9 +2,8 @@ ONLY_FOR_ARCHS = amd64 arm64 i386

COMMENT = statically typed systems programming language

-DISTNAME = nim-1.6.18
+DISTNAME = nim-2.2.6
EXTRACT_SUFX = .tar.xz
-REVISION = 2

CATEGORIES = lang

@@ -29,6 +28,7 @@ TEST_DEPENDS = archivers/p7zip,-main \
SUBST_VARS += CFLAGS

post-patch:
+ mv ${WRKSRC}/lib/posix/posix_openbsd_amd64.nim ${WRKSRC}/lib/posix/posix_openbsd.nim
mkdir -p ${WRKSRC}/nimcache-port
mkdir -p ${WRKSRC}/nimcache-port-test
perl -i -pe "s#NIM_PORT_PATH#${PATH}#" ${WRKSRC}/koch.nim
Index: distinfo
===================================================================
RCS file: /cvs/ports/lang/nim/distinfo,v
diff -u -p -r1.10 distinfo
--- distinfo 30 Dec 2023 19:41:20 -0000 1.10
+++ distinfo 3 Feb 2026 02:05:29 -0000
@@ -1,2 +1,2 @@
-SHA256 (nim-1.6.18.tar.xz) = UCQaxyIpG6ljdT8EWqo1h7c8GqKK4pxXPBWluKYCoss=
-SIZE (nim-1.6.18.tar.xz) = 5212008
+SHA256 (nim-2.2.6.tar.xz) = ZXsOPV3veIFI0qh/phI/p1Wy2SytMe9g/SYeRReFUos=
+SIZE (nim-2.2.6.tar.xz) = 8471204
Index: patches/patch-build_sh
===================================================================
RCS file: /cvs/ports/lang/nim/patches/patch-build_sh,v
diff -u -p -r1.7 patch-build_sh
--- patches/patch-build_sh 24 Aug 2022 18:32:15 -0000 1.7
+++ patches/patch-build_sh 3 Feb 2026 02:05:29 -0000
@@ -7,8 +7,8 @@ Index: build.sh
fi
CC="sem -j $parallel --id $$ ${CC}"
fi
--COMP_FLAGS="${CPPFLAGS:-} ${CFLAGS:-} -w -fmax-errors=3 -O3 -fno-strict-aliasing -fno-ident $extraBuildArgs"
-+COMP_FLAGS="${CPPFLAGS:-} ${CFLAGS:-} -w -fmax-errors=3 -fno-strict-aliasing -fno-ident $extraBuildArgs"
+-COMP_FLAGS="${CPPFLAGS:-} ${CFLAGS:-} -w -fmax-errors=3 -fno-strict-aliasing -O3 -fno-ident -fno-math-errno $extraBuildArgs"
++COMP_FLAGS="${CPPFLAGS:-} ${CFLAGS:-} -w -fmax-errors=3 -fno-strict-aliasing -fno-ident -fno-math-errno $extraBuildArgs"
LINK_FLAGS="${LDFLAGS:-} "
PS4=""
# platform detection
Index: patches/patch-config_nim_cfg
===================================================================
RCS file: /cvs/ports/lang/nim/patches/patch-config_nim_cfg,v
diff -u -p -r1.9 patch-config_nim_cfg
--- patches/patch-config_nim_cfg 30 Dec 2023 19:41:20 -0000 1.9
+++ patches/patch-config_nim_cfg 3 Feb 2026 02:05:29 -0000
@@ -6,7 +6,7 @@
Index: config/nim.cfg
--- config/nim.cfg.orig
+++ config/nim.cfg
-@@ -8,7 +8,7 @@
+@@ -9,7 +9,7 @@
# Environment variables can be accessed like so:
# gcc.path %= "$CC_PATH"

@@ -15,7 +15,7 @@ Index: config/nim.cfg

# additional options always passed to the compiler:
--parallel_build: "0" # 0 to auto-detect number of processors
-@@ -111,7 +111,7 @@ nimblepath="$home/.nimble/pkgs/"
+@@ -132,7 +132,7 @@ nimblepath="$home/.nimble/pkgs/"
@if unix:
@if bsd:
# BSD got posix_spawn only recently, so we deactivate it for osproc:
@@ -24,7 +24,7 @@ Index: config/nim.cfg
@elif haiku:
gcc.options.linker = "-Wl,--as-needed -lnetwork"
gcc.cpp.options.linker = "-Wl,--as-needed -lnetwork"
-@@ -201,21 +201,27 @@ clang.objc.options.linker = "-lobjc -lgnustep-base"
+@@ -223,21 +223,27 @@ clang.objc.options.linker = "-lobjc -lgnustep-base"

# Options for FreeBSD, OpenBSD, NetBSD linker to add locations for searching
# shared libraries.
@@ -58,34 +58,3 @@ Index: config/nim.cfg
@elif netbsd:
cincludes: "/usr/pkg/include"
clibdir: "/usr/pkg/lib"
-@@ -235,15 +241,15 @@ clang.objc.options.linker = "-lobjc -lgnustep-base"
- gcc.options.linker %= "-L $WIND_BASE/target/lib/usr/lib/ppc/PPC32/common -mrtp -fno-strict-aliasing -D_C99 -D_HAS_C9X -std=c99 -fasm -Wall -Wno-write-strings"
- @end
-
--gcc.options.speed = "-O3 -fno-strict-aliasing -fno-ident"
--gcc.options.size = "-Os -fno-ident"
-+gcc.options.speed = "${CFLAGS} -fno-strict-aliasing -fno-ident"
-+gcc.options.size = "${CFLAGS} -Os -fno-ident"
- @if windows:
- gcc.options.debug = "-g3 -Og -gdwarf-3"
- @else:
- gcc.options.debug = "-g3 -Og"
- @end
--gcc.cpp.options.speed = "-O3 -fno-strict-aliasing -fno-ident"
--gcc.cpp.options.size = "-Os -fno-ident"
-+gcc.cpp.options.speed = "${CFLAGS} -fno-strict-aliasing -fno-ident"
-+gcc.cpp.options.size = "${CFLAGS} -Os -fno-ident"
- gcc.cpp.options.debug = "-g3 -Og"
- #passl = "-pg"
-
-@@ -257,8 +263,8 @@ llvm_gcc.options.size = "-Os"
- clang.options.debug = "-g"
- clang.cpp.options.debug = "-g"
- clang.options.always = "-w -ferror-limit=3"
--clang.options.speed = "-O3"
--clang.options.size = "-Os"
-+clang.options.speed = "${CFLAGS}"
-+clang.options.size = "${CFLAGS} -Os"
-
- @if windows:
- clang_cl.cpp.options.always %= "${clang_cl.options.always} /EHsc"
Index: patches/patch-dist_nimble_src_nimblepkg_options_nim
===================================================================
RCS file: /cvs/ports/lang/nim/patches/patch-dist_nimble_src_nimblepkg_options_nim,v
diff -u -p -r1.2 patch-dist_nimble_src_nimblepkg_options_nim
--- patches/patch-dist_nimble_src_nimblepkg_options_nim 11 Mar 2022 19:29:08 -0000 1.2
+++ patches/patch-dist_nimble_src_nimblepkg_options_nim 3 Feb 2026 02:05:29 -0000
@@ -1,18 +1,14 @@
-don't exec git
+override git commit hash to not exec git

Index: dist/nimble/src/nimblepkg/options.nim
--- dist/nimble/src/nimblepkg/options.nim.orig
+++ dist/nimble/src/nimblepkg/options.nim
-@@ -161,12 +161,6 @@ proc writeHelp*(quit=true) =
- proc writeVersion*() =
- echo("nimble v$# compiled at $# $#" %
- [nimbleVersion, CompileDate, CompileTime])
-- const execResult = gorgeEx("git rev-parse HEAD")
-- when execResult[0].len > 0 and execResult[1] == QuitSuccess:
-- echo "git hash: ", execResult[0]
-- else:
-- {.warning: "Couldn't determine GIT hash: " & execResult[0].}
-- echo "git hash: couldn't determine git hash"
- raise NimbleQuit(msg: "")
+@@ -298,7 +298,7 @@ proc writeHelp*(quit=true) =
+ const
+ ## You can override this if you are building the
+ ## sources outside the git tree of Nimble:
+- git_revision_override* {.strdefine.} = ""
++ git_revision_override* {.strdefine.} = "ab00c56904e3126ad826bb520d243513a139436a"

- proc parseActionType*(action: string): ActionType =
+ gitRevision* = when git_revision_override.len == 0:
+ const execResult = gorgeEx("git rev-parse HEAD")
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/lang/nim/pkg/PLIST,v
diff -u -p -r1.10 PLIST
--- pkg/PLIST 23 Oct 2025 13:19:55 -0000 1.10
+++ pkg/PLIST 3 Feb 2026 02:05:29 -0000
@@ -12,7 +12,6 @@ lib/nim/arch/
lib/nim/arch/x86/
lib/nim/arch/x86/amd64.S
lib/nim/arch/x86/i386.S
-lib/nim/compilation.nim
lib/nim/core/
lib/nim/core/hotcodereloading.nim
lib/nim/core/locks.nim
@@ -23,26 +22,25 @@ lib/nim/core/typeinfo.nim
lib/nim/cycle.h
lib/nim/deprecated/
lib/nim/deprecated/pure/
-lib/nim/deprecated/pure/LockFreeHash.nim
-lib/nim/deprecated/pure/events.nim
+lib/nim/deprecated/pure/future.nim
+lib/nim/deprecated/pure/mersenne.nim
lib/nim/deprecated/pure/ospaths.nim
-lib/nim/deprecated/pure/parseopt2.nim
-lib/nim/deprecated/pure/securehash.nim
-lib/nim/deprecated/pure/sharedstrings.nim
+lib/nim/deprecated/pure/oswalkdir.nim
+lib/nim/deprecated/pure/sums.nim
lib/nim/deps.txt
lib/nim/experimental/
lib/nim/experimental/diff.nim
lib/nim/genode/
lib/nim/genode/alloc.nim
+lib/nim/genode/constructibles.nim
+lib/nim/genode/entrypoints.nim
lib/nim/genode/env.nim
+lib/nim/genode/signals.nim
lib/nim/genode_cpp/
+lib/nim/genode_cpp/signals.h
lib/nim/genode_cpp/syslocks.h
lib/nim/genode_cpp/threads.h
lib/nim/impure/
-lib/nim/impure/db_mysql.nim
-lib/nim/impure/db_odbc.nim
-lib/nim/impure/db_postgres.nim
-lib/nim/impure/db_sqlite.nim
lib/nim/impure/nre/
lib/nim/impure/nre.nim
lib/nim/impure/nre/private/
@@ -52,7 +50,6 @@ lib/nim/impure/re.nim
lib/nim/js/
lib/nim/js/asyncjs.nim
lib/nim/js/dom.nim
-lib/nim/js/dom_extensions.nim
lib/nim/js/jsconsole.nim
lib/nim/js/jscore.nim
lib/nim/js/jsffi.nim
@@ -64,11 +61,13 @@ lib/nim/nimrtl.nim
lib/nim/nimrtl.nim.cfg
lib/nim/packages/
lib/nim/packages/docutils/
+lib/nim/packages/docutils/dochelpers.nim
lib/nim/packages/docutils/docutils.nimble.old
lib/nim/packages/docutils/highlite.nim
lib/nim/packages/docutils/rst.nim
lib/nim/packages/docutils/rstast.nim
lib/nim/packages/docutils/rstgen.nim
+lib/nim/packages/docutils/rstidx.nim
lib/nim/posix/
lib/nim/posix/epoll.nim
lib/nim/posix/inotify.nim
@@ -82,7 +81,7 @@ lib/nim/posix/posix_linux_amd64_consts.n
lib/nim/posix/posix_macos_amd64.nim
lib/nim/posix/posix_nintendoswitch.nim
lib/nim/posix/posix_nintendoswitch_consts.nim
-lib/nim/posix/posix_openbsd_amd64.nim
+lib/nim/posix/posix_openbsd.nim
lib/nim/posix/posix_other.nim
lib/nim/posix/posix_other_consts.nim
lib/nim/posix/posix_utils.nim
@@ -93,7 +92,6 @@ lib/nim/pure/async.nim
lib/nim/pure/asyncdispatch.nim
lib/nim/pure/asyncdispatch.nim.cfg
lib/nim/pure/asyncfile.nim
-lib/nim/pure/asyncftpclient.nim
lib/nim/pure/asyncfutures.nim
lib/nim/pure/asynchttpserver.nim
lib/nim/pure/asyncmacro.nim
@@ -131,22 +129,17 @@ lib/nim/pure/cookies.nim
lib/nim/pure/coro.nim
lib/nim/pure/coro.nimcfg
lib/nim/pure/cstrutils.nim
-lib/nim/pure/db_common.nim
lib/nim/pure/distros.nim
lib/nim/pure/dynlib.nim
lib/nim/pure/encodings.nim
lib/nim/pure/endians.nim
lib/nim/pure/fenv.nim
-lib/nim/pure/future.nim
lib/nim/pure/hashes.nim
lib/nim/pure/htmlgen.nim
lib/nim/pure/htmlparser.nim
lib/nim/pure/httpclient.nim
lib/nim/pure/httpcore.nim
lib/nim/pure/includes/
-lib/nim/pure/includes/osenv.nim
-lib/nim/pure/includes/oserr.nim
-lib/nim/pure/includes/osseps.nim
lib/nim/pure/includes/unicode_ranges.nim
lib/nim/pure/ioselects/
lib/nim/pure/ioselects/ioselectors_epoll.nim
@@ -161,18 +154,15 @@ lib/nim/pure/marshal.nim
lib/nim/pure/math.nim
lib/nim/pure/md5.nim
lib/nim/pure/memfiles.nim
-lib/nim/pure/mersenne.nim
lib/nim/pure/mimetypes.nim
lib/nim/pure/nativesockets.nim
lib/nim/pure/net.nim
lib/nim/pure/nimprof.nim
lib/nim/pure/nimprof.nim.cfg
-lib/nim/pure/nimtracker.nim
lib/nim/pure/oids.nim
lib/nim/pure/options.nim
lib/nim/pure/os.nim
lib/nim/pure/osproc.nim
-lib/nim/pure/oswalkdir.nim
lib/nim/pure/parsecfg.nim
lib/nim/pure/parsecsv.nim
lib/nim/pure/parsejson.nim
@@ -183,15 +173,12 @@ lib/nim/pure/parsexml.nim
lib/nim/pure/pathnorm.nim
lib/nim/pure/pegs.nim
lib/nim/pure/prelude.nim
-lib/nim/pure/punycode.nim
lib/nim/pure/random.nim
lib/nim/pure/rationals.nim
lib/nim/pure/reservedmem.nim
lib/nim/pure/ropes.nim
lib/nim/pure/segfaults.nim
lib/nim/pure/selectors.nim
-lib/nim/pure/smtp.nim
-lib/nim/pure/smtp.nim.cfg
lib/nim/pure/ssl_certs.nim
lib/nim/pure/ssl_config.nim
lib/nim/pure/stats.nim
@@ -220,13 +207,20 @@ lib/nim/pure/volatile.nim
lib/nim/pure/xmlparser.nim
lib/nim/pure/xmltree.nim
lib/nim/std/
+lib/nim/std/appdirs.nim
+lib/nim/std/assertions.nim
+lib/nim/std/cmdline.nim
lib/nim/std/compilesettings.nim
lib/nim/std/decls.nim
+lib/nim/std/dirs.nim
lib/nim/std/editdistance.nim
lib/nim/std/effecttraits.nim
lib/nim/std/enumerate.nim
lib/nim/std/enumutils.nim
+lib/nim/std/envvars.nim
lib/nim/std/exitprocs.nim
+lib/nim/std/files.nim
+lib/nim/std/formatfloat.nim
lib/nim/std/genasts.nim
lib/nim/std/importutils.nim
lib/nim/std/isolation.nim
@@ -237,33 +231,54 @@ lib/nim/std/jsheaders.nim
lib/nim/std/jsonutils.nim
lib/nim/std/logic.nim
lib/nim/std/monotimes.nim
+lib/nim/std/objectdollar.nim
+lib/nim/std/oserrors.nim
+lib/nim/std/outparams.nim
lib/nim/std/packedsets.nim
+lib/nim/std/paths.nim
lib/nim/std/private/
lib/nim/std/private/asciitables.nim
lib/nim/std/private/bitops_utils.nim
-lib/nim/std/private/dbutils.nim
lib/nim/std/private/decode_helpers.nim
lib/nim/std/private/digitsutils.nim
+lib/nim/std/private/dragonbox.nim
lib/nim/std/private/gitutils.nim
lib/nim/std/private/globs.nim
lib/nim/std/private/jsutils.nim
lib/nim/std/private/miscdollars.nim
+lib/nim/std/private/ntpath.nim
+lib/nim/std/private/osappdirs.nim
+lib/nim/std/private/oscommon.nim
+lib/nim/std/private/osdirs.nim
+lib/nim/std/private/osfiles.nim
+lib/nim/std/private/ospaths2.nim
+lib/nim/std/private/osseps.nim
+lib/nim/std/private/ossymlinks.nim
+lib/nim/std/private/schubfach.nim
lib/nim/std/private/since.nim
lib/nim/std/private/strimpl.nim
+lib/nim/std/private/syslocks.nim
+lib/nim/std/private/threadtypes.nim
lib/nim/std/private/underscored_calls.nim
+lib/nim/std/private/win_getsysteminfo.nim
lib/nim/std/private/win_setenv.nim
lib/nim/std/setutils.nim
lib/nim/std/sha1.nim
lib/nim/std/socketstreams.nim
lib/nim/std/stackframes.nim
+lib/nim/std/staticos.nim
lib/nim/std/strbasics.nim
-lib/nim/std/sums.nim
+lib/nim/std/symlinks.nim
+lib/nim/std/syncio.nim
+lib/nim/std/sysatomics.nim
lib/nim/std/sysrand.nim
lib/nim/std/tasks.nim
lib/nim/std/tempfiles.nim
lib/nim/std/time_t.nim
+lib/nim/std/typedthreads.nim
lib/nim/std/varints.nim
lib/nim/std/vmutils.nim
+lib/nim/std/widestrs.nim
lib/nim/std/with.nim
lib/nim/std/wordwrap.nim
lib/nim/std/wrapnils.nim
@@ -273,11 +288,8 @@ lib/nim/system.nim
lib/nim/system/alloc.nim
lib/nim/system/ansi_c.nim
lib/nim/system/arc.nim
-lib/nim/system/arithm.nim
lib/nim/system/arithmetics.nim
-lib/nim/system/assertions.nim
lib/nim/system/assign.nim
-lib/nim/system/atomics.nim
lib/nim/system/avltree.nim
lib/nim/system/basic_types.nim
lib/nim/system/bitmasks.nim
@@ -288,12 +300,13 @@ lib/nim/system/cgprocs.nim
lib/nim/system/channels_builtin.nim
lib/nim/system/chcks.nim
lib/nim/system/comparisons.nim
+lib/nim/system/compilation.nim
lib/nim/system/coro_detection.nim
lib/nim/system/countbits_impl.nim
+lib/nim/system/ctypes.nim
lib/nim/system/cyclebreaker.nim
lib/nim/system/deepcopy.nim
lib/nim/system/dollars.nim
-lib/nim/system/dragonbox.nim
lib/nim/system/dyncalls.nim
lib/nim/system/embedded.nim
lib/nim/system/exceptions.nim
@@ -301,7 +314,6 @@ lib/nim/system/excpt.nim
lib/nim/system/fatal.nim
lib/nim/system/formatfloat.nim
lib/nim/system/gc.nim
-lib/nim/system/gc2.nim
lib/nim/system/gc_common.nim
lib/nim/system/gc_hooks.nim
lib/nim/system/gc_interface.nim
@@ -310,8 +322,8 @@ lib/nim/system/gc_regions.nim
lib/nim/system/hti.nim
lib/nim/system/inclrtl.nim
lib/nim/system/indexerrors.nim
+lib/nim/system/indices.nim
lib/nim/system/integerops.nim
-lib/nim/system/io.nim
lib/nim/system/iterators.nim
lib/nim/system/iterators_1.nim
lib/nim/system/jssys.nim
@@ -329,11 +341,12 @@ lib/nim/system/orc.nim
lib/nim/system/osalloc.nim
lib/nim/system/platforms.nim
lib/nim/system/profiler.nim
+lib/nim/system/ptrarith.nim
+lib/nim/system/rawquits.nim
lib/nim/system/repr.nim
lib/nim/system/repr_impl.nim
lib/nim/system/repr_v2.nim
lib/nim/system/reprjs.nim
-lib/nim/system/schubfach.nim
lib/nim/system/seqs_v2.nim
lib/nim/system/seqs_v2_reimpl.nim
lib/nim/system/setops.nim
@@ -341,13 +354,11 @@ lib/nim/system/sets.nim
lib/nim/system/stacktraces.nim
lib/nim/system/strmantle.nim
lib/nim/system/strs_v2.nim
-lib/nim/system/syslocks.nim
-lib/nim/system/sysspawn.nim
lib/nim/system/sysstr.nim
+lib/nim/system/threadids.nim
+lib/nim/system/threadimpl.nim
lib/nim/system/threadlocalstorage.nim
-lib/nim/system/threads.nim
lib/nim/system/timers.nim
-lib/nim/system/widestrs.nim
lib/nim/system_overview.rst
lib/nim/windows/
lib/nim/windows/registry.nim
@@ -359,12 +370,8 @@ lib/nim/wrappers/linenoise/README.markdo
lib/nim/wrappers/linenoise/linenoise.c
lib/nim/wrappers/linenoise/linenoise.h
lib/nim/wrappers/linenoise/linenoise.nim
-lib/nim/wrappers/mysql.nim
-lib/nim/wrappers/odbcsql.nim
lib/nim/wrappers/openssl.nim
lib/nim/wrappers/pcre.nim
-lib/nim/wrappers/postgres.nim
-lib/nim/wrappers/sqlite3.nim
lib/nim/wrappers/tinyc.nim
share/doc/nim/
share/doc/nim/advopt.txt
- make proper phread.h header for all architectures

Index: lib/std/private/threadtypes.nim
--- lib/std/private/threadtypes.nim.orig
+++ lib/std/private/threadtypes.nim
@@ -77,7 +77,7 @@ else:
Pthread_attr* {.importc: "pthread_attr_t",
header: "<sys/types.h>".} = object
abi: array[56 div sizeof(clong), clong]
- elif defined(openbsd) and defined(amd64):
+ elif defined(openbsd):
type
SysThread* {.importc: "pthread_t", header: "<pthread.h>".} = object
Pthread_attr* {.importc: "pthread_attr_t",
Just my 2 cents, but I actually tried my hand at this but I concretely
have no idea what I'm doing, but maybe it will be useful for you (I am
testing this on arm64), note that patch-lib_pure_asyncnet_nim is no
longer needed, and note the new patch-lib_std_private_threadtypes_nim