Skip to content

Commit 95d37d3

Browse files
Merge mkdir and mkdirRecursive (#58)
* Merge mkdirRecursive into mkdir * Add changelog entry * Use option record for mkdir
1 parent b220eb0 commit 95d37d3

File tree

3 files changed

+14
-50
lines changed

3 files changed

+14
-50
lines changed

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ Notable changes to this project are documented in this file. The format is based
55
## [Unreleased]
66

77
Breaking changes:
8+
- Update `mkdir` to take `Boolean` arg for `recursive` option (#53, #55, #58 by @JordanMartinez)
89

910
New features:
10-
- Add bindings to `mkdir(path, { recursive: true })` via `mkdirRecursive` (#53, #55 by @JordanMartinez)
1111
- Update project and deps to PureScript v0.15.0 (#59 by @JordanMartinez, @thomashoneyman, @sigma-andex)
1212

1313
Bugfixes:

src/Node/FS/Async.purs

Lines changed: 6 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ module Node.FS.Async
1313
, unlink
1414
, rmdir
1515
, mkdir
16-
, mkdirRecursive
1716
, mkdir'
1817
, readdir
1918
, utimes
@@ -201,34 +200,16 @@ rmdir file cb = mkEffect $ \_ -> runFn2
201200
mkdir :: FilePath
202201
-> Callback Unit
203202
-> Effect Unit
203+
mkdir path = mkdir' path { recursive: false, mode: mkPerms all all all }
204204

205-
mkdir path = mkdir' path (mkPerms all all all)
206-
207-
-- | Makes a new directory and any directories that don't exist
208-
-- | in the path. Similar to `mkdir -p`.
209-
mkdirRecursive :: FilePath
210-
-> Callback Unit
211-
-> Effect Unit
212-
213-
mkdirRecursive path = mkdirRecursive' path (mkPerms all all all)
214-
215-
-- | Makes a new directory (and any directories that don't exist
216-
-- | in the path) with the specified permissions.
217-
mkdirRecursive'
205+
-- | Makes a new directory with the specified permissions.
206+
mkdir'
218207
:: FilePath
219-
-> Perms
208+
-> { recursive :: Boolean, mode :: Perms }
220209
-> Callback Unit
221210
-> Effect Unit
222-
mkdirRecursive' file perms cb = mkEffect $ \_ -> runFn3
223-
mkdirImpl file { recursive: true, mode: permsToString perms } (handleCallback cb)
224-
225-
-- | Makes a new directory with the specified permissions.
226-
mkdir' :: FilePath
227-
-> Perms
228-
-> Callback Unit
229-
-> Effect Unit
230-
mkdir' file perms cb = mkEffect $ \_ -> runFn3
231-
mkdirImpl file { recursive: false, mode: permsToString perms } (handleCallback cb)
211+
mkdir' file { recursive, mode: perms } cb = mkEffect $ \_ -> runFn3
212+
mkdirImpl file { recursive, mode: permsToString perms } (handleCallback cb)
232213

233214
-- | Reads the contents of a directory.
234215
readdir :: FilePath

src/Node/FS/Sync.purs

Lines changed: 7 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@ module Node.FS.Sync
1313
, rmdir
1414
, mkdir
1515
, mkdir'
16-
, mkdirRecursive
17-
, mkdirRecursive'
1816
, readdir
1917
, utimes
2018
, readFile
@@ -172,33 +170,18 @@ rmdir :: FilePath
172170
rmdir file = mkEffect $ \_ -> runFn1
173171
rmdirSyncImpl file
174172

175-
-- | Makes a new directory.
176-
mkdirRecursive
177-
:: FilePath
178-
-> Effect Unit
179-
mkdirRecursive = flip mkdirRecursive' $ mkPerms all all all
180-
181-
-- | Makes a new directory with the specified permissions.
182-
mkdirRecursive'
183-
:: FilePath
184-
-> Perms
185-
-> Effect Unit
186-
mkdirRecursive' file perms = mkEffect $ \_ -> runFn2
187-
mkdirSyncImpl file { recursive: true, mode: permsToString perms }
188-
189173
-- | Makes a new directory.
190174
mkdir :: FilePath
191175
-> Effect Unit
192-
193-
mkdir = flip mkdir' $ mkPerms all all all
176+
mkdir path = mkdir' path { recursive: false, mode: mkPerms all all all }
194177

195178
-- | Makes a new directory with the specified permissions.
196-
mkdir' :: FilePath
197-
-> Perms
198-
-> Effect Unit
199-
200-
mkdir' file perms = mkEffect $ \_ -> runFn2
201-
mkdirSyncImpl file { recursive: false, mode: permsToString perms }
179+
mkdir'
180+
:: FilePath
181+
-> { recursive :: Boolean, mode :: Perms }
182+
-> Effect Unit
183+
mkdir' file { recursive, mode: perms } = mkEffect $ \_ -> runFn2
184+
mkdirSyncImpl file { recursive, mode: permsToString perms }
202185

203186
-- | Reads the contents of a directory.
204187
readdir :: FilePath

0 commit comments

Comments
 (0)