databases/mysql{84,97}: Install man pages, clean up dependencies
Re-enable installation of the man pages shipped in the source tarball
and register them in pkg-plist, split between the client and server
packages. Same approach as databases/mysql80-client in PR 279234.
Rework the dependencies based on actual linkage: libfido2 is only used
by the client, curl, icu and liblz4 only by the server. Drop libhidapi
entirely, it is a transitive dependency of libfido2.
While here, fix the CONFLICTS_INSTALL pattern of mysql84-client not
matching mysql80-client and update the mysql84 pkg-message.
Sponsored by: Netzkommune GmbH
nullfs: close a race when syncing inotify flags from the lower vnode
After a bypassed VOP, nullfs mirrors the lower vnode's inotify state
onto the upper vnode. The flags were checked with lockless reads
before being updated with the asserting flag set/unset primitives, so
two threads syncing the same vnode concurrently (or a sync racing a
watch being established) could both decide to make the same change;
the loser then trips the "flags already set" assertion on an
INVARIANTS kernel. On other kernels the race is harmless.
Keep the lockless check as the fast path, but re-make the decision
under the vnode interlock before actually changing the flags.
Reproduced in a 4-CPU VM with one thread cycling an inotify watch on
a lower-filesystem file while several threads stat(2) the same file
through a nullfs mount: the unpatched INVARIANTS kernel panics under
this load, the patched kernel runs it to completion.
Fixes: f1f230439fa4 ("vfs: Initial revision of inotify")
[4 lines not shown]
Mk/Uses/npm.mk: Remove temp directory in pnpm store before making archive
Leaving the directory in place may cause the node modules archive to
be unreproducible.
certctl: Enforce 0444 mode on new files
When writing to a file, call fchmod() to ensure the file mode matches
the intended mode, which is 0444. This was already done when replacing
an existing file, but not when creating a new file, which meant if the
process umask was 077, the resulting certificates and bundle would be
unreadable by unprivileged users.
MFC after: 1 week
Reviewed by: des
Differential Revision: https://reviews.freebsd.org/D58304
devel/py-python-jsonrpc-server: Deprecate and mark broken
There is no new version in 6 years, the upstream build and CI are
failing and nothing depends on this port, hence the removal.
PR: 296894
Approved by: Goran Mekić <meka at sys.it.com> (maintainer)
Sponsored by: UNIS Labs
MFH: 2026Q3
(cherry picked from commit 9e571760f9488ebf5441ce9f921a9c4c047e5abc)
devel/py-python-jsonrpc-server: Deprecate and mark broken
There is no new version in 6 years, the upstream build and CI are
failing and nothing depends on this port, hence the removal.
PR: 296894
Approved by: Goran Mekić <meka at sys.it.com> (maintainer)
Sponsored by: UNIS Labs
MFH: 2026Q3
databases/mysql97: Fix build with llvm 21, directory ownership and cleanup
- Add upstream patches for missing #include <type_traits> and <cstdlib>,
fixing the build with clang/libc++ 21 [1] [2]
- Register MY_SECDIR and MY_TMPDIR with mysql:mysql 0750 in pkg-plist,
so mysqld no longer fails to start after package upgrades reset the
ownership to root [3]
- Fix CONFLICTS_INSTALL pattern in the client not matching
mysql80-client
and align it with the wildcard style used by the server
- Update pkg-message for 9.x: mysql_upgrade no longer exists, the server
performs upgrade tasks itself; fix version reference and quoting
- Drop duplicate -DWITH_LZ4=system, remove a stale line continuation,
whitespace fixes
- Rename patch-sql_server_component_mysql__file__imp.cc to follow the
patch naming convention
PR: 296439 [1], 296443 [2], 296758 [3]
Reported by: Trond Endrestøl [1] [2], Alexander Ushakov [3]
[2 lines not shown]