X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=KyD8CGhXSYq3tgI6nEjySI1mNmNPfX+Lm/7uyk/O9QQ=; b=Hvpa4AwP/2tFEcT+8lfnLX+s+8NVRz3YRds7oNiCxZshvHLoZx4p8SMVZ26Lt5vEdv nlyx2sqggWyqJxvFtTh0R57X7pEssjK7M5nD/7mVBCm0OWVjZq1OMpvHvlnwNUj4hJMi 2xABD2mFIE5XkWSDBsH0YwH11vJWLSPJXvQWa8yyLCqTO20qGXF9Ks9br3dOSgIYTzF0 DykfF5n/NfN0JjnOKvZQWV8ohJCcnilIWLn5dwnv5eig5L0gxlba5HAEWni6aY4NYYd8 YLT+zATRQjnY/l6lqMdIDIGTCUZJY2UVl4c3AIlTTLxxI0Bxo2EDlE3tSkGVyuqWDRhQ c+hQ== MIME-Version: 1.0 X-Received: by 10.112.173.69 with SMTP id bi5mr10317968lbc.61.1413567888592; Fri, 17 Oct 2014 10:44:48 -0700 (PDT) In-Reply-To: <5441519D.4060009@ecosensory.com> References: <00E6DEBC-05AB-4079-9E88-152225FF6DDE AT qux DOT com> <87wq80xauh DOT fsf AT hotmail DOT com> <87siinykoy DOT fsf AT hotmail DOT com> <5440A6B2 DOT 2000900 AT ecosensory DOT com> <5441519D DOT 4060009 AT ecosensory DOT com> Date: Fri, 17 Oct 2014 12:44:48 -0500 Message-ID: Subject: Re: [geda-user] SchemeIt From: Evan Foss To: geda-user AT delorie DOT com Content-Type: text/plain; charset=UTF-8 Reply-To: geda-user AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-user AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk I think we want the diff functions internal to the geda and friends and the version control external. For those who have not seen the visual diff I am talking about. http://www.evilmadscientist.com/2011/improving-open-source-hardware-visual-diffs/ It would be nice to do this stuff internally. That is with out going through external tools and doing the pdf export. That way we could more eligantly merge features between versions. On Fri, Oct 17, 2014 at 12:27 PM, John Griessen wrote: > On 10/17/2014 01:45 AM, gedau AT igor2 DOT repo DOT hu wrote: > >> Where it certainly won't help: - object coord changes, things getting >> moved around in pcb - logical connections change in sch - >> pcb element or sch symbol gets replaced - sch element gets embedded or >> unembedded >> >> In my practice after the initial few commits the latter group makes up >> majority of the changes. > > > > Yes, that does stop an external VCS from helping merges. It's a harder > problem than my first glance idea. > > >> a format that would: - store symbols+attributes blocks separately from >> coordinates - would be restructured and indented for >> easier manual read (my daily PITA is figuring which attribute blocks are >> corresponding to which component and which attribute >> survives of the multiple blocks of an embedded sym) - a new structure >> should actively help diff to show useful context; if >> there are like 10 attributes of a symbol and the value of the last one >> changes, in the diff the attribute value change is >> visible, but usually not enough context to identify which component's >> attribute has changed; increasing the number of context >> lines doesn't help since this would increase the nosie too - separate >> coordinate info and pin connection info on nets; e.g. >> instead of a list of coordinates, a net would be a list of connection >> between named component/pins and where needed >> (automatically named) non-component hub points >> >> Diff on such a format would reveal how the connections have changed (among >> with a set of random-looking coord changes at the >> bottom which the user then could simply ignore). > > > What if that format was created by an external lint program instead of being > part of every design file? > > >> meaningful diffs in PCB world would mean a GUI diff tool > > Yes, sounds right. And also it would be great to have a fuzzy visual diff > that showed some circuitry > shoved a little to the side still matching. Highlighting of who the owner > of the discrepancy is based on > a previous and a 2nd previous drawing might be helpful to keep collaborators > from > accidentally changing something. In PCB a visual diff could be used just to > enforce working in separate corners > of a drawing for easy merging. Suppose visual diffs were done every 3 > minutes and a zone in between called > a no-person's-land was checked for changes and alarmed if any stepping on > occurs. > > John -- Home http://evanfoss.googlepages.com/ Work http://forge.abcd.harvard.edu/gf/project/epl_engineering/wiki/