Tags: aeroxy/drift
Tags
feat: multi-select files and folders in the web panel
- Range-aware selection reducer in App.tsx: plain click replaces,
Cmd/Ctrl-click toggles, Shift-click extends a range from the last
anchor; per-pane lastClickedRef cleared on path change/refresh/
disconnect/post-transfer
- FileRow: fix checkbox onChange that passed multi=false and silently
collapsed any existing selection; widen onSelect to
(name, { multi, range })
- Folders join the selection when a modifier key is held (Cmd/Ctrl/
Shift); plain click on a folder still navigates
- Toolbar: Copy buttons now show "Copy (N)" with a per-side "×" clear
affordance whenever the selection is non-empty
- Add multi-entry transfer integration test: seeds 2 files + 1 folder
on the client, sends them in one TransferRequest, asserts checksums
on the host receiver
- No backend changes — send_entries() and the receiver were already
plural since v0.1
feat: wss:// support, --allow-insecure-tls, --disable-ui, --daemon - Connect to remote drift servers over TLS (wss://) — works with any reverse proxy (caddy, nginx, cloudflare); bare host:port still defaults to ws:// for backward compat; path prefix supported for subpath mounts (e.g. wss://example.com/drift → wss://example.com/drift/ws) - Force ALPN to http/1.1 on all wss:// connections so WebSocket upgrade works correctly through HTTP/2-capable proxies; install aws-lc-rs CryptoProvider at startup so rustls 0.23 behaves on the first connect - --allow-insecure-tls: skip certificate verification for self-signed certs; available on all subcommands that take --target - --disable-ui: expose only /ws and omit the REST API and embedded frontend; safe to put on the public internet behind a reverse proxy - --daemon: spawn server in background, redirect stdio to ./drift.log in the current directory, detach from terminal process group on Unix; prints PID on exit so you can kill it later - Remove `serve` subcommand — just run `drift` to start the server; `drift serve` is gone, all flags live on the root command; test harness and Makefile updated accordingly
feat: frontend connection management and dynamic port - Connect to / disconnect from / switch remotes directly from the web UI without restarting the server; POST /api/connect and POST /api/disconnect drive the connection lifecycle from the browser - Toolbar shows "Connect to remote" when idle, hostname + fingerprint + disconnect button when connected, animated indicator while connecting - --port is now optional for `drift serve`; omitting it picks a free port and logs the actual address on startup - Formula/drift.rb added for Homebrew; bump targets keep version in sync across Cargo.toml, App.tsx, and the formula; `make update-formula` recomputes SHA256 after uploading a release zip - Fix: browser WebSocket now receives ConnectionStatus immediately on connect so the remote panel appears correctly when a connection is already live
PreviousNext