github bren-wp/Ghost-FTP v0.95.18
Ghost FTP 0.95.18

one hour ago

Ghost FTP 0.95.18 — IIS LIST compatibility, fail-closed FTP inventory

Implemented source behavior

  • Recognize strict MS-DOS-style IIS FTP LIST rows for files and directories, including Unicode filenames and spaces, checked 64-bit file sizes and validated DOS date / 12-hour clock syntax.
  • Continue parsing existing Unix LIST records. Reject unknown/malformed rows as an error instead of silently omitting remote files. Preserve safe rejection in recursive delete and existence/conflict probes.
  • Tests for valid IIS file/directory, dot entries, leap days, overflow, invalid times, path separators and mixed-good/bad listings.
  • Dedicated real FTP socket E2E (pyftpdlib ports 2123/2124) emits emulated IIS LIST data and verifies that valid remote rows parse while malformed mixed listings fail closed. This is NOT a genuine Microsoft IIS test.

QA required before release

  • Rust formatter/workspace, real local FTP/explicit FTPS/SFTP E2E, Windows native hardening, Android instrumented smoke/APK, macOS suite and Windows/Linux packaged binaries all green for one exact SHA.
  • A real Windows IIS FTP server interoperability test is NOT YET VERIFIED. Parser unit tests and Linux FTP fixture E2E are not a substitute.
  • README screenshots must remain genuine running-app captures; 75 concept screens do not prove pixel parity.

Outstanding FileZilla Client parity

  • FEAT/MLSD and active FTP modes PORT/EPRT, IPv6/NAT matrix, real IIS/ProFTPD/Pure-FTPd, proxies and network wizard.
  • Real Android SAF lifecycle/provider acceptance (#127), Android/macOS account OAuth and secure token vault (#128), real macOS FTPS/SFTP.
  • Full all-platform interaction and visual acceptance.

Previous published version: v0.95.17. This is a development candidate, not a released version.

Don't miss a new Ghost-FTP release

NewReleases is sending notifications on new releases.