otto 2.3.0 → 2.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 +4 -4
- data/.github/dependabot.yml +1 -1
- data/.github/workflows/ci.yml +7 -1
- data/.github/workflows/claude-code-review.yml +33 -10
- data/.github/workflows/claude.yml +9 -2
- data/.github/workflows/code-smells.yml +2 -2
- data/.github/workflows/release-gem.yml +12 -2
- data/.github/workflows/ruby-lint.yml +66 -0
- data/.github/workflows/yardoc.yml +117 -0
- data/.yardopts +15 -0
- data/CHANGELOG.rst +84 -0
- data/Gemfile +4 -1
- data/Gemfile.lock +23 -15
- data/README.md +96 -0
- data/Rakefile +21 -0
- data/docs/.gitignore +1 -0
- data/docs/migrating/v2.3.0.md +50 -3
- data/docs/reverse-proxy-network-services.md +358 -0
- data/examples/caddy_tls_demo/README.md +100 -0
- data/examples/caddy_tls_demo/app.rb +41 -0
- data/examples/caddy_tls_demo/config.ru +31 -0
- data/examples/caddy_tls_demo/routes +9 -0
- data/examples/caddy_tls_demo/standalone.ru +38 -0
- data/lib/otto/caddy_tls/core.rb +74 -0
- data/lib/otto/caddy_tls/localhost_guard.rb +158 -0
- data/lib/otto/caddy_tls/server.rb +149 -0
- data/lib/otto/caddy_tls.rb +7 -0
- data/lib/otto/core/configuration.rb +9 -1
- data/lib/otto/core/middleware_management.rb +7 -7
- data/lib/otto/core/middleware_stack.rb +39 -5
- data/lib/otto/core/router.rb +4 -8
- data/lib/otto/security/config.rb +293 -2
- data/lib/otto/security/configurator.rb +53 -0
- data/lib/otto/security/core.rb +62 -0
- data/lib/otto/security/csp/parser.rb +120 -0
- data/lib/otto/security/csp/report.rb +147 -0
- data/lib/otto/security/csp/report_middleware.rb +120 -0
- data/lib/otto/security/csp.rb +19 -0
- data/lib/otto/security/middleware/ip_privacy_middleware.rb +72 -7
- data/lib/otto/security.rb +1 -0
- data/lib/otto/utils.rb +133 -18
- data/lib/otto/version.rb +1 -1
- data/lib/otto.rb +26 -3
- metadata +24 -3
metadata
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: otto
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.4.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Delano Mandelbaum
|
|
8
|
+
autorequire:
|
|
8
9
|
bindir: bin
|
|
9
10
|
cert_chain: []
|
|
10
|
-
date:
|
|
11
|
+
date: 2026-07-01 00:00:00.000000000 Z
|
|
11
12
|
dependencies:
|
|
12
13
|
- !ruby/object:Gem::Dependency
|
|
13
14
|
name: concurrent-ruby
|
|
@@ -123,18 +124,22 @@ files:
|
|
|
123
124
|
- ".github/workflows/claude.yml"
|
|
124
125
|
- ".github/workflows/code-smells.yml"
|
|
125
126
|
- ".github/workflows/release-gem.yml"
|
|
127
|
+
- ".github/workflows/ruby-lint.yml"
|
|
128
|
+
- ".github/workflows/yardoc.yml"
|
|
126
129
|
- ".gitignore"
|
|
127
130
|
- ".pre-commit-config.yaml"
|
|
128
131
|
- ".pre-push-config.yaml"
|
|
129
132
|
- ".reek.yml"
|
|
130
133
|
- ".rspec"
|
|
131
134
|
- ".rubocop.yml"
|
|
135
|
+
- ".yardopts"
|
|
132
136
|
- AGENTS.md
|
|
133
137
|
- CHANGELOG.rst
|
|
134
138
|
- Gemfile
|
|
135
139
|
- Gemfile.lock
|
|
136
140
|
- LICENSE.txt
|
|
137
141
|
- README.md
|
|
142
|
+
- Rakefile
|
|
138
143
|
- bin/rspec
|
|
139
144
|
- changelog.d/README.md
|
|
140
145
|
- changelog.d/scriv.ini
|
|
@@ -145,6 +150,7 @@ files:
|
|
|
145
150
|
- docs/migrating/v2.3.0.md
|
|
146
151
|
- docs/modern-authentication-authorization-landscape.md
|
|
147
152
|
- docs/multi-strategy-authentication-design.md
|
|
153
|
+
- docs/reverse-proxy-network-services.md
|
|
148
154
|
- examples/.gitignore
|
|
149
155
|
- examples/advanced_routes/README.md
|
|
150
156
|
- examples/advanced_routes/app.rb
|
|
@@ -191,6 +197,11 @@ files:
|
|
|
191
197
|
- examples/basic/app.rb
|
|
192
198
|
- examples/basic/config.ru
|
|
193
199
|
- examples/basic/routes
|
|
200
|
+
- examples/caddy_tls_demo/README.md
|
|
201
|
+
- examples/caddy_tls_demo/app.rb
|
|
202
|
+
- examples/caddy_tls_demo/config.ru
|
|
203
|
+
- examples/caddy_tls_demo/routes
|
|
204
|
+
- examples/caddy_tls_demo/standalone.ru
|
|
194
205
|
- examples/error_handler_registration.rb
|
|
195
206
|
- examples/logging_improvements.rb
|
|
196
207
|
- examples/mcp_demo/README.md
|
|
@@ -203,6 +214,10 @@ files:
|
|
|
203
214
|
- examples/security_features/routes
|
|
204
215
|
- examples/simple_geo_resolver.rb
|
|
205
216
|
- lib/otto.rb
|
|
217
|
+
- lib/otto/caddy_tls.rb
|
|
218
|
+
- lib/otto/caddy_tls/core.rb
|
|
219
|
+
- lib/otto/caddy_tls/localhost_guard.rb
|
|
220
|
+
- lib/otto/caddy_tls/server.rb
|
|
206
221
|
- lib/otto/core.rb
|
|
207
222
|
- lib/otto/core/configuration.rb
|
|
208
223
|
- lib/otto/core/error_handler.rb
|
|
@@ -278,6 +293,10 @@ files:
|
|
|
278
293
|
- lib/otto/security/configurator.rb
|
|
279
294
|
- lib/otto/security/constant_resolver.rb
|
|
280
295
|
- lib/otto/security/core.rb
|
|
296
|
+
- lib/otto/security/csp.rb
|
|
297
|
+
- lib/otto/security/csp/parser.rb
|
|
298
|
+
- lib/otto/security/csp/report.rb
|
|
299
|
+
- lib/otto/security/csp/report_middleware.rb
|
|
281
300
|
- lib/otto/security/csrf.rb
|
|
282
301
|
- lib/otto/security/middleware/csrf_middleware.rb
|
|
283
302
|
- lib/otto/security/middleware/ip_privacy_middleware.rb
|
|
@@ -297,6 +316,7 @@ licenses:
|
|
|
297
316
|
- MIT
|
|
298
317
|
metadata:
|
|
299
318
|
rubygems_mfa_required: 'true'
|
|
319
|
+
post_install_message:
|
|
300
320
|
rdoc_options: []
|
|
301
321
|
require_paths:
|
|
302
322
|
- lib
|
|
@@ -314,7 +334,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
314
334
|
- !ruby/object:Gem::Version
|
|
315
335
|
version: '0'
|
|
316
336
|
requirements: []
|
|
317
|
-
rubygems_version: 3.
|
|
337
|
+
rubygems_version: 3.5.22
|
|
338
|
+
signing_key:
|
|
318
339
|
specification_version: 4
|
|
319
340
|
summary: Define your rack-apps in plaintext.
|
|
320
341
|
test_files: []
|