@effect/platform-node 0.10.4 → 0.10.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/FileSystem.d.ts +5 -0
- package/FileSystem.d.ts.map +1 -1
- package/FileSystem.js.map +1 -1
- package/internal/fileSystem.js +53 -20
- package/internal/fileSystem.js.map +1 -1
- package/internal/path.js +5 -8
- package/internal/path.js.map +1 -1
- package/mjs/FileSystem.mjs.map +1 -1
- package/mjs/internal/fileSystem.mjs +53 -20
- package/mjs/internal/fileSystem.mjs.map +1 -1
- package/mjs/internal/path.mjs +1 -3
- package/mjs/internal/path.mjs.map +1 -1
- package/package.json +2 -2
- package/src/FileSystem.ts +5 -0
- package/src/internal/fileSystem.ts +81 -27
- package/src/internal/path.ts +1 -5
package/FileSystem.d.ts
CHANGED
package/FileSystem.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileSystem.d.ts","sourceRoot":"","sources":["./src/FileSystem.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAE7D,YAAY;AACV;;;GAGG;AACH,oBAAoB;AACpB;;;GAGG;AACH,wBAAwB;AACxB;;;GAGG;AACH,mBAAmB;AACnB;;;GAGG;AACH,eAAe;AACf;;;GAGG;AACH,oBAAoB;AACpB;;;GAGG;AACH,aAAa;AACb;;;GAGG;AACH,WAAW;AACX;;;GAGG;AACH,aAAa;AACb;;;GAGG;AACH,gBAAgB,EACjB,MAAM,6BAA6B,CAAA;AAEpC,OAAO;AACL;;;GAGG;AACH,UAAU;AACV;;;GAGG;AACH,IAAI,EACL,MAAM,6BAA6B,CAAA;AAEpC;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAkB,CAAA"}
|
|
1
|
+
{"version":3,"file":"FileSystem.d.ts","sourceRoot":"","sources":["./src/FileSystem.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAE7D,YAAY;AACV;;;GAGG;AACH,oBAAoB;AACpB;;;GAGG;AACH,wBAAwB;AACxB;;;GAGG;AACH,mBAAmB;AACnB;;;GAGG;AACH,eAAe;AACf;;;GAGG;AACH,oBAAoB;AACpB;;;GAGG;AACH,aAAa;AACb;;;GAGG;AACH,WAAW;AACX;;;GAGG;AACH,aAAa;AACb;;;GAGG;AACH,gBAAgB,EACjB,MAAM,6BAA6B,CAAA;AAEpC,OAAO;AACL;;;GAGG;AACH,UAAU;AACV;;;GAGG;AACH,QAAQ;AACR;;;GAGG;AACH,IAAI,EACL,MAAM,6BAA6B,CAAA;AAEpC;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAkB,CAAA"}
|
package/FileSystem.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileSystem.js","names":["internal","_interopRequireWildcard","require","_FileSystem","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","layer","exports"],"sources":["./src/FileSystem.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;AAKA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAmDA,IAAAC,WAAA,gBAAAD,OAAA;
|
|
1
|
+
{"version":3,"file":"FileSystem.js","names":["internal","_interopRequireWildcard","require","_FileSystem","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","layer","exports"],"sources":["./src/FileSystem.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;AAKA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAmDA,IAAAC,WAAA,gBAAAD,OAAA;AAgBoC,SAAAE,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAJ,wBAAAQ,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAxEpC;;;;AA0EA;;;;AAIO,MAAMW,KAAK,GAAoC1B,QAAQ,CAAC0B,KAAK;AAAAC,OAAA,CAAAD,KAAA,GAAAA,KAAA"}
|
package/internal/fileSystem.js
CHANGED
|
@@ -104,7 +104,7 @@ const makeTempDirectoryScoped = /*#__PURE__*/(() => {
|
|
|
104
104
|
const openFactory = method => {
|
|
105
105
|
const nodeOpen = (0, _Effectify.effectify)(NFS.open, (0, _error.handleErrnoException)("FileSystem", method), handleBadArgument(method));
|
|
106
106
|
const nodeClose = (0, _Effectify.effectify)(NFS.close, (0, _error.handleErrnoException)("FileSystem", method), handleBadArgument(method));
|
|
107
|
-
return (path, options) => Effect.map(fd => makeFile(FileSystem.FileDescriptor(fd)))(Effect.acquireRelease(nodeOpen(path, options?.flag ?? "r", options?.mode), fd => Effect.orDie(nodeClose(fd))));
|
|
107
|
+
return (path, options) => Effect.map(fd => makeFile(FileSystem.FileDescriptor(fd), options?.flag?.startsWith("a") ?? false))(Effect.acquireRelease(nodeOpen(path, options?.flag ?? "r", options?.mode), fd => Effect.orDie(nodeClose(fd))));
|
|
108
108
|
};
|
|
109
109
|
const open = /*#__PURE__*/openFactory("open");
|
|
110
110
|
const makeFile = /*#__PURE__*/(() => {
|
|
@@ -118,45 +118,74 @@ const makeFile = /*#__PURE__*/(() => {
|
|
|
118
118
|
const nodeWrite = /*#__PURE__*/nodeWriteFactory("write");
|
|
119
119
|
const nodeWriteAll = /*#__PURE__*/nodeWriteFactory("writeAll");
|
|
120
120
|
class FileImpl {
|
|
121
|
-
constructor(fd) {
|
|
121
|
+
constructor(fd, append) {
|
|
122
122
|
this.fd = fd;
|
|
123
|
+
this.append = append;
|
|
123
124
|
this[_a] = _Function.identity;
|
|
125
|
+
this.semaphore = Effect.unsafeMakeSemaphore(1);
|
|
126
|
+
this.position = 0n;
|
|
124
127
|
}
|
|
125
128
|
get stat() {
|
|
126
129
|
return Effect.map(nodeStat(this.fd), makeFileInfo);
|
|
127
130
|
}
|
|
128
|
-
|
|
129
|
-
return Effect.
|
|
131
|
+
seek(offset, from) {
|
|
132
|
+
return this.semaphore.withPermits(1)(Effect.sync(() => {
|
|
133
|
+
if (from === "start") {
|
|
134
|
+
this.position = offset;
|
|
135
|
+
} else if (from === "current") {
|
|
136
|
+
this.position = this.position + offset;
|
|
137
|
+
}
|
|
138
|
+
return this.position;
|
|
139
|
+
}));
|
|
140
|
+
}
|
|
141
|
+
read(buffer) {
|
|
142
|
+
return this.semaphore.withPermits(1)(Effect.map(Effect.suspend(() => nodeRead(this.fd, {
|
|
130
143
|
buffer,
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
144
|
+
position: this.position
|
|
145
|
+
})), bytesRead => {
|
|
146
|
+
const sizeRead = FileSystem.Size(bytesRead);
|
|
147
|
+
this.position = this.position + sizeRead;
|
|
148
|
+
return sizeRead;
|
|
149
|
+
}));
|
|
134
150
|
}
|
|
135
|
-
readAlloc(size
|
|
136
|
-
return Effect.flatMap(Effect.sync(() => Buffer.allocUnsafeSlow(Number(size))), buffer => Effect.map(nodeReadAlloc(this.fd, {
|
|
151
|
+
readAlloc(size) {
|
|
152
|
+
return this.semaphore.withPermits(1)(Effect.flatMap(Effect.sync(() => Buffer.allocUnsafeSlow(Number(size))), buffer => Effect.map(nodeReadAlloc(this.fd, {
|
|
137
153
|
buffer,
|
|
138
|
-
|
|
139
|
-
position: options?.offset
|
|
154
|
+
position: this.position
|
|
140
155
|
}), bytesRead => {
|
|
141
156
|
if (bytesRead === 0) {
|
|
142
157
|
return Option.none();
|
|
143
158
|
}
|
|
159
|
+
this.position = this.position + BigInt(bytesRead);
|
|
144
160
|
if (bytesRead === Number(size)) {
|
|
145
161
|
return Option.some(buffer);
|
|
146
162
|
}
|
|
147
163
|
const dst = Buffer.allocUnsafeSlow(bytesRead);
|
|
148
164
|
buffer.copy(dst, 0, 0, bytesRead);
|
|
149
165
|
return Option.some(dst);
|
|
150
|
-
}));
|
|
166
|
+
})));
|
|
151
167
|
}
|
|
152
168
|
truncate(length) {
|
|
153
|
-
return nodeTruncate(this.fd, length ? Number(length) : undefined)
|
|
169
|
+
return this.semaphore.withPermits(1)(Effect.map(nodeTruncate(this.fd, length ? Number(length) : undefined), () => {
|
|
170
|
+
if (!this.append) {
|
|
171
|
+
const len = BigInt(length ?? 0);
|
|
172
|
+
if (this.position > len) {
|
|
173
|
+
this.position = len;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}));
|
|
154
177
|
}
|
|
155
178
|
write(buffer) {
|
|
156
|
-
return Effect.map(nodeWrite(this.fd, buffer
|
|
179
|
+
return this.semaphore.withPermits(1)(Effect.map(Effect.suspend(() => nodeWrite(this.fd, buffer, undefined, undefined, this.append ? undefined : Number(this.position))), bytesWritten => {
|
|
180
|
+
const sizeWritten = FileSystem.Size(bytesWritten);
|
|
181
|
+
if (!this.append) {
|
|
182
|
+
this.position = this.position + sizeWritten;
|
|
183
|
+
}
|
|
184
|
+
return sizeWritten;
|
|
185
|
+
}));
|
|
157
186
|
}
|
|
158
|
-
|
|
159
|
-
return Effect.flatMap(nodeWriteAll(this.fd, buffer), bytesWritten => {
|
|
187
|
+
writeAllChunk(buffer) {
|
|
188
|
+
return Effect.flatMap(Effect.suspend(() => nodeWriteAll(this.fd, buffer, undefined, undefined, this.append ? undefined : Number(this.position))), bytesWritten => {
|
|
160
189
|
if (bytesWritten === 0) {
|
|
161
190
|
return Effect.fail(Error.SystemError({
|
|
162
191
|
module: "FileSystem",
|
|
@@ -165,15 +194,19 @@ const makeFile = /*#__PURE__*/(() => {
|
|
|
165
194
|
pathOrDescriptor: this.fd,
|
|
166
195
|
message: "write returned 0 bytes written"
|
|
167
196
|
}));
|
|
168
|
-
} else if (bytesWritten < buffer.length) {
|
|
169
|
-
return this.writeAll(buffer.subarray(bytesWritten));
|
|
170
197
|
}
|
|
171
|
-
|
|
198
|
+
if (!this.append) {
|
|
199
|
+
this.position = this.position + BigInt(bytesWritten);
|
|
200
|
+
}
|
|
201
|
+
return bytesWritten < buffer.length ? this.writeAllChunk(buffer.subarray(bytesWritten)) : Effect.unit;
|
|
172
202
|
});
|
|
173
203
|
}
|
|
204
|
+
writeAll(buffer) {
|
|
205
|
+
return this.semaphore.withPermits(1)(this.writeAllChunk(buffer));
|
|
206
|
+
}
|
|
174
207
|
}
|
|
175
208
|
_a = FileSystem.FileTypeId;
|
|
176
|
-
return fd => new FileImpl(fd);
|
|
209
|
+
return (fd, append) => new FileImpl(fd, append);
|
|
177
210
|
})();
|
|
178
211
|
// == makeTempFile
|
|
179
212
|
const makeTempFileFactory = method => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fileSystem.js","names":["_Function","require","Option","_interopRequireWildcard","Effect","Layer","_error","_Effectify","Error","FileSystem","Crypto","NFS","OS","Path","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","handleBadArgument","method","err","BadArgument","module","message","String","access","nodeAccess","effectify","handleErrnoException","path","options","mode","constants","F_OK","readable","R_OK","writable","W_OK","copy","nodeCp","cp","fromPath","toPath","force","overwrite","preserveTimestamps","recursive","copyFile","nodeCopyFile","chmod","nodeChmod","chown","nodeChown","uid","gid","link","nodeLink","existingPath","newPath","makeDirectory","nodeMkdir","mkdir","makeTempDirectoryFactory","nodeMkdtemp","mkdtemp","suspend","prefix","directory","join","tmpdir","makeTempDirectory","removeFactory","nodeRm","rm","remove","makeTempDirectoryScoped","removeDirectory","acquireRelease","orDie","openFactory","nodeOpen","open","nodeClose","close","map","fd","makeFile","FileDescriptor","flag","nodeReadFactory","read","nodeRead","nodeReadAlloc","nodeStat","fstat","nodeTruncate","ftruncate","nodeWriteFactory","write","nodeWrite","nodeWriteAll","FileImpl","constructor","_a","identity","stat","makeFileInfo","buffer","length","Number","undefined","position","offset","Size","readAlloc","size","flatMap","sync","Buffer","allocUnsafeSlow","bytesRead","none","some","dst","truncate","writeAll","bytesWritten","fail","SystemError","reason","pathOrDescriptor","subarray","unit","FileTypeId","makeTempFileFactory","randomHexString","bytes","randomBytes","toString","tap","scoped","random","zip","makeTempFile","makeTempFileScoped","removeFile","file","readDirectory","nodeReadDirectory","readdir","readFile","async","resume","signal","data","succeed","readLink","nodeReadLink","readlink","realPath","nodeRealPath","realpath","rename","nodeRename","oldPath","type","isFile","isDirectory","isSymbolicLink","isBlockDevice","isCharacterDevice","isFIFO","isSocket","mtime","fromNullable","atime","birthtime","dev","rdev","ino","nlink","blksize","blocks","symlink","nodeSymlink","target","utimes","nodeUtimes","writeFile","fileSystemImpl","make","layer","exports"],"sources":["../src/internal/fileSystem.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fileSystem.js","names":["_Function","require","Option","_interopRequireWildcard","Effect","Layer","_error","_Effectify","Error","FileSystem","Crypto","NFS","OS","Path","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","handleBadArgument","method","err","BadArgument","module","message","String","access","nodeAccess","effectify","handleErrnoException","path","options","mode","constants","F_OK","readable","R_OK","writable","W_OK","copy","nodeCp","cp","fromPath","toPath","force","overwrite","preserveTimestamps","recursive","copyFile","nodeCopyFile","chmod","nodeChmod","chown","nodeChown","uid","gid","link","nodeLink","existingPath","newPath","makeDirectory","nodeMkdir","mkdir","makeTempDirectoryFactory","nodeMkdtemp","mkdtemp","suspend","prefix","directory","join","tmpdir","makeTempDirectory","removeFactory","nodeRm","rm","remove","makeTempDirectoryScoped","removeDirectory","acquireRelease","orDie","openFactory","nodeOpen","open","nodeClose","close","map","fd","makeFile","FileDescriptor","flag","startsWith","nodeReadFactory","read","nodeRead","nodeReadAlloc","nodeStat","fstat","nodeTruncate","ftruncate","nodeWriteFactory","write","nodeWrite","nodeWriteAll","FileImpl","constructor","append","_a","identity","semaphore","unsafeMakeSemaphore","position","stat","makeFileInfo","seek","offset","from","withPermits","sync","buffer","bytesRead","sizeRead","Size","readAlloc","size","flatMap","Buffer","allocUnsafeSlow","Number","none","BigInt","some","dst","truncate","length","undefined","len","bytesWritten","sizeWritten","writeAllChunk","fail","SystemError","reason","pathOrDescriptor","subarray","unit","writeAll","FileTypeId","makeTempFileFactory","randomHexString","bytes","randomBytes","toString","tap","scoped","random","zip","makeTempFile","makeTempFileScoped","removeFile","file","readDirectory","nodeReadDirectory","readdir","readFile","async","resume","signal","data","succeed","readLink","nodeReadLink","readlink","realPath","nodeRealPath","realpath","rename","nodeRename","oldPath","type","isFile","isDirectory","isSymbolicLink","isBlockDevice","isCharacterDevice","isFIFO","isSocket","mtime","fromNullable","atime","birthtime","dev","rdev","ino","nlink","blksize","blocks","symlink","nodeSymlink","target","utimes","nodeUtimes","writeFile","fileSystemImpl","make","layer","exports"],"sources":["../src/internal/fileSystem.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/internal/path.js
CHANGED
|
@@ -3,18 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.layerWin32 = exports.layerPosix = exports.layer =
|
|
7
|
-
var _Context = /*#__PURE__*/require("@effect/data/Context");
|
|
6
|
+
exports.layerWin32 = exports.layerPosix = exports.layer = void 0;
|
|
8
7
|
var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Effect"));
|
|
9
8
|
var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Layer"));
|
|
10
9
|
var _Error = /*#__PURE__*/require("@effect/platform/Error");
|
|
10
|
+
var _Path = /*#__PURE__*/require("@effect/platform/Path");
|
|
11
11
|
var NodePath = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("node:path"));
|
|
12
12
|
var NodeUrl = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("node:url"));
|
|
13
13
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
14
14
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
15
|
-
/** @internal */
|
|
16
|
-
const Path = /*#__PURE__*/(0, _Context.Tag)();
|
|
17
|
-
exports.Path = Path;
|
|
18
15
|
const fromFileUrl = url => Effect.try({
|
|
19
16
|
try: () => NodeUrl.fileURLToPath(url),
|
|
20
17
|
catch: error => (0, _Error.BadArgument)({
|
|
@@ -32,21 +29,21 @@ const toFileUrl = path => Effect.try({
|
|
|
32
29
|
})
|
|
33
30
|
});
|
|
34
31
|
/** @internal */
|
|
35
|
-
const layerPosix = /*#__PURE__*/Layer.succeed(Path, /*#__PURE__*/Path.of({
|
|
32
|
+
const layerPosix = /*#__PURE__*/Layer.succeed(_Path.Path, /*#__PURE__*/_Path.Path.of({
|
|
36
33
|
...NodePath.posix,
|
|
37
34
|
fromFileUrl,
|
|
38
35
|
toFileUrl
|
|
39
36
|
}));
|
|
40
37
|
/** @internal */
|
|
41
38
|
exports.layerPosix = layerPosix;
|
|
42
|
-
const layerWin32 = /*#__PURE__*/Layer.succeed(Path, /*#__PURE__*/Path.of({
|
|
39
|
+
const layerWin32 = /*#__PURE__*/Layer.succeed(_Path.Path, /*#__PURE__*/_Path.Path.of({
|
|
43
40
|
...NodePath.win32,
|
|
44
41
|
fromFileUrl,
|
|
45
42
|
toFileUrl
|
|
46
43
|
}));
|
|
47
44
|
/** @internal */
|
|
48
45
|
exports.layerWin32 = layerWin32;
|
|
49
|
-
const layer = /*#__PURE__*/Layer.succeed(Path, /*#__PURE__*/Path.of({
|
|
46
|
+
const layer = /*#__PURE__*/Layer.succeed(_Path.Path, /*#__PURE__*/_Path.Path.of({
|
|
50
47
|
...NodePath,
|
|
51
48
|
fromFileUrl,
|
|
52
49
|
toFileUrl
|
package/internal/path.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.js","names":["
|
|
1
|
+
{"version":3,"file":"path.js","names":["Effect","_interopRequireWildcard","require","Layer","_Error","_Path","NodePath","NodeUrl","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","fromFileUrl","url","try","fileURLToPath","catch","error","BadArgument","module","method","message","toFileUrl","path","pathToFileURL","layerPosix","succeed","Path","of","posix","exports","layerWin32","win32","layer"],"sources":["../src/internal/path.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,MAAA,gBAAAC,uBAAA,eAAAC,OAAA;AACA,IAAAC,KAAA,gBAAAF,uBAAA,eAAAC,OAAA;AACA,IAAAE,MAAA,gBAAAF,OAAA;AACA,IAAAG,KAAA,gBAAAH,OAAA;AACA,IAAAI,QAAA,gBAAAL,uBAAA,eAAAC,OAAA;AACA,IAAAK,OAAA,gBAAAN,uBAAA,eAAAC,OAAA;AAAmC,SAAAM,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAR,wBAAAY,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAEnC,MAAMW,WAAW,GAAIC,GAAQ,IAC3B/B,MAAM,CAACgC,GAAG,CAAC;EACTA,GAAG,EAAEA,CAAA,KAAMzB,OAAO,CAAC0B,aAAa,CAACF,GAAG,CAAC;EACrCG,KAAK,EAAGC,KAAK,IACX,IAAAC,kBAAW,EAAC;IACVC,MAAM,EAAE,MAAM;IACdC,MAAM,EAAE,aAAa;IACrBC,OAAO,EAAE,GAAGJ,KAAK;GAClB;CACJ,CAAC;AAEJ,MAAMK,SAAS,GAAIC,IAAY,IAC7BzC,MAAM,CAACgC,GAAG,CAAC;EACTA,GAAG,EAAEA,CAAA,KAAMzB,OAAO,CAACmC,aAAa,CAACD,IAAI,CAAC;EACtCP,KAAK,EAAGC,KAAK,IACX,IAAAC,kBAAW,EAAC;IACVC,MAAM,EAAE,MAAM;IACdC,MAAM,EAAE,WAAW;IACnBC,OAAO,EAAE,GAAGJ,KAAK;GAClB;CACJ,CAAC;AAEJ;AACO,MAAMQ,UAAU,gBAAGxC,KAAK,CAACyC,OAAO,CACrCC,UAAI,eACJA,UAAI,CAACC,EAAE,CAAC;EACN,GAAGxC,QAAQ,CAACyC,KAAK;EACjBjB,WAAW;EACXU;CACD,CAAC,CACH;AAED;AAAAQ,OAAA,CAAAL,UAAA,GAAAA,UAAA;AACO,MAAMM,UAAU,gBAAG9C,KAAK,CAACyC,OAAO,CACrCC,UAAI,eACJA,UAAI,CAACC,EAAE,CAAC;EACN,GAAGxC,QAAQ,CAAC4C,KAAK;EACjBpB,WAAW;EACXU;CACD,CAAC,CACH;AAED;AAAAQ,OAAA,CAAAC,UAAA,GAAAA,UAAA;AACO,MAAME,KAAK,gBAAGhD,KAAK,CAACyC,OAAO,CAChCC,UAAI,eACJA,UAAI,CAACC,EAAE,CAAC;EACN,GAAGxC,QAAQ;EACXwB,WAAW;EACXU;CACD,CAAC,CACH;AAAAQ,OAAA,CAAAG,KAAA,GAAAA,KAAA"}
|
package/mjs/FileSystem.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileSystem.mjs","names":["internal","FileSystem","Size","layer"],"sources":["../src/FileSystem.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAKA,OAAO,KAAKA,QAAQ,MAAM,2CAA2C;AAmDrE;AACE;;;;AAIAC,UAAU;
|
|
1
|
+
{"version":3,"file":"FileSystem.mjs","names":["internal","FileSystem","Size","layer"],"sources":["../src/FileSystem.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAKA,OAAO,KAAKA,QAAQ,MAAM,2CAA2C;AAmDrE;AACE;;;;AAIAC,UAAU;AAMV;;;;AAIAC,IAAI,QACC,6BAA6B;AAEpC;;;;AAIA,OAAO,MAAMC,KAAK,GAAoCH,QAAQ,CAACG,KAAK"}
|
|
@@ -96,7 +96,7 @@ const makeTempDirectoryScoped = /*#__PURE__*/(() => {
|
|
|
96
96
|
const openFactory = method => {
|
|
97
97
|
const nodeOpen = effectify(NFS.open, handleErrnoException("FileSystem", method), handleBadArgument(method));
|
|
98
98
|
const nodeClose = effectify(NFS.close, handleErrnoException("FileSystem", method), handleBadArgument(method));
|
|
99
|
-
return (path, options) => Effect.map(fd => makeFile(FileSystem.FileDescriptor(fd)))(Effect.acquireRelease(nodeOpen(path, options?.flag ?? "r", options?.mode), fd => Effect.orDie(nodeClose(fd))));
|
|
99
|
+
return (path, options) => Effect.map(fd => makeFile(FileSystem.FileDescriptor(fd), options?.flag?.startsWith("a") ?? false))(Effect.acquireRelease(nodeOpen(path, options?.flag ?? "r", options?.mode), fd => Effect.orDie(nodeClose(fd))));
|
|
100
100
|
};
|
|
101
101
|
const open = /*#__PURE__*/openFactory("open");
|
|
102
102
|
const makeFile = /*#__PURE__*/(() => {
|
|
@@ -110,45 +110,74 @@ const makeFile = /*#__PURE__*/(() => {
|
|
|
110
110
|
const nodeWrite = /*#__PURE__*/nodeWriteFactory("write");
|
|
111
111
|
const nodeWriteAll = /*#__PURE__*/nodeWriteFactory("writeAll");
|
|
112
112
|
class FileImpl {
|
|
113
|
-
constructor(fd) {
|
|
113
|
+
constructor(fd, append) {
|
|
114
114
|
this.fd = fd;
|
|
115
|
+
this.append = append;
|
|
115
116
|
this[_a] = identity;
|
|
117
|
+
this.semaphore = Effect.unsafeMakeSemaphore(1);
|
|
118
|
+
this.position = 0n;
|
|
116
119
|
}
|
|
117
120
|
get stat() {
|
|
118
121
|
return Effect.map(nodeStat(this.fd), makeFileInfo);
|
|
119
122
|
}
|
|
120
|
-
|
|
121
|
-
return Effect.
|
|
123
|
+
seek(offset, from) {
|
|
124
|
+
return this.semaphore.withPermits(1)(Effect.sync(() => {
|
|
125
|
+
if (from === "start") {
|
|
126
|
+
this.position = offset;
|
|
127
|
+
} else if (from === "current") {
|
|
128
|
+
this.position = this.position + offset;
|
|
129
|
+
}
|
|
130
|
+
return this.position;
|
|
131
|
+
}));
|
|
132
|
+
}
|
|
133
|
+
read(buffer) {
|
|
134
|
+
return this.semaphore.withPermits(1)(Effect.map(Effect.suspend(() => nodeRead(this.fd, {
|
|
122
135
|
buffer,
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
136
|
+
position: this.position
|
|
137
|
+
})), bytesRead => {
|
|
138
|
+
const sizeRead = FileSystem.Size(bytesRead);
|
|
139
|
+
this.position = this.position + sizeRead;
|
|
140
|
+
return sizeRead;
|
|
141
|
+
}));
|
|
126
142
|
}
|
|
127
|
-
readAlloc(size
|
|
128
|
-
return Effect.flatMap(Effect.sync(() => Buffer.allocUnsafeSlow(Number(size))), buffer => Effect.map(nodeReadAlloc(this.fd, {
|
|
143
|
+
readAlloc(size) {
|
|
144
|
+
return this.semaphore.withPermits(1)(Effect.flatMap(Effect.sync(() => Buffer.allocUnsafeSlow(Number(size))), buffer => Effect.map(nodeReadAlloc(this.fd, {
|
|
129
145
|
buffer,
|
|
130
|
-
|
|
131
|
-
position: options?.offset
|
|
146
|
+
position: this.position
|
|
132
147
|
}), bytesRead => {
|
|
133
148
|
if (bytesRead === 0) {
|
|
134
149
|
return Option.none();
|
|
135
150
|
}
|
|
151
|
+
this.position = this.position + BigInt(bytesRead);
|
|
136
152
|
if (bytesRead === Number(size)) {
|
|
137
153
|
return Option.some(buffer);
|
|
138
154
|
}
|
|
139
155
|
const dst = Buffer.allocUnsafeSlow(bytesRead);
|
|
140
156
|
buffer.copy(dst, 0, 0, bytesRead);
|
|
141
157
|
return Option.some(dst);
|
|
142
|
-
}));
|
|
158
|
+
})));
|
|
143
159
|
}
|
|
144
160
|
truncate(length) {
|
|
145
|
-
return nodeTruncate(this.fd, length ? Number(length) : undefined)
|
|
161
|
+
return this.semaphore.withPermits(1)(Effect.map(nodeTruncate(this.fd, length ? Number(length) : undefined), () => {
|
|
162
|
+
if (!this.append) {
|
|
163
|
+
const len = BigInt(length ?? 0);
|
|
164
|
+
if (this.position > len) {
|
|
165
|
+
this.position = len;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
}));
|
|
146
169
|
}
|
|
147
170
|
write(buffer) {
|
|
148
|
-
return Effect.map(nodeWrite(this.fd, buffer
|
|
171
|
+
return this.semaphore.withPermits(1)(Effect.map(Effect.suspend(() => nodeWrite(this.fd, buffer, undefined, undefined, this.append ? undefined : Number(this.position))), bytesWritten => {
|
|
172
|
+
const sizeWritten = FileSystem.Size(bytesWritten);
|
|
173
|
+
if (!this.append) {
|
|
174
|
+
this.position = this.position + sizeWritten;
|
|
175
|
+
}
|
|
176
|
+
return sizeWritten;
|
|
177
|
+
}));
|
|
149
178
|
}
|
|
150
|
-
|
|
151
|
-
return Effect.flatMap(nodeWriteAll(this.fd, buffer), bytesWritten => {
|
|
179
|
+
writeAllChunk(buffer) {
|
|
180
|
+
return Effect.flatMap(Effect.suspend(() => nodeWriteAll(this.fd, buffer, undefined, undefined, this.append ? undefined : Number(this.position))), bytesWritten => {
|
|
152
181
|
if (bytesWritten === 0) {
|
|
153
182
|
return Effect.fail(Error.SystemError({
|
|
154
183
|
module: "FileSystem",
|
|
@@ -157,15 +186,19 @@ const makeFile = /*#__PURE__*/(() => {
|
|
|
157
186
|
pathOrDescriptor: this.fd,
|
|
158
187
|
message: "write returned 0 bytes written"
|
|
159
188
|
}));
|
|
160
|
-
} else if (bytesWritten < buffer.length) {
|
|
161
|
-
return this.writeAll(buffer.subarray(bytesWritten));
|
|
162
189
|
}
|
|
163
|
-
|
|
190
|
+
if (!this.append) {
|
|
191
|
+
this.position = this.position + BigInt(bytesWritten);
|
|
192
|
+
}
|
|
193
|
+
return bytesWritten < buffer.length ? this.writeAllChunk(buffer.subarray(bytesWritten)) : Effect.unit;
|
|
164
194
|
});
|
|
165
195
|
}
|
|
196
|
+
writeAll(buffer) {
|
|
197
|
+
return this.semaphore.withPermits(1)(this.writeAllChunk(buffer));
|
|
198
|
+
}
|
|
166
199
|
}
|
|
167
200
|
_a = FileSystem.FileTypeId;
|
|
168
|
-
return fd => new FileImpl(fd);
|
|
201
|
+
return (fd, append) => new FileImpl(fd, append);
|
|
169
202
|
})();
|
|
170
203
|
// == makeTempFile
|
|
171
204
|
const makeTempFileFactory = method => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fileSystem.mjs","names":["identity","Option","Effect","Layer","handleErrnoException","effectify","Error","FileSystem","Crypto","NFS","OS","Path","handleBadArgument","method","err","BadArgument","module","message","String","access","nodeAccess","path","options","mode","constants","F_OK","readable","R_OK","writable","W_OK","copy","nodeCp","cp","fromPath","toPath","force","overwrite","preserveTimestamps","recursive","copyFile","nodeCopyFile","chmod","nodeChmod","chown","nodeChown","uid","gid","link","nodeLink","existingPath","newPath","makeDirectory","nodeMkdir","mkdir","makeTempDirectoryFactory","nodeMkdtemp","mkdtemp","suspend","prefix","directory","join","tmpdir","makeTempDirectory","removeFactory","nodeRm","rm","remove","makeTempDirectoryScoped","removeDirectory","acquireRelease","orDie","openFactory","nodeOpen","open","nodeClose","close","map","fd","makeFile","FileDescriptor","flag","nodeReadFactory","read","nodeRead","nodeReadAlloc","nodeStat","fstat","nodeTruncate","ftruncate","nodeWriteFactory","write","nodeWrite","nodeWriteAll","FileImpl","constructor","_a","stat","makeFileInfo","buffer","length","Number","undefined","position","offset","Size","readAlloc","size","flatMap","sync","Buffer","allocUnsafeSlow","bytesRead","none","some","dst","truncate","writeAll","bytesWritten","fail","SystemError","reason","pathOrDescriptor","subarray","unit","FileTypeId","makeTempFileFactory","randomHexString","bytes","randomBytes","toString","tap","scoped","random","zip","makeTempFile","makeTempFileScoped","removeFile","file","readDirectory","nodeReadDirectory","readdir","readFile","async","resume","signal","data","succeed","readLink","nodeReadLink","readlink","realPath","nodeRealPath","realpath","rename","nodeRename","oldPath","type","isFile","isDirectory","isSymbolicLink","isBlockDevice","isCharacterDevice","isFIFO","isSocket","mtime","fromNullable","atime","birthtime","dev","rdev","ino","nlink","blksize","blocks","symlink","nodeSymlink","target","utimes","nodeUtimes","writeFile","fileSystemImpl","make","layer"],"sources":["../../src/internal/fileSystem.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fileSystem.mjs","names":["identity","Option","Effect","Layer","handleErrnoException","effectify","Error","FileSystem","Crypto","NFS","OS","Path","handleBadArgument","method","err","BadArgument","module","message","String","access","nodeAccess","path","options","mode","constants","F_OK","readable","R_OK","writable","W_OK","copy","nodeCp","cp","fromPath","toPath","force","overwrite","preserveTimestamps","recursive","copyFile","nodeCopyFile","chmod","nodeChmod","chown","nodeChown","uid","gid","link","nodeLink","existingPath","newPath","makeDirectory","nodeMkdir","mkdir","makeTempDirectoryFactory","nodeMkdtemp","mkdtemp","suspend","prefix","directory","join","tmpdir","makeTempDirectory","removeFactory","nodeRm","rm","remove","makeTempDirectoryScoped","removeDirectory","acquireRelease","orDie","openFactory","nodeOpen","open","nodeClose","close","map","fd","makeFile","FileDescriptor","flag","startsWith","nodeReadFactory","read","nodeRead","nodeReadAlloc","nodeStat","fstat","nodeTruncate","ftruncate","nodeWriteFactory","write","nodeWrite","nodeWriteAll","FileImpl","constructor","append","_a","semaphore","unsafeMakeSemaphore","position","stat","makeFileInfo","seek","offset","from","withPermits","sync","buffer","bytesRead","sizeRead","Size","readAlloc","size","flatMap","Buffer","allocUnsafeSlow","Number","none","BigInt","some","dst","truncate","length","undefined","len","bytesWritten","sizeWritten","writeAllChunk","fail","SystemError","reason","pathOrDescriptor","subarray","unit","writeAll","FileTypeId","makeTempFileFactory","randomHexString","bytes","randomBytes","toString","tap","scoped","random","zip","makeTempFile","makeTempFileScoped","removeFile","file","readDirectory","nodeReadDirectory","readdir","readFile","async","resume","signal","data","succeed","readLink","nodeReadLink","readlink","realPath","nodeRealPath","realpath","rename","nodeRename","oldPath","type","isFile","isDirectory","isSymbolicLink","isBlockDevice","isCharacterDevice","isFIFO","isSocket","mtime","fromNullable","atime","birthtime","dev","rdev","ino","nlink","blksize","blocks","symlink","nodeSymlink","target","utimes","nodeUtimes","writeFile","fileSystemImpl","make","layer"],"sources":["../../src/internal/fileSystem.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/mjs/internal/path.mjs
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import { Tag } from "@effect/data/Context";
|
|
2
1
|
import * as Effect from "@effect/io/Effect";
|
|
3
2
|
import * as Layer from "@effect/io/Layer";
|
|
4
3
|
import { BadArgument } from "@effect/platform/Error";
|
|
4
|
+
import { Path } from "@effect/platform/Path";
|
|
5
5
|
import * as NodePath from "node:path";
|
|
6
6
|
import * as NodeUrl from "node:url";
|
|
7
|
-
/** @internal */
|
|
8
|
-
export const Path = /*#__PURE__*/Tag();
|
|
9
7
|
const fromFileUrl = url => Effect.try({
|
|
10
8
|
try: () => NodeUrl.fileURLToPath(url),
|
|
11
9
|
catch: error => BadArgument({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.mjs","names":["
|
|
1
|
+
{"version":3,"file":"path.mjs","names":["Effect","Layer","BadArgument","Path","NodePath","NodeUrl","fromFileUrl","url","try","fileURLToPath","catch","error","module","method","message","toFileUrl","path","pathToFileURL","layerPosix","succeed","of","posix","layerWin32","win32","layer"],"sources":["../../src/internal/path.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,mBAAmB;AAC3C,OAAO,KAAKC,KAAK,MAAM,kBAAkB;AACzC,SAASC,WAAW,QAAQ,wBAAwB;AACpD,SAASC,IAAI,QAAQ,uBAAuB;AAC5C,OAAO,KAAKC,QAAQ,MAAM,WAAW;AACrC,OAAO,KAAKC,OAAO,MAAM,UAAU;AAEnC,MAAMC,WAAW,GAAIC,GAAQ,IAC3BP,MAAM,CAACQ,GAAG,CAAC;EACTA,GAAG,EAAEA,CAAA,KAAMH,OAAO,CAACI,aAAa,CAACF,GAAG,CAAC;EACrCG,KAAK,EAAGC,KAAK,IACXT,WAAW,CAAC;IACVU,MAAM,EAAE,MAAM;IACdC,MAAM,EAAE,aAAa;IACrBC,OAAO,EAAE,GAAGH,KAAK;GAClB;CACJ,CAAC;AAEJ,MAAMI,SAAS,GAAIC,IAAY,IAC7BhB,MAAM,CAACQ,GAAG,CAAC;EACTA,GAAG,EAAEA,CAAA,KAAMH,OAAO,CAACY,aAAa,CAACD,IAAI,CAAC;EACtCN,KAAK,EAAGC,KAAK,IACXT,WAAW,CAAC;IACVU,MAAM,EAAE,MAAM;IACdC,MAAM,EAAE,WAAW;IACnBC,OAAO,EAAE,GAAGH,KAAK;GAClB;CACJ,CAAC;AAEJ;AACA,OAAO,MAAMO,UAAU,gBAAGjB,KAAK,CAACkB,OAAO,CACrChB,IAAI,eACJA,IAAI,CAACiB,EAAE,CAAC;EACN,GAAGhB,QAAQ,CAACiB,KAAK;EACjBf,WAAW;EACXS;CACD,CAAC,CACH;AAED;AACA,OAAO,MAAMO,UAAU,gBAAGrB,KAAK,CAACkB,OAAO,CACrChB,IAAI,eACJA,IAAI,CAACiB,EAAE,CAAC;EACN,GAAGhB,QAAQ,CAACmB,KAAK;EACjBjB,WAAW;EACXS;CACD,CAAC,CACH;AAED;AACA,OAAO,MAAMS,KAAK,gBAAGvB,KAAK,CAACkB,OAAO,CAChChB,IAAI,eACJA,IAAI,CAACiB,EAAE,CAAC;EACN,GAAGhB,QAAQ;EACXE,WAAW;EACXS;CACD,CAAC,CACH"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/platform-node",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.5",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"@effect/data": "^0.17.1",
|
|
11
11
|
"@effect/io": "^0.37.0",
|
|
12
12
|
"@effect/stream": "^0.33.0",
|
|
13
|
-
"@effect/platform": "^0.10.
|
|
13
|
+
"@effect/platform": "^0.10.4"
|
|
14
14
|
},
|
|
15
15
|
"publishConfig": {
|
|
16
16
|
"access": "public"
|
package/src/FileSystem.ts
CHANGED
|
@@ -184,7 +184,7 @@ const openFactory = (method: string) => {
|
|
|
184
184
|
nodeOpen(path, options?.flag ?? "r", options?.mode),
|
|
185
185
|
(fd) => Effect.orDie(nodeClose(fd))
|
|
186
186
|
),
|
|
187
|
-
Effect.map((fd) => makeFile(FileSystem.FileDescriptor(fd)))
|
|
187
|
+
Effect.map((fd) => makeFile(FileSystem.FileDescriptor(fd), options?.flag?.startsWith("a") ?? false))
|
|
188
188
|
)
|
|
189
189
|
}
|
|
190
190
|
const open = openFactory("open")
|
|
@@ -221,43 +221,65 @@ const makeFile = (() => {
|
|
|
221
221
|
class FileImpl implements FileSystem.File {
|
|
222
222
|
readonly [FileSystem.FileTypeId] = identity
|
|
223
223
|
|
|
224
|
+
private readonly semaphore = Effect.unsafeMakeSemaphore(1)
|
|
225
|
+
private position: bigint = 0n
|
|
226
|
+
|
|
224
227
|
constructor(
|
|
225
|
-
readonly fd: FileSystem.File.Descriptor
|
|
228
|
+
readonly fd: FileSystem.File.Descriptor,
|
|
229
|
+
private readonly append: boolean
|
|
226
230
|
) {}
|
|
227
231
|
|
|
228
232
|
get stat() {
|
|
229
233
|
return Effect.map(nodeStat(this.fd), makeFileInfo)
|
|
230
234
|
}
|
|
231
235
|
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
236
|
+
seek(offset: FileSystem.Size, from: FileSystem.SeekMode) {
|
|
237
|
+
return this.semaphore.withPermits(1)(
|
|
238
|
+
Effect.sync(() => {
|
|
239
|
+
if (from === "start") {
|
|
240
|
+
this.position = offset
|
|
241
|
+
} else if (from === "current") {
|
|
242
|
+
this.position = this.position + offset
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
return this.position
|
|
246
|
+
})
|
|
243
247
|
)
|
|
244
248
|
}
|
|
245
249
|
|
|
246
|
-
|
|
247
|
-
return
|
|
250
|
+
read(buffer: Uint8Array) {
|
|
251
|
+
return this.semaphore.withPermits(1)(
|
|
252
|
+
Effect.map(
|
|
253
|
+
Effect.suspend(() =>
|
|
254
|
+
nodeRead(this.fd, {
|
|
255
|
+
buffer,
|
|
256
|
+
position: this.position
|
|
257
|
+
})
|
|
258
|
+
),
|
|
259
|
+
(bytesRead) => {
|
|
260
|
+
const sizeRead = FileSystem.Size(bytesRead)
|
|
261
|
+
this.position = this.position + sizeRead
|
|
262
|
+
return sizeRead
|
|
263
|
+
}
|
|
264
|
+
)
|
|
265
|
+
)
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
readAlloc(size: FileSystem.Size) {
|
|
269
|
+
return this.semaphore.withPermits(1)(Effect.flatMap(
|
|
248
270
|
Effect.sync(() => Buffer.allocUnsafeSlow(Number(size))),
|
|
249
271
|
(buffer) =>
|
|
250
272
|
Effect.map(
|
|
251
273
|
nodeReadAlloc(this.fd, {
|
|
252
274
|
buffer,
|
|
253
|
-
|
|
254
|
-
position: options?.offset
|
|
275
|
+
position: this.position
|
|
255
276
|
}),
|
|
256
|
-
(bytesRead) => {
|
|
277
|
+
(bytesRead): Option.Option<Buffer> => {
|
|
257
278
|
if (bytesRead === 0) {
|
|
258
279
|
return Option.none()
|
|
259
280
|
}
|
|
260
281
|
|
|
282
|
+
this.position = this.position + BigInt(bytesRead)
|
|
261
283
|
if (bytesRead === Number(size)) {
|
|
262
284
|
return Option.some(buffer)
|
|
263
285
|
}
|
|
@@ -267,20 +289,45 @@ const makeFile = (() => {
|
|
|
267
289
|
return Option.some(dst)
|
|
268
290
|
}
|
|
269
291
|
)
|
|
270
|
-
)
|
|
292
|
+
))
|
|
271
293
|
}
|
|
272
294
|
|
|
273
295
|
truncate(length?: FileSystem.Size) {
|
|
274
|
-
return
|
|
296
|
+
return this.semaphore.withPermits(1)(
|
|
297
|
+
Effect.map(nodeTruncate(this.fd, length ? Number(length) : undefined), () => {
|
|
298
|
+
if (!this.append) {
|
|
299
|
+
const len = BigInt(length ?? 0)
|
|
300
|
+
if (this.position > len) {
|
|
301
|
+
this.position = len
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
})
|
|
305
|
+
)
|
|
275
306
|
}
|
|
276
307
|
|
|
277
308
|
write(buffer: Uint8Array) {
|
|
278
|
-
return
|
|
309
|
+
return this.semaphore.withPermits(1)(
|
|
310
|
+
Effect.map(
|
|
311
|
+
Effect.suspend(() =>
|
|
312
|
+
nodeWrite(this.fd, buffer, undefined, undefined, this.append ? undefined : Number(this.position))
|
|
313
|
+
),
|
|
314
|
+
(bytesWritten) => {
|
|
315
|
+
const sizeWritten = FileSystem.Size(bytesWritten)
|
|
316
|
+
if (!this.append) {
|
|
317
|
+
this.position = this.position + sizeWritten
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
return sizeWritten
|
|
321
|
+
}
|
|
322
|
+
)
|
|
323
|
+
)
|
|
279
324
|
}
|
|
280
325
|
|
|
281
|
-
|
|
326
|
+
private writeAllChunk(buffer: Uint8Array): Effect.Effect<never, Error.PlatformError, void> {
|
|
282
327
|
return Effect.flatMap(
|
|
283
|
-
|
|
328
|
+
Effect.suspend(() =>
|
|
329
|
+
nodeWriteAll(this.fd, buffer, undefined, undefined, this.append ? undefined : Number(this.position))
|
|
330
|
+
),
|
|
284
331
|
(bytesWritten) => {
|
|
285
332
|
if (bytesWritten === 0) {
|
|
286
333
|
return Effect.fail(Error.SystemError({
|
|
@@ -290,16 +337,23 @@ const makeFile = (() => {
|
|
|
290
337
|
pathOrDescriptor: this.fd,
|
|
291
338
|
message: "write returned 0 bytes written"
|
|
292
339
|
}))
|
|
293
|
-
} else if (bytesWritten < buffer.length) {
|
|
294
|
-
return this.writeAll(buffer.subarray(bytesWritten))
|
|
295
340
|
}
|
|
296
|
-
|
|
341
|
+
|
|
342
|
+
if (!this.append) {
|
|
343
|
+
this.position = this.position + BigInt(bytesWritten)
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
return bytesWritten < buffer.length ? this.writeAllChunk(buffer.subarray(bytesWritten)) : Effect.unit
|
|
297
347
|
}
|
|
298
348
|
)
|
|
299
349
|
}
|
|
350
|
+
|
|
351
|
+
writeAll(buffer: Uint8Array) {
|
|
352
|
+
return this.semaphore.withPermits(1)(this.writeAllChunk(buffer))
|
|
353
|
+
}
|
|
300
354
|
}
|
|
301
355
|
|
|
302
|
-
return (fd: FileSystem.File.Descriptor): FileSystem.File => new FileImpl(fd)
|
|
356
|
+
return (fd: FileSystem.File.Descriptor, append: boolean): FileSystem.File => new FileImpl(fd, append)
|
|
303
357
|
})()
|
|
304
358
|
|
|
305
359
|
// == makeTempFile
|
package/src/internal/path.ts
CHANGED
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
import { Tag } from "@effect/data/Context"
|
|
2
1
|
import * as Effect from "@effect/io/Effect"
|
|
3
2
|
import * as Layer from "@effect/io/Layer"
|
|
4
3
|
import { BadArgument } from "@effect/platform/Error"
|
|
5
|
-
import
|
|
4
|
+
import { Path } from "@effect/platform/Path"
|
|
6
5
|
import * as NodePath from "node:path"
|
|
7
6
|
import * as NodeUrl from "node:url"
|
|
8
7
|
|
|
9
|
-
/** @internal */
|
|
10
|
-
export const Path = Tag<_Path>()
|
|
11
|
-
|
|
12
8
|
const fromFileUrl = (url: URL): Effect.Effect<never, BadArgument, string> =>
|
|
13
9
|
Effect.try({
|
|
14
10
|
try: () => NodeUrl.fileURLToPath(url),
|