23 lines
961 B
Markdown
23 lines
961 B
Markdown
# smartupdate improvement plan
|
|
|
|
Status: implemented.
|
|
|
|
## Goal
|
|
|
|
Make update checks predictable, cache-safe, and testable without changing the core public API shape.
|
|
|
|
## Implementation
|
|
|
|
- Fix CLI cache behavior so cached update information still reports an available update and time-based cache entries expire.
|
|
- Cache both `update-available` and `up-to-date` results so normal repeated CLI runs do not keep hitting the registry.
|
|
- Store cache context with each entry and only reuse cache entries for the same package, current version, and registry.
|
|
- Preserve more useful error types for invalid package names, invalid versions, package lookup failures, and registry failures.
|
|
- Await and catch changelog opening so browser failures do not become unhandled promise rejections.
|
|
- Replace live npm tests with deterministic registry stubs and ephemeral cache storage.
|
|
- Remove unused dependency surface.
|
|
|
|
## Verification
|
|
|
|
- Run `pnpm test`.
|
|
- Run `pnpm run build`.
|