resolvespec (1.3.0)
Published 2026-10-01 19:47:51 +00:00 by warkanum
Installation
[registry]
default = "gitea"
[registries.gitea]
index = "sparse+https://git.warky.dev/api/packages/wdevs/cargo/" # Sparse index
# index = "https://git.warky.dev/wdevs/_cargo-index.git" # Git
[net]
git-fetch-with-cli = truecargo add resolvespec@1.3.0About this package
Client for ResolveSpec (JSON body) and FunctionSpec endpoints
resolvespec (Rust)
Rust client for ResolveSpec (JSON body) and FunctionSpec. Async (reqwest + tokio). MSRV 1.80.
Clients
| Type | Constructor | Methods |
|---|---|---|
ResolveSpecClient |
new(base_url) / from_builder(ClientBuilder) |
get_metadata read create update delete |
FuncSpecClient |
new(base_url) / from_builder(ClientBuilder) |
query query_list request |
ClientBuilder::new(url).token().header().timeout().http_client(). Precedence: Content-Type < custom headers < bearer token.
ResolveSpec
RecordId:Int/Str→ URL,Many(Vec<String>)→ body (Fromimpls provided).Options(Default+ struct update), optional fields areOption/emptyVec.- Result:
Response{success, data: serde_json::Value, metadata};resp.decode::<T>().
FunctionSpec
- Routes are server-defined: pass the
path. Params = BTreeMap<String, Param>→ query string (Param::List→ repeated keys).FuncSpecOptions→X-*headers:filters,search_filters,custom_sql_where,custom_sql_or,sort,limit,offset,distinct,skip_count,skip_cache,response_format.query_listfillsmetadatafromContent-Range; 206 is success.
Server quirks
sortis raw SQL in ORDER BY (client sendscol ASC|DESC).- One search operator per column.
- Values starting
ZIP_/__are base64-decoded by the server. - Non-ASCII, control chars and edge spaces are auto-encoded (
ZIP_).
Errors
Error::Api { status, message, error: ApiError{code, message, detail, sql} }, Error::Http, Error::Json.
Test
cargo test
Dependencies
| ID | Version |
|---|---|
| base64 | ^0.22 |
| reqwest | ^0.12 |
| serde | ^1 |
| serde_json | ^1 |
| thiserror | ^1 |
| tokio | ^1 |
| wiremock | ^0.6 |
Details
2026-10-01 19:47:51 +00:00
Assets (1)
Versions (1)
View all
Cargo
1
MIT
20 KiB
resolvespec-1.3.0.crate
20 KiB
1.3.0
2026-10-01