github bren-wp/Ghost-FTP v0.20.4
Ghost FTP 0.20.4

one hour ago

Ghost FTP 0.20.4

Release cycle: 0.20.4 patch release candidate

Cycle date: 1 October 2026

0.20.4 follows published 0.20.3. This document does not assert publication: only an immutable v0.20.4 GitHub Release at the verified source SHA with the required assets establishes the release.

Changes in this cycle

CI runtime modernization

  • Move actions/checkout, actions/setup-node and actions/setup-go to the current v7 major train.
  • Move actions/setup-java to v6, android-actions/setup-android to v4 and gradle/actions/setup-gradle to v6.
  • Move actions/upload-artifact to v7 while retaining the same artifact names and required-path behavior.
  • Keep third-party actions that are already current, including reactivecircus/android-emulator-runner@v2.38.0.
  • Disable setup-go dependency caching in Quality and Windows hardening because the helper modules contain go.mod but intentionally no go.sum; this removes the misleading cache-restore warning without changing Go test behavior.

Vite build configuration

  • Replace __dirname in the ESM Vite config with fileURLToPath(import.meta.url) plus path.dirname.
  • Preserve the existing alias layout and chunking policy while removing Vite 8's native-config-loader compatibility warning.

Regression protection

  • Add .github/scripts/check-ci-runtime.mjs.
  • Fail Quality if obsolete first-party action majors return.
  • Fail Quality if setup-go caching is re-enabled for the current helper modules without a dependency-lock basis.
  • Fail Quality if Vite __dirname is reintroduced or ESM-safe directory resolution is removed.

Version and release integrity

  • Advance canonical metadata to 0.20.4 with previous version 0.20.3.
  • Advance Android versionCode to 211033.
  • Keep published v0.20.3 immutable.
  • Keep documentation screenshots pinned to the newest published release until release-proven replacements exist.

Publication requirements

The exact source intended for v0.20.4 must pass Ghost FTP quality, Ghost FTP protocol E2E, Ghost FTP native build, Ghost FTP Android and Validate Windows hardening on the same head SHA.

The canonical release must contain non-empty Windows portable/NSIS/MSI assets, Linux binary/AppImage/DEB/RPM assets, Android unsigned-production/installable-preview artifacts, source/documentation archives, native-QA evidence and SHA-256 checksums.

Stable status

0.20.4 remains in the pre-1.0 version train. Passing automated release gates does not by itself claim 1.0/FINAL product acceptance.

Don't miss a new Ghost-FTP release

NewReleases is sending notifications on new releases.