@@ -54,7 +54,7 @@ class CommandMkdir extends CommandPolykey {
54
54
} ,
55
55
logger : this . logger . getChild ( PolykeyClient . name ) ,
56
56
} ) ;
57
- await binUtils . retryAuthentication ( async ( auth ) => {
57
+ const response = await binUtils . retryAuthentication ( async ( auth ) => {
58
58
const response =
59
59
await pkClient . rpcClient . methods . vaultsSecretsMkdir ( ) ;
60
60
const writer = response . writable . getWriter ( ) ;
@@ -69,26 +69,33 @@ class CommandMkdir extends CommandPolykey {
69
69
} ) ;
70
70
}
71
71
await writer . close ( ) ;
72
- for await ( const result of response . readable ) {
73
- if ( result . type === 'error' ) {
74
- const error = result as ErrorMessage ;
75
- let message : string = '' ;
76
- if ( error . code === 'ENOENT' ) {
77
- message = 'No such secret or directory' ;
78
- } else if ( error . code === 'EEXIST' ) {
79
- message = 'Secret or directory exists' ;
80
- } else {
81
- throw new ErrorPolykeyCLIUncaughtException (
82
- `Unexpected error code ${ error . code } ` ,
83
- ) ;
84
- }
72
+ return response ;
73
+ } , meta ) ;
74
+
75
+ // As git does not track empty directories in version control, we need
76
+ // to inform the user about this.
77
+ process . stderr . write (
78
+ 'WARNING: Empty directories will not be affected by modifications to the vault state (version change, sharing/cloning, etc.)' ,
79
+ ) ;
85
80
86
- process . stderr . write (
87
- `${ error . code } : cannot create directory ${ error . reason } : ${ message } ` ,
81
+ for await ( const result of response . readable ) {
82
+ if ( result . type === 'error' ) {
83
+ const error = result as ErrorMessage ;
84
+ let message : string = '' ;
85
+ if ( error . code === 'ENOENT' ) {
86
+ message = 'No such secret or directory' ;
87
+ } else if ( error . code === 'EEXIST' ) {
88
+ message = 'Secret or directory exists' ;
89
+ } else {
90
+ throw new ErrorPolykeyCLIUncaughtException (
91
+ `Unexpected error code ${ error . code } ` ,
88
92
) ;
89
93
}
94
+ process . stderr . write (
95
+ `${ error . code } : cannot create directory ${ error . reason } : ${ message } ` ,
96
+ ) ;
90
97
}
91
- } , meta ) ;
98
+ }
92
99
} finally {
93
100
if ( pkClient ! != null ) await pkClient . stop ( ) ;
94
101
}
0 commit comments