NAS-144937 / 28.0.0-BETA.1 / Fix flaky UPS alerts (#20076)
* Receiving any message that was not in `alert_mapping` (i.e. `NOCOMM`,
`FSD` and `SHUTDOWN`) removed all alerts with some probability
* Alert creation raced with deletion (this commit introduces long
overdue `oneshot_replace`)
* Fix test utils. The dummy driver only notices whole-second mtime
changes, so sometimes fake data was not published at all.
[BBot][AMDGPU] Port amdgpu-offload-build-only to in-tree (#236077)
This ports the AnnotatedBuilder from llvm-zorg to the ScriptedBuilder
that lives inside llvm-project. That is one more step to tie the AMDGPU
buildbot fleet to the versioning of llvm-project and making it easier to
reproduce and use locally.
Assisted-by: Claude
(Apologies for forgetting in the first version)
[libc][regex] Add alternation, grouping, and subexpression counting (#235943)
In POSIX Extended Regular Expressions (ERE), alternation '|' has the lowest precedence and separates alternative branches, while grouping '()' overrides precedence and delimits subexpressions. POSIX specifies that unmatched ')'
at top level is treated as an ordinary character, empty subexpressions '()' are valid, and unclosed '(' or empty alternation branches must be rejected. Uncontrolled recursive parsing of deeply nested parentheses also presents a stack exhaustion risk that standard libraries must defend against.
Implement alternation and parenthesized subexpressions in regex_parser via recursive descent with an explicit nesting cap of 128 levels (MAX_GROUP_DEPTH) returning REG_ESPACE upon overflow. Share a single ParsedAtomStack across recursive frames and fold both concatenation and alternation branches right-to-left so canonical right-associated AST construction remains O(1) per branch without per-frame buffers or orphaned intermediate nodes. Treat unmatched ')' at nesting depth 0 as a literal character per POSIX.1-2024
9.4.3, enforce REG_EPAREN on unclosed parentheses, reject empty alternation branches with REG_BADPAT, and populate preg->re_nsub with the count of parenthesized subexpressions upon successful compilation.
External compliance suites: Henry Spencer suite passes 168/456 (+42) boolean/error cases and 65/456 (+10) full-position cases; AT&T testregex passes 252/400 (+178) ERE boolean/error cases and 254/473 (+178) overall
boolean/error cases with 0 regressions.
Assisted-by: Automated tooling, human reviewed.
www/trafficserver: Update to 10.1.5
traffic_manager is gone since 10.0, the rc.d script now starts
traffic_server. Runtime, log and cache directories are compiled to the
/var paths the package creates; before, traffic_server looked for them
under ${PREFIX}/var and did not start.
Changelog: https://github.com/apache/trafficserver/blob/10.1.5/CHANGELOG-10.1.5
PR: 292748
Approved by: gaod at hychen.org (maintainer timeout)
Security: 3caa3b4b-d2ab-11f1-bae2-3497f65b111b
With hat: ports-secteam
Sponsored by: Netzkommune GmbH
(cherry picked from commit 438e566afbe9551213d43f47a78a245a5f36fe02)
www/trafficserver: Update to 10.1.5
traffic_manager is gone since 10.0, the rc.d script now starts
traffic_server. Runtime, log and cache directories are compiled to the
/var paths the package creates; before, traffic_server looked for them
under ${PREFIX}/var and did not start.
Changelog: https://github.com/apache/trafficserver/blob/10.1.5/CHANGELOG-10.1.5
PR: 292748
Approved by: gaod at hychen.org (maintainer timeout)
Security: 3caa3b4b-d2ab-11f1-bae2-3497f65b111b
With hat: ports-secteam
Sponsored by: Netzkommune GmbH
Reapply "[libc++] Fix incorrect size check when growing std::string" (#234545) (#234551)
There was a race condition with another commit adding another call of
`__get_amortized_growth_capacity`. This is fixed in this version.
Original commit message:
When trying to grow very large amounts the `max_size()` check could fail
due to
the result of adding the current capacity and the additional capacity
could wrap.
This reverts commit 64b40b84eb293e259cfe36add2ac34ab3dafc05c.
solve: prefer not to install packages offered by several repositories
The initial guess sets a negative phase on the variables that have no
local version, so that the solver does not install packages nobody asked
for. This was only done when the package had a single candidate, which
is always the case with a single repository but not when several
repositories provide the same package.
In that case no phase was set, picosat fell back to its Jeroslow-Wang
heuristic, which tends to pick the positive phase for variables that
appear in dependency clauses, and unrelated packages were installed.
Set the negative phase whenever no version is installed. Installed
packages and their upgrade candidates share the same uid, hence the same
slice, and keep their positive phase.
Fixes #2770
py-time-machine: updated to 3.6.0
3.6.0 (2026-10-25)
Drop Python 3.10 support.
Extend the Migration CLI to migrate freeze_time() class decorators on pytest-style test classes to the pytest.mark.time_machine() marker. Previously, such decorators were left unchanged and reported, since time_machine.travel() only supports unittest.TestCase subclasses as a class decorator, but they can be migrated to the marker instead.
Extend the Migration CLI to migrate freeze_time() calls that pass the destination with the time_to_freeze keyword argument. The argument is made positional, or renamed to destination if it follows another kept keyword argument.