Release 1.3.2
Interactive installer: prompt before replacing an existing install or overwriting an existing config, reading answers from /dev/tty so it works under 'curl ... | sh'. Falls back to the prior non-interactive contract when no terminal is available. MOVE_FORCE=1 skips all prompts; new MOVE_RESEED_CONFIG=1 reseeds the config unattended (old file kept as .bak). Fix: install.sh no longer wipes a working install before downloading. The tree is built in a staging dir and swapped into place only once complete, so a failed download/extract/build leaves the existing install intact.
This commit is contained in:
@@ -5,6 +5,35 @@ All notable changes to `move` are documented here.
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [1.3.2] - 2026-08-17
|
||||
|
||||
### Added
|
||||
- `install.sh` is now interactive. When it finds an existing install and a
|
||||
controlling terminal is available, it reports what's there and asks before
|
||||
replacing it, instead of leaving `MOVE_FORCE` as the only control. If a
|
||||
config file already exists it asks separately whether to reseed it from the
|
||||
shipped defaults. Both questions are asked before anything is downloaded or
|
||||
deleted, so declining changes nothing.
|
||||
- `MOVE_RESEED_CONFIG=1` overwrites the user config with the shipped defaults
|
||||
without prompting, for unattended use. The previous file is kept as
|
||||
`config.json.bak`; the same backup is written when reseeding is confirmed
|
||||
at the prompt.
|
||||
|
||||
### Changed
|
||||
- `MOVE_FORCE=1` now means "skip every prompt and reinstall unconditionally".
|
||||
It deliberately does not touch the user config, so automation that
|
||||
reinstalls the CLI can't take customizations down with it.
|
||||
- Existing-install detection looks for the install tree and the wrapper, not
|
||||
just the `.installed-version` marker, so a half-finished or hand-moved
|
||||
install is caught rather than silently overwritten.
|
||||
|
||||
### Fixed
|
||||
- Installing a *different* version over an existing one used to wipe and
|
||||
replace it with no warning; only an exact version match was ever reported.
|
||||
That case now prompts. With no terminal (CI, cron, container builds) the
|
||||
previous non-interactive behavior is preserved exactly: an identical
|
||||
version is a no-op, a different version is replaced.
|
||||
|
||||
## [1.3.1] - 2026-08-14
|
||||
|
||||
### Added
|
||||
@@ -126,6 +155,7 @@ Initial release.
|
||||
- Source split into `src/{move,cli,config,keeper}.ts`.
|
||||
- `bin` entry + shebang so `bun link` registers `move` globally.
|
||||
|
||||
[1.3.2]: https://gitea.cahlen.com/nokeo08/Move/compare/v1.3.1...v1.3.2
|
||||
[1.3.1]: https://gitea.cahlen.com/nokeo08/Move/compare/v1.3.0...v1.3.1
|
||||
[1.3.0]: https://gitea.cahlen.com/nokeo08/Move/compare/v1.2.0...v1.3.0
|
||||
[1.2.0]: https://gitea.cahlen.com/nokeo08/Move/compare/v1.1.1...v1.2.0
|
||||
|
||||
Reference in New Issue
Block a user