v0.3.0
🚀 Toolhive Registry Server v0.3.0 is live!
This release represents a major architectural step forward with database-backed storage, comprehensive authentication, and a more streamlined API surface.
Architecture & Storage
• Database-backed registry implementation replaces in-memory storage for better persistence and scalability
• Automatic database migrations run on startup—no manual intervention needed
• Added prime-db command for quick database initialization and testing
• Storage backend is now fully configurable
Authentication & Security
• Multi-provider authentication middleware supports various auth methods
• RFC 9728 protected resource metadata endpoint for standards-compliant auth discovery
• Authentication integration tests and comprehensive documentation added
• Auth package surface reduced for clearer, more maintainable API
Registry & API
• New managed registry type with full CRUD support (including DELETE endpoint)
• Publish endpoint implemented for managed registries
• Enhanced queries to list packages, remotes, and retrieve specific server versions
• Removed legacy v0 APIs and Toolhive format converters for a cleaner codebase
Developer Experience
• Shell scripts replaced with proper Go tests for better reliability
• Improved sync coordinator with decoupled status persistence
• Better type handling for UUIDs, timestamps, and text fields via sqlc
• Implementation structs made private to enforce proper API boundaries
Infrastructure & Dependencies
• Updated actions/checkout (v6), golangci-lint-action (v9.1.0)
• Added Claude Code automation with sub-agents for documentation and PR workflows
• Various dependency bumps including go-git (v5.16.4), smithy-go (v1.23.2)
👋 Welcome to our newest contributor @jonburdo! 🥳
🔗 Full changelog: v0.2.0...v0.3.0
- Remove ToToolHive converters by @dmartinol in #139
- Add queries to list packages and remotes by @blkt in #138
- Update actions/setup-go digest to 4dc6199 by @renovate[bot] in #142
- Move in-memory service implementation by @blkt in #143
- Updating test to create UpstreamRegistry by @dmartinol in #144
- Remove API handler for Toolhive format by @dmartinol in #146
- Removing v0 APIs by @dmartinol in #149
- Override sqlc types for UUID, timestamps, and text by @blkt in #148
- Update module github.com/aws/smithy-go to v1.23.2 by @renovate[bot] in #152
- Make implementation structs private by @jonburdo in #141
- Replace shell script with go tests by @blkt in #153
- Update actions/checkout action to v6 by @renovate[bot] in #150
- Add query to retrieve a single version of a server by @blkt in #158
- Update golangci/golangci-lint-action action to v9.1.0 by @renovate[bot] in #159
- Modify
RegistryServiceinterface by @blkt in #160 - adds sub-agents for claude and entry in main .md to use them by @ChrisJBurns in #163
- enables claude action by @ChrisJBurns in #164
- Update anthropics/claude-code-action digest to 6902c22 by @renovate[bot] in #166
- Update actions/checkout action to v6 by @renovate[bot] in #168
- Update anthropics/claude-code-action digest to 798cf09 by @renovate[bot] in #167
- Update index.docker.io/library/golang Docker digest to 6981837 by @renovate[bot] in #169
- Update module github.com/go-git/go-git/v5 to v5.16.4 by @renovate[bot] in #170
- Add storage backend configuration to config file by @dmjb in #151
- Add db-backed implementation of
RegistryServiceby @blkt in #161 - Add authentication configuration types by @jhrozek in #171
- Update github/codeql-action digest to fdbfb4d by @renovate[bot] in #173
- Review model by @rdimitrov in #174
- Add the managed registry type by @rdimitrov in #176
- Add multi-provider authentication middleware by @jhrozek in #175
- Wire API layer and Service layer by @blkt in #177
- Add database service support to app by @blkt in #179
- Update anthropics/claude-code-action digest to a7e4c51 by @renovate[bot] in #186
- Implement a DELETE endpoint for managed registries by @rdimitrov in #182
- Add RFC 9728 protected resource metadata endpoint by @jhrozek in #183
- Improve ShouldSync return type by @jonburdo in #172
- Decouple sync co-ordinator from status persistence by @dmjb in #178
- Add an authentication middleware factory by @jhrozek in #187
- Run migrations automatically on app startup by @dmjb in #145
- Fix config tests by @blkt in #189
- Integrate auth middleware into app builder and router by @jhrozek in #192
- Add integration tests for auth middleware by @jhrozek in #195
- Add
prime-dbsubcommand by @blkt in #190 - Add authentication documentation to README by @jhrozek in #197
- Reduce auth package surface by @jhrozek in #196
- Implement the publish endpoint by @rdimitrov in #188
New Contributors
Full Changelog: v0.2.0...v0.3.0