spikard 0.15.6.pre.rc.7 → 0.15.6.pre.rc.9
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/LICENSE +21 -0
- data/README.md +183 -0
- data/ext/spikard_rb/native/Cargo.lock +23 -58
- data/ext/spikard_rb/native/Cargo.toml +6 -6
- data/lib/spikard/version.rb +2 -2
- data/lib/spikard_rb.so +0 -0
- metadata +4 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: dc5e6e866bb0da62f9d639d600515d01ca002a31146a5f2b96bc46e3e0690a1c
|
|
4
|
+
data.tar.gz: '042081c88dd5b3efe999fa5c55ef077cab479dfe1fce715cb13c0dd2da759e27'
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7319a04c8312c8fcf660cf3197ee51eba7ff14087c3bcd2afcc20e72e469085b848e7f534973961fcf3ea351230d2a37c6f0fab907c00a1d00326e7542199645
|
|
7
|
+
data.tar.gz: 2c4bc7b96bfefc4776b17ef6c7c149efc1d96711f828e5794a95396a7d2996986104955f8221109cef6e19cce67e938f2a285a7b4e3be6b6f8b3f4e376388fc1
|
data/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Na'aman Hirschfeld
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
data/README.md
ADDED
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
# Spikard
|
|
2
|
+
|
|
3
|
+
<div align="center" style="display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin: 20px 0;">
|
|
4
|
+
<!-- Built with -->
|
|
5
|
+
<a href="https://github.com/kreuzberg-dev/alef">
|
|
6
|
+
<img src="https://img.shields.io/badge/Bindings-alef%20%D7%90-007ec6" alt="Bindings">
|
|
7
|
+
</a>
|
|
8
|
+
|
|
9
|
+
<!-- Language Bindings -->
|
|
10
|
+
<a href="https://crates.io/crates/spikard">
|
|
11
|
+
<img src="https://img.shields.io/crates/v/spikard?label=Rust&color=007ec6" alt="Rust">
|
|
12
|
+
</a>
|
|
13
|
+
<a href="https://pypi.org/project/spikard/">
|
|
14
|
+
<img src="https://img.shields.io/pypi/v/spikard?label=Python&color=007ec6" alt="Python">
|
|
15
|
+
</a>
|
|
16
|
+
<a href="https://www.npmjs.com/package/@spikard/node">
|
|
17
|
+
<img src="https://img.shields.io/npm/v/@spikard/node?label=Node.js&color=007ec6" alt="Node.js">
|
|
18
|
+
</a>
|
|
19
|
+
<a href="https://www.npmjs.com/package/@spikard/node-wasm">
|
|
20
|
+
<img src="https://img.shields.io/npm/v/@spikard/node-wasm?label=WASM&color=007ec6" alt="WASM">
|
|
21
|
+
</a>
|
|
22
|
+
<a href="https://rubygems.org/gems/spikard">
|
|
23
|
+
<img src="https://img.shields.io/gem/v/spikard?label=Ruby&color=007ec6" alt="Ruby">
|
|
24
|
+
</a>
|
|
25
|
+
<a href="https://packagist.org/packages/goldziher/spikard">
|
|
26
|
+
<img src="https://img.shields.io/packagist/v/goldziher/spikard?label=PHP&color=007ec6" alt="PHP">
|
|
27
|
+
</a>
|
|
28
|
+
<a href="https://hex.pm/packages/spikard">
|
|
29
|
+
<img src="https://img.shields.io/hexpm/v/spikard?label=Elixir&color=007ec6" alt="Elixir">
|
|
30
|
+
</a>
|
|
31
|
+
<a href="https://central.sonatype.com/artifact/dev.spikard/spikard">
|
|
32
|
+
<img src="https://img.shields.io/maven-central/v/dev.spikard/spikard?label=Java&color=007ec6" alt="Java">
|
|
33
|
+
</a>
|
|
34
|
+
<a href="https://github.com/Goldziher/spikard/releases">
|
|
35
|
+
<img src="https://img.shields.io/github/v/tag/Goldziher/spikard?label=Go&color=007ec6" alt="Go">
|
|
36
|
+
</a>
|
|
37
|
+
<a href="https://www.nuget.org/packages/Spikard/">
|
|
38
|
+
<img src="https://img.shields.io/nuget/v/Spikard?label=C%23&color=007ec6" alt="C#">
|
|
39
|
+
</a>
|
|
40
|
+
<a href="https://central.sonatype.com/artifact/dev.spikard/spikard">
|
|
41
|
+
<img src="https://img.shields.io/maven-central/v/dev.spikard/spikard?label=Kotlin&color=007ec6" alt="Kotlin">
|
|
42
|
+
</a>
|
|
43
|
+
<a href="https://pub.dev/packages/spikard">
|
|
44
|
+
<img src="https://img.shields.io/pub/v/spikard?label=Dart&color=007ec6" alt="Dart">
|
|
45
|
+
</a>
|
|
46
|
+
<a href="https://github.com/Goldziher/spikard/tree/main/packages/swift">
|
|
47
|
+
<img src="https://img.shields.io/badge/Swift-Spikard-007ec6" alt="Swift">
|
|
48
|
+
</a>
|
|
49
|
+
<a href="https://github.com/Goldziher/spikard/tree/main/packages/zig">
|
|
50
|
+
<img src="https://img.shields.io/badge/Zig-spikard-007ec6" alt="Zig">
|
|
51
|
+
</a>
|
|
52
|
+
<a href="https://github.com/Goldziher/spikard/tree/main/crates/spikard-ffi">
|
|
53
|
+
<img src="https://img.shields.io/badge/C-FFI-007ec6" alt="C FFI">
|
|
54
|
+
</a>
|
|
55
|
+
<a href="https://github.com/Goldziher/homebrew-tap">
|
|
56
|
+
<img src="https://img.shields.io/badge/Homebrew-007ec6?logo=homebrew&logoColor=white" alt="Homebrew">
|
|
57
|
+
</a>
|
|
58
|
+
|
|
59
|
+
<!-- Project Info -->
|
|
60
|
+
<a href="https://github.com/Goldziher/spikard/blob/main/LICENSE">
|
|
61
|
+
<img src="https://img.shields.io/badge/License-MIT-007ec6" alt="License">
|
|
62
|
+
</a>
|
|
63
|
+
<a href="https://github.com/Goldziher/spikard/tree/main/docs">
|
|
64
|
+
<img src="https://img.shields.io/badge/Docs-spikard-007ec6" alt="Documentation">
|
|
65
|
+
</a>
|
|
66
|
+
</div>
|
|
67
|
+
|
|
68
|
+
<div align="center" style="display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; margin: 28px 0 24px;">
|
|
69
|
+
<a href="https://discord.gg/pXxagNK2zN">
|
|
70
|
+
<img height="22" src="https://img.shields.io/badge/Discord-Chat-007ec6?logo=discord&logoColor=white" alt="Join Discord">
|
|
71
|
+
</a>
|
|
72
|
+
</div>
|
|
73
|
+
|
|
74
|
+
Rust-centric polyglot HTTP framework with OpenAPI/AsyncAPI/GraphQL/JSON-RPC codegen, tower-http middleware, and fixture-driven cross-language testing. Ruby bindings via Magnus with idiomatic Ruby API.
|
|
75
|
+
|
|
76
|
+
## What This Package Provides
|
|
77
|
+
|
|
78
|
+
- **HTTP application core** — typed routing, request data extraction, validation, lifecycle hooks, and Tower middleware from the Rust engine.
|
|
79
|
+
- **Spec-driven work** — OpenAPI, AsyncAPI, GraphQL SDL, JSON-RPC, and SQL-to-HTTP codegen are shared across bindings.
|
|
80
|
+
- **Cross-language parity** — generated bindings use the same DTOs, fixtures, and error model, so behavior does not drift between runtimes.
|
|
81
|
+
- **Native integration** — no sidecar server required; each package calls the Rust core through its language-native bridge.
|
|
82
|
+
- **Ruby package** — Magnus-backed native extension with Ruby route objects.
|
|
83
|
+
|
|
84
|
+
## Installation
|
|
85
|
+
|
|
86
|
+
**gem:**
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
gem install spikard
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
**Bundler:**
|
|
93
|
+
|
|
94
|
+
```ruby
|
|
95
|
+
gem 'spikard'
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### System Requirements
|
|
99
|
+
|
|
100
|
+
- **Ruby 3.2+** required
|
|
101
|
+
|
|
102
|
+
## Quick Start
|
|
103
|
+
|
|
104
|
+
```ruby
|
|
105
|
+
require "spikard"
|
|
106
|
+
|
|
107
|
+
app = Spikard::App.new
|
|
108
|
+
|
|
109
|
+
app.get("/users/:id") do |params, _query, _body|
|
|
110
|
+
{ id: params[:id].to_i, name: "Alice" }
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
app.post("/users") do |_params, _query, body|
|
|
114
|
+
user = body
|
|
115
|
+
{ id: user["id"], name: user["name"] }
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
app.run(config: { port: 8000 })
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## Features
|
|
122
|
+
|
|
123
|
+
- **HTTP routing** — type-safe route definitions with path, query, and body parameter validation
|
|
124
|
+
- **OpenAPI / AsyncAPI / GraphQL / JSON-RPC** — code generation and spec parsing built in
|
|
125
|
+
- **Tower middleware** — compression, rate limiting, timeouts, auth (JWT/API key), static files
|
|
126
|
+
- **Lifecycle hooks** — `onRequest`, `preValidation`, `preHandler`, `onResponse`, `onError`
|
|
127
|
+
- **Fixture-driven testing** — shared JSON fixtures drive tests across all language bindings
|
|
128
|
+
- **Polyglot** — single Rust core, thin bindings for Python, Node.js, Ruby, PHP, Elixir, Go, Java, C#, Kotlin, Dart, Gleam, WASM, Swift, Zig, and C FFI
|
|
129
|
+
|
|
130
|
+
## Routing
|
|
131
|
+
|
|
132
|
+
```ruby
|
|
133
|
+
require "spikard"
|
|
134
|
+
|
|
135
|
+
app = Spikard::App.new
|
|
136
|
+
|
|
137
|
+
app.get("/health") { |_params, _query, _body| { status: "ok" } }
|
|
138
|
+
app.post("/users") { |_params, _query, body| body }
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
## Validation
|
|
142
|
+
|
|
143
|
+
```ruby
|
|
144
|
+
require "spikard"
|
|
145
|
+
|
|
146
|
+
PaymentSchema = Dry::Schema.Params do
|
|
147
|
+
required(:id).filled(:string)
|
|
148
|
+
required(:amount).filled(:float)
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
app = Spikard::App.new
|
|
152
|
+
|
|
153
|
+
app.post("/payments") do |_params, _query, body|
|
|
154
|
+
PaymentSchema.call(body)
|
|
155
|
+
end
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
## Middleware
|
|
159
|
+
|
|
160
|
+
```ruby
|
|
161
|
+
require "spikard"
|
|
162
|
+
|
|
163
|
+
app = Spikard::App.new
|
|
164
|
+
|
|
165
|
+
app.on_request do |request|
|
|
166
|
+
puts "#{request[:method]} #{request[:path]}"
|
|
167
|
+
request
|
|
168
|
+
end
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
## Documentation
|
|
172
|
+
|
|
173
|
+
- **[Repository](https://github.com/Goldziher/spikard)** — source code, examples, and contributing guide
|
|
174
|
+
- **[Examples](https://github.com/Goldziher/spikard/tree/main/crates/spikard-http/examples)** — working server examples
|
|
175
|
+
- **[Issues](https://github.com/Goldziher/spikard/issues)** — bug reports and feature requests
|
|
176
|
+
|
|
177
|
+
## Contributing
|
|
178
|
+
|
|
179
|
+
Contributions are welcome. See [CONTRIBUTING.md](https://github.com/Goldziher/spikard/blob/main/CONTRIBUTING.md).
|
|
180
|
+
|
|
181
|
+
## License
|
|
182
|
+
|
|
183
|
+
MIT License — see [LICENSE](https://github.com/Goldziher/spikard/blob/main/LICENSE) for details.
|
|
@@ -266,7 +266,7 @@ dependencies = [
|
|
|
266
266
|
"sha1",
|
|
267
267
|
"sync_wrapper",
|
|
268
268
|
"tokio",
|
|
269
|
-
"tokio-tungstenite
|
|
269
|
+
"tokio-tungstenite",
|
|
270
270
|
"tower",
|
|
271
271
|
"tower-layer",
|
|
272
272
|
"tower-service",
|
|
@@ -294,9 +294,9 @@ dependencies = [
|
|
|
294
294
|
|
|
295
295
|
[[package]]
|
|
296
296
|
name = "axum-test"
|
|
297
|
-
version = "20.
|
|
297
|
+
version = "20.1.0"
|
|
298
298
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
299
|
-
checksum = "
|
|
299
|
+
checksum = "43c6a2f1d97ee33c39f13dacc0f84ae781a9c2ed373a75bad1129094f5a7c4bd"
|
|
300
300
|
dependencies = [
|
|
301
301
|
"anyhow",
|
|
302
302
|
"axum",
|
|
@@ -318,7 +318,7 @@ dependencies = [
|
|
|
318
318
|
"serde_json",
|
|
319
319
|
"serde_urlencoded",
|
|
320
320
|
"tokio",
|
|
321
|
-
"tokio-tungstenite
|
|
321
|
+
"tokio-tungstenite",
|
|
322
322
|
"tower",
|
|
323
323
|
"url",
|
|
324
324
|
"uuid",
|
|
@@ -806,9 +806,9 @@ dependencies = [
|
|
|
806
806
|
|
|
807
807
|
[[package]]
|
|
808
808
|
name = "displaydoc"
|
|
809
|
-
version = "0.2.
|
|
809
|
+
version = "0.2.6"
|
|
810
810
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
811
|
-
checksum = "
|
|
811
|
+
checksum = "1ac70aa55017e108007fbaf5aa0f54b021c98f92ff8af59d42eda9da96e3dd4f"
|
|
812
812
|
dependencies = [
|
|
813
813
|
"proc-macro2",
|
|
814
814
|
"quote",
|
|
@@ -933,9 +933,9 @@ dependencies = [
|
|
|
933
933
|
|
|
934
934
|
[[package]]
|
|
935
935
|
name = "expect-json"
|
|
936
|
-
version = "1.
|
|
936
|
+
version = "1.11.0"
|
|
937
937
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
938
|
-
checksum = "
|
|
938
|
+
checksum = "5e80819dbfe83c8a651f5344b08910d0037dac72988aef27ee4e6bedd7ae2e33"
|
|
939
939
|
dependencies = [
|
|
940
940
|
"chrono",
|
|
941
941
|
"email_address",
|
|
@@ -951,9 +951,9 @@ dependencies = [
|
|
|
951
951
|
|
|
952
952
|
[[package]]
|
|
953
953
|
name = "expect-json-macros"
|
|
954
|
-
version = "1.
|
|
954
|
+
version = "1.11.0"
|
|
955
955
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
956
|
-
checksum = "
|
|
956
|
+
checksum = "c0637949cd816934f3b7aab44ff98e7ec1fb903c379e07dcb9eac943ec33499e"
|
|
957
957
|
dependencies = [
|
|
958
958
|
"proc-macro2",
|
|
959
959
|
"quote",
|
|
@@ -1882,9 +1882,9 @@ checksum = "47e1ffaa40ddd1f3ed91f717a33c8c0ee23fff369e3aa8772b9605cc1d22f4c3"
|
|
|
1882
1882
|
|
|
1883
1883
|
[[package]]
|
|
1884
1884
|
name = "memchr"
|
|
1885
|
-
version = "2.8.
|
|
1885
|
+
version = "2.8.1"
|
|
1886
1886
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1887
|
-
checksum = "
|
|
1887
|
+
checksum = "6b947ae49db0d222b1dbc6b113ce7248a3fc3a6ca21b696717bfc000ba4484d8"
|
|
1888
1888
|
|
|
1889
1889
|
[[package]]
|
|
1890
1890
|
name = "micromap"
|
|
@@ -3026,9 +3026,9 @@ dependencies = [
|
|
|
3026
3026
|
|
|
3027
3027
|
[[package]]
|
|
3028
3028
|
name = "spikard"
|
|
3029
|
-
version = "0.15.6-rc.
|
|
3029
|
+
version = "0.15.6-rc.9"
|
|
3030
3030
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3031
|
-
checksum = "
|
|
3031
|
+
checksum = "16feef8fff949bccef447296bc7f504bb08c24ead73b9e657d1d0707c68307f7"
|
|
3032
3032
|
dependencies = [
|
|
3033
3033
|
"anyhow",
|
|
3034
3034
|
"axum",
|
|
@@ -3046,9 +3046,9 @@ dependencies = [
|
|
|
3046
3046
|
|
|
3047
3047
|
[[package]]
|
|
3048
3048
|
name = "spikard-core"
|
|
3049
|
-
version = "0.15.6-rc.
|
|
3049
|
+
version = "0.15.6-rc.9"
|
|
3050
3050
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3051
|
-
checksum = "
|
|
3051
|
+
checksum = "cc1e8bafd019a774e6678cc1291e2a77cfe8fbc009ae9d1d5ffc03d0ffe3c105"
|
|
3052
3052
|
dependencies = [
|
|
3053
3053
|
"anyhow",
|
|
3054
3054
|
"base64",
|
|
@@ -3072,9 +3072,9 @@ dependencies = [
|
|
|
3072
3072
|
|
|
3073
3073
|
[[package]]
|
|
3074
3074
|
name = "spikard-graphql"
|
|
3075
|
-
version = "0.15.6-rc.
|
|
3075
|
+
version = "0.15.6-rc.9"
|
|
3076
3076
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3077
|
-
checksum = "
|
|
3077
|
+
checksum = "db1743fd403ebb0a0aefdf83ae722936881002b5da7f28831908e1f804d4c143"
|
|
3078
3078
|
dependencies = [
|
|
3079
3079
|
"async-graphql",
|
|
3080
3080
|
"axum",
|
|
@@ -3093,9 +3093,9 @@ dependencies = [
|
|
|
3093
3093
|
|
|
3094
3094
|
[[package]]
|
|
3095
3095
|
name = "spikard-http"
|
|
3096
|
-
version = "0.15.6-rc.
|
|
3096
|
+
version = "0.15.6-rc.9"
|
|
3097
3097
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3098
|
-
checksum = "
|
|
3098
|
+
checksum = "1d9452c13e5d8d61bc7a7aa453dd55c662d328b33e5a77390bf00fb4a2149e82"
|
|
3099
3099
|
dependencies = [
|
|
3100
3100
|
"ahash",
|
|
3101
3101
|
"anyhow",
|
|
@@ -3135,7 +3135,7 @@ dependencies = [
|
|
|
3135
3135
|
"tower_governor",
|
|
3136
3136
|
"tracing",
|
|
3137
3137
|
"tracing-subscriber",
|
|
3138
|
-
"tungstenite
|
|
3138
|
+
"tungstenite",
|
|
3139
3139
|
"url",
|
|
3140
3140
|
"urlencoding",
|
|
3141
3141
|
"utoipa",
|
|
@@ -3146,7 +3146,7 @@ dependencies = [
|
|
|
3146
3146
|
|
|
3147
3147
|
[[package]]
|
|
3148
3148
|
name = "spikard-rb"
|
|
3149
|
-
version = "0.15.6-rc.
|
|
3149
|
+
version = "0.15.6-rc.9"
|
|
3150
3150
|
dependencies = [
|
|
3151
3151
|
"magnus",
|
|
3152
3152
|
"serde",
|
|
@@ -3398,18 +3398,6 @@ dependencies = [
|
|
|
3398
3398
|
"tokio",
|
|
3399
3399
|
]
|
|
3400
3400
|
|
|
3401
|
-
[[package]]
|
|
3402
|
-
name = "tokio-tungstenite"
|
|
3403
|
-
version = "0.28.0"
|
|
3404
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3405
|
-
checksum = "d25a406cddcc431a75d3d9afc6a7c0f7428d4891dd973e4d54c56b46127bf857"
|
|
3406
|
-
dependencies = [
|
|
3407
|
-
"futures-util",
|
|
3408
|
-
"log",
|
|
3409
|
-
"tokio",
|
|
3410
|
-
"tungstenite 0.28.0",
|
|
3411
|
-
]
|
|
3412
|
-
|
|
3413
3401
|
[[package]]
|
|
3414
3402
|
name = "tokio-tungstenite"
|
|
3415
3403
|
version = "0.29.0"
|
|
@@ -3419,7 +3407,7 @@ dependencies = [
|
|
|
3419
3407
|
"futures-util",
|
|
3420
3408
|
"log",
|
|
3421
3409
|
"tokio",
|
|
3422
|
-
"tungstenite
|
|
3410
|
+
"tungstenite",
|
|
3423
3411
|
]
|
|
3424
3412
|
|
|
3425
3413
|
[[package]]
|
|
@@ -3639,23 +3627,6 @@ version = "0.2.5"
|
|
|
3639
3627
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3640
3628
|
checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
|
|
3641
3629
|
|
|
3642
|
-
[[package]]
|
|
3643
|
-
name = "tungstenite"
|
|
3644
|
-
version = "0.28.0"
|
|
3645
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3646
|
-
checksum = "8628dcc84e5a09eb3d8423d6cb682965dea9133204e8fb3efee74c2a0c259442"
|
|
3647
|
-
dependencies = [
|
|
3648
|
-
"bytes",
|
|
3649
|
-
"data-encoding",
|
|
3650
|
-
"http",
|
|
3651
|
-
"httparse",
|
|
3652
|
-
"log",
|
|
3653
|
-
"rand 0.9.4",
|
|
3654
|
-
"sha1",
|
|
3655
|
-
"thiserror 2.0.18",
|
|
3656
|
-
"utf-8",
|
|
3657
|
-
]
|
|
3658
|
-
|
|
3659
3630
|
[[package]]
|
|
3660
3631
|
name = "tungstenite"
|
|
3661
3632
|
version = "0.29.0"
|
|
@@ -3756,12 +3727,6 @@ version = "2.1.3"
|
|
|
3756
3727
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3757
3728
|
checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
|
|
3758
3729
|
|
|
3759
|
-
[[package]]
|
|
3760
|
-
name = "utf-8"
|
|
3761
|
-
version = "0.7.6"
|
|
3762
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3763
|
-
checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
|
|
3764
|
-
|
|
3765
3730
|
[[package]]
|
|
3766
3731
|
name = "utf8_iter"
|
|
3767
3732
|
version = "1.0.4"
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
[package]
|
|
2
2
|
name = "spikard-rb"
|
|
3
|
-
version = "0.15.6-rc.
|
|
3
|
+
version = "0.15.6-rc.9"
|
|
4
4
|
edition = "2024"
|
|
5
5
|
license = "MIT"
|
|
6
6
|
description = "Rust-centric multi-language HTTP framework with polyglot bindings"
|
|
7
7
|
readme = false
|
|
8
|
-
keywords = ["
|
|
8
|
+
keywords = ["framework", "http", "polyglot", "rust", "web"]
|
|
9
9
|
categories = ["text-processing"]
|
|
10
10
|
|
|
11
11
|
[lib]
|
|
@@ -17,10 +17,10 @@ crate-type = ["cdylib"]
|
|
|
17
17
|
magnus = "0.8"
|
|
18
18
|
serde = { version = "1", features = ["derive"] }
|
|
19
19
|
serde_json = "1"
|
|
20
|
-
spikard = { version = "0.15.6-rc.
|
|
21
|
-
spikard-core = { version = "0.15.6-rc.
|
|
22
|
-
spikard-graphql = { version = "0.15.6-rc.
|
|
23
|
-
spikard-http = { version = "0.15.6-rc.
|
|
20
|
+
spikard = { version = "0.15.6-rc.9", features = ["di"] }
|
|
21
|
+
spikard-core = { version = "0.15.6-rc.9" }
|
|
22
|
+
spikard-graphql = { version = "0.15.6-rc.9" }
|
|
23
|
+
spikard-http = { version = "0.15.6-rc.9" }
|
|
24
24
|
tokio = { version = "1", features = ["rt-multi-thread"] }
|
|
25
25
|
[package.metadata.cargo-machete]
|
|
26
26
|
ignored = ["tokio"]
|
data/lib/spikard/version.rb
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# This file is auto-generated by alef — DO NOT EDIT.
|
|
2
|
-
# alef:hash:
|
|
2
|
+
# alef:hash:4a955e9e10ab7d7501c4157e7bf79dc4d0d2ea5e1d84ebf2b6acf6a960e2be3f
|
|
3
3
|
# To regenerate: alef generate
|
|
4
4
|
# To verify freshness: alef verify --exit-code
|
|
5
5
|
# Issues & docs: https://github.com/kreuzberg-dev/alef
|
|
6
6
|
# frozen_string_literal: true
|
|
7
7
|
|
|
8
8
|
module Spikard
|
|
9
|
-
VERSION = "0.15.6.pre.rc.
|
|
9
|
+
VERSION = "0.15.6.pre.rc.9"
|
|
10
10
|
end
|
data/lib/spikard_rb.so
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: spikard
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.15.6.pre.rc.
|
|
4
|
+
version: 0.15.6.pre.rc.9
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Na'aman Hirschfeld <nhirschfeld@gmail.com>
|
|
@@ -43,6 +43,8 @@ extensions:
|
|
|
43
43
|
- ext/spikard_rb/extconf.rb
|
|
44
44
|
extra_rdoc_files: []
|
|
45
45
|
files:
|
|
46
|
+
- LICENSE
|
|
47
|
+
- README.md
|
|
46
48
|
- Steepfile
|
|
47
49
|
- ext/spikard_rb/extconf.rb
|
|
48
50
|
- ext/spikard_rb/native/Cargo.lock
|
|
@@ -57,7 +59,7 @@ homepage: https://github.com/Goldziher/spikard
|
|
|
57
59
|
licenses:
|
|
58
60
|
- MIT
|
|
59
61
|
metadata:
|
|
60
|
-
keywords: http,
|
|
62
|
+
keywords: framework,http,polyglot,rust,web
|
|
61
63
|
rubygems_mfa_required: 'true'
|
|
62
64
|
rdoc_options: []
|
|
63
65
|
require_paths:
|