Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation
The
URL
generated using relative path inURL(initWithFilePath:)
will have abaseURL
of nil.On platforms such as macOS and Linux, CWD is set to
baseURL
ifrelativeTo
is empty .It can be seen from the test that
baseURL
should be exist.https://github.com/apple/swift-corelibs-foundation/blob/9bcec0584a704e7be374bd5a1efc94adc3ebde7c/Tests/Foundation/Tests/TestURL.swift#L158
I would like to fix this behavior so that
baseURL
does not become nil.Cause
I think this is a historically reason. wasi-libc did not support
getcwd
first era. so the functions that usinggetcwd
are disabled.because of this, the partial feature of
URL(fileURLWithPath: ".")
is also disabled.swift-corelibs-foundation/CoreFoundation/Base.subproj/CFPlatform.c
Lines 63 to 67 in 6c0904e
Solve
Current wasi-libc has
getcwd
.WebAssembly/wasi-libc#214
simply, unlock some
#if
and it works well.