- 17 10月, 2014 8 次提交
-
-
由 Pharring 提交于
Performance traces showed some lock contention (spinning) while acquiring Workspace's stateLock field. Use interlocked operations to access Workspace's latestSolution field. This eliminates lock contention on the hot ".CurrentSolution" path. Replace Workspace's ReaderWriterLockSlim stateLock with a NonReentrantLock which is much more lightweight. (changeset 1355891)
-
由 tmeschter 提交于
Delete BasicCodeAnalysisRoslynDiagnosticAnalyzers.vbproj. This project is now empty. (changeset 1355874)
-
由 chandera 提交于
(changeset 1355776)
-
由 ChuckStoner 提交于
CallerLineNumber value was set to beginning of expression rather than method name (changeset 1355770)
-
由 mattwar 提交于
-
由 tmeschter 提交于
The former assembly contains a single diagnostic, BasicUseSiteDiagnosticsCheckEnforcer, that only applies to the BasicCodeAnalysis (Portable) project. Currently, we do some MSBuild magic to prevent other assemblies from picking up that analyzer when they consume the Microsoft.Net.RoslynDiagnostics NuGet. The right way to do this is to have one analyzer assembly for VB diagnostics, and have this particular diagnostic be off by default. BasicCodeAnalysis.vbproj gains a rule set file which turns it back on. A subsequent change will actually delete the now empty BasicCodeAnalysisRoslynDiagnosticAnalyzers project, and another will move us forward to a newer version of Microsoft.Net.RoslynDiagnostics that includes this change. (changeset 1355761)
-
由 Kevin_H 提交于
I think that at one point, it contained Win32 API calls that were not portable, but that is not the case now. Moving it alongside FatalError simplifies project authoring (fewer linked files and aliases). (changeset 1355678)
-
由 nmgafter 提交于
-
- 16 10月, 2014 6 次提交
-
-
由 nmgafter 提交于
-
由 tmeschter 提交于
This also updates Microsoft.Net.ToolsetCompiler to the corresponding version. (changeset 1355122)
-
由 manishv 提交于
Fix for bug 1046530: Should the strings in Microsoft.CodeAnalysis.DiagnosticFormatter.GetMessagePrefix be localized? Localize the diagnostic severity in DiagnosticFormatter.GetMessagePrefix. (changeset 1355104)
-
由 manishv 提交于
FIx for bug 1038237: Incorrect warnings in Error List for #pragma warning disable'd code with Closed File Diagnostics enabled The issue here is that root of the syntax trees recovered from temporary storage stream didn't have the ContainsDirective flag set, even when it had pragma directives. Hence, while computing diagnostics for closed files, we intermittently see diagnostics which have been suppressed by pragma directives appear in the error list. Fix is to ensure that the stream based constructor for DirectiveTriviaSyntax node has this flag set, just like it's other constructors. (changeset 1355099)
-
由 ChuckStoner 提交于
Update assert in TypeUnification.CanUnify for substitutions from type parameter to type parameter (changeset 1354882)
-
由 mattwar 提交于
Moved default host services logic from MSBuildWorkspace to new type DesktopMefHostServices type. Changed CommandLineProject to make workspace parameter optional. You only need to specify workspace if want to override behavior of some of the services (beyond default). Added WorkspaceServices.GetRequiredService and LanguageServices.GetRequiredService API that throws InvalidOperationException if service is not available. Changed Workspace.AddDocument and Workspace.AddAdditionalDocument to take DocumentInfo instead of multiple parameters (for future proofing signature.) Added ApplyChangesKind enum values for analyzers and additional documents Changed Workspace TryApplyChanges to check for all unsupported changes before starting to apply. Changed separate *apply* methods to default to calling equivalent OnXXX method instead of throwing. Changed CustomWorkspace.CanApplyChanges to default to true for all kinds. Added error messages for each ApplyChangesKind Added missing WithXXX methods from DocumentInfo (changeset 1354869)
-
- 15 10月, 2014 5 次提交
-
-
由 AlekseyTs 提交于
-
由 chandera 提交于
Hide events and property backing fields from the expression-level completion list (changeset 1354088)
-
由 Pharring 提交于
Stream.ReadByte() allocates a byte[1] each time. This change uses a thread-local allocation to avoid that allocation. (changeset 1354061)
-
由 dpoeschl 提交于
Fixes a couple options that were not being serialized to the registry and adds several OptionProviders to enumerate options in portable projects that are no longer exported, allowing us to properly reset all options to their default values during integration tests. (changeset 1353921)
-
由 shyamn 提交于
Currently, we have a many to many mapping between diagnostics reported in a given span and code fixes available for these diagnostics. For example, it is legal for a code fix provider to return two fixes to handle three diagnostics in a given span and we currently have no way to map from the fixes returned from a provider back to the diagnostics that each fix is supposed to handle (the CodeAction for a fix doesn't know which diagnostic it is fixing) The light bulb menu item (SuggestedAction) for a fix therefore doesn't have a definitive way to identify which diagnostic the menu item is fixing. Instead each SuggestedAction holds on to a collection of diagnostics and it could be fixing any diagnostic in the collection. In the preview pane header for a particular menu item, we currently display details about the 'first' diagnostic in the collection. Most of the time this works fine because most of the time we only have a single diagnostic in any given span. However this breaks anytime we have more than one diagnostic in a given span and we end up showing the wrong headers for our preview panes in such cases. This fix changes code fix providers to always accept a single diagnostic as input (instead of a collection) and return a list of fixes for this single diagnostic (i.e. have one to many mapping from diagnostic to fixes). The host now passes one diagnostic at a time to each provider which returns set of fixes for each diagnostic. This allows the host to maintain a mapping from diagnostic to fixes and display this mapping to the end user (in the preview pane header) + also makes the API less confusing for the author of the fix provider. (changeset 1353855)
-
- 14 10月, 2014 8 次提交
-
-
由 manishv 提交于
Fix for bug 1048368: Suppressing/escalating user diagnostics through project property pages isn't reflected in live errors Fix assumptions about warnaserror and nowarn ID value being integers at bunch of places in Roslyn code. (changeset 1353758)
-
由 jasonmalinowski 提交于
Move a few types back to the portable layer to allow a CustomWorkspace to be produced without needing the desktop layer. As part of this, I split apart ITemporaryStorageService's ITemporaryStorage into two separate types, so it's clear whether you're storing text or storing binary streams. The merged implementation allowed some leakage of implementation details. (changeset 1353513)
-
由 jmarolf 提交于
-
由 ChuckStoner 提交于
-
由 nmgafter 提交于
-
由 shyamn 提交于
1. The 'preview changes' feature in the light bulb preview pane had a bug which meant that it was only applying ApplyChangesOperations - other operations (such as opening and navigating to a document added as part of a fix etc.) were being skipped when the user clicked Apply in the preview dialog. This fix makes sure that we don't skip any operations and that the code fix is applied the same way regardless of whether the user clicks on the light bulb menu or the Apply button in the preview dialog. 2. Additionally, this change also disables check boxes in the preview changes dialog so that it is impossible select / deselect portions of a fix and apply the fix partially. Applying a partial fix can break assumptions in subsequent operations (for example, user could deselect changes to add a document that a subsequent OpenDocumentOperation is going to open and thereby cause this operation to fail). 3. This change also changes the order of suppression fixes so that the 'global' suppression fix (that adds SuppressMessageAttribute in a separate file) is always last in the list of suppression fixes. After this change the suppression menu will read as follows with the (separate file) fix showing up at the end instead of in the middle. Suppress CA1234 -> this instance with SuppressMessageAttribute with SuppressMessageAttribute (in separate file) 4. Also augment doc comment for batch fix all provider to clarify that only ApplyChangesOperations in the constituent fix occurances are batched and that other operations are ignored. (changeset 1353192)
-
由 acasey 提交于
DevDiv #995192 - VB: Set DkmClrCompilationResultFlags.ReadOnlyResult appropriately in the Watch window Expose Binder.IsValidAssignmentTarget and Binder.AdjustAssignmentTarget and invoke them as in BindAssignmentStatement. CR: ChuckS (changeset 1353140)
-
由 acasey 提交于
Expose Binder.CheckValueKind and check for Binder.BindValueKind.Assignment. TODO: VB CR: ChuckS, KevinH (changeset 1353049)
-
- 11 10月, 2014 8 次提交
-
-
由 jasonmalinowski 提交于
Provide serializable wrappers of DocumentId, ProjectId and VersionStamp. This mirrors the SerializableProjectReference that was already in Workspaces.Desktop (and public), and the serializable wrappers of various compiler types. (changeset 1352515)
-
由 jasonmalinowski 提交于
-
由 manishv 提交于
Fix is to suppress duplicate analyzer exception diagnostics in each compilation. (changeset 1352343)
-
由 ChuckStoner 提交于
-
由 AlekseyTs 提交于
Avoid an InvalidCastException while calculating LocalSyntaxOffset within synthetic lambda. (changeset 1352239)
-
由 tmeschter 提交于
When our projects were last updated to a newer version of Microsoft.Net.ToolsetCompilers, NuGet didn't replace the old version--it just put the new version next to it. Every project ended up referencing both versions, and which set of compiler binaries "won" depended on the order they appeared in the project file. So different projects built with different compilers. This change strips out all references to the old version. (changeset 1352054)
-
由 mattwar 提交于
Remove type constraint on ReplaceNodes API that forces the type of the replacement node to be of the same type as the node to be replaced. (changeset 1352036)
-
由 AlekseyTs 提交于
C#: Report a use-site error if it could be a reason for failing to implement a member of an interface. (changeset 1352026)
-
- 10 10月, 2014 5 次提交
-
-
由 angocke 提交于
-
由 tmeschter 提交于
-
由 tmeschter 提交于
-
由 ChuckStoner 提交于
-
由 angocke 提交于
Add a pre-build script to MicroBuild to have the build servers restore the NuGet packages before building. (changeset 1351423)
-