[IronPython] IronPy Tools for VS - Projects

Steve Dower s.j.dower at gmail.com
Sat May 15 12:55:51 CEST 2010


Just thought I'd put out some more thoughts on the automatic project
hierarchy that IronPy Tools has (for now?) in the Solution Explorer.
(I'll put out there right away that I would rather see it removed and
have the traditional project management instead. Everything else I
write should be read in that context.)

Apart from importing an existing project into VS, there are very few
other times when you want all the files at once. For imports, it's
great, but for a new project it is unnecessary since there are no
relevant files at that point. Any new .py files will probably be
created through VS, rather than being created externally in such
quantity as to make dragging and dropping from Explorer painful (and
the Add Existing Item dialog supports multiple files as well). Add to
this that Solution Explorer has for quite some time had a "Show All
Files" button and there is no reason to have it exposed all the time.

Next is the clutter that comes with having all files visible. Run your
project with CPython (compatibility testing or for whatever reason)
and you get .pyc files appear everywhere. Run with -O and you'll get
.pyo files as well. Every one of these appears in Solution Explorer,
making the tree three times as long as it needs to be. Version control
related files or folders (such as .svn or .hg) are also visible. (I
know I've already raised this and a solution is coming, but the
necessity of another solution is still a point against.)

Third, automatically generated files are common and can get very
messy. The obvious destination for pydoc or epydoc documentation is
within the project folder. VS automatically expands folders when new
files appear, so updating documentation turns Solution Explorer into a
list of html files. Worse, search "Current Project" for something and
all of these files are searched as well (and for some reason, are left
open even if the text is not found...).

Fourth is not something that has affected me, but I'm not entirely
sure how source control that is integrated into VS behaves with this.
I believe that it was associated with the service providing the
project nodes, but I haven't looked into VS2010 in this area yet.
Either way, automatically including every file into source control is
probably not appropriate (and certainly is not appropriate in *every*
case).

Finally, bugs. I haven't been able to reproduce every one I've come
across, but most relate to changing the project files via Explorer
while VS is open. Since I'm using SVN with TortoiseSVN I can't use VS
exclusively for file management, and occasionally renaming, creating
or deleting a file will cause VS to crash hard ("send error report"),
crash soft ("run with /log") or display multiple/repeated files in
Solution Explorer.

In summary, I'd rather have the traditional style projects in IronPy
Tools (as in C#/C++/VB) because:
- I very rarely need to import an existing tree
- most project changes are adding code files, best done through VS
- there is a 'Show All Files' option for those who want it
- there are many files I don't want to see in VS
- integrated source control may(?) misbehave
- there will always be edge-cases with regards to synchronisation that
cause crashes

I hope this is taken in the right spirit - I'm trying to be
constructive, not to criticise from the sidelines. (After spending a
while working on my own equivalent project, I'm keen to see this one
succeed.)

Cheers,

Steve



More information about the Ironpython-users mailing list