@domsync/win32-arm64 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +19 -1
  2. package/domsync.exe +0 -0
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -240,7 +240,7 @@ With `--json` the output is one object with `ok` and `servers`; each server carr
240
240
  | `1` | Usage or configuration error, local file read/write error, log write error, or another run holding the config lock. |
241
241
  | `2` | Validation error in a local list or a provider file, including `--strict` warnings, and an empty final list. |
242
242
  | `3` | SSH connection, authentication, host-key or remote read/write/verify error. |
243
- | `4` | Update error, including the Homebrew/npm refusal. |
243
+ | `4` | Update error, including the Homebrew/npm refusal; uninstall cancelled or left to a package manager. |
244
244
  | `5` | A post-write command failed (non-zero exit or transport error). |
245
245
 
246
246
  When several things fail, the exit code is the code of the first failure in execution order: server order, then file order. A server that cannot be dialled counts at its own position, before its pairs, so a connection error beats a later pair failure. A failure in one pair or one server never stops the rest.
@@ -275,6 +275,24 @@ domsync установлен через npm. Обновление: npm i -g @dom
275
275
 
276
276
  So update those installs with `brew upgrade --cask domsync` or `npm i -g @domsync/cli@latest`. The same refusal applies to `domsync update --check`, because install detection happens first. A standalone binary is replaced atomically after its archive has been checked against `checksums.txt`.
277
277
 
278
+ ## Uninstall
279
+
280
+ `domsync uninstall` removes what the installation created: the binary and the cache directory (`os.UserCacheDir()/domsync`, which holds the update cache). It never touches your config, domain lists or log file.
281
+
282
+ ```sh
283
+ domsync uninstall # asks: Удалить domsync и созданные им файлы? [y/N]
284
+ domsync uninstall --yes # no question, for scripts
285
+ domsync --dry-run uninstall # print what would be removed and change nothing
286
+ ```
287
+
288
+ Enter, or anything other than `y`, `yes`, `д` or `да`, cancels and exits with code 4. Without a terminal the question cannot be asked, so `--yes` is required.
289
+
290
+ The install method is detected the same way as for updates. Homebrew and npm installs are removed through the package manager: domsync runs `brew uninstall --cask --zap domsync` or `npm uninstall -g @domsync/cli` itself and then removes the cache directory. The cask declares a `zap` stanza for that directory, so `brew uninstall --cask --zap domsync` is just as complete without this command. On Windows a running npm package cannot delete itself, so the command prints the npm command and exits 4; the same happens when `brew` or `npm` is not on `PATH`, except the cache directory is still removed.
291
+
292
+ The empty `<config>.domsync.lock` beside a config is a run lock, not an install artifact; it goes away with the config.
293
+
294
+ With `--json` the output is the usual envelope, with `removed` listing the paths and `dry_run` set for `--dry-run`.
295
+
278
296
  ## Output
279
297
 
280
298
  The default human report is Russian and looks like this for a run that changed one pair:
package/domsync.exe CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@domsync/win32-arm64",
3
- "version": "1.2.0",
3
+ "version": "1.3.0",
4
4
  "packageManager": "npm@11.5.1+sha512.232e6f5d9e799bcb486920b3e9ba907fdf96e576cf7e8c9446c8162e33a416096a1d37a9e910d9a918f6b1f606791c99bc6bb61ee2569b496ec74af13d0dbd95",
5
5
  "os": "win32",
6
6
  "cpu": "arm64",