diff --git a/CHANGELOG.md b/CHANGELOG.md index bb65dca..811b48b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,15 +7,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [3.0.0] - 2026-08-20 + ### Summary -Private Repos - via private grasp service (grasp-08) - initially self-hosted only but the intention is to allow providers to offer it as service. +ngit-grasp 3.0.0 adds self-hosted private repositories through GRASP-08, with +the protocol designed so hosting providers can offer managed private services +later. -Proactive Sync Plus (GRASP-03) - a big enabler for maintainer based moderation and simplier and more performant git nostr clients. +Proactive Sync Plus (GRASP-03) enables maintainer-based moderation and simpler, +more performant Nostr Git clients. -Performance and Security fixes - along with other improvements; immediate upgrade recommended; some breaking changes make v2-v3 a one way street! +This major release also includes significant security and performance fixes; +an immediate upgrade is recommended. Its Git storage migration makes the +v2-to-v3 upgrade one-way without restoring a pre-upgrade snapshot. -Expect a bit of downtime as a git data migraiton is performed on startup. The largest grasp service relay.ngit.dev took 50mins. +Plan for downtime while the first v3 startup migrates Git data. The largest +GRASP service tested so far, `relay.ngit.dev`, took approximately 51 minutes. ### Breaking changes @@ -563,7 +571,8 @@ defensive limits explicit and operator-configurable. Initial release of ngit-grasp, a GRASP relay implementation in Rust. -[unreleased]: https://gitworkshop.dev/npub15qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exs5cyejr/ngit-grasp/compare/v2.1.2...HEAD +[unreleased]: https://gitworkshop.dev/npub15qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exs5cyejr/ngit-grasp/compare/v3.0.0...HEAD +[3.0.0]: https://gitworkshop.dev/npub15qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exs5cyejr/ngit-grasp/compare/v2.1.2...v3.0.0 [2.1.2]: https://gitworkshop.dev/npub15qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exs5cyejr/ngit-grasp/compare/v2.1.1...v2.1.2 [2.1.1]: https://gitworkshop.dev/npub15qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exs5cyejr/ngit-grasp/compare/v2.1.0...v2.1.1 [2.1.0]: https://gitworkshop.dev/npub15qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exs5cyejr/ngit-grasp/compare/v2.0.0...v2.1.0 diff --git a/Cargo.lock b/Cargo.lock index 45a0310..5fd94eb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1319,7 +1319,7 @@ checksum = "f0efe882e02d206d8d279c20eb40e03baf7cb5136a1476dc084a324fbc3ec42d" [[package]] name = "ngit-grasp" -version = "2.1.2" +version = "3.0.0" dependencies = [ "anyhow", "async-trait", diff --git a/Cargo.toml b/Cargo.toml index 9adb5fd..6b4be40 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "ngit-grasp" -version = "2.1.2" +version = "3.0.0" edition = "2021" authors = ["ngit-grasp contributors"] license = "MIT" diff --git a/nix/module.nix b/nix/module.nix index 8a8b1c6..d6f0eb7 100644 --- a/nix/module.nix +++ b/nix/module.nix @@ -6,7 +6,7 @@ let # Build ngit-grasp package (shared across all instances) ngit-grasp = pkgs.rustPlatform.buildRustPackage { pname = "ngit-grasp"; - version = "2.1.2"; + version = "3.0.0"; src = ../.; NGIT_BUILD_REVISION = ngitGraspSourceRevision; cargoLock = {