FreeNAS/freenas 28892d8src/middlewared/middlewared/api/base/types urls.py, src/middlewared/middlewared/api/base/validators base.py

NAS-141860 / 27.0.0-BETA.1 / Stop pydantic serializer warnings for HttpsOnlyURL fields (#19355)

This commit fixes an issue where every serialization of an HttpsOnlyURL
field logged a PydanticSerializationUnexpectedValue warning. The
AfterValidator returned a str while the annotation stayed HttpUrl, so
the serializer expected a Url but got a str. We now keep the value as an
HttpUrl and attach a PlainSerializer(str) so model_dump still emits a
plain string in both python and json modes without the warning.
DeltaFile
+6-2src/middlewared/middlewared/api/base/types/urls.py
+2-2src/middlewared/middlewared/api/base/validators/base.py
+8-42 files

NetBSD/pkgsrc-wip 4be0b92py-beartype distinfo Makefile

py-beartype: use PYPI distfile
DeltaFile
+3-3py-beartype/distinfo
+1-2py-beartype/Makefile
+4-52 files

LLVM/project 39a774aclang/test/CodeGen/PowerPC ppc-float16-homogeneous-aggregate.c ppc-complex-float16.c

[PowerPC] Add _Complex _Float16 and homogeneous-aggregate ABI tests

Pin down two calling-convention decisions requested in review:

- _Complex _Float16 is passed and returned as two scalar half components
  (real, imaginary), each in an FPR, consistent with the scalar rule and
  the psABI treatment of complex types.
- A struct of _Float16 members is not a homogeneous floating-point
  aggregate: it is passed as an integer aggregate (GPRs on ELFv2, byval
  on AIX), contrasted with a float aggregate that does use FPRs. The HFA
  question for _Float16 is deliberately left to the psABI.
DeltaFile
+93-0clang/test/CodeGen/PowerPC/ppc-float16-homogeneous-aggregate.c
+66-0clang/test/CodeGen/PowerPC/ppc-complex-float16.c
+159-02 files

LLVM/project 8ac25faclang/test/CodeGen/PowerPC half-float16-ppc.c, llvm/lib/Target/PowerPC PPCISelLowering.cpp

[PowerPC] Fix f16 int conversions, varargs and calling convention

Fix a set of defects in the f16 support found by runtime testing on
Power10 hardware (Linux ELFv2 and AIX) and by review:

- FP_TO_SINT/FP_TO_UINT with an f16 operand are keyed by the legalizer on
  their (legal) integer result type, so the operand was never promoted and
  mis-selected as a double-precision convert, producing silently wrong
  results. Add a DAG combine that extends the operand to f32 first.
- SINT_TO_FP/UINT_TO_FP with an f16 result fell back to a nonexistent
  __floatdihf/__floatundihf libcall for i64 sources. Round through f64
  (fcfid/xscvsxddp then xscvdphp) with a matching combine.
- A variadic f16 argument on ELFv2 hit a BITCAST width assertion in
  LowerCall_64SVR4 when producing the GPR copy of an unnamed FP argument.
  Handle f16 with BITCAST to i16 then ANY_EXTEND, mirroring the f32 path.
- The CC_PPC64_ELF shadow-GPR helper did not count f16, so a scalar f16
  argument failed to reserve its GPR doubleword in the CCState analysis
  used for tail-call and stack-size decisions.
- Map VHFRC to the 8-byte VSX spill slot: the 16-bit value lives in the

    [7 lines not shown]
DeltaFile
+1,283-709llvm/test/CodeGen/PowerPC/half-float16-ppc.ll
+286-83clang/test/CodeGen/PowerPC/half-float16-ppc.c
+117-22llvm/lib/Target/PowerPC/PPCISelLowering.cpp
+58-79llvm/test/CodeGen/PowerPC/half.ll
+105-0llvm/test/CodeGen/PowerPC/f16-elfv2-arg-overflow.ll
+65-9llvm/test/CodeGen/PowerPC/f16-aix-psa.ll
+1,914-9025 files not shown
+1,950-92711 files

LLVM/project ef06063llvm/lib/Target/PowerPC PPCISelLowering.cpp PPCInstrVSX.td, llvm/test/CodeGen/PowerPC f16-strictfp.ll f128-conv.ll

[PowerPC] Add f16 strict-FP support

Registering f16 as a legal type left every STRICT_* opcode at its Legal
default with no selection pattern, so any strict-FP operation on
_Float16 failed to select. Fix the strict path end to end:

- Promote the strict arithmetic, rounding, transcendental and compare
  opcodes (STRICT_FSETCC/STRICT_FSETCCS) to f32 via F16StrictPromoteOps.
- Switch the P9 conversion patterns to any_fpround/any_fpextend so the
  strict nodes select XSCVDPHP/XSCVHPDP directly.
- Make LowerFP_EXTEND strict-aware (thread the chain) and route P9
  f16 -> f128 through xscvhpdp + xscvdpqp instead of regressing to an
  __extendhfsf2 libcall; register STRICT_FP_EXTEND Custom for the f16
  source cases, re-applied after the generic f32/f64 Legal setting that
  would otherwise clobber it.
- Build STRICT_FP_ROUND in the int-to-fp combine with a target rounding
  mode constant, fixing an "Invalid STRICT_FP_ROUND!" assertion on
  strict sitofp/uitofp to f16.
- Suppress register pressure set generation for VHFRC, which shares the

    [4 lines not shown]
DeltaFile
+319-0llvm/test/CodeGen/PowerPC/f16-strictfp.ll
+124-135llvm/lib/Target/PowerPC/PPCISelLowering.cpp
+6-6llvm/lib/Target/PowerPC/PPCInstrVSX.td
+1-9llvm/test/CodeGen/PowerPC/f128-conv.ll
+2-2llvm/lib/Target/PowerPC/PPCRegisterInfo.td
+452-1525 files

LLVM/project 638eb37clang/include/clang/Options Options.td, clang/lib/Basic/Targets PPC.cpp

[PowerPC] Remove the float16 target feature; make -mfloat16 front-end-only

Delete FeatureFloat16 and the HasFloat16 predicate from PPC.td and stop
emitting +float16 from the driver. -mfloat16 is now marshalled to
LangOpts.PPCFloat16 and forwarded to cc1 directly; its validation (Power8+
requirement, -msoft-float conflict) moves from the driver feature handling
into PPCTargetInfo::adjust().

The flag is purely a source-level admission gate for the _Float16 type.
It produces no LLVM target feature and has no effect on the
target-features attribute, so ABI and code generation depend only on
hardware capability (hasP8Vector() && hasHardFloat()): two translation
units compiled with and without -mfloat16 have identical calling
conventions.
DeltaFile
+30-17clang/test/Driver/ppc-float16-support-check.c
+10-11clang/lib/Basic/Targets/PPC.cpp
+4-2clang/include/clang/Options/Options.td
+0-5clang/lib/Driver/ToolChains/Arch/PPC.cpp
+0-5llvm/lib/Target/PowerPC/PPC.td
+1-1llvm/test/CodeGen/PowerPC/shrink-wrap.mir
+45-412 files not shown
+47-418 files

LLVM/project 34f90bdllvm/lib/Target/PowerPC PPCISelLowering.cpp, llvm/test/CodeGen/PowerPC soft-promote-half-br-cc.ll half-float16-ppc.ll

[PowerPC] Fix f16 BR_CC promotion and update stale AIX TOC test checks.

- Add ISD::BR_CC to F16PromoteOps so half-precision branch conditions
  are promoted to f32 before reaching SelectCC in PPCISelDAGToDAG.
  Without this, fcmp+br on f16 operands crashed with an assertion in
  SelectCC which only handles f32/f64/f128 comparisons.

- Regenerate half-float16-ppc.ll: AIX TOC addressing for constant pool
  entries changed upstream from a single GP-relative ld (ld 3,L..C0(2))
  to an explicit hi/lo addis+ld pair; update the P8-AIX-64 CHECK lines.

- Regenerate soft-promote-half-br-cc.ll: with f16 arguments now arriving
  in FPRs (f1,f2) rather than GPRs (r3,r4) post ABI fix, update all
  CHECK patterns to reflect the FPR-based calling convention.
DeltaFile
+14-24llvm/test/CodeGen/PowerPC/soft-promote-half-br-cc.ll
+16-8llvm/test/CodeGen/PowerPC/half-float16-ppc.ll
+5-1llvm/lib/Target/PowerPC/PPCISelLowering.cpp
+35-333 files

LLVM/project 66f82a3clang/test/CodeGen/AArch64/neon store.c, llvm/lib/Transforms/Vectorize VPlanTransforms.cpp VPlanLowering.cpp

Merge branch 'filecheck-diag-annotator' into filecheck-pattern-notes
DeltaFile
+0-1,992llvm/test/CodeGen/X86/expand-false-deps.ll
+1,486-0clang/test/CodeGen/AArch64/neon/store.c
+1,385-0llvm/test/CodeGen/X86/expand-false-deps.mir
+30-1,240llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+1,177-0llvm/lib/Transforms/Vectorize/VPlanLowering.cpp
+0-1,060llvm/test/CodeGen/X86/compress-false-deps.ll
+4,078-4,2921,044 files not shown
+30,098-15,9081,050 files

NetBSD/pkgsrc-wip f2b4dcdpy-polyfactory distinfo Makefile

py-polyfactory: use PYPI distfile
DeltaFile
+3-3py-polyfactory/distinfo
+1-2py-polyfactory/Makefile
+4-52 files

FreeNAS/freenas 351db20tests/unit test_boot_environment_setup.py

Format the boot environment setup test

ruff format keeps the call-list comprehension on one line.
DeltaFile
+1-4tests/unit/test_boot_environment_setup.py
+1-41 files

LLVM/project 12ba2cfclang/test/CodeGen/AArch64/neon store.c, llvm/lib/Transforms/Vectorize VPlanTransforms.cpp VPlanLowering.cpp

Merge branch 'filecheck-improve-labeler' into filecheck-diag-annotator
DeltaFile
+0-1,992llvm/test/CodeGen/X86/expand-false-deps.ll
+1,486-0clang/test/CodeGen/AArch64/neon/store.c
+1,385-0llvm/test/CodeGen/X86/expand-false-deps.mir
+30-1,240llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+1,177-0llvm/lib/Transforms/Vectorize/VPlanLowering.cpp
+0-1,060llvm/test/CodeGen/X86/compress-false-deps.ll
+4,078-4,2921,044 files not shown
+30,098-15,9081,050 files

LLVM/project ba83659llvm/lib/CodeGen/SelectionDAG SelectionDAG.cpp

[SDAG] Use DAG.getTokenFactor in more places (#210949)

This will cause the TokenFactor to be split into nodes of at most
SDNode::getMaxNumOperands() size.

This fixes #189161 but I have not added a test case as the output is
in excess of 160000 lines long.
DeltaFile
+4-4llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+4-41 files

LLVM/project f2f92e5clang/test/CodeGen/AArch64/neon store.c, llvm/lib/Transforms/Vectorize VPlanTransforms.cpp VPlanLowering.cpp

Merge branch 'main' into filecheck-improve-labeler
DeltaFile
+0-1,992llvm/test/CodeGen/X86/expand-false-deps.ll
+1,486-0clang/test/CodeGen/AArch64/neon/store.c
+1,385-0llvm/test/CodeGen/X86/expand-false-deps.mir
+30-1,240llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+1,177-0llvm/lib/Transforms/Vectorize/VPlanLowering.cpp
+0-1,060llvm/test/CodeGen/X86/compress-false-deps.ll
+4,078-4,2921,044 files not shown
+30,098-15,9081,050 files

LLVM/project c49595flldb/cmake/modules LLDBConfig.cmake, lldb/docs/resources build.md

Revert "[lldb][Windows] Only embed Python home in Debug config (#209464)" (#210989)

This reverts commit 5a19a3a4b9915d19fff1b8298e723ee2b24ebc6a.

To fix a failure with MinGW
(https://github.com/llvm/llvm-project/pull/209464#issuecomment-5034222807).
DeltaFile
+9-9lldb/docs/resources/build.md
+1-1lldb/cmake/modules/LLDBConfig.cmake
+10-102 files

LLVM/project c3e48dfllvm/utils/FileCheck FileCheck.cpp

[FileCheck][NFC] Encapsulate more into InputAnnotationLabeler (#207484)

This patch migrates more label-making concerns from
buildInputAnnotations into the InputAnnotationLabeler. It also
eliminates the brittle approach of creating a new InputAnnotationLabeler
object with a separate label prefix upon each MatchResultDiag while
persisting an object to close the previous search range. Instead, this
patch creates just one InputAnnotationLabeler object to handle all
diags, and it maintains a table of label prefixes for check patterns.
That approach seems easier to understand and more amenable to code
evolution.
DeltaFile
+90-108llvm/utils/FileCheck/FileCheck.cpp
+90-1081 files

FreeNAS/freenas 46c7624src/middlewared/debian control, tests README.md

Drop the zectl dependency from middleware

The boot_environment plugin runs the truenas_bootenv engine in-process
and never invokes the zectl binary, so middlewared no longer needs the
zectl package installed. Remove it from Depends.

The boot environment API tests confirmed activation by scraping zectl
list output. They read the same listing from truenas-bootenv instead,
the CLI that ships with truenas_pylibzfs.
DeltaFile
+3-3tests/api2/test_boot_environments.py
+1-1tests/README.md
+0-1src/middlewared/debian/control
+4-53 files

OpenBSD/ports Joxayfudevel/spidermonkey140 distinfo Makefile

   Update to spidermonkey140-140.13.0v1.
VersionDeltaFile
1.13+2-2devel/spidermonkey140/distinfo
1.13+1-1devel/spidermonkey140/Makefile
+3-32 files

LLVM/project b679982llvm/lib/Transforms/Vectorize VPlanRecipes.cpp, llvm/test/Transforms/LoopVectorize/AArch64 struct-return-cost.ll

[VPlan] Remove additional stray whitespace when printing calls. (#210979)

VPWidenCallRecipe::print had a stray whitespace between call and
fucntion name. Strip stray whitespace and add strict whitespace test to
guard against regressions.
DeltaFile
+2-2llvm/test/Transforms/LoopVectorize/AArch64/struct-return-cost.ll
+2-2llvm/test/Transforms/LoopVectorize/VPlan/print-attributes.ll
+1-1llvm/test/Transforms/LoopVectorize/VPlan/AArch64/call-decisions.ll
+1-1llvm/test/Transforms/LoopVectorize/VPlan/vplan-widen-struct-return.ll
+1-1llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
+7-75 files

FreeNAS/freenas 933ff13src/middlewared/middlewared/plugins cloud_sync.py, src/middlewared/middlewared/plugins/cloud crud.py

NAS-141795 / 27.0.0-BETA.1 / Cloud sync type-safe conversion (#19323)

Convert all cloud sync / cloud backup infrastructure to new-style
type-safe code, and add near-full test coverage.
DeltaFile
+0-1,036src/middlewared/middlewared/plugins/cloud_sync.py
+567-0src/middlewared/middlewared/plugins/cloud_sync/rclone.py
+170-65src/middlewared/middlewared/plugins/cloud/crud.py
+227-0src/middlewared/middlewared/plugins/cloud_sync/__init__.py
+187-0src/middlewared/middlewared/plugins/cloud_sync/crud.py
+169-0tests/cloud/test_cloud_sync.py
+1,320-1,10187 files not shown
+3,421-1,91993 files

LLVM/project c563edbllvm/lib/Target/AMDGPU AMDGPULegalizerInfo.cpp

AMDGPU/GlobalISel: Clean up fp LLT usage in AMDGPULegalizerInfo

Remove local variables in favor of global F16/BF16/F32/F64/V2F16/V2BF16.
These are now proper floating point LLTs instead of LLT::scalar.
A couple of legalizer actions now use fp extended LLT for type checks.
This is intended and is planned for all floating point opcodes.
In most cases the current S16/S32/S64 action on floating point opcodes was
intended for F16/F32/F64, and we will need to define an action for BF16.
DeltaFile
+28-71llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+28-711 files

OpenBSD/src X9158Ezusr.bin/tmux screen-redraw.c

   Clip floating panes exactly at window edge, don't let the border creep
   into the first outside column.
VersionDeltaFile
1.155+7-5usr.bin/tmux/screen-redraw.c
+7-51 files

LLVM/project 7c40a1dllvm/lib/Target/X86 X86TargetTransformInfo.cpp

[CostModel][X86] getArithmeticReductionCost - convert to CostKindTblEntry entries. NFC. (#210969)

No actual cost changes yet, but makes it much easier to adjust costs as
we progress.
DeltaFile
+94-82llvm/lib/Target/X86/X86TargetTransformInfo.cpp
+94-821 files

FreeBSD/ports 7fce3d0sysutils/fakertc pkg-descr Makefile

sysutils/fakertc: document that recent ZFS updates wall-clock time now

This makes this tool obsolete on systems running UFS *and* recent ZFS.
DeltaFile
+3-0sysutils/fakertc/pkg-descr
+1-1sysutils/fakertc/Makefile
+4-12 files

FreeBSD/ports e4122e2x11/hyprland-guiutils distinfo Makefile

x11/hyprland-guiutils: Update to 0.2.2

Changelog: https://github.com/hyprwm/hyprland-guiutils/releases/tag/v0.2.2

Reported by:    GitHub (watch releases)
DeltaFile
+3-3x11/hyprland-guiutils/distinfo
+1-2x11/hyprland-guiutils/Makefile
+4-52 files

LLVM/project 7c445ablibc/src/__support/CPP/type_traits is_floating_point.h, libc/src/__support/FPUtil float128.h CMakeLists.txt

[libc] Float128 Emulation in LLVM libc (#200565)

Introducing emulated float128 in LLVM libc
DeltaFile
+161-0libc/src/__support/FPUtil/float128.h
+109-0libc/test/src/__support/FPUtil/float128_test.cpp
+18-0libc/src/__support/FPUtil/CMakeLists.txt
+15-0libc/src/__support/macros/properties/types.h
+12-0libc/test/src/__support/FPUtil/CMakeLists.txt
+8-1libc/src/__support/CPP/type_traits/is_floating_point.h
+323-14 files not shown
+330-510 files

LLVM/project 81081c0llvm/include/llvm/Transforms/Scalar GVN.h, llvm/lib/Transforms/Scalar GVN.cpp

[GVN] Remove unused debug helper (NFC) (#210333)

The `GVNPass::dump` method is not used anywhere. Moreover, there's no
`GVNPass` state that corresponds to its parameter type. Even if a
`GVNPass::dump` method could be useful, this one wasn't it.
DeltaFile
+0-11llvm/lib/Transforms/Scalar/GVN.cpp
+0-1llvm/include/llvm/Transforms/Scalar/GVN.h
+0-122 files

LLVM/project 215b3e4llvm/lib/CodeGen/SelectionDAG DAGCombiner.cpp, llvm/test/CodeGen/AArch64 load-combine-masked.ll

[DAGCombiner] Teach MatchLoadCombine to look through AND masks (#200247)

Fixes #191193

`MatchLoadCombine` can combine OR trees built from shifted/zexted
consecutive byte loads into a wider load, but it currently bails out
when one of the loaded bytes is masked before being shifted into place.
This will miss patterns such as the following
```
  zext(load i8 p) | (zext(and(load i8 p+1, 3)) << 8)
```
which can be implemented as a 16-bit load followed by a mask.

This PR teaches `calculateByteProvider()` to look through constant AND
masks by tracking the mask applied to each byte. When the byte providers
cover a consecutive load range, we form the wider load and apply a final
mask to preserve the original value.

Added X86 and AArch64 tests covering the masked-byte combine, plus

    [3 lines not shown]
DeltaFile
+308-0llvm/test/CodeGen/AArch64/load-combine-masked.ll
+245-0llvm/test/CodeGen/X86/load-combine-masked.ll
+62-12llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+30-41llvm/test/CodeGen/AMDGPU/load-global-i16.ll
+16-22llvm/test/CodeGen/AMDGPU/load-constant-i16.ll
+7-15llvm/test/CodeGen/AMDGPU/load-local-i16.ll
+668-906 files

FreeNAS/freenas cc82626src/middlewared/middlewared/api/base/types urls.py, src/middlewared/middlewared/api/base/validators base.py

Stop pydantic serializer warnings for HttpsOnlyURL fields

This commit fixes an issue where every serialization of an HttpsOnlyURL field logged a PydanticSerializationUnexpectedValue warning. The AfterValidator returned a str while the annotation stayed HttpUrl, so the serializer expected a Url but got a str. We now keep the value as an HttpUrl and attach a PlainSerializer(str) so model_dump still emits a plain string in both python and json modes without the warning.
DeltaFile
+6-2src/middlewared/middlewared/api/base/types/urls.py
+2-2src/middlewared/middlewared/api/base/validators/base.py
+8-42 files

OpenBSD/ports HYvw7mzwww/mozilla-firefox Makefile distinfo, www/mozilla-firefox/patches patch-third_party_libwebrtc_modules_desktop_capture_linux_x11_x_server_pixel_buffer_cc patch-security_nss_lib_nss_nss_h

   www/mozilla-firefox: MFC update to 153.0.

   see https://www.firefox.com/en-US/firefox/153.0/releasenotes/
   fixes https://www.mozilla.org/en-US/security/advisories/mfsa2026-68/

   - depend on latest cbindgen
   - update XSHM 1.2 patches from matthieu (cf #1702919)
VersionDeltaFile
1.2.2.2+104-15www/mozilla-firefox/patches/patch-third_party_libwebrtc_modules_desktop_capture_linux_x11_x_server_pixel_buffer_cc
1.1.6.2+2-2www/mozilla-firefox/patches/patch-security_nss_lib_nss_nss_h
1.680.2.14+2-2www/mozilla-firefox/Makefile
1.397.2.12+2-2www/mozilla-firefox/distinfo
1.109.2.1+1-0www/mozilla-firefox/pkg/PLIST
1.1.2.1+0-0www/mozilla-firefox/patches/patch-third_party_libwebrtc_modules_desktop_capture_linux_x11_x_server_pixel_buffer_h
+111-216 files

LLVM/project 1d0b606compiler-rt/lib/tsan/rtl tsan_interceptors_mach_vm.cpp, compiler-rt/test/tsan/Darwin mach_vm_deallocate_race.c

[Darwin][TSan] Fix race in mach_vm_deallocate interceptor (#210716)

I have seen an issue whereby the meta store in MetaMap::AllocBlock lands
in the unmapped gap left during the tsan::MetaMap::ResetRange call;
where the range is first unmapped, and then remapped with MAP_FIXED.
This occurred under the mach_vm_deallocate interceptor, because it first
does the deallocate call, and only then does it call UnmapShadow -
leaving a gap where a fresh slab for malloc can land, only to have the
meta region for that range mapped out from under it, resulting in a bad
access fault.

It is worth noting that there is a comment above the IsValidMmapRange
function (which gets called during UnmapShadow), that describes this
exact issue in the context of munmap.

rdar://179172055

Assisted by: Claude
DeltaFile
+57-0compiler-rt/test/tsan/Darwin/mach_vm_deallocate_race.c
+2-3compiler-rt/lib/tsan/rtl/tsan_interceptors_mach_vm.cpp
+59-32 files