Age | Commit message (Collapse) | Author |
|
|
|
Deduplicating project-32 (and similarly named) icons (previously resulted in wrong icons used, picked from New Project Dialog).
|
|
* project
* project-console
* project-crossplatform-pcl
* project-crossplatform-shared
* project-gui
* project-library
* project-package
* project-test
* solution
* workspace
|
|
|
|
Enable authentication support in New Project Creation Wizard for AspNetCore projects
|
|
templates which support it
|
|
|
|
to avoid adding duplicate EmbeddedResource entries to project files.
|
|
[Debugger] Provide SolutionItem to DebuggerSession mapping
|
|
Fixes VSTS Bug 1009809: Save failed
|
|
Fixes CommandHandler routing in native widgets
|
|
The DebuggerService now has two methods that can map from an IRunTarget
to a DebuggerSession or the other way around. The ExecutionCommand now
has an IRunTarget property which is used by the DebuggerService to
create this mapping from DebuggerSession to IRunTarget. IRunTarget
is implemented by SolutionItem.
Fixes VSTS #1012614 - Improvements to DebuggerSession for XAML Hot Reload
|
|
[IDE] Allow deleting missing files from project
|
|
[Ide] Support adding/updating .editorconfig with Roslyn
|
|
With a multi-run configuration defined for the solution, if a
project is reloaded, the multi-run config would not have the
latest project run configuration. This would result in changes to
the project run configuration in project options, such as adding
or removing startup arguments, not being used when the multi-run
configuration was used to run the solution.
On reloading the new project run configuration is resolved and
updated in the multi-run configuration. Previously only the
SolutionItem was updated.
Fixes VSTS #653269 - Multi startup project run configuration -
arguments not passed after reload
|
|
Fix information popover flickering
|
|
|
|
When the TooltipPopoverWindow is visible, the parent
might receive mouse in/out events rapidly, depending
on the parenting status of the parent dialogs. This might
be caused by some Gtk Loop issue.
Delaying the hiding of the popup when the mouse leaves
effectively workarounds the issue.
|
|
|
|
|
|
|
|
|
|
additional user actions
|
|
[NuGet] Fix requests bypassing the native HTTP handler
|
|
|
|
|
|
2. format changes
|
|
- After a file is deleted from Finder outside VS Mac, right click on the file will show "Remove" instead of "Delete" and a dialog will confirm user's choice to remove the file and its child from the project. If any child exists, it will be removed (not deleted)
(Should we directly delete the child?)
Fixes: https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1051207
|
|
|
|
.. after use.
Fixes VSTS #1050360 - `MultiTargetFramework_ReloadProject_TargetFrameworksChanged`
In the test, the project file `multi-target.csproj` was loaded in
`using (var sol = (Solution)await Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solFile))`
.. `main/src/core/MonoDevelop.Core/MonoDevelop.Projects/SdkProjectReader.cs`,
- but the StreamReader for the file was not disposed
- causing a subsequent attempt to overwrite the file to fail
with a sharing violation error.
```
1) MultiTargetFramework_ReloadProject_TargetFrameworksChanged (MonoDevelop.Ide.TypeSystem.TypeSystemServiceTests.MultiTargetFramework_ReloadProject_TargetFrameworksChanged)
System.IO.IOException : Sharing violation on path /Users/runner/runners/2.164.1/work/r1/a/VS for Mac/drop/tests/tmp/multi-target.sln-18/multi-target.csproj
at System.IO.FileStream..ctor (System.String path, System.IO.FileMode mode, System.IO.FileAccess access, System.IO.FileShare share, System.Int32 bufferSize, System.Boolean anonymous, System.IO.FileOptions options) [0x00259] in /Users/builder/jenkins/workspace/build-package-osx-mono/2019-12/external/bockbuild/builds/mono-x64/mcs/class/corlib/System.IO/FileStream.cs:274
at System.IO.FileStream..ctor (System.String path, System.IO.FileMode mode, System.IO.FileAccess access, System.IO.FileShare share, System.Int32 bufferSize, System.IO.FileOptions options) [0x00000] in /Users/builder/jenkins/workspace/build-package-osx-mono/2019-12/external/bockbuild/builds/mono-x64/mcs/class/corlib/System.IO/FileStream.cs:106
at (wrapper remoting-invoke-with-check) System.IO.FileStream..ctor(string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare,int,System.IO.FileOptions)
at System.IO.StreamWriter..ctor (System.String path, System.Boolean append, System.Text.Encoding encoding, System.Int32 bufferSize) [0x00055] in /Users/builder/jenkins/workspace/build-package-osx-mono/2019-12/external/bockbuild/builds/mono-x64/external/corefx/src/Common/src/CoreLib/System/IO/StreamWriter.cs:151
at System.IO.StreamWriter..ctor (System.String path) [0x00000] in /Users/builder/jenkins/workspace/build-package-osx-mono/2019-12/external/bockbuild/builds/mono-x64/external/corefx/src/Common/src/CoreLib/System/IO/StreamWriter.cs:126
at (wrapper remoting-invoke-with-check) System.IO.StreamWriter..ctor(string)
at System.IO.File.WriteAllText (System.String path, System.String contents) [0x00026] in /Users/builder/jenkins/workspace/build-package-osx-mono/2019-12/external/bockbuild/builds/mono-x64/external/corefx/src/System.IO.FileSystem/src/System/IO/File.cs:314
at MonoDevelop.Ide.TypeSystem.TypeSystemServiceTests.MultiTargetFramework_ReloadProject_TargetFrameworksChanged () [0x00258] in /Users/runner/runners/2.164.1/work/1/s/monodevelop/main/tests/Ide.Tests/MonoDevelop.Ide.TypeSystem/TypeSystemServiceTests.cs:278
at MonoDevelop.Ide.TypeSystem.TypeSystemServiceTests.MultiTargetFramework_ReloadProject_TargetFrameworksChanged () [0x002a4] in /Users/runner/runners/2.164.1/work/1/s/monodevelop/main/tests/Ide.Tests/MonoDevelop.Ide.TypeSystem/TypeSystemServiceTests.cs:282
```
Debugged+resolved with: Matt Ward (@mrward)
Debugged in https://github.com/mono/monodevelop/pull/9540
This was also consistently seen with the mono 6.10.0x bump in
https://github.com/xamarin/md-addins/pull/6037 .
|
|
Updated to NuGet 5.4.0.6315
|
|
[Ide] Improve ImageService.CustomImageLoader
|
|
Switch ConditionedPropertyCollection to use ImmutableArray
|
|
|
|
Deleting a file from the Solution pad would sometimes add a Remove
item for that file which should only happen if the file was excluded
from the project. A way to reproduce this is to start the IDE,
create a new .NET Standard project, then right click the Class1.cs
file in the Solution pad, and select Delete. Loading an existing
solution does not seem to reproduce this.
The problem is that the file is deleted from disk after the file is
removed from the Project.Files collection. The removal of the file
causes the type system service to request updated project information.
This can then cause the project file to be updated in memory before
the file is deleted from disk. Since the file exists on disk the
Project.SaveProjectItems method adds a Remove item since it is
treating the file as been excluded. This Remove item will not be
removed when the file is deleted from disk and the project is saved
later since it is not possible to distinguish this case from the case
where a file has been explicitly excluded.
To fix this the simplest approach is to delete the file before
modifying the project's Files collection. Also fixed this problem
that can occur when deleting a folder.
Fixes VSTS #593642 - Deleting file from SDK style project adds
unnecessary data into csproj file
|
|
|
|
Switch to Task.CompletedTask where applicable
|
|
To log errors in case the readers throw
|
|
mono/intellisense-broken-after-adding-multi-frameworks-to-project
[Ide] Fix intellisense not updated after adding target frameworks
|
|
[Core] Stop using obsolete Counter++/-- and use Inc(1) or Dec(1) instead
|
|
If Configure and Suppress issues is used when the solution has
multiple projects the updated analyzer setting in the added
editorconfig file was not applied to all projects.
To fix this when the ApplyAnalyzerConfigDocumentAdded method is
called for the Roslyn workspace the project info is refreshed in
the type system.
Currently there is some odd behaviour here. The .editorconfig file
does not always get added as a link to the current project. The
ApplyAnalyzerConfigDocumentAdded method is only called once for
a single project.
Also handle any errors when an .editorconfig file is removed and
the associated document id is not in the workspace.
|
|
Code for the ApplyAnalyzerConfigDocumentTextChanged and the
ApplyAnalyzerConfigDocumentAdded method was very similar to the
existing ApplyDocumentTextChanged and ApplyDocumentAdded since the
new analyer config methods were based on the original document
methods. Refactored the code and shared it where possible.
|
|
* sort resources by name, to ensure same sequence for all icons
* use a global static dictionary for loaded resources
* filter by requested name to avoid Xwt.Image parser scanning all resources over and over again
|
|
The file watcher seems to sometimes produce strange events which
look like a directory being renamed to a file. This can cause the
IDE to believe the solution file has been deleted since the file
service will raise a FileRemoved event for a rename. To avoid this
check that the directory does not exist and if it does the FileRemoved
event is not fired with this type of rename.
Fixes VSTS #1027550 - VSMac keeps closing my solution
|
|
Deleting the editorconfig file and then adding a new one back again
via Configure and Suppress issues would fail since the editor config
was not removed properly from the type system.
To fix this the associated Roslyn document ids are removed from the
Roslyn workspace when the editorconfig file is deleted. Also the
design time build is re-run so the project info is correct and has
the correct editor config files defined.
Also fixed the editor config file not being saved in the solution file
so it was not available on re-loading the solution.
Also changed the build action for the editor config file added to
the project to None to match Visual Studio on Windows.
|
|
Right clicking in the text editor and selecting an item underneath
'Configure and Supress issues' would not add an .editorconfig file
or update the existing one.
The problem was that this feature requires changes in the type system
service.
Note that there is a bit of code duplication here since the logic is
similar but not quite the same as what happens when Roslyn adds/updates
a file with a refactoring.
Deleting the .editorconfig file is not currently supported. The type
system is not aware the file is removed.
Fixes VSTS #1001982 - Attempting to add analyzer configs fails silently
(to the user)
|
|
If a multi-run configuration is selected in the main toolbar and a
project is reloaded a crash can occur since the main toolbar has not
updated its project mappings. Exception thrown:
System.Collections.Generic.KeyNotFoundException: The given key
'MonoDevelop.CSharp.Project.CSharpProject' was not present in the
dictionary.
System.ThrowHelper.GetKeyNotFoundException(Object)
System.ThrowHelper.ThrowKeyNotFoundException(Object)
System.Collections.Generic.Dictionary`2[[MonoDevelop.Projects.SolutionItem],[MonoDevelop.Components.MainToolbar.ConfigurationMerger]].get_Item(SolutionItem)
MonoDevelop.Components.MainToolbar.MainToolbarController.FillRuntimesForProject(List`1,SolutionItem,Int32&)
MonoDevelop.Components.MainToolbar.MainToolbarController.FillRuntimes()
MonoDevelop.Components.MainToolbar.MainToolbarController.NotifyConfigurationChange()
MonoDevelop.Components.MainToolbar.MainToolbarController.HandleRuntimeChanged(Object,HandledEventArgs)
The problem was that on reloading the main toolbar's configurationMerger
dictionary was not updated. It still contained the old disposed project
so the dictionary lookup would fail for the new reloaded project. To
fix this when a project is reloaded the main toolbar's dictionary is
now refreshed.
Repro:
1. Create a solution with two projects.
2. Create a multiple startup run configuration with both projects.
3. Select the multi run configuration in the toolbar.
4. Edit one of the project files in the editor and save a change.
5. Change from Debug to Release in the main toolbar.
Fixes VSTS #944654 - [FATAL] System.Collections.Generic.KeyNotFoundException
exception in System.ThrowHelper.GetKeyNotFoundException()
|
|
Editing an SDK project that targeted a single target framework so it
targets multiple target frameworks would result in the intellisense
not being updated from that point when the project changed, such as
when a new file was added.
The problem was that the Project.Modified event handler was removed
for the project when the old project was removed since the Roslyn
project id to project mapping had already been updated during the
reload to point to the new project. To avoid this a check is made to
ensure that no other project ids exist in the mapping before the
event handler is removed.
Fixes VSTS #1035311 - Wrong version of multi target project referenced
in .net framework project
|
|
Fixes https://devdiv.visualstudio.com/DevDiv/_workitems/edit/947006
- added `OnProjectCreating` method to announce an information about the process has begun
- added `OnProjectCreated` method to announce an information about the process has completed
- added `OnProjectCreationFailed` method to announce an information about the process has failed
|
|
`PlatformService `
|