Skip to content

ByteString did not understand #asWin32WideString #46

@tinchodias

Description

@tinchodias

CI on Win+P14 shows this error:

Instance of ByteString did not understand #asWin32WideString
ByteSymbol(Symbol)>>handleDoesNotUnderstand:to:
ByteString(Object)>>doesNotUnderstand: 'asWin32WideString'
Win64Platform(WinPlatform)>>doGetEnvVariable:bufferSize:ifAbsent:isRetry:
Win64Platform(WinPlatform)>>getEnvVariable:bufferSize:ifAbsent:
Win64Platform(WinPlatform)>>environmentVariableNamed:ifAbsent:
OSEnvironment>>at:ifAbsent:
FFIWindowsLibraryFinder(FFILibraryFinder)>>ldLibraryPaths
[ ] in FFIWindowsLibraryFinder(FFILibraryFinder)>>paths
Array class(SequenceableCollection class)>>new:streamContents:
Array class(SequenceableCollection class)>>streamContents:
FFIWindowsLibraryFinder(FFILibraryFinder)>>paths
[ ] in FFIWindowsLibraryFinder(FFILibraryFinder)>>findAnyLibrary:
Array(SequenceableCollection)>>do:
FFIWindowsLibraryFinder(FFILibraryFinder)>>findAnyLibrary:
FFIWindowsLibraryFinder class(FFILibraryFinder class)>>findAnyLibrary:
LGitLibrary>>win32LibraryName
Win64Platform(WinPlatform)>>ffiLibraryName:
LGitLibrary(FFILibrary)>>libraryName

(source: https://github.com/pharo-graphics/PharoSDL3/actions/runs/23729002388/job/69118607454?pr=45)

So, it seems LGitLibrary uniqueInstance libraryName produces this error in CI.

I see two possibilities:

  • the environment variable has a special name or value that produces the error (but the log doesn't show which strings)
  • UnifiedFFI, which is loaded as a dependency, removes asWin32WideString

In my Mac, in a Pharo 14, asWin32WideString exists as an extension of FFI-Kernel package... need to check on Win.

Image

https://github.com/pharo-project/pharo/blob/Pharo14/src/FFI-Kernel/String.extension.st

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions