IronPython Tools for VS2010 Questions

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

IronPython Tools for VS2010 Questions

Bill Dines
Hi,

I have been evaluating IPy tools for VS2010 with a view to our
customers, partners and client services teams using it with VS 2010
Integrated Shell so they can create Silverlight UI's that talk to our
REST API using IPy.  Overall its going well, but I have a few questions:

1. Intellisense/autocomplete will be really useful for our users.  Can
anyone tell me what should and shouldn't provide this capability.  So
far it seems that some System types provide it and Python Module Methods
work as well but I'm not sure what else should work as it is a little
buggy.  For example is there any way to get intellisense from 3rd party
c# dll's?

2. Using a Python Project and Chiron, what is the best way to include
3rd party .dlls in the xap?  At the moment I've copied the .dlls to the
IP Silverlight\bin folder and added them to the "assemblies" attribute
of IPy's <Language\> tag in Chiron.exe.config.  This works OK but means
all .dlls will be included for all python projects.  Is there a way of
getting this to work for each project individually without the users
having to do anything manually (I want to create project templates that
they can be up and running without doing any config themselves).
Alternatively could the .dlls be downloaded from outside the xap e.g.
from another .xap or .slvx?

3. Is anyone currently working on the IPy tools specifically?  There are
quite a lot of bugs right now unfortunately and many of them would need
to be fixed if we were to use it.  Note that my company may be willing
to provide some resource in that area if we decide to proceed, but we
don't have much experience with VS extensions so we may need some
guidance.

Thanks

Bill





_______________________________________________
Users mailing list
[hidden email]
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
Reply | Threaded
Open this post in threaded view
|

Re: IronPython Tools for VS2010 Questions

Jeff Hardy-4
On Wed, Mar 30, 2011 at 9:12 AM, Bill Dines <[hidden email]> wrote:
> 3. Is anyone currently working on the IPy tools specifically?  There are
> quite a lot of bugs right now unfortunately and many of them would need
> to be fixed if we were to use it.  Note that my company may be willing
> to provide some resource in that area if we decide to proceed, but we
> don't have much experience with VS extensions so we may need some
> guidance.

Addressing this specifically - Microsoft is maintaining their own
Python Tools for Visual Studio ("new" tools), which is a descendant of
IronPython Tools ("old" tools). The new tools support CPython as well
as IronPython and are being developed by full-time staff at MS (Dino
V, who wrote the original IronPython tools).

This puts the future of the old tools in a tough spot, since any work
on them would be a duplicate of the new tools. If the legal beagles at
MS can be convinced to allow them to take contributions back into
Python Tools (the source is available, but like IronPython of old,
they can't accept outside code), then the old tools will get critical
updates, but I'll point people at the new tools for production work.

Take a look at the new tools (http://pytools.codeplex.com/) and see if
they're a better fit for what you're trying to do.

- Jeff
_______________________________________________
Users mailing list
[hidden email]
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
Reply | Threaded
Open this post in threaded view
|

Re: IronPython Tools for VS2010 Questions

Dino Viehland
In reply to this post by Bill Dines
Bill wrote:
> 1. Intellisense/autocomplete will be really useful for our users.  Can anyone
> tell me what should and shouldn't provide this capability.  So far it seems that
> some System types provide it and Python Module Methods work as well but
> I'm not sure what else should work as it is a little buggy.  For example is there
> any way to get intellisense from 3rd party c# dll's?

It will work with any Python code that you have loaded into your project or with
any .NET assemblies which can be successfully loaded by Visual Studio process
and which there are clr.AddReference calls.  Likely that means the assemblies will
need to be in the GAC for them to be loaded.  Once we see the clr.AddReference
call you should be able to get completion on their namespaces and types.

>
> 2. Using a Python Project and Chiron, what is the best way to include 3rd
> party .dlls in the xap?  At the moment I've copied the .dlls to the IP
> Silverlight\bin folder and added them to the "assemblies" attribute of IPy's
> <Language\> tag in Chiron.exe.config.  This works OK but means all .dlls will
> be included for all python projects.  Is there a way of getting this to work for
> each project individually without the users having to do anything manually (I
> want to create project templates that they can be up and running without
> doing any config themselves).
> Alternatively could the .dlls be downloaded from outside the xap e.g.
> from another .xap or .slvx?

I don't think there's a specific feature here.  If you'd like to see this in PTVS
which Jeff mentioned then you could open a feature request over at
pytools.codeplex.com.

>
> 3. Is anyone currently working on the IPy tools specifically?  There are quite a
> lot of bugs right now unfortunately and many of them would need to be
> fixed if we were to use it.  Note that my company may be willing to provide
> some resource in that area if we decide to proceed, but we don't have much
> experience with VS extensions so we may need some guidance.

Yep, see Jeff's response. We're working on our side to improve the situation with
PTVS but don't have anything more to say yet.
_______________________________________________
Users mailing list
[hidden email]
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
Reply | Threaded
Open this post in threaded view
|

Re: IronPython Tools for VS2010 Questions

Bill Dines
In reply to this post by Bill Dines

> 1. Intellisense/autocomplete will be really useful for our users.  Can

> anyone tell me what should and shouldn't provide this capability.  So
> far it seems that some System types provide it and Python Module
> Methods work as well but I'm not sure what else should work as it is a

> little buggy.  For example is there any way to get intellisense from
3rd party c# dll's?

>>It will work with any Python code that you have loaded into your
project or with any .NET assemblies which can be >>successfully loaded
by Visual Studio process and which there are clr.AddReference calls.
Likely that means the >>assemblies will need to be in the GAC for them
to be loaded.  Once we see the clr.AddReference call you should be
>>able to get completion on their namespaces and types.

I wasn't aware you could put Silverlight assemblies in the GAC, but it
seems you can!  It does work but there is still a problem because if you
use clr.AddReference() the code fails as Python can't load the assembly
at runtime.  I've been using clr.AddReferenceToFile() which works at
runtime (so long as I use the technique described in question 2 to get
the .dll in the xap) but doesn't give Intellisense at design time :(

>
> 2. Using a Python Project and Chiron, what is the best way to include
> 3rd party .dlls in the xap?  At the moment I've copied the .dlls to
> the IP Silverlight\bin folder and added them to the "assemblies"
> attribute of IPy's <Language\> tag in Chiron.exe.config.  This works
> OK but means all .dlls will be included for all python projects.  Is
> there a way of getting this to work for each project individually
> without the users having to do anything manually (I want to create
> project templates that they can be up and running without doing any
config themselves).
> Alternatively could the .dlls be downloaded from outside the xap e.g.
> from another .xap or .slvx?

>>I don't think there's a specific feature here.  If you'd like to see
this in PTVS which Jeff mentioned then you could >>open a feature
request over at pytools.codeplex.com.

I will do that.  It seems that these things are all related.  You need
to be able to add a reference to a .dll, get intellisense from it and
have it in the .xap so it's available at runtime.  It's basic
Silverlight stuff that really should be there I think.





_______________________________________________
Users mailing list
[hidden email]
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com