chore: Bump version to 1.0.0-rc.1
Release candidate for V1.0.0 with complete IndieWeb support. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
72
CHANGELOG.md
72
CHANGELOG.md
@@ -7,6 +7,78 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
## [1.0.0-rc.1] - 2025-11-24
|
||||||
|
|
||||||
|
### Release Candidate for V1.0.0
|
||||||
|
First release candidate with complete IndieWeb support. This milestone implements the full V1 specification with IndieAuth authentication and Micropub posting capabilities.
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- **Phase 1: Secure Token Management**
|
||||||
|
- Bearer token storage with Argon2id hashing
|
||||||
|
- Automatic token expiration (90 days default)
|
||||||
|
- Token revocation endpoint (`POST /micropub?action=revoke`)
|
||||||
|
- Admin interface for token management with creation, viewing, and revocation
|
||||||
|
- Comprehensive test coverage for token operations (14 tests)
|
||||||
|
|
||||||
|
- **Phase 2: IndieAuth Token Endpoint**
|
||||||
|
- Token endpoint (`POST /indieauth/token`) for access token issuance
|
||||||
|
- Authorization endpoint (`POST /indieauth/authorize`) for consent flow
|
||||||
|
- PKCE verification for authorization code exchange
|
||||||
|
- Token verification endpoint (`GET /indieauth/token`) for clients
|
||||||
|
- Proper OAuth 2.0/IndieAuth spec compliance
|
||||||
|
- Client credential validation and scope enforcement
|
||||||
|
- Test suite for token and authorization endpoints (13 tests)
|
||||||
|
|
||||||
|
- **Phase 3: Micropub Endpoint**
|
||||||
|
- Micropub endpoint (`POST /micropub`) for creating posts
|
||||||
|
- Support for both JSON and form-encoded requests
|
||||||
|
- Bearer token authentication with scope validation
|
||||||
|
- Content validation and sanitization
|
||||||
|
- Post creation with automatic timestamps
|
||||||
|
- Location header with post URL in responses
|
||||||
|
- Comprehensive error handling with proper HTTP status codes
|
||||||
|
- Integration tests for complete authentication flow (11 tests)
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Admin interface now includes token management section
|
||||||
|
- Database schema extended with `tokens` table for secure token storage
|
||||||
|
- Authentication system now supports both admin sessions and bearer tokens
|
||||||
|
- Authorization flow integrated with existing IndieAuth authentication
|
||||||
|
|
||||||
|
### Security
|
||||||
|
- Bearer tokens hashed with Argon2id (same as passwords)
|
||||||
|
- Tokens support automatic expiration
|
||||||
|
- Scope validation enforces `create` permission for posting
|
||||||
|
- PKCE prevents authorization code interception
|
||||||
|
- Token verification validates both hash and expiration
|
||||||
|
|
||||||
|
### Standards Compliance
|
||||||
|
- IndieAuth specification (W3C) for authentication and authorization
|
||||||
|
- Micropub specification (W3C) for posting interface
|
||||||
|
- OAuth 2.0 bearer token authentication
|
||||||
|
- Proper HTTP status codes and error responses
|
||||||
|
- Location header for created resources
|
||||||
|
|
||||||
|
### Testing
|
||||||
|
- 77 total tests (all passing)
|
||||||
|
- Complete coverage of token management, IndieAuth endpoints, and Micropub
|
||||||
|
- Integration tests verify end-to-end flows
|
||||||
|
- Error case coverage for validation and authentication failures
|
||||||
|
|
||||||
|
### Documentation
|
||||||
|
- Implementation reports for all three phases
|
||||||
|
- Architecture reviews documenting design decisions
|
||||||
|
- API contracts specified in docs/design/api-contracts.md
|
||||||
|
- Test coverage documented in implementation reports
|
||||||
|
|
||||||
|
### Related Standards
|
||||||
|
- ADR-023: Micropub V1 Implementation Strategy
|
||||||
|
- W3C IndieAuth Specification
|
||||||
|
- W3C Micropub Specification
|
||||||
|
|
||||||
|
### Notes
|
||||||
|
This is a release candidate for testing. Stable 1.0.0 will be released after testing period and any necessary fixes.
|
||||||
|
|
||||||
## [0.9.5] - 2025-11-23
|
## [0.9.5] - 2025-11-23
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|||||||
@@ -153,5 +153,5 @@ def create_app(config=None):
|
|||||||
|
|
||||||
# Package version (Semantic Versioning 2.0.0)
|
# Package version (Semantic Versioning 2.0.0)
|
||||||
# See docs/standards/versioning-strategy.md for details
|
# See docs/standards/versioning-strategy.md for details
|
||||||
__version__ = "0.9.5"
|
__version__ = "1.0.0-rc.1"
|
||||||
__version_info__ = (0, 9, 5)
|
__version_info__ = (1, 0, 0, "rc", 1)
|
||||||
|
|||||||
Reference in New Issue
Block a user