ace-runtime 0.4.2 → 0.4.3
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/lib/ace/runtime/molecules/process_identity.rb +13 -0
- data/lib/ace/runtime/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b850f90b43b4e4f3efc7cf669efc1ba1265a86e55217fcaea7ce8fc88f11c051
|
|
4
|
+
data.tar.gz: bf5d6f4761b8fa046afaccbc12c578d59e99ce33dd50f62633cabe58587d9487
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1327f62167bcbd2e899c09937f2f1709334a8ace22c559d302a409ead612d965e60eba4932e7af0c43a0a18cdcc6010cf563f670300061da2ddb6c2625751f87
|
|
7
|
+
data.tar.gz: 4c573d5268feab9aee82e71d0fefdc29ffeb8b015f9586dc81e80c26f44609156df8f30406081595dfbb48fa7f2c3d09c0a4cf9c724337597fd6be0aa45295e3
|
data/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.4.3] - 2026-11-15
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
|
|
13
|
+
- Expose positive OS-session process inventory for safe executor retirement; failed probes remain unknown.
|
|
14
|
+
|
|
9
15
|
## [0.4.2] - 2026-11-10
|
|
10
16
|
|
|
11
17
|
### Fixed
|
|
@@ -43,6 +43,19 @@ module Ace
|
|
|
43
43
|
nil
|
|
44
44
|
end
|
|
45
45
|
|
|
46
|
+
# An empty list is positive evidence that this OS session has ended.
|
|
47
|
+
# Failed/malformed process inventories remain unknown, never empty.
|
|
48
|
+
def session_members(session_id)
|
|
49
|
+
return nil unless session_id.is_a?(Integer) && session_id.positive?
|
|
50
|
+
output, status = @executor.capture2("ps", "-e", "-o", "pid=,sid=", stdin_data: "")
|
|
51
|
+
return nil unless status.success? && !output.strip.empty?
|
|
52
|
+
rows = output.lines.map { |line| line.strip.match(/\A([0-9]+)\s+([0-9]+)\z/) }
|
|
53
|
+
return nil if rows.any?(&:nil?)
|
|
54
|
+
rows.filter_map { |row| row[1].to_i if row[2].to_i == session_id }
|
|
55
|
+
rescue SystemCallError, IOError
|
|
56
|
+
nil
|
|
57
|
+
end
|
|
58
|
+
|
|
46
59
|
def parent_pid(pid)
|
|
47
60
|
output, status = @executor.capture2("ps", "-p", pid.to_s, "-o", "ppid=", stdin_data: "")
|
|
48
61
|
value = output.strip
|
data/lib/ace/runtime/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ace-runtime
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.4.
|
|
4
|
+
version: 0.4.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Michal Czyz
|
|
8
8
|
bindir: exe
|
|
9
9
|
cert_chain: []
|
|
10
|
-
date: 2026-11-
|
|
10
|
+
date: 2026-11-15 00:00:00.000000000 Z
|
|
11
11
|
dependencies:
|
|
12
12
|
- !ruby/object:Gem::Dependency
|
|
13
13
|
name: fiddle
|