Convert FTP plugin to typesafe pattern
## Context
The `ftp` plugin was still dict-based: a `SystemServiceService` with a string `datastore_extend`, a `do_update` returning a plain dict, and consumers/mako templates reading config via `cfg['key']`. This moves it to the typesafe pattern (lean service class delegating to a `SystemServicePart`, `generic = True`, typed `config()`/`do_update`, `check_annotations=True`, `call2`), matching the converted `ups` plugin.
## Solution
- **New `plugins/ftp/` package** replacing `plugins/ftp.py` and `plugins/ftp_/`: `__init__.py` holds the lean `FTPService` (registered in `main.py`'s `ServiceContainer`), `config.py` holds `FTPModel` + `FTPServicePart` (extend/validate/do_update), and the port/cert attachment delegates plus the `connection_count` helper move in alongside. The old compound `ftp_/status.py` service is folded into `connection_count` as a `@private` method.
- **API models** (`api/v27_0_0/` only): split the legacy `@single_argument_args('ftp_update')` form into the standard `FTPUpdate` / `FTPUpdateArgs(data=...)` / `FTPUpdateResult` shape; the wire API is unchanged.
- **Consumers fixed for the dict→model change:** `usage.py` switches to `call2` + attribute access, and the three proftpd mako templates (plus a dead line in `ftpusers.mako`) move from `ftp['x']` to `ftp.x` now that `ftp.config` returns an `FTPEntry`.
- **`ServicePortDelegate.config()`** now normalizes a Pydantic config to a dict (`isinstance` / `model_dump`), the same dispatch the certificate delegate already does. Without this, the FTP port delegate hit `'FTPEntry' object has no attribute 'get'` whenever `port.validate_port` ran (e.g. on `ftp.update`).
- Added type annotations to `resolve_hostname`/`validate_port` in `async_validators.py` so the typed FTP part can call them, and added `plugins/ftp/` to the mypy workflow.
Convert hardware plugin to the typesafe pattern
## Context
The hardware plugin is a directory of four mostly-private legacy services (mseries.bios, mseries.nvdimm, hardware.memory, plus hardware.virtualization). Only hardware.virtualization.variant is public over the wire; the rest return plain dicts/bools consumed internally by alert sources and usage reporting, so Pydantic models would be pure overhead.
## Solution
Applied the port-plugin pattern: lean Service shims in __init__.py that delegate to plain, fully type-annotated module functions, keeping the existing dict/primitive return shapes so no consumer changes are needed. The one public method gets check_annotations=True against the existing HardwareVirtualizationVariant models. Registered the services in main.py's ServiceContainer via nested hardware/mseries containers and added the plugin to mypy.yml.
[LV] Drop the mask of a predicated store masked by the header mask. (#201676)
Drop the mask of a predicated store masked by the header mask (which is
guaranteed to be true at least for the first lane) and both the stored
value and the address are uniform across VF and UF.
An similar version for loads was included in
https://github.com/llvm/llvm-project/pull/196630, but restricted the
uniform-across-vfs-and-ufs did not have impact in practice.
For stores, this results in some improvements after
https://github.com/llvm/llvm-project/pull/196632.
PR: https://github.com/llvm/llvm-project/pull/201676
Update to john-jumbo to bleeding-jumbo as of 20260613
Move from the 1.8.0-jumbo-1 release to the bleeding-jumbo development
branch, which tracks ongoing jumbo development past 1.9.0-jumbo-1
(May 2019) -- ~4.5 years and 6000+ jumbo commits beyond 1.8.0-jumbo-1.
Notable changes since 1.8.0-jumbo-1:
- New 1.9.0 core base; bcrypt interleaving on x86-64 raised 2x -> 3x
for a major speedup on CPUs without SMT
- Extended bitslice DES with more SIMD sets: AVX2, AVX-512 (incl.
2nd-gen Xeon Phi) and MIC (1st-gen Xeon Phi) on x86(-64); ASIMD
on Aarch64
- AVX-512 ternary-logic (3-input LUT) DES S-box expressions, also
used via OpenCL on NVIDIA Maxwell and above
- FPGA support for 7 hash types on ZTEX 1.15y boards
- Many new format/hash types, OpenCL improvements, bugfixes and
portability updates
Full release notes at https://www.openwall.com/lists/announce/2019/05/14/1
[BOLT] Zero alignment padding when reusing old text section (#202375)
With --use-old-text, the output starts as a byte-for-byte copy of the
input. Alignment padding between sections could retain stale data from
the original binary. Zero the padding so the result matches writing
sections to new file offsets.
netpbm: Various build fixes.
Firstly, this fails to build with a compiler that defaults to C23,
due to "old-style function definitions" in getopt.c. So force it to
build with the gnu89 standard.
Secondly, we want to force all function definitions to be visible.
They hardcore XOPEN_SOURCE all over the codebase, so we need to
override their decision. This eliminates the need to compile with
-Wno-implicit-function-declaration.
Why do we want to avoid doing that? Because older GCC versions error
when they encounter a warning flag that they don't support, and that
is one of them that GCC 4.x does not support.
net-p2p/amule: Update to 3.0.0
- Switch to the active community fork upstream
- Switch build system from GNU Autotools to CMake.
- Fix library dependencies by unbundling/forcing native options (disable BFD).
- Clean up obsolete Makefile variables, overrides, and old patches.
- Add tests
Reviewed by: diizzy