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

Implement createDirectory in file_system_vm.dart #1048

Closed
munificent opened this issue Jan 5, 2012 · 3 comments
Closed

Implement createDirectory in file_system_vm.dart #1048

munificent opened this issue Jan 5, 2012 · 3 comments
Assignees
Labels
closed-not-planned Closed as we don't intend to take action on the reported issue P3 A lower priority bug or feature request type-enhancement A request for a change that isn't a bug web-dart2js

Comments

@munificent
Copy link
Member

Frog's file system wrapper only supports createDirectory on node, which is what dartdoc uses. A friendly Googler sent this to support it on the VM:

void createDirectory(String path, [bool recursive = false]) {
   if (path.length == 0) {
     return;
   }
   if (new Directory(path).exists()) {
     return;
   }
   if (recursive) {
     // TODO(): replace with path separator reported from vm/hostOS.
     // Needs to be added to vm/runtime/directory.cc & .dart.
     final String pathSeparatorPattern = "/";

     List<String> parts = path.split(pathSeparatorPattern);
     String partialPath = parts[0];
     for (int i = 1; i < parts.length; i++) {
       partialPath += partialPath + pathSeparatorPattern + parts[i];
       new Directory(partialPath).create();
     }
   } else {
     new Directory(path).create();
   }
}

Should be easy to drop in, but we really need some tests for this first.

@whesse
Copy link
Contributor

whesse commented Jan 13, 2012

There are a few problems here:
Directory.createSyuc() throws an exception if the directory exists already, so we need to check for that.

The path would need to be normalized ( .. and . resolved ) before running this algorithm. Especially consider "../make_a_sibling/../another_sibling/in_here"

But yes, we do need this function (recursive create directory), and will probably implement it.

@anders-sandholm
Copy link
Contributor

Removed Area-Frog label.
Added Area-Dart2JS, FromAreaFrog labels.

@kasperl
Copy link

kasperl commented Jun 12, 2012

Added WontFix label.

@munificent munificent added Type-Enhancement P3 A lower priority bug or feature request web-dart2js labels Jun 12, 2012
@munificent munificent self-assigned this Jun 12, 2012
@kevmoo kevmoo added closed-not-planned Closed as we don't intend to take action on the reported issue type-enhancement A request for a change that isn't a bug and removed resolution-wont_fix labels Mar 1, 2016
dart-bot pushed a commit that referenced this issue Apr 7, 2021
2021-04-07 [email protected] Fixes #535: more nnbd tests for constant evaluation added.
2021-04-07 [email protected] Fixes #1068. Remove excessive - in a SharedOptions
2021-04-05 [email protected] Fixes #535: more nnbd tests for constant evaluation added.
2021-04-05 [email protected] Fixes #996: more tests added.
2021-04-05 [email protected] Fixes #996: more tests added.
2021-04-05 [email protected] Fixes #1067: added checks for old and new dart versions.
2021-04-05 [email protected] Fixes #1066: added @Dart=2.12 to the initial version of the test, new test which checks recent dart behavior added.
2021-04-05 [email protected] Fixes #1057: Expected result doe the tests with mailformed types updated.
2021-04-02 [email protected] Fixes #1062. Remove unnecessary assignment
2021-04-01 [email protected] Fixes #1057: Expected result doe the tests with mailformed types updated.
2021-04-01 [email protected] Expected error code is fixed for Windows
2021-04-01 [email protected] Fixes #1060. Expected error message position updated
2021-04-01 [email protected] Fixes #1059. Expected error message updated
2021-04-01 [email protected] Fixes #1024. Adjust expected results for web platforms
2021-04-01 [email protected] #993. More Array tests added
2021-03-31 [email protected] Update LICENSE
2021-03-31 [email protected] #993. Array tests added
2021-03-31 [email protected] Issue #1053: Missing Issue tag added, test expectation updated.
2021-03-30 [email protected] Fixes #1054: Updated expectations for mailformed raw type variables.
2021-03-30 [email protected] Fixes #1050: Updated expectations for mailformed raw type variables.
2021-03-30 [email protected] Fixes #1050: Got rid of mailformed row type variable usage in i-2-b- tests.
2021-03-29 [email protected] Fixes #1043. Remove static warning as an expected result
2021-03-29 [email protected] Fixes #1049: Correct expectation adjusted
2021-03-29 [email protected] Fixes #1048. Move tests to correct folder and change the description
2021-03-29 [email protected] Fixes #1046: Test adjusted to work with the generic metadata feature enabled.
2021-03-29 [email protected] Fixes #1047. Change expected result to not to fail on JavaScript configurations
2021-03-29 [email protected] Fixes #1044. Change expected result to not to fail on JavaScript configurations
2021-03-26 [email protected] Fixes #1029: Missing Issue tag added to the test.
2021-03-26 [email protected] Fixes #1042. Add check that produces different results for triple and double shifts
2021-03-26 [email protected] Fixes #1042. Fix built-in_types_t11.dart to expect correct results
2021-03-25 [email protected] Fixes #1019. Don't use type aliases in legacy libraries
2021-03-25 [email protected] Fixes #1039: Old-style aliases corrected.
2021-03-25 [email protected] Fixes #988. Expect static type warning in a right way
2021-03-24 [email protected] Issues #1029: Static expectation corrected.
2021-03-24 [email protected] Issues #1035: Issue tag for the bug 45443 added.
2021-03-24 [email protected] Merge branch 'master' of https://github.com/dart-lang/co19
2021-03-24 [email protected] #1023. Change SplayTreeMap and SplayTreeSet tests according to the new behavior
2021-03-23 [email protected] #1021. Remove expecting errors on web configurations for some negative numbers
2021-03-23 [email protected] Fixes #1034. Missed experimental flag added
2021-03-23 [email protected] #1033. Perform runtime check on big values for non-JavaScript configurations only
2021-03-23 [email protected] Issues #1029: co19/Language/Generics/Superbounded_types/typedef3_A01_t06/02 corrected and does not expect a compile error now.

Cq-Include-Trybots: dart/try:analyzer-nnbd-linux-release-try,dart2js-nnbd-linux-x64-chrome-try,ddc-nnbd-linux-release-chrome-try,front-end-nnbd-linux-release-x64-try,vm-kernel-nnbd-linux-debug-x64-try,vm-kernel-nnbd-linux-release-simarm64-try,vm-kernel-nnbd-linux-release-x64-try,vm-kernel-nnbd-mac-release-x64-try,vm-kernel-nnbd-win-release-x64-try,vm-kernel-precomp-nnbd-linux-debug-x64-try,vm-kernel-precomp-nnbd-linux-release-simarm64-try,vm-kernel-precomp-nnbd-linux-release-x64-try
Change-Id: I5fae01c7b48aba502da04638430f4f6de79ac745
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/194241
Reviewed-by: William Hesse <[email protected]>
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
closed-not-planned Closed as we don't intend to take action on the reported issue P3 A lower priority bug or feature request type-enhancement A request for a change that isn't a bug web-dart2js
Projects
None yet
Development

No branches or pull requests

5 participants