-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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 Rich Code Navigation Indexing #5790
Conversation
FYI adding to the main CI as opposed to a separate pipeline will add 15 minutes to your total CI time |
@rainersigwald concerns with the added build time? |
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.
It looks like it ran but only took a few minutes? And it didn't run as a separate pipeline? Where did the 15 minutes come from?
Rich code navigation looks cool! Looking forward to trying it out in a future PR!
.vsts-dotnet-ci.yml
Outdated
@@ -58,6 +58,11 @@ jobs: | |||
inputs: | |||
filename: 'eng/cibuild_bootstrapped_msbuild.cmd' | |||
arguments: '-msbuildEngine dotnet' | |||
- task: RichCodeNavIndexer@0 |
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.
Was it intentional to only add this to the Core on Windows build? (As opposed to any of the others)
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.
Honestly, mostly just picked a build :) We have a requirement to run on Windows, but otherwise no reason to do "Windows Core" over "Windows Full"
.vsts-dotnet-ci.yml
Outdated
displayName: RichCodeNav Upload | ||
inputs: | ||
languages: 'csharp' | ||
continueOnError: true |
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.
Do you need to add a condition?
.vsts-dotnet-richnav.yml
Outdated
@@ -0,0 +1,21 @@ | |||
trigger: | |||
- master |
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.
Might want to also trigger for exp/* and vs*
.vsts-dotnet-richnav.yml
Outdated
- master | ||
|
||
jobs: | ||
- job: BootstrapMSBuildOnFullFrameworkWindows |
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.
Should this name reference rich navigation? And not bootstrap?
.vsts-dotnet-richnav.yml
Outdated
displayName: build | ||
inputs: | ||
filePath: eng/common/build.ps1 | ||
arguments: '-restore -build -ci /p:CreateBootstrap=false /nr:false' |
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.
arguments: '-restore -build -ci /p:CreateBootstrap=false /nr:false' | |
arguments: '-restore -build -ci /nr:false' |
(It's the default.)
@Forgind ahh thanks you're right, it only adds 5 minutes to your build time (apologies - I'm adding to a bunch of dotnet repos at once and get confused very easily 😵). Yeah, for now I've added both a new pipeline AND added it as a step to the existing CI. I'll only merge with one of those options remaining depending on if y'all are willing to add 5 minutes to your build for PR support or would rather keep your PR builds faster 😄 |
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.
Looks good to me! What's the advantage of the add-5-minutes version?
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.
My inclination is to have faster builds. Fortunately, one of our Windows legs (full/release/no bootstrap) is pretty reliably >5 minutes faster than some of the others, so we can have our cake and eat it too! I moved to that one and deleted the standalone definition.
Thanks, @jepetty!
Awesome, thanks for the reviews and help! @Forgind the bonus to adding 5 minutes to each build is that you'll have the option of having rich pull request reviews. For now, this rich code review experience is supported in VS Code, but we're actively looking at enabling it in other clients |
@rainersigwald or @Forgind it looks like I don't actually have the permission to merge this PR 😄 |
LGTM so I'm losing the loop on this, thanks @jepetty! |
Thanks, Ben! 😃 |
I've altered two files:
Based on your team's preference, only one of these changes is necessary.
Rich Code Navigation
Docs Link
With Rich Code Navigation, you can use editor-level navigation capabilities (like peek definition, find all references, and even diagnostics) on a pull request, without requiring a local checkout. This is available across all files and dependencies of your repository.
Rich Code Navigation is available for Visual Studio (for repos hosted on GitHub or Azure Repos) and Visual Studio Code (for repos hosted on GitHub).
Rich Code Navigation supports these capabilities: