@mmmbuto/nexuscrew 0.9.6 → 0.9.8
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.
- package/CHANGELOG.md +42 -0
- package/frontend/dist/assets/index-C2A08iwn.js +93 -0
- package/frontend/dist/assets/index-CM1TECdp.css +32 -0
- package/frontend/dist/index.html +2 -2
- package/frontend/dist/version.json +1 -1
- package/lib/cli/commands.js +32 -3
- package/lib/cli/fleet-service.js +44 -2
- package/lib/cli/service.js +49 -2
- package/lib/cli/stable-alias.js +49 -0
- package/lib/notify/routes.js +15 -1
- package/lib/update/manager.js +6 -0
- package/lib/update/runner.js +244 -2
- package/package.json +1 -1
- package/frontend/dist/assets/index-MdL-ZvnH.js +0 -93
- package/frontend/dist/assets/index-forYfgKZ.css +0 -32
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,48 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to NexusCrew are tracked here.
|
|
4
4
|
|
|
5
|
+
## 0.9.7 — 2026-08-18 — "Two Handles"
|
|
6
|
+
|
|
7
|
+
- **Selecting text in the terminal now has two draggable handles.** They mark
|
|
8
|
+
the start and the end of the selection and can be moved **after** the
|
|
9
|
+
selection is made — the gesture people already know from mobile terminals.
|
|
10
|
+
It works in a tile, in the popup and in the main session, because they share
|
|
11
|
+
one terminal.
|
|
12
|
+
|
|
13
|
+
The selection itself stays where it belongs: **inside the terminal
|
|
14
|
+
emulator**. The handles are a view recomputed from the emulator's own
|
|
15
|
+
selection on every render and scroll, never a remembered position — which is
|
|
16
|
+
how handles drift away from what they point at. Dragging one writes back
|
|
17
|
+
through the emulator's API rather than recalculating which cells are
|
|
18
|
+
selected.
|
|
19
|
+
|
|
20
|
+
Three cases decide whether this is usable rather than merely present, and
|
|
21
|
+
each is pinned by a test:
|
|
22
|
+
|
|
23
|
+
- dragging a handle past the edge **scrolls** and extends the selection,
|
|
24
|
+
because the range is held in buffer coordinates rather than screen ones —
|
|
25
|
+
but **not** inside a full-screen application, where scrolling belongs to
|
|
26
|
+
that application and taking it over would break it;
|
|
27
|
+
- the handle hangs **below** the point it sets and follows the finger by the
|
|
28
|
+
offset it was grabbed at, so the finger never has to cover the thing it is
|
|
29
|
+
positioning;
|
|
30
|
+
- the handles cannot cross each other, and the selection survives a redraw.
|
|
31
|
+
|
|
32
|
+
- **If the text underneath a live selection is overwritten, the interface now
|
|
33
|
+
says so.** A selection is held against buffer coordinates, so output that
|
|
34
|
+
rewrites those lines changes what a copy would produce while the reader still
|
|
35
|
+
has the old text in mind. That is a consequence of the design rather than a
|
|
36
|
+
defect — and consequences that a reader cannot see are the thing this project
|
|
37
|
+
keeps removing, so it is stated instead of left implicit.
|
|
38
|
+
|
|
39
|
+
The check reads only the rendered lines that intersect the selection, not the
|
|
40
|
+
whole selection on every frame; a test pins the **cost**, not just the
|
|
41
|
+
outcome, by asserting that output elsewhere reads nothing at all.
|
|
42
|
+
|
|
43
|
+
Declared limit: a change to selected lines that never enters a rendered frame
|
|
44
|
+
will not raise the notice. The indicator is a courtesy, not a correctness
|
|
45
|
+
gate, and everything visible passes through a render.
|
|
46
|
+
|
|
5
47
|
## 0.9.6 — 2026-08-18 — "Causes With Names"
|
|
6
48
|
|
|
7
49
|
The previous release fixed a blank panel, a service that hung on a terminal, and
|