Inedo Community Forums Forums
    • Recent
    • Tags
    • Popular
    • Login

    Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

    If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

    Visual Studio Source Server with Async/Await method debugging

    Scheduled Pinned Locked Moved Support
    proget
    2 Posts 1 Posters 1 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • ? This user is from outside of this forum
      Guest
      last edited by

      I have an odd one that I have been working on for two days.

      We have a TeamCity/ProGet setup for our internal nuget packages. It got to the point where we needed to debug the nuget packages so I went ahead and enabled source server support. Everything wired up nice and easy and I moved on.

      Later in the day I attempted to step into an awaitable method in a nuget package and it stepped right over it (no error or printed output stating the source could not be found).

      During my troubleshooting I created a sync wrapper for the method I was trying to step into, republished the nuget package and attempted to step into it which worked without issue.

      To rule out the more complex library I created a new nuget package with two methods:

      public async Task<bool> MyTestAsync()
      {
          return await Task.FromResult(true);
      }
      
      public bool MyTest()
      {
          return MyTestAsync().Result;
      }
      

      I can step into the sync method everytime without issue but VS 2015 steps over the async method each and every time.

      To rule out my box I went to a fresh image and reproduced the test which yielded the same results.

      Is there a limitation to source/symbol server debugging that I cannot see to find in a google search? Has anyone else gotten this to work?

      Product: ProGet
      Version: 3.8.6

      1 Reply Last reply Reply Quote 0
      • ? This user is from outside of this forum
        Guest
        last edited by

        There's absolutely nothing on ProGet's end that would cause symbols/source to sometimes work, and sometimes not in this manner. Async implementation in C# is very complicated and brand new, whereas source/symbols, OTOH are a 20+ year-old technology, and extremely fragile.

        So, this is just a bug in VS2015, where it's not loading a remote symbol. You can verify this using something like Fiddler or Wireshark, and then see that it's not even attempting to load symbols with the async debug.

        Please do send this to Microsoft, so they can fix it in a future update.

        1 Reply Last reply Reply Quote 0

        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

        With your input, this post could be even better 💗

        Register Login
        • 1 / 1
        • First post
          Last post
        Inedo Website Home • Support Home • Code of Conduct • Forums Guide • Documentation