staging-nixos merge for 2026-05-15 (#520455)
This commit is contained in:
@@ -1495,6 +1495,17 @@ class NspawnMachine(BaseMachine):
|
||||
self.logger.info(f"kill NspawnMachine (pid {self.pid})")
|
||||
assert self.process is not None
|
||||
self.process.terminate()
|
||||
# Wait for the wrapper to finish its context-manager cleanups
|
||||
# (veth/bridge/netns teardown) before returning, so the driver's
|
||||
# subsequent vlan teardown does not race against it.
|
||||
try:
|
||||
self.process.wait(timeout=30)
|
||||
except subprocess.TimeoutExpired:
|
||||
self.logger.error(
|
||||
f"NspawnMachine {self.name} (pid {self.pid}) did not exit after SIGTERM; sending SIGKILL"
|
||||
)
|
||||
self.process.kill()
|
||||
self.process.wait()
|
||||
self.process = None
|
||||
|
||||
def is_up(self) -> bool:
|
||||
|
||||
+11
-2
@@ -101,8 +101,17 @@ def ensure_vlan_bridge(vlan: int) -> typing.Generator[str, None, None]:
|
||||
# releasing this vlan, grab an exclusive lock.
|
||||
with vlan_lock(vlan):
|
||||
if bridge_path.exists():
|
||||
child_intf_count = len(list((bridge_path / "brif").iterdir()))
|
||||
if child_intf_count == 0:
|
||||
# The VDE tap is owned by the test driver's vde_plug2tap
|
||||
# and shares its lifetime with the vlan, not with any
|
||||
# container. Don't count it when deciding whether the
|
||||
# bridge is still in use, otherwise the bridge would
|
||||
# never be deleted as long as vde_plug2tap is alive.
|
||||
child_intfs = [
|
||||
p.name
|
||||
for p in (bridge_path / "brif").iterdir()
|
||||
if p.name != tap_name
|
||||
]
|
||||
if not child_intfs:
|
||||
logger.info("deleting bridge %s", bridge_name)
|
||||
run_ip("link", "delete", bridge_name)
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "ruff";
|
||||
version = "0.15.12";
|
||||
version = "0.15.13";
|
||||
|
||||
__structuredAttrs = true;
|
||||
|
||||
@@ -24,12 +24,12 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
owner = "astral-sh";
|
||||
repo = "ruff";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-BbWOmr1/QsexDZzXPvkAstRBBcFmO0ZRrpkpXJpEXWk=";
|
||||
hash = "sha256-Sr5eD5aZP+1/wbRHQjampWbWea+rXshcwOfCr4JCvxA=";
|
||||
};
|
||||
|
||||
cargoBuildFlags = [ "--package=ruff" ];
|
||||
|
||||
cargoHash = "sha256-vv1D3bu0zLuLLxNiRESScs7fQKvx1CNfMKrseRzzxtw=";
|
||||
cargoHash = "sha256-3y7kqhAUXZ+Ui6quGEDSRXrh3ii9NJLoFWnGX/Mp0l4=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
||||
@@ -17,14 +17,15 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "ty";
|
||||
version = "0.0.35";
|
||||
version = "0.0.36";
|
||||
__structuredAttrs = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "astral-sh";
|
||||
repo = "ty";
|
||||
tag = finalAttrs.version;
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-ce3v/ZUlMNMGlikWSriGybScUrRharFswq5Z47dTtKY=";
|
||||
hash = "sha256-lUM2ewf8svvxyq8YNIw0fIseiA7kN7HViwBKDw6LDas=";
|
||||
};
|
||||
|
||||
# For Darwin platforms, remove the integration test for file notifications,
|
||||
@@ -38,7 +39,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
|
||||
cargoBuildFlags = [ "--package=ty" ];
|
||||
|
||||
cargoHash = "sha256-9/4+cK7BdJbXQKK7xC9MMfqARlivbuyYZ8j02srakxU=";
|
||||
cargoHash = "sha256-3y7kqhAUXZ+Ui6quGEDSRXrh3ii9NJLoFWnGX/Mp0l4=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
buildInputs = [ rust-jemalloc-sys ];
|
||||
@@ -67,6 +68,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
"--skip=python_environment::ty_environment_and_discovered_venv"
|
||||
"--skip=python_environment::ty_environment_is_only_environment"
|
||||
"--skip=python_environment::ty_environment_is_system_not_virtual"
|
||||
"--skip=python_environment::ty_system_environment_and_local_venv"
|
||||
|
||||
# flaky: unmatched assertion: revealed: Literal[1]
|
||||
"--skip=mdtest::generics/pep695/functions.md"
|
||||
|
||||
@@ -5,38 +5,38 @@
|
||||
"lts": false
|
||||
},
|
||||
"6.1": {
|
||||
"version": "6.1.172",
|
||||
"hash": "sha256:16dlfdzjcsc21m5sfbhamg8y3ay54rz8a0qqvqrmxq691mhjwrzi",
|
||||
"version": "6.1.173",
|
||||
"hash": "sha256:163dhycch5pw1vc87mm13djghwwyz182ljway5w19hz8zdn2rwy4",
|
||||
"lts": true
|
||||
},
|
||||
"5.15": {
|
||||
"version": "5.15.206",
|
||||
"hash": "sha256:07z6lla7xpnn4sn3l4zw3x7m8ih8w6h54k71qrxrf5zv9i7wxijz",
|
||||
"version": "5.15.207",
|
||||
"hash": "sha256:13hlwrfi7hp3lxg5v4kx5ykycb64iwc7xhg4rbjk0pvl0yipzssh",
|
||||
"lts": true
|
||||
},
|
||||
"5.10": {
|
||||
"version": "5.10.255",
|
||||
"hash": "sha256:19v6g2fq4nqv38irlcd9x14s6d398c56mxzpyc03q4xmpy3v6mir",
|
||||
"version": "5.10.256",
|
||||
"hash": "sha256:0pwf9nsr7clqm0bxvyrp3k79d5i6f9xqq58i31xvvra1xk4dmsgi",
|
||||
"lts": true
|
||||
},
|
||||
"6.6": {
|
||||
"version": "6.6.138",
|
||||
"hash": "sha256:03x8ald0sjzdb6kpzrw8adnc78r3mdxrx8mzbxbpwp35vdgnpl5d",
|
||||
"version": "6.6.139",
|
||||
"hash": "sha256:0h6pygw7fwmkl4p0w0jq64bzx0qv74bgwcn3qsaaqf5f3lvp3kd7",
|
||||
"lts": true
|
||||
},
|
||||
"6.12": {
|
||||
"version": "6.12.88",
|
||||
"hash": "sha256:1s2x66j46gxw17j8hh5iws0l00aivmphp3mn8vgwbn8sj44gacjb",
|
||||
"version": "6.12.89",
|
||||
"hash": "sha256:184r0wji02qw2n7ncx0jrf382yk20nnf79fvafim6a4x9a0gsnjq",
|
||||
"lts": true
|
||||
},
|
||||
"6.18": {
|
||||
"version": "6.18.30",
|
||||
"hash": "sha256:1m5kvzky4g2jc8b09np8can0lasg1lwjfgdj41s3ymxgqdp8icx8",
|
||||
"version": "6.18.31",
|
||||
"hash": "sha256:1djqya5jlgg0q0ra5mvqdfcsbf13vxffhgxyqvy9qh2x91nvi850",
|
||||
"lts": true
|
||||
},
|
||||
"7.0": {
|
||||
"version": "7.0.7",
|
||||
"hash": "sha256:1x2xnb7gpj0inxdc317zi71i0d98b7wq64s0yzk2vzxalf3gxqf8",
|
||||
"version": "7.0.8",
|
||||
"hash": "sha256:08nbdmgy4bbpmjzkh6n4v3shksvxpcxhy8biv5w7qkwz5jrayi8r",
|
||||
"lts": false
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user