Integration development and debugging pipeline RRS feed

  • Question

  • User67095 posted

    I'm developing my first Workbooks integration and I'd like to know what's the easiest pipeline to develop and debug. Publishing every package version to NuGet is prohibitive and a local package source is still cumbersome. I'm currently having problems and the log only shows that the package was successfully loaded. Is it possible to use breakpoints while debugging? Suggestions are welcome...

    Thursday, October 5, 2017 9:45 PM

All replies

  • User73391 posted

    I believe that as of Workbooks 1.3 you can just #r /path/to/your/integration.dll, and each time you rerun the #r cell it will be reloaded. So you could point directly to your build output.

    I'll ask somebody more familiar with the SDK stuff to take a look tomorrow.

    Friday, October 6, 2017 12:21 AM
  • User73391 posted

    (This was mentioned briefly in https://developer.xamarin.com/releases/interactive/interactive-1.3/#SDKandIntegrations)

    Friday, October 6, 2017 12:22 AM
  • User7 posted

    Sandy is correct! As of 1.3, you can reference your integration via #r and have it be loaded, though it will not reload every time you run the cell, unfortunately--you'll have to close and reopen your workbook.

    My recommendation for debugging right now would be the following:

    1. Write a workbook that references your integration via an absolute path (the absolute path is useful because it will prevent the .dll being packed into the workbook archive).
    2. Use the logging built into the client to print useful information. Take a look at the agent-side and client-side debugging notes on https://developer.xamarin.com/guides/cross-platform/workbooks/sdk/debugging/ about using our logging APIs and the Javascript-side logging. Note that in released builds, you won't see the Debug and Verbose levels.
    3. Run the workbook when you want to test. Using the absolute path means you won't need to build and publish a NuGet package every time.

    Unfortunately, using breakpoints is not possible at this point. We'll definitely be looking at improving this experience in the future--some sort of debugger integration is definitely on our radar.

    Friday, October 6, 2017 2:54 PM
  • User67095 posted

    Thanks for the tips. These are very helpful.

    Sunday, October 8, 2017 9:55 AM