mirror of
https://github.com/ModernRelay/omnigraph.git
synced 2026-06-09 01:35:18 +02:00
Prepare v0.2.0 release
This commit is contained in:
parent
6feae8cd34
commit
5daeae7571
6 changed files with 101 additions and 15 deletions
8
Cargo.lock
generated
8
Cargo.lock
generated
|
|
@ -4505,7 +4505,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "omnigraph"
|
||||
version = "0.1.0"
|
||||
version = "0.2.0"
|
||||
dependencies = [
|
||||
"arrow-array",
|
||||
"arrow-cast",
|
||||
|
|
@ -4542,7 +4542,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "omnigraph-cli"
|
||||
version = "0.1.0"
|
||||
version = "0.2.0"
|
||||
dependencies = [
|
||||
"assert_cmd",
|
||||
"clap",
|
||||
|
|
@ -4562,7 +4562,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "omnigraph-compiler"
|
||||
version = "0.1.0"
|
||||
version = "0.2.0"
|
||||
dependencies = [
|
||||
"ahash",
|
||||
"arrow-array",
|
||||
|
|
@ -4583,7 +4583,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "omnigraph-server"
|
||||
version = "0.1.0"
|
||||
version = "0.2.0"
|
||||
dependencies = [
|
||||
"axum",
|
||||
"cedar-policy",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "omnigraph-cli"
|
||||
version = "0.1.0"
|
||||
version = "0.2.0"
|
||||
edition = "2024"
|
||||
description = "CLI for the Omnigraph graph database."
|
||||
license = "MIT"
|
||||
|
|
@ -10,9 +10,9 @@ name = "omnigraph"
|
|||
path = "src/main.rs"
|
||||
|
||||
[dependencies]
|
||||
omnigraph = { path = "../omnigraph", version = "0.1.0" }
|
||||
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.1.0" }
|
||||
omnigraph-server = { path = "../omnigraph-server", version = "0.1.0" }
|
||||
omnigraph = { path = "../omnigraph", version = "0.2.0" }
|
||||
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.2.0" }
|
||||
omnigraph-server = { path = "../omnigraph-server", version = "0.2.0" }
|
||||
clap = { workspace = true }
|
||||
color-eyre = { workspace = true }
|
||||
serde = { workspace = true }
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "omnigraph-compiler"
|
||||
version = "0.1.0"
|
||||
version = "0.2.0"
|
||||
edition = "2024"
|
||||
description = "Schema/query compiler for Omnigraph. Zero Lance dependency."
|
||||
license = "MIT"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "omnigraph-server"
|
||||
version = "0.1.0"
|
||||
version = "0.2.0"
|
||||
edition = "2024"
|
||||
description = "HTTP server for the Omnigraph graph database."
|
||||
license = "MIT"
|
||||
|
|
@ -10,8 +10,8 @@ name = "omnigraph-server"
|
|||
path = "src/main.rs"
|
||||
|
||||
[dependencies]
|
||||
omnigraph = { path = "../omnigraph", version = "0.1.0" }
|
||||
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.1.0" }
|
||||
omnigraph = { path = "../omnigraph", version = "0.2.0" }
|
||||
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.2.0" }
|
||||
axum = { workspace = true }
|
||||
clap = { workspace = true }
|
||||
color-eyre = { workspace = true }
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "omnigraph"
|
||||
version = "0.1.0"
|
||||
version = "0.2.0"
|
||||
edition = "2024"
|
||||
description = "Lance-native graph database with git-style branching."
|
||||
license = "MIT"
|
||||
|
|
@ -10,7 +10,7 @@ default = []
|
|||
failpoints = ["dep:fail", "fail/failpoints"]
|
||||
|
||||
[dependencies]
|
||||
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.1.0" }
|
||||
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.2.0" }
|
||||
lance = { workspace = true }
|
||||
lance-datafusion = { workspace = true }
|
||||
lance-file = { workspace = true }
|
||||
|
|
@ -41,7 +41,7 @@ async-trait = { workspace = true }
|
|||
url = { workspace = true }
|
||||
|
||||
[dev-dependencies]
|
||||
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.1.0" }
|
||||
omnigraph-compiler = { path = "../omnigraph-compiler", version = "0.2.0" }
|
||||
tokio = { workspace = true }
|
||||
lance-namespace-impls = { workspace = true }
|
||||
serial_test = "3"
|
||||
|
|
|
|||
86
docs/releases/v0.2.0.md
Normal file
86
docs/releases/v0.2.0.md
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
# Omnigraph v0.2.0
|
||||
|
||||
Omnigraph v0.2.0 focuses on day-to-day operability: safer schema evolution, more capable mutation queries, better local and remote ergonomics, and a documented HTTP surface for clients and tooling.
|
||||
|
||||
This release is especially relevant if you are running Omnigraph locally on RustFS or using the CLI and server together as a graph application backend.
|
||||
|
||||
## Highlights
|
||||
|
||||
### Schema planning and apply
|
||||
|
||||
Schema changes can now move from planning to execution with first-class CLI and server support.
|
||||
|
||||
- Added `omnigraph schema apply --schema ...` alongside `schema plan`
|
||||
- Added `POST /schema/apply` on the server
|
||||
- Added policy support for schema application through the `schema_apply` action
|
||||
- Persisted accepted schema updates as part of a supported apply flow
|
||||
|
||||
This makes schema evolution an actual product capability instead of a plan-only diagnostic.
|
||||
|
||||
### Safer schema apply on live repos
|
||||
|
||||
After the initial schema-apply rollout, the apply path was hardened to avoid clobbering concurrent writes and to preserve indexes during table rewrites.
|
||||
|
||||
- Blocks writes while schema apply is in progress
|
||||
- Verifies source heads before publishing rewritten tables
|
||||
- Rebuilds the full expected index set after rewrite operations
|
||||
- Keeps schema apply constrained to repos whose only branch is `main`
|
||||
|
||||
The result is a much more defensible v1 schema migration path.
|
||||
|
||||
### Multi-statement mutations
|
||||
|
||||
Mutation queries can now contain multiple sequential statements that execute atomically within one run.
|
||||
|
||||
Example:
|
||||
|
||||
```gq
|
||||
query add_and_link($name: String, $age: I32, $friend: String) {
|
||||
insert Person { name: $name, age: $age }
|
||||
insert Knows { from: $name, to: $friend }
|
||||
}
|
||||
```
|
||||
|
||||
This is a meaningful step toward richer write-side workflows without forcing multiple client round trips.
|
||||
|
||||
### OpenAPI support
|
||||
|
||||
The server now publishes an OpenAPI document at `/openapi.json`.
|
||||
|
||||
- Added schema-backed endpoint documentation for the Omnigraph HTTP API
|
||||
- Documented request and response types for the current server surface
|
||||
- Made the published spec reflect runtime auth mode, so open local deployments are documented correctly
|
||||
|
||||
This makes Omnigraph easier to integrate with generated clients, inspection tools, and API consumers that want a machine-readable contract.
|
||||
|
||||
### CLI and export ergonomics
|
||||
|
||||
Several rough edges in the CLI were fixed.
|
||||
|
||||
- Export now streams instead of buffering the full snapshot in memory first
|
||||
- Load summaries now report actual loaded row counts
|
||||
- Alias handling no longer steals legitimate first arguments
|
||||
- `commit show` matches the documented `--uri` usage
|
||||
- Remote and local usage are more consistent for common admin flows
|
||||
|
||||
## Additional Improvements
|
||||
|
||||
- RustFS CI is now scoped to relevant changes instead of burning time on unrelated pull requests
|
||||
- README and install docs were tightened around public binary install behavior
|
||||
- The local RustFS bootstrap remains aligned with the rolling `edge` binary channel
|
||||
|
||||
## Upgrade Notes
|
||||
|
||||
- If you use local or remote schema administration, prefer `schema plan` before `schema apply`
|
||||
- `schema apply` is intentionally conservative in v1 and rejects repos with non-`main` branches
|
||||
- If policy is enabled, make sure admin actors are allowed to perform `schema_apply`
|
||||
- If you rely on published binaries, this release is the point where stable installers can pick up schema apply and the newer CLI/runtime behavior without using `edge`
|
||||
|
||||
## Included Changes
|
||||
|
||||
- PR #2: CLI ergonomics and streamed export output
|
||||
- PR #5: schema apply command and policy support
|
||||
- PR #7: schema apply concurrency and index-preservation hardening
|
||||
- PR #4: multi-statement mutations
|
||||
- PR #1: OpenAPI generation and auth-aware `/openapi.json`
|
||||
- PR #8: RustFS CI scoping improvements
|
||||
Loading…
Add table
Add a link
Reference in a new issue