How about my patch? I do not dare to go for the ultimate solution right
now, but is it acceptable as a stop gap measure for v5?

Cheers,
Orson

On 05/18/2018 03:28 PM, Wayne Stambaugh wrote:
> The suggestions made are all good and valid but I think to some extent
> there will always be some ambiguity.  Users being users will make
> mistakes filling in field data which will cause issues when annotating
> and generating the netlist.  In complex designs with lots of multiple
> units symbols it's not always possible to know which units should be
> grouped together by reference.  More often that not, this cannot be
> known until board layout time.  This is something that I am all to
> familiar with because I do lots of designs with several dual and quad
> op-amps.  I don't think we will ever be able to completely do this
> without some ambiguity until some type of human brain interface is
> created to allow us to know what the user wants versus what the user
> specified.
> 
> That being said, I suggest we define the behavior we want before we
> start coding so there is no ambiguity it what we hope to accomplish.  A
> simple bulleted list would be fine.  Once we define the desired
> behavior, we should get some user input so that we don't create
> something that doesn't work well for users.
> 
> Cheers,
> 
> Wayne
> 
> On 05/18/2018 08:44 AM, Jeff Young wrote:
>> Hi Orson,
>>
>> The problem should become less prevalent over time: for 6.0 I plan on fixing 
>> the multi-sheet undo issues so that we can update all units in unison.  (Of 
>> course that still fails if you edit before annotating as we then don’t know 
>> which units go with which.)
>>
>> But I agree that anytime we have a non-matching field across units it looks 
>> like a bug to the user.  Your proposal is certainly an improvement in that 
>> regard.
>>
>> I think the one thing that would be left would be to flag unit field 
>> mismatches when annotating (or perhaps even try and group units by matching 
>> their fields).  But that carries enough risk to relegate it to 6.0 along 
>> with the undo stuff.
>>
>> Cheers,
>> Jeff.
>>
>>
>>> On 18 May 2018, at 12:16, Sergey A. Borshch <sb...@users.sourceforge.net> 
>>> wrote:
>>>
>>> On 18.05.2018 11:14, Maciej Sumiński wrote:
>>>> Hi,
>>>> Recently I have found out that the netlist exporter uses an algorithm
>>>> that for multiunit components uses non empty field values from the last
>>>> processed unit [1]. The problem is that the processing order depends on
>>>> the order of the units in the item list, so completely random.
>>> I want to remind that there is another bug in netlist generator related to 
>>> units processing order: https://bugs.launchpad.net/bugs/1704083
>>>
>>>> Instead, I propose we try to get all field values from the first
>>>> available unit (e.g. unit A), and resort to other units only if there
>>>> are any fields left empty.
>>>>
>>>> To give an example of what can go wrong with such approach: recently I
>>>> generated BOM and assembly documentation, where unit A had 'Mounted'
>>>> field set to 'No'. I was surprised to find out that in the generated
>>>> output it has been marked as mounted, as the unit B had 'Yes' set for
>>>> the field. I would qualify it as a bug, but I seek your input before I
>>>> proceed with pushing my changes. See my proposal in the attached patch.
>>> I think there no need in Artificial Intelligence while generating netlist 
>>> from incorrect schematics, but all fields in component units must be 
>>> consistent instead. I mean that changing in schematics editor any field in 
>>> one unit must also change same field in other units with same RefDes. 
>>> Automatic annotation must take into account all fields values and assign 
>>> different RefDes to units which differs with fields values.
>>> One more proposal - manual RefDes change shoud not be allowed with 
>>> appropriate warning if unit(s) with new RefDes already exist in schematics 
>>> and belongs to another component type or has different fields value(s). It 
>>> would be best helpful if warning message will show that units belongs to 
>>> different component types or which field value differs if component type is 
>>> the same.
>>>
>>>
>>> -- 
>>> Regards,
>>>  Sergey A. Borshch            mailto: sb...@sourceforge.net
>>>    SB ELDI ltd. Riga, Latvia
>>>
>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~kicad-developers
>>> Post to     : kicad-developers@lists.launchpad.net
>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>> More help   : https://help.launchpad.net/ListHelp
>>
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> Post to     : kicad-developers@lists.launchpad.net
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> More help   : https://help.launchpad.net/ListHelp
>>
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
> 


Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp

Reply via email to