Ghost FTP 0.30.8
Release date: 5 October 2026
Ghost FTP 0.30.8 follows the published 0.30.7 release with a new dedicated macOS development client, broader Windows/Linux diagnostic hardening and Android runtime error redaction.
macOS development client
- Adds a dedicated SwiftUI application under
macos/for macOS 13+. - Adds validated FTP / explicit FTPS / SFTP connection profiles with protocol-specific default ports.
- Keeps profile persistence free of passwords and stores remembered passwords in macOS Keychain.
- Explicitly warns that plain FTP is unencrypted.
- Requires future FTPS sessions to validate the server certificate and hostname before file operations.
- Requires future SFTP sessions to verify the SSH host key before authentication or file operations.
- Adds TCP endpoint reachability checks that are deliberately not presented as successful FTP/FTPS/SFTP authentication.
- Adds Swift unit tests, a dedicated macOS CI gate and ad-hoc-signed preview application packaging.
- The published macOS artifact is clearly labeled Preview. It is not Developer ID signed/notarized and does not yet claim full production FTP/FTPS/SFTP transfer capability.
Windows and Linux diagnostic hardening
- Routes remaining Directory Diff failures through the shared redaction layer.
- Redacts external-editor open/stop/save diagnostics before presenting them to the user.
- Routes host-key prompt failures through centralized safe error handling.
- Redacts Settings shell-integration, Sync and import-dialog failures.
- Redacts Agent Bridge and Skills initialization/runtime UI failures.
- Extends interaction regression contracts so raw
String(error)/String(e)user-visible paths cannot silently return.
Android runtime diagnostic hardening
- Adds bounded sanitization for user-visible connection and transfer diagnostics.
- Removes the active session password from surfaced failure text.
- Redacts credential-bearing URL user-info and common secret/token diagnostic patterns.
- Preserves useful non-sensitive failure context.
- Adds JVM unit coverage and production-contract guards against raw
Throwable.messageregressions. - Keeps the existing non-secret Activity state, Autofill exclusion, lifecycle cancellation and SAF validation controls intact.
Cross-platform release verification
The exact 0.30.8 release source must pass:
- Ghost FTP quality
- Ghost FTP protocol E2E
- Ghost FTP native build for Windows and Linux
- Ghost FTP Android
- Validate Windows hardening
- Ghost FTP macOS
The canonical release workflow may publish v0.30.8 only from the exact verified main SHA and only after v0.30.7 is present.
Canonical packages
The release keeps the verified Windows, Linux and Android package set from the existing canonical workflow and additionally publishes:
GhostFTP-macOS-v0.30.8-Preview.zipGhostFTP-v0.30.8-macOS-Source.zip
The macOS ZIP is a development Preview artifact and must not be confused with a notarized production package.