- 04 10月, 2018 1 次提交
-
-
由 Heejae Chang 提交于
this will cache compilation end analyzer info in diagnostic service so that it can be cheap except the very first time that most likely done by solution crawler. added tests
-
- 30 5月, 2018 1 次提交
-
-
由 Sam Harwell 提交于
-
- 11 4月, 2018 1 次提交
-
-
由 Sam Harwell 提交于
Fixes #25771
-
- 07 3月, 2018 1 次提交
-
-
由 Heejae Chang 提交于
* enable logAnalyzerExecutionTime on IDE so that we can start track analyzer perf * removed unnecessary ICodeAnalysisDiagnosticAnalyzerExecutor interface. it was added when OOP is first introduced to make sure VS.Next dll won't get loaded to VS process if OOP is not enabled. when it is enabled by default, rather than removing the interface, implementation just moved down to feature layer to reduce code churn. now, I am properly removing unnecessary abstraction. * take Executor out of test MEF composition * added IRemoteDiagnosticAnalyzerService interface * made initial version working. * added tests * add tracking for inproc only analyzers * pass in diagnostic analyzer service * added open file performance tracking as well. * added PII test * dont hash analyzerId when it is reported by internal user * added link to LOF wiki * made blame to track open files as well. * forgot to add return in if statement * reduce threshold to 100ms decide to start from lower threshold and then iterate rather than start from higher threshold * added a way to log real time perf data in local machine with explicit option which can be used to train formula later * addressed ivan's feedbacks * renamed to ExpensiveAnalyzerInfo * addressed PR feedbacks * more renames * addressed PR feedbacks. renamed as much as I can find. * listener can be null in unit test * addressed PR feedbacks
-
- 19 12月, 2017 1 次提交
-
-
由 Heejae Chang 提交于
fixed issue where same analyzer reference is installed in both vsix and nuget. deduplication in inproc analyzer manager wasn't present in OOP case. (#23772) this doesn't address our workitem to merge those two. that work is a separate work item. this just follow what we currently do in proc.
-
- 12 12月, 2017 1 次提交
-
-
由 Sam Harwell 提交于
-
- 23 8月, 2017 1 次提交
-
-
由 CyrusNajmabadi 提交于
-
- 29 6月, 2017 2 次提交
-
-
由 Sam Harwell 提交于
-
由 Sam Harwell 提交于
-
- 23 5月, 2017 1 次提交
-
-
由 Heejae Chang 提交于
-
- 05 5月, 2017 1 次提交
-
-
由 Heejae Chang 提交于
exposing workspace directly cause people to depends on data/service analyzer is not supposed to depend on, also, it sometime access mutable data instead of snapshot of it which analyzer is not supposed to use. this cut the connection, and expose specific info analyzer is allowed to use in IDE case.
-
- 08 2月, 2017 1 次提交
-
-
由 CyrusNajmabadi 提交于
-
- 10 12月, 2016 2 次提交
-
-
由 Heejae Chang 提交于
-
由 Heejae Chang 提交于
diagnostics reported by open file only diagnostic analyzers such as simplify type names didn't get cleaned up properly when a file is closed. this makes sure those diagnostics only exist while the file they originated from is open.
-
- 21 11月, 2016 1 次提交
-
-
由 CyrusNajmabadi 提交于
-
- 06 11月, 2016 1 次提交
-
-
由 Jonathon Marolf 提交于
-
- 24 9月, 2016 1 次提交
-
-
由 Andy Gocke 提交于
This change drops support for .NET 4.5 and retargets to desktop 4.6 + CoreCLR. It also fixes up various analyzer warnings that were created due to the move. Fixes #12926
-
- 14 9月, 2016 1 次提交
-
-
由 Heejae Chang 提交于
added OpenFileOnly in IBuiltInAnalyzer and removed RunInProcess
-
- 10 9月, 2016 1 次提交
-
-
由 Heejae Chang 提交于
now, all builtin analyzer that is not set to only run on open files will run in OOP. any builtin analyzer that can't run in OOP should mark it as open file only. for analyzers that return only hidden severity but return different severity on runtime should use the new API to control whether it want it to run full solution or not. if set to run on full solution, it will run in OOP.
-
- 05 8月, 2016 1 次提交
-
-
由 Heejae Chang 提交于
This reverts commit 720f5c5e, reversing changes made to 6a6043c3.
-
- 30 7月, 2016 1 次提交
-
-
由 Heejae Chang 提交于
changes include make SourceText::GetChecksum and AnalyzerTelemetry contructor public. added MustRunInProc in IBuiltInAnalyzer and some clean up around serializing Solution/Project/DocumentId and how DocumentState is exposed. simplified temporary storage service's temporary storage management and added ability to attach to existing temporary storage solution checksum and serialization service. added remote host client - this gives an ability for host (vs) to talk to remote host (service hub) rename and moving files between feature/workspace layers - only real change is having ICompilerDiagnosticAnalyzer interface which can either have inproc implementation or out of proc implementation. - inproc is needed since diagnostics are in feature layer and one who uses feature layer out side of VS host need an implementation. added RemoteWorkspace - RemoteWorkspace has host agnostic implementation of roslyn features/services/workspace that will run in remote host added service hub component and setup project for service hub - service hub component is basically thin layer that deals with converting data to pass in to RemoteWorkspace made devdiv insertion tool to ignore servicehub related files support byte and char array natively in ObjectReader/Writer
-
- 28 7月, 2016 1 次提交
-
-
由 Heejae Chang 提交于
-
- 27 7月, 2016 1 次提交
-
-
由 Heejae Chang 提交于
only real change is having ICompilerDiagnosticAnalyzer interface which can either have inproc implementation or out of proc implementation. inproc is needed since diagnostics are in feature layer and one who uses feature layer out side of VS host need an implementation.
-
- 20 7月, 2016 1 次提交
-
-
由 CyrusNajmabadi 提交于
-
- 27 2月, 2016 1 次提交
-
-
由 Brett V. Forsgren 提交于
-
- 13 1月, 2016 2 次提交
-
-
由 Heejae Chang 提交于
-
由 Heejae Chang 提交于
-
- 11 11月, 2015 3 次提交
-
-
由 Heejae Chang 提交于
-
由 Heejae Chang 提交于
-
由 Heejae Chang 提交于
-
- 19 10月, 2015 1 次提交
-
-
由 Manish Vasani 提交于
This change increases the severity of analyzer exception diagnostic (AD0001), generated when an analyzer throws an exception, from info to a warning. Additionally, its descriptor is now reported as a supported diagnostic descriptor of the compiler analyzer, which ensures that it shows up in the ruleset editor. Fixes #3707
-
- 16 10月, 2015 1 次提交
-
-
由 Paul Harrington 提交于
-
- 26 8月, 2015 1 次提交
-
-
由 Dustin Campbell 提交于
-
- 07 8月, 2015 1 次提交
-
-
由 Manish Vasani 提交于
We execute the analyzer driver's initialization and core analysis tasks on a background thread. Any exceptions from the driver itself (not the analyzer callbacks, we already report diagnostics for those) were getting swallowed and analyzer execution also skipped silently. See #2980 (comment) for an example. We now report an exception diagnostic for analyzer driver crash (with the complete exception trace), so that the user knows what happened and we can diagnose the bug when the issue is reported. Fixes #3005
-
- 05 8月, 2015 1 次提交
-
-
由 Manish Vasani 提交于
Changes include: 1. Enhance CompilationWithAnalyzers to allow computing analyzer diagnostics for a specific tree/span within a compilation and/or for a subset of analyzers. Implementation ensures no duplicate analysis by tracking partial analysis state and caching the reported analyzer diagnostics. 2. Overview of the new APIs added to CompilationWithAnalyzers: 1. GetAnalyzerSyntaxDiagnostics(tree, analyzers, ct) 1. Analogous to SyntaxTree.GetDiagnostics(ct) 2. Gets analyzer diagnostics reported by executing syntax tree actions on the given tree. 2. GetAnalyzerSemanticDiagnostics(semanticModel, spanOpt, analyzers, ct) 1. Analogous to SemanticModel.GetDiagnostics(spanOpt, ct) 2. Gets analyzer diagnostics reported by executing rest of the non-compilation actions on the given tree span. 3. GetAnalyzerCompilationDiagnostics(analyzers, ct) 1. Gets rest of the analyzer diagnostics which are reported by either of the following means: 1. Compilation actions (and compilation end actions) 2. Non-compilation actions reporting diagnostics on different tree: Executing a symbol action on a symbol definition in a tree, can report diagnostic on its partial definition in some other tree. 3. Simplify IDE analyzer driver by switching it to using the new CompilationWithAnalyzers APIs for analyzer diagnostic computation. Both the IDE and compiler drivers now use the compilation event queue model for driving analysis.
-
- 24 6月, 2015 1 次提交
-
-
由 Manish Vasani 提交于
Add DiagnosticDescriptor.GetEffectiveSeverity(CompilationOptions) API to get the effective severity of diagnostics created based on the descriptor for the given compilation options. This change also removes the clone of this functionality in the IDE layer used by the solution explorer rule severity display and error list/diagnostic service. It now uses this public API. Fixes #2598
-
- 27 5月, 2015 1 次提交
-
-
由 Heejae Chang 提交于
we have changed AnalyzerFileReference.Id to include versions, public keys and etc as its identity. some internal data structure that generates string from it didn't changed accordingly. this should fix the issue.
-
- 16 5月, 2015 1 次提交
-
-
由 Manish Vasani 提交于
Add a new command line compiler switch "/reportanalyzer" to report analyzer execution times. Output is grouped by analyzer assemblies and is displayed in descending order of execution times. NOTE: We do not display the total build time or the ratios between build time and analyzer execution time as the the actual wall clock time for analyzer execution is likely lesser due to multithreaded analyzer execution.
-
- 14 5月, 2015 1 次提交
-
-
由 Heejae Chang 提交于
-
- 12 5月, 2015 1 次提交
-
-
由 Paul van Brenk 提交于
Added a null check in the AnalyzerHelper for Languages that don't participate in the compilation. Since TypeScript doesn't participate in the Compilation we get a null reference exception on the compilation options.
-