hanami-controller 1.3.0.beta1 → 1.3.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: 70d59d43ccadadc8779881bb8c2bbc9a324e5e68e84e9a68ac7ef994b6124ea6
4
- data.tar.gz: fab5066f435669ac7dbf7d8d0b7b5d7ec4c52ea2aef4975985ab24542d073994
3
+ metadata.gz: cd844a68050b975c377d225641cb0a73934bc21fb735ebff206bcdb72742edd9
4
+ data.tar.gz: d4943a7b7bef58e1d2c3dc824ff77f9654bb364d7f1c71a9cd6ab2e97b6a34c9
5
5
  SHA512:
6
- metadata.gz: 40ebcfe48e2b61e4e45447cfa7d6c30a471dc949668895b0758a7519d0a6a1de810f4da6b73a42e2e7a69abc0fd759ce9da16d5a8633fafd473694d639347759
7
- data.tar.gz: 6f1983a3efc8900850f5496b755d9cf769065bc60e3c2423ec97828cba619db5971b8af4a70d648588e858cda144aa761c5c7d63149d26f379e4ae70f2369c1e
6
+ metadata.gz: 222964d792abfdcb03991814975ad55bbc08b10bc5a98ac7b1fe338b35b27643abd98657f447e110b5fe421676611f4941fc8a19604da06a09cd089ae5be0022
7
+ data.tar.gz: 0ffda8f6e455f25a87687f844a044faad15304f01a892b2d0362af5ea4789f42192904a86d7b3f10be7caf6a438fa8b143b905c43ed5559c3f12e526cff586f5
data/CHANGELOG.md CHANGED
@@ -1,6 +1,10 @@
1
1
  # Hanami::Controller
2
2
  Complete, fast and testable actions for Rack
3
3
 
4
+ ## v1.3.0 - 2018-10-24
5
+ ### Added
6
+ - [Gustavo Caso] Swappable JSON backed for `Hanami::Action::Flash` based on `Hanami::Utils::Json`
7
+
4
8
  ## v1.3.0.beta1 - 2018-08-08
5
9
  ### Added
6
10
  - [Luca Guidi] Official support for JRuby 9.2.0.0
data/README.md CHANGED
@@ -587,7 +587,7 @@ action = RemoveCookies.new
587
587
  action.call({}) # => [200, {'Set-Cookie' => "foo=; max-age=0; expires=Thu, 01 Jan 1970 00:00:00 -0000"}, '...']
588
588
  ```
589
589
 
590
- Default values can be set in configuration, but overriden case by case.
590
+ Default values can be set in configuration, but overridden case by case.
591
591
 
592
592
  ```ruby
593
593
  require 'hanami/controller'
@@ -20,7 +20,7 @@ Gem::Specification.new do |spec|
20
20
  spec.required_ruby_version = '>= 2.3.0'
21
21
 
22
22
  spec.add_dependency 'rack', '~> 2.0'
23
- spec.add_dependency 'hanami-utils', '~> 1.3.beta'
23
+ spec.add_dependency 'hanami-utils', '~> 1.3'
24
24
 
25
25
  spec.add_development_dependency 'bundler', '~> 1.6'
26
26
  spec.add_development_dependency 'rack-test', '~> 1.0'
@@ -1,3 +1,5 @@
1
+ require 'hanami/utils/json'
2
+
1
3
  module Hanami
2
4
  module Action
3
5
  # Container useful to transport data with the HTTP session
@@ -178,7 +180,7 @@ module Hanami
178
180
  # @since 1.3.0
179
181
  # @api private
180
182
  def keep_data
181
- new_kept_data = kept << JSON.generate({ count: 0, data: _data })
183
+ new_kept_data = kept << Hanami::Utils::Json.generate({ count: 0, data: _data })
182
184
 
183
185
  update_kept(new_kept_data)
184
186
  end
@@ -191,7 +193,7 @@ module Hanami
191
193
  # @api private
192
194
  def expire_kept
193
195
  new_kept_data = kept.reject do |kept_data|
194
- parsed = JSON.parse(kept_data)
196
+ parsed = Hanami::Utils::Json.parse(kept_data)
195
197
  parsed['count'] >= 2 if is_hash?(parsed) && parsed['count'].is_a?(Integer)
196
198
  end
197
199
 
@@ -206,9 +208,9 @@ module Hanami
206
208
  # @api private
207
209
  def update_kept_request_count
208
210
  new_kept_data = kept.map do |kept_data|
209
- parsed = JSON.parse(kept_data)
211
+ parsed = Hanami::Utils::Json.parse(kept_data)
210
212
  parsed['count'] += 1 if is_hash?(parsed) && parsed['count'].is_a?(Integer)
211
- JSON.generate(parsed)
213
+ Hanami::Utils::Json.generate(parsed)
212
214
  end
213
215
 
214
216
  update_kept(new_kept_data)
@@ -225,11 +227,11 @@ module Hanami
225
227
  string_key = key.to_s
226
228
 
227
229
  data = kept.find do |kept_data|
228
- parsed = JSON.parse(kept_data)
230
+ parsed = Hanami::Utils::Json.parse(kept_data)
229
231
  parsed['data'].fetch(string_key, nil) if is_hash?(parsed['data'])
230
232
  end
231
233
 
232
- JSON.parse(data)['data'][string_key] if data
234
+ Hanami::Utils::Json.parse(data)['data'][string_key] if data
233
235
  end
234
236
 
235
237
  # Set the given new_kept_data to KEPT_KEY
@@ -250,7 +252,7 @@ module Hanami
250
252
  # @since 1.3.0
251
253
  # @api private
252
254
  def kept_data
253
- kept.each_with_object({}) { |kept_data, result| result.merge!(JSON.parse(kept_data)['data']) }
255
+ kept.each_with_object({}) { |kept_data, result| result.merge!(Hanami::Utils::Json.parse(kept_data)['data']) }
254
256
  end
255
257
 
256
258
  # Check if data is a hash
@@ -3,6 +3,6 @@ module Hanami
3
3
  # Defines the version
4
4
  #
5
5
  # @since 0.1.0
6
- VERSION = '1.3.0.beta1'.freeze
6
+ VERSION = '1.3.0'.freeze
7
7
  end
8
8
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hanami-controller
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0.beta1
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luca Guidi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-08-08 00:00:00.000000000 Z
11
+ date: 2018-10-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.3.beta
33
+ version: '1.3'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 1.3.beta
40
+ version: '1.3'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -153,9 +153,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
153
153
  version: 2.3.0
154
154
  required_rubygems_version: !ruby/object:Gem::Requirement
155
155
  requirements:
156
- - - ">"
156
+ - - ">="
157
157
  - !ruby/object:Gem::Version
158
- version: 1.3.1
158
+ version: '0'
159
159
  requirements: []
160
160
  rubyforge_project:
161
161
  rubygems_version: 2.7.7