I have made thought about version control. In software development I use
an IDE (Eclipse) with a version control build-in. Actually I prefer the
subversion pluggin.
Wouldn't it be great if there would be a IDE-CAD with the abillity to
work on CAD files (solidworks) and also text file for documentation.
Integrated in this IDE-CAD should be some kind of version control.
Subversion would be great. Why into a IDE-CAD? Well building the system
as a workspace with plugins it could benefit from the ability other
plugins or program give to the version control system. The main feature
would be compare documents. In this case assemblies, parts and drawing.
When comparing tools are availible from the native application the
version control pluggin could use these tools. This is off course
extremly important when dealing with binary files or feature structured
files. Offcourse the xml concept from Phillipe could play some role.
Just simple thoughts.
Johnny
Who knows? Maybe the Solidworks Gods have heard you...... ;)
We will see what 2005 will bring us
Johnny
That really would be the best. An "XML Feature" (like the "Macro
Feature") added as one of the features... One could potientially store
any information they wanted. It would be customizable and there could
be an interface (preferrably web based) that could be used to extract/
present information... revisions/ trees (like the one in dynabits) you
name it, it could all be done!
I kind of thought about this one and dropped it when I started work on
swCP3.
mvk
Right. XML is the way. Check www.cadml.org and use it ! It is free !
You can easily extract any information you need from your models from the
generated XML, and can visualize it as you like by using XSLT.
And if the "SolidWorks Gods" have an idea on how to embed documents in their
Holy Files, let's hope than enough prayers will let them create an API for
this too. Pray with me : "Please SolidWorks protect us from Bill Gates'
Structured Storage and solve SPR 226951 and SPR 226952". Even if you don't
understand every word, it may work (just like prayers...)
Now seriously, version control through Subversion or CVS is not a good idea
for SW files becuse they contain too much binary data and can't benefit from
the efficient "diff" function those source code version control use.
Now if you consider that www.ecocom.com 's EcoSqueeze can delete all this
heavy 3D Parasolid info you don't need in archives (Structured Storage...)
and that many/most design information can be stored in an XML file, version
control becomes realistic. However, CVS or Subversion handle XML as text
and can't detect that <thistag a="1" b="2"/> is the same as <thistag b="2"
a="1" />.
We would need an XML-specific version control system, or plug an XML-diff
module in Subversion...
The trouble is, days are only 24h long and I have more ideas than money :-(
--
Philippe Guglielmetti - www.dynabits.com
I have no pity for you!
Sadly, Philippe, I have a worse condition - more ideas than brains.
:)
SMA
Should we go to the 2005 beta forum?
Beside your example how would you deal with file interrelations? Would
you do that like is done in software dev with the include? But what if
Solidworks provide a diff functionality which could be plugged in into
subversion? That is what would be intresting.
Johnny
Well - you could read the XML data into objects with oh...I
dunno..Python (my favourite language), and test equality for this case
quite easily - so this is doable (in any language, but Python rocks).
>
> Should we go to the 2005 beta forum?
>
> Beside your example how would you deal with file interrelations? Would
> you do that like is done in software dev with the include? But what if
> Solidworks provide a diff functionality which could be plugged in into
> subversion? That is what would be intresting.
>
References to other objects is also doable in XML. There is a cool XML
Python pickle (Python's notion of object persistence - like Java's
serialization) module out there:
http://freshmeat.net/projects/gnosisxml/
It handles references to objects and everything. Quite cool. Something
along these lines could be implemented. Just give Philippe another 12
or so hours per day and a pile of money. ;o) Heck - I'd go for that too...
FWIW - I am actually using Subversion for revision control with SW and
it seems to work so far - but it is only for a small repository at a
small company. It definitely would not scale at all for a *real* 3D
design shop. I never thought about using ecosqueze however - this could
be triggered automatically on check-in (Subversion is cool this way) and
would probably save a whole pile of disk space.
Markus.
> Right. XML is the way. Check www.cadml.org and use it ! It is free !
> You can easily extract any information you need from your models from the
> generated XML, and can visualize it as you like by using XSLT.
Yeah for that purpose, it's great, but what we require is an
"extenstion" that will store textual information along with the model
information.
An "XML Feature" would be an excellent, customizable method of
documenting a design.
While we can wait for SW to get around to giving us this, how much
work would it be to use a "Macro Feature" to do this?
mvk
mvk
yes, it would, but you have to take care about parts that have imported
geometry or face/edge specific information (colors, names) which would be
lost...
We should ask Thilo (ecocom.com) to make his great tool a bit more
intelligent.