Comparing changes
v0.3.0
→
v0.3.1
5 commits
6 files changed
Commits
d088f0c
stop the dots thread with a cooperative flag plus join instead of Thread#kill
2026-09-07 23:45:37
b8bc117
follow core's client->provider rename (agent.client, Config.build_client)
2026-09-07 21:50:53
Changed files (6)
bin
lib
elelem
builtins
bin/test
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+set -e
+[ -n "$DEBUG" ] && set -x
+
+cd "$(dirname "$0")/.."
+
+bundle exec rspec "$@"
lib/elelem/builtins/provider.rb
@@ -6,7 +6,7 @@ Elelem.configure do |config|
if name.nil? || name.empty?
agent.output.say " → available: #{Elelem::Config.names.join(", ")}"
else
- agent.client = Elelem::Config.build_client(name)
+ agent.provider = Elelem::Config.build_provider(name)
agent.output.say " → switched to #{name}"
end
end
lib/elelem/builtins/terminal.rb
@@ -38,7 +38,7 @@ module Elelem
def waiting
stop_dots
@dots_thread = Thread.new do
- loop do
+ until Thread.current[:stop]
@stream.print "."
@stream.flush
sleep 0.1
@@ -76,7 +76,8 @@ module Elelem
def stop_dots
return unless @dots_thread
- @dots_thread.kill
+ @dots_thread[:stop] = true
+ @dots_thread.join
@dots_thread = nil
write("\n")
@at_line_start = true
lib/elelem/builtins/version.rb
@@ -2,6 +2,6 @@
module Elelem
module Builtins
- VERSION = "0.3.0"
+ VERSION = "0.3.1"
end
end
elelem-builtins.gemspec
@@ -26,7 +26,7 @@ Gem::Specification.new do |spec|
end
spec.require_paths = ["lib"]
- spec.add_dependency "elelem", "~> 0.13"
+ spec.add_dependency "elelem", "~> 0.11"
spec.add_dependency "fileutils", "~> 1.8"
spec.add_dependency "json", "~> 3.0"
spec.add_dependency "open3", "~> 0.2"
Gemfile.lock
@@ -1,8 +1,8 @@
PATH
remote: .
specs:
- elelem-builtins (0.3.0)
- elelem (~> 0.13)
+ elelem-builtins (0.3.1)
+ elelem (~> 0.11)
fileutils (~> 1.8)
json (~> 3.0)
open3 (~> 0.2)
@@ -14,8 +14,9 @@ GEM
specs:
bigdecimal (4.1.2)
diff-lcs (1.6.2)
- elelem (0.13.0)
+ elelem (0.11.0)
erb (~> 6.0)
+ forwardable (~> 1.4)
io-console (~> 0.9)
json (~> 3.0)
json_schemer (~> 2.5)
@@ -28,6 +29,7 @@ GEM
uri (~> 1.0)
erb (6.0.7)
fileutils (1.8.0)
+ forwardable (1.4.0)
hana (1.3.7)
io-console (0.9.2)
irb (1.18.0)
@@ -96,10 +98,11 @@ CHECKSUMS
bigdecimal (4.1.2) sha256=53d217666027eab4280346fba98e7d5b66baaae1b9c3c1c0ffe89d48188a3fbd
bundler (4.0.20) sha256=7978a8ac648767f5e635bc522445b79e80a52b907a39a36c2d8085ed6bc762ae
diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
- elelem (0.13.0)
- elelem-builtins (0.3.0)
+ elelem (0.11.0) sha256=552cafb092320e3896b8e07572d322fe2b94f0f10d965bf7b993b74517a6f744
+ elelem-builtins (0.3.1)
erb (6.0.7) sha256=c5ca6dc25b0ef974a44dc8f59fe847577122483b1968a38dec305c60bf91ee92
fileutils (1.8.0) sha256=8c6b1df54e2540bdb2f39258f08af78853aa70bad52b4d394bbc6424593c6e02
+ forwardable (1.4.0) sha256=f1cd40cc9812937980e1c76f1aa053660990a7c9b6a98fc37d945468afcce838
hana (1.3.7) sha256=5425db42d651fea08859811c29d20446f16af196308162894db208cac5ce9b0d
io-console (0.9.2) sha256=efa74f891dd03c0939a931dfc6e74c2813d904763d456ea9762b0525e748db08
irb (1.18.0) sha256=de9454a0703a54704b9811a5ef31a60c86949fbf4013fcf244fabc7c775248e3