LLVM/project 673126a — compiler-rt/lib/csan csan_watch.h csan_report.cpp, compiler-rt/lib/csan/offload csan_offload_report.cpp csan_offload_hsa_interceptors.cpp

[compiler-rt] Add 'csan' library for the concurrency sanitizer (#225782)

Summary:
Adds the runtime for the concurrency sanitizer, both CPU and GPU.
Fundamentally, this works using the following pseudocode:

```c
static u64 watchpoints[N]; // Hash-indexed, zero is empty.

// Emitted before the access, so we never trip on our own write.
void check_access(volatile void *addr, u32 size, u32 type) {
    // Every access probes. A read conflicts only with a watched write, a
    // write conflicts with either.
    if (u64 *wp = find_watchpoint(addr, size, type))
        consume(wp, this_pc()); // Hand our location to the owner.

    if (!should_sample()) // Wave-uniform, 1-in-N chance.
        return;


    [19 lines not shown]
DeltaFile
+456-0compiler-rt/lib/csan/csan_gpu.cpp
+330-0compiler-rt/lib/csan/csan.cpp
+306-0compiler-rt/lib/csan/offload/csan_offload_hsa_interceptors.cpp
+279-0compiler-rt/lib/csan/csan_report.cpp
+184-0compiler-rt/lib/csan/offload/csan_offload_report.cpp
+163-0compiler-rt/lib/csan/csan_watch.h
+1,718-051 files not shown
+3,160-257 files

LLVM/project 9ac8620 — clang/docs ConcurrencySanitizer.md, clang/lib/Driver/ToolChains Clang.cpp CommonArgs.cpp

[Clang] Add support for the `-fsanitize=concurrency` runtime (#225781)

Summary:
Add the frontend sanitizer kind, function attributes, pass pipeline
integration, predefined macro, and driver handling for
ConcurrencySanitizer.

RFC:
https://discourse.llvm.org/t/rfc-a-thread-concurrency-sanitizer-for-gpus-in-compiler-rt/91113
DeltaFile
+207-0clang/docs/ConcurrencySanitizer.md
+102-0clang/test/CodeGen/sanitize-concurrency.c
+86-0clang/test/Driver/fsanitize-concurrency-offload.c
+37-9clang/lib/Driver/ToolChains/CommonArgs.cpp
+44-0clang/test/Driver/fsanitize.c
+16-7clang/lib/Driver/ToolChains/Clang.cpp
+492-1615 files not shown
+549-2321 files

LLVM/project c4c853f — llvm/lib/Transforms/Instrumentation ConcurrencySanitizer.cpp, llvm/test/Instrumentation/ConcurrencySanitizer atomic.ll memintrinsics.ll

[LLVM] Add a ConcurrencySanitizer LLVM pass (#225780)

Summary:
Add an LLVM ConcurrencySanitizer pass to instrument memory and atomic
operations for a sampling race detector. Fundamentally the pass iterates
through every candidate memory operation and adds a check above it.
Unlike TSAN, we do not replace any operations, which heavily simplifies
the instrumentation.

We do not re-use the TSAN instrumentation because the appraoches are
different enough and the passes simple enough that the extra code is not
a large concern. More differences will be added in the future, so
keeping them separate is easlier.

RFC:
https://discourse.llvm.org/t/rfc-a-thread-concurrency-sanitizer-for-gpus-in-compiler-rt/91113
DeltaFile
+626-0llvm/lib/Transforms/Instrumentation/ConcurrencySanitizer.cpp
+212-0llvm/test/Instrumentation/ConcurrencySanitizer/selection.ll
+127-0llvm/test/Instrumentation/ConcurrencySanitizer/callbacks.ll
+106-0llvm/test/Instrumentation/ConcurrencySanitizer/address_space.ll
+100-0llvm/test/Instrumentation/ConcurrencySanitizer/memintrinsics.ll
+86-0llvm/test/Instrumentation/ConcurrencySanitizer/atomic.ll
+1,257-010 files not shown
+1,523-016 files

LLVM/project 3ea4e52 — llvm/test/CodeGen/AMDGPU amdgpu-attributor-min-agpr-alloc.ll, llvm/test/CodeGen/X86 x86-sanitizer-shrink-wrapping.ll

[IR] Add the sanitize_concurrency function attribute (#225779)

This introduces a new concurrency sanitizer attribute to be used with
the runtime of the same name. This has no major change and simply
updates the IR to handle it properly. This attribute is invalid when
combined with the thread sanitizer one as they are mutually exclusive.

RFC:
https://discourse.llvm.org/t/rfc-a-thread-concurrency-sanitizer-for-gpus-in-compiler-rt/91113
DeltaFile
+30-0llvm/test/CodeGen/X86/x86-sanitizer-shrink-wrapping.ll
+25-0llvm/test/Transforms/SimplifyCFG/no_speculative_loads_with_tsan.ll
+14-0llvm/test/Transforms/HotColdSplit/X86/do-not-split.ll
+11-1llvm/test/Transforms/ExpandMemCmp/X86/sanitizer-skip.ll
+12-0llvm/test/CodeGen/AMDGPU/amdgpu-attributor-min-agpr-alloc.ll
+9-0llvm/test/Verifier/sanitize-concurrency-attrs.ll
+101-115 files not shown
+141-521 files

LLVM/project 42ff89a — mlir/include/mlir/Target/LLVMIR ModuleTranslation.h, mlir/lib/Target/LLVMIR ModuleTranslation.cpp

Reland "[mlir][LLVMIR] Decouple ModuleTranslation from the OpenMP dialect" (#237979)

Relands https://github.com/llvm/llvm-project/pull/236777 with fixed
cmake dependencies
DeltaFile
+247-146mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+35-50mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
+0-47mlir/lib/Target/LLVMIR/Dialect/OpenMPCommon.cpp
+47-0mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPCommon.cpp
+10-32mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
+2-0mlir/lib/Target/LLVMIR/Dialect/OpenMP/CMakeLists.txt
+341-2756 files not shown
+344-28012 files

LLVM/project 8207e69 — libc/src/__support CMakeLists.txt checked_ptr.h, libc/test/src/__support CMakeLists.txt checked_ptr_test.cpp

[libc] Implement CheckedPtr utility (#234646)

This adds CheckedPtr, a wrapper around cpp::unique_ptr (along with a
make_unique helper) that asserts in !NDEBUG builds that the pointer was
checked for nullness before it is dereferenced, destroyed or overwritten
(e.g., move assignment). This way, a missing check is caught even if the
allocation succeeds.

The idea is replace AllocChecker (which was meant to serve a similar
purpose, but the checking part didn't materialize so far). See
<https://discourse.llvm.org/t/rfc-error-checking-apis-for-memory-allocation-and-management/92511>
for more details.

A few notable design choices:
- operator bool() is non-const so the checked flag does not need to be
mutable (avoiding data races on concurrent const reads)
- moving a CheckedPtr disarms the source and leaves the destination
unchecked (similar to llvm::Error), forcing the new owner to check it
- the class wraps unique_ptr rather than replacing it, as I expect we

    [5 lines not shown]
DeltaFile
+297-0libc/test/src/__support/checked_ptr_test.cpp
+210-0libc/src/__support/checked_ptr.h
+15-0libc/src/__support/CMakeLists.txt
+14-0libc/test/src/__support/CMakeLists.txt
+536-04 files

LLVM/project 8aff1f3 — mlir/include/mlir/Dialect/Vector/Transforms VectorTransformsBase.td, mlir/lib/Dialect/Vector/Transforms VectorTransferSplitRewritePatterns.cpp

[mlir][vector] Drop Linalg dependency from transfer full/partial split

The `LinalgCopy` strategy of the vector transfer full/partial split was the
only reason MLIRVectorTransforms depended on the Linalg dialect: its read
slow path filled the temporary buffer with `linalg.fill`. The copies were
already `memref.copy` since https://reviews.llvm.org/D118028.

The temporary buffer is a statically shaped alloca holding exactly one
vector, so fill it with a `vector.broadcast` of the padding value stored
through `vector.type_cast`. This is the same buffer access the
`VectorTransfer` strategy already uses.

As the strategy no longer creates any Linalg ops, rename it from
`LinalgCopy` to `MemRefCopy`
DeltaFile
+24-17mlir/lib/Dialect/Vector/Transforms/VectorTransferSplitRewritePatterns.cpp
+11-6mlir/test/Dialect/Vector/vector-transfer-full-partial-split-copy-transform.mlir
+4-5mlir/include/mlir/Dialect/Vector/Transforms/VectorTransformsBase.td
+1-1mlir/test/python/dialects/transform_vector_ext.py
+1-1mlir/test/Dialect/Vector/transform-vector.mlir
+1-1mlir/test/Dialect/LLVM/transform-e2e.mlir
+42-315 files not shown
+46-3611 files

LLVM/project 31dc1c5 — libc/src/__support/net CMakeLists.txt hex.h, libc/src/netinet/ether ether_utils.h

[libc] Add a hex parsing helper for network address parsing (#237359)

Both str_to_ipv6 and ether_aton need to parse short runs of hex digits,
and both were doing it in their own way. ether_aton had a hand-rolled
loop, while str_to_ipv6 used strtointeger, which meant it had to
explicitly reject all of the things strtointeger accepts but we don't
want (leading whitespace, signs, 0x prefixes), and then check the length
of the result.

This patch adds a consume_hex<T> function, which parses at most
2*sizeof(T) hex digits from the front of a string_view, and uses it in
both places. Any characters after that are left for the caller to deal
with, which works out nicely since both callers already need to check
for a separator after each component. hex_digit_value moves into the new
header as well.

I've put the header into __support/net, since that's where its users
are, though there's nothing network specific about it. The main reason
for not putting it somewhere more generic, is the question of naming it

    [4 lines not shown]
DeltaFile
+78-0libc/test/src/__support/net/hex_test.cpp
+66-0libc/src/__support/net/hex.h
+9-22libc/src/netinet/ether/ether_utils.h
+15-0utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+15-0libc/src/__support/net/CMakeLists.txt
+15-0libc/test/src/__support/net/CMakeLists.txt
+198-223 files not shown
+204-339 files

LLVM/project 43c65f0 — mlir/lib/Dialect/Arith/Extensions ShardingExtensions.cpp, mlir/lib/Dialect/Arith/Transforms ShardingInterfaceImpl.cpp

[mlir][arith][linalg][tosa] Move sharding interface impls into extension libraries

The external sharding models of Arith, Linalg and Tosa were compiled into
`MLIRArithTransforms`, `MLIRLinalgTransforms` and
`MLIRTosaShardingInterfaceImpl`, so every user of these libraries linked
the Shard dialect, `MLIRShardingInterface` and, for Linalg,
`MLIRShardTransforms`, even when sharding is never used.

Move them into extension libraries, following the existing Tensor,
Func and Bufferization sharding extension convention. As there, the models are
registered by the new `registerAllExtensions` calls.
DeltaFile
+0-348mlir/lib/Dialect/Linalg/Transforms/ShardingInterfaceImpl.cpp
+348-0mlir/lib/Dialect/Linalg/Extensions/ShardingExtensions.cpp
+0-131mlir/lib/Dialect/Tosa/IR/ShardingInterfaceImpl.cpp
+131-0mlir/lib/Dialect/Tosa/Extensions/ShardingExtensions.cpp
+0-104mlir/lib/Dialect/Arith/Transforms/ShardingInterfaceImpl.cpp
+104-0mlir/lib/Dialect/Arith/Extensions/ShardingExtensions.cpp
+583-58325 files not shown
+890-67531 files

LLVM/project e70e165 — llvm/lib/Passes PassBuilderPipelines.cpp, llvm/test/Other new-pm-lto-defaults.ll

[PassBuilder] Add extra ModuleInliner/SROA/SimplifyCFG/LICM to late FullLTO passes (#197678)

This patch is in preparation to removing pre-LTO vectorisation
(https://github.com/llvm/llvm-project/pull/195886).

After removing the pre-LTO vectorisation there are various missed
optimisation opportunities which show up in benchmarks.

The pre-LTO SLP creates LTO inlining opportunities. When pre-LTO SLP is
removed, we lose the SLP -> Inliner phase sequence, so we add a second
LTO inliner to re-establish it.

The second module inliner uncovers opportunities for SROA, particularly
around passing
aggregate arguments and return values.

Likewise, we've noticed cases with missing opportunities for SimplifyCFG
and LICM, caused by the change of the order of optimisation phases.

This patch adds ModuleInliner, SROA, SimplifyCFG, and LICM late in LTO
optimisation pipeline.
DeltaFile
+18-4llvm/lib/Passes/PassBuilderPipelines.cpp
+10-0llvm/test/Other/new-pm-lto-defaults.ll
+28-42 files

LLVM/project fff43f8 — llvm/utils/gn/secondary/llvm/lib/Target/Sparc BUILD.gn

[gn build] Port 8083f03c1c464 (#237982)
DeltaFile
+1-0llvm/utils/gn/secondary/llvm/lib/Target/Sparc/BUILD.gn
+1-01 files

OPNSense/core a49d33e — src/opnsense/mvc/app/library/OPNsense/System StaticRoute.php

System: Routes: Configuration - missed linklocal interface addition in https://github.com/opnsense/core/pull/11104, closes https://github.com/opnsense/core/issues/11118
DeltaFile
+5-1src/opnsense/mvc/app/library/OPNsense/System/StaticRoute.php
+5-11 files

LLVM/project a4f9afe — llvm/utils/gn/secondary/llvm/lib/Target/BPF BUILD.gn

[gn build] Port 0d8e01026b24 (#237981)
DeltaFile
+1-0llvm/utils/gn/secondary/llvm/lib/Target/BPF/BUILD.gn
+1-01 files

OPNSense/core 1ce08c0 — src/opnsense/mvc/app/views/layout_partials base_dialog.volt

ui: prefix edit/new/copy dialog with associated icon. closes https://github.com/opnsense/core/pull/11080

forgot to push template update
DeltaFile
+1-1src/opnsense/mvc/app/views/layout_partials/base_dialog.volt
+1-11 files

LLVM/project 55c4d46 — mlir/lib/Dialect/XeGPU/Utils XeGPUUtils.cpp, mlir/test/Dialect/XeGPU xegpu-wg-to-sg.mlir

[MLIR][XeGPU] Build float min/max neutral values the format can represent (#233471)

`createReductionNeutralValue` gives a float min/max reduction an
infinity (`maximumf`, `minimumf`) or a quiet NaN (the kinds that ignore
NaN). The WG-to-SG distribution and the peephole split of
`vector.multi_reduction` start their new reductions from this value.

Some float formats cannot represent these values:
- A format without infinity, such as `f8E4M3FN`: `APFloat::getInf`
returns NaN. So `maximumf` and `minimumf` start from NaN, and every
result is NaN.
- `f4E2M1FN` has neither infinity nor NaN, so building the value aborts.
- `f8E8M0FNU` has no negative values, so building -inf for `maximumf`
aborts.

This patch chooses the value by what the format supports:
- A kind that ignores NaN still uses a quiet NaN if the format has one.
- Otherwise it uses the infinity that never wins.
- A format without that infinity uses its lowest (for max) or highest

    [10 lines not shown]
DeltaFile
+88-0mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
+30-12mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
+118-122 files

LLVM/project bb61646 — llvm/lib/Passes PassBuilderPipelines.cpp, llvm/test/Other new-pm-lto-defaults.ll

[PassBuilder] Remove LoopFullUnrollPass from before LoopVectorize in the FullLTO pipeline (#197176)

This patch is in preparation for disabling the pre-LTO vectorisation in
the FullLTO pipeline (https://github.com/llvm/llvm-project/pull/195886).

It removes the `LoopFullUnrollPass` run before `LoopVectorizePass` in
the full LTO pipeline.

Running the `LoopFullUnrollPass` before `LoopVectorizePass` causes
functions to be unrolled before the vectoriser has had a chance to
vectorise them (in the modified pipeline where vectorisation does not
happen in the pre-link stage).
DeltaFile
+19-17llvm/test/Transforms/PhaseOrdering/loop-vectorize-bfi.ll
+2-4llvm/lib/Passes/PassBuilderPipelines.cpp
+0-1llvm/test/Other/new-pm-lto-defaults.ll
+21-223 files

LLVM/project 07e5272 — mlir/include/mlir/Target/LLVMIR ModuleTranslation.h, mlir/lib/Target/LLVMIR ModuleTranslation.cpp

Reland "[mlir][LLVMIR] Decouple ModuleTranslation from the OpenMP dialect" (#236777)

`ModuleTranslation.h` included `OpenMPDialect.h` and owned
OpenMP-specific state. Every consumer of the LLVM IR export, and every
dialect whose header includes `ModuleTranslation.h` (NVVM, XeVM),
therefore depended on the OpenMP dialect, and `MLIRNVVMDialect`,
`MLIRXeVMDialect` and `MLIRLLVMIRTransforms` linked `MLIROpenMPDialect`
for that reason only.

This PR decouples this by adding a TypeID-keyed
`ModuleTranslation::Extension` mechanism (similar to ones seen in
bufferization or the transform dialect) for state that lives as long as
the translation and move the OpenMP state into an extension owned by the
OpenMP translation.

Reland notes: The original commit broke `BUILD_SHARED_LIBS=ON` builds
with `-Wl,-z,defs`: `FIRDialect` attaches
`omp::DeclareTargetDefaultModel` to `fir::GlobalOp` but only linked
`MLIROpenMPDialect` transitively through

    [2 lines not shown]
DeltaFile
+247-146mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+35-50mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
+0-47mlir/lib/Target/LLVMIR/Dialect/OpenMPCommon.cpp
+47-0mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPCommon.cpp
+10-32mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
+2-0mlir/lib/Target/LLVMIR/Dialect/OpenMP/CMakeLists.txt
+341-2756 files not shown
+344-28012 files

FreeBSD/ports 4465ef2 — devel/open62541 distinfo Makefile

devel/open62541: Update 1.5.8 => 1.5.10

Changelogs:
https://github.com/open62541/open62541/releases/tag/v1.5.9
https://github.com/open62541/open62541/releases/tag/v1.5.10

While here, sort Makefile (pet port{clippy,fmt}).

PR:             300411
Approved by:    osa, vvd (mentors, implicit)
DeltaFile
+6-6devel/open62541/Makefile
+3-3devel/open62541/distinfo
+9-92 files

OpenBSD/ports wbEH3dp — textproc/docsible Makefile distinfo

   Update docsible 0.7.25 -> 0.8.0
   Changelog: https://github.com/docsible/docsible/releases/tag/v0.8.0
VersionDeltaFile
1.2+2-2textproc/docsible/distinfo
1.3+1-2textproc/docsible/Makefile
+3-42 files

FreeBSD/ports c21d84f — devel/glab pkg-plist Makefile

devel/glab: update to 1.127.0

Changes:        https://gitlab.com/gitlab-org/cli/-/releases
DeltaFile
+5-5devel/glab/distinfo
+2-2devel/glab/Makefile
+2-0devel/glab/pkg-plist
+9-73 files

OpenBSD/ports iaHyJqo — databases/bbolt Makefile distinfo

   Update bbolt 1.4.3 -> 1.5.0
   Changelog: https://github.com/etcd-io/bbolt/blob/main/CHANGELOG/CHANGELOG-1.5.md
VersionDeltaFile
1.6+238-28databases/bbolt/distinfo
1.6+72-18databases/bbolt/Makefile
+310-462 files

FreeNAS/freenas d08f449 — src/middlewared/middlewared/alert/source truenas_s3.py, src/middlewared/middlewared/common/attachment __init__.py

Keep other writers off S3 bucket datasets

## Problem
truenas_s3 relies on middleware to keep every other writer off a BUCKET bucket's dataset: a foreign write is served under stale ETags and version IDs, mints no version, skips audit and defeats object lock. The guard only matched a writer's own path at or inside a bucket, and only when the writer was saved. A writable share or task on an ancestor reached the bucket through its child mount, a cloud sync MOVE or an rsync push with `--remove-source-files` deleted from it, bucket create and recover never looked at existing writers, a dataset rename left the bucket row on the old name, and datasets could be created, cloned or renamed into a bucket. Several single-path writers skipped the check entirely (iSCSI and NVMe-oF file backends, VM and container devices, `filesystem.mkdir`/`put`, VM disk conversion, manual update uploads and a cloud backup cache path), a recursive permissions change could rewrite the bucket's private state below its root, and webshare ignored its `readonly` flag.

## Solution
- **Above a bucket.** An enabled share or task whose writes cross into child mounts, a home directory and the anonymous FTP root are refused above a BUCKET bucket's dataset, judged by the resolved path. NFS exports stop at child mounts and read-only shares only read, so both stay allowed. A disabled entry is checked when it is enabled, and rsync and cloud sync re-check before each run and write nothing when refused.
- **Writers.** A cloud sync MOVE push and an rsync push that removes its sources count as writers, and webshare honours `readonly`.
- **Reverse checks.** Each share/task attachment delegate lists its enabled writers from the same `local_path_info` the save-time check uses. Bucket create and recover, a new managed root and a rename that carries a bucket are refused where one of them, a home directory or the anonymous FTP root would reach it. The error names no writer because the S3 service relays it to its clients, so the writers are logged instead.
- **Nesting and rename.** New `validate_create`/`validate_rename` delegate hooks let S3 refuse `zfs.resource.create`, snapshot clones and renames that put a dataset inside a bucket's dataset or onto a name a bucket row still holds, and a `no_unmount` rename that moves a bucket. Bucket rows follow a dataset rename and the S3 service restarts onto the new mount, and a bucket's dataset must be mounted at `/mnt/<name>`.
- **Single-path writers.** iSCSI and NVMe-oF file backends, VM RAW and CDROM devices, container filesystem devices, `filesystem.mkdir`/`put`/`file_receive`, `vm.device.convert` and `update.file` destinations and the cloud backup cache path are refused at or inside a bucket, and a recursive permissions change inside a bucket outside `s3data` is refused.
- **Async call keyword arguments.** `Middleware._call` dropped keyword arguments when the target method was a coroutine, so `call2` never delivered them to an async method; it now forwards them as the executor path and `call_sync2` already do.
- **Alert.** A daily alert names each bucket and the writers that reach it, for configurations from before these checks; the SMB path alert leaves that case to it.

The export test now expects a writable share on a DATASET export above a BUCKET child to be refused and a read-only one to pass. The export is created NFSv4 because SMB refuses a share whose child mount has another ACL type.
DeltaFile
+245-41src/middlewared/middlewared/plugins/truenas_s3/bucket_crud.py
+190-41tests/api2/test_s3_bucket.py
+54-1src/middlewared/middlewared/alert/source/truenas_s3.py
+47-2src/middlewared/middlewared/common/attachment/__init__.py
+43-0src/middlewared/middlewared/pytest/unit/plugins/test_truenas_s3_bucket_paths.py
+31-2src/middlewared/middlewared/utils/service/path.py
+610-8737 files not shown
+800-12243 files

FreeBSD/ports c51bb04 — textproc/ast-grep Makefile Makefile.crates

textproc/ast-grep: Update to 0.51.1

Changelog: https://github.com/ast-grep/ast-grep/blob/0.51.1/CHANGELOG.md

Reported by:    GitHub (watch releases)
DeltaFile
+77-77textproc/ast-grep/distinfo
+37-37textproc/ast-grep/Makefile.crates
+1-1textproc/ast-grep/Makefile
+115-1153 files

FreeBSD/ports cc32d5d — graphics/p5-Image-ExifTool-devel Makefile distinfo

graphics/p5-Image-ExifTool-devel: Update to 13.60

ChangeLog:      https://exiftool.org/history.html#v13.60

PR:             300420
Approved by:    osa, vvd (mentors, implicit)
MFH:            2026Q4

(cherry picked from commit 38097e96714998c0c03c3501a0077fa1452ea37d)
DeltaFile
+3-3graphics/p5-Image-ExifTool-devel/distinfo
+1-1graphics/p5-Image-ExifTool-devel/Makefile
+4-42 files

FreeBSD/ports 38097e9 — graphics/p5-Image-ExifTool-devel Makefile distinfo

graphics/p5-Image-ExifTool-devel: Update to 13.60

ChangeLog:      https://exiftool.org/history.html#v13.60

PR:             300420
Approved by:    osa, vvd (mentors, implicit)
MFH:            2026Q4
DeltaFile
+3-3graphics/p5-Image-ExifTool-devel/distinfo
+1-1graphics/p5-Image-ExifTool-devel/Makefile
+4-42 files

FreeBSD/ports a1b9b86 — cad/fdm_materials/files patch-CMakeLists.txt

cad/fdm_materials: Fix building with CMake 4

Approved by:    portmgr (fixit blanket)
DeltaFile
+10-0cad/fdm_materials/files/patch-CMakeLists.txt
+10-01 files

LLVM/project f598a65 — libc/src/__support/CPP unique_ptr.h CMakeLists.txt, libc/src/__support/CPP/cstddef nullptr_t.h

[libc] Move nullptr_t definition to cstddef/nullptr_t.h (#236712)

cpp::nullptr_t was previously defined in type_traits/is_null_pointer.h,
which is an odd place for it. In standard C++, nullptr_t is defined in
<cstddef>. However, putting it directly into the umbrella cstddef.h
pulls in byte, which depends on type_traits.h for enable_if_t and
is_integral_v, creating an include cycle if type_traits wants to use
nullptr_t.

To solve this, I've placed nullptr_t into a granular
src/__support/CPP/cstddef/nullptr_t.h header (following the precedent of
headers in utility/ and libc++'s __cstddef/nullptr_t.h).

With this change:
- cstddef.h re-exports nullptr_t from cstddef/nullptr_t.h.
- is_null_pointer.h includes cstddef/nullptr_t.h and uses cpp::nullptr_t
without circular dependencies.
- unique_ptr.h, LibcTest.h, and tests include cstddef/nullptr_t.h
directly and use nullptr_t in place of decltype(nullptr).

    [3 lines not shown]
DeltaFile
+27-0libc/src/__support/CPP/cstddef/nullptr_t.h
+15-0libc/test/src/__support/CPP/unique_ptr_test.cpp
+11-0libc/src/__support/CPP/CMakeLists.txt
+10-0utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+4-2libc/test/src/__support/CPP/functional_test.cpp
+3-2libc/src/__support/CPP/unique_ptr.h
+70-47 files not shown
+78-513 files

FreeBSD/ports 8f8f9b0 — www/adjuster Makefile distinfo

www/adjuster: Update 3.250 => 3.251

Commit log:
* Improve reliability of the legacy CGI mode when run under Apache.
https://github.com/ssb22/adjuster/compare/v3.250...v3.251

PR:             300429
Approved by:    osa, vvd (mentors, implicit)
DeltaFile
+3-3www/adjuster/distinfo
+1-1www/adjuster/Makefile
+4-42 files

FreeBSD/ports ab609d7 — lang/R-cran-languageserver Makefile distinfo

lang/R-cran-languageserver: Update to 0.3.21

Changelog:
https://cran.r-project.org/web/packages/languageserver/news/news.html
DeltaFile
+3-3lang/R-cran-languageserver/distinfo
+1-1lang/R-cran-languageserver/Makefile
+4-42 files

LLVM/project ef5c409 — clang/lib/CIR/Dialect/IR CMakeLists.txt, llvm/lib/Analysis CMakeLists.txt

rebase
DeltaFile
+1-1llvm/lib/Analysis/CMakeLists.txt
+1-1clang/lib/CIR/Dialect/IR/CMakeLists.txt
+2-22 files