Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot debug VFT inself anymore - FSharp.Editor has no PDB file #2771

Closed
vasily-kirichenko opened this issue Apr 2, 2017 · 24 comments
Closed
Labels
Bug Contributor Pain Impact-High (Internal MS Team use only) Describes an issue with extreme impact on existing code.

Comments

@vasily-kirichenko
Copy link
Contributor

  • git cleanup
  • deleted c:\Users\me\AppData\Local\Microsoft\VisualStudio\15.0_183b437fFSharpDev
  • deleted c:\Users\me\AppData\Roaming\Microsoft\VisualStudio\15.0_183b437fFSharpDev
  • build vs
  • build VFT solution inside VS
  • Ctrl+F5
  • attached to the exp instance
  • tried to set a breakpoint in several places in FSharp.Editor and FSharp.Language.Service

image

@forki
Copy link
Contributor

forki commented Apr 2, 2017 via email

@vasily-kirichenko
Copy link
Contributor Author

wow :((

@forki
Copy link
Contributor

forki commented Apr 2, 2017 via email

@vasily-kirichenko
Copy link
Contributor Author

I think the big diff was switching to more nuget VS packages instead of GAC deps.

@forki
Copy link
Contributor

forki commented Apr 2, 2017

Sigh.
I think @cloudRoutine said something about nuget packages messing up his editor support yesterday. Why is this shit never working?
OK so what now? Can you reset before that and confirm it broke us?

@vasily-kirichenko
Copy link
Contributor Author

image

@vasily-kirichenko
Copy link
Contributor Author

I'm completely stuck on working on VFT at the moment :(

@cloudRoutine
Copy link
Contributor



tried adding

<IncludeDebugSymbolsInVSIXContainer>true</IncludeDebugSymbolsInVSIXContainer>
  <IncludeDebugSymbolsInLocalVSIXDeployment>true</IncludeDebugSymbolsInLocalVSIXDeployment>

to visualfsharpopensource.csproj, only seemed to make symbols load faster

after disabling just my code in debug settings

Changing the setting suggested in the image below made no difference

@cloudRoutine
Copy link
Contributor

After trying to set a breakpoint crashed VS

I was able to set some breakpoints that came up as invalid while loading the experimental instance once it was actually running

@vasily-kirichenko
Copy link
Contributor Author

I looked at what FSharp.Editor.dll is actually loaded and there no *.pdb in that folder at all:

image

@vasily-kirichenko
Copy link
Contributor Author

I've copied *.pdb manually, it's not helped.

@vasily-kirichenko
Copy link
Contributor Author

'devenv.exe' (CLR v4.0.30319: DefaultDomain): Loaded 'C:\USERS\VASKI\APPDATA\LOCAL\MICROSOFT\VISUALSTUDIO\15.0_183B437FFSHARPDEV\EXTENSIONS\MICROSOFT.VISUALFSHARPTOOLS\VISUAL F# TOOLS\42.42.42.42\FSharp.Editor.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.

Why the hell it's optimized??

@sergey-tihon
Copy link
Contributor

sergey-tihon commented Apr 2, 2017

not sure if it is related, but after update to latest nightly, VS2017 asked to install some VS updates ...
After installation I cannot open solutions with F# projects and I found that VFT extension is disables

I can not do anything about it for now...
vft-disabled

@cartermp
Copy link
Contributor

cartermp commented Apr 2, 2017

@sergey-tihon Can you run VSIXInstaller to remove the nightly and load F# projects after that? (It should be using the vs2017 RTW version of the tools).

@cartermp cartermp changed the title Cannot debug VFT inself anymore Cannot debug VFT inself anymore - FSharp.Editor has no PDB file Apr 2, 2017
@cloudRoutine
Copy link
Contributor

cc @ctaggart

@cloudRoutine
Copy link
Contributor

switching back to my navigable-improvements branch/PR and the problem disappears

so the problem should be within
cloudRoutine/fsharp@navigable-improvements...cloudRoutine:master

@0x53A
Copy link
Contributor

0x53A commented Apr 2, 2017

There seems to be an issue with portable PDBs:

After disabling optimizations and setting DebugType: full, all breakpoints bind, and all except two (the marked lines) also actually hit.

master...0x53A:debuggable

image

I had to disable sourcelink, because sourcelink only works with portable pdbs.

With optimizations enabled, some breakpoints wouldn't bind, but the ones that bound then also got hit.

@majocha
Copy link
Contributor

majocha commented Apr 3, 2017

Thanks @0x53A ! It started to work with your fix, but only after another git clean.

@0x53A
Copy link
Contributor

0x53A commented Apr 3, 2017

@majocha you don't need to clean, but you need to change anything in any file, because the up-to-date check doesn't check the FSharpSource.Settings.targets, and so doesn't rebuild by default. I always just added/removed one space in FSharp.Editor when testing this.

@forki
Copy link
Contributor

forki commented Apr 3, 2017

clean is often needed if you want to rebuild proto or when nuget fucked up again.

@forki
Copy link
Contributor

forki commented Apr 4, 2017

This is really really painful

@majocha
Copy link
Contributor

majocha commented Apr 4, 2017

Yeah, I'm totally blocked again. Breakpoints fail to bind.

@cartermp cartermp added the Impact-High (Internal MS Team use only) Describes an issue with extreme impact on existing code. label Apr 4, 2017
@cartermp
Copy link
Contributor

cartermp commented Apr 4, 2017

cc @KevinRansom @brettfo - this has to be resolved quickly.

@vasily-kirichenko
Copy link
Contributor Author

Fixed in master.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Contributor Pain Impact-High (Internal MS Team use only) Describes an issue with extreme impact on existing code.
Projects
None yet
Development

No branches or pull requests

8 participants