dagger_ruby 0.11.0 → 0.11.1
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 +11 -0
- data/README.md +2 -2
- data/lib/dagger_ruby/progress_runner.rb +25 -4
- data/lib/dagger_ruby/version.rb +2 -2
- 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: 61be4b7342e4586fce56e0802de200a7231c85e8f2781ff94b7b8d987f265db3
|
|
4
|
+
data.tar.gz: d2cde21a762e08d63e345e6c1c1bd5890fc2e48e1b60f65eb8782c003f9ce2a6
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d10eff81b4a146a80bf6945e163318b78b59e0ed6cabe4052652af84795b6ae5ccce0c75f4d385258a7275160d9ea36d13ecddf706a1b3a33ad8a135a0ec489c
|
|
7
|
+
data.tar.gz: 999a2aa2e9e994425f77f8830fd621493d67f6ad6f37a0984b6c5065ab155b8cb4b82feb2aac968b9636e3996ee6c2f0c33ebdbee7e3ed26d9d442a5a81d64ea
|
data/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,17 @@ All notable changes are recorded here. The format follows
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.11.1] - 2026-10-02
|
|
10
|
+
|
|
11
|
+
### Changed
|
|
12
|
+
|
|
13
|
+
- Update development dependencies.
|
|
14
|
+
- Update the supported Dagger CLI and engine from 0.21.8 to 0.21.9.
|
|
15
|
+
|
|
16
|
+
### Fixed
|
|
17
|
+
|
|
18
|
+
- Show an engine startup status in pretty progress mode when Dagger takes more than one second to start.
|
|
19
|
+
|
|
9
20
|
## [0.11.0] - 2026-08-27
|
|
10
21
|
|
|
11
22
|
### Added
|
data/README.md
CHANGED
|
@@ -13,7 +13,7 @@ covers a practical subset of the API instead of Dagger module code generation.
|
|
|
13
13
|
## Requirements
|
|
14
14
|
|
|
15
15
|
- Ruby 3.2 or newer
|
|
16
|
-
- Dagger 0.21.
|
|
16
|
+
- Dagger 0.21.9
|
|
17
17
|
- Docker, Colima, or another container runtime supported by Dagger
|
|
18
18
|
|
|
19
19
|
## Installation
|
|
@@ -172,7 +172,7 @@ end
|
|
|
172
172
|
|
|
173
173
|
## Compatibility
|
|
174
174
|
|
|
175
|
-
The current branch is tested against maintained Ruby releases and Dagger 0.21.
|
|
175
|
+
The current branch is tested against maintained Ruby releases and Dagger 0.21.9. Dagger's
|
|
176
176
|
GraphQL schema can change between releases, so each supported engine update is
|
|
177
177
|
validated by the live integration suite before release. Earlier Ruby and Dagger
|
|
178
178
|
versions are not covered by the current compatibility contract.
|
|
@@ -6,6 +6,7 @@ module DaggerRuby
|
|
|
6
6
|
class ProgressRunner
|
|
7
7
|
DAGGER_EXEC_HEADING = /\A(?:\e\[[0-9;]*m)*▼ withExec\b/
|
|
8
8
|
INTERRUPT_TIMEOUT = 1
|
|
9
|
+
STARTUP_NOTICE_DELAY = 1
|
|
9
10
|
TERMINATION_TIMEOUT = 1
|
|
10
11
|
|
|
11
12
|
def initialize(out: $stderr, result_out: $stdout, environment: ENV)
|
|
@@ -35,6 +36,7 @@ module DaggerRuby
|
|
|
35
36
|
)
|
|
36
37
|
primary_writer.close
|
|
37
38
|
dagger_writer.close
|
|
39
|
+
startup_notice = report_slow_startup
|
|
38
40
|
_, status = Process.wait2(pid)
|
|
39
41
|
clean_process_group(pid)
|
|
40
42
|
server.close
|
|
@@ -56,6 +58,7 @@ module DaggerRuby
|
|
|
56
58
|
stop_thread(listener)
|
|
57
59
|
stop_thread(primary_reader)
|
|
58
60
|
stop_thread(output_reader)
|
|
61
|
+
stop_thread(startup_notice)
|
|
59
62
|
end
|
|
60
63
|
end
|
|
61
64
|
|
|
@@ -66,8 +69,7 @@ module DaggerRuby
|
|
|
66
69
|
socket = server.accept
|
|
67
70
|
renderer = Progress.new(out: @out, color: color?)
|
|
68
71
|
socket.each_line do |line|
|
|
69
|
-
renderer
|
|
70
|
-
progress_started!
|
|
72
|
+
render_progress(renderer, JSON.parse(line))
|
|
71
73
|
socket.puts("ok")
|
|
72
74
|
socket.flush
|
|
73
75
|
end
|
|
@@ -78,6 +80,18 @@ module DaggerRuby
|
|
|
78
80
|
end
|
|
79
81
|
end
|
|
80
82
|
|
|
83
|
+
def report_slow_startup
|
|
84
|
+
Thread.new do
|
|
85
|
+
sleep startup_notice_delay
|
|
86
|
+
@started_mutex.synchronize do
|
|
87
|
+
next if @started
|
|
88
|
+
|
|
89
|
+
@out.puts "Dagger is still starting. It may be downloading the engine image."
|
|
90
|
+
@out.flush
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
end
|
|
94
|
+
|
|
81
95
|
def relay_dagger_output(input)
|
|
82
96
|
Thread.new do
|
|
83
97
|
buffered = []
|
|
@@ -111,8 +125,11 @@ module DaggerRuby
|
|
|
111
125
|
end
|
|
112
126
|
end
|
|
113
127
|
|
|
114
|
-
def
|
|
115
|
-
@started_mutex.synchronize
|
|
128
|
+
def render_progress(renderer, event)
|
|
129
|
+
@started_mutex.synchronize do
|
|
130
|
+
@started = true
|
|
131
|
+
renderer.render(event)
|
|
132
|
+
end
|
|
116
133
|
end
|
|
117
134
|
|
|
118
135
|
def reset_progress_state!
|
|
@@ -208,6 +225,10 @@ module DaggerRuby
|
|
|
208
225
|
Process.clock_gettime(Process::CLOCK_MONOTONIC)
|
|
209
226
|
end
|
|
210
227
|
|
|
228
|
+
def startup_notice_delay
|
|
229
|
+
STARTUP_NOTICE_DELAY
|
|
230
|
+
end
|
|
231
|
+
|
|
211
232
|
def exit_status(status)
|
|
212
233
|
status.exitstatus || (128 + status.termsig)
|
|
213
234
|
end
|
data/lib/dagger_ruby/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: dagger_ruby
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.11.
|
|
4
|
+
version: 0.11.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- BoringCache
|
|
@@ -87,7 +87,7 @@ licenses:
|
|
|
87
87
|
metadata:
|
|
88
88
|
allowed_push_host: https://rubygems.org
|
|
89
89
|
homepage_uri: https://github.com/boringcache/dagger_ruby
|
|
90
|
-
source_code_uri: https://github.com/boringcache/dagger_ruby/tree/v0.11.
|
|
90
|
+
source_code_uri: https://github.com/boringcache/dagger_ruby/tree/v0.11.1
|
|
91
91
|
changelog_uri: https://github.com/boringcache/dagger_ruby/blob/main/CHANGELOG.md
|
|
92
92
|
bug_tracker_uri: https://github.com/boringcache/dagger_ruby/issues
|
|
93
93
|
documentation_uri: https://github.com/boringcache/dagger_ruby#readme
|