-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Open
Labels
Area-InteractiveConcept-Continuous ImprovementDev17 IDE PriorityEpicGroups multiple user stories. Can be grouped under a theme.Groups multiple user stories. Can be grouped under a theme.Interactive-EnCStoryUser StoryA single user-facing feature. Can be grouped under an epic.A single user-facing feature. Can be grouped under an epic.
Milestone
Description
This is an umbrella issue for work towards improving the Edit and Continue/Hot Reload experience in C# and VB.
Language and compiler features
- New C# features
- Lambdas:
- StackAlloc:
- Renames and signature changes
- EnC: Update names of deleted members to a special name #70117
- EnC: Allow signature changes and method/field/etc renames #59264
- EnC: Renaming a property with initializer doesn't work as expected #69216
- EnC: Changing signature of an async method or an iterator does not work #69199
- EnC: Add a code action that updates all call-sites of a method with changed signature #69197
- MissingMethodException when calling method prior to hot reload change #65442
- EnC: Emit trampoline for deleted property that shadows primary parameter #69317
- Member reodering
- More support for editing Async
- Other
- EnC: nint and nuint should be treated as equivalent to IntPtr and UIntPtr #48637
- EnC: Allow changing nullable annotations #49011
- DIM EnC: Adding a non-virtual member to an interface fails at runtime runtime#114188
- Support updating resource files during Hot Reload/EnC #75133
- EnC: allow changing accessibility of members #75191
- EnC: allow updating assembly and module level attributes #75572
Misc
- IsActiveStatementInExceptionRegionAsync: https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1310859
- Active statements: https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1301343
- Ctrl+S and open files: https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1354232 (17.0 P2)
- EnC: Visualize changed statements that have not been executed yet #75110
- EnC: Add UI that displays active changes as a diff #75111
- Implement support for pull diagnostic requests on additional files #62781
- EnC docs: Move "supported edits" info from Roslyn repo to learn.microsoft.docs #75112
- EnC: Revisit automatic inclusion of EnC logs in VS Feedback #75114
Project system changes in Ctrl+F5 session
Project system changes in F5 session
VNext
- EnC: implement support for field keyword in property accessors #77951
- EnC: Emit array and UTF8 literals using FieldRva #69480
- EnC: detect changes in code that only runs once and need to force restart #77949
- HotReload fails to apply on the second attempt when changing default parameter in an anonymous delegates #79783
Project system changes in Ctrl+F5 session
- EnC: allow adding/renaming source file during debugging/hot reload #49013
- EnC Scenario: deleting a file doesn't display rude edit #41144
- EnC: Detect changes in compilation and parse options #78921
17.13
- EnC: support moving fields and properties #69247
- Convert more lambda rude edits to runtime rude edits #75285
17.12
- EnC: Implement support for partial properties #74494 (17.12 P1)
- EnC: Implement support for System.Threading.Lock #74526 (17.12 P2)
17.11
17.9
17.8
- Primary constructors
- Inline Arrays, Collection Literals:
- StackAlloc improvements:
17.7
17.4
17.3
- EnC: allow adding a namespace declaration #51398 (17.3 P2)
- [EnC] Allow renaming methods, properties, events etc. #62364
- [EnC] Allow deleting method #61806
17.0
- Expand #line to support columns #46526 (17.0 P2)
- A change in a top-level statement or an addition of a new top-level statement is not picked up by ENC #44196 (17.0 P3)
- EnC: Updating lambda parameters to discards breaks EnC #48635 (17.0 P3)
- EnC - Allow parameter renames #52563 (17.0 P3)
- EnC: Allow adding/removing/updating attributes #49012 (17.0 P2)
- compilation.EmitDifference produces no updated methods when "#line hidden" is present #49631 (17.0 P2)
- Enable EnC of methods containing switch expressions #43099 (17.0 P2)
- EnC: support for record structs #51200 (17.0 P2)
- EnC: validate mixed declarations and variables in deconstruction #50901 (17.0 P4)
16.x
- EnC: Adding/updating/removing attribute on local function, its return type or parameter should be rude edit #48636 (16.10)
- Enc: Adding a namespace import shouldn't be a rude edit #10043 (16.10)
- Allow adding members to and updating constructors of a partial class #50016 (16.10)
- EnC: support edits in files generated via source generators #50283 (16.10)
- Support EnC on records and
with
expressions #44877 (16.11)
16.10
Edits while application is running
- EnC: F5 applies change made during debugging session while the app is running #49004
- Update EnC error messages used for Hot Reload #52018
- Implement Ctlr+F5 Hot Reload coordinator and Apply Changes command 1304576
- Create stale view for .NET hot reload stale methods 1384582
Attach
- Support for attaching debugger after Hot Reload changes made
- EnC: support EnC while attached to multiple processes #52613
Reloadable types
- EnC: Emit addition instead of in-place update for edits in reloadable types #49006 (17.0 P3)
- Renaming/changing arity of a reloadable type is not handled correctly #54881
- Allow renaming reloadable types #54886
Hot Reload runtime events
Runtime specific Rude Edits
- EnC: Runtime-specific Rude Edits #49010 (16.10)
- EnC: Report rude edit when compiler adds synthesized types to the compilation and runtime does not support adding types #54676
Partner Hot Reload APIs
vslee, GerardSmit and KUNGERMOoN
Metadata
Metadata
Assignees
Labels
Area-InteractiveConcept-Continuous ImprovementDev17 IDE PriorityEpicGroups multiple user stories. Can be grouped under a theme.Groups multiple user stories. Can be grouped under a theme.Interactive-EnCStoryUser StoryA single user-facing feature. Can be grouped under an epic.A single user-facing feature. Can be grouped under an epic.