Commit Graph

353 Commits

Author SHA1 Message Date
Stephen Ward 78b3452d5d added the addition of an optional mode when opening a file, removed my test because it was broken. Seemingly passes all the other tests still. STILL TO DO: add a proper test which makes sure the mode is set. 2018-09-24 19:10:09 -04:00
Stephen Ward e7811eb53b fixed lint spaces/indentation errors 2018-09-24 17:46:01 -04:00
Stephen Ward add00ce563 testing out the validateAndMask() function, with console.log's... 2018-09-23 13:49:00 -04:00
Dmytro 353290a08f Adding support for promises. Closes #379, #382 (#380)
* adding promise-based filedescriptor

* fixing promisify dep

* promisifying shell

* deprecating 'exists' method on fs

* adding docs

* fixing docs

* removing redundant code.
2018-08-27 19:50:41 -04:00
David Humphrey 7798b1cb87 Fix lint issues in implementation.js 2018-07-27 11:23:06 -04:00
David Humphrey 0da0e60194 Fix lint issues in interface.js 2018-07-27 11:17:45 -04:00
David Humphrey dc8fa4cb96 Fix lint issues in node.js 2018-07-27 11:17:03 -04:00
David Humphrey 3a44c1756a Fix lint issues in src/path.js 2018-07-27 11:16:30 -04:00
David Humphrey 8d553b78e0 Fix lint issues in indexeddb.js provider 2018-07-27 11:14:08 -04:00
David Humphrey b92151cdc5 Fix lint issues in websql.js provider 2018-07-27 11:13:40 -04:00
David Humphrey ed11b01234 Fix lint issues in shell.js 2018-07-27 11:12:06 -04:00
David Humphrey a900d8df6d Add eslint --fix scripts, fix first round of lint errors 2018-07-15 13:25:35 -04:00
David Humphrey 9ded3ea1eb Fixup comment that got removed 2018-07-14 10:02:29 -04:00
David Humphrey b7ecae4af1 Fix typos and clean up for review 2018-07-14 10:02:29 -04:00
David Humphrey eee8200e23 Remove FirefoxOS hack for https://github.com/humphd/next/issues/59 2018-07-14 10:02:29 -04:00
David Humphrey 1087371fc4 Deal with file type bits in mode when setting permissions via chmod 2018-07-14 10:02:29 -04:00
David Humphrey 4e73ef8d9b Allow relpaths for symlink targets (needed by P9vfs), get rid of path info in Node 2018-07-14 10:02:29 -04:00
David Humphrey 9508833b37 Add chown, fchown, chmod, fchmod and tests. 2018-07-14 10:02:29 -04:00
David Humphrey e77a8bacd3 Add fs.constants and file mode permissions 2018-07-14 10:02:29 -04:00
David Humphrey bf1d0e41d6 Fix bug with stats.name generated from fd, add tests 2018-07-14 10:02:29 -04:00
David Humphrey c526445a43 Fix mode, fs.link, fix other bugs and cleanup 2018-07-14 10:02:29 -04:00
David Humphrey 0aaaeacd1a Update sh.ls and stats to remove bits I don't need, add what I do. 2018-07-14 10:02:29 -04:00
David Humphrey ee412d4abe Restructure layout of node 2018-07-14 10:02:29 -04:00
David Humphrey 9244e9be6e Switch from .mode to .type on nodes 2018-07-14 10:02:29 -04:00
David Humphrey 2efb956411 Switch from MODE_* to NODE_TYPE_* 2018-07-14 10:02:29 -04:00
David Humphrey 93633da622 All basic operations now working in Linux 9P mounted fs 2018-07-14 10:02:29 -04:00
David Humphrey 2e627cfe5b Update Filer for things needed for Plan 9 sharing 2018-07-14 10:02:29 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 3650b798ed Use transaction per operation in indexeddb.js, fix broken async tests in fs.stats.spec.js
Fixing for review comments

Switch to RW or RO transaction per get/put/delete/clear, better error handling for try/catch cases

Switch back to transaction-per-context for better atomic fs operations.

Move _getObjectStore onto prototype
2017-05-25 10:04:20 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca c85fa1851f Fix #357 - Path.resolve() should not crash with missing Path.relative() 2015-06-29 11:38:51 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 17fb8993c3 fs.rename() should normalize paths before using, dir vs. dir/ 2015-05-12 15:16:32 -04:00
Gideon Thomas 67dba10d49 Fix #339 - fs.rename tests fail on the browser 2014-12-17 15:08:13 -05:00
Gideon Thomas 8c4de99a98 Fix #334 - Do not allow fs.link on directories 2014-12-17 13:30:31 -05:00
gideonthomas d28100c422 Fix #308 - fs.rename does not work on directories 2014-12-06 16:34:36 -05:00
Alan K e39129a7f4 Merge pull request #326 from gideonthomas/issue297
Fix #297 - Provide better initialization errors
2014-12-03 00:30:39 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 21b602ef66 Fix #329 - Implement Shell.find() 2014-11-28 15:05:47 -05:00
Gideon Thomas 286074f519 Fix #297 - Provide better initialization errors 2014-11-22 12:47:42 -05:00
Gideon Thomas 91f7bf0319 Fix #256 - fs.read() for dir paths should fail 2014-11-16 00:12:53 -05:00
Kieran Sedgwick 3178ad9a45 Review fixes 2014-11-04 13:03:49 -05:00
Kieran Sedgwick c4c13c1535 Fix #245 - Forced the user to manually instantiate FileSystemShell objects 2014-11-04 13:03:49 -05:00
Alan K ba9902fb93 fix for arraybuffer brokenness on fxos1.3; adds a new code path for that version, other platforms should be the same. 2014-10-24 07:52:11 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 570b40f9ca Add safety around accessing node for an OFD, clean-up xattr code for path vs. ofd 2014-10-17 12:55:36 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 108558e7e6 Fix #184 - remove unneeded standard_check_result_cb 2014-09-27 11:22:15 -04:00
gideonthomas 8c00b856bc Fix #294 - Failure to unlink directories should return an EPERM error 2014-09-24 11:22:29 -04:00
gideonthomas 19eea4f502 Fix #288 - fs.unlink should fail on directory nodes 2014-09-22 11:16:02 -04:00
Ali Al Dallal adf039943d Remove wget to make Filer work in node.js 2014-09-09 09:30:03 -04:00
Alan K 4126321996 remove zip/unzip from shell 2014-09-02 15:48:54 -04:00
gideonthomas f451ed96cc Fix #270 and #276 - pathCheck should handle undefined paths and fix INAVL typo 2014-08-21 16:14:57 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca ba5f3fdbcd Fix #266 - let FileSystem ctor figure out if an existing filesystem exists 2014-08-20 20:53:01 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 057b43ae02 Fix for readdir and non-dir paths 2014-08-20 15:47:14 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca fe0d6ce680 Comment out unused errors for space saving on filer.js 2014-08-18 21:31:25 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 29f50ac2fd Add stacks 2014-08-18 21:04:09 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 851d863652 A few fixes 2014-08-18 19:21:35 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca ee9ea82cfb Fix #261 - include path in errors 2014-08-18 19:13:50 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 84112410ba Fix #258 - Queued fs calls hang when fs goes into error state due to provider.open error 2014-08-18 14:08:54 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca ed0137dece Remove redundant code per review 2014-08-18 11:23:24 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 4b1f95c6c9 Fix descriptor leaks in writeFile and appendFile 2014-08-18 11:15:48 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 2590a886ac Fix in readFile only, stop leaking descriptors in readFile 2014-08-18 11:03:46 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 1a2774b152 ack's fix + more tests for various cases 2014-08-17 17:15:00 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca e8c88be4ba Fixs for WebSQL, remove ensureBuffer(), fix truncate/ftruncate to read Buffer 2014-08-16 17:02:18 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca d55bf23f1b Initial work on #227 - improve storage efficiency of provider API 2014-08-16 16:22:41 -04:00
secretrobotron 77e0ee7117 [issue249] fixed Buffer prototype & tests 2014-08-09 13:05:15 -04:00
secretrobotron eb79a956ea [issue249] forgot the glue
Need to expose FilerBuffer in place of Buffer on Filer namespace.
2014-08-08 15:31:23 -04:00
secretrobotron af1943b5c9 [Issue249] Support for ArrayBuffer in Filer.Buffer
1. Added proxy Buffer constructor for Filer.Buffer.
2. Added tests for new Filer.Buffer.
2014-08-08 15:18:09 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 2114f65f09 Deal with all other uses of this.cwd etc and convert to pwd() on current shell instance. 2014-07-28 18:46:50 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 5b785037f0 Fix #247 - sh.cwd() not updating cwd on success, with test. 2014-07-28 18:14:59 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 9d704e80c9 Fix crash in src/errors.js, see https://github.com/mozilla/makedrive/issues/145 2014-07-24 12:24:47 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca e063edc6fc Expanded test for wide dirs, fix, switch to async.eachSeries everywhere 2014-07-21 15:08:39 -04:00
Alan K 10f1f43d93 Merge pull request #233 from humphd/ensure-root-dir
s/make_root_directory/ensure_root_directory/ and stop failing on existing node. Fixes #232.
2014-07-21 10:02:11 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 2eae45f402 s/type/mode/ 2014-07-16 16:54:02 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 4623b568fb Add node.type test for read_directory_data - causes new test failures 2014-07-16 15:40:40 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 08f037ce53 Follow-up fix for issue #235, deal with '/' when adding trailing slash 2014-07-14 16:46:52 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 87e291da64 Fix issue #235 - Allow recursive watches on root directory 2014-07-14 15:51:40 -04:00
Alan K e23cf3a056 Merge pull request #220 from humphd/guid
Make Filer node guid pluggable, default to de-duping ids on generation.
2014-07-14 20:49:56 +02:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 6716a1ff1a s/make_root_directory/ensure_root_directory/ and stop failing on existing node. Fixes #232. 2014-07-07 17:02:42 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 76526caa35 Add a clarifying comment about not coercing buffers passed to read operations. 2014-06-25 13:51:07 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 25f2a24cdf Fix Issue #230: Error: Uncaught TypeError: undefined is not a function on <Buffer>.copy() 2014-06-25 13:13:55 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 98cd3e6da7 Fix #228: Uncaught [Filer Error] Your browser doesn't support IndexedDB or WebSQL. 2014-06-23 13:09:02 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 939d015e6d All tests passing, replaced zlib.js with jszip, upstream fixes to browser-request + jszip for Buffers 2014-06-06 21:29:09 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca c8dcd2d14a Switch to build-time check vs run-time for request module in browserify 2014-06-06 11:41:26 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca fa65a34905 Get Buffer use fixed, expose Buffer via Filer.Buffer, most tests passing. 2014-06-06 11:14:52 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 1914f7a52b WIP - moving to Buffer internally from Uint8Array, not passing all tests yet. 2014-06-04 15:52:08 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 5ab211d14d Make Filer node guid pluggable, default to de-duping ids on generation. 2014-06-02 16:44:20 -04:00
Kieran Sedgwick bb23e902d2 Closes #204 - Move network.js
The network module (network.js) logically fits better in /shell since it's the only part of filer that uses it.
2014-05-29 13:00:20 -04:00
Kieran Sedgwick 4efa4a91f3 Review fixes from PR #195 2014-05-26 12:31:34 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 930e5ce2e3 Fix some failing tests 2014-05-23 17:01:57 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca d9ed65602a Remove adapters (src, tests, docs), fix providers for node 2014-05-23 14:36:23 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 375719b49b Refactor module system from AMD to CommonJS 2014-05-23 14:14:06 -04:00
Kieran Sedgwick 0bbaf5ff93 Added and fixed unit tests
Aside from testing our new module (network.js), we also had to add logic that would test Filer appropriately in both the node and browser environments.
2014-05-22 23:26:19 -04:00
Kieran Sedgwick 9f33d8503e Swapped out XMLHttpRequest for a custom module
We made a module to encapsulate the logic that chooses the nodejs or browser dependency that actually downloads a file when the module is used.
2014-05-22 23:04:08 -04:00
David Humphrey 5fcd313e2f Fix issue #56: Support Filer in node.js as an fs alternative 2014-05-22 23:04:08 -04:00
David Humphrey e37ba7142c Fix review nit, add test 2014-05-22 15:09:33 -04:00
David Humphrey 185c05e742 Fix issue #196: make memory provider DBs sharable 2014-05-22 13:37:15 -04:00
Alan K 247ebd113a Merge pull request #187 from yoavgurevich/issue62v2
Fixes #62
2014-05-21 16:17:19 -04:00
gideonthomas aff6570ad6 Added mknod command to create a file or directory node 2014-05-21 11:25:23 -04:00
yoavgurevich 067f9beb88 Final revisions on removal of arbitrary logic and indentation issues 2014-05-16 17:17:50 -04:00
yoavgurevich 4d24ab2c36 Fixed logic, format, and dependencies according to line note comments from last pull request. Tested on apache localhost server. 2014-05-16 11:43:54 -04:00
Alan K bb87dcdb5e Merge pull request #174 from pbouianov/issue62
Fixes #62
2014-05-14 20:14:58 -04:00
yoavgurevich 6b2a023dea Corrected conflicting syntax and added testing clause for file descriptor argument value 2014-05-14 16:02:46 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 411d6b2a9c Docs and update arg names to match docs 2014-05-14 13:31:53 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca af4a004435 All zip/unzip tests passing 2014-05-14 13:31:53 -04:00