-
Notifications
You must be signed in to change notification settings - Fork 312
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add calls to register/unregister repos #3534
Conversation
This reverts commit f30055f.
**Summary of the pull request** This PR contains implementation changes for the File Explorer Source Control Integration experimental feature. This feature will allow File Explorer to obtain property information from source control technologies for display (image attached below): **Detailed description of the pull request / Additional comments** This PR contains the following changes: - Reference official Dev Home SDK version (that defines APIs for File Explorer Source Control Integration) - Declare FileExplorerSourceControlIntegration as an experimental feature - The FileExplorerSourceControlIntegration project which creates a COM Server used to communicate information with File Explorer - The FileExplorerGitIntegration project which allows Dev Home to come with an inbox extension that understands git - Basic Unit Tests **Validation steps performed** SDK and MSIX local builds Tested Git Integration File Explorer behavior inside VM Related work items: #48431506
…ntrol extensions inside Dev Home (#2984) * changes to write/read data (extension information + root path) from json * address PR comments * revert line endings * address PR comments
* fix * move nullable property in csproj * fix format
* declare appextension for git, find all source control extensions, UI changes, SDK changes, get extension information to use for mapping * changes to map extension to registered root paths, add validation to git implementation * changes after testing * use serilog in validation code * reorder using * use published SDK version * address PR feedback * address PR feedback * address PR feedback * Minor cleanup of RepositoryTracking.cs --------- Co-authored-by: Ryan Shepherd <[email protected]>
* basic remove UI * address feedback
* detect git and invoke functionality * address PR comments * address PR feedback * address style comments
* WARP SPEED COMMIT HISTORY. Rooted out and worked around a major bottleneck inside LibGit2Sharp * Better status * Introduce RepositoryWrapper to lock access to Repository * Update unit test to reflect new repo status * Check cache before calling Repository.IsValid
…inside Dev Home (#3484) * proposed telemetry changes for add/remove repository * remove unrequired using statements * address PR feedback * address PR feedback * adjust comment * add count of repos tracked inside Dev Home to event
… flavors in appxmanifest
var normalizedPath = rootPath.ToUpper(CultureInfo.InvariantCulture).TrimEnd(Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar); | ||
var result = SourceControlIntegration.ValidateSourceControlExtension(extensionCLSID, normalizedPath); | ||
var normalizedPath = rootPath.TrimEnd(Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar); | ||
var result = SourceControlIntegration.ValidateSourceControlExtension(extensionCLSID, normalizedPath); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
With the recent UI changes merged, these calls to register/unregister will have to be placed differently. The call to register would need to go in AssignSourceControlProviderToRepository and unregister would need to go in
RemoveTrackedRepositoryFromDevHome. Thanks!
|
||
public static class SourceControlIntegrationHelper | ||
{ | ||
public static string GetSafeRootPath(string rootPath) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not a fan of the name. This isn't returning the root path, but a part of the root path. The last part. maybe GetLowestDirectoryFromRootPath
, or GetNameOfRepositoryDirectory
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, I do not agree that the word "safe" is appropriate because no names are being obfuscated.
This is superseded by #3555 |
Summary of the pull request
I've strengthened the FileExplorer feature detection and put in some temporary workarounds in the helpers package so that we can now register/unregister repos directly from within DevHome.
Detailed description of the pull request / Additional comments
This is temporarily using a private version of the helpers package while I work on publishing an official version. Will update the version once available.
Also removed the upper-casing of the file paths. Might still want to consider some sort of "case correction" - Windows file system is case-insensitive, but Git is a bit less forgiving, so we should strive to use the exact case Windows and Git are actually using.
Validation steps performed
Built private build and tested the register/unregister calls.
PR checklist