This repository was archived by the owner on May 9, 2022. It is now read-only.
forked from microsoft/VFSForGit
-
Notifications
You must be signed in to change notification settings - Fork 16
This repository was archived by the owner on May 9, 2022. It is now read-only.
Tracking: Run VFSForGit functional tests on Linux #16
Copy link
Copy link
Closed
Labels
trackingProject status trackingProject status tracking
Description
In order to run the existing VFSForGit functional test suite, we at least will need a consistent mount process on Linux combined with complete implementation of all lower-level ProjFS.Linux and libprojfs functionality.
Once these components are complete we should be able to run the VFSForGit functional tests and learn what other issues arise from their results.
Known requirements:
- Add all file operation event notifications required by VFSForGit (Add all file operation event notifications required by VFSForGit libprojfs#63)
- Wait for FUSE device to be mounted at startup (Wait for FUSE device to be mounted at startup #12)
- Implement DeleteFile and UpdatePlaceholderIfNeeded in ProjFS.Linux (Implement DeleteFile and UpdatePlaceholderIfNeeded in ProjFS.Linux #13)
- Fix event handling bugs in ProjFS.Linux (Improve Linux event-handling robustness and allow provider-generated events microsoft/VFSForGit#1189)
- Determine top-level projection state and pass to libprojfs at mount time (Determine top-level projection state and pass to libprojfs at mount time #20) (Determine top-level projection state and pass to libprojfs at mount time #24)
- Set initial projection state on backing store at first mount (Set initial projection state on backing store at first mount libprojfs#71) (projfs_new accepts FUSE args, and initial proj opt libprojfs#73)
- Determine initial projection state in provider rather than ProjFS layer (Determine initial projection state in provider rather than ProjFS layer #27) (VirtualizationInstance takes initializeStorageRoot flag #28)
- Ensure GVFS provider only accesses .git on lower storage filesystem (Ensure GVFS provider only accesses .git on lower storage filesystem #15)
- Separate LocalStorageRoot from WorkingDirectoryRoot microsoft/VFSForGit#1074
- Update libgit2 native binaries and include .so for Linux microsoft/VFSForGit#1104
- Rename WorkingDirectoryBackingRootPath constants microsoft/VFSForGit#1119
- [POSIX, Mac] Refactor BSD-specific values out of POSIXFileSystem microsoft/VFSForGit#1123
- Build on Linux ([Linux] Add GVFS platform and build configuration for Linux microsoft/VFSForGit#1125)
- Resolve permissions error on
git add(resolve problem with "git add" on mounted repos #23)- Detect and set projection state on read-only files (Detect and set projection state on read-only files libprojfs#72)
- Support case-sensitive file matching (Support case-sensitive file matching on Linux #29)
- Perform case-sensitive path comparisons on Linux microsoft/VFSForGit#1232
- [Linux] Support case-sensitive filesystems microsoft/VFSForGit#1412
- restore mixed-case prefetch folder list tests and tidy MirrorProviders microsoft/VFSForGit#1503
- [Linux] minor POSIX and path case comparison fixups microsoft/VFSForGit#1531
- Enable all relevant functional tests marked Mac-only or Windows-only (enable on Linux all relevant functional tests marked Mac/Windows-only #33)
- Build
GVFS.FunctionalTestsand run all functional tests on Linux (Tracking: Set up unit and functional test CI for Linux #18)- [Linux] Convert tests and repair jobs to use backing root microsoft/VFSForGit#1411
- [Linux] Revise functional tests for cross-device mounts microsoft/VFSForGit#1413
- [Linux] enable most functional tests on Linux microsoft/VFSForGit#1432
- [POSIX] Use platform-specific path separators in repair jobs and cache tests microsoft/VFSForGit#1448
- [POSIX] convert Mac-specific functional tests to POSIX where viable microsoft/VFSForGit#1529
- [Linux] Use backing root and check min version in dehydrate commands/tests microsoft/VFSForGit#1535
wrighty
Metadata
Metadata
Assignees
Labels
trackingProject status trackingProject status tracking