[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: gschem, More than one component found with name ...



On Fri, 2007-10-19 at 08:48 -0700, joe tarantino wrote:
> 
> 
> On 10/19/07, John Doty <jpd@xxxxxxxxxxxxx> wrote:
>         
>         On Oct 18, 2007, at 9:19 PM, Ales Hvezda wrote:
>         
>         >
>         >> Peter B wants (and I think this is a good thing) to start
>         embedding
>         >> symbols by default, so this code will change at some point.
>         > 
>         > I'm still on the fence on this change.  All the weirdness
>         associated
>         > with embedded symbols should be fixed first before the
>         default is
>         > changed.  And hopefully all the licensing issues with
>         embedded symbols 
>         > has been hashed out as well (the license text on the gEDA
>         website
>         > mentions
>         > embedded symbols a little bit, this should probably be
>         really
>         > explicitly
>         > cleared up).
>         
>         I do not think this is a good change at all. Symbols should
>         not be 
>         copied into the schematic file, they should be copied into the
>         project's private symbol area and instantiated in the
>         schematic. That
>         yields the best behavior: edit the symbol, get project-wide
>         changes.
> 
> Please do not force or even default to embedding symbols in the
> schematic.   I'm thinking of
> a bigger picture here...
> If I have N copies of a symbol in a schematic, spread across multiple
> pages (files) and I want 
> to update the symbol,  it is going to involve a lot of duplication of
> work if I have to touch each one..
> When I work with someone else on a design it is a lot easier to fix
> the symbol and have 
> their pages and my pages reflect the update immediately instead of
> digging through all my 
> pages and theirs (which I am not familiar with) fixing the instances
> one at a time.
> 
> Indeed, careful treatment of attribute promotion is required
> (regardless).  If it is tricky or has
> changed recently, then maybe some tweaks to the docs or discussion in
> the wiki would be 
> helpful.

Perhaps I should have explained more of the context Peter B proposed
when I mentioned the proposal. He's far better placed to talk about what
he proposed, but as he's not replied yet, I thought I'd elaborate a bit
here to try and help put peoples minds at rest with the proposal...
 

There would be a slight file-format change, so symbols used in the
schematic are "embedded" once only. (Think of it as how we do things
now, but with a cache of used symbols in the schemetic file).

Peter proposes to intelligently sort the files on save, so editing a
file (and leaving it the same way) will not push all changes to the
beginning, or end of the file. This makes diffs between changed
symbols / schematics actually useful, and allows the checksum hashes for
any edited (but eventually unchanged) symbols identical.

The intention is that the embedded cache of symbols can then be hash
checksum compared against the symbols found in your parts library
(wherever they might be), and when you load a schematic with "old"
symbols (or there are changes in the library), you will be prompted for
what you want to do with them. (Probably showing the changes in each
symbol visually on screen).

This approach helps avoid breaking your schematics when editing your
symbol library, and leads to the possibility of placing symbols fetched
from an online source (gedasymbols.org for example), without having to
explicitly save them somewhere, or embed each and every instance.

I personally think this is a good compromise between automatic breaking
of schematics when your symbol library changes, and the tedious manual
updates which might be required in a per-instance embedded approach.

Best wishes,

Peter C.





_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user