Skip to content

Conversation

@fgreinacher
Copy link
Contributor

@fgreinacher fgreinacher commented Dec 12, 2021

This adds support for all System.IO.Path members in .NET 5 and 6.

BREAKING CHANGE: This is a breaking change for people implementing System.IO.Abstractions.IPath or deriving from System.IO.Abstractions.PathBase because new members have been added to their API surface.

Fixes #774

@fgreinacher fgreinacher enabled auto-merge (squash) December 22, 2021 15:19
@fgreinacher fgreinacher merged commit 5539592 into main Dec 22, 2021
@fgreinacher fgreinacher deleted the feat/add-missing-path-apis branch December 22, 2021 15:20
@github-actions
Copy link

This is addressed in release v15.0.1.

@github-actions github-actions bot added the state: released Issues that are released label Dec 22, 2021
@12emerta
Copy link

Sorry if I should open a new issue rather than comment here (I can open a more descriptive issue if needed).

The Path.Join methods which take strings are also shipped with Core 3.0 and Core 3.1, not just .Net 5 and 6 (these methods were put behind conditional compilation constant "FEATURE_PATH_JOIN_WITH_PARAMS" in this PR).

string Join(params string[] paths);
string Join(string path1, string path2);
string Join(string path1, string path2, string path3);

@fgreinacher
Copy link
Contributor Author

fgreinacher commented Jan 18, 2022

Sorry if I should open a new issue rather than comment here (I can open a more descriptive issue if needed).

The Path.Join methods which take strings are also shipped with Core 3.0 and Core 3.1, not just .Net 5 and 6 (these methods were put behind conditional compilation constant "FEATURE_PATH_JOIN_WITH_PARAMS" in this PR).

string Join(params string[] paths);
string Join(string path1, string path2);
string Join(string path1, string path2, string path3);

@12emerta This package does not target .NET Core 3.1. If these APIs are not available in .NET Standard we won' be able to expose them (see #562 and #540 for some more background).

@12emerta
Copy link

Sorry if I should open a new issue rather than comment here (I can open a more descriptive issue if needed).
The Path.Join methods which take strings are also shipped with Core 3.0 and Core 3.1, not just .Net 5 and 6 (these methods were put behind conditional compilation constant "FEATURE_PATH_JOIN_WITH_PARAMS" in this PR).

string Join(params string[] paths);
string Join(string path1, string path2);
string Join(string path1, string path2, string path3);

@12emerta This package does not target .NET Core 3.1. If these APIs are not available in .NET Standard we won' be able to expose them (see #562 and #540 for some more background).

Thanks for the quick reply! I didn't realize Core 3.x wasn't supported. Will try and do some inheritance magic as a workaround.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

state: released Issues that are released

Projects

None yet

Development

Successfully merging this pull request may close these issues.

'await' cannot be used in an expression containing the type 'System.ReadOnlySpan<char>'

3 participants