1. 15 2月, 2020 1 次提交
  2. 14 2月, 2020 1 次提交
  3. 13 2月, 2020 6 次提交
  4. 12 2月, 2020 1 次提交
  5. 11 2月, 2020 1 次提交
  6. 08 2月, 2020 1 次提交
  7. 07 2月, 2020 1 次提交
  8. 06 2月, 2020 1 次提交
  9. 04 2月, 2020 1 次提交
  10. 31 1月, 2020 1 次提交
  11. 30 1月, 2020 2 次提交
  12. 29 1月, 2020 1 次提交
    • T
      DiagnosticAnalyzerInfoCache refactorings (#40287) · 4b19656b
      Tomáš Matoušek 提交于
      * Move "is telemetry allowed" flag to DiagnosticAnalyzerInfoCache
      
      * Clean up DiagnosticService
      
      * Fixes
      
      * Remove analyzer exception telemetry reporting.
      
      * Remove reporting analyzer exceptions from SupportedDiagnostics.
      
      The diagnostics will be reported when the compiler runs the analyzer on the compilation.
      
      * Remove unused parameter
      
      * Clean up analyzer telemetry reporting.
      
      * Test fixes
      
      * Feedback
      4b19656b
  13. 28 1月, 2020 1 次提交
  14. 26 1月, 2020 2 次提交
  15. 25 1月, 2020 1 次提交
  16. 24 1月, 2020 2 次提交
  17. 23 1月, 2020 3 次提交
  18. 22 1月, 2020 3 次提交
  19. 21 1月, 2020 1 次提交
    • T
      EnC simplify reporting module diagnostics. (#40999) · d794dbee
      Tomáš Matoušek 提交于
      Previously we reported diagnostics caused by the debuggee not allowing edits in the corresponding module in EnC diagnostic analyzer.
      A module does not support edits if any of its instances does not support the edits. There are scenarios in which module instances may be loaded while in break mode.
      E.g. if the user attaches to a secondary process while debugging a primary process, the secondary process might have a module instance loaded of the same module loaded to the primary process.
      To handle these cases we hooked up debugger module load/unload events and invalidated the reported diagnostics.
      
      This approach has a few problems:
      1) EnC analyzer is now non-deterministic, as it can give different answers for the same inputs depending on the state of the debuggee
      2) Turns out that the debugger does not deliver module load/unload events in all cases (e.g. when the secondary process is killed).
      3) It's a bit complicated and would get even more complicated once we moved EnC to OOP/Cloud
      
      Instead, we don't report these errors until the user triggers the "continue" action. At this point the VS and all processes being debugged are blocked until the changes analyzed and applied.
      Since this situation is not very common the slight regression in interactivity is acceptable.
      d794dbee
  20. 17 1月, 2020 2 次提交
  21. 16 1月, 2020 2 次提交
  22. 15 1月, 2020 2 次提交
    • T
      EnC: Tweak handling of out-of-sync documents to work around source file... · 5f86d25c
      Tomáš Matoušek 提交于
      EnC: Tweak handling of out-of-sync documents to work around source file content inconsistencies (#40947)
      
      * Do not block in presence of out-of-sync documents.
      
      Instead, ignore any changes made to these documents while debugging until their content matches the source used to build the baseline DLL.
      
      * Only check output PDB, not debugger SymReader, for document checksums.
      Turns out SymReader does not support reading document checksums once EnC changes have been applied.
      
      Better handle errors that might occur when validating checksums. Previously some of the errors were not reported as diagnostics.
      
      We previously blocked EnC when we observed a source file that is out-of-sync (i.e. its current content does not match the checksum in the originally built PDB). We can however just ignore these files and report a warning that changes made to this file won’t be applied until the file content is reverted back to the state it was when the PDB was built (the file transitions to “matching” state). Once a file is in matching state it can’t change back to another state. We know that we have not applied any change to the code that was compiled from the file because we ignored the file while it was in out-of-sync state. Therefore we know that any changes made from now on can be safely applied to the debuggee.
      
      If we can’t determine whether a file matches or not due to error reading the PDB or the source file content we can treat it similarly to out-of-sync file. That is, ignore any changes until we are able to confirm the file matches. That can happen if, e.g. the PDB is temporarily locked by another process and unlocked later.
      
      Simplify implementation of GetStatusAsync.
      
      Fixes VSO [1051496](https://dev.azure.com/devdiv/DevDiv/_workitems/edit/1051496) ([VS feedback](https://developercommunity.visualstudio.com/content/problem/880533/edits-were-made-which-cannot-be-compiled-stop-debu.html))
      5f86d25c
    • S
      9bc08c85
  23. 14 1月, 2020 2 次提交
  24. 12 1月, 2020 1 次提交