jvilk / BrowserFS

BrowserFS is an in-browser filesystem that emulates the Node JS filesystem API and supports storing and retrieving files from various backends.
Other
3.06k stars 216 forks source link

AsyncMirror Filesystem doesn't set 'root' #346

Closed VariantXYZ closed 1 year ago

VariantXYZ commented 1 year ago

I was trying to follow the simple AsyncMirror example in the README, but it was failing. After some digging, I found that unlike something like 'LocalStorage', it seems to not correctly set the rootFS.

BrowserFS.configure({
  fs: "AsyncMirror",
  options: {
    sync: { fs: "InMemory" },
    async: { fs: "IndexedDB", options: { storeName: "Test" } }
  }
}, function(e) {
  // BrowserFS is initialized and ready-to-use!
});

var fs = await BrowserFS.BFSRequire("fs");
await fs.mkdir('/test');
console.log(await fs.readdir('/test')); // Will return 'undefined'

I'm currently digging through trying to figure out how exactly this should be resolved (would the root FS need to be set to the 'InMemory' FS?), but any guidance or a fix would be appreciated.

james-pre commented 1 year ago

@VariantXYZ BrowserFS is not promise based. Your code should look like the following:

await BrowserFS.configureAsync({
  fs: "AsyncMirror",
  options: {
    sync: { fs: "InMemory" },
    async: { fs: "IndexedDB", options: { storeName: "Test" } }
  }
});

const fs = BrowserFS.BFSRequire('fs');
fs.mkdirSync('/test');
console.log(fs.readdirSync('/test'));
VariantXYZ commented 1 year ago

Thanks for the reply @james-pre.

Understood. My example was hastily typed as I was experimenting with both this and lightning-fs while trying to get a single FS to work with both isomorphic-git and an emscripten-compiled app.

Trying your code, there's no 'configureAsync' function in browserfs-2.0.0 (what 'beta' points to right now).

However, the code aside, unfortunately the root issue mentioned is still present. Even that 'mkdirSync' call will go into 'assertRoot' and fail since root wasn't set correctly.

VariantXYZ commented 1 year ago

(For reference, both InMemory and IndexedDB seem to work fine on their own, it's just when combined with AsyncMirror that no root is set)

james-pre commented 1 year ago

Here BFS exports configureAsync. You may need to build the latest commit from source.

Also, in your code you probably need to put the FS calls inside the configure callback.

VariantXYZ commented 1 year ago

Hey @james-pre,

I tried building from source but it seems like I'm hitting a common issue (the CI build seems to be failing too). I was using npm install.

$ node -v
v19.7.0
$ npm -v
9.6.0
src/backend/FileSystemAccess.ts:232:56 - error TS2345: Argument of type 'BFSCallback<File>' is not assignable to parameter of type 'Cred'.
  Type 'BFSCallback<File>' is missing the following properties from type 'Cred': uid, gid, suid, sgid, and 2 more.

232     this.writeFile(p, emptyBuffer(), null, flag, mode, cb, true);
                                                           ~~

src/backend/HTTPRequest.ts:297:13 - error TS6133: 'stats' is declared but its value is never read.

297       const stats = inode.getData();
                ~~~~~

src/backend/HTTPRequest.ts:346:13 - error TS6133: 'stats' is declared but its value is never read.

346       const stats = inode.getData();
                ~~~~~

src/core/backends.ts:21:190 - error TS2345: Argument of type '(fsType: FileSystemConstructor) => void' is not assignable to parameter of type '(value: typeof AsyncMirror | typeof DropboxFileSystem | typeof EmscriptenFileSystem | typeof FileSystemAccessFileSystem | typeof FolderAdapter | typeof HTML5FS | typeof InMemoryFileSystem | typeof IndexedDBFileSystem | typeof LocalStorageFileSystem | ... 5 more ... | typeof IsoFS, index: number, array: (typeof Async...'.
  Types of parameters 'fsType' and 'value' are incompatible.
    Type 'typeof AsyncMirror | typeof DropboxFileSystem | typeof EmscriptenFileSystem | typeof FileSystemAccessFileSystem | typeof FolderAdapter | typeof HTML5FS | typeof InMemoryFileSystem | typeof IndexedDBFileSystem | typeof LocalStorageFileSystem | ... 5 more ... | typeof IsoFS' is not assignable to type 'FileSystemConstructor'.
      Property 'CreateAsync' is missing in type 'typeof FileSystemAccessFileSystem' but required in type 'FileSystemConstructor'.

21 [AsyncMirror, Dropbox, Emscripten, FileSystemAccess, FolderAdapter, HTML5FS, InMemory, IndexedDB, IsoFS, LocalStorage, MountableFileSystem, OverlayFS, WorkerFS, HTTPRequest, ZipFS].forEach((fsType: FileSystemConstructor) => {
                                                                                                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  src/core/file_system.ts:384:3
    384   CreateAsync(options: object): Promise<FileSystem>;
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    'CreateAsync' is declared here.

src/core/backends.ts:45:7 - error TS2322: Type '{ AsyncMirror: typeof AsyncMirror; Dropbox: typeof DropboxFileSystem; Emscripten: typeof EmscriptenFileSystem; FileSystemAccess: typeof FileSystemAccessFileSystem; FolderAdapter: typeof FolderAdapter; HTML5FS: typeof HTML5FS; ... 9 more ...; ZipFS: typeof ZipFS; }' is not assignable to type '{ [name: string]: FileSystemConstructor; }'.
  Property 'FileSystemAccess' is incompatible with index signature.
    Type 'typeof FileSystemAccessFileSystem' is not assignable to type 'FileSystemConstructor'.

45 const _: {[name: string]: FileSystemConstructor} = Backends;
         ~
james-pre commented 1 year ago

@VariantXYZ The PR I made should fix those build errors.

VariantXYZ commented 1 year ago

Thanks @james-pre.

I had to set NODE_OPTIONS to include --openssl-legacy-provider, but it seemed to mostly work. There seem to be a ton of lint errors, but for now I'll see if I can skip them (see below).

ERROR: /mnt/d/Projects/BrowserFS/src/backend/AsyncMirror.ts[133, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/AsyncMirror.ts[133, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/AsyncMirror.ts[133, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/AsyncMirror.ts[134, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/AsyncMirror.ts[135, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/AsyncMirror.ts[135, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/AsyncMirror.ts[135, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/AsyncMirror.ts[136, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/AsyncMirror.ts[137, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/AsyncMirror.ts[248, 50]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/backend/AsyncMirror.ts[248, 67]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Dropbox.ts[201, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Dropbox.ts[201, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Dropbox.ts[201, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Dropbox.ts[202, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Dropbox.ts[203, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Dropbox.ts[203, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Dropbox.ts[203, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Dropbox.ts[204, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Dropbox.ts[205, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Emscripten.ts[214, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Emscripten.ts[214, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Emscripten.ts[214, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Emscripten.ts[215, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Emscripten.ts[216, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Emscripten.ts[216, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Emscripten.ts[216, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Emscripten.ts[217, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Emscripten.ts[218, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Emscripten.ts[351, 50]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/backend/Emscripten.ts[351, 67]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FileSystemAccess.ts[100, 11]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FileSystemAccess.ts[100, 25]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FileSystemAccess.ts[102, 10]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FileSystemAccess.ts[102, 14]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FileSystemAccess.ts[213, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FileSystemAccess.ts[213, 2]: parameters are not aligned
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FileSystemAccess.ts[213, 13]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FolderAdapter.ts[65, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FolderAdapter.ts[65, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FolderAdapter.ts[65, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FolderAdapter.ts[66, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FolderAdapter.ts[67, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FolderAdapter.ts[67, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FolderAdapter.ts[67, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FolderAdapter.ts[68, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/FolderAdapter.ts[69, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTML5FS.ts[185, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTML5FS.ts[185, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTML5FS.ts[185, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTML5FS.ts[186, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTML5FS.ts[187, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTML5FS.ts[187, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTML5FS.ts[187, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTML5FS.ts[188, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTML5FS.ts[189, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[130, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[130, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[130, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[131, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[132, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[132, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[132, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[133, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[134, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[234, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[234, 57]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[264, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[264, 56]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[293, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[293, 58]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[341, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[341, 58]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[387, 14]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/HTTPRequest.ts[387, 63]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/InMemory.ts[53, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/InMemory.ts[53, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/InMemory.ts[53, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/InMemory.ts[54, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/InMemory.ts[55, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/InMemory.ts[55, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/InMemory.ts[55, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/InMemory.ts[56, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/InMemory.ts[57, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IndexedDB.ts[248, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IndexedDB.ts[248, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IndexedDB.ts[248, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IndexedDB.ts[249, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IndexedDB.ts[250, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IndexedDB.ts[250, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IndexedDB.ts[250, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IndexedDB.ts[251, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IndexedDB.ts[252, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IsoFS.ts[1181, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IsoFS.ts[1181, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IsoFS.ts[1181, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IsoFS.ts[1182, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IsoFS.ts[1183, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IsoFS.ts[1183, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IsoFS.ts[1183, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IsoFS.ts[1184, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/IsoFS.ts[1185, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/LocalStorage.ts[99, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/LocalStorage.ts[99, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/LocalStorage.ts[99, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/LocalStorage.ts[100, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/LocalStorage.ts[101, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/LocalStorage.ts[101, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/LocalStorage.ts[101, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/LocalStorage.ts[102, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/LocalStorage.ts[103, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/MountableFileSystem.ts[89, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/MountableFileSystem.ts[89, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/MountableFileSystem.ts[89, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/MountableFileSystem.ts[90, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/MountableFileSystem.ts[91, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/MountableFileSystem.ts[91, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/MountableFileSystem.ts[91, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/MountableFileSystem.ts[92, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/MountableFileSystem.ts[93, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[295, 1]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[744, 46]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[744, 63]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[757, 50]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[757, 67]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[1028, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[1028, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[1028, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[1029, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[1030, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[1030, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[1030, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[1031, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/OverlayFS.ts[1032, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/WorkerFS.ts[520, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/WorkerFS.ts[520, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/WorkerFS.ts[520, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/WorkerFS.ts[521, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/WorkerFS.ts[522, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/WorkerFS.ts[522, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/WorkerFS.ts[522, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/WorkerFS.ts[523, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/WorkerFS.ts[524, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/WorkerFS.ts[781, 46]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/backend/WorkerFS.ts[781, 63]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/backend/ZipFS.ts[563, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/ZipFS.ts[563, 5]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/ZipFS.ts[563, 19]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/ZipFS.ts[564, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/ZipFS.ts[565, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/ZipFS.ts[565, 4]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/ZipFS.ts[565, 8]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/backend/ZipFS.ts[566, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/backend/ZipFS.ts[567, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/core/FS.ts[185, 14]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/FS.ts[1445, 21]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/FS.ts[1463, 17]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/FS.ts[1464, 17]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/api_error.ts[73, 50]: Missing semicolon
ERROR: /mnt/d/Projects/BrowserFS/src/core/browserfs.ts[68, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/core/cred.ts[6, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/core/cred.ts[7, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/core/cred.ts[8, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/core/cred.ts[9, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/core/cred.ts[10, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/core/cred.ts[11, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/core/cred.ts[12, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/core/cred.ts[13, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/core/cred.ts[13, 3]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/cred.ts[15, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/core/cred.ts[15, 2]: Declaration of public static field not allowed after declaration of constructor. Instead, this should come at the beginning of the class/interface.
ERROR: /mnt/d/Projects/BrowserFS/src/core/cred.ts[16, 2]: file should end with a newline
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[291, 39]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[291, 56]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[297, 43]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[297, 60]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[478, 63]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[530, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[530, 37]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[780, 46]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[780, 63]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[783, 50]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[783, 67]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[899, 46]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/core/file_system.ts[899, 63]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[141, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[142, 14]: Missing semicolon
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[144, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[145, 14]: Missing semicolon
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[214, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[214, 43]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[214, 47]: comment must start with a space
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[219, 1]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[220, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[220, 18]: == should be ===
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[220, 30]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[224, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[224, 18]: == should be ===
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[224, 30]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[235, 19]: Missing semicolon
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[242, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[258, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[258, 52]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[261, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/core/node_fs_stats.ts[261, 52]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/file_index.ts[254, 5]: comment must start with a space
ERROR: /mnt/d/Projects/BrowserFS/src/generic/inode.ts[20, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/generic/inode.ts[21, 1]: space indentation expected
ERROR: /mnt/d/Projects/BrowserFS/src/generic/inode.ts[106, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/inode.ts[111, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[383, 1]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[387, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[387, 46]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[400, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[400, 62]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[463, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[463, 46]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[481, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[481, 56]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[512, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[512, 55]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[524, 50]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[524, 67]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[590, 30]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[682, 9]: comment must start with a space
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[683, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[683, 66]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[734, 1]: Consecutive blank lines are forbidden
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[734, 1]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[740, 7]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[740, 63]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[747, 1]: Consecutive blank lines are forbidden
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[747, 1]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[748, 1]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[907, 27]: Parentheses are required around the parameters of an arrow function definition
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[908, 9]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[908, 33]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[909, 11]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[909, 52]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[942, 1]: Consecutive blank lines are forbidden
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[942, 1]: trailing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[1030, 11]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[1030, 61]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[1060, 11]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[1060, 50]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[1085, 11]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[1085, 51]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[1129, 11]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[1129, 61]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[1385, 9]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[1385, 65]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[1438, 9]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/key_value_filesystem.ts[1438, 65]: missing whitespace
ERROR: /mnt/d/Projects/BrowserFS/src/generic/locked_fs.ts[296, 46]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/generic/locked_fs.ts[296, 63]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/generic/locked_fs.ts[305, 50]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/generic/locked_fs.ts[305, 67]: variable name must be in lowerCamelCase, PascalCase or UPPER_CASE
ERROR: /mnt/d/Projects/BrowserFS/src/generic/preload_file.ts[362, 1]: asterisks in jsdoc must be aligned
ERROR: /mnt/d/Projects/BrowserFS/src/generic/preload_file.ts[363, 1]: asterisks in jsdoc must be aligned
ERROR: /mnt/d/Projects/BrowserFS/src/generic/preload_file.ts[364, 1]: asterisks in jsdoc must be aligned
ERROR: /mnt/d/Projects/BrowserFS/src/generic/preload_file.ts[365, 1]: asterisks in jsdoc must be aligned
ERROR: /mnt/d/Projects/BrowserFS/src/generic/preload_file.ts[366, 1]: asterisks in jsdoc must be aligned
ERROR: /mnt/d/Projects/BrowserFS/src/generic/preload_file.ts[367, 2]: members are not aligned

ERROR: "lint" exited with 2.
npm ERR! code 1
VariantXYZ commented 1 year ago

Skipped lint, it built. Seems to work, but I'll test more thoroughly.

james-pre commented 1 year ago

@VariantXYZ I'll hopefully be fixing all the CI stuff (including linting and formatting) soon.

james-pre commented 1 year ago

@emeryberger It should be safe to close this issue.