Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
569 commits
Select commit Hold shift + click to select a range
3d9a6f8
Fix tests
CyrusNajmabadi Apr 25, 2025
f180190
Fix tests
CyrusNajmabadi Apr 25, 2025
6a218e3
Fix tests
CyrusNajmabadi Apr 25, 2025
719e363
Fix modifiers
CyrusNajmabadi Apr 25, 2025
0bdfc94
Cleanup the code we have to run copilot code in parallel
CyrusNajmabadi Apr 25, 2025
39b008e
Simplify further
CyrusNajmabadi Apr 25, 2025
e793015
update
CyrusNajmabadi Apr 25, 2025
f8e6e28
Do not place 'static' on non-static operators (#78305)
CyrusNajmabadi Apr 25, 2025
e8740a4
[main] Source code updates from dotnet/dotnet (#78309)
dotnet-maestro[bot] Apr 25, 2025
dcb497c
Move into helper
CyrusNajmabadi Apr 25, 2025
925e97e
Simplify
CyrusNajmabadi Apr 25, 2025
9f6dff8
Ensure we generate a full package for LanguageServices.Xaml
jasonmalinowski Apr 25, 2025
40c8103
Initial stubs for doing analysis of copilot changes to help us drive …
CyrusNajmabadi Apr 25, 2025
a978dea
Update src/Features/ExternalAccess/Copilot/Completion/ICSharpCopilotC…
CyrusNajmabadi Apr 25, 2025
b97f290
[main] Update dependencies from dotnet/arcade (#78078)
dibarbet Apr 25, 2025
cf7f035
Fix operator override completion
CyrusNajmabadi Apr 25, 2025
f074f97
Remove Semantic Search inline Copilot prototype (#78323)
tmat Apr 25, 2025
07135c5
Fix operator override completion (#78327)
CyrusNajmabadi Apr 25, 2025
662347c
Ensure we generate a full package for LanguageServices.Xaml (#78325)
jasonmalinowski Apr 25, 2025
d96afd7
Update ApplyUpdates API to account for no-effect changes (#78220)
tmat Apr 26, 2025
0a6e36a
Start moving workspace events to fire on background threads (#78134)
ToddGrun Apr 26, 2025
6abc1a7
Allow Razor logs to be directed to the right output window in VS Code
davidwengier Apr 27, 2025
aa2eca4
Update dependencies from https://github.com/dotnet/arcade build 20250…
dotnet-maestro[bot] Apr 27, 2025
aafb3c3
Do not offer 'remove unnecessary parens' when it would change a colle…
CyrusNajmabadi Apr 27, 2025
c045d7c
Fix syntax tree creation when modifying source generated documents
davidwengier Apr 28, 2025
73f70f4
Extensions: honor OverloadResolutionPriority attribute (#78219)
Apr 28, 2025
c195a1f
For IsAtDotDotToken, ensure the current token is a DotToken before pa…
ToddGrun Apr 28, 2025
b01529a
Refactor/cleanup usages of MakeCallWithNoExplicitArgument helper (#78…
AlekseyTs Apr 28, 2025
c01a8a0
Cleanup IDE space around instance operators
CyrusNajmabadi Apr 28, 2025
598646e
Update tests
CyrusNajmabadi Apr 28, 2025
31cfcf7
Merge branch 'cleanup' of https://github.com/CyrusNajmabadi/roslyn in…
CyrusNajmabadi Apr 28, 2025
69dd6d7
Revert
CyrusNajmabadi Apr 28, 2025
866ed54
Simplify tests
CyrusNajmabadi Apr 28, 2025
8f36433
Allow batch updating of ProjectUpdateState's RemovedMetadataReference…
ToddGrun Apr 28, 2025
d6866c2
Simplify tests
CyrusNajmabadi Apr 28, 2025
65cc369
Implement SeparatedSyntaxList.Count(Func<T, bool>) (#78348)
ToddGrun Apr 28, 2025
ddf06da
More cases
CyrusNajmabadi Apr 28, 2025
0d43d3d
Raw strings
CyrusNajmabadi Apr 28, 2025
4404682
Simplify
CyrusNajmabadi Apr 28, 2025
7d72685
Simplify
CyrusNajmabadi Apr 28, 2025
e7c2a32
[main] Update dependencies from dotnet/arcade (#78335)
dibarbet Apr 28, 2025
4d2b61e
Reenable source indexing
dibarbet Apr 28, 2025
9433cca
Merge remote-tracking branch 'upstream/main' into copilotAnalysis
CyrusNajmabadi Apr 28, 2025
62c3671
Reenable source indexing (#78352)
dibarbet Apr 28, 2025
730a3c4
Revert
CyrusNajmabadi Apr 28, 2025
c1320d6
Revert
CyrusNajmabadi Apr 28, 2025
1843ac5
Cleanup IDE space around instance operators (#78349)
CyrusNajmabadi Apr 28, 2025
b8b6137
Merge remote-tracking branch 'upstream/main' into mergeWpfDown2
CyrusNajmabadi Apr 28, 2025
73e8a42
Fix tests
CyrusNajmabadi Apr 28, 2025
c964227
Fix
CyrusNajmabadi Apr 28, 2025
0ec9acf
ReferenceEqualityComparer (#78350)
tmat Apr 28, 2025
4c5abfd
Merge remote-tracking branch 'upstream/main' into copilotAnalysis
CyrusNajmabadi Apr 28, 2025
afb3565
Do not use nint / nuint in IL baselines (#78246)
jaredpar Apr 28, 2025
278cf3d
Make IDiagAnalyzerService into a workspace service
CyrusNajmabadi Apr 28, 2025
0068020
Remove unnecessary dependency in LSP handlers
CyrusNajmabadi Apr 28, 2025
668d57e
Downstream
CyrusNajmabadi Apr 28, 2025
34b0171
Merge branch 'analyzerCleanup' into analyzerWorkspaceService
CyrusNajmabadi Apr 28, 2025
4e46fdd
Remove more dependencies
CyrusNajmabadi Apr 28, 2025
f7bbe5d
Simplify Impl interface tests (#78351)
CyrusNajmabadi Apr 28, 2025
163e9f6
Remove more dependencies
CyrusNajmabadi Apr 28, 2025
04189c4
Remove more dependencies
CyrusNajmabadi Apr 28, 2025
19444fd
Remove more dependencies
CyrusNajmabadi Apr 28, 2025
d1982ae
Remove more dependencies
CyrusNajmabadi Apr 28, 2025
c4dec8f
Remove more dependencies
CyrusNajmabadi Apr 28, 2025
36d0b6f
Remove more dependencies
CyrusNajmabadi Apr 28, 2025
8ff17fd
Remove more dependencies
CyrusNajmabadi Apr 28, 2025
4f218fd
Update tests
CyrusNajmabadi Apr 28, 2025
f76c90e
Update tests
CyrusNajmabadi Apr 28, 2025
7e84747
Remove more dependencies
CyrusNajmabadi Apr 28, 2025
65e0b6f
Update tests
CyrusNajmabadi Apr 28, 2025
2eee0c2
remove more
CyrusNajmabadi Apr 28, 2025
ad0f003
Simplify furhter
CyrusNajmabadi Apr 28, 2025
3be97e6
Remove unnecessary dependency in LSP handlers (#78356)
CyrusNajmabadi Apr 28, 2025
bf59590
Make optional
CyrusNajmabadi Apr 28, 2025
61aca92
Merge remote-tracking branch 'upstream/main' into analyzerWorkspaceSe…
CyrusNajmabadi Apr 28, 2025
1d505a0
Remove dependency
CyrusNajmabadi Apr 28, 2025
5631a0e
Allow Razor logs to be directed to the right output window in VS Code…
davidwengier Apr 28, 2025
bfa4780
Add dump reporting for https://github.com/dotnet/roslyn/issues/76225 …
ToddGrun Apr 28, 2025
c9ef0c7
Do not offer use-expr-body for properties with initializers
CyrusNajmabadi Apr 28, 2025
e70ac77
Fix tests
CyrusNajmabadi Apr 28, 2025
02a8b35
Add BuildHost APIs for loading an in-memory project (#78303)
RikkiGibson Apr 28, 2025
b411efa
Make IDiagnosticAnalyzerService into an IWorkspaceService (#78359)
CyrusNajmabadi Apr 28, 2025
710e9a8
Fix
CyrusNajmabadi Apr 28, 2025
f18f6e2
Do not offer use-expr-body for properties with initializers (#78360)
CyrusNajmabadi Apr 29, 2025
9168a12
minor cleanup (no functional change)
maryamariyan Apr 29, 2025
ede8e00
Assume syntax factory exists
davidwengier Apr 29, 2025
4fdbee6
Merge remote-tracking branch 'upstream/main' into copilotAnalysis
CyrusNajmabadi Apr 29, 2025
b5ba5cc
minor cleanup (no functional change) (#78363)
JoeRobich Apr 29, 2025
5559eec
Allow Razor to hook into configuration change notifications
davidwengier Apr 29, 2025
624361d
Do not offer 'remove unnecessary parens' when it would change a colle…
CyrusNajmabadi Apr 29, 2025
9233fa3
Insert missing space in XML documentation (#78361)
alexwiese Apr 29, 2025
748b0e6
Fix async hoisted type substituted local (#78231)
bernd5 Apr 29, 2025
eb89850
Move remaining legacy workspace event listeners over to new APIs. (#7…
ToddGrun Apr 29, 2025
817ec2e
Merge remote-tracking branch 'upstream/main' into copilotAnalysis
CyrusNajmabadi Apr 29, 2025
29d31e8
Add data
CyrusNajmabadi Apr 29, 2025
54481df
Update Language Feature Status.md (#78358)
Apr 29, 2025
2942ee7
Move
CyrusNajmabadi Apr 29, 2025
1b88ccb
Remove suppression and fix VSTHRD100
sharwell Apr 29, 2025
2826975
Update src/EditorFeatures/CSharp/Microsoft.CodeAnalysis.CSharp.Editor…
CyrusNajmabadi Apr 29, 2025
6911efb
Filter out CompilerFeatureRequired and Obsolete attribute from method…
333fred Apr 29, 2025
0211c26
Cleanup the code we have to run copilot code in parallel (#78324)
CyrusNajmabadi Apr 29, 2025
cb303e5
Merge remote-tracking branch 'upstream/main' into mergeWpfDown2
CyrusNajmabadi Apr 29, 2025
a9219d3
Revert
CyrusNajmabadi Apr 29, 2025
6268c4b
Move Range and Index to Contracts source package (#78371)
tmat Apr 29, 2025
4a77242
Fix and report more data
CyrusNajmabadi Apr 29, 2025
aead21b
Fix and report more data
CyrusNajmabadi Apr 29, 2025
441aac4
Do not leak cancellation exception for our own operation
CyrusNajmabadi Apr 29, 2025
4c1a7f4
Add legacy workspace eventing APIs to the banned list inside roslyn (…
ToddGrun Apr 29, 2025
927b5c6
Update `RuntimeHelpers.Await` rules (#77957)
333fred Apr 29, 2025
e6d1a8c
Add conditional access to test plan (#78377)
RikkiGibson Apr 29, 2025
68c533b
Report telemetry
CyrusNajmabadi Apr 29, 2025
906af19
Lint
CyrusNajmabadi Apr 29, 2025
e51c7de
Add tests
CyrusNajmabadi Apr 29, 2025
2de1096
Optimize work done in ProjectCodeModelFactory (#78369)
ToddGrun Apr 29, 2025
e51a3c6
Use ActivationConstraint.FeatureFlag API to control when Semantic Sea…
tmat Apr 29, 2025
93fe2ee
Do not leak cancellation exception for our own operation (#78376)
CyrusNajmabadi Apr 29, 2025
5b2c379
Move more collections and collection related extensions to MS.CA.Coll…
tmat Apr 30, 2025
6bd08bc
Update src/Tools/ExternalAccess/Razor/Features/Cohost/RazorConfigurat…
davidwengier Apr 30, 2025
15ec676
Allow Razor cohosting to hook into configuration change notifications…
davidwengier Apr 30, 2025
fb6e26c
Update src/Features/Core/Portable/Copilot/ICopilotChangeAnalysisServi…
CyrusNajmabadi Apr 30, 2025
cfc1d15
Move ICollectionExtensions to MS.CA.Collections (#78384)
tmat Apr 30, 2025
9041fb0
Extensions: xml docs (#78365)
Apr 30, 2025
2c7fea2
Removed PROTOTYPE comments in features/UserDefinedCompoundAssignment …
akhera99 Apr 30, 2025
f3ecd54
Edit & Continue support for field access in auto-properties (#78289)
DustinCampbell Apr 30, 2025
beb5ca7
Remove suppression and fix VSTHRD100 (#78373)
sharwell Apr 30, 2025
0f3c303
Rename file
RikkiGibson Apr 25, 2025
be598a9
Extract base type LanguageServerProjectLoader
RikkiGibson Apr 25, 2025
8b20c85
Extract base LanguageServerProjectLoader from LanguageServerProjectSy…
RikkiGibson Apr 30, 2025
a60bba1
Implement workaround for missing ValueTuple in remote debugger
tmat Apr 30, 2025
c32ffdd
Set symbol in resolve provider as well
tmat Apr 30, 2025
ded8673
Implement workaround for missing ValueTuple in remote debugger (#78393)
arunchndr Apr 30, 2025
3eaa22f
Update src/Features/Core/Portable/Copilot/ICopilotChangeAnalysisServi…
CyrusNajmabadi Apr 30, 2025
64b5b8a
Apply suggestions from code review
CyrusNajmabadi Apr 30, 2025
6ca379f
Additional tests to complete the test plan (#78396)
AlekseyTs May 1, 2025
dcdd1ef
Merge branch 'main' into UserDefinedCompoundAssignment
AlekseyTs May 1, 2025
41fb414
Pack error and feature id numbers
AlekseyTs May 1, 2025
7033db8
Adjust LocalBinderFactory.VisitInvocationExpression to handle attribu…
AlekseyTs May 1, 2025
9ef6edc
Merge branch 'main' into 'UserDefinedCompoundAssignment' (#78398)
AlekseyTs May 1, 2025
1d48c98
Keep track of accepted vs rejected
CyrusNajmabadi May 1, 2025
9beda72
Merge remote-tracking branch 'upstream/main' into mergeWpfDown2
CyrusNajmabadi May 1, 2025
3f033a4
nrt
CyrusNajmabadi May 1, 2025
c241b09
nrt
CyrusNajmabadi May 1, 2025
02d3b74
Add comment
CyrusNajmabadi May 1, 2025
ac33a1f
Remove unneeded bypass
CyrusNajmabadi May 1, 2025
c947318
Simplify export
CyrusNajmabadi May 1, 2025
1029764
Make non optional
CyrusNajmabadi May 1, 2025
6d022c5
Extract out an interface for our LSP miscellaneous files workspace
jasonmalinowski May 1, 2025
0c4af7c
Revert
CyrusNajmabadi May 1, 2025
782e090
Merge remote-tracking branch 'upstream/main' into copilotAnalysis
CyrusNajmabadi May 1, 2025
495d40a
Add option to disable
CyrusNajmabadi May 1, 2025
8aba25c
Move around
CyrusNajmabadi May 1, 2025
d97d22c
Add logging support
CyrusNajmabadi May 1, 2025
6ac68c6
Call the same test accessor helper used everywhere else
jasonmalinowski May 1, 2025
911ee13
Ensure hover markdown for supported platforms uses non-breaking space…
dibarbet May 1, 2025
355ee34
update tests to account for resource change
dibarbet May 2, 2025
33e2d03
Switch to non-scouting queue to unblock CI
dibarbet May 2, 2025
43d6ab5
Move the GetText call into SourceGeneratedState rather than assuming …
davidwengier May 2, 2025
d819ac8
Switch to non-scouting queue to unblock CI (#78407)
dibarbet May 2, 2025
5b2a693
Skip analyzer documentation check
dibarbet May 2, 2025
f57fbdc
Skip generate analyzer documentation to unblock ci (#78412)
dibarbet May 2, 2025
45f0ca9
Enable analyzer doc validation in correctness runs
dibarbet May 2, 2025
15813a5
Remote stale comment
davidwengier May 2, 2025
74d2b4a
Use System.CLI instead of ordered args
dibarbet May 2, 2025
2c3de4a
Don't write throwaway temp files to tracked git directories
dibarbet May 2, 2025
e01243d
Revert back to scouting queue
dibarbet May 3, 2025
0d198ec
Validate analyzer docs offline by default
dibarbet May 3, 2025
474382a
some cleanup
dibarbet May 3, 2025
efb5c99
Precursor work to merge EditorFeatures.WPF into EditorFeatures. (#78308)
CyrusNajmabadi May 3, 2025
efa67f2
Import v2.0.0 dotnet/issue-labeler default workflows
jeffhandley May 3, 2025
8c75967
Revert back to scouting queue (#78424)
dibarbet May 3, 2025
93aa970
issue-labeler workflow customization for dotnet/roslyn
jeffhandley May 3, 2025
b6ec103
Fix syntax tree creation when modifying source generated documents (#…
davidwengier May 3, 2025
06bac53
Change O(n) + O(lg n) search in SolutionState.SortedProjectStates to …
ToddGrun May 3, 2025
7a2a85c
Ensure hover markdown for supported platforms uses non-breaking space…
dibarbet May 3, 2025
a7ffb04
Exclude EditorFeatures from rebuild check (#78437)
jjonescz May 5, 2025
c04730a
Adjust LocalBinderFactory.VisitInvocationExpression to handle attribu…
AlekseyTs May 5, 2025
e57ec16
Move RestoreUseStaticGraphEvaluation setting inside repo (#78429)
ViktorHofer May 5, 2025
8fa55c0
Merge remote-tracking branch 'upstream/main' into uri_crash
dibarbet May 5, 2025
782a12b
Add logging
CyrusNajmabadi May 5, 2025
9fd10b7
Merge remote-tracking branch 'upstream/main' into copilotAnalysis
CyrusNajmabadi May 5, 2025
aa6439d
Don't require ILspMiscellaneousFilesWorkspace to be a workspace
jasonmalinowski May 5, 2025
b6fab9e
react to main changes
dibarbet May 5, 2025
9cce728
Extract out an interface for our LSP miscellaneous files workspace (#…
jasonmalinowski May 5, 2025
3c435a0
Collapse to single string
CyrusNajmabadi May 5, 2025
73d3db4
Invariant formatting
CyrusNajmabadi May 5, 2025
4fc9a6c
Merge remote-tracking branch 'upstream/main' into uri_crash
dibarbet May 5, 2025
f5ee880
Fix issue buffering results
CyrusNajmabadi May 5, 2025
d377ae6
Merge "User Defined Compound Assignment Operators" feature to 'main' …
AlekseyTs May 6, 2025
32f029f
Enable analyzer doc validation in correctness runs (#78420)
dibarbet May 6, 2025
2320ce6
Add copilot tests IVT to ExternalAccess.Copilot
genlu May 6, 2025
28d925d
Disallow shebang in project-based programs (#78411)
jjonescz May 6, 2025
b12410d
[main] Update dependencies from dotnet/arcade (#78456)
dotnet-maestro[bot] May 6, 2025
1e14d8a
Add WorkItem trait discoverer (#78438)
jjonescz May 6, 2025
c2b6f46
Change `++`/`--` predefined operator names for instance operators (#7…
AlekseyTs May 6, 2025
4c071b6
Remove yield
CyrusNajmabadi May 6, 2025
4796e92
Do not parse URIs during LSP serialization/deserialization (#76691)
dibarbet May 6, 2025
de87379
Add copilot tests IVT to ExternalAccess.Copilot (#78455)
genlu May 6, 2025
2be1e63
Avoid buffering and dispatching all ProducerConsumer items in one go …
CyrusNajmabadi May 6, 2025
243a5c3
pass total milliseconds along
CyrusNajmabadi May 6, 2025
4018b29
Stringify
CyrusNajmabadi May 6, 2025
3adaec9
Update to platform background work pattern to make porting to their i…
CyrusNajmabadi May 6, 2025
79e6fc8
Add impl
CyrusNajmabadi May 6, 2025
88ec60f
REmove default impl of BackgroundWorkIndicator
CyrusNajmabadi May 6, 2025
4d80dc6
Merge branch 'removeDefaultBWI' into bwiWork
CyrusNajmabadi May 6, 2025
6b0115c
Update dependencies from https://github.com/dotnet/arcade build 20250…
dotnet-maestro[bot] May 6, 2025
a403994
Remove default impl of BackgroundWorkIndicator (#78470)
CyrusNajmabadi May 6, 2025
fc6d789
Merge branch 'main' into bwiWork
CyrusNajmabadi May 6, 2025
c7e986b
[main] Update dependencies from dotnet/arcade (#78471)
JoeRobich May 6, 2025
0c003e9
Update Language Feature Status.md and Update Compiler Test Plan.md fo…
AlekseyTs May 6, 2025
c53bdd8
Update to platform background work pattern to make porting to their i…
CyrusNajmabadi May 6, 2025
f64a80d
Make compiler detection more resilient (#78402)
jaredpar May 7, 2025
0ee3dc1
Extensions: resolve some follow-up comments on signature conflicts an…
May 7, 2025
28d61ae
Add comments and doc for the issue-labeler workflows
jeffhandley May 7, 2025
fdbbf6b
Fix razor redirect (#78448)
chsienki May 7, 2025
4a7d532
Merge remote-tracking branch 'upstream/main' into copilotAnalysis
CyrusNajmabadi May 7, 2025
23543a3
Add directory targets from Rainer
CyrusNajmabadi May 7, 2025
9682f48
Merge EditorFeatures.Wpf entirely into EditorFeatures
CyrusNajmabadi May 7, 2025
dc23a90
Update Roslyn.sln
CyrusNajmabadi May 7, 2025
516ad84
Reduce allocations during SourceGeneration (#78403)
ToddGrun May 7, 2025
53a5332
Remove now unused methods from IWorkspaceProjectContext (#78479)
ToddGrun May 7, 2025
51ab35b
Make internal
CyrusNajmabadi May 7, 2025
1036939
Merge branch 'removeEditorFeaturesWPF' of https://github.com/CyrusNaj…
CyrusNajmabadi May 7, 2025
ea17ac7
Update eng/config/PublishData.json
CyrusNajmabadi May 7, 2025
c2dd8bc
Merge branch 'directoryTargets' into copilotAnalysis
CyrusNajmabadi May 7, 2025
a991bbb
Add directory targets from Rainer (#78493)
CyrusNajmabadi May 7, 2025
7066f9d
Merge branch 'main' into removeEditorFeaturesWPF
CyrusNajmabadi May 7, 2025
24fa8b7
Fix check
CyrusNajmabadi May 7, 2025
406526b
Merge remote-tracking branch 'upstream/main' into copilotAnalysis
CyrusNajmabadi May 7, 2025
e0a7ed0
Remove using
CyrusNajmabadi May 7, 2025
75627d6
Remove unused field
CyrusNajmabadi May 7, 2025
69f6101
Remove unused field
CyrusNajmabadi May 7, 2025
f1ada62
Rectify status of dictionary expressions (#78497)
May 7, 2025
ae6d690
Add code for analzying copilot changes. (#78353)
CyrusNajmabadi May 7, 2025
1773df2
Remove unused field (#78496)
CyrusNajmabadi May 7, 2025
5106510
Use a project reference for M.CA.AnalyzerUtilities
JoeRobich May 8, 2025
86aecfd
Unlist M.CA.AnalyzerUtilities as an expected DevDivInsertion dependency
JoeRobich May 8, 2025
438f1ef
Fix source-build by renaming Assets folder to assets
JoeRobich May 8, 2025
89753f8
Update RoslynAnalyzers to use Roslyns version
JoeRobich May 8, 2025
944db55
Merge remote-tracking branch 'upstream/main' into removeEditorFeature…
CyrusNajmabadi May 8, 2025
312a1dc
Use a project reference for M.CA.AnalyzerUtilities (#78500)
JoeRobich May 8, 2025
bbde146
Merge EditorFeatures.Wpf entirely into EditorFeatures (#78494)
CyrusNajmabadi May 8, 2025
d35aabd
Fix unexpected conditional state in nullable analysis of conditional …
jjonescz May 8, 2025
d7903f9
Add syntax highlighting of ignored directives (#78458)
jjonescz May 8, 2025
f9203dd
Exclude VS.ExternalAPIs.Roslyn.Package from source-build
JoeRobich May 8, 2025
c87e204
Targeted perf changes to CommandLineParser (#78446)
ToddGrun May 8, 2025
5e99a9f
Use lazy initialization for members in CodeFixService (#78484)
ToddGrun May 8, 2025
2edc01d
Onboard the GitHub Action based Issue-Labeler (#78426)
arunchndr May 8, 2025
c1b5cf1
Exclude VS.ExternalAPIs.Roslyn.Package from source-build (#78509)
JoeRobich May 8, 2025
1030397
Merge remote-tracking branch 'upstream/main' into merge-main
333fred May 8, 2025
1422076
React to main changes https://github.com/dotnet/roslyn/pull/78246 and…
333fred May 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
40 changes: 40 additions & 0 deletions .github/workflows/labeler-cache-retention.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Workflow template imported and updated from:
# https://github.com/dotnet/issue-labeler/wiki/Onboarding
#
# See labeler.md for more information
#
# Regularly restore the prediction models from cache to prevent cache eviction
name: "Labeler: Cache Retention"

# For more information about GitHub's action cache limits and eviction policy, see:
# https://docs.github.com/actions/writing-workflows/choosing-what-your-workflow-does/caching-dependencies-to-speed-up-workflows#usage-limits-and-eviction-policy

on:
schedule:
- cron: "24 19 * * *" # 19:24 every day (arbitrary time daily)

workflow_dispatch:
inputs:
cache_key:
description: "The cache key suffix to use for restoring the model from cache. Defaults to 'ACTIVE'."
required: true
default: "ACTIVE"

env:
CACHE_KEY: ${{ inputs.cache_key || 'ACTIVE' }}

jobs:
restore-cache:
# Do not automatically run the workflow on forks outside the 'dotnet' org
if: ${{ github.event_name == 'workflow_dispatch' || github.repository_owner == 'dotnet' }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
type: ["issues", "pulls"]
steps:
- uses: dotnet/issue-labeler/restore@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
type: ${{ matrix.type }}
cache_key: ${{ env.CACHE_KEY }}
fail-on-cache-miss: true
58 changes: 58 additions & 0 deletions .github/workflows/labeler-predict-issues.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# Workflow template imported and updated from:
# https://github.com/dotnet/issue-labeler/wiki/Onboarding
#
# See labeler.md for more information
#
# Predict labels for Issues using a trained model
name: "Labeler: Predict (Issues)"

on:
# Only automatically predict area labels when issues are first opened
issues:
types: opened

# Allow dispatching the workflow via the Actions UI, specifying ranges of numbers
workflow_dispatch:
inputs:
issues:
description: "Issue Numbers (comma-separated list of ranges)."
required: true
cache_key:
description: "The cache key suffix to use for restoring the model. Defaults to 'ACTIVE'."
required: true
default: "ACTIVE"

env:
# Do not allow failure for jobs triggered automatically (as this causes red noise on the workflows list)
ALLOW_FAILURE: ${{ github.event_name == 'workflow_dispatch' }}

LABEL_PREFIX: "Area-"
THRESHOLD: 0.40

jobs:
predict-issue-label:
# Do not automatically run the workflow on forks outside the 'dotnet' org
if: ${{ github.event_name == 'workflow_dispatch' || github.repository_owner == 'dotnet' }}
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- name: "Restore issues model from cache"
id: restore-model
uses: dotnet/issue-labeler/restore@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
type: issues
fail-on-cache-miss: ${{ env.ALLOW_FAILURE }}
quiet: true

- name: "Predict issue labels"
id: prediction
if: ${{ steps.restore-model.outputs.cache-hit == 'true' }}
uses: dotnet/issue-labeler/predict@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
issues: ${{ inputs.issues || github.event.issue.number }}
label_prefix: ${{ env.LABEL_PREFIX }}
threshold: ${{ env.THRESHOLD }}
env:
GITHUB_TOKEN: ${{ github.token }}
continue-on-error: ${{ !env.ALLOW_FAILURE }}
71 changes: 71 additions & 0 deletions .github/workflows/labeler-predict-pulls.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Workflow template imported and updated from:
# https://github.com/dotnet/issue-labeler/wiki/Onboarding
#
# See labeler.md for more information
#
# Predict labels for Pull Requests using a trained model
name: "Labeler: Predict (Pulls)"

on:
# Per to the following documentation:
# https://docs.github.com/en/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows#pull_request_target
#
# The `pull_request_target` event runs in the context of the base of the pull request, rather
# than in the context of the merge commit, as the `pull_request` event does. This prevents
# execution of unsafe code from the head of the pull request that could alter the repository
# or steal any secrets you use in your workflow. This event allows your workflow to do things
# like label or comment on pull requests from forks.
#
# Only automatically predict area labels when pull requests are first opened
pull_request_target:
types: opened

# Configure the branches that need to have PRs labeled
branches:
- main

# Allow dispatching the workflow via the Actions UI, specifying ranges of numbers
workflow_dispatch:
inputs:
pulls:
description: "Pull Request Numbers (comma-separated list of ranges)."
required: true
cache_key:
description: "The cache key suffix to use for restoring the model. Defaults to 'ACTIVE'."
required: true
default: "ACTIVE"

env:
# Do not allow failure for jobs triggered automatically (this can block PR merge)
ALLOW_FAILURE: ${{ github.event_name == 'workflow_dispatch' }}

LABEL_PREFIX: "Area-"
THRESHOLD: 0.40

jobs:
predict-pull-label:
# Do not automatically run the workflow on forks outside the 'dotnet' org
if: ${{ github.event_name == 'workflow_dispatch' || github.repository_owner == 'dotnet' }}
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- name: "Restore pulls model from cache"
id: restore-model
uses: dotnet/issue-labeler/restore@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
type: pulls
fail-on-cache-miss: ${{ env.ALLOW_FAILURE }}
quiet: true

- name: "Predict pull labels"
id: prediction
if: ${{ steps.restore-model.outputs.cache-hit == 'true' }}
uses: dotnet/issue-labeler/predict@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
pulls: ${{ inputs.pulls || github.event.number }}
label_prefix: ${{ env.LABEL_PREFIX }}
threshold: ${{ env.THRESHOLD }}
env:
GITHUB_TOKEN: ${{ github.token }}
continue-on-error: ${{ !env.ALLOW_FAILURE }}
54 changes: 54 additions & 0 deletions .github/workflows/labeler-promote.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Workflow template imported and updated from:
# https://github.com/dotnet/issue-labeler/wiki/Onboarding
#
# See labeler.md for more information
#
# Promote a model from staging to 'ACTIVE', backing up the currently 'ACTIVE' model
name: "Labeler: Promotion"

on:
# Dispatched via the Actions UI, promotes the staged models from
# a staged slot into the prediction environment
workflow_dispatch:
inputs:
issues:
description: "Issues: Promote Model"
type: boolean
required: true
pulls:
description: "Pulls: Promote Model"
type: boolean
required: true
staged_key:
description: "The cache key suffix to use for promoting a staged model to 'ACTIVE'. Defaults to 'staged'."
required: true
default: "staged"
backup_key:
description: "The cache key suffix to use for backing up the currently active model. Defaults to 'backup'."
default: "backup"

permissions:
actions: write

jobs:
promote-issues:
if: ${{ inputs.issues }}
runs-on: ubuntu-latest
steps:
- name: "Promote Model for Issues"
uses: dotnet/issue-labeler/promote@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
type: "issues"
staged_key: ${{ inputs.staged_key }}
backup_key: ${{ inputs.backup_key }}

promote-pulls:
if: ${{ inputs.pulls }}
runs-on: ubuntu-latest
steps:
- name: "Promote Model for Pull Requests"
uses: dotnet/issue-labeler/promote@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
type: "pulls"
staged_key: ${{ inputs.staged_key }}
backup_key: ${{ inputs.backup_key }}
161 changes: 161 additions & 0 deletions .github/workflows/labeler-train.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
# Workflow template imported and updated from:
# https://github.com/dotnet/issue-labeler/wiki/Onboarding
#
# See labeler.md for more information
#
# Train the Issues and Pull Requests models for label prediction
name: "Labeler: Training"

on:
workflow_dispatch:
inputs:
type:
description: "Issues or Pull Requests"
type: choice
required: true
default: "Both"
options:
- "Both"
- "Issues"
- "Pull Requests"

steps:
description: "Training Steps"
type: choice
required: true
default: "All"
options:
- "All"
- "Download Data"
- "Train Model"
- "Test Model"

limit:
description: "Max number of items to download for training/testing the model (newest items are used). Defaults to the max number of pages times the page size."
type: number
page_size:
description: "Number of items per page in GitHub API requests. Defaults to 100 for issues, 25 for pull requests."
type: number
page_limit:
description: "Maximum number of pages to download for training/testing the model. Defaults to 1000 for issues, 4000 for pull requests."
type: number
cache_key_suffix:
description: "The cache key suffix to use for staged data/models (use 'ACTIVE' to bypass staging). Defaults to 'staged'."
required: true
default: "staged"

env:
CACHE_KEY: ${{ inputs.cache_key_suffix }}
REPOSITORY: ${{ github.repository }}
LABEL_PREFIX: "Area-"
THRESHOLD: "0.40"
LIMIT: ${{ inputs.limit }}
PAGE_SIZE: ${{ inputs.page_size }}
PAGE_LIMIT: ${{ inputs.page_limit }}

jobs:
download-issues:
if: ${{ contains(fromJSON('["Both", "Issues"]'), inputs.type) && contains(fromJSON('["All", "Download Data"]'), inputs.steps) }}
runs-on: ubuntu-latest
permissions:
issues: read
steps:
- name: "Download Issues"
uses: dotnet/issue-labeler/download@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
type: "issues"
cache_key: ${{ env.CACHE_KEY }}
repository: ${{ env.REPOSITORY }}
label_prefix: ${{ env.LABEL_PREFIX }}
limit: ${{ env.LIMIT }}
page_size: ${{ env.PAGE_SIZE }}
page_limit: ${{ env.PAGE_LIMIT }}
env:
GITHUB_TOKEN: ${{ github.token }}

download-pulls:
if: ${{ contains(fromJSON('["Both", "Pull Requests"]'), inputs.type) && contains(fromJSON('["All", "Download Data"]'), inputs.steps) }}
runs-on: ubuntu-latest
permissions:
pull-requests: read
steps:
- name: "Download Pull Requests"
uses: dotnet/issue-labeler/download@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
type: "pulls"
cache_key: ${{ env.CACHE_KEY }}
repository: ${{ env.REPOSITORY }}
label_prefix: ${{ env.LABEL_PREFIX }}
limit: ${{ env.LIMIT }}
page_size: ${{ env.PAGE_SIZE }}
page_limit: ${{ env.PAGE_LIMIT }}
env:
GITHUB_TOKEN: ${{ github.token }}

train-issues:
if: ${{ always() && contains(fromJSON('["Both", "Issues"]'), inputs.type) && contains(fromJSON('["All", "Train Model"]'), inputs.steps) && contains(fromJSON('["success", "skipped"]'), needs.download-issues.result) }}
runs-on: ubuntu-latest
permissions: {}
needs: download-issues
steps:
- name: "Train Model for Issues"
uses: dotnet/issue-labeler/train@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
type: "issues"
data_cache_key: ${{ env.CACHE_KEY }}
model_cache_key: ${{ env.CACHE_KEY }}

train-pulls:
if: ${{ always() && contains(fromJSON('["Both", "Pull Requests"]'), inputs.type) && contains(fromJSON('["All", "Train Model"]'), inputs.steps) && contains(fromJSON('["success", "skipped"]'), needs.download-pulls.result) }}
runs-on: ubuntu-latest
permissions: {}
needs: download-pulls
steps:
- name: "Train Model for Pull Requests"
uses: dotnet/issue-labeler/train@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
type: "pulls"
data_cache_key: ${{ env.CACHE_KEY }}
model_cache_key: ${{ env.CACHE_KEY }}

test-issues:
if: ${{ always() && contains(fromJSON('["Both", "Issues"]'), inputs.type) && contains(fromJSON('["All", "Test Model"]'), inputs.steps) && contains(fromJSON('["success", "skipped"]'), needs.train-issues.result) }}
runs-on: ubuntu-latest
permissions:
issues: read
needs: train-issues
steps:
- name: "Test Model for Issues"
uses: dotnet/issue-labeler/test@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
type: "issues"
cache_key: ${{ env.CACHE_KEY }}
repository: ${{ env.REPOSITORY }}
label_prefix: ${{ env.LABEL_PREFIX }}
threshold: ${{ env.THRESHOLD }}
limit: ${{ env.LIMIT }}
page_size: ${{ env.PAGE_SIZE }}
page_limit: ${{ env.PAGE_LIMIT }}
env:
GITHUB_TOKEN: ${{ github.token }}

test-pulls:
if: ${{ always() && contains(fromJSON('["Both", "Pull Requests"]'), inputs.type) && contains(fromJSON('["All", "Test Model"]'), inputs.steps) && contains(fromJSON('["success", "skipped"]'), needs.train-pulls.result) }}
runs-on: ubuntu-latest
permissions:
pull-requests: read
needs: train-pulls
steps:
- name: "Test Model for Pull Requests"
uses: dotnet/issue-labeler/test@46125e85e6a568dc712f358c39f35317366f5eed # v2.0.0
with:
type: "pulls"
cache_key: ${{ env.CACHE_KEY }}
repository: ${{ env.REPOSITORY }}
label_prefix: ${{ env.LABEL_PREFIX }}
threshold: ${{ env.THRESHOLD }}
limit: ${{ env.LIMIT }}
page_size: ${{ env.PAGE_SIZE }}
page_limit: ${{ env.PAGE_LIMIT }}
env:
GITHUB_TOKEN: ${{ github.token }}
Loading
Loading