esphome 0.6.0 → 1.0.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1a5451a87964a40d165ef4ca77b495e96c1cefb3a5868199713291adf524fe41
4
- data.tar.gz: 3019f79e68e524def14f2070a2df85e33029d06ade92449a7bab773d06da345d
3
+ metadata.gz: 7f988a8ad345124d038ccdf3cbeaf8dcd3850050ab74a5454935a0844f5f2b93
4
+ data.tar.gz: 9be90845d2dc91e267a68fb60fe7edf9d2c6fad2fdfa06b012ebaf8843564809
5
5
  SHA512:
6
- metadata.gz: c6fb19598d6575c3466a9f6aadd6dc4c25b36bfe516a8749bdc258d9a994b0ce2fba96356f933675babe033432923105edadfdc72243373aacaf5a7e798820c1
7
- data.tar.gz: 40fe976911ca7cf97c93f482b47038e951916457faca363c73a53573594928f51938a83626753d5bd7e1e2ffe76ec037a67460428240e08c1911abcc66571063
6
+ metadata.gz: 414bbb1d09e2de01e795b2fe00eaa3d9794f0810b2974506400dff217b56069e7f0f2a3ca62c39fcb600ece247969356db2be99a948edbf2a5134ca5f446562a
7
+ data.tar.gz: 1494b52803b1bb5033922226206d246ef05abd88219e646115bb37abf5b001cb155bfc62b2b6e50e28126dd5d41f44353c2c9a6397a51c51c2bbeb680cb19596
data/exe/esphome-monitor CHANGED
@@ -3,13 +3,20 @@
3
3
 
4
4
  require "optparse"
5
5
 
6
+ require "esphome/cli/completion"
6
7
  require "esphome/cli/monitor"
7
8
 
9
+ if ENV["COMP_LINE"]
10
+ ESPHome::Cli::Completion.run
11
+ exit
12
+ end
13
+
8
14
  actions = true
9
15
  log_level = :info
10
16
  connection_log_level = :warn
11
17
  device_log_level = :debug
12
18
  dump_config = false
19
+ port = 6053
13
20
  opts = OptionParser.new do |opts|
14
21
  opts.banner = <<~TEXT
15
22
  Usage: esphome-monitor ([<uri>] <device_name> | <address> <encryption_key>)
@@ -18,6 +25,9 @@ opts = OptionParser.new do |opts|
18
25
  If URI is omitted, it defaults to http://localhost:6052/
19
26
  TEXT
20
27
 
28
+ opts.on("--port=VALUE", Integer, "Device port to connect to (default 6053)") do |value|
29
+ port = value
30
+ end
21
31
  opts.on("--[no-]actions", "Subscribe to Home Assistant actions (default on)") do |v|
22
32
  actions = v
23
33
  end
@@ -41,7 +51,7 @@ end
41
51
  opts.parse!
42
52
 
43
53
  if ARGV.size == 1
44
- uri = "http://localhost:6052/"
54
+ uri = ESPHome::Dashboard::DEFAULT_URI
45
55
  device_name = ARGV[0]
46
56
  elsif ARGV.size == 2 && ARGV[0].include?(":")
47
57
  uri, device_name = ARGV
@@ -71,6 +81,6 @@ if uri
71
81
  end
72
82
  end
73
83
 
74
- device = ESPHome::Device.new(address, encryption_key)
84
+ device = ESPHome::Device.new(address, encryption_key, port:)
75
85
 
76
86
  ESPHome::Cli::Monitor.run(device, connection_log_level:, device_log_level:, log_level:, actions:, dump_config:)
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: esphome
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cody Cutrer
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2026-04-07 00:00:00.000000000 Z
10
+ date: 2026-07-20 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: curses
@@ -97,12 +97,10 @@ email:
97
97
  - cody@cutrer.us
98
98
  executables:
99
99
  - esphome-monitor
100
- - esphome-update-all
101
100
  extensions: []
102
101
  extra_rdoc_files: []
103
102
  files:
104
103
  - exe/esphome-monitor
105
- - exe/esphome-update-all
106
104
  homepage: https://github.com/ccutrer/esphome-ruby
107
105
  licenses:
108
106
  - MIT
@@ -116,7 +114,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
116
114
  requirements:
117
115
  - - ">="
118
116
  - !ruby/object:Gem::Version
119
- version: 3.1.0
117
+ version: '3.3'
120
118
  required_rubygems_version: !ruby/object:Gem::Requirement
121
119
  requirements:
122
120
  - - ">="
@@ -1,66 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- require "optparse"
5
-
6
- uri = "http://localhost:6052/"
7
- opts = OptionParser.new do |opts|
8
- opts.banner = <<~TEXT
9
- Usage: esphome-update-all [<uri>] <device_name...>
10
-
11
- Example: esphome-update-all
12
- If URI is omitted, it defaults to http://localhost:6052/
13
- TEXT
14
-
15
- opts.on("-h", "--help", "Show this help message") do
16
- puts opts
17
- exit
18
- end
19
- end
20
- opts.parse!
21
-
22
- uri = ARGV.shift if ARGV.first&.include?(":")
23
-
24
- require "esphome/dashboard"
25
-
26
- dashboard = ESPHome::Dashboard.new(uri)
27
-
28
- devices = dashboard.devices
29
-
30
- unless ARGV.empty?
31
- all_devices = devices
32
- devices = []
33
- ARGV.each do |device_name|
34
- devices.concat(all_devices.select { |d| File.fnmatch(device_name, d["name"]) })
35
- end
36
- devices.uniq!
37
-
38
- puts "Updating #{devices.map { |d| d["name"] }.join(", ")}..."
39
- end
40
-
41
- if devices.empty?
42
- warn "No matching devices found."
43
- exit 1
44
- end
45
-
46
- results = dashboard.update_all(devices) do |line|
47
- $stdout.print line
48
- end
49
-
50
- puts "\n\n"
51
- successes, failures = results.partition { |_, v| v }
52
-
53
- {
54
- Successful: successes,
55
- Failed: failures
56
- }.each do |status, group|
57
- next if group.empty?
58
-
59
- puts "#{status} Updates:\n"
60
-
61
- group.each do |device, _| # rubocop:disable Style/HashEachMethods
62
- puts " - #{device["name"]}"
63
- end
64
- end
65
-
66
- exit(failures.empty? ? 0 : 1)