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

Re: gEDA-user: [PATCH 1/2] gnetlist: Add access to all attributes from components with multiple symbol instances.

On Jan 4, 2011, at 10:56 AM, Peter TB Brett wrote:

> On Tuesday 04 January 2011 17:45:29 Kai-Martin Knaak wrote:
>> Patrick Bernaud wrote:
>>> This commit introduces 'gnetlist:get-all-package-attributes' to
>>> retrieve every first attribute value for package consisting of
>>> multiple symbol instances.
>> So this resolves one of the more annoying warts with multiple symbol
>> components. :-)
>> However, a less severe wart remains: In case of multiple values for the
>> same attribute, the output still depends on the order the symbols were
>> added to the schematics. This may lead to unexpected, seemingly
>> unreproducible results.
> Well, no, because you will now get a BIG FAT WARNING every time you run 
> gnetlist.

One problem with only issuing a warning is that gnetlist is so chattery. In one recent project of mine, every gnetlist run issues 26 "Loading schematic" messages and 80 "BIG FAT" warnings of the form:

WARNING: Trying to rename something twice:
	X2/GND and X2/GND
are both a src and dest name
This warning is okay if you have multiple levels of hierarchy!

And, of course, I *do* have multiple levels of hierarchy.

Even if this was fixed, in my flows a "make" can produce a lot of chatter from a variety of tools, so gnetlist warnings would often still be lost. That doesn't make warnings useless, but they are only one line of defense.

My original patch yielded "attribute_conflict" for ambiguous attribute values. That's better behavior, I think. Simply picking one value by whatever means is surely wrong, as it is unpredictable to anyone except experts who know the inner workings of gEDA. The nice thing about a bad result in the output netlist or BOM is that the user is more likely to pick it up. Users already have to check for "unknown" in the relevant fields (and there's no warning in that case).

Realistically, in automated processing flows (not only gEDA), the user detects problems by encountering bad results. The chatter is only good for diagnosis after the problem is detected.

John Doty              Noqsi Aerospace, Ltd.

This message contains technical discussion involving difficult issues. No personal disrespect or malice is intended. If you perceive such, your perception is simply wrong. I'm a busy person, and in my business "go along to get along" causes mission failures and sometimes kills people, so I tend to be a bit blunt.

geda-user mailing list