VsShowMissing icon indicating copy to clipboard operation
VsShowMissing copied to clipboard

.vspscc file still showing up as not included in project

Open christhwaites opened this issue 5 years ago • 7 comments

I'm running version 3.2.85.27559 and although the issue list indicates that vspscc files have already been added to the ignore list, they are still showing up as errors for me.

I'm running Microsoft Visual Studio Professional 2019 Version 16.6.5

I'm sure it's something I'm doing wrong... but how can I get the extension to ignore these files?

christhwaites avatar Aug 19 '20 09:08 christhwaites

Did you check to see if that extension is listed the configured files to ignore in Tools | Options | Show Missing?

flcdrg avatar Aug 20 '20 22:08 flcdrg

Hi There,

Thanks for the response. Yes, I added the extension to the ignore pattern a while back, but it doesn't seem to have made any difference. I did have to add it manually though... it wasn't there automatically (which the issue list seemed to imply it would be?).

Here's my ignore pattern:

*.*proj;*.user;.gitignore;*.ruleset;*.suo;*.licx;*.dotSettings;*.dbmdl;*.jfm;*.vspscc

is there something wrong with my pattern? I'm guessing there is...

Thanks, Chris

christhwaites avatar Aug 25 '20 11:08 christhwaites

I've been running into some trouble changing the pattern in the options menu. By going through the code I discovered that the value of the "Ignore Pattern" option is a multiline text area, and that it is split on "\r\n". This is rather counter intuitive since it looks like a semicolon (";") delimited string.

I've been able to get it to work by opening the option value and manually replacing the semicolons with new lines.

There's a section in VsShowMissingPackage.cs around line 190 where this is handled:

            if (!string.IsNullOrEmpty(Options.IgnorePhysicalFiles))
            {
                _filters.AddRange(Options.IgnorePhysicalFiles.Split(new[] { "\r\n" },
                    StringSplitOptions.RemoveEmptyEntries).Select(p => FindFilesPatternToRegex.Convert(p.Trim())));
            }

If this were changed to:

            if (!string.IsNullOrEmpty(Options.IgnorePhysicalFiles))
            {
                _filters.AddRange(Options.IgnorePhysicalFiles.Split(new[] { "\r\n", ";" },
                    StringSplitOptions.RemoveEmptyEntries).Select(p => FindFilesPatternToRegex.Convert(p.Trim())));
            }

Then it would split on semicolons as well, which I think would be far more intuitive.

aboy021 avatar Mar 22 '21 03:03 aboy021

Thanks for that. Newlines instead of semicolons, and my build results are now MUCH cleaner!

christhwaites avatar Mar 22 '21 11:03 christhwaites

Here's some additional help with using Newlines for the .vspscc workaround. Copy the text out of the Tools>Options>show Missing>Ignore Pattern combo box. Save a copy somewhere. Paste that into Notepad, hit Return on every semicolon. Then Ctrl-h remove every semicolon. Take that vertical list and, after deleteting the contents, paste it into the Ignore Pattern box. Click away and its done. It will now look vertical. You wont need to restart VS. Here is my list (I did a quick test and I think you can copy this directly)

*.vspscc *.*proj *.user .gitignore *.ruleset *.suo *.licx *.dotSettings *.dbmdl *.jfm

BTW thanks David for this useful tool, it really helps in a multi-developer team.

ghost avatar Mar 25 '21 16:03 ghost

Great! Worked for me as well. Anyhow, it's a bug that should be fixed. I'm sure the fix won't be very expensive.

HeinzKessler avatar Apr 30 '22 07:04 HeinzKessler

Hi! I've installed VS2022 today and I'm still seeing this happen. Not sure if the default pattern is still semicolon-separated, because I imported my old settings from VS2019, but the help text for the Ignore Pattern setting still shows that the list is semicolon-separated. Changed it to new lines and it worked just fine. I was having this issue with the .gitignore file.

futymax avatar Jun 22 '22 22:06 futymax