+30
CHANGELOG.md
+30
CHANGELOG.md
···
7
7
8
8
## [Unreleased]
9
9
10
+
## [1.0.0-rc.3] - 2025-09-06
11
+
12
+
### Added
13
+
- SQLite support for persistent caching and queue processing
14
+
- Rate limiting with semaphore-based concurrency control (`RESOLVER_MAX_CONCURRENT`)
15
+
- Timeout support for rate limit permit acquisition (`RESOLVER_MAX_CONCURRENT_TIMEOUT_MS`)
16
+
- SQLite queue adapter with work shedding capabilities (`QUEUE_SQLITE_MAX_SIZE`)
17
+
- Comprehensive error system with unique identifiers (e.g., `error-quickdid-config-1`)
18
+
- 12-factor app compliance with environment-only configuration
19
+
20
+
### Changed
21
+
- Configuration now exclusively uses environment variables (removed clap dependency)
22
+
- Command-line arguments limited to `--version` and `--help` only
23
+
- Improved error handling with strongly-typed errors using `thiserror` throughout
24
+
- Enhanced documentation with accurate configuration defaults and examples
25
+
- Updated README with complete architecture overview and deployment strategies
26
+
- Cache priority system: Redis → SQLite → Memory (first available)
27
+
28
+
### Fixed
29
+
- Error messages now consistently follow `error-quickdid-<domain>-<number>` format
30
+
- Configuration validation for all TTL and timeout values
31
+
- Documentation inconsistencies in CLAUDE.md development guide
32
+
- Queue adapter validation to include 'sqlite' option
33
+
34
+
### Removed
35
+
- `clap` crate dependency (replaced with simple argument handling)
36
+
- `anyhow!()` macro usage in favor of proper error types
37
+
- Command-line configuration options (following 12-factor methodology)
38
+
10
39
## [1.0.0-rc.2] - 2025-09-05
11
40
12
41
### Changed
···
51
80
- Unnecessary feature flags (axum macros, deadpool-redis script)
52
81
- 4 unused dependencies reducing compilation time
53
82
83
+
[1.0.0-rc.3]: https://tangled.sh/@smokesignal.events/quickdid/tree/v1.0.0-rc.3
54
84
[1.0.0-rc.2]: https://tangled.sh/@smokesignal.events/quickdid/tree/v1.0.0-rc.2
55
85
[1.0.0-rc.1]: https://tangled.sh/@smokesignal.events/quickdid/tree/v1.0.0-rc.1
+1
-1
Cargo.lock
+1
-1
Cargo.lock
+1
-1
Cargo.toml
+1
-1
Cargo.toml
+1
-1
Dockerfile
+1
-1
Dockerfile
···
19
19
LABEL org.opencontainers.image.licenses="MIT"
20
20
LABEL org.opencontainers.image.authors="Nick Gerakines <nick.gerakines@gmail.com>"
21
21
LABEL org.opencontainers.image.source="https://tangled.sh/@smokesignal.events/quickdid"
22
-
LABEL org.opencontainers.image.version="1.0.0-rc.2"
22
+
LABEL org.opencontainers.image.version="1.0.0-rc.3"
23
23
24
24
WORKDIR /app
25
25
COPY --from=builder /app/target/release/quickdid /app/quickdid
+1
-1
docs/production-deployment.md
+1
-1
docs/production-deployment.md
···
158
158
# Identifies your service to other AT Protocol services
159
159
# Default: Auto-generated with current version from Cargo.toml
160
160
# Format: quickdid/{version} (+https://github.com/smokesignal.events/quickdid)
161
-
USER_AGENT=quickdid/1.0.0-rc.2 (+https://quickdid.example.com)
161
+
USER_AGENT=quickdid/1.0.0-rc.3 (+https://quickdid.example.com)
162
162
163
163
# Custom DNS nameservers (comma-separated)
164
164
# Use for custom DNS resolution or to bypass local DNS