alula-ruby 1.3.0 → 1.4.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: 8e7c4adad8dc9335e13282c8c0ea43d962312e5e4e34113d52877099a072b56c
4
- data.tar.gz: 800ed5ba6ddcb94d33742c3b0ecf46ac55d846b9d24d708ea080f55bc6013952
3
+ metadata.gz: f70aa0a4b0c40a14dd7cfdbb1faa3655525f06212409a61eb9c4af071deead07
4
+ data.tar.gz: a97bd6710997caa25a901cd3000c1edabdcbd31458460a17e61658093dc7cc5b
5
5
  SHA512:
6
- metadata.gz: 3c5f72d61ad7f378b1eb412ec3d824d08e33a73f90dcc1a9ec91dec51e552b935af89f7fea74a553243938c3991bc5c3c1504d5a37e2740155d85a9f07f656da
7
- data.tar.gz: 54d92e69be82bf5d9a2a2321f02631e2a73e0d26fc887e4541fe30872e0e507c14a2dabbd9224a8eda5fdeffc7cbcbe0bce2412b726c92d4c4c965cc45286b32
6
+ metadata.gz: 9ff58743a47fc9cc49a71c76e57302debc60acb28a13f37099385d7dbf7260f96b3381da9b6fd8423ee0877a786050a4c6cf9efc5060bf4339a6921d82fba8cb
7
+ data.tar.gz: f51670cb212984b3157ec25e64e07744205359e0d98c3d707ade79bded8a83fc30a0764a747b021cdd23867094c5be8e93a862ac47fa9a0c7b610ef87522a36d
data/VERSION.md CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  | Version | Date | Description |
4
4
  | ------- | --------- | --------------------------------------------------------------------------- |
5
+ | v1.4.0 | 2024-01-04 | Add more known errors that use a different format, bugfix for `NotImplementedError` raising |
5
6
  | v1.3.0 | 2023-11-20 | Update NotImplemented error's message to include a JSONized hash, add more known errors that use a different format |
6
7
  | v1.2.4 | 2023-09-15 | Update UI Settings to object |
7
8
  | v1.2.3 | 2023-08-31 | Update typo device patchable field `uiSettings` |
data/lib/alula/errors.rb CHANGED
@@ -75,15 +75,19 @@ module Alula
75
75
  # Sometimes they are in the msg key, sometimes in the message key
76
76
  # Example: https://github.com/alula-net/alula-connect/pull/3417#issue-1985813211
77
77
  # Here we have some errors that are actually known but at least one of them is not properly formatted by the API
78
- message = response.data.dig('error', 'data', 'msg') || response.data.dig('error', 'data', 'message')
78
+ message = response.data.dig('error', 'data', 'msg') ||
79
+ response.data.dig('error', 'data', 'message') ||
80
+ response.data.dig('error', 'description')
79
81
  case message
80
82
  when 'dealer does not exist'
81
83
  NotFoundError.new(message)
82
84
  when 'Insufficient User Scope'
83
85
  InsufficientScopeError.new(message)
86
+ when 'Not Found'
87
+ NotFoundError.new(message)
84
88
  else
85
89
  Alula.logger.error response
86
- raise NotImplementedError.new('Unable to derive error for', response.data['error'].to_json)
90
+ raise NotImplementedError, "Unable to derive error for #{response.data['error'].to_json}"
87
91
  end
88
92
  end
89
93
  end
@@ -112,15 +116,17 @@ module Alula
112
116
  return ProcedureError.new(response) if response.data['jsonrpc']
113
117
 
114
118
  # See comment in the error_for_response method
115
- message = error.dig('data', 'msg') || error.dig('data', 'message')
119
+ message = error.dig('data', 'msg') || error.dig('data', 'message') || error['description']
116
120
  case message
117
121
  when 'dealer does not exist'
118
122
  NotFoundError.new(message)
119
123
  when 'Insufficient User Scope'
120
124
  InsufficientScopeError.new(message)
125
+ when 'Not Found'
126
+ NotFoundError.new(message)
121
127
  else
122
128
  Alula.logger.error response
123
- raise NotImplementedError.new('Unable to derive error for', response.data['errors'].to_json)
129
+ raise NotImplementedError, "Unable to derive error for #{response.data['errors'].to_json}"
124
130
  end
125
131
  end
126
132
  end
data/lib/alula/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Alula
4
- VERSION = '1.3.0'
4
+ VERSION = '1.4.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alula-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Titus Johnson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-11-21 00:00:00.000000000 Z
11
+ date: 2024-01-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty