running-process 4.0.3__tar.gz → 4.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {running_process-4.0.3 → running_process-4.2.0}/Cargo.lock +123 -53
- {running_process-4.0.3 → running_process-4.2.0}/Cargo.toml +8 -2
- {running_process-4.0.3 → running_process-4.2.0}/PKG-INFO +50 -1
- {running_process-4.0.3 → running_process-4.2.0}/README.md +49 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/Cargo.toml +61 -3
- running_process-4.2.0/crates/running-process/README.md +54 -0
- running_process-4.2.0/crates/running-process/build.rs +22 -0
- running_process-4.2.0/crates/running-process/examples/handoff_rollout_evidence.rs +707 -0
- running_process-4.2.0/crates/running-process/proto/broker_v1/broker_v1_admin.proto +45 -0
- running_process-4.2.0/crates/running-process/proto/broker_v1/broker_v1_envelope.proto +134 -0
- running_process-4.2.0/crates/running-process/proto/broker_v1/broker_v1_manifest.proto +220 -0
- running_process-4.2.0/crates/running-process/proto/broker_v1/broker_v1_service_def.proto +41 -0
- running_process-4.2.0/crates/running-process/proto/broker_v1/buf.yaml +24 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/proto/daemon.proto +6 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/bin/daemon.rs +5 -0
- running_process-4.2.0/crates/running-process/src/bin/running-process-broker-v1.rs +514 -0
- running_process-4.2.0/crates/running-process/src/bin/running-process-cleanup.rs +252 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/bin/runpm.rs +47 -2
- running_process-4.2.0/crates/running-process/src/broker/backend_handle.rs +438 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_lib/accept_handed_off.rs +190 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_lib/mod.rs +23 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_lib/wire.rs +133 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_lifecycle/identity.rs +263 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_lifecycle/mod.rs +9 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_lifecycle/probe.rs +614 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_lifecycle/probe_async.rs +94 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_lifecycle/verify_pid.rs +509 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_sdk/frame_client.rs +147 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_sdk/frame_client_async.rs +178 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_sdk/identity_file.rs +131 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_sdk/mod.rs +47 -0
- running_process-4.2.0/crates/running-process/src/broker/backend_sdk/mux.rs +384 -0
- running_process-4.2.0/crates/running-process/src/broker/capabilities.rs +25 -0
- running_process-4.2.0/crates/running-process/src/broker/client.rs +528 -0
- running_process-4.2.0/crates/running-process/src/broker/doctor.rs +912 -0
- running_process-4.2.0/crates/running-process/src/broker/fs_health.rs +128 -0
- running_process-4.2.0/crates/running-process/src/broker/host_identity.rs +287 -0
- running_process-4.2.0/crates/running-process/src/broker/lifecycle/crash_dump.rs +214 -0
- running_process-4.2.0/crates/running-process/src/broker/lifecycle/mod.rs +29 -0
- running_process-4.2.0/crates/running-process/src/broker/lifecycle/names.rs +452 -0
- running_process-4.2.0/crates/running-process/src/broker/lifecycle/privilege.rs +276 -0
- running_process-4.2.0/crates/running-process/src/broker/lifecycle/process_tree.rs +425 -0
- running_process-4.2.0/crates/running-process/src/broker/lifecycle/sid.rs +305 -0
- running_process-4.2.0/crates/running-process/src/broker/manifest.rs +440 -0
- running_process-4.2.0/crates/running-process/src/broker/mod.rs +47 -0
- running_process-4.2.0/crates/running-process/src/broker/protocol/frame_ext.rs +369 -0
- running_process-4.2.0/crates/running-process/src/broker/protocol/framing.rs +218 -0
- running_process-4.2.0/crates/running-process/src/broker/protocol/mod.rs +39 -0
- running_process-4.2.0/crates/running-process/src/broker/protocol/registry.rs +286 -0
- running_process-4.2.0/crates/running-process/src/broker/protocol/validate.rs +178 -0
- running_process-4.2.0/crates/running-process/src/broker/secure_dir.rs +195 -0
- running_process-4.2.0/crates/running-process/src/broker/server/admin.rs +816 -0
- running_process-4.2.0/crates/running-process/src/broker/server/backend_endpoint_allocator.rs +125 -0
- running_process-4.2.0/crates/running-process/src/broker/server/backend_launcher.rs +349 -0
- running_process-4.2.0/crates/running-process/src/broker/server/backend_registry.rs +189 -0
- running_process-4.2.0/crates/running-process/src/broker/server/broadcast.rs +319 -0
- running_process-4.2.0/crates/running-process/src/broker/server/connection.rs +639 -0
- running_process-4.2.0/crates/running-process/src/broker/server/control_socket.rs +332 -0
- running_process-4.2.0/crates/running-process/src/broker/server/fd_pressure.rs +250 -0
- running_process-4.2.0/crates/running-process/src/broker/server/handoff/ack.rs +278 -0
- running_process-4.2.0/crates/running-process/src/broker/server/handoff/fallback.rs +337 -0
- running_process-4.2.0/crates/running-process/src/broker/server/handoff/handoff_token.rs +278 -0
- running_process-4.2.0/crates/running-process/src/broker/server/handoff/latency.rs +166 -0
- running_process-4.2.0/crates/running-process/src/broker/server/handoff/mod.rs +65 -0
- running_process-4.2.0/crates/running-process/src/broker/server/handoff/orchestrate.rs +353 -0
- running_process-4.2.0/crates/running-process/src/broker/server/handoff/orchestrate_unix.rs +276 -0
- running_process-4.2.0/crates/running-process/src/broker/server/handoff/pending.rs +164 -0
- running_process-4.2.0/crates/running-process/src/broker/server/handoff/unix.rs +451 -0
- running_process-4.2.0/crates/running-process/src/broker/server/handoff/windows.rs +317 -0
- running_process-4.2.0/crates/running-process/src/broker/server/handoff/wire.rs +274 -0
- running_process-4.2.0/crates/running-process/src/broker/server/handoff_serve.rs +330 -0
- running_process-4.2.0/crates/running-process/src/broker/server/hello_handler.rs +459 -0
- running_process-4.2.0/crates/running-process/src/broker/server/hello_router.rs +458 -0
- running_process-4.2.0/crates/running-process/src/broker/server/idle_coord.rs +189 -0
- running_process-4.2.0/crates/running-process/src/broker/server/instance.rs +86 -0
- running_process-4.2.0/crates/running-process/src/broker/server/metrics.rs +99 -0
- running_process-4.2.0/crates/running-process/src/broker/server/mod.rs +120 -0
- running_process-4.2.0/crates/running-process/src/broker/server/perf_guard.rs +110 -0
- running_process-4.2.0/crates/running-process/src/broker/server/recovery.rs +169 -0
- running_process-4.2.0/crates/running-process/src/broker/server/serve.rs +373 -0
- running_process-4.2.0/crates/running-process/src/broker/server/service_def_loader.rs +253 -0
- running_process-4.2.0/crates/running-process/src/broker/server/spawn_coordinator.rs +635 -0
- running_process-4.2.0/crates/running-process/src/broker/server/spawn_wait.rs +130 -0
- running_process-4.2.0/crates/running-process/src/broker/server/trace_context.rs +37 -0
- running_process-4.2.0/crates/running-process/src/broker/server/version_allow_list.rs +103 -0
- running_process-4.2.0/crates/running-process/src/cleanup/instances.rs +72 -0
- running_process-4.2.0/crates/running-process/src/cleanup/list.rs +19 -0
- running_process-4.2.0/crates/running-process/src/cleanup/mod.rs +179 -0
- running_process-4.2.0/crates/running-process/src/cleanup/prune.rs +119 -0
- running_process-4.2.0/crates/running-process/src/cleanup/uninstall.rs +66 -0
- running_process-4.2.0/crates/running-process/src/cleanup/verify_artifacts.rs +821 -0
- running_process-4.2.0/crates/running-process/src/cleanup/verify_basic.rs +122 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/client/client.rs +23 -12
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/client/paths.rs +63 -35
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/client/pipe_session.rs +83 -30
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/client/pty_session.rs +23 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/client/telemetry.rs +34 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/console_detect.rs +7 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/containment.rs +2 -2
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/attach_stream.rs +2 -2
- running_process-4.2.0/crates/running-process/src/daemon/emergency_reserve.rs +326 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers/core.rs +1 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers/mod.rs +5 -2
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers/pipe_sessions_handlers.rs +8 -2
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers/process_tree.rs +1 -3
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers/spawn.rs +3 -4
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers/util.rs +1 -5
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers_tests.rs +6 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/mod.rs +1 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/pty_sessions.rs +3 -2
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/reaper.rs +6 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/server.rs +34 -9
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/lib.rs +109 -23
- running_process-4.2.0/crates/running-process/src/maintenance/mod.rs +9 -0
- running_process-4.2.0/crates/running-process/src/maintenance/release_handles.rs +229 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/pty/backend.rs +31 -9
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/pty/conpty_passthrough/child.rs +1 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/pty/conpty_passthrough/mod.rs +2 -2
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/pty/conpty_passthrough/proc_thread_attr.rs +3 -5
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/pty/conpty_passthrough/pseudoconsole.rs +2 -2
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/pty/mod.rs +80 -8
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/pty/native_pty_process.rs +80 -8
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/pty/terminal_input.rs +55 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/rust_debug.rs +6 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/spawn.rs +9 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/spawn_imp_windows.rs +19 -21
- running_process-4.2.0/crates/running-process/src/systemd_killmode.rs +342 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/terminal_graphics.rs +49 -0
- running_process-4.2.0/crates/running-process/src/test_support/conformance.rs +492 -0
- running_process-4.2.0/crates/running-process/src/test_support/mod.rs +20 -0
- running_process-4.2.0/crates/running-process/src/types.rs +128 -0
- running_process-4.2.0/crates/running-process/tests/broker/admin.rs +575 -0
- running_process-4.2.0/crates/running-process/tests/broker/backend_endpoint_allocator.rs +93 -0
- running_process-4.2.0/crates/running-process/tests/broker/backend_handle_boot_id.rs +13 -0
- running_process-4.2.0/crates/running-process/tests/broker/backend_handle_common.rs +183 -0
- running_process-4.2.0/crates/running-process/tests/broker/backend_handle_dead.rs +13 -0
- running_process-4.2.0/crates/running-process/tests/broker/backend_handle_probe.rs +82 -0
- running_process-4.2.0/crates/running-process/tests/broker/backend_handle_recycled.rs +13 -0
- running_process-4.2.0/crates/running-process/tests/broker/backend_registry.rs +69 -0
- running_process-4.2.0/crates/running-process/tests/broker/backend_sdk.rs +173 -0
- running_process-4.2.0/crates/running-process/tests/broker/backend_sdk_async.rs +178 -0
- running_process-4.2.0/crates/running-process/tests/broker/broadcast_release_handles.rs +138 -0
- running_process-4.2.0/crates/running-process/tests/broker/client.rs +308 -0
- running_process-4.2.0/crates/running-process/tests/broker/conformance_kit.rs +66 -0
- running_process-4.2.0/crates/running-process/tests/broker/connection.rs +661 -0
- running_process-4.2.0/crates/running-process/tests/broker/contrib_templates.rs +101 -0
- running_process-4.2.0/crates/running-process/tests/broker/docs_escape_hatch.rs +61 -0
- running_process-4.2.0/crates/running-process/tests/broker/docs_index.rs +227 -0
- running_process-4.2.0/crates/running-process/tests/broker/doctor.rs +411 -0
- running_process-4.2.0/crates/running-process/tests/broker/fd_pressure.rs +347 -0
- running_process-4.2.0/crates/running-process/tests/broker/framing.rs +178 -0
- running_process-4.2.0/crates/running-process/tests/broker/golden_bytes.rs +442 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_ack_deadline.rs +247 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_adopted_backend.rs +42 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_adoption.rs +385 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_backend_lib.rs +155 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_capability.rs +231 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_cross_os_acceptance.rs +56 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_end_to_end_acceptance.rs +203 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_fallback_perm_denied.rs +162 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_latency.rs +119 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_latency_e2e.rs +746 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_orchestrate.rs +475 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_serve_e2e.rs +610 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_serve_latency.rs +260 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_token_mismatch.rs +101 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_transport.rs +284 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_under_load.rs +105 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_unix_e2e_orchestrate.rs +180 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_unix_orchestrate.rs +468 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_windows_duplicate_handle.rs +465 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_windows_orchestrate.rs +475 -0
- running_process-4.2.0/crates/running-process/tests/broker/handoff_wire.rs +516 -0
- running_process-4.2.0/crates/running-process/tests/broker/hello_concurrent.rs +112 -0
- running_process-4.2.0/crates/running-process/tests/broker/hello_handler.rs +270 -0
- running_process-4.2.0/crates/running-process/tests/broker/hello_rate_limit.rs +135 -0
- running_process-4.2.0/crates/running-process/tests/broker/hello_router.rs +481 -0
- running_process-4.2.0/crates/running-process/tests/broker/hello_service_unknown.rs +74 -0
- running_process-4.2.0/crates/running-process/tests/broker/hello_skip.rs +93 -0
- running_process-4.2.0/crates/running-process/tests/broker/hello_version_blocked.rs +126 -0
- running_process-4.2.0/crates/running-process/tests/broker/idle_coord.rs +145 -0
- running_process-4.2.0/crates/running-process/tests/broker/instance.rs +90 -0
- running_process-4.2.0/crates/running-process/tests/broker/instance_isolation.rs +142 -0
- running_process-4.2.0/crates/running-process/tests/broker/lifecycle_event_size.rs +82 -0
- running_process-4.2.0/crates/running-process/tests/broker/main.rs +86 -0
- running_process-4.2.0/crates/running-process/tests/broker/manifest_atomic.rs +131 -0
- running_process-4.2.0/crates/running-process/tests/broker/manifest_boot_id.rs +50 -0
- running_process-4.2.0/crates/running-process/tests/broker/manifest_corruption.rs +41 -0
- running_process-4.2.0/crates/running-process/tests/broker/manifest_roundtrip.rs +101 -0
- running_process-4.2.0/crates/running-process/tests/broker/metrics_names_frozen.rs +62 -0
- running_process-4.2.0/crates/running-process/tests/broker/names.rs +243 -0
- running_process-4.2.0/crates/running-process/tests/broker/peer_creds_drop.rs +103 -0
- running_process-4.2.0/crates/running-process/tests/broker/perf_guard.rs +260 -0
- running_process-4.2.0/crates/running-process/tests/broker/process_tree_lifecycle.rs +61 -0
- running_process-4.2.0/crates/running-process/tests/broker/proto_field_numbers.rs +130 -0
- running_process-4.2.0/crates/running-process/tests/broker/proto_roundtrip.rs +272 -0
- running_process-4.2.0/crates/running-process/tests/broker/recovery_one_retry.rs +80 -0
- running_process-4.2.0/crates/running-process/tests/broker/serve.rs +453 -0
- running_process-4.2.0/crates/running-process/tests/broker/service_def_loader.rs +284 -0
- running_process-4.2.0/crates/running-process/tests/broker/servicedef_cli.rs +192 -0
- running_process-4.2.0/crates/running-process/tests/broker/socket_common.rs +116 -0
- running_process-4.2.0/crates/running-process/tests/broker/spawn_coordinator.rs +161 -0
- running_process-4.2.0/crates/running-process/tests/broker/spawn_wait.rs +96 -0
- running_process-4.2.0/crates/running-process/tests/broker/trace_propagation.rs +63 -0
- running_process-4.2.0/crates/running-process/tests/broker/verify_pid/linux.rs +23 -0
- running_process-4.2.0/crates/running-process/tests/broker/verify_pid/macos.rs +69 -0
- running_process-4.2.0/crates/running-process/tests/broker/verify_pid/mod.rs +6 -0
- running_process-4.2.0/crates/running-process/tests/broker/verify_pid/windows.rs +23 -0
- running_process-4.2.0/crates/running-process/tests/cleanup/cleanup_list.rs +26 -0
- running_process-4.2.0/crates/running-process/tests/cleanup/cleanup_prune_confirm.rs +41 -0
- running_process-4.2.0/crates/running-process/tests/cleanup/cleanup_prune_dryrun.rs +41 -0
- running_process-4.2.0/crates/running-process/tests/cleanup/cleanup_uninstall.rs +30 -0
- running_process-4.2.0/crates/running-process/tests/cleanup/cleanup_verify_artifacts.rs +186 -0
- running_process-4.2.0/crates/running-process/tests/cleanup/common.rs +48 -0
- running_process-4.2.0/crates/running-process/tests/cleanup/main.rs +8 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/containment_test.rs +8 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_autostart_test.rs +14 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_backlog_accumulation_test.rs +8 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_fast_ctrl_c_handoff_test.rs +8 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_integration/compiler_wrap_seam_test.rs +9 -20
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_integration/env_replace_test.rs +16 -28
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_integration/stdout_seam_test.rs +11 -15
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_pipe_session_attach_test.rs +11 -2
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_pty_session_attach_test.rs +14 -5
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_resize_rpc_test.rs +8 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_sessions_bulk_ops_test.rs +9 -4
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_sessions_log_test.rs +8 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_termination_outcome_test.rs +10 -7
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_tree_kill_test.rs +8 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_tui_repaint_test.rs +9 -5
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/fs_adversarial_test.rs +27 -10
- running_process-4.2.0/crates/running-process/tests/maintenance/main.rs +12 -0
- running_process-4.2.0/crates/running-process/tests/maintenance/release_handles_unix.rs +50 -0
- running_process-4.2.0/crates/running-process/tests/maintenance/release_handles_windows.rs +52 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/pty_master_public_api_test.rs +11 -9
- running_process-4.2.0/crates/running-process/tests/security/cross_user_release_handles.rs +83 -0
- running_process-4.2.0/crates/running-process/tests/security/cve_dbus_2014_3639.rs +102 -0
- running_process-4.2.0/crates/running-process/tests/security/cve_dbus_2023_34969.rs +206 -0
- running_process-4.2.0/crates/running-process/tests/security/cve_sccache_2023_1521.rs +131 -0
- running_process-4.2.0/crates/running-process/tests/security/deferred_runtime_surfaces.rs +5 -0
- running_process-4.2.0/crates/running-process/tests/security/dependency_surface.rs +196 -0
- running_process-4.2.0/crates/running-process/tests/security/fuzz_campaign_signoff.rs +329 -0
- running_process-4.2.0/crates/running-process/tests/security/main.rs +27 -0
- running_process-4.2.0/crates/running-process/tests/security/manifest_tamper_detection.rs +51 -0
- running_process-4.2.0/crates/running-process/tests/security/no_network_dependencies.rs +114 -0
- running_process-4.2.0/crates/running-process/tests/security/pipe_name_validation.rs +42 -0
- running_process-4.2.0/crates/running-process/tests/security/pipe_squatting.rs +154 -0
- running_process-4.2.0/crates/running-process/tests/security/security_audit_workflow.rs +104 -0
- running_process-4.2.0/crates/running-process/tests/security/security_fuzz_workflow.rs +378 -0
- running_process-4.2.0/crates/running-process/tests/security/service_name_validation.rs +31 -0
- running_process-4.2.0/crates/running-process/tests/security/unsafe_inventory.rs +371 -0
- running_process-4.2.0/crates/running-process/tests/security/wanted_version_shell_injection.rs +19 -0
- running_process-4.2.0/crates/running-process/tests/security/wanted_version_traversal.rs +28 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/spawn_test.rs +9 -2
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/Cargo.toml +5 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/debug_traces.rs +2 -2
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/helpers.rs +2 -4
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/idle_detector.rs +1 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/originator.rs +1 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/priority.rs +2 -4
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/process.rs +7 -17
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/process_tree.rs +1 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/pty_buffer.rs +1 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/pty_process.rs +8 -10
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/public_symbols.rs +4 -2
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/py_native_process.rs +1 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/signal_bool.rs +1 -1
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/terminal_input.rs +4 -4
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/tests/expect_match.rs +12 -12
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/tests/idle_detector.rs +45 -52
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/tests/parse_command.rs +12 -12
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/tests/process_tree.rs +2 -2
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/tests/pty_buffer.rs +26 -26
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/tests/pty_process.rs +70 -71
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/tests/registry.rs +12 -12
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/tests/terminal_input.rs +11 -17
- running_process-4.2.0/crates/test-watchdog/Cargo.toml +13 -0
- running_process-4.2.0/crates/test-watchdog/src/lib.rs +354 -0
- running_process-4.2.0/crates/test-watchdog/tests/hang_dump.rs +32 -0
- {running_process-4.0.3 → running_process-4.2.0}/pyproject.toml +1 -1
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/__init__.py +1 -1
- running_process-4.0.3/crates/running-process/build.rs +0 -9
- running_process-4.0.3/crates/running-process/src/types.rs +0 -89
- running_process-4.0.3/crates/test-watchdog/Cargo.toml +0 -6
- running_process-4.0.3/crates/test-watchdog/src/lib.rs +0 -153
- {running_process-4.0.3 → running_process-4.2.0}/LICENSE +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/bin/trampoline.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/client/mod.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/config.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers/kill.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers/maintenance.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers/pty_sessions_handlers.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers/registry_handlers.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers/services.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/handlers/telemetry.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/idle.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/pipe_attach_stream.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/pipe_sessions.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/platform/mod.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/platform/unix.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/platform/windows.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/registry.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/runtime_gc.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/shadow.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/daemon/telemetry.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/helpers.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/originator.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/pty/conpty_passthrough/pipes.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/pty/pty_posix.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/pty/pty_windows.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/public_symbols.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/spawn_imp_unix.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/tests.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/unix.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/src/windows.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_cross_process_pty_attach_test.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_integration/main.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_integration/more_tests.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_non_tty_attach_test.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_runpm_service_stubs.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/daemon_tee_ring_test.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/interactive_pty_session_test.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/originator_test.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/process_core_test.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/pty_conhost_job_test.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process/tests/terminal_graphics_capabilities_test.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/containment.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/daemon_client.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/lib.rs +2 -2
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/metrics.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/pid_tracking.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/registry.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/tests/control_churn.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/tests/mod.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/crates/running-process-py/src/tests/signal_bool.rs +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/assets/example.txt +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/cli.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/command_render.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/compat.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/console_encoding.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/daemon.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/dashboard.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/exit_status.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/expect.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/interrupt_handler.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/launch.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/line_iterator.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/output_formatter.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/priority.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/process_utils.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/processor_cli.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/__init__.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_command.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_console_io.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_errors.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_idle_helpers.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_idle_state.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_interactive.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_process_helpers.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_pseudo_terminal.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_pty_expect.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_pty_idle_waiter.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_pty_input_relay.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_pty_reader.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_pty_wait_for.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_terminal_strip.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_types.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/pty/_wait_input.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/running_process/__init__.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/running_process/_classmethod_api.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/running_process/_core.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/running_process/_helpers.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/running_process/_iter.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/running_process/_subprocess.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/running_process/_types.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/running_process/_wait_methods.py +0 -0
- {running_process-4.0.3 → running_process-4.2.0}/src/running_process/running_process_manager.py +0 -0
|
@@ -80,10 +80,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
80
80
|
checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c"
|
|
81
81
|
|
|
82
82
|
[[package]]
|
|
83
|
-
name = "
|
|
84
|
-
version = "
|
|
83
|
+
name = "arrayref"
|
|
84
|
+
version = "0.3.9"
|
|
85
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
86
|
+
checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb"
|
|
87
|
+
|
|
88
|
+
[[package]]
|
|
89
|
+
name = "arrayvec"
|
|
90
|
+
version = "0.7.6"
|
|
85
91
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
86
|
-
checksum = "
|
|
92
|
+
checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
|
|
87
93
|
|
|
88
94
|
[[package]]
|
|
89
95
|
name = "beef"
|
|
@@ -103,6 +109,29 @@ version = "2.11.1"
|
|
|
103
109
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
104
110
|
checksum = "c4512299f36f043ab09a583e57bceb5a5aab7a73db1805848e8fef3c9e8c78b3"
|
|
105
111
|
|
|
112
|
+
[[package]]
|
|
113
|
+
name = "blake3"
|
|
114
|
+
version = "1.8.5"
|
|
115
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
116
|
+
checksum = "0aa83c34e62843d924f905e0f5c866eb1dd6545fc4d719e803d9ba6030371fce"
|
|
117
|
+
dependencies = [
|
|
118
|
+
"arrayref",
|
|
119
|
+
"arrayvec",
|
|
120
|
+
"cc",
|
|
121
|
+
"cfg-if",
|
|
122
|
+
"constant_time_eq",
|
|
123
|
+
"cpufeatures 0.3.0",
|
|
124
|
+
]
|
|
125
|
+
|
|
126
|
+
[[package]]
|
|
127
|
+
name = "block-buffer"
|
|
128
|
+
version = "0.10.4"
|
|
129
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
130
|
+
checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
|
|
131
|
+
dependencies = [
|
|
132
|
+
"generic-array",
|
|
133
|
+
]
|
|
134
|
+
|
|
106
135
|
[[package]]
|
|
107
136
|
name = "bytes"
|
|
108
137
|
version = "1.11.1"
|
|
@@ -177,12 +206,36 @@ version = "1.0.5"
|
|
|
177
206
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
178
207
|
checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570"
|
|
179
208
|
|
|
209
|
+
[[package]]
|
|
210
|
+
name = "constant_time_eq"
|
|
211
|
+
version = "0.4.2"
|
|
212
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
213
|
+
checksum = "3d52eff69cd5e647efe296129160853a42795992097e8af39800e1060caeea9b"
|
|
214
|
+
|
|
180
215
|
[[package]]
|
|
181
216
|
name = "core-foundation-sys"
|
|
182
217
|
version = "0.8.7"
|
|
183
218
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
184
219
|
checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
|
|
185
220
|
|
|
221
|
+
[[package]]
|
|
222
|
+
name = "cpufeatures"
|
|
223
|
+
version = "0.2.17"
|
|
224
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
225
|
+
checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280"
|
|
226
|
+
dependencies = [
|
|
227
|
+
"libc",
|
|
228
|
+
]
|
|
229
|
+
|
|
230
|
+
[[package]]
|
|
231
|
+
name = "cpufeatures"
|
|
232
|
+
version = "0.3.0"
|
|
233
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
234
|
+
checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201"
|
|
235
|
+
dependencies = [
|
|
236
|
+
"libc",
|
|
237
|
+
]
|
|
238
|
+
|
|
186
239
|
[[package]]
|
|
187
240
|
name = "crossbeam-deque"
|
|
188
241
|
version = "0.8.6"
|
|
@@ -208,6 +261,26 @@ version = "0.8.21"
|
|
|
208
261
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
209
262
|
checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
|
|
210
263
|
|
|
264
|
+
[[package]]
|
|
265
|
+
name = "crypto-common"
|
|
266
|
+
version = "0.1.7"
|
|
267
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
268
|
+
checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a"
|
|
269
|
+
dependencies = [
|
|
270
|
+
"generic-array",
|
|
271
|
+
"typenum",
|
|
272
|
+
]
|
|
273
|
+
|
|
274
|
+
[[package]]
|
|
275
|
+
name = "digest"
|
|
276
|
+
version = "0.10.7"
|
|
277
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
278
|
+
checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
|
|
279
|
+
dependencies = [
|
|
280
|
+
"block-buffer",
|
|
281
|
+
"crypto-common",
|
|
282
|
+
]
|
|
283
|
+
|
|
211
284
|
[[package]]
|
|
212
285
|
name = "dirs"
|
|
213
286
|
version = "6.0.0"
|
|
@@ -359,6 +432,16 @@ dependencies = [
|
|
|
359
432
|
"slab",
|
|
360
433
|
]
|
|
361
434
|
|
|
435
|
+
[[package]]
|
|
436
|
+
name = "generic-array"
|
|
437
|
+
version = "0.14.7"
|
|
438
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
439
|
+
checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
|
|
440
|
+
dependencies = [
|
|
441
|
+
"typenum",
|
|
442
|
+
"version_check",
|
|
443
|
+
]
|
|
444
|
+
|
|
362
445
|
[[package]]
|
|
363
446
|
name = "getrandom"
|
|
364
447
|
version = "0.2.17"
|
|
@@ -440,15 +523,6 @@ dependencies = [
|
|
|
440
523
|
"serde_core",
|
|
441
524
|
]
|
|
442
525
|
|
|
443
|
-
[[package]]
|
|
444
|
-
name = "indoc"
|
|
445
|
-
version = "2.0.7"
|
|
446
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
447
|
-
checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706"
|
|
448
|
-
dependencies = [
|
|
449
|
-
"rustversion",
|
|
450
|
-
]
|
|
451
|
-
|
|
452
526
|
[[package]]
|
|
453
527
|
name = "interprocess"
|
|
454
528
|
version = "2.4.2"
|
|
@@ -593,15 +667,6 @@ version = "2.8.0"
|
|
|
593
667
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
594
668
|
checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79"
|
|
595
669
|
|
|
596
|
-
[[package]]
|
|
597
|
-
name = "memoffset"
|
|
598
|
-
version = "0.9.1"
|
|
599
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
600
|
-
checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
|
|
601
|
-
dependencies = [
|
|
602
|
-
"autocfg",
|
|
603
|
-
]
|
|
604
|
-
|
|
605
670
|
[[package]]
|
|
606
671
|
name = "miette"
|
|
607
672
|
version = "7.6.0"
|
|
@@ -873,37 +938,32 @@ dependencies = [
|
|
|
873
938
|
|
|
874
939
|
[[package]]
|
|
875
940
|
name = "pyo3"
|
|
876
|
-
version = "0.
|
|
941
|
+
version = "0.29.0"
|
|
877
942
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
878
|
-
checksum = "
|
|
943
|
+
checksum = "cd274650b21d4bfc26a0a47587962c1edb425f69287324355cd040c3ea66071c"
|
|
879
944
|
dependencies = [
|
|
880
|
-
"cfg-if",
|
|
881
|
-
"indoc",
|
|
882
945
|
"libc",
|
|
883
|
-
"memoffset",
|
|
884
946
|
"once_cell",
|
|
885
947
|
"portable-atomic",
|
|
886
948
|
"pyo3-build-config",
|
|
887
949
|
"pyo3-ffi",
|
|
888
950
|
"pyo3-macros",
|
|
889
|
-
"unindent",
|
|
890
951
|
]
|
|
891
952
|
|
|
892
953
|
[[package]]
|
|
893
954
|
name = "pyo3-build-config"
|
|
894
|
-
version = "0.
|
|
955
|
+
version = "0.29.0"
|
|
895
956
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
896
|
-
checksum = "
|
|
957
|
+
checksum = "c5e2a7d2f0d013342f295c048ad19237add5154a55b1c5a254c0ec93d4109078"
|
|
897
958
|
dependencies = [
|
|
898
|
-
"once_cell",
|
|
899
959
|
"target-lexicon",
|
|
900
960
|
]
|
|
901
961
|
|
|
902
962
|
[[package]]
|
|
903
963
|
name = "pyo3-ffi"
|
|
904
|
-
version = "0.
|
|
964
|
+
version = "0.29.0"
|
|
905
965
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
906
|
-
checksum = "
|
|
966
|
+
checksum = "ca85c467da1bbc8d866eea5deff9cf29ea5f7785054a17da36e65bda9c05845b"
|
|
907
967
|
dependencies = [
|
|
908
968
|
"libc",
|
|
909
969
|
"pyo3-build-config",
|
|
@@ -911,9 +971,9 @@ dependencies = [
|
|
|
911
971
|
|
|
912
972
|
[[package]]
|
|
913
973
|
name = "pyo3-macros"
|
|
914
|
-
version = "0.
|
|
974
|
+
version = "0.29.0"
|
|
915
975
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
916
|
-
checksum = "
|
|
976
|
+
checksum = "9ac53762fd065daa3194dd09337a38bd793a188100fd1a9304c4ab312d901771"
|
|
917
977
|
dependencies = [
|
|
918
978
|
"proc-macro2",
|
|
919
979
|
"pyo3-macros-backend",
|
|
@@ -923,13 +983,12 @@ dependencies = [
|
|
|
923
983
|
|
|
924
984
|
[[package]]
|
|
925
985
|
name = "pyo3-macros-backend"
|
|
926
|
-
version = "0.
|
|
986
|
+
version = "0.29.0"
|
|
927
987
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
928
|
-
checksum = "
|
|
988
|
+
checksum = "4ca3a1557399783172dc5bf39cfca835157732532cba56b71d2292161e53b362"
|
|
929
989
|
dependencies = [
|
|
930
990
|
"heck",
|
|
931
991
|
"proc-macro2",
|
|
932
|
-
"pyo3-build-config",
|
|
933
992
|
"quote",
|
|
934
993
|
"syn",
|
|
935
994
|
]
|
|
@@ -1026,13 +1085,15 @@ checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a"
|
|
|
1026
1085
|
|
|
1027
1086
|
[[package]]
|
|
1028
1087
|
name = "running-process"
|
|
1029
|
-
version = "4.0
|
|
1088
|
+
version = "4.2.0"
|
|
1030
1089
|
dependencies = [
|
|
1031
1090
|
"anyhow",
|
|
1091
|
+
"blake3",
|
|
1032
1092
|
"bytes",
|
|
1033
1093
|
"clap",
|
|
1034
1094
|
"dirs",
|
|
1035
1095
|
"futures-util",
|
|
1096
|
+
"getrandom 0.4.2",
|
|
1036
1097
|
"interprocess",
|
|
1037
1098
|
"libc",
|
|
1038
1099
|
"portable-pty",
|
|
@@ -1043,6 +1104,7 @@ dependencies = [
|
|
|
1043
1104
|
"rusqlite",
|
|
1044
1105
|
"serde",
|
|
1045
1106
|
"serde_json",
|
|
1107
|
+
"sha2",
|
|
1046
1108
|
"sysinfo",
|
|
1047
1109
|
"tempfile",
|
|
1048
1110
|
"test-watchdog",
|
|
@@ -1058,7 +1120,7 @@ dependencies = [
|
|
|
1058
1120
|
|
|
1059
1121
|
[[package]]
|
|
1060
1122
|
name = "running-process-py"
|
|
1061
|
-
version = "4.0
|
|
1123
|
+
version = "4.2.0"
|
|
1062
1124
|
dependencies = [
|
|
1063
1125
|
"interprocess",
|
|
1064
1126
|
"libc",
|
|
@@ -1106,12 +1168,6 @@ dependencies = [
|
|
|
1106
1168
|
"windows-sys 0.61.2",
|
|
1107
1169
|
]
|
|
1108
1170
|
|
|
1109
|
-
[[package]]
|
|
1110
|
-
name = "rustversion"
|
|
1111
|
-
version = "1.0.22"
|
|
1112
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1113
|
-
checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d"
|
|
1114
|
-
|
|
1115
1171
|
[[package]]
|
|
1116
1172
|
name = "scopeguard"
|
|
1117
1173
|
version = "1.2.0"
|
|
@@ -1187,6 +1243,17 @@ dependencies = [
|
|
|
1187
1243
|
"windows-sys 0.61.2",
|
|
1188
1244
|
]
|
|
1189
1245
|
|
|
1246
|
+
[[package]]
|
|
1247
|
+
name = "sha2"
|
|
1248
|
+
version = "0.10.9"
|
|
1249
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1250
|
+
checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283"
|
|
1251
|
+
dependencies = [
|
|
1252
|
+
"cfg-if",
|
|
1253
|
+
"cpufeatures 0.2.17",
|
|
1254
|
+
"digest",
|
|
1255
|
+
]
|
|
1256
|
+
|
|
1190
1257
|
[[package]]
|
|
1191
1258
|
name = "sharded-slab"
|
|
1192
1259
|
version = "0.1.7"
|
|
@@ -1284,9 +1351,9 @@ dependencies = [
|
|
|
1284
1351
|
|
|
1285
1352
|
[[package]]
|
|
1286
1353
|
name = "target-lexicon"
|
|
1287
|
-
version = "0.
|
|
1354
|
+
version = "0.13.5"
|
|
1288
1355
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1289
|
-
checksum = "
|
|
1356
|
+
checksum = "adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca"
|
|
1290
1357
|
|
|
1291
1358
|
[[package]]
|
|
1292
1359
|
name = "tempfile"
|
|
@@ -1304,6 +1371,9 @@ dependencies = [
|
|
|
1304
1371
|
[[package]]
|
|
1305
1372
|
name = "test-watchdog"
|
|
1306
1373
|
version = "0.0.0"
|
|
1374
|
+
dependencies = [
|
|
1375
|
+
"libc",
|
|
1376
|
+
]
|
|
1307
1377
|
|
|
1308
1378
|
[[package]]
|
|
1309
1379
|
name = "testbins"
|
|
@@ -1505,6 +1575,12 @@ dependencies = [
|
|
|
1505
1575
|
"tracing-log",
|
|
1506
1576
|
]
|
|
1507
1577
|
|
|
1578
|
+
[[package]]
|
|
1579
|
+
name = "typenum"
|
|
1580
|
+
version = "1.20.1"
|
|
1581
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1582
|
+
checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20"
|
|
1583
|
+
|
|
1508
1584
|
[[package]]
|
|
1509
1585
|
name = "unicode-ident"
|
|
1510
1586
|
version = "1.0.24"
|
|
@@ -1523,12 +1599,6 @@ version = "0.2.6"
|
|
|
1523
1599
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1524
1600
|
checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853"
|
|
1525
1601
|
|
|
1526
|
-
[[package]]
|
|
1527
|
-
name = "unindent"
|
|
1528
|
-
version = "0.2.4"
|
|
1529
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1530
|
-
checksum = "7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3"
|
|
1531
|
-
|
|
1532
1602
|
[[package]]
|
|
1533
1603
|
name = "utf8parse"
|
|
1534
1604
|
version = "0.2.2"
|
|
@@ -3,7 +3,7 @@ resolver = "2"
|
|
|
3
3
|
members = ["crates/running-process", "crates/running-process-py", "crates/test-watchdog"]
|
|
4
4
|
|
|
5
5
|
[workspace.package]
|
|
6
|
-
version = "4.0
|
|
6
|
+
version = "4.2.0"
|
|
7
7
|
edition = "2021"
|
|
8
8
|
rust-version = "1.85"
|
|
9
9
|
license = "BSD-3-Clause"
|
|
@@ -11,10 +11,16 @@ repository = "https://github.com/zackees/running-process"
|
|
|
11
11
|
homepage = "https://github.com/zackees/running-process"
|
|
12
12
|
|
|
13
13
|
[workspace.dependencies]
|
|
14
|
-
pyo3 = { version = "0.
|
|
14
|
+
pyo3 = { version = "0.29", features = ["abi3-py310"] }
|
|
15
15
|
rusqlite = { version = "0.32", features = ["bundled"] }
|
|
16
16
|
thiserror = "2"
|
|
17
17
|
|
|
18
|
+
# Phase 0 of #228: workspace-wide lints. `disallowed_methods` is wired
|
|
19
|
+
# through `clippy.toml` at the workspace root so every member crate
|
|
20
|
+
# refuses bincode serialization (broker wire stays prost-only).
|
|
21
|
+
[workspace.lints.clippy]
|
|
22
|
+
disallowed_methods = "deny"
|
|
23
|
+
|
|
18
24
|
[profile.release]
|
|
19
25
|
debug = true
|
|
20
26
|
strip = "none"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: running_process
|
|
3
|
-
Version: 4.0
|
|
3
|
+
Version: 4.2.0
|
|
4
4
|
License-File: LICENSE
|
|
5
5
|
Summary: A Rust-backed subprocess wrapper with split stdout/stderr streaming
|
|
6
6
|
Home-Page: https://github.com/zackees/running-process
|
|
@@ -18,6 +18,18 @@ Project-URL: Repository, https://github.com/zackees/running-process
|
|
|
18
18
|
|
|
19
19
|
`running-process` is what you wished python's subprocess was. Blazing fast, highly concurrent, huge feature list, dead process tracking, pty support. Built in Rust with a thin python api.
|
|
20
20
|
|
|
21
|
+
## v1 Broker Docs
|
|
22
|
+
|
|
23
|
+
The v1 broker work is documented as a stable spec alongside the implementation:
|
|
24
|
+
|
|
25
|
+
- Core spec: [architecture](docs/v1-architecture-overview.md), [frozen commitments](docs/v1-frozen-commitments.md), [pipe naming](docs/v1-pipe-naming.md), [platform behavior](docs/v1-platform-behavior.md), [security model](docs/v1-security-model.md)
|
|
26
|
+
- Schemas: [wire envelope](docs/v1-wire-envelope.md), [cache manifest](docs/v1-cache-manifest.md), [service definition](docs/v1-service-definition.md), [lifecycle events](docs/v1-lifecycle-events.md)
|
|
27
|
+
- Consumer adoption: [dashboard](docs/v1-consumer-adoption-dashboard.md), [clud](docs/consumer-adoption-clud.md), [zccache](docs/consumer-adoption-zccache.md), [soldr](docs/consumer-adoption-soldr.md), [fbuild](docs/consumer-adoption-fbuild.md)
|
|
28
|
+
- Operations: [broker architecture](docs/v1-broker-architecture.md), [admin verbs](docs/v1-admin-verbs.md), [backend lifecycle](docs/v1-backend-lifecycle.md), [handoff optimization](docs/v1-handoff-optimization.md), [observability](docs/v1-observability.md)
|
|
29
|
+
- Rollout: [policy](docs/v1-rollout-policy.md), [escape hatch](docs/v1-escape-hatch.md), [troubleshooting](docs/v1-troubleshooting.md)
|
|
30
|
+
- Examples: [minimal consumer](examples/minimal-consumer/), [release-handles CLI](examples/release-handles-cli/), [custom isolation](examples/custom-isolation/)
|
|
31
|
+
- Contrib service templates: [systemd](contrib/systemd/running-process-broker-v1.service), [launchd](contrib/launchd/com.zackees.running-process-broker-v1.plist), [Windows service installer](contrib/windows-service/install.ps1)
|
|
32
|
+
|
|
21
33
|
| Platform | Build | Lint | Unit Test | Integration Test |
|
|
22
34
|
|----------|-------|------|-----------|------------------|
|
|
23
35
|
| Linux x86 | [](https://github.com/zackees/running-process/actions/workflows/linux-x86-build.yml) | [](https://github.com/zackees/running-process/actions/workflows/linux-x86-lint.yml) | [](https://github.com/zackees/running-process/actions/workflows/linux-x86-unit-test.yml) | [](https://github.com/zackees/running-process/actions/workflows/linux-x86-integration-test.yml) |
|
|
@@ -75,6 +87,43 @@ running-process --find-leaks -- python worker.py
|
|
|
75
87
|
`--find-leaks` tags the wrapped process tree with a unique originator marker and reports any
|
|
76
88
|
descendants still alive after the direct child exits.
|
|
77
89
|
|
|
90
|
+
## Cleanup Manifests
|
|
91
|
+
|
|
92
|
+
The `running-process-cleanup` binary reads v1 broker `CacheManifest` files
|
|
93
|
+
without requiring a broker or daemon to be running. Manifests are written in two
|
|
94
|
+
places:
|
|
95
|
+
|
|
96
|
+
- each daemon cache root: `.running-process-manifest.pb`
|
|
97
|
+
- the central registry: `$XDG_DATA_HOME/running-process/manifests/` on Linux,
|
|
98
|
+
`~/Library/Application Support/running-process/manifests/` on macOS, and
|
|
99
|
+
`%APPDATA%\running-process\manifests\` on Windows
|
|
100
|
+
|
|
101
|
+
Destructive commands are dry-run by default. Add `--confirm` to delete selected
|
|
102
|
+
roots:
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
running-process-cleanup list --json
|
|
106
|
+
running-process-cleanup verify --json
|
|
107
|
+
running-process-cleanup prune --dormant-after 30d
|
|
108
|
+
running-process-cleanup prune --dormant-after 30d --confirm
|
|
109
|
+
running-process-cleanup prune --keep-current --keep-last 2
|
|
110
|
+
running-process-cleanup uninstall zccache --keep-config
|
|
111
|
+
running-process-cleanup instances --json
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
For GitHub Actions cache restores, run verification after `actions/cache@v4`
|
|
115
|
+
restores daemon state. Manifests from a prior runner boot are reported as stale:
|
|
116
|
+
|
|
117
|
+
```yaml
|
|
118
|
+
- uses: actions/cache@v4
|
|
119
|
+
with:
|
|
120
|
+
path: ~/.local/share/running-process
|
|
121
|
+
key: running-process-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}
|
|
122
|
+
|
|
123
|
+
- name: Verify restored running-process manifests
|
|
124
|
+
run: running-process-cleanup verify --json
|
|
125
|
+
```
|
|
126
|
+
|
|
78
127
|
## Pipe-backed API
|
|
79
128
|
|
|
80
129
|
```python
|
|
@@ -4,6 +4,18 @@
|
|
|
4
4
|
|
|
5
5
|
`running-process` is what you wished python's subprocess was. Blazing fast, highly concurrent, huge feature list, dead process tracking, pty support. Built in Rust with a thin python api.
|
|
6
6
|
|
|
7
|
+
## v1 Broker Docs
|
|
8
|
+
|
|
9
|
+
The v1 broker work is documented as a stable spec alongside the implementation:
|
|
10
|
+
|
|
11
|
+
- Core spec: [architecture](docs/v1-architecture-overview.md), [frozen commitments](docs/v1-frozen-commitments.md), [pipe naming](docs/v1-pipe-naming.md), [platform behavior](docs/v1-platform-behavior.md), [security model](docs/v1-security-model.md)
|
|
12
|
+
- Schemas: [wire envelope](docs/v1-wire-envelope.md), [cache manifest](docs/v1-cache-manifest.md), [service definition](docs/v1-service-definition.md), [lifecycle events](docs/v1-lifecycle-events.md)
|
|
13
|
+
- Consumer adoption: [dashboard](docs/v1-consumer-adoption-dashboard.md), [clud](docs/consumer-adoption-clud.md), [zccache](docs/consumer-adoption-zccache.md), [soldr](docs/consumer-adoption-soldr.md), [fbuild](docs/consumer-adoption-fbuild.md)
|
|
14
|
+
- Operations: [broker architecture](docs/v1-broker-architecture.md), [admin verbs](docs/v1-admin-verbs.md), [backend lifecycle](docs/v1-backend-lifecycle.md), [handoff optimization](docs/v1-handoff-optimization.md), [observability](docs/v1-observability.md)
|
|
15
|
+
- Rollout: [policy](docs/v1-rollout-policy.md), [escape hatch](docs/v1-escape-hatch.md), [troubleshooting](docs/v1-troubleshooting.md)
|
|
16
|
+
- Examples: [minimal consumer](examples/minimal-consumer/), [release-handles CLI](examples/release-handles-cli/), [custom isolation](examples/custom-isolation/)
|
|
17
|
+
- Contrib service templates: [systemd](contrib/systemd/running-process-broker-v1.service), [launchd](contrib/launchd/com.zackees.running-process-broker-v1.plist), [Windows service installer](contrib/windows-service/install.ps1)
|
|
18
|
+
|
|
7
19
|
| Platform | Build | Lint | Unit Test | Integration Test |
|
|
8
20
|
|----------|-------|------|-----------|------------------|
|
|
9
21
|
| Linux x86 | [](https://github.com/zackees/running-process/actions/workflows/linux-x86-build.yml) | [](https://github.com/zackees/running-process/actions/workflows/linux-x86-lint.yml) | [](https://github.com/zackees/running-process/actions/workflows/linux-x86-unit-test.yml) | [](https://github.com/zackees/running-process/actions/workflows/linux-x86-integration-test.yml) |
|
|
@@ -61,6 +73,43 @@ running-process --find-leaks -- python worker.py
|
|
|
61
73
|
`--find-leaks` tags the wrapped process tree with a unique originator marker and reports any
|
|
62
74
|
descendants still alive after the direct child exits.
|
|
63
75
|
|
|
76
|
+
## Cleanup Manifests
|
|
77
|
+
|
|
78
|
+
The `running-process-cleanup` binary reads v1 broker `CacheManifest` files
|
|
79
|
+
without requiring a broker or daemon to be running. Manifests are written in two
|
|
80
|
+
places:
|
|
81
|
+
|
|
82
|
+
- each daemon cache root: `.running-process-manifest.pb`
|
|
83
|
+
- the central registry: `$XDG_DATA_HOME/running-process/manifests/` on Linux,
|
|
84
|
+
`~/Library/Application Support/running-process/manifests/` on macOS, and
|
|
85
|
+
`%APPDATA%\running-process\manifests\` on Windows
|
|
86
|
+
|
|
87
|
+
Destructive commands are dry-run by default. Add `--confirm` to delete selected
|
|
88
|
+
roots:
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
running-process-cleanup list --json
|
|
92
|
+
running-process-cleanup verify --json
|
|
93
|
+
running-process-cleanup prune --dormant-after 30d
|
|
94
|
+
running-process-cleanup prune --dormant-after 30d --confirm
|
|
95
|
+
running-process-cleanup prune --keep-current --keep-last 2
|
|
96
|
+
running-process-cleanup uninstall zccache --keep-config
|
|
97
|
+
running-process-cleanup instances --json
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
For GitHub Actions cache restores, run verification after `actions/cache@v4`
|
|
101
|
+
restores daemon state. Manifests from a prior runner boot are reported as stale:
|
|
102
|
+
|
|
103
|
+
```yaml
|
|
104
|
+
- uses: actions/cache@v4
|
|
105
|
+
with:
|
|
106
|
+
path: ~/.local/share/running-process
|
|
107
|
+
key: running-process-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}
|
|
108
|
+
|
|
109
|
+
- name: Verify restored running-process manifests
|
|
110
|
+
run: running-process-cleanup verify --json
|
|
111
|
+
```
|
|
112
|
+
|
|
64
113
|
## Pipe-backed API
|
|
65
114
|
|
|
66
115
|
```python
|
|
@@ -7,6 +7,12 @@ license.workspace = true
|
|
|
7
7
|
repository.workspace = true
|
|
8
8
|
homepage.workspace = true
|
|
9
9
|
description = "Subprocess and PTY runtime for the running-process project"
|
|
10
|
+
readme = "README.md"
|
|
11
|
+
|
|
12
|
+
[lints]
|
|
13
|
+
# Phase 0 of #228: pick up the workspace-wide `disallowed_methods =
|
|
14
|
+
# "deny"` so bincode serialization is rejected at compile time.
|
|
15
|
+
workspace = true
|
|
10
16
|
|
|
11
17
|
[[bin]]
|
|
12
18
|
# Wave 4 of #165: PM2-style supervisor CLI absorbed from
|
|
@@ -31,6 +37,24 @@ required-features = ["daemon"]
|
|
|
31
37
|
name = "daemon-trampoline"
|
|
32
38
|
path = "src/bin/trampoline.rs"
|
|
33
39
|
|
|
40
|
+
[[bin]]
|
|
41
|
+
name = "running-process-cleanup"
|
|
42
|
+
path = "src/bin/running-process-cleanup.rs"
|
|
43
|
+
required-features = ["client"]
|
|
44
|
+
|
|
45
|
+
[[bin]]
|
|
46
|
+
name = "running-process-broker-v1"
|
|
47
|
+
path = "src/bin/running-process-broker-v1.rs"
|
|
48
|
+
required-features = ["daemon"]
|
|
49
|
+
|
|
50
|
+
[[example]]
|
|
51
|
+
# Dev-only evidence harness for #387: deploys the real broker binary plus
|
|
52
|
+
# a separate backend process and measures the opt-in handle-passing
|
|
53
|
+
# handoff against the reconnect fallback. Never shipped; see
|
|
54
|
+
# docs/v1-handoff-optimization.md for the recorded numbers.
|
|
55
|
+
name = "handoff_rollout_evidence"
|
|
56
|
+
required-features = ["client"]
|
|
57
|
+
|
|
34
58
|
[features]
|
|
35
59
|
# Final feature scheme per #165:
|
|
36
60
|
# * `core` — always-available API (spawn / pty / containment).
|
|
@@ -44,22 +68,40 @@ path = "src/bin/trampoline.rs"
|
|
|
44
68
|
default = ["client"]
|
|
45
69
|
core = []
|
|
46
70
|
telemetry = []
|
|
47
|
-
client = ["dep:prost", "dep:prost-types", "dep:interprocess", "dep:dirs", "dep:anyhow", "dep:clap"]
|
|
71
|
+
client = ["dep:prost", "dep:prost-types", "dep:interprocess", "dep:dirs", "dep:anyhow", "dep:clap", "dep:blake3", "dep:sha2", "dep:getrandom"]
|
|
72
|
+
# Opt-in async client surface for tokio daemons (#414). Adds async
|
|
73
|
+
# variants of `BackendHandle::probe_with_service` and `FrameClient`
|
|
74
|
+
# on top of the existing blocking surface. The synchronous probe and
|
|
75
|
+
# frame wire is the wire-of-record; the async layer wraps each
|
|
76
|
+
# round-trip in `tokio::task::spawn_blocking` so the caller's task
|
|
77
|
+
# yields the runtime worker thread without us duplicating the v1
|
|
78
|
+
# wire against `AsyncRead`/`AsyncWrite`. That keeps the tokio
|
|
79
|
+
# footprint minimal — only `rt` + `time` are required.
|
|
80
|
+
client-async = [
|
|
81
|
+
"client",
|
|
82
|
+
"dep:tokio",
|
|
83
|
+
]
|
|
48
84
|
daemon = [
|
|
49
85
|
"client",
|
|
86
|
+
"client-async",
|
|
50
87
|
"interprocess/tokio",
|
|
51
88
|
"dep:tokio", "dep:tokio-util", "dep:bytes", "dep:futures-util",
|
|
89
|
+
"tokio/full",
|
|
52
90
|
"dep:tracing", "dep:tracing-subscriber",
|
|
53
91
|
"dep:rusqlite", "dep:toml",
|
|
54
92
|
]
|
|
55
93
|
originator-scan = [] # used by running-process-py for cwd-tagging
|
|
94
|
+
# #415: consumer-consumable conformance test kit
|
|
95
|
+
# (`crate::test_support::conformance`). Off by default; consumers opt in
|
|
96
|
+
# from their `dev-dependencies`.
|
|
97
|
+
test-support = ["client"]
|
|
56
98
|
|
|
57
99
|
[dependencies]
|
|
58
100
|
libc = "0.2"
|
|
59
101
|
portable-pty = "0.9"
|
|
60
102
|
sysinfo = "0.30"
|
|
61
103
|
thiserror = { workspace = true }
|
|
62
|
-
winapi = { version = "0.3", features = ["errhandlingapi", "fileapi", "handleapi", "ioapiset", "jobapi2", "namedpipeapi", "processthreadsapi", "winnt", "minwindef", "windef", "winuser", "consoleapi", "processenv", "synchapi", "winbase", "wincon", "tlhelp32"] }
|
|
104
|
+
winapi = { version = "0.3", features = ["errhandlingapi", "fileapi", "handleapi", "ioapiset", "jobapi2", "namedpipeapi", "processthreadsapi", "winnt", "minwindef", "windef", "winuser", "consoleapi", "processenv", "synchapi", "winbase", "wincon", "tlhelp32", "securitybaseapi", "winerror", "sysinfoapi"] }
|
|
63
105
|
# Wave 4 of #165: client-feature deps. All optional so the always-on
|
|
64
106
|
# `core` API stays a minimal-dep leaf.
|
|
65
107
|
prost = { version = "0.14", optional = true }
|
|
@@ -69,8 +111,19 @@ dirs = { version = "6", optional = true }
|
|
|
69
111
|
# Used by the `runpm` PM2-style supervisor CLI (src/bin/runpm.rs).
|
|
70
112
|
anyhow = { version = "1", optional = true }
|
|
71
113
|
clap = { version = "4", features = ["derive"], optional = true }
|
|
114
|
+
# Phase 1 of #228 (issue #230): broker user-SID hashing in
|
|
115
|
+
# `src/broker/lifecycle/sid.rs`. blake3 is small (no_std-capable,
|
|
116
|
+
# no transitive deps beyond `arrayref`/`arrayvec` and `cc`-built SIMD).
|
|
117
|
+
blake3 = { version = "1", optional = true }
|
|
118
|
+
sha2 = { version = "0.10", optional = true }
|
|
119
|
+
getrandom = { version = "0.4", optional = true }
|
|
72
120
|
# Wave 5 of #165: daemon-feature deps. All optional.
|
|
73
|
-
tokio
|
|
121
|
+
# tokio: `client-async` (#414) only needs the `rt` (spawn_blocking)
|
|
122
|
+
# and `time` (`tokio::time::timeout`) features; the `daemon` feature
|
|
123
|
+
# layers `tokio/full` on top below. Cargo unifies feature sets, so
|
|
124
|
+
# any consumer enabling both ends up with the daemon footprint
|
|
125
|
+
# exactly as before.
|
|
126
|
+
tokio = { version = "1", default-features = false, features = ["rt", "time"], optional = true }
|
|
74
127
|
tokio-util = { version = "0.7", features = ["codec"], optional = true }
|
|
75
128
|
bytes = { version = "1", optional = true }
|
|
76
129
|
futures-util = { version = "0.3", features = ["sink"], optional = true }
|
|
@@ -94,6 +147,9 @@ prost-build = "0.14"
|
|
|
94
147
|
protox = "0.9"
|
|
95
148
|
|
|
96
149
|
[dev-dependencies]
|
|
150
|
+
# Platform-default service-definition dir tests (#386) assert against
|
|
151
|
+
# the same `dirs` resolution the loader uses, not hardcoded strings.
|
|
152
|
+
dirs = "6"
|
|
97
153
|
serde_json = "1"
|
|
98
154
|
tempfile = "3"
|
|
99
155
|
test-watchdog = { path = "../test-watchdog" }
|
|
@@ -108,11 +164,13 @@ test-watchdog = { path = "../test-watchdog" }
|
|
|
108
164
|
windows-sys = { version = "0.59", features = [
|
|
109
165
|
"Win32_Foundation",
|
|
110
166
|
"Win32_Security",
|
|
167
|
+
"Win32_Security_Authorization",
|
|
111
168
|
"Win32_Storage_FileSystem",
|
|
112
169
|
"Win32_System_Console",
|
|
113
170
|
"Win32_System_IO",
|
|
114
171
|
"Win32_System_Memory",
|
|
115
172
|
"Win32_System_Pipes",
|
|
173
|
+
"Win32_System_Registry",
|
|
116
174
|
"Win32_System_Threading",
|
|
117
175
|
"Win32_System_Diagnostics_Debug",
|
|
118
176
|
] }
|