Files
tao.chenandClaude 6e6c79f43a docs: add v0.0.1 changelog entry
Records the initial development release covering all features
shipped in commits cd1aba6 / bc1828b / 3476517: manual snapshot
commit flow, sidebar timeline, cell diff, restore, skip-on-duplicate,
Local + S3 storage adapters, S3ConnectionError diagnostics, envelope-
embedded snapshot files, traitlets config, and the DEVELOPER.md
manual.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-21 18:28:22 +08:00

31 lines
1.8 KiB
Markdown

# Changelog
<!-- <START NEW CHANGELOG ENTRY> -->
## v0.0.1
2026-07-21 — initial development release.
### Added
- Manual snapshot commit (notebook toolbar button / command palette `snapshot:commit`) with name + description dialog
- Left sidebar timeline (`SnapshotPanel`) showing all snapshots for the current notebook
- Cell-level diff (cell-id matching first, LCS fallback; jsdiff for line diff)
- One-click restore via `model.fromJSON()` + `context.save()` (no page refresh)
- Skip-on-duplicate: commits with the same content hash as the most recent version raise a warning instead of saving
- Storage adapter layer with Local (atomic tmp+rename) and S3 (boto3 via optional `[s3]` extra)
- `S3ConnectionError` with friendly diagnostic at startup (classifies endpoint unreachable / credentials missing / permission denied / create failed)
- Snapshot files embed an envelope (id, timestamp, name, description, hash, size, notebook) so the manifest is fully rebuildable
- traitlets config: `storage_type`, `local_root`, `s3_*` (with `S3_*` env-var fallbacks for the credentials)
- Manual refresh button in the sidebar (workaround for occasional S3 list lag behind the commit)
- Three REST endpoints under `/snapshot/notebook-version/`: `commit` / `list` / `content`
- `DEVELOPER.md` covering architecture, build, debug, and packaging
### Changed
- Renamed `minio` storage to `s3` (boto3 is the generic S3 SDK; the same config covers AWS S3 and MinIO)
- The "save snapshot" toolbar button now uses `panel.toolbar.addItem` (was previously routed through `docRegistry.addWidgetExtension`, which created a new main-area tab instead of a toolbar button)
### Fixed
- `Notification.warning` for skipped commits now uses `autoClose: false` and includes a `console.log` diagnostic plus a fallback warning for unexpected response shapes
<!-- <END NEW CHANGELOG ENTRY> -->