External tools used with PTVS

Oct 12, 2012 at 8:04 PM

We're working on a large Python/C project and want to consider using VS201x + PTVS as a development system. 

3 questions are causing us to pause and ponder:

1) Parts of the project use Cython to generate python callable DLL's.  For example:

Foo.pyx.in ->[some tool.exe] -> Foo.pyx -> [cython]-> Foo.c -> [VC] -> Foo.pyd

Then we load and run some python code, e.g. Bar.py which, in turn, loads Foo.pyd. Hopefully we can then test and debug both Bar.py and Foo.c.  Ideally, we'd like to test and debug Foo.pyx and Bar.py.

Can we implement this workflow using PTVS/VS201x?

2) From a built project which has generated Foo.pyd and Bar.py,  can we automate running distutils and/or setuptools to generate a python Egg file worthy of installing?

3) Can one use Visual Studio Test Professional to test the above combinations, for example, testing Python functions.

Thanks for your help.

Coordinator
Oct 12, 2012 at 8:17 PM

For #1 we have a feature we're tracking to support mixed mode debugging (http://pytools.codeplex.com/workitem/210) but we don't yet support this.  It's definitely possible to support w/ Visual Studio's debugging architecture, we just need to implement a debugger which correctly multiplexes between the Python and native code debugger.

For #2 there's nothing automatic built in, but in your project you could have a script which does this, then you can right click on it and run it.  Again we have a feature tracking the request here: http://pytools.codeplex.com/workitem/531

Finally we don't have any test integration, but again we have a feature tracking it: http://pytools.codeplex.com/workitem/3  This one will actually require VS 2012 for us to enable it (due to some new features which enable extensibility for plugging into VS's test infrastructure)  We've done some prototyping internally to support this but it's not yet fully integrated into VS.  This is a pretty popular feature and given that we've already done some work I would expect this one to show up before the other 2.

Sorry for the disappointing response, but if you can vote on those features it'd be great to help us prioritize our work going forward.  Of course we're also an open source project and take contributions, so if you'd like to implement any of these that'd be great too.  We're always willing to help and answer any questions along the way.

Coordinator
May 30, 2013 at 7:27 PM
We're actively working on mixed-mode debugging with intent to ship it in PTVS 2.0. This should cover your scenario #1 above.
Coordinator
Jun 28, 2013 at 7:48 PM
Mixed-mode debugging has shipped in PTVS 2.0 beta - try it out and tell us what you think!