[CODEOWNERS] Drop all notifications (#236030)
The author would like to drop all CODEOWNERS notifications added in
c4e40dc23 ([CODEOWNERS] Request notifications, #227742) as they have
realized a sharp downside: it is impossible to distinguish cases where
their review was explicitly requested.
See also: #228086.
py-pyrate-limiter: updated to 4.5.1
4.5.1
Bug fixes only. One behaviour change to note: a decorated call that the limiter
can never admit now raises instead of running (see the first entry).
Fixed
- **`as_decorator` ran the wrapped function even when denied.** Both the sync
and async wrappers discarded the result of `try_acquire()` and called the
function unconditionally. With the default `blocking=True, timeout=-1` that
result is only `False` when the weight can never be admitted under the
configured rates (e.g. `weight=5` on `Rate(2, Duration.SECOND)`), so the
limiter's verdict was silently bypassed. Such calls now raise `RuntimeError`.
- **`Limiter.close()` never closed its buckets.** `BucketFactory.close()` read
the bucket list off the leaker after tearing the leaker down, so it always
iterated an empty list: SQLite connections and Postgres connection pools
stayed open. It now snapshots the buckets first. `SingleBucketFactory` also
closes its bucket when no leak was ever scheduled; factories that hold buckets
[21 lines not shown]
service: add reusable daemon(8) supervisor
Critical services can occasionally disappear after an OOM kill, crash or unexpected signal. This is especially disruptive when Suricata runs in divert-to mode: if it no longer consumes and reinjects packets, most traffic can stop until the service is restarted manually. Other vital system services have similar, albeit rare, failure modes.
Use daemon(8) as a small, reusable safety harness for supported services. A shared rc.subr helper starts a foreground service below daemon(8), tracks the supervisor and child independently, forwards stop and reload operations, and removes stale service PID files before restart attempts. Bounded retries with a delay prevent a permanently failing service from looping without limit.
This is intentionally a narrow initial implementation. Its boundary is a single service process that can run in the foreground and be dispatched by daemon(8). Services with their own process dispatcher, multiple independent children, or a custom lifecycle need additional integration before they can use it safely.
py-poetry-dynamic-versioning: updated to 1.10.1
1.10.1
Fixed:
* `0.1.2a3` would result in `__version_tuple__ = (0, 1, "2a3")`,
rather than the expected `__version_tuple__ = (0, 1, 2, "a3")`.
[InstCombine] Remove redundant separate_storage assumes (#233736)
When it can already be proven that two pointers don't alias without the
`separate_storage` assume there is no point in keeping
`separate_storage` assumptions around.
[AMDGPU] Restore gfx90a predicate on V_MUL_LEGACY_F32_e64_gfx90a. NFCI. (#232035)
#116288 removed both the AssemblerPredicate and SubtargetPredicate of
isGFX90APlus that applied to V_MUL_LEGACY_F32_e64_gfx90a, leaving it
with no predicates at all. Since it has a different encoding from the
GFX6-GFX10 versions of v_mul_legacy_f32_e64, this meant that the asm
matcher could have selected the wrong encoding on those targets. It
only selected the right one because V_MUL_LEGACY_F32_e64_gfx90a is
defined last.
Restore an AssemblerPredicate of isGFX90APlus on just this instruction,
and fix the stale closing comment on the let block that used to set it
for all of the gfx90a multiclasses.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply at anthropic.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply at anthropic.com>