diff options
| author | DanConwayDev <DanConwayDev@protonmail.com> | 2026-01-12 14:05:51 +0000 |
|---|---|---|
| committer | DanConwayDev <DanConwayDev@protonmail.com> | 2026-01-12 14:05:51 +0000 |
| commit | 817ce37a5ee8d6279a44cf8cce3cc6a1e4bab576 (patch) | |
| tree | 9fd5a6d3969afc33baa900bdab25bff81c5a83a4 /README.md | |
| parent | f25eea8cc3b940cbcaa96224485826bfaae82449 (diff) | |
feat: add uploadpack.allowFilter support for GRASP-01 compliance
Add mandatory uploadpack.allowFilter capability to support partial clones
and fetches as required by GRASP-01 specification. This enables efficient
git operations for bandwidth-constrained clients (e.g., browser-based git
clients like git-natural-api).
Changes:
- Add uploadpack.allowFilter=true to git subprocess configuration
- Update SmartGitServer test helper with filter support
- Add integration tests for filter capability advertisement and functionality
- Update documentation to reflect filter as required capability
Tests verify:
- Filter capability is advertised in info/refs
- Filtered clones with blob:none work correctly
- Filtered fetches with tree:0 work correctly
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 1 |
1 files changed, 1 insertions, 0 deletions
| @@ -114,6 +114,7 @@ See [GRASP-02 Proactive Sync](docs/explanation/grasp-02-proactive-sync.md) for f | |||
| 114 | - ✅ Push validation against Nostr state events | 114 | - ✅ Push validation against Nostr state events |
| 115 | - ✅ Multi-maintainer support via recursive maintainer sets | 115 | - ✅ Multi-maintainer support via recursive maintainer sets |
| 116 | - ✅ Support for `refs/nostr/<event-id>` for PRs | 116 | - ✅ Support for `refs/nostr/<event-id>` for PRs |
| 117 | - ✅ Git capabilities: `allow-tip-sha1-in-want`, `allow-reachable-sha1-in-want`, `uploadpack.allowFilter` | ||
| 117 | - ✅ CORS support for web-based Git clients | 118 | - ✅ CORS support for web-based Git clients |
| 118 | - ✅ NIP-11 relay information document | 119 | - ✅ NIP-11 relay information document |
| 119 | - ✅ **Purgatory**: Events without git data held for 30 minutes, auto-released when data arrives | 120 | - ✅ **Purgatory**: Events without git data held for 30 minutes, auto-released when data arrives |