-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
add typesafe std/paths
, std/files
, std/dirs
, std/symlinks
#20582
Conversation
std/os
; add typesafe std/paths
std/os
; add typesafe std/paths
std/os
; add typesafe std/paths
, std/files
, std/dirs
This comment was marked as outdated.
This comment was marked as outdated.
Agreed. In the past I've argued for even more fine-grained distinctions like AbsolutePath vs AbsoluteFile and Relative variants but I changed my mind. A single Path type is good enough and slightly easier to work with. |
With the new Os/Io implementation, will the nimscript operations be moved to another module so that we can use things like |
std/os
; add typesafe std/paths
, std/files
, std/dirs
std/paths
, std/files
, std/dirs
There are no plans wrt compile-time evaluation for os.nim. Everything we change or add needs an RFC to justify it because it's so easy to get this wrong. |
std/paths
, std/files
, std/dirs
std/paths
, std/files
, std/dirs
, std/symlinks
This PR doesn't contain any API addition, which will be added later. |
@ringabout So ... is it ready to review? |
Yes |
Thanks for your hard work on this PR! Hint: mm: orc; opt: speed; options: -d:release |
…m-lang#20582) * split std/os; add typesafe std/paths * add more files, dirs, paths * add documentation * add testcase * remove tryRemoveFile * clean up * Delete test.nim * apply changes * add `add` and fixes
…m-lang#20582) * split std/os; add typesafe std/paths * add more files, dirs, paths * add documentation * add testcase * remove tryRemoveFile * clean up * Delete test.nim * apply changes * add `add` and fixes
Ref nim-lang/RFCs#437
fixes nim-lang/RFCs#54
fixes nim-lang/RFCs#71
Now
Path
is defined asdistinct string
, refined functions should be based on this signature.todo in the following PRs
std/appdirs