adafruit-io 2.0.0 → 3.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 +5 -5
- data/README.md +3 -12
- data/adafruit-io.gemspec +6 -6
- data/lib/adafruit/io/arguments.rb +1 -1
- data/lib/adafruit/io/client.rb +1 -4
- data/lib/adafruit/io/request_handler.rb +4 -4
- data/lib/adafruit/io/version.rb +1 -1
- metadata +16 -20
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 0d3a797bff9e66a705fc31f4572f9158dde61f9253e5e3bf501b8d59adb6df5c
|
|
4
|
+
data.tar.gz: 40ad6e3b91d36b1b977584224c7c62448aa924aa78a8dc46beda1d58368d98f4
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 56efae94520d3ba34ab840877dfa9e16c2a6fd852bba785adec2ab24ed5c0243ab7d2aefcef4f473caf218affe11cb1f1daf519cfb34407e3a1fb8248efb827c
|
|
7
|
+
data.tar.gz: a81845c9affa024284f07203d2c6dce47d442a531b216dcb139028c1b7e6ebf1918c75a2b89e813d58d95d17c8efa6a6934c6b6f803acc6afa7eed63fdb250c3
|
data/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-

|
|
2
2
|
|
|
3
3
|
# adafruit-io
|
|
4
4
|
|
|
@@ -14,10 +14,11 @@ Older releases are available at these links:
|
|
|
14
14
|
|
|
15
15
|
This is a near complete rewrite and strip-down of the library intended to support V2 of the Adafruit IO API with less code, maintenance, and stress.
|
|
16
16
|
|
|
17
|
-
Why rewrite? This lets us the replace the existing, custom ActiveRecord-based interface with a flat, stateless API client returning plain hashes based on the JSON returned from API.Instead of writing a bunch of Ruby to make it feel like we're in a Rails app, we're just providing hooks into the API and a thin wrapper around Faraday.
|
|
17
|
+
Why rewrite? This lets us the replace the existing, custom ActiveRecord-based interface with a flat, stateless API client returning plain hashes based on the JSON returned from API. Instead of writing a bunch of Ruby to make it feel like we're in a Rails app, we're just providing hooks into the API and a thin wrapper around Faraday.
|
|
18
18
|
|
|
19
19
|
The API is not very complex, code that uses it shouldn't be either.
|
|
20
20
|
|
|
21
|
+
|
|
21
22
|
## Roadmap
|
|
22
23
|
|
|
23
24
|
It is our goal to eventually support all API V2 methods, but that will happen in stages.
|
|
@@ -32,22 +33,12 @@ It is our goal to eventually support all API V2 methods, but that will happen in
|
|
|
32
33
|
- [x] Activities `2.0.0.beta.5`
|
|
33
34
|
- [x] Permissions `2.0.0.beta.5`
|
|
34
35
|
- [x] Triggers `2.0.0.beta.6`
|
|
35
|
-
- [x] Feeds `2.0.0`
|
|
36
|
-
- [x] Data `2.0.0`
|
|
37
|
-
- [x] Tokens `2.0.0`
|
|
38
|
-
- [x] Blocks `2.0.0`
|
|
39
|
-
- [x] Dashboards `2.0.0`
|
|
40
|
-
- [x] Groups `2.0.0`
|
|
41
|
-
- [x] Activities `2.0.0`
|
|
42
|
-
- [x] Permissions `2.0.0`
|
|
43
|
-
- [x] Triggers `2.0.0`
|
|
44
36
|
|
|
45
37
|
Still needing complete tests:
|
|
46
38
|
|
|
47
39
|
- [ ] MQTT
|
|
48
40
|
|
|
49
41
|
|
|
50
|
-
|
|
51
42
|
## Installation
|
|
52
43
|
|
|
53
44
|
Add this line to your application's Gemfile:
|
data/adafruit-io.gemspec
CHANGED
|
@@ -20,11 +20,11 @@ Gem::Specification.new do |spec|
|
|
|
20
20
|
spec.require_paths = ["lib"]
|
|
21
21
|
spec.licenses = ['MIT']
|
|
22
22
|
|
|
23
|
-
spec.add_dependency "faraday", "~>
|
|
24
|
-
spec.add_dependency "
|
|
25
|
-
spec.add_dependency "activesupport", "~>
|
|
26
|
-
spec.add_dependency "mqtt", "~> 0.
|
|
23
|
+
spec.add_dependency "faraday", "~> 2.14"
|
|
24
|
+
spec.add_dependency "faraday-multipart", "~> 1.0"
|
|
25
|
+
spec.add_dependency "activesupport", "~> 8.0"
|
|
26
|
+
spec.add_dependency "mqtt", "~> 0.7"
|
|
27
27
|
|
|
28
|
-
spec.add_development_dependency "bundler", "~>
|
|
29
|
-
spec.add_development_dependency "rake", "~>
|
|
28
|
+
spec.add_development_dependency "bundler", "~> 2.7"
|
|
29
|
+
spec.add_development_dependency "rake", "~> 13.2"
|
|
30
30
|
end
|
|
@@ -46,7 +46,7 @@ module Adafruit
|
|
|
46
46
|
record_or_id = arguments.shift
|
|
47
47
|
return nil if record_or_id.nil?
|
|
48
48
|
|
|
49
|
-
if record_or_id.is_a?(String) || record_or_id.is_a?(
|
|
49
|
+
if record_or_id.is_a?(String) || record_or_id.is_a?(Integer)
|
|
50
50
|
record_or_id
|
|
51
51
|
elsif record_or_id.is_a?(Hash) && (record_or_id.has_key?('id') || record_or_id.has_key?(:id))
|
|
52
52
|
record_or_id['id'] || record_or_id[:id]
|
data/lib/adafruit/io/client.rb
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
require 'json'
|
|
2
2
|
|
|
3
3
|
require 'faraday'
|
|
4
|
-
require 'faraday_middleware'
|
|
5
|
-
require 'faraday_middleware/response/mashify'
|
|
6
4
|
|
|
7
5
|
require 'adafruit/io/arguments'
|
|
8
6
|
require 'adafruit/io/configurable'
|
|
@@ -78,8 +76,7 @@ module Adafruit
|
|
|
78
76
|
c.response :logger
|
|
79
77
|
end
|
|
80
78
|
|
|
81
|
-
c.
|
|
82
|
-
c.adapter Faraday.default_adapter
|
|
79
|
+
c.response :json
|
|
83
80
|
end
|
|
84
81
|
end
|
|
85
82
|
|
|
@@ -70,7 +70,7 @@ module Adafruit
|
|
|
70
70
|
|
|
71
71
|
def handle_get(url, options = {})
|
|
72
72
|
response = conn.get do |req|
|
|
73
|
-
req.url
|
|
73
|
+
req.url url
|
|
74
74
|
options.each do |k,v|
|
|
75
75
|
req.params[k] = v
|
|
76
76
|
end
|
|
@@ -87,7 +87,7 @@ module Adafruit
|
|
|
87
87
|
|
|
88
88
|
def handle_post(url, data, options = {})
|
|
89
89
|
response = conn.post do |req|
|
|
90
|
-
req.url
|
|
90
|
+
req.url url
|
|
91
91
|
req.body = data
|
|
92
92
|
end
|
|
93
93
|
|
|
@@ -100,7 +100,7 @@ module Adafruit
|
|
|
100
100
|
|
|
101
101
|
def handle_put(url, data, options = {})
|
|
102
102
|
response = conn.put do |req|
|
|
103
|
-
req.url
|
|
103
|
+
req.url url
|
|
104
104
|
req.body = data
|
|
105
105
|
end
|
|
106
106
|
|
|
@@ -113,7 +113,7 @@ module Adafruit
|
|
|
113
113
|
|
|
114
114
|
def handle_delete(url, options = {})
|
|
115
115
|
response = conn.delete do |req|
|
|
116
|
-
req.url
|
|
116
|
+
req.url url
|
|
117
117
|
end
|
|
118
118
|
|
|
119
119
|
if response.status < 200 || response.status > 299
|
data/lib/adafruit/io/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: adafruit-io
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 3.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Justin Cooper
|
|
8
8
|
- Adam Bachman
|
|
9
|
-
autorequire:
|
|
10
9
|
bindir: bin
|
|
11
10
|
cert_chain: []
|
|
12
|
-
date:
|
|
11
|
+
date: 2025-11-10 00:00:00.000000000 Z
|
|
13
12
|
dependencies:
|
|
14
13
|
- !ruby/object:Gem::Dependency
|
|
15
14
|
name: faraday
|
|
@@ -17,84 +16,84 @@ dependencies:
|
|
|
17
16
|
requirements:
|
|
18
17
|
- - "~>"
|
|
19
18
|
- !ruby/object:Gem::Version
|
|
20
|
-
version: '
|
|
19
|
+
version: '2.14'
|
|
21
20
|
type: :runtime
|
|
22
21
|
prerelease: false
|
|
23
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
24
23
|
requirements:
|
|
25
24
|
- - "~>"
|
|
26
25
|
- !ruby/object:Gem::Version
|
|
27
|
-
version: '
|
|
26
|
+
version: '2.14'
|
|
28
27
|
- !ruby/object:Gem::Dependency
|
|
29
|
-
name:
|
|
28
|
+
name: faraday-multipart
|
|
30
29
|
requirement: !ruby/object:Gem::Requirement
|
|
31
30
|
requirements:
|
|
32
31
|
- - "~>"
|
|
33
32
|
- !ruby/object:Gem::Version
|
|
34
|
-
version: '0
|
|
33
|
+
version: '1.0'
|
|
35
34
|
type: :runtime
|
|
36
35
|
prerelease: false
|
|
37
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
38
37
|
requirements:
|
|
39
38
|
- - "~>"
|
|
40
39
|
- !ruby/object:Gem::Version
|
|
41
|
-
version: '0
|
|
40
|
+
version: '1.0'
|
|
42
41
|
- !ruby/object:Gem::Dependency
|
|
43
42
|
name: activesupport
|
|
44
43
|
requirement: !ruby/object:Gem::Requirement
|
|
45
44
|
requirements:
|
|
46
45
|
- - "~>"
|
|
47
46
|
- !ruby/object:Gem::Version
|
|
48
|
-
version: '
|
|
47
|
+
version: '8.0'
|
|
49
48
|
type: :runtime
|
|
50
49
|
prerelease: false
|
|
51
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
52
51
|
requirements:
|
|
53
52
|
- - "~>"
|
|
54
53
|
- !ruby/object:Gem::Version
|
|
55
|
-
version: '
|
|
54
|
+
version: '8.0'
|
|
56
55
|
- !ruby/object:Gem::Dependency
|
|
57
56
|
name: mqtt
|
|
58
57
|
requirement: !ruby/object:Gem::Requirement
|
|
59
58
|
requirements:
|
|
60
59
|
- - "~>"
|
|
61
60
|
- !ruby/object:Gem::Version
|
|
62
|
-
version: '0.
|
|
61
|
+
version: '0.7'
|
|
63
62
|
type: :runtime
|
|
64
63
|
prerelease: false
|
|
65
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
66
65
|
requirements:
|
|
67
66
|
- - "~>"
|
|
68
67
|
- !ruby/object:Gem::Version
|
|
69
|
-
version: '0.
|
|
68
|
+
version: '0.7'
|
|
70
69
|
- !ruby/object:Gem::Dependency
|
|
71
70
|
name: bundler
|
|
72
71
|
requirement: !ruby/object:Gem::Requirement
|
|
73
72
|
requirements:
|
|
74
73
|
- - "~>"
|
|
75
74
|
- !ruby/object:Gem::Version
|
|
76
|
-
version: '
|
|
75
|
+
version: '2.7'
|
|
77
76
|
type: :development
|
|
78
77
|
prerelease: false
|
|
79
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
80
79
|
requirements:
|
|
81
80
|
- - "~>"
|
|
82
81
|
- !ruby/object:Gem::Version
|
|
83
|
-
version: '
|
|
82
|
+
version: '2.7'
|
|
84
83
|
- !ruby/object:Gem::Dependency
|
|
85
84
|
name: rake
|
|
86
85
|
requirement: !ruby/object:Gem::Requirement
|
|
87
86
|
requirements:
|
|
88
87
|
- - "~>"
|
|
89
88
|
- !ruby/object:Gem::Version
|
|
90
|
-
version: '
|
|
89
|
+
version: '13.2'
|
|
91
90
|
type: :development
|
|
92
91
|
prerelease: false
|
|
93
92
|
version_requirements: !ruby/object:Gem::Requirement
|
|
94
93
|
requirements:
|
|
95
94
|
- - "~>"
|
|
96
95
|
- !ruby/object:Gem::Version
|
|
97
|
-
version: '
|
|
96
|
+
version: '13.2'
|
|
98
97
|
description: API Client Library for the Adafruit IO product
|
|
99
98
|
email:
|
|
100
99
|
- justin@adafruit.com
|
|
@@ -127,7 +126,6 @@ homepage: https://github.com/adafruit/io-client-ruby
|
|
|
127
126
|
licenses:
|
|
128
127
|
- MIT
|
|
129
128
|
metadata: {}
|
|
130
|
-
post_install_message:
|
|
131
129
|
rdoc_options: []
|
|
132
130
|
require_paths:
|
|
133
131
|
- lib
|
|
@@ -142,9 +140,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
142
140
|
- !ruby/object:Gem::Version
|
|
143
141
|
version: '0'
|
|
144
142
|
requirements: []
|
|
145
|
-
|
|
146
|
-
rubygems_version: 2.5.2
|
|
147
|
-
signing_key:
|
|
143
|
+
rubygems_version: 3.6.2
|
|
148
144
|
specification_version: 4
|
|
149
145
|
summary: Adafruit IO API Client Library
|
|
150
146
|
test_files: []
|