mono / monodevelop

MonoDevelop is a cross platform .NET IDE
http://www.monodevelop.com
2.84k stars 1.02k forks source link

MonoDevelop find and replace fails when applied to Whole Solution #9402

Open mickeyjf opened 4 years ago

mickeyjf commented 4 years ago

Works as expected in a single file, but when attempting to apply to Whole Solution, displays the message :

"The file "filename" has been changed outside of MonoDevelop. Do you want to keep your changes, or reload the file from disk?"

1) The message is confusing. 2) When responding with "keep the changes", none, or not all of the instances are changed. 3) It may be that some external process is launched to do this, but "outside of MonoDevelop" is misleading when the user has acted entirely within MonoDevelop. 4) After this, when saving the file another "file has been changed outside of MonoDevelop" message is presented. In both cases this is not true (certainly not from the user's perspective).

Test: In several files, write something like :

public string s = "JUNK";

Menu Search->Replace in Files Find: "JUNK" Replace: "trash" Click Replace. Results as described above.

System/Version information:

MonoDevelop Version 7.8.4 (build 2) Installation UUID: c2c2b398-e965-403e-92cb-6c50502223fb GTK+ 2.24.31 (Xamarin theme)

Mono Framework MDK Runtime: Mono 6.4.0.198 (tarball Tue Sep 24 01:20:06 UTC 2019) (64-bit)

NuGet Version: 4.8.2.5835

.NET Core Runtime: Not installed SDK: Not installed MSBuild SDKs: /usr/lib/mono/msbuild/15.0/bin/Sdks

Build Information Release ID: 708040002 Git revision: 622db12503514afdb641c31615408bfe905a7312 Build date: 2019-07-17 17:02:07-04

Operating System Linux Linux 4.9.0-11-amd64 #1 SMP Debian 4.9.189-3+deb9u2 (2019-11-11) x86_64