lws 11.0.0 → 13.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 +4 -4
- data/CHANGELOG.md +16 -0
- data/lib/lws/middleware.rb +7 -30
- data/lib/lws/version.rb +1 -1
- data/lib/lws.rb +5 -2
- metadata +45 -64
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 750dce155edeae8b3516d04f6f3b3ccdae90748713c0586e8ddab14cfd00ca89
|
|
4
|
+
data.tar.gz: 7d31656dcdd89d2abd4859cc8cfdf369db6dec0a5442f0b5e7f1b646d121c839
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 28b99bf9f9d204c967b0d747ada7a12334ee542e15411d50b592d0da16823fca799adeccda7c69be749c4246183db683ddc9403c12c9a2ff9f7c1a4fb02dcec0
|
|
7
|
+
data.tar.gz: 32bc822579cc9e2c8696de3618bfb9ce6b71b58275674c40f5c08682a04b2946fb5787673c1aaa9f3d679aa6b51ea9c9f8b64ea661f14b33e92304d1fb408d7c
|
data/CHANGELOG.md
CHANGED
|
@@ -8,6 +8,18 @@ of LWS in the major/minor part of te version.
|
|
|
8
8
|
|
|
9
9
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|
10
10
|
|
|
11
|
+
## [13.0.0] - 2026-03-11
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
|
|
15
|
+
- Update dependencies (for Debian 13 (trixie))
|
|
16
|
+
|
|
17
|
+
## [12.0.0] - 2025-11-10
|
|
18
|
+
|
|
19
|
+
### Changed
|
|
20
|
+
|
|
21
|
+
* Also retry requests when encountering an SSL error (`Faraday::SSLError`)
|
|
22
|
+
|
|
11
23
|
## [11.0.0] - 2025-09-30
|
|
12
24
|
|
|
13
25
|
The biggest change in this release is the complete rework of the API of the
|
|
@@ -19,6 +31,8 @@ metadata object attached that is specific to its kind.
|
|
|
19
31
|
|
|
20
32
|
- Add and enable support for retrying a request 3 times
|
|
21
33
|
- Add `LWS::Errors::ServerError` class to indicate LWS server errors
|
|
34
|
+
- Add `data_url`, `kind` and `thumbnail_url` attributes to the collection item
|
|
35
|
+
model
|
|
22
36
|
- Add generic `Metadata` resource class (which is not a REST model)
|
|
23
37
|
- Add `Collection::Metadata`, `Collection::VimeoMetadata`,
|
|
24
38
|
`Collection::WeatherLocationMetadata` and `YouTubeMetadata` resource
|
|
@@ -627,3 +641,5 @@ Initial release
|
|
|
627
641
|
[10.0.0]: https://gitlab.leftclick.network/platform/ruby-lws/compare/v9.0.2...v10.0.0
|
|
628
642
|
[10.0.1]: https://gitlab.leftclick.network/platform/ruby-lws/compare/v10.0.0...v10.0.1
|
|
629
643
|
[11.0.0]: https://gitlab.leftclick.network/platform/ruby-lws/compare/v10.0.1...v11.0.0
|
|
644
|
+
[12.0.0]: https://gitlab.leftclick.network/platform/ruby-lws/compare/v11.0.0...v12.0.0
|
|
645
|
+
[13.0.0]: https://gitlab.leftclick.network/platform/ruby-lws/compare/v12.0.0...v13.0.0
|
data/lib/lws/middleware.rb
CHANGED
|
@@ -9,14 +9,11 @@
|
|
|
9
9
|
# Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
|
|
10
10
|
# info@leftclick.eu, +3185-4444-004.
|
|
11
11
|
|
|
12
|
-
|
|
13
12
|
module LWS
|
|
14
|
-
|
|
15
13
|
# @private
|
|
16
14
|
# @!visibility private
|
|
17
15
|
module Middleware
|
|
18
16
|
end
|
|
19
|
-
|
|
20
17
|
end
|
|
21
18
|
|
|
22
19
|
require "lws/middleware/caching"
|
|
@@ -26,37 +23,17 @@ require "lws/middleware/json_parser"
|
|
|
26
23
|
require "lws/middleware/raise_server_error"
|
|
27
24
|
require "lws/middleware/request_headers"
|
|
28
25
|
|
|
29
|
-
# Set up Faraday
|
|
26
|
+
# Set up Faraday middleware portability using class aliases.
|
|
30
27
|
module LWS
|
|
31
28
|
module Middleware
|
|
32
|
-
FollowRedirects =
|
|
33
|
-
if defined? Faraday::FollowRedirects::Middleware
|
|
34
|
-
Faraday::FollowRedirects::Middleware
|
|
35
|
-
else
|
|
36
|
-
FaradayMiddleware::FollowRedirects
|
|
37
|
-
end
|
|
29
|
+
FollowRedirects = Faraday::FollowRedirects::Middleware
|
|
38
30
|
|
|
39
|
-
JSONEncoder =
|
|
40
|
-
if defined? Faraday::Request::Json
|
|
41
|
-
Faraday::Request::Json
|
|
42
|
-
else
|
|
43
|
-
FaradayMiddleware::EncodeJson
|
|
44
|
-
end
|
|
31
|
+
JSONEncoder = Faraday::Request::Json
|
|
45
32
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
else
|
|
50
|
-
# Use this vendored middleware implementation because it is not
|
|
51
|
-
# available for Faraday ≥ 2.0
|
|
52
|
-
Caching
|
|
53
|
-
end
|
|
33
|
+
# Use this vendored middleware implementation because it is not available
|
|
34
|
+
# for Faraday ≥ 2.0.
|
|
35
|
+
ObjectCaching = Caching
|
|
54
36
|
|
|
55
|
-
Retry =
|
|
56
|
-
if defined? Faraday::Request::Retry
|
|
57
|
-
Faraday::Request::Retry
|
|
58
|
-
else
|
|
59
|
-
Faraday::Retry::Middleware
|
|
60
|
-
end
|
|
37
|
+
Retry = Faraday::Retry::Middleware
|
|
61
38
|
end
|
|
62
39
|
end
|
data/lib/lws/version.rb
CHANGED
data/lib/lws.rb
CHANGED
|
@@ -45,6 +45,10 @@ module LWS
|
|
|
45
45
|
include Errors
|
|
46
46
|
include Middleware
|
|
47
47
|
|
|
48
|
+
# The exceptions that warrant a retry.
|
|
49
|
+
RETRY_EXCEPTIONS = Middleware::Retry::DEFAULT_EXCEPTIONS +
|
|
50
|
+
[Errno::EALREADY, Faraday::ConnectionFailed, Faraday::SSLError].freeze
|
|
51
|
+
|
|
48
52
|
# The list of supported apps (web service libraries) loaded by
|
|
49
53
|
# {.setup}.
|
|
50
54
|
SUPPORTED_APPS = [:generic, :auth, :corporate_website, :digital_signage,
|
|
@@ -140,8 +144,7 @@ module LWS
|
|
|
140
144
|
c.use Middleware::JSONLogger, config.logger if config.json_debug
|
|
141
145
|
c.use Middleware::JSONParser
|
|
142
146
|
c.use Middleware::RaiseServerError
|
|
143
|
-
c.use Middleware::Retry, exceptions:
|
|
144
|
-
[Errno::EALREADY, Faraday::ConnectionFailed],
|
|
147
|
+
c.use Middleware::Retry, exceptions: RETRY_EXCEPTIONS,
|
|
145
148
|
interval: 0.2,
|
|
146
149
|
retry_statuses: [502, 503, 504]
|
|
147
150
|
c.use Middleware::FollowRedirects, limit: 3
|
metadata
CHANGED
|
@@ -1,137 +1,126 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: lws
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 13.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- LeftClick B.V.
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: faraday
|
|
15
14
|
requirement: !ruby/object:Gem::Requirement
|
|
16
15
|
requirements:
|
|
17
|
-
- - "
|
|
18
|
-
- !ruby/object:Gem::Version
|
|
19
|
-
version: '1.0'
|
|
20
|
-
- - "<"
|
|
16
|
+
- - "~>"
|
|
21
17
|
- !ruby/object:Gem::Version
|
|
22
|
-
version: '
|
|
18
|
+
version: '2.12'
|
|
23
19
|
type: :runtime
|
|
24
20
|
prerelease: false
|
|
25
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
26
22
|
requirements:
|
|
27
|
-
- - "
|
|
23
|
+
- - "~>"
|
|
28
24
|
- !ruby/object:Gem::Version
|
|
29
|
-
version: '
|
|
30
|
-
|
|
25
|
+
version: '2.12'
|
|
26
|
+
- !ruby/object:Gem::Dependency
|
|
27
|
+
name: faraday-follow_redirects
|
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
|
29
|
+
requirements:
|
|
30
|
+
- - "~>"
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: '0.3'
|
|
33
|
+
type: :runtime
|
|
34
|
+
prerelease: false
|
|
35
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
36
|
+
requirements:
|
|
37
|
+
- - "~>"
|
|
31
38
|
- !ruby/object:Gem::Version
|
|
32
|
-
version: '3
|
|
39
|
+
version: '0.3'
|
|
33
40
|
- !ruby/object:Gem::Dependency
|
|
34
41
|
name: faraday-http-cache
|
|
35
42
|
requirement: !ruby/object:Gem::Requirement
|
|
36
43
|
requirements:
|
|
37
44
|
- - "~>"
|
|
38
45
|
- !ruby/object:Gem::Version
|
|
39
|
-
version: '2.
|
|
46
|
+
version: '2.5'
|
|
40
47
|
type: :runtime
|
|
41
48
|
prerelease: false
|
|
42
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
43
50
|
requirements:
|
|
44
51
|
- - "~>"
|
|
45
52
|
- !ruby/object:Gem::Version
|
|
46
|
-
version: '2.
|
|
53
|
+
version: '2.5'
|
|
47
54
|
- !ruby/object:Gem::Dependency
|
|
48
|
-
name:
|
|
55
|
+
name: faraday-net_http_persistent
|
|
49
56
|
requirement: !ruby/object:Gem::Requirement
|
|
50
57
|
requirements:
|
|
51
|
-
- - "
|
|
52
|
-
- !ruby/object:Gem::Version
|
|
53
|
-
version: 0.10.0
|
|
54
|
-
- - "<"
|
|
58
|
+
- - "~>"
|
|
55
59
|
- !ruby/object:Gem::Version
|
|
56
|
-
version: '2.
|
|
60
|
+
version: '2.1'
|
|
57
61
|
type: :runtime
|
|
58
62
|
prerelease: false
|
|
59
63
|
version_requirements: !ruby/object:Gem::Requirement
|
|
60
64
|
requirements:
|
|
61
|
-
- - "
|
|
62
|
-
- !ruby/object:Gem::Version
|
|
63
|
-
version: 0.10.0
|
|
64
|
-
- - "<"
|
|
65
|
+
- - "~>"
|
|
65
66
|
- !ruby/object:Gem::Version
|
|
66
|
-
version: '2.
|
|
67
|
+
version: '2.1'
|
|
67
68
|
- !ruby/object:Gem::Dependency
|
|
68
|
-
name:
|
|
69
|
+
name: faraday-retry
|
|
69
70
|
requirement: !ruby/object:Gem::Requirement
|
|
70
71
|
requirements:
|
|
71
|
-
- - "
|
|
72
|
-
- !ruby/object:Gem::Version
|
|
73
|
-
version: '2.9'
|
|
74
|
-
- - "<"
|
|
72
|
+
- - "~>"
|
|
75
73
|
- !ruby/object:Gem::Version
|
|
76
|
-
version: '
|
|
74
|
+
version: '2.3'
|
|
77
75
|
type: :runtime
|
|
78
76
|
prerelease: false
|
|
79
77
|
version_requirements: !ruby/object:Gem::Requirement
|
|
80
78
|
requirements:
|
|
81
|
-
- - "
|
|
82
|
-
- !ruby/object:Gem::Version
|
|
83
|
-
version: '2.9'
|
|
84
|
-
- - "<"
|
|
79
|
+
- - "~>"
|
|
85
80
|
- !ruby/object:Gem::Version
|
|
86
|
-
version: '
|
|
81
|
+
version: '2.3'
|
|
87
82
|
- !ruby/object:Gem::Dependency
|
|
88
83
|
name: hashie
|
|
89
84
|
requirement: !ruby/object:Gem::Requirement
|
|
90
85
|
requirements:
|
|
91
|
-
- - "
|
|
92
|
-
- !ruby/object:Gem::Version
|
|
93
|
-
version: '3.5'
|
|
94
|
-
- - "<"
|
|
86
|
+
- - "~>"
|
|
95
87
|
- !ruby/object:Gem::Version
|
|
96
|
-
version: '
|
|
88
|
+
version: '5.0'
|
|
97
89
|
type: :runtime
|
|
98
90
|
prerelease: false
|
|
99
91
|
version_requirements: !ruby/object:Gem::Requirement
|
|
100
92
|
requirements:
|
|
101
|
-
- - "
|
|
102
|
-
- !ruby/object:Gem::Version
|
|
103
|
-
version: '3.5'
|
|
104
|
-
- - "<"
|
|
93
|
+
- - "~>"
|
|
105
94
|
- !ruby/object:Gem::Version
|
|
106
|
-
version: '
|
|
95
|
+
version: '5.0'
|
|
107
96
|
- !ruby/object:Gem::Dependency
|
|
108
97
|
name: multi_json
|
|
109
98
|
requirement: !ruby/object:Gem::Requirement
|
|
110
99
|
requirements:
|
|
111
100
|
- - "~>"
|
|
112
101
|
- !ruby/object:Gem::Version
|
|
113
|
-
version: '1.
|
|
102
|
+
version: '1.15'
|
|
114
103
|
type: :runtime
|
|
115
104
|
prerelease: false
|
|
116
105
|
version_requirements: !ruby/object:Gem::Requirement
|
|
117
106
|
requirements:
|
|
118
107
|
- - "~>"
|
|
119
108
|
- !ruby/object:Gem::Version
|
|
120
|
-
version: '1.
|
|
109
|
+
version: '1.15'
|
|
121
110
|
- !ruby/object:Gem::Dependency
|
|
122
111
|
name: pry
|
|
123
112
|
requirement: !ruby/object:Gem::Requirement
|
|
124
113
|
requirements:
|
|
125
114
|
- - "~>"
|
|
126
115
|
- !ruby/object:Gem::Version
|
|
127
|
-
version: '0.
|
|
116
|
+
version: '0.15'
|
|
128
117
|
type: :runtime
|
|
129
118
|
prerelease: false
|
|
130
119
|
version_requirements: !ruby/object:Gem::Requirement
|
|
131
120
|
requirements:
|
|
132
121
|
- - "~>"
|
|
133
122
|
- !ruby/object:Gem::Version
|
|
134
|
-
version: '0.
|
|
123
|
+
version: '0.15'
|
|
135
124
|
- !ruby/object:Gem::Dependency
|
|
136
125
|
name: spyke
|
|
137
126
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -156,22 +145,16 @@ dependencies:
|
|
|
156
145
|
name: webmock
|
|
157
146
|
requirement: !ruby/object:Gem::Requirement
|
|
158
147
|
requirements:
|
|
159
|
-
- - "
|
|
160
|
-
- !ruby/object:Gem::Version
|
|
161
|
-
version: '2'
|
|
162
|
-
- - "<"
|
|
148
|
+
- - "~>"
|
|
163
149
|
- !ruby/object:Gem::Version
|
|
164
|
-
version: '
|
|
150
|
+
version: '3.25'
|
|
165
151
|
type: :runtime
|
|
166
152
|
prerelease: false
|
|
167
153
|
version_requirements: !ruby/object:Gem::Requirement
|
|
168
154
|
requirements:
|
|
169
|
-
- - "
|
|
170
|
-
- !ruby/object:Gem::Version
|
|
171
|
-
version: '2'
|
|
172
|
-
- - "<"
|
|
155
|
+
- - "~>"
|
|
173
156
|
- !ruby/object:Gem::Version
|
|
174
|
-
version: '
|
|
157
|
+
version: '3.25'
|
|
175
158
|
description: |-
|
|
176
159
|
This library for Ruby provides access to the LeftClick Web
|
|
177
160
|
Services and its applications using a model-based structure that abstracts
|
|
@@ -209,7 +192,6 @@ files:
|
|
|
209
192
|
homepage: https://leftclick.eu/
|
|
210
193
|
licenses: []
|
|
211
194
|
metadata: {}
|
|
212
|
-
post_install_message:
|
|
213
195
|
rdoc_options: []
|
|
214
196
|
require_paths:
|
|
215
197
|
- lib
|
|
@@ -217,15 +199,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
217
199
|
requirements:
|
|
218
200
|
- - ">="
|
|
219
201
|
- !ruby/object:Gem::Version
|
|
220
|
-
version:
|
|
202
|
+
version: 3.3.0
|
|
221
203
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
222
204
|
requirements:
|
|
223
205
|
- - ">="
|
|
224
206
|
- !ruby/object:Gem::Version
|
|
225
207
|
version: '0'
|
|
226
208
|
requirements: []
|
|
227
|
-
rubygems_version: 3.
|
|
228
|
-
signing_key:
|
|
209
|
+
rubygems_version: 3.6.7
|
|
229
210
|
specification_version: 4
|
|
230
211
|
summary: LeftClick Web Services library for Ruby
|
|
231
212
|
test_files: []
|