Implement BBolt ImportEventsFromReader for migration (v0.48.1)
Some checks failed
Go / build-and-release (push) Has been cancelled

- Add import-export.go with full JSONL import support for bbolt
- Remove Import/Export/ImportEventsFromReader stubs from stubs.go
- Includes batched write flush after import completion
- Progress logging every 5 seconds during import

Files modified:
- pkg/bbolt/import-export.go: New file with import functionality
- pkg/bbolt/stubs.go: Remove implemented stubs
- pkg/version/version: v0.48.0 -> v0.48.1

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
woikos
2026-01-06 06:57:06 +01:00
parent 48a2b97b7e
commit d363f5da04
3 changed files with 193 additions and 26 deletions

View File

@@ -5,7 +5,6 @@ package bbolt
import (
"context"
"errors"
"io"
"time"
"next.orly.dev/pkg/database"
@@ -94,30 +93,6 @@ func (b *B) CheckForDeleted(ev *event.E, admins [][]byte) error {
return nil // Not deleted by default
}
// Import imports events from a reader.
func (b *B) Import(rr io.Reader) {
// TODO: Implement
}
// Export exports events to a writer.
func (b *B) Export(c context.Context, w io.Writer, pubkeys ...[]byte) {
// TODO: Implement
}
// ImportEventsFromReader imports events from a JSONL reader.
func (b *B) ImportEventsFromReader(ctx context.Context, rr io.Reader) error {
return errNotImplemented
}
// ImportEventsFromStrings imports events from JSON strings.
func (b *B) ImportEventsFromStrings(ctx context.Context, eventJSONs []string, policyManager interface {
CheckPolicy(action string, ev *event.E, pubkey []byte, remote string) (bool, error)
}) error {
return errNotImplemented
}
// GetSubscription gets a user's subscription.
func (b *B) GetSubscription(pubkey []byte) (*database.Subscription, error) {
return nil, errNotImplemented