macOS arm64: bundled lftp 4.9.3 rejects utf-8 (libiconv 1.11) – SFTP upload fails

You are shipping Wappler-Mac-arm64-7.9.8.dmg with an old and obsolete library. This results in Wappler without Homebrew being unable to upload or work with utf-8 files. Upon uploading anything:

Start upload for index.php
utf-8: this encoding is not supported.
Upload completed successfully...

The logging hangs immediately at the upload, and of course the file itself is corrupted on the Apache server and the page goes down. Not good.

macOS arm64: bundled lftp 4.9.3 rejects utf-8 (libiconv 1.11) – SFTP upload fails

  1. In the post include:
    • Wappler version: 7.9.8
    • macOS version: 27
    • The exact error: utf-8: this encoding is not supported
    • The path inside the app:
      /Applications/Wappler.app/Contents/Resources/app/Shared/DMXzone/dmxAppCreator/UI/bin/osx_arm64/lftp/lftp
    • That the same binary is present in the official Wappler-Mac-arm64-7.9.8.dmg
    • The --version output showing libiconv 1.11
    • The reproduction command you ran against the binary in the DMG

Here are the specifics:

christophergreimes@Jasmine ~ % "/Volumes/Wappler 7.9.8/Wappler.app/Contents/Resources/app/Shared/DMXzone/dmxAppCreator/UI/bin/osx_arm64/lftp/lftp" --version
"/Volumes/Wappler 7.9.8/Wappler.app/Contents/Resources/app/Shared/DMXzone/dmxAppCreator/UI/bin/osx_arm64/lftp/lftp" -c "set file:charset utf-8"
LFTP | Version 4.9.3 | Copyright (c) 1996-2020 Alexander V. Lukyanov

LFTP is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with LFTP. If not, see http://www.gnu.org/licenses/.

Send bug reports and questions to the mailing list lftp@uniyar.ac.ru.

Libraries used: Expat 2.7.4, idn2 2.3.8, libiconv 1.11, OpenSSL LibreSSL 3.3.6, OpenSSL 3.6.1, Readline 8.3,
zlib 1.2.12
utf-8: this encoding is not supported.
christophergreimes@Jasmine ~ %

Confirmed from the installer you downloaded today.

The binary inside Wappler-Mac-arm64-7.9.8.dmg is identical in behavior to the one installed on your Mac:

  • It reports Libraries used: … libiconv 1.11 …
  • It returns utf-8: this encoding is not supported.

That defective lftp is what Wappler shipped in the official macOS arm64 package for version 7.9.8.

Should be easy to fix. Call me if you need to. I keep my cell with me 24/7

Chris

+1 206 321-2400

The part that worries me most here is Wappler reporting a successful upload after lftp has already printed an encoding error.

Even if the bundled lftp gets fixed, I'd want the deployment process to catch failures like this instead of silently continuing.

One useful check might be comparing the local and remote file hashes after a failed upload. That would also help separate a filename encoding issue from actual file content corruption.

Has anyone checked whether lftp returns a non-zero exit status in this case, or whether Wappler is simply missing it?