itsi 0.2.26 → 0.2.27
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 +7 -0
- data/Cargo.lock +7 -3
- data/README.md +4 -1
- data/Rakefile +24 -3
- data/crates/itsi_acme/Cargo.toml +2 -1
- data/crates/itsi_acme/src/acceptor.rs +1 -1
- data/crates/itsi_acme/src/acme.rs +31 -3
- data/crates/itsi_acme/src/http_challenge.rs +81 -0
- data/crates/itsi_acme/src/https_helper.rs +3 -1
- data/crates/itsi_acme/src/jose.rs +6 -2
- data/crates/itsi_acme/src/lib.rs +2 -0
- data/crates/itsi_acme/src/resolver.rs +27 -4
- data/crates/itsi_acme/src/state.rs +183 -22
- data/crates/itsi_scheduler/Cargo.toml +1 -1
- data/crates/itsi_scheduler/src/itsi_scheduler.rs +115 -64
- data/crates/itsi_scheduler/src/lib.rs +2 -1
- data/crates/itsi_server/Cargo.toml +2 -1
- data/crates/itsi_server/src/lib.rs +15 -0
- data/crates/itsi_server/src/ruby_types/itsi_grpc_call.rs +0 -1
- data/crates/itsi_server/src/ruby_types/itsi_http_request.rs +9 -0
- data/crates/itsi_server/src/ruby_types/itsi_http_response.rs +114 -4
- data/crates/itsi_server/src/ruby_types/itsi_server/itsi_server_config.rs +22 -1
- data/crates/itsi_server/src/ruby_types/itsi_server.rs +100 -0
- data/crates/itsi_server/src/server/binds/listener.rs +9 -24
- data/crates/itsi_server/src/server/binds/tls.rs +372 -67
- data/crates/itsi_server/src/server/signal.rs +14 -9
- data/crates/itsi_server/src/services/itsi_http_service.rs +46 -2
- data/docs/content/features/_index.md +3 -0
- data/docs/content/getting_started/_index.md +6 -2
- data/docs/content/getting_started/local_development.md +13 -0
- data/docs/content/itsi_scheduler/_index.md +3 -0
- data/gems/scheduler/Cargo.lock +4011 -527
- data/gems/scheduler/Gemfile +8 -2
- data/gems/scheduler/Gemfile.lock +107 -0
- data/gems/scheduler/Rakefile +33 -9
- data/gems/scheduler/lib/itsi/scheduler/version.rb +1 -1
- data/gems/scheduler/lib/itsi/scheduler.rb +121 -6
- data/gems/scheduler/test/helpers/test_helper.rb +2 -0
- data/gems/scheduler/test/test_address_resolve.rb +8 -2
- data/gems/scheduler/test/test_itsi_scheduler.rb +80 -0
- data/gems/scheduler/test/test_timeout_after.rb +102 -0
- data/gems/server/Cargo.lock +30 -1
- data/gems/server/Gemfile +3 -0
- data/gems/server/Gemfile.lock +195 -0
- data/gems/server/Rakefile +18 -5
- data/gems/server/lib/itsi/http_request.rb +10 -0
- data/gems/server/lib/itsi/server/config/options/certificates.md +37 -9
- data/gems/server/lib/itsi/server/config/options/fiber_scheduler.md +2 -0
- data/gems/server/lib/itsi/server/default_config/Itsi.rb +4 -0
- data/gems/server/lib/itsi/server/rack_interface.rb +47 -3
- data/gems/server/lib/itsi/server/version.rb +1 -1
- data/gems/server/lib/itsi/server.rb +24 -0
- data/gems/server/test/acme/local_acme_challenges.rb +190 -0
- data/gems/server/test/helpers/local_acme.rb +218 -0
- data/gems/server/test/helpers/test_helper.rb +7 -9
- data/gems/server/test/middleware/endpoint.rb +9 -6
- data/gems/server/test/rack/test_rack_server.rb +144 -0
- data/lib/itsi/version.rb +1 -1
- metadata +12 -6
|
@@ -16,6 +16,9 @@ When combined with Itsi Server, you can write endpoints that look just like regu
|
|
|
16
16
|
If you're purely after a lightweight, yet efficient Ruby scheduler,
|
|
17
17
|
you can use Itsi Scheduler as a standalone scheduler for any Ruby application.
|
|
18
18
|
|
|
19
|
+
The current release line is packaged as precompiled native gems for common macOS and Linux x86_64 and ARM64 targets, with source builds still available as a fallback.
|
|
20
|
+
Recent scheduler work has also tightened compatibility around the Ruby scheduler hooks that matter in practice: network I/O, DNS resolution, sleep/timeouts, nested scheduling, and process waiting.
|
|
21
|
+
|
|
19
22
|
Just use `Fiber.set_scheduler` to set an instance `Itsi::Scheduler` as a scheduler to opt in to this IO weaving behavior
|
|
20
23
|
*automatically* for all blocking IO.
|
|
21
24
|
|