Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to run in a path containing non-ASCII characters #4343

Open
clin1234 opened this issue Feb 6, 2025 · 1 comment
Open

Unable to run in a path containing non-ASCII characters #4343

clin1234 opened this issue Feb 6, 2025 · 1 comment
Labels

Comments

@clin1234
Copy link

clin1234 commented Feb 6, 2025

Description

When invoking liquidsoap whose absolute path contains non-ASCII characters, the following error occurs:

At line 2, char 0-106:

Error 14: Uncaught runtime error: type: not_found,
message: "File not found! Given path: C:\\\\Users\\\\\\215\\169\\215\\150\\215\\147\\215\\161\\\\scoop\\\\apps\\\\liquidsoap\\\\current\\\\libs\\\\stdlib.liq",

Even though the file is there:

❯ dir libs
 Volume in drive C is Blade 17
 Volume Serial Number is 4095-3808

 Directory of C:\Users\שזדס\scoop\apps\liquidsoap\current\libs

11/26/2024  10:06 AM    <DIR>          .
11/26/2024  07:16 PM    <DIR>          ..
11/26/2024  10:06 AM                 9 .gitignore
11/26/2024  10:06 AM            10,543 audio.liq
11/26/2024  10:06 AM            30,949 autocue.liq
11/26/2024  10:06 AM               875 clock.liq
11/26/2024  10:06 AM               239 dune
11/26/2024  10:06 AM             1,018 error.liq
11/26/2024  10:06 AM    <DIR>          extra
11/26/2024  10:06 AM            21,349 fades.liq
11/26/2024  10:06 AM            14,874 ffmpeg.liq
11/26/2024  10:06 AM             8,983 file.liq
11/26/2024  10:06 AM             1,381 getter.liq
11/26/2024  10:06 AM             7,762 hls.liq
11/26/2024  10:06 AM            24,307 http.liq
11/26/2024  10:06 AM            15,165 http_codes.liq
11/26/2024  10:06 AM             1,379 icecast.liq
11/26/2024  10:06 AM             5,017 io.liq
11/26/2024  10:06 AM               730 liquidsoap.liq
11/26/2024  10:06 AM            10,280 list.liq
11/26/2024  10:06 AM               898 log.liq
11/26/2024  10:06 AM               404 math.liq
11/26/2024  10:06 AM            17,353 medialib.liq
11/26/2024  10:06 AM             6,876 metadata.liq
11/26/2024  10:06 AM             1,726 null.liq
11/26/2024  10:06 AM            19,284 playlist.liq
11/26/2024  10:06 AM             1,818 predicate.liq
11/26/2024  10:06 AM             2,367 process.liq
11/26/2024  10:06 AM               114 profiler.liq
11/26/2024  10:06 AM            25,734 protocols.liq
11/26/2024  10:06 AM               727 ref.liq
11/26/2024  10:06 AM             4,174 replaygain.liq
11/26/2024  10:06 AM            10,063 request.liq
11/26/2024  10:06 AM               623 resolvers.liq
11/26/2024  10:06 AM             1,842 runtime.liq
11/26/2024  10:06 AM             1,114 server.liq
11/26/2024  10:06 AM             1,144 settings.liq
11/26/2024  10:06 AM               852 socket.liq
11/26/2024  10:06 AM             7,187 source.liq
11/26/2024  10:06 AM             3,088 sqlite.liq
11/26/2024  10:06 AM             1,542 stdlib.liq
11/26/2024  10:06 AM            11,856 string.liq
11/26/2024  10:06 AM             6,628 switches.liq
11/26/2024  10:06 AM             1,147 testing.liq
11/26/2024  10:06 AM             2,853 thread.liq
11/26/2024  10:06 AM             2,547 tracks.liq
11/26/2024  10:06 AM             1,721 utils.liq
11/26/2024  10:06 AM            23,700 video.liq

Steps to reproduce

  1. Unpack the package into a directory containing non-ASCII characters

Expected behavior

Display a help message

Liquidsoap version

Liquidsoap 2.3.0
Copyright (c) 2003-2024 Savonet team
Liquidsoap is open-source software, released under GNU General Public License.
See <http://liquidsoap.info> for more information.

Liquidsoap build config

* Liquidsoap version  : 2.3.0

 * Compilation options
   - Release build       : true
   - Git SHA             : (none)
   - OCaml version       : 4.14.1
   - OS type             : Win32
   - Libs versions       : angstrom=0.15.0 ao=0.2.4 base=v0.16.3 base.base_internalhash_types=v0.16.3 base.caml=v0.16.3 base.shadow_stdlib=v0.16.3 bigarray=[distributed with Ocaml] bigarray-compat=1.0.0 bigstringaf=0.9.1 bytes=[distributed with OCaml 4.02 or above] camlp-streams camomile.lib=2.0 cry=1.0.2 ctypes=0.22.0 ctypes-foreign=0.22.0 ctypes.stubs=0.22.0 curl=0.9.2 domain_shims dtools=0.4.5 dune-build-info=3.2.0 dune-private-libs.dune-section=3.2.0 dune-site=3.2.0 duppy=0.9.4 ffmpeg-av=1.2.1 ffmpeg-avcodec=1.2.1 ffmpeg-avdevice=1.2.1 ffmpeg-avfilter=1.2.1 ffmpeg-avutil=1.2.1 ffmpeg-swresample=1.2.1 ffmpeg-swscale=1.2.1 fileutils=0.6.4 gen=1.1 integers lastfm=0.3.4 liquidsoap-lang=2.3.0 liquidsoap-lang.console=2.3.0 liquidsoap_ao liquidsoap_builtins liquidsoap_core liquidsoap_ffmpeg liquidsoap_lastfm liquidsoap_ndi liquidsoap_optionals liquidsoap_portaudio liquidsoap_runtime liquidsoap_samplerate liquidsoap_srt liquidsoap_ssl liquidsoap_stereotool liquidsoap_xmlplaylist magic-mime=1.3.1 mem_usage=0.1.1 memtrace=v0.2.2 menhirLib=20230608 metadata=0.3.0 mm=0.8.6 mm.audio=0.8.6 mm.base=0.8.6 mm.image=0.8.6 mm.midi=0.8.6 mm.video=0.8.6 ndi portaudio=0.2.3 posix-base=2.0.2 posix-socket=2.0.2 posix-socket.constants=2.0.2 posix-socket.stubs=2.0.2 posix-socket.types=2.0.2 ppx_compare.runtime-lib=v0.16.0 ppx_hash.runtime-lib=v0.16.0 ppx_sexp_conv.runtime-lib=v0.16.0 re=1.11.0 samplerate=0.1.6 saturn_lockfree=0.4.1 sedlex=3.2 seq=[distributed with OCaml 4.07 or above] sexplib0=v0.16.0 srt=0.3.0 srt.constants=0.3.0 srt.stubs=0.3.0 srt.stubs.locked=0.3.0 srt.types=0.3.0 ssl=0.7.0 stdlib-shims=0.3.0 stereotool str=[distributed with Ocaml] stringext=1.6.0 threads=[distributed with Ocaml] threads.posix=[internal] unix=[distributed with Ocaml] uri=4.2.0 winsvc=1.0.1 xmlm=1.4.0 xmlplaylist=0.1.5
   - architecture        : amd64
   - host                : x86_64-w64-mingw32.static
   - target              : x86_64-w64-mingw32.static
   - system              : mingw64
   - ocamlopt_cflags     : -O2 -fno-strict-aliasing -fwrapv -mms-bitfields
   - native_c_compiler   : x86_64-w64-mingw32.static-gcc -O2 -fno-strict-aliasing -fwrapv -mms-bitfields -D_FILE_OFFSET_BITS=64
   - native_c_libraries  : -lws2_32 -lversion

 * Configured paths
   - mode              : standalone
   - standard library  : ./libs
   - scripted binaries : ./bin
   - rundir            : ./run
   - logdir            : ./log
   - user cache        : ./cache (override with $LIQ_CACHE_USER_DIR)
   - system cache      : ./cache (override with $LIQ_CACHE_SYSTEM_DIR)
   - camomile files    : ./camomile

 * Supported input formats
   - MP3               : no (requires mad)
   - AAC               : no (requires faad)
   - Ffmpeg            : yes
   - Flac (native)     : no (requires flac)
   - Flac (ogg)        : no (requires ogg)
   - Opus              : no (requires opus)
   - Speex             : no (requires speex)
   - Theora            : no (requires theora)
   - Vorbis            : no (requires vorbis)
   - WAV/AIFF          : yes (native)

 * Supported output formats
   - FDK-AAC           : no (requires fdkaac)
   - FFmpeg            : yes
   - MP3               : no (requires lame)
   - MP3 (fixed-point) : no (requires shine)
   - Flac (native)     : no (requires flac)
   - Flac (ogg)        : no (requires ogg)
   - Opus              : no (requires opus)
   - Speex             : no (requires speex)
   - Theora            : no (requires theora)
   - Vorbis            : no (requires vorbis)
   - WAV/AIFF          : yes (native)

 * Tags
   - AAC               : no (requires faad)
   - FFmpeg            : yes
   - FLAC (native)     : no (requires flac)
   - Flac (ogg)        : no (requires ogg)
   - Native decoder    : yes
   - Vorbis            : no (requires vorbis)

 * Input / output
   - ALSA              : no (requires alsa)
   - AO                : yes
   - FFmpeg            : yes
   - JACK              : no (requires bjack)
   - NDI               : yes
   - OSS               : no (requires oss)
   - Portaudio         : yes
   - Pulseaudio        : no (requires pulseaudio)
   - SRT               : yes

 * Audio manipulation
   - FFmpeg            : yes
   - LADSPA            : no (requires ladspa)
   - Lilv              : no (requires lilv)
   - Samplerate        : yes
   - SoundTouch        : no (requires soundtouch)
   - StereoTool        : yes

 * Video manipulation
   - camlimages        : no (requires camlimages)
   - FFmpeg            : yes
   - frei0r            : no (requires frei0r)
   - ImageLib          : no (requires imagelib)
   - SDL               : no (requires tsdl-image & tsdl-ttf)

 * MIDI manipulation
   - DSSI              : no (requires dssi)

 * Visualization
   - GD                : no (requires gd)
   - Graphics          : no (requires graphics)
   - SDL               : no (requires tsdl-image & tsdl-ttf)

 * Additional libraries
   - FFmpeg filters    : yes
   - FFmpeg devices    : yes
   - inotify           : no (requires inotify)
   - irc               : no (requires irc-client-unix)
   - jemalloc          : no (requires jemalloc)
   - lastfm            : yes
   - lo                : no (requires lo)
   - memtrace          : yes
   - osc               : no (requires osc-unix)
   - ssl               : yes
   - sqlite3           : no (requires sqlite3)
   - tls               : no (requires tls-liquidsoap)
   - posix-time2       : no (requires posix)
   - windows service   : yes
   - YAML support      : no (requires yaml)
   - XML playlists     : yes

 * Monitoring
   - Prometheus        : no (requires prometheus)

Installation method

From official packages in the release artifacts

Additional Info

No response

@clin1234 clin1234 added the bug label Feb 6, 2025
@toots
Copy link
Member

toots commented Feb 6, 2025

Thanks for this report. It's a tricky one! I'll have a look as soon as possible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants