hanami 2.3.0.beta1 → 2.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.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +76 -1
  3. data/README.md +1 -3
  4. data/hanami.gemspec +8 -8
  5. data/lib/hanami/config/actions/content_security_policy.rb +2 -2
  6. data/lib/hanami/config/actions.rb +3 -2
  7. data/lib/hanami/config/router.rb +1 -0
  8. data/lib/hanami/config.rb +11 -19
  9. data/lib/hanami/extensions/action.rb +1 -0
  10. data/lib/hanami/extensions/operation/slice_configured_db_operation.rb +88 -0
  11. data/lib/hanami/extensions/operation.rb +8 -23
  12. data/lib/hanami/extensions/view/context.rb +2 -11
  13. data/lib/hanami/extensions/view/part.rb +3 -0
  14. data/lib/hanami/extensions/view/scope.rb +3 -0
  15. data/lib/hanami/extensions/view/slice_configured_context.rb +0 -7
  16. data/lib/hanami/extensions/view.rb +1 -0
  17. data/lib/hanami/helpers/assets_helper.rb +2 -2
  18. data/lib/hanami/middleware/content_security_policy_nonce.rb +3 -3
  19. data/lib/hanami/routes.rb +4 -3
  20. data/lib/hanami/slice/router.rb +201 -12
  21. data/lib/hanami/slice.rb +13 -0
  22. data/lib/hanami/slice_configurable.rb +1 -3
  23. data/lib/hanami/version.rb +1 -1
  24. data/lib/hanami/web/rack_logger.rb +25 -8
  25. data/lib/hanami.rb +15 -1
  26. data/spec/integration/action/format_config_spec.rb +2 -67
  27. data/spec/integration/action/slice_configuration_spec.rb +36 -36
  28. data/spec/integration/logging/request_logging_spec.rb +16 -0
  29. data/spec/integration/operations/extension_spec.rb +63 -0
  30. data/spec/integration/rack_app/body_parser_spec.rb +3 -3
  31. data/spec/integration/rack_app/rack_app_spec.rb +2 -2
  32. data/spec/integration/router/resource_routes_spec.rb +281 -0
  33. data/spec/unit/hanami/config/actions_spec.rb +2 -2
  34. metadata +19 -20
  35. data/spec/integration/view/context/settings_spec.rb +0 -46
  36. data/spec/unit/hanami/version_spec.rb +0 -7
metadata CHANGED
@@ -1,10 +1,10 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hanami
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0.beta1
4
+ version: 2.3.0
5
5
  platform: ruby
6
6
  authors:
7
- - Luca Guidi
7
+ - Hanakai team
8
8
  bindir: bin
9
9
  cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
@@ -147,7 +147,7 @@ dependencies:
147
147
  requirements:
148
148
  - - "~>"
149
149
  - !ruby/object:Gem::Version
150
- version: '1.0'
150
+ version: '1.2'
151
151
  - - "<"
152
152
  - !ruby/object:Gem::Version
153
153
  version: '2'
@@ -157,7 +157,7 @@ dependencies:
157
157
  requirements:
158
158
  - - "~>"
159
159
  - !ruby/object:Gem::Version
160
- version: '1.0'
160
+ version: '1.2'
161
161
  - - "<"
162
162
  - !ruby/object:Gem::Version
163
163
  version: '2'
@@ -165,30 +165,30 @@ dependencies:
165
165
  name: hanami-cli
166
166
  requirement: !ruby/object:Gem::Requirement
167
167
  requirements:
168
- - - "~>"
168
+ - - ">="
169
169
  - !ruby/object:Gem::Version
170
- version: 2.3.0.beta1
170
+ version: 2.3.0
171
171
  type: :runtime
172
172
  prerelease: false
173
173
  version_requirements: !ruby/object:Gem::Requirement
174
174
  requirements:
175
- - - "~>"
175
+ - - ">="
176
176
  - !ruby/object:Gem::Version
177
- version: 2.3.0.beta1
177
+ version: 2.3.0
178
178
  - !ruby/object:Gem::Dependency
179
179
  name: hanami-utils
180
180
  requirement: !ruby/object:Gem::Requirement
181
181
  requirements:
182
- - - "~>"
182
+ - - ">="
183
183
  - !ruby/object:Gem::Version
184
- version: '2.2'
184
+ version: 2.3.0
185
185
  type: :runtime
186
186
  prerelease: false
187
187
  version_requirements: !ruby/object:Gem::Requirement
188
188
  requirements:
189
- - - "~>"
189
+ - - ">="
190
190
  - !ruby/object:Gem::Version
191
- version: '2.2'
191
+ version: 2.3.0
192
192
  - !ruby/object:Gem::Dependency
193
193
  name: json
194
194
  requirement: !ruby/object:Gem::Requirement
@@ -273,9 +273,9 @@ dependencies:
273
273
  - - "~>"
274
274
  - !ruby/object:Gem::Version
275
275
  version: '13.0'
276
- description: Hanami is a web framework for Ruby
276
+ description: A flexible framework for maintainable Ruby apps
277
277
  email:
278
- - me@lucaguidi.com
278
+ - info@hanakai.org
279
279
  executables: []
280
280
  extensions: []
281
281
  extra_rdoc_files: []
@@ -309,6 +309,7 @@ files:
309
309
  - lib/hanami/extensions/action/slice_configured_action.rb
310
310
  - lib/hanami/extensions/db/repo.rb
311
311
  - lib/hanami/extensions/operation.rb
312
+ - lib/hanami/extensions/operation/slice_configured_db_operation.rb
312
313
  - lib/hanami/extensions/router/errors.rb
313
314
  - lib/hanami/extensions/view.rb
314
315
  - lib/hanami/extensions/view/context.rb
@@ -413,6 +414,7 @@ files:
413
414
  - spec/integration/rack_app/non_booted_rack_app_spec.rb
414
415
  - spec/integration/rack_app/rack_app_spec.rb
415
416
  - spec/integration/rake_tasks_spec.rb
417
+ - spec/integration/router/resource_routes_spec.rb
416
418
  - spec/integration/settings/access_in_slice_class_body_spec.rb
417
419
  - spec/integration/settings/access_to_constants_spec.rb
418
420
  - spec/integration/settings/loading_from_env_spec.rb
@@ -438,7 +440,6 @@ files:
438
440
  - spec/integration/view/context/inflector_spec.rb
439
441
  - spec/integration/view/context/request_spec.rb
440
442
  - spec/integration/view/context/routes_spec.rb
441
- - spec/integration/view/context/settings_spec.rb
442
443
  - spec/integration/view/helpers/form_helper_spec.rb
443
444
  - spec/integration/view/helpers/part_helpers_spec.rb
444
445
  - spec/integration/view/helpers/scope_helpers_spec.rb
@@ -493,7 +494,6 @@ files:
493
494
  - spec/unit/hanami/slice_configurable_spec.rb
494
495
  - spec/unit/hanami/slice_name_spec.rb
495
496
  - spec/unit/hanami/slice_spec.rb
496
- - spec/unit/hanami/version_spec.rb
497
497
  - spec/unit/hanami/web/rack_logger_spec.rb
498
498
  homepage: http://hanamirb.org
499
499
  licenses:
@@ -508,7 +508,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
508
508
  requirements:
509
509
  - - ">="
510
510
  - !ruby/object:Gem::Version
511
- version: '3.1'
511
+ version: '3.2'
512
512
  required_rubygems_version: !ruby/object:Gem::Requirement
513
513
  requirements:
514
514
  - - ">="
@@ -517,7 +517,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
517
517
  requirements: []
518
518
  rubygems_version: 3.6.9
519
519
  specification_version: 4
520
- summary: The web, with simplicity
520
+ summary: A flexible framework for maintainable Ruby apps
521
521
  test_files:
522
522
  - spec/integration/action/cookies_spec.rb
523
523
  - spec/integration/action/csrf_protection_spec.rb
@@ -570,6 +570,7 @@ test_files:
570
570
  - spec/integration/rack_app/non_booted_rack_app_spec.rb
571
571
  - spec/integration/rack_app/rack_app_spec.rb
572
572
  - spec/integration/rake_tasks_spec.rb
573
+ - spec/integration/router/resource_routes_spec.rb
573
574
  - spec/integration/settings/access_in_slice_class_body_spec.rb
574
575
  - spec/integration/settings/access_to_constants_spec.rb
575
576
  - spec/integration/settings/loading_from_env_spec.rb
@@ -595,7 +596,6 @@ test_files:
595
596
  - spec/integration/view/context/inflector_spec.rb
596
597
  - spec/integration/view/context/request_spec.rb
597
598
  - spec/integration/view/context/routes_spec.rb
598
- - spec/integration/view/context/settings_spec.rb
599
599
  - spec/integration/view/helpers/form_helper_spec.rb
600
600
  - spec/integration/view/helpers/part_helpers_spec.rb
601
601
  - spec/integration/view/helpers/scope_helpers_spec.rb
@@ -650,5 +650,4 @@ test_files:
650
650
  - spec/unit/hanami/slice_configurable_spec.rb
651
651
  - spec/unit/hanami/slice_name_spec.rb
652
652
  - spec/unit/hanami/slice_spec.rb
653
- - spec/unit/hanami/version_spec.rb
654
653
  - spec/unit/hanami/web/rack_logger_spec.rb
@@ -1,46 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "hanami"
4
- require "hanami/settings"
5
-
6
- RSpec.describe "App view / Context / Settings", :app_integration do
7
- before do
8
- module TestApp
9
- class App < Hanami::App
10
- end
11
-
12
- class Settings < Hanami::Settings
13
- end
14
- end
15
-
16
- Hanami.prepare
17
-
18
- module TestApp
19
- module Views
20
- class Context < Hanami::View::Context
21
- end
22
- end
23
- end
24
- end
25
-
26
- let(:context_class) { TestApp::Views::Context }
27
- subject(:context) { context_class.new }
28
-
29
- describe "#settings" do
30
- it "is the app settings by default" do
31
- expect(context.settings).to be TestApp::App["settings"]
32
- end
33
-
34
- context "injected settings" do
35
- subject(:context) {
36
- context_class.new(settings: settings)
37
- }
38
-
39
- let(:settings) { double(:settings) }
40
-
41
- it "is the injected settings" do
42
- expect(context.settings).to be settings
43
- end
44
- end
45
- end
46
- end
@@ -1,7 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe "Hanami::VERSION" do
4
- it "returns current version" do
5
- expect(Hanami::VERSION).to eq("2.3.0.beta1")
6
- end
7
- end