[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
gEDA-cvs: CVS update: irclog_sprint_20070421.txt
User: ahvezda
Date: 07/06/07 23:12:34
Added: . irclog_sprint_20070421.txt
Log:
Misc website updates (long overdue a checking)
Revision Changes Path
1.1 eda/geda/website/sprints/irclog_sprint_20070421.txt
Index: irclog_sprint_20070421.txt
===================================================================
00:04 -!- Igor2 [~igor2@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
01:20 -!- robfitz [~robfitz@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has quit [Ping timeout: 620 seconds]
01:20 -!- robfitz [~robfitz@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
01:31 < Igor2> hi
01:47 -!- nwk [~nwk@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
01:54 < Igor2> hi
01:57 < nwk> hi
02:32 -!- bert [~bert@xxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
02:42 -!- peterbrett [~peter@xxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
02:57 -!- cory [~cory@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
02:57 < cory> quit
02:57 -!- cory [~cory@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has quit [Client Quit]
03:11 -!- corycross [~coryrc@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
03:12 -!- corycross [~coryrc@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has quit [Client Quit]
03:14 -!- corycrossq [~cory@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
03:16 < peterbrett> *blink*
03:24 < Igor2> blink?
03:32 < peterbrett> cory's in-and-outness
03:32 < peterbrett> Ales: If you're listening, could you please kick seul.org to refresh the MX record for peter-b.co.uk?
03:33 < peterbrett> Ales: My mailserver died yesterday, and I've moved to a new provider
04:01 < corycrossq> Couldn't find the right irc client I used to use...
04:02 -!- corycrossq [~cory@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has left #geda []
04:02 -!- corycrossq [~cory@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
04:27 -!- cnieves [~cnieves@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
04:27 < cnieves> hi everybody
04:28 < peterbrett> hey cnieves
04:29 < cnieves> hi Peter
04:30 < cnieves> the code sprint seems to be running since a long time... ;) did I miss something?
04:30 < peterbrett> No, it'll start about 2 pm GMT, I think
04:31 < peterbrett> I'll be going to PeterC's place for lunch and to start the UK leg of the sprint :)
04:31 < cnieves> That's the official US start time ;) .
04:31 < cnieves> Nice! food and coding! :)
04:32 < peterbrett> My e-mail is still screwed; I think seul.org hasn't realized that the MX records for my domain have changed
04:33 < cnieves> isn't that a dns thing? maybe the dns it is using has not updated its tables...
04:33 < peterbrett> cnieves: That's right, yes
04:34 < cnieves> Hard thing to solve if you don't have access to the dns... Don't know if Ales can do something.
04:35 < peterbrett> Also, the fscking git system keeps screwing up
04:36 < cnieves> what is it doing?
04:37 < peterbrett> Skipping commits
04:37 < cnieves> :-o why?
04:37 < peterbrett> http://www.srcf.ucam.org/~ptbb2/gitweb.cgi?p=gaf.git;a=summary
04:38 < peterbrett> Missing a couple of commits from yesterday, and I have no idea why
04:40 < cnieves> yup, I saw them in the mail. You can talk to Ales when he comes
04:42 < cnieves> I'll take a look at your patch, and apply it, complying with Ales' comments (I will comment the code to fetch the wiki from the web)
04:42 < cnieves> there is no file in SF tracker
04:42 < cnieves> should I take it from the mail?
04:42 < Igor2> >peter> so, can you find a way that i can fetch the commit info without having a local repository?
04:45 < peterbrett> cnieves: Yes, from the mail
04:46 < peterbrett> Igor2: Some ways have occurred to me, but I'm just feeling pissed of with cvsps atm
04:47 < Igor2> ok
04:52 < peterbrett> Igor2: Screenscraping seemed to be the best option
04:58 < Igor2> i didn't get to compile the CVS version yet - that night when i tried my friend took my resources with his kernel patch problem :)
04:58 < Igor2> but as soon as i've etched these boards
04:58 < Igor2> i will set up that compile environment
04:59 < Igor2> then i will have binaries compiled for i586, probably in .deb format with an easy and semi-automatic update :)
05:05 < Igor2> bah, my etchant is a bit tired :)
05:12 < cnieves> Peterbrett: I notice your gschem-browse-wiki patch won't work under windows...
05:12 < cnieves> isn't there a way to make it working?
05:12 < cnieves> (revert back to the current behaviour?)
05:12 < peterbrett> cnieves: Why won't it work?
05:13 < peterbrett> cnieves: The current behaviour is exactly the same
05:13 < peterbrett> cnieves: Look at initiate-gschemdoc in i_callbacks.c
05:13 < cnieves> you have an #ifndef MINGW ... fork() #else "Documentation commands not supported under MinGW"
05:13 < peterbrett> cnieves: fork() is a point of very much contention in Linux<->Windows portability
05:13 < peterbrett> cnieves: Yes, I remember now
05:14 < peterbrett> cnieves: fork()-ing gschemdoc hasn't ever worked on Windows
05:15 < cnieves> is the current behaviour a fork too?
05:15 < peterbrett> cnieves: yep
05:15 < peterbrett> cnieves: The "fix" is to use CreateProcess() from the Windows API
05:15 < peterbrett> Because O*(&%(*&"££*$& Microsoft can't implement the POSIX specification
05:16 < peterbrett> We should probably do something with autoconf & missing
05:16 < cnieves> yup, they prefer their own api. Then I suppose there is no problem.
05:17 < cnieves> it's a big deal the windows users won't have access to help pages... :)
05:18 < peterbrett> cnieves: Yep. It does need fixing, but I don't want to plough through MSDN pages for fear of my brain dribbling out of my ears
05:29 -!- pcjc2 [~pcjc2@xxxxxxxxxxxxxxxxxxxx] has joined #geda
05:29 < pcjc2> hi all
05:30 < cnieves> hi Peter
05:30 < cnieves> welcome!
05:32 < cnieves> pcjc2: do you plan to apply your patches in SF tracker?
05:33 < pcjc2> I hoped to see what people thought of the new-page cleanup first
05:36 < pcjc2> I'll apply the circle drawing one, and the minor tidyup one
05:37 < cnieves> ok. Ask for the other when all people come. I generally assume that if there are no comments, there is no objection to the patch.
05:38 < pcjc2> I don't think its too controversial
05:38 < peterbrett> Who feels like a big crack-down on #ifdef DEBUG sections?
05:39 < pcjc2> and it "works for me", It just doesn't hurt to get another few pairs of eyes to look at it when you essentially re-write a bit of code
05:39 < peterbrett> (along a similar vein to my destruction of GTK1.2 support last year)
05:39 < pcjc2> (In this case, the code which opens files from the command line)
05:40 < pcjc2> if it doesn't compile with #define DEBUG 1 somewhere, then cull them I say
05:40 < pcjc2> OTOH, there are some places where they (or statements like them) are helpful
05:40 < pcjc2> )
05:40 < peterbrett> It would be a good idea to define a macro (e.g. DEBUGMSG() ) for print debug info
05:40 < pcjc2> bah can't match (), you see why I hate Scheme!
05:40 < pcjc2> sure, is there a GLib way
05:41 < peterbrett> pcjc2: If you're using emacs to edit scheme, there's a keystroke to close all open parentheses
05:41 < pcjc2> there is a Kernel way, if you look at its sources
05:41 < pcjc2> you could define such a DEBUGMSG() macro in similar vein to fprintf( stderr, ... )m
05:42 < pcjc2> s/m$/ with a variadic marco/
05:42 < peterbrett> pcjc2: Yes, but variadic macros *are* slightly evil
05:42 < pcjc2> you probably should have a replacement if variadic macros don't work - a function taking varargs
05:43 < peterbrett> yes
05:43 < pcjc2> your DEBUGMSG wants to be a macro
05:43 < pcjc2> and if it is to have printf syntax, either you must use variadic macros
05:43 < pcjc2> or just define DEBUGMSG to expand somehow, without taking parameters
05:44 < pcjc2> like #define DEBUGMSG printf
05:44 < pcjc2> OR #define DEBUGMSG \\
05:44 < pcjc2> no - thats broken anyway - ignore me
05:44 < peterbrett> pcjc2: My pleasure
05:45 < cnieves> help->component is not working for me, neither in the last gschem release. Could you please verify it?
05:45 < peterbrett> cnieves: Um.. a testcase would be useful
05:45 < pcjc2> I can't see how to do it without a variadic macro, or a macro which expands directly into a function call - must be one of the two
05:45 < cnieves> easy: open gschem, go to the menu help->component... in the last gschem release
05:47 < pcjc2> don't you have selected a component with a documentation reference?
05:47 < cnieves> oh! forget it! I didnt't!
05:48 < peterbrett> :) lol
05:48 < peterbrett> And there's me blowing away my build tree to compile a released version
05:49 < pcjc2> if its just over a component with no documentation link, IIRC, it googles for the device name
05:49 < pcjc2> (But I'm just remembering what I think I saw one late night here.... not trying it live)
05:50 < cnieves> no, it just does nothing
05:50 < peterbrett> cnieves: That may be a bug
05:50 < cnieves> yup. A message should be better
05:51 < cnieves> peterc: have you seen ivan's mail?
05:53 < peterbrett> Hmm
05:53 < peterbrett> I think I need to install CVS Emacs
05:57 < pcjc2> yes - just mailing back
05:57 < pcjc2> feeling stupid pointing him to my patch in the tracker when I'd forgotten to upload that one
05:57 < pcjc2> Also, briefly explaining the scheme defined menus
05:58 < pcjc2> rcstrings.c
05:58 < peterbrett> grep -Lr --include='*.[ch]' '#ifdef DEBUG' * | wc -l
05:58 < cnieves> why not invite him to IRC?
05:58 < peterbrett> only 343 files have #ifdef DEBUGs in
05:58 < pcjc2> I guess that is I18N, but I can't figure out how / where they are referenced
05:58 < pcjc2> good point, will send that email now
06:00 < peterbrett> ...oops, I needed the -l switch to grep, not -L
06:00 < peterbrett> 20 matches seems more reasonable
06:00 < peterbrett> most of them are in gattrib
06:01 < peterbrett> 81 files have occurrences of 'DEBUG'
06:01 < pcjc2> I'd not suggest removing them from gattrib without checking with Stuart
06:01 < peterbrett> pcjc2
06:01 < peterbrett> meh
06:01 < peterbrett> I agree
06:01 < peterbrett> I'm going to pack up here and head over to your place now
06:02 < pcjc2> ok
06:02 < cnieves> peterbrett: I applied your patch to the help menu
06:02 -!- peterbrett [~peter@xxxxxxxxxxxxxxxxxxxxxxx] has quit [Quit: Leaving]
06:02 < cnieves> doh! just when he leaves! :(
06:27 < cnieves> pcjc2: do you know a strstr function that is case insensitive?
06:32 < pcjc2> strcasestr
06:32 < cnieves> thanks!
06:32 < pcjc2> grr... some horrid person took my laundry out of the dryer last night and put their own in - before mine was finished
06:32 < pcjc2> (Either that, or the dryer isn't working as well as it used to)
06:33 < cnieves> innocence assumption first, unless you have evidences ;)
06:41 < pcjc2> Peter B says strcasestr isn't portable to windows
06:42 < cnieves> :(
06:43 < pcjc2> He recalls a discussion with you, regarding that, and portability to Cygwin
06:43 < pcjc2> (Will be online soon, wireless permitting)
06:46 < cnieves> Can't remeber. I'm looking for a more portable way.
06:48 -!- peterbrett [~peter@xxxxxxxxxxxxxxxxxxxx] has joined #geda
06:48 < peterbrett> 'lo
06:48 < cnieves> hi again
06:50 < pcjc2> Having googled for it, I'm not sure if it is a problem on windows
06:50 < pcjc2> the compare functions are
06:50 < cnieves> found a workaround: use g_ascii_strup in both strings, and continue using strstr afterwards.
06:55 < cnieves> pcjc2: what compare functions did you find?
06:57 < pcjc2> that is less postable
06:57 < pcjc2> windows does something different
06:57 < pcjc2> just google for windows strcasecmp portability
07:00 < cnieves> we are not talking about strcasecmp, but strcasestr
07:00 < peterbrett> Gah, the universe is doing everything to stop my mail from working at the moment :(
07:00 < pcjc2> windows claims to support strcasestr
07:02 < cnieves> strcasestr is not in mingw's string.h:
07:02 < cnieves> http://cygwin.com/cgi-bin/cvsweb.cgi/src/winsup/mingw/include/string.h?rev=1.16&content-type=text/x-cvsweb-markup&cvsroot=src
07:03 < cnieves> but it is in cygwin:
07:03 < cnieves> http://cygwin.com/cgi-bin/cvsweb.cgi/src/winsup/cygwin/include/strings.h?rev=1.2&content-type=text/x-cvsweb-markup&cvsroot=src
07:04 < cnieves> no, it's not in cygwin either. I mispelled it with strcasecmp
07:04 < cnieves> I think it's better to replace strcasestr
07:05 < cnieves> and use g_ascii_strup and strstr
07:15 * peterbrett hates CVS
07:16 < cnieves> peterbrett: I couldn't apply parts #4 and #5 of your patch:
07:17 < cnieves> I didn't change help-manual behaviour: I kept the old function because it is using "gschemdoc -m"
07:18 < cnieves> and your new scheme function is using always "gschemdoc -w"
07:18 < cnieves> I didn't apply #5 because we will lost all cvs history. I'll wait for Ales and see if he can do anything better.
07:19 < cnieves> (#5 is moving gschemdoc from utils/scripts to gschem/scripts)
07:19 < peterbrett> cnieves: There isn't anyway of doing it better that won't cause breakage
07:19 < peterbrett> CVS sucks
07:20 < cnieves> regarding #4: won't be better if "-w" is also a parameter of the gschemdoc scheme function ?
07:20 < peterbrett> Peter C says you can do evil with CVS admin. This is true, but it'll make it impossible to get historical pre-move versions of the tree
07:20 < peterbrett> cnieves: I had a thought about that, and decided no
07:20 < peterbrett> cnieves: Because they do totally different things
07:21 < peterbrett> cnieves: I like functions to do what you expect them to
07:21 < peterbrett> In fact, gschemdoc should be changed to use -d for finding component documentation
07:22 < peterbrett> Just incase someone sets the documentation attribute of a symbol to -m or -w
07:23 < cnieves> Another possibility is the toplevel manual being also a wiki page. Do you know how is it created?
07:23 < peterbrett> No
07:25 < cnieves> I'll wait for Ales and check this.
07:25 < peterbrett> Good idea
07:30 < cnieves> pcjc2: I recall you updated the refdes renum tests to remove the colos in filenames. Did you?
07:30 < cnieves> (I can't confirm it in ChangeLog)
07:30 < cnieves> s/colos/colons
07:30 < pcjc2> Was Dan
07:30 < pcjc2> Oh.. that last bug you closed... case insensitivity
07:31 < cnieves> ah, ok. There is a bug report about this.
07:31 < pcjc2> I recognise the name of the reporter.. an acquaintance from caving at Cambridge!
07:32 < peterbrett> brb folks, we're off for lunch
07:32 < cnieves> see you!
07:33 < cnieves> pcjc2: the world is small! :)
07:38 < peterbrett> right, pcjc2 is assembling food
07:38 < peterbrett> So I've come back to talk
07:39 < cnieves> :)
07:39 < peterbrett> cnieves: If we were switching to a different VCS, is there any particular ones you like/don't like?
07:41 < cnieves> don't have any preference
07:42 < cnieves> My wish list is: easy to use, powerful (specially when moving/renaming), and don't need net access to manage small commits locally, being able to commit a set of them later.
07:42 < peterbrett> So, not CVS then ;)
07:42 < cnieves> right! :)
07:56 < cnieves> pcjc2: could you update bug #1700444? (I think your last commit fixes it)
07:57 < pcjc2> I filed that after the patch
07:57 < pcjc2> it doesn't fix it
07:58 < cnieves> ok
07:58 < peterbrett> cnieves: I carefully wrote my commit message in "nice" format
07:58 < peterbrett> And you screwed it up :(
07:58 < peterbrett> http://repo.or.cz/w/geda-gaf.git?a=commit;h=f693b0a793e92c7208d3cfe655f641c6994018bf
08:01 < cnieves> Sorry. I tried to keep it "nice"... how would you prefer it? (I know it's too late for this one, but not for the next ones)
08:01 < peterbrett> One (short) line summary, one line gap, detailed explanation
08:02 < peterbrett> It means when you have a view like http://repo.or.cz/w/geda-gaf.git?a=shortlog;h=f693b0a793e92c7208d3cfe655f641c6994018bf it's easy to see what's going on
08:03 < peterbrett> So stuff like the patch submitter's name, the files affected etc should go in the detailed explanation (which should be as long as necessary)
08:04 < cnieves> ok. I'll try to make the description shorter next time (and put the one line gap afterwards, I didn't know this was needed)
08:04 < peterbrett> It's not needed, but it helps (I think of it as the "title" of the patch)
08:04 < pcjc2> I'll look into fixing #170044
08:04 < peterbrett> And I write it as if I was writing the Subject: field of an e-mail
08:05 < cnieves> ok
08:05 < cnieves> (I'm new to the git stuff, so be kind ;) )
08:05 < peterbrett> Sorry
08:06 < peterbrett> Actually, one of my biggest grievances at the moment is ChangeLog files
08:06 < pcjc2> I still fail to write most of my commit messages in that format - its not just you
08:06 < peterbrett> Which I like to whinge about to anyone who I can persuade to listen ;)
08:07 < cnieves> there should be some specification like: first line should be no longer than ... characters (and the commit program checking that, of course)...
08:08 < peterbrett> yes, there should
08:09 < peterbrett> But actually, if we did switch to git, there wouldn't **be** a commit program
08:09 < peterbrett> Because you'd commit locally, and then other people would "pull" your changes from you
08:09 < cnieves> * cnieves still learning git
08:10 < cnieves> if you have some spare time, you can try new attribute autoplacement code (still disable by default)
08:12 < cnieves> (look for "Autoplace component/net/buses text attributes hook" in system-gschemrc)
08:13 < pcjc2> will do in a bit - just drilling into #170044
08:13 < pcjc2> (Digs down and hits a can of worms)
08:13 < cnieves> take care they don't bite you! ;)
08:13 < pcjc2> in m_basic.c, the function "visible" "
08:13 < pcjc2> * This function checks if a given bounding box is visible on the screen."
08:14 < pcjc2> it doesn't specify what the guaranteed, or expected semantics of the function are. It tries lots of permutations of clipping
08:15 < peterbrett> cnieves: Sorry for not helping, I'm busy writing http://www.geda.seul.org/wiki/geda:version_control_migration
08:15 < cnieves> don't know about that one, sorry. I'm going off for lunch.
08:15 < peterbrett> Okay, see you later
08:16 < cnieves> see you!
08:40 < peterbrett> pcjc2: http://www.kroah.com/log/linux/free_drivers.html
09:02 < mcmahill> peter: you can complain to me since I didn't update the utils changelog yesterday when I touched about 25 files
09:05 < mcmahill> anyone know of a way to automatically generate the ChangeLog entry prior to the commit so it can be checked in at the same time?
09:05 < mcmahill> I'm not a fan of manually creating the entries because of the opportunity for error.
09:05 < peterbrett> Yeah, it's difficult
09:06 < peterbrett> I'm busy writing some proposals to change the way we do version control & change logging
09:06 < peterbrett> http://www.geda.seul.org/wiki/geda:version_control_migration
09:06 -!- sdb [~sdb@xxxxxxxxxx] has joined #geda
09:06 < peterbrett> hi sdb
09:06 < sdb> Hi guys
09:06 < peterbrett> looks like we're getting going
09:06 < peterbrett> What's the situation in sunny MA?
09:06 < sdb> DJ and I are at MIT.
09:07 -!- ivan [~ivan@xxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
09:07 < peterbrett> pcjc2 & I are at his place
09:07 < sdb> It's sunny today ... the first time in many months
09:07 < peterbrett> ivan: hi there
09:07 < peterbrett> It's lovely and warm here
09:07 < ivan> hi
09:07 < sdb> Hi Peter! Hi Peter! How's the other Cambridge?
09:07 < sdb> Hi Ivan
09:07 < ivan> hi sdb
09:07 < pcjc2> Sunny out, looks like a lovely day
09:07 < peterbrett> Is Ales going to be joining us?
09:08 < peterbrett> sdb: http://www.geda.seul.org/wiki/geda:version_control_migration
09:09 < mcmahill> hi stuart, ivan
09:09 < ivan> hi Dan
09:09 < mcmahill> I'm only partially here today
09:09 < pcjc2> Fixed #170044, was a > < vs < > type thing
09:10 < pcjc2> Looks like it was in prior to the noscreen
09:10 < pcjc2> "top" is the smallest y coordinate numerically, and is infact the bottom of the screen in world coords. That fact has caused me no end of hastle.
09:11 < ivan> is there any plan on moving to a new source code control system?
09:12 < peterbrett> ivan: Yes, I'm trying to put together a good argument for moving to git
09:12 < peterbrett> http://repo.or.cz/w/geda-gaf.git
09:12 < ivan> yes, I saw that
09:12 < peterbrett> This is based on an export from CVS, but it has its problems
09:12 < peterbrett> e.g. the CVS exporter randomly dropped a commit last night
09:12 < peterbrett> I'm going to try and reinstate it at some point
09:13 < peterbrett> (probably this afternoon)
09:13 < pcjc2> I propose a global rename "left, top, right, bottom" to "xmin, ymin, xmax, ymax"
09:13 < ivan> I hope we'll make the move soon since CVS really can't compete with git or hg
09:14 < peterbrett> quite
09:14 < peterbrett> Do you have any preference as to which?
09:14 < peterbrett> I really like git
09:14 < peterbrett> It's very UNIX-y ;)
09:14 < pcjc2> Ivan: I've not put that patch in the tracker yet, sorry. Will do so asap
09:14 < ivan> well, I used hg extensively
09:15 < ivan> but I have no problem with git either
09:15 < ivan> git or hg, it doesn't really matter, as long as it's not CVS :)
09:15 < peterbrett> :)
09:21 < mcmahill> hmmm. looks like I need to add git to pkgsrc if there is any chance of us moving to it
09:22 -!- dj [~dj@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
09:23 < peterbrett> mcmahill: It should compile pretty painlessly
09:23 < peterbrett> If there is pain, please let me know
09:27 < pcjc2> Ivan: I uploaded the patch, http://sourceforge.net/tracker/index.php?func=detail&aid=1704834&group_id=161080&atid=818428
09:27 < pcjc2> If anyone wants to review this patch before I commit, I'd appreciate it
09:27 < pcjc2> (When Ales arrives, I hope he'll read it)
09:33 < cnieves> hi everybody, and welcome those who arrived recently! :)
09:33 < peterbrett> wb cnieves
09:33 < dj> Beep!
09:33 < ivan> everyone, is there a coding style guide or something like that? what settings do you use for geda coding?
09:34 < peterbrett> I use Emacs' default C coding settings
09:34 < peterbrett> Generally, tabs == bad
09:34 < peterbrett> 2 spaces indentation
09:34 < pcjc2> The project is fairly agnostic towards coding style - but its nice to keep consistent with whatever file you edit
09:34 < ivan> that depends on the source file you're working on :)
09:35 * peterbrett was talking about C
09:35 < ivan> like in x_menus.c, there are 3 space indents
09:35 < pcjc2> I am just looking over the patch I posted... it has lots of white-space fixes
09:35 < peterbrett> ivan: But most importantly, no whitespace changes in patches!
09:35 * peterbrett glares at pcjc2
09:35 < ivan> LOL :)
09:36 < pcjc2> not generally great to combine those with real patches, but the functions didn't indent properly otherwise
09:36 < pcjc2> 3 space indents not good
09:36 < pcjc2> Ales doesn't mind us fixing white-space errors like tabs and indentation
09:37 < ivan> perhaps it should be useful to compile a set of small guidelines and then check all the sources for consistency?
09:37 < dj> the rule should be "what indent does"
09:38 < ivan> but what options would you pass to indent?
09:39 < peterbrett> --gnu :D :D :D
09:40 < ivan> alright, I'll keep that in mind when creating patches ;)
09:40 < peterbrett> It's most important that it is *clear* what is being changed
09:41 < pcjc2> you might find one sourcefile complies
09:41 < pcjc2> /dev/null
09:41 < peterbrett> *Read* your diffs. Try to make sure that you understand what you've done just by looking at the commit message & the diff.
09:42 < dj> Just "indent" - no options. It defaults to --gnu
09:43 < mcmahill> dj: depends on which indent you have
09:43 < pcjc2> PCB uses --gnu
09:43 < dj> Well, the gnu one ;-)
09:43 < Ales> the only coding standard is following the existing code standard
09:43 < pcjc2> but many of the gEDA people dislike its {} handling (speaking for me, and I think Ales)
09:43 < peterbrett> Ales!!!!
09:43 < dj> Which one?
09:44 < peterbrett> Ales: That's the MicroSoft argument. "But the source code **is** the documentation!"
09:44 < Ales> or do whatever emacs does
09:44 < mcmahill> I' m not a fan of gnu { }. I want the { to be on the same line as the if() but I can deal
09:44 < Ales> or I might just mandate use the gnu standard.
09:44 < Ales> either way, it's a religious discussion
09:45 < peterbrett> Ales: I think that what we've got at the moment works, so let's just potter along merrily
09:45 < pcjc2> Ales: My page_creation_cleanup.diff patch (now actually in the tracker) fixes bugs when creating pages
09:45 < Ales> I'm not sold on using git, unless somebody can quantify the bandwidth requirements
09:46 < Ales> I saw, lots of changes.. are those all code changes or just whitespace changes?
09:46 < pcjc2> but having re-read it, its not a particularly nice patch - it fixes lots of white-space bugs around the functions it touches
09:46 < pcjc2> stuff wasn't indented properly at all in many of those files
09:46 < Ales> okay, that's okay to fix
09:46 < pcjc2> The biggest chunk was majorly unreadable
09:46 < Ales> which chunk was that?
09:47 < pcjc2> in DEFINE_I_CALLBACK(hierarchy_down_schematic)
09:47 < pcjc2> a very long function started with:
09:47 < pcjc2> );
09:47 < pcjc2> - if (object != NULL) {
09:47 < pcjc2> - /* only allow going into symbols */
09:47 < pcjc2> - if (object->type == OBJ_COMPLEX) {
09:47 < pcjc2> ·
09:47 < pcjc2> so two levels of indentation for the whole tihng
09:47 < pcjc2> I replaced with:
09:47 < pcjc2> + /* only allow going into symbols */
09:47 < pcjc2> + if (object == NULL || object->type != OBJ_COMPLEX)
09:47 < pcjc2> + return;
09:47 < pcjc2> and dropped some indentation for readability
09:48 < pcjc2> which is at least partly why it looks like that function has a lot of changes
09:48 < Ales> yeah, that looks fine
09:48 < pcjc2> I think I'll review it again with Meld, as the diff is a pain to read in this case
09:49 < peterbrett> Ales, each initial checkout ~17.5 MB
09:49 < Ales> ouch
09:49 < peterbrett> This includes the entire history
09:50 < Ales> git is pretty darn different than cvs
09:50 < Ales> svn is far close to cvs
09:50 < peterbrett> Don't forget that after that the updates are really small
09:50 < Ales> hmmm
09:50 < peterbrett> Especially if you're running git-daemon
09:50 < peterbrett> Plus, you have the bonus of not having the server hammered when someone wants to run blame on a file
09:51 < peterbrett> Or get log history
09:51 < Ales> true
09:51 < peterbrett> Ales: If we use git, we should make nightly tarballs available
09:51 < Ales> that 17.5MB will grow as the history groes
09:51 < Ales> why?
09:51 < peterbrett> Ales: yes
09:51 < Ales> I'm trying to reduce bandwidth, not increase it
09:52 < peterbrett> Ales: Oh yeah, good point
09:52 < peterbrett> Then we shouldn't ;)
09:52 < Ales> but why should we do tarballs? what's the advantage?
09:52 < peterbrett> I was thinking that people who don't want to do development could use them
09:53 < peterbrett> But then I realized that was a stupid suggestions
09:53 < peterbrett> s/s$//
09:53 < mcmahill> argh!
09:53 < peterbrett> ?
09:54 < mcmahill> stupid git build system !#*$*&#
09:54 < peterbrett> what's it done?
09:54 < Ales> you are building git?
09:54 < mcmahill> peter: hard codes CC=gcc, and I suspect it is downhill from there...
09:54 < mcmahill> Ales: tried, failed.
09:54 < peterbrett> Um, do CC=cc make
09:54 < Ales> hmmm.
09:54 < mcmahill> I'll see if it can be fixed
09:56 < mcmahill> it redefines wcwidth
09:57 < peterbrett> Is that a problem?
09:57 < Ales> how much effort did the git developers put into getting it to run everywhere?
09:58 < mcmahill> it causes a compile error
09:58 < mcmahill> Please look at the
09:58 < mcmahill> top of the Makefile to see what can be adjusted for your needs.
09:58 < Ales> why aren't they using autotools?
09:58 < peterbrett> They don't like autotools
09:58 < peterbrett> mcmahill: What system are you trying compile it on?
09:59 < Ales> I bet it's either netbsd or solaris
09:59 < Ales> more likely solaris :)
09:59 < mcmahill> yes, netbsd
09:59 < Ales> ah darn
09:59 < mcmahill> no, my solaris box is busy building firefox2...
10:00 < mcmahill> anyway, I gotta run out for a bit. I'll beat on git a bit later
10:00 < Ales> dan: let me know what you think of it
10:00 < peterbrett> mcmahill: http://www.gelato.unsw.edu.au/archives/git/0511/12077.html
10:00 < peterbrett> Ales: mercurial is also an option
10:00 < mcmahill> there is a prototype for wcwidth in /usr/include/wchar.h that conflicts with the one that git has
10:01 < Ales> what about w32, does git run there?
10:01 < ivan> mercurial does
10:01 < peterbrett> http://en.wikipedia.org/wiki/Git_(software)#Portability
10:02 < ivan> as for git on w32, I wouldn't want to try that
10:02 < peterbrett> It runs in Cygwin (I had an interesting e-mail conversation with Linus about getting that to work, since Windows is missing fork() )
10:03 < peterbrett> http://marc.info/?l=git&m=114131099531633
10:08 < cnieves> Ales: in gschem, when you hit help->manual, a page is open in a browser. How is this page created? release time? could it be a wiki page (or at least inside the wiki directory)?
10:09 < Ales> gschemdoc is called and that launches the web browser
10:09 < cnieves> I know. I mean the page itself.
10:10 < Ales> which page?
10:10 < Ales> the url?
10:10 < cnieves> ~/geda/share/doc/geda-doc/gedadocs.html
10:12 < Ales> that path is baked into gschemdoc at configure time
10:12 < Ales> based on the prefix
10:13 < cnieves> I was applying PeterB's patches (help menus,..). I keep the help->manual behaviour as it was before (because you mention you'd prefer to wait until the UG is improved, and gsch2pcb tutorial is on the wiki). PeterB added a scheme function to call gschemdoc -w (to open a wiki page), and then removed the old help-manual function.
10:13 < peterbrett> mcmahill: http://www.gelato.unsw.edu.au/archives/git/0511/12077.html
10:14 < Ales> yes, I would like to maintain the old behavior until all the docs are in the wiki
10:14 < cnieves> We can get rid of that function if we add another help-manual scheme function, or put gedadocs.html inside the wiki
10:14 < cnieves> (inside the wiki directory, I mean), so it can be opened with gschem -w
10:14 < peterbrett> mcmahill: ftp://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/devel/scmgit/README.html
10:15 < cnieves> Ales: I didn't apply PeterB's #5 (move gschemdoc inside gschem/scripts) because we will lost cvs history. Can you do something regarding that?
10:15 < peterbrett> cnieves: Move to a VCS that supports renames :P
10:16 < Ales> what do you mean you lost cvs history?
10:16 < dj> dan: arbitrary rotations. There are two patches; one that does too little and one that does too much.
10:16 < Ales> yes like subversion. :)
10:16 < peterbrett> Ales: Subversion is just CVS with changesets
10:16 < dj> And dirt-cheap branches.
10:16 < dj> And checkout-branch-by-timestamp
10:17 < Ales> and runs everywhere
10:17 < dj> and versionable renames
10:17 < peterbrett> dj: And doesn't track merges
10:17 < dj> ah, but merges are atomic
10:17 < cnieves> Ales: That patch moved gschemdoc.sh from utils/scripts to gschem/scripts. if I remove utils/scripts/gschemdoc.sh, and then add gschem/scripts/gschemdoc.sh, we will lost gschemdoc.sh's history
10:17 < peterbrett> dj: it doesn't track merges
10:17 < dj> Ah, but merges are atomic
10:17 < peterbrett> dj: That has nothing to do with it!
10:18 < Ales> carlos: I think that's okay
10:18 < Ales> the history of the old gschemdoc.sh is still in cvs
10:18 < dj> Well, you repeated yourself without adding more facts, so I repeated my response. If you want a better response, you have to ask a better question.
10:18 < peterbrett> "Merge tracking describes whether a system remembers what changes have been merged between which branches and only merges the changes that are missing when merging one branch into another."
10:18 < dj> Ah, you want sablime.
10:18 < cnieves> Ales: ok. what about gedadocs.html?
10:19 < peterbrett> Also, SVN doesn't support me having 5 different branches which I'm currently working on but don't want to export to everyone
10:19 < Ales> 5 checkouts?
10:19 < dj> sure it does.
10:20 < peterbrett> Ales: No, 5 branches. In the same repository, which I can switch between. Without needing network connectivity.
10:20 < dj> You need the local svn cache package
10:20 < dj> Then you can build up a patch set and merge it back to the main repository later.
10:20 < Ales> carlos: what about gedadocs.html? I want to keep using it.
10:20 < peterbrett> dj: Does it do patch reordering?
10:20 < dj> (we really should read the gcc discussions on all this before proceeding, this is all old news to me)
10:20 < pcjc2> Carlos: Your latest fix was in my patch
10:21 < pcjc2> also, it doesn't _gaurantee_ there aren't other ways of closing that dialog
10:21 < dj> I don't know the details, I just know there's a local repository option.
10:21 < cnieves> ales: what about moving gedadocs.html inside the wiki directory?
10:22 < Ales> Carlos: i'd rather not do that, since I want to get rid of it at some point
10:22 < Ales> I don't want to reogranize the wiki
10:22 < pcjc2> the fix should be: + if (response != GTK_RESPONSE_YES )
10:22 < pcjc2> + return;
10:22 < pcjc2> it is two lines, and says explicitly what we want
10:22 < cnieves> pcjc2: go and change it
10:23 < cnieves> ales: you don't need to reorganize, just move a file from one directory to another. Am I missing something?
10:24 < pcjc2> Carlos: I don't want to start a patch war over it, but if you're happy, I will change it
10:24 < peterbrett> dj: http://wiki.freebsd.org/GitConversion
10:24 < dj> Is this a code sprint or a repository reorganization sprint?
10:24 < cnieves> pcjc2: yup
10:24 < peterbrett> dj: Yes.
10:24 < pcjc2> I can't remember for sure, but I believe there are many ways of quitting out of the dialog, and it is a pain to have to catch all the -ve cases specifically - safer just to catch the +ve response in this case
10:27 < pcjc2> (Just refreshing my checkout - was working on the original patch)
10:27 < pcjc2> I agree that its a good idea to fix that in a separate changelog item though, as it is a separate fix
10:27 < cnieves> ok
10:27 < Ales> where do we stand on the locale.h fix?
10:28 < pcjc2> I think the cause is understood
10:28 < pcjc2> but I've not written the autoconf magic to fix it
10:28 < Ales> okay, I like the autoconf magic to fix it. :)
10:28 < pcjc2> we can't rely on gettext defining the HAVE_LOCALE_H macro for us, we need to test ourselves.
10:29 < pcjc2> If we don't have it, the choice is, build with --disable-nls
10:29 < dj> dan: step 1, allow non-90 pre-existing pads.
10:29 < Ales> sounds good
10:29 < pcjc2> I think the most obvious fix, is to test, hard fail if not compiled with --disable-nls, but suggest that it is an option
10:30 < Ales> ok
10:37 -!- rikster [~rik@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
10:49 < pcjc2> Carlos: changed it in CVS, thanks - sorry to nit-pick
10:50 < cnieves> pcjc2: no problem
10:50 -!- sdb [~sdb@xxxxxxxxxx] has quit [Ping timeout: 633 seconds]
10:53 -!- sdb [~sdb@xxxxxxxxxx] has joined #geda
10:53 < sdb> Here I am
10:53 < sdb> the Ethernet cable popped out since I broke the tab on the connector
10:54 < cnieves> hi Stuart, welcome back
10:56 < sdb> Hi!
10:56 < pcjc2> I'm going to look into the locale.h automagic
10:58 < Ales> I'm fixing the gnetlist tests to work with distcheck
10:58 < pcjc2> dan: in gattrib and gschem, there is a file under include "gettext.h"
10:59 < pcjc2> "/* Convenience header for conditional use of GNU <libintl.h>."
10:59 < pcjc2> Did this feature in your compile warnings for gattrib?
10:59 < pcjc2> lots of sub specific stuff
11:00 < peterbrett> Ales: I don't think that should be in gEDA... :-/
11:00 < Ales> the Makefile.am in utils/tests/refdes_renum/outputs needed to be updated to get rid of the colon too
11:00 < Ales> I'll do that
11:00 < pcjc2> s\sub\sun\
11:00 < Ales> peterb: huh?
11:00 < pcjc2> scrolling back, I see dan isn't about
11:01 < peterbrett> Ales: {gschem,gattrib}/include/gettext.h
11:01 < pcjc2> was looking to see what "gettext.h" in gschem/include/" was for
11:01 < Ales> okay, is there a better approach?
11:02 < pcjc2> I hadn't worked out what it was for yet, just wanted to see if it had featured in dan's investigation of re-defined function warnings
11:02 < Ales> if so, I'm okay with removing the file and reusing a system include, but it has to work with and without gettext
11:02 < peterbrett> According to the info pages for gettext, we should just #include <libintl.h>
11:03 < Ales> ok
11:03 < sdb> I just looked into gattrib/include, and yes, there is a gettext.h in there.
11:03 < sdb> Ummmm I don't know what it is for. Maybe Dan put it in.
11:04 < sdb> The question is: Are you worried that it interferes with the system gettext stuff?
11:04 < peterbrett> Apparently it's to make it easy to disable gettext if desired
11:04 -!- dj [~dj@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has quit [Quit: Leaving]
11:04 < peterbrett> Ooh, dj has disappeared
11:04 < Ales> dj is rebooting into windows
11:04 < sdb> DJ left since he's booting two windows *shudder*
11:04 < sdb> I had to avert my eyes
11:04 < peterbrett> dj: I hope you've put him into quarantine ;)
11:04 < Igor2> :>
11:04 < sdb> dj needs to check something on anther gerber viewer!!
11:05 < peterbrett> Which one?
11:05 < sdb> (That was DJ on my machine)
11:05 < sdb> He wants to use GVPrevue
11:05 < sdb> He wants to use GCPrevue
11:05 < peterbrett> Sure
11:05 < pcjc2> http://www.gnu.org/software/gettext/manual/html_node/lib_002fgettext_002eh.html
11:05 < peterbrett> It's pretty good
11:05 < pcjc2> Looks like it is the recommended way of including gettext - its worth checking that its correct and up-to-date though
11:13 < cnieves> sdb: I'm setting the alternative button order for gtk dialogs. Would you mind if I add two of them in gattrib/src/x_fileselect.c ?
11:14 < pcjc2> Is gattrib/src/x_fileselect.c up-to-date with gschem's
11:14 < pcjc2> There was divergence at one point, but I can't remember if it was fixed
11:15 < cnieves> what needed to be fixed?
11:17 -!- dj [~dj@xxxxxxxxxx] has joined #geda
11:17 < peterbrett> dj: wb
11:17 < sdb> cnieves: Please go ahead!
11:17 < pcjc2> I'm not sure anything. It moved to using the new GTK dialogs, didn't it
11:17 < dj> gerbv is broken, had to check gcpreview to make sure.
11:18 < peterbrett> sdb: Is there any chance you could fix gattrib not to 'Just Close' when you hit the close window decoration?
11:21 < pcjc2> bit of history.... what is geda/graphman/* ?
11:21 < pcjc2> (he looks, wondering which packages need the locale.h fix)
11:22 < Ales> graphman was some sort of interface to one of the waveform views
11:22 < Ales> geda/* does not need any fix.
11:22 < pcjc2> ok
11:22 < Ales> I will be removing it and setup out of gaf
11:22 < pcjc2> sounds good
11:28 * peterbrett files two bug reports against gattrib
11:29 < sdb> Peter -- That's fine. You want it to just ask first, right?
11:29 < peterbrett> Yep
11:30 < peterbrett> But only if the spreadsheet has changed
11:30 < sdb> Yea, that the behavior if you select "file -> quit" from the menu.
11:31 < pcjc2> I'm not seeing where the --disable-nls logic comes from here.. but I need the test for locale.h to use it
11:34 < peterbrett> sdb: surely it should be handled by the same code?
11:43 < pcjc2> Ales: RE. Locale.h, something appears to have changed on my box.. I can't reproduce the original bug
11:44 < pcjc2> Its compiling fine, inspite of no locale.h being included by us explicitly
11:44 < Ales> peter: oops. :(
11:44 < Ales> we should still do the fix though
11:44 < pcjc2> some other header is probably pulling it in
11:44 < sdb> Peter, I may be allowing GTK to handle the callback from the window decoration.
11:44 < sdb> I need to look.
11:44 < pcjc2> sure - its just harder to ensure it is really fixed.. working on it though
11:46 < rikster> Guidance needed: slotted components and refdes_renum
11:46 < rikster> There is an outstanding ToDo in the gEDA wiki to have any of the various
11:46 < rikster> refdes tools handle slotted components.
11:46 < rikster> As part of the last code sprint I wrote an improved refdes tool and uploaded it to SourceForge. My question today is whether I should modify that script to also handle slotted components.
11:46 < rikster> The issue is that all of the current tools are line-oriented and just use regular expressions to update the refdes field. In order to handle slotted components the program will have to have an understanding of instantiation structure, be able to parse the symbol search tree, and be able to add slot= attributes to the schematic. Is this a sufficiently cool feature that I should spend several hours on it or should I look for quicker bugs?
11:49 < peterbrett> rikster: Don't forget there is no way it could currently work properly with hierarchical schematics
11:50 < Igor2> !define geda-cvs
11:50 < jmp> >Igor2> [1/1] geda-cvs: http://www.geda.seul.org/developer.html
11:50 < Igor2> time to compile
11:50 < peterbrett> Igor2: :)
11:50 < peterbrett> Igor2: See you next week :P
11:50 < Igor2> off for the weekend? :)
11:50 < Igor2> ahh, ok, i got it now :)
11:51 < Igor2> no, i have an 1.7 ghz server at the department
11:51 < Igor2> i'll compile for i386 and i586 there :>
11:51 < rikster> Is that the general case, that none of the refdes tools work with hierarchical schematics?
11:52 < peterbrett> It's because we've got no way currently of overriding attributes set in schematics lower in the hierarchy on an instance-by-instance basis
11:52 < cnieves> I added a gtk call to set the alternative button order for other systems. Gschem and gattrib should look now like any other gtk app, changing the button order depending on the operating system the user is running. I also updated http://geda.seul.org/wiki/geda:devel-tips to show how to do this, and updated the dialog template.
11:53 < peterbrett> All hail Carlos!
11:53 < Igor2> omg, a full wiki mirror
11:53 < Igor2> i see that 40 gb disk will be full soon :>
11:53 < peterbrett> Igor2: Indeed. It's been in there for a while :/
11:53 < cnieves> So, if anyone adds a new dialog, _please_ add that line after creating the dialog
11:53 < peterbrett> o-\-<
11:54 < peterbrett> o-/-<
11:54 < Igor2> :>
11:54 < peterbrett> o-\-<
11:54 < Igor2> o-&-< - after a bike accident :)
11:55 < cnieves> Reminder: attribute autoplacing stuff is now in cvs. If you want to play with them, check system-gschemrc.
11:56 < cnieves> Ales: can we get rid of libgd and make libgeda compile with gdk-pixbuf by default?
11:56 -!- dj [~dj@xxxxxxxxxx] has quit [Ping timeout: 633 seconds]
11:56 < pcjc2> Ales: locale.h
11:56 < pcjc2> you would not believe it
11:56 < pcjc2> I've got HAVE_LOCALE_H explicitly undefined
11:56 < pcjc2> yet gschem still manages to compile ok
11:56 < pcjc2> turns out...
11:57 < pcjc2> that if you pass "-g" to gcc, then somehow, don't ask me why or how, locale.h gets pulled in
11:57 < pcjc2> without us asking for it
11:57 < Igor2> mkdir: cannot create directory `/gEDA': Permission denied
11:57 < Igor2> strange
11:57 < Igor2> i've set prefix to /usr in the main Makefile
11:58 < rikster> So none of the refdes tools will work with hierarchical designs. Is the fraction of designs that use don't use hierarchy in this way large?
11:58 < rikster> If most designs don't use hierarchy then perhaps the feature is still worthwhile
11:58 < peterbrett> I like hierarchy :(
11:59 < peterbrett> Although you make a good point
11:59 < peterbrett> I htink the biggest problem is that you **can't** support hierarchical annotation/back-annotation without breaking backward-compatibility
12:00 < rikster> Wasn't a Google Summer of Code person going to add support for hierarchical annotation?
12:01 < pcjc2> sure, although it was only a suggestion
12:01 * Igor2 kills the ones who invented autotools
12:01 < pcjc2> There are some works in progress on design ideas, and such which pave the way
12:02 < peterbrett> rikster: There's an ongoing Cunning Plan, as pcjc2 says ;)
12:03 < rikster> I think it sounds best to hold off implementing anything until an approach to hierarchy is adopted. Bonus: I get to procrastinate on coding :)
12:03 < peterbrett> Does anyone mind me putting emacs mode magic into system-gschemrc?
12:04 -!- dj [~dj@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
12:08 < pcjc2> rikster: don't hold off any development waiting for things which might never happen
12:08 < Igor2> hi dj!
12:08 < dj> network seems flakey today. Stuart got timed out, then me.
12:09 < pcjc2> Whilst there may be some ideas floating about, I _definitely_ don't want to suggest holding off features
12:10 < pcjc2> What language is your refdes renumbering tool in?
12:10 < rikster> perl
12:11 < pcjc2> ah - so my next suggestion.... that it should be done by pulling in libgeda isn't fantastic then ;)
12:11 < pcjc2> libgeda knows how to read the files necessary, so you can ask it to delve into the right file and pull out the needed slot attributes
12:12 < pcjc2> but there is little point writing a libgeda binding for perl, just to do so
12:13 < Igor2> (write binding for GPMI and then it will have for perl, python, guile, tcl, ruby, lua, php, bash, pascal, lisp...)
12:13 < rikster> What kind of bindings already exist?
12:13 < rikster> just C?
12:13 < pcjc2> libgeda needs cleaning before we write bindings to it, but in principle yes
12:13 < pcjc2> just C (which isn't a binding of course)
12:13 < pcjc2> internally, it can use scheme, so there is some guile stuff inside it
12:14 < pcjc2> What information do you need from a schematic..? For each component, you have to delve into its symbol, and look for slot attributes?
12:14 < rikster> That's right.
12:16 < pcjc2> I wounder if some command line util which links against libgeda, takes a filename, and returns some text (for the toplevel attributes) would be useful for scripting with
12:16 < pcjc2> something like geda-symbol-attribs my_multi_slot_opamp.sym
12:17 < Ales> Carlos: go ahead and remove libgd dependancy and checking
12:17 < pcjc2> which could print all the attributes out line by line, on a "NAME = VALUE" basis, for further script based processing
12:17 < pcjc2> woo
12:17 < Igor2> great, i get tons of unresolved symbols when compiling cvs version of gschem :)
12:17 < cnieves> rikster: I made "save" the default response of the save page dialog. You should be able to just type the filename and hit enter. (Implementing your FR). Please test
12:17 < pcjc2> (woo: relating to loss of libgd - thats a lot of code to remove)
12:18 < cnieves> Ales: ok.
12:18 < pcjc2> Igor: What symbols?
12:18 < Igor2> geda/gaf/gschem/src/g_register.c:330: undefined reference to `scm_c_define_gsubr'
12:18 < Igor2> mostly scm_c_define*
12:18 < rikster> Thanks, cnieves. I've got to get some breakfast soon(West coast) but I'll try to test that out today.
12:18 < peterbrett> Ales: I can't work out how to bind Page Up & Page Down keys
12:18 < cnieves> pcjc2: not at all: the first stage is to make libgd not the default. Removing libgd code can be done in the next release if there is no problem reported.
12:19 < Igor2> or rather scm*
12:19 < pcjc2> ah, but laters there can be much code shortening
12:19 < Ales> carlos: that's a good plan
12:19 < Igor2> /usr/lib/libgeda.so: undefined reference to `scm_puts'
12:19 < cnieves> igor: do you have libguile-dev installed?
12:19 < rikster> At least for Perl, it is possible to write inline calls to C pretty easily. Perhaps I can link against libgeda and just use C routines.
12:19 < Igor2> yup
12:19 < Igor2> libguile1.8-dev
12:20 < peterbrett> Ales: I've tried both "PageUp" & "PgUp" and neither seem to work
12:20 < pcjc2> just be warned... libgeda is a moving target, so if your inline calls to C require compilation, it needs to keep in sync with the CVS releases
12:20 < peterbrett> Ah
12:21 < peterbrett> It's "Prior" & "Next"
12:21 < peterbrett> But that's not totally intuitive
12:21 < pcjc2> or does it use dlopen etc..?
12:21 < Igor2> so, any idea? :)
12:22 < peterbrett> GAH
12:22 < Igor2> these are the -ls:
12:22 < Igor2> -lgeda -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXfixes -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -lX11 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXfixes -lpango-1.0 -lcairo -lX11 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -lSM -lICE -lX11
12:22 < Igor2> isn't -lguile something missing?
12:22 < Ales> Peter: Page_Up and Page_Down
12:22 < peterbrett> Ales: Thanks
12:23 < peterbrett> Ales: (where did you find that, BTW?)
12:23 < pcjc2> Igor: hmm... looks like
12:23 < pcjc2> perhaps its not picking up the link flags from libgeda
12:23 < pcjc2> did you make install ok from libgeda?
12:23 < Ales> enabled this in (g_key.c):
12:23 < Ales> #if DEBUG
12:23 < Ales> printf("_%s_\n", guile_string);
12:23 < Ales> #endif
12:23 < Ales> and observed the keyname
12:23 < Igor2> i did make install from the main dir as README suggested :>
12:23 < Ales> cheated. :)
12:24 < peterbrett> Ales: Clearly :)
12:24 < Igor2> ok, installed libgeda by hand, no visible error message
12:25 < rikster> Just checked Perl docs some more and I only need to link against libgeda and presumably that interface isn't changing as fast as the CVS releases
12:25 < pcjc2> Igor: did it help gschem?
12:25 < Igor2> just trying, now everything gets recompiled there
12:25 < Igor2> with -O2
12:25 < Igor2> takes time even on 1.7 ghz :)
12:26 < pcjc2> no, but for each release, structures in libgeda can change
12:26 < Igor2> same errors
12:26 < pcjc2> rikster: so if you rely on finding some element of, say the "ATTRIB" or "OBJECT" structure at byte-offset 4, for example, that could change from release to release
12:27 < pcjc2> Igor: I'll look to see where I get guile included frmo
12:27 < pcjc2> from
12:27 < Igor2> guile-config
12:27 < Igor2> it returns
12:27 < Igor2> -lguile -lltdl -lgmp -lcrypt -lm -lltdl
12:27 < Igor2> but adding those doesn't help
12:28 < rikster> Perhaps I need to take a look at libgeda more closely. Are there getter methods that effectively implement data encapsulation so I don't need to know the byte offsets of structures?
12:28 < pcjc2> I have guile 1.6.8, so I can't verify its not a break in compatibility with guile-1.8
12:28 < Igor2> ok... downgrading :)
12:31 < Igor2> ok, less error
12:32 < Igor2> now issuing make clean, configure and make again
12:33 < pcjc2> odd...
12:33 < Igor2> is it enough if i do it in gschem?
12:33 < Igor2> or is libgeda affected as well?
12:33 < pcjc2> that scm_c_define_gsubr function is in both the 1.6 and 1.8 manuals for guile
12:33 < pcjc2> I'm not sure, to be honest
12:33 < Igor2> maybe you need more #include for 1.8?
12:34 < Igor2> maybe they are marcos in 1.8 and if you don't #include, they remain unresovled
12:34 < Igor2> yeah, i need to recompile libgeda as well
12:35 < Igor2> o_line_basic.c: In function 'o_line_image_write':
12:35 < Igor2> o_line_basic.c:1239: warning: unused variable 'y'
12:35 < Igor2> o_line_basic.c:1239: warning: unused variable 'x'
12:35 < Igor2> :)
12:36 < rikster> cnieves: Just tested the patch for hitting return in a save dialog box. It works fine, BUT
12:36 < Igor2> >pcjc2> are patches fixing those kind of warnings welcome?
12:37 < rikster> I'm now getting this warning message on the command line repeated three times:Gtk-CRITICAL **: gtk_box_reorder_child: assertion `GTK_IS_WIDGET (child)' failed
12:37 < peterbrett> Igor2: Um, yes, they're welcome, but I haven't seen any of those and I've been compiling it lots recently 8-)
12:37 < peterbrett> or even :-O
12:38 < pcjc2> I'm attempting to reproruce
12:38 < Igor2> ok, make clean once again in gschem
12:38 < Igor2> meanwhile packing, need to go home soon :)
12:38 < pcjc2> its probably a libgd dependant thing
12:38 < Igor2> maybe i have too new version of libgd as well? :>
12:39 < cnieves> rikster: I'm not sure it is related with the fix....
12:39 < peterbrett> cnieves: your hacks to gschemdoc.sh have broken 05-move-gschemdoc.patch
12:39 < pcjc2> if you don't have libgd, it uses a different mechanism to write the PNG file
12:39 < peterbrett> cnieves: So if we decide to apply at a later date it'll need to be recreated
12:39 < cnieves> peterbrett: only the gschemdoc.sh file.
12:40 < Igor2> ok, i have tons of scm shit again
12:40 < Igor2> so i go home ;)
12:40 < pcjc2> I'd not worry about fixing the undefined variables
12:40 < pcjc2> its a
12:40 < pcjc2> '
12:40 < cnieves> peterbrett: gschemdoc can be moved now. It is still missing #4.
12:40 < Igor2> anyway yeah, i don't have libgd :)
12:41 < Igor2> now i'm off, bbl
12:41 < pcjc2> bah! layer 8 keyboard error! - If libgd support is being phased out, the code will go anyway - no need to patch it in the mean time
12:41 < peterbrett> cnieves: yes, I know, I'm just rebasing them locally :)
12:41 < pcjc2> Igor: bye!
12:41 < cnieves> bye Igor
12:43 < rikster> m cnieves if the new gtk warnings are unrelated then go ahead and mark my feature request resolved. Thanks for the quick turn.
12:45 < rikster> m rikster hello
12:45 < cnieves> rikster: I would like to know what are those warnings about...
12:46 < cnieves> what gtk are you using?
12:48 < peterbrett> Is it allowed to have multiple keys bound to a single function in gschem?
12:48 < Ales> I think so
12:48 < rikster> m cnieves gtk+-2.10.9
12:49 < Ales> yes, absolutely
12:50 < peterbrett> And which one sets the key shown in the menus?
12:50 < peterbrett> The first one set, or the most recent one?
12:50 < cnieves> rikster: I'm using 2.10.11, and I see no warnings when I hit "file->save as". What are the steps you follow to reproduce it?
12:54 < rikster> m cnieves steps to reproduce: Open existing schematic, make a change, file->save as, warning is produced when dialog box is opened
12:54 * rikster is away: time for breakfast. Back in 30.
12:55 < Ales> peter: last one
12:55 < cnieves> rikster: in gschem/src/x_fileselect.c: around line 240 (function x_fileselect_save), comment out the lines between #if GTK_CHECK_VERSION(2,6,0) and its #endif. Recompile, and check again, please.
13:04 < pcjc2> Ales: locale.h issue: Index: configure.ac.in
13:04 < pcjc2> ===================================================================
13:04 < pcjc2> RCS file: /home/cvspsrv/cvsroot/eda/geda/gaf/gschem/configure.ac.in,v
13:04 < pcjc2> retrieving revision 1.7
13:04 < pcjc2> diff -U3 -p -r1.7 configure.ac.in
13:04 < pcjc2> --- configure.ac.in 17 Apr 2007 20:19:14 -0000 1.7
13:04 < pcjc2> +++ configure.ac.in 21 Apr 2007 16:56:37 -0000
13:04 < pcjc2> @@ -392,6 +392,18 @@ AC_HEADER_DIRENT
13:04 < pcjc2> AC_CHECK_HEADERS(unistd.h string.h stdlib.h \
13:04 < pcjc2> stdarg.h assert.h fcntl.h errno.h sys/param.h)
13:04 < pcjc2>
13:04 < pcjc2> +# Check for locale.h
13:04 < pcjc2> +
13:04 < pcjc2> +# Set USE_NLS
13:04 < pcjc2> +AM_NLS
13:04 < pcjc2> +AC_CHECK_HEADER([locale.h],
13:04 < pcjc2> + [AC_DEFINE([HAVE_LOCALE_H], 1, [Define if you have locale.h])],
13:04 < pcjc2> + [
13:04 < pcjc2> + if test "$USE_NLS" == "yes"; then
13:04 < pcjc2> + AC_MSG_ERROR([Cannot find useful locale.h, and nls support is enabled. Try compiling with --disable-nls])
13:04 < pcjc2> + fi
13:04 < pcjc2> + ])
13:04 < pcjc2> +
13:04 < pcjc2> # Checks for typedefs, structures, and compiler characteristics.
13:04 < pcjc2> AC_C_CONST
13:04 < pcjc2> bah
13:04 < pcjc2> sorry
13:04 < pcjc2> that was supposed to be the pastebin URL!
13:04 < pcjc2> http://www.pastebin.ca/451553
13:04 < Ales> dj's pc was beeping like mad here
13:04 < cnieves> mine too!
13:04 < peterbrett> Yay pastebomb
13:04 < Ales> he has it setup to beep on any irc activity
13:05 < cnieves> Warning: terrorist alert!! Action: kill pcjc2...
13:05 < pcjc2> pcjc2: goes to hide somewhere
13:05 < sdb> Hey -- Does anybody have any SPICE schematics they would like to share?
13:06 < Ales> peter: looks good
13:06 < sdb> I am building a spice-sdb test suite and want to include some typcial
13:06 < peterbrett> Ales: Which peter?
13:06 < sdb> SPICE-able schematics for regression testing. In particular, if people
13:06 < sdb> have schematics wiht slotted parts and stuff like that, I'd like to use them.
13:07 < sdb> Just let me know, or e-mail them to me.
13:08 < peterbrett> If anyone fancies committing the patch I just sent to the list, feel free
13:09 < peterbrett> Ales: We really need to do something about those ChangeLog's
13:10 < Ales> what's wrong with the changelogs?
13:10 < peterbrett> They're often a cause of race conditions between committers
13:11 < peterbrett> They also cause a HUGE number of merge conflicts
13:11 < peterbrett> In fact, they're one of the things that makes merging large branches so difficult
13:11 < peterbrett> Ask pcjc2 ;)
13:11 < peterbrett> Can't we do like PCB does and use cvs2cl.pl to generate the ChangeLog files?
13:12 < dj> No, you can't. Really.
13:12 < pcjc2> how comes?
13:12 < peterbrett> dj @(
13:12 < dj> You don't get as good a quality CL entry that way.
13:12 < pcjc2> Editing the log is a real pain.. merge tastic when bringing in the branches
13:13 < pcjc2> There is no reason we can't use a decent message in the CVS commit log
13:13 < peterbrett> dj: But people should be putting good quality log messages into the CVS log anyway!!!
13:13 < Ales> I like what dj is about to say
13:14 < pcjc2> The one problem I see is that you can't tell it which "module" the ChangeLog message belongs to
13:14 < dj> Here's what we should do... Edit the ChangeLog and commit it with the patch. Use a copy of the CL entry (minus tabs and timestamp) as the cvs commit message.
13:14 < dj> That way, you can "cvs log" the ChangeLog to find patches.
13:14 < peterbrett> dj: GAHH NO !!!!
13:14 < dj> cvs2cl screws up the cvs history in the ChangeLog file.
13:14 < peterbrett> That's **horrible brokenness**
13:14 < Ales> that's how we have been operating for the last 9 years
13:15 < dj> gcc and binutils do it that way too.
13:15 < pcjc2> dj: speaking of gcc, can I change the subject a second....
13:15 < dj> and cygwin, newlib, gdb, and cgen.
13:15 < Ales> I've never been a changelog or commit message bastard
13:15 < dj> too late, second's up.
13:15 < Ales> :)
13:15 < pcjc2> why... does adding "-g" bring "locale.h" in, when without "-g", it doesn't
13:16 < pcjc2> (This was for gschem.c, which has a #ifdef on locale.h, and it wasn't being met appropriately. When compiled with -g, the preprocessor pulled in locale.h, and got on with it anyway)
13:17 < cnieves> peterbrett: patch comitted. Thanks! (I couldn't use ">" or "<" either)
13:17 < peterbrett> dj: my main objection to your proposal for commit log message format is that when browsing history with a "short log" format like this, http://repo.or.cz/w/geda-gaf.git?a=shortlog , you'd just get a list of filenames.
13:17 < peterbrett> Which isn't useful at all
13:18 < dj> Well, then don't use git.
13:18 < peterbrett> Also, when people inevitably forget to write the commit message, you randomly get entire patch sets missing from your search
13:19 < Ales> people better not be forgetting to add a commit message
13:19 < dj> cvsweb doesn't have problems with gnu-standard changelog entries as cvs commit messages.
13:19 < peterbrett> (I mean, forget to update the ChangeLog in the same commit)
13:19 < dj> cvs doesn't tie them anyway, so no loss there.
13:19 < cnieves> I've been using (or trying to) use commit logs friendly to git, while keeping the current rule
13:19 < dj> locale.h: my config.,h has #define HAVE_LOCALE_H 1
13:21 < Ales> I don't have that in my config.h
13:21 < rikster> j #geda
13:22 * rikster is back
13:22 < pcjc2> dj: that HAVE_LOCALE_H may be coming from somewhere else, in gettext
13:23 < pcjc2> but we can't rely on it unless we ask for it specifically. (Gettext keeps changing and breaking things)
13:23 < rikster> m cnieves Your suggestion to comment out the #ifdef stuff worked. The FR is 100% implemented for me at this point.
13:26 < peterbrett> cnieves: Is #1553483 fixed in CVS?
13:27 < cnieves> rikster: Then it's not related with your FR. Something is not working. Could you please check: https://sourceforge.net/tracker/index.php?func=detail&aid=1553483&group_id=161080&atid=818426 and run the test program there?
13:27 < cnieves> peterbrett: I thought so, but rikster has found some GTK warnings I don't like.
13:27 < peterbrett> kk
13:32 < pcjc2> Carlos: Your last commit I think causes issues for compiling with libgd
13:32 < cnieves> why?
13:32 < pcjc2> The variables you removed are needed for libgd, I guess the bug (if really worth fixing) is the variable definitions should be inside the #ifdef LIBGD block)
13:33 < cnieves> oh, you are right!
13:34 < cnieves> need to revert that!
13:34 < pcjc2> do you have the diff of the commit? If not, I can update my git-tracking thingy, and produce a reverse patch quite easily
13:35 < Igor2> back
13:35 < sdb> PeterB -- I just fixed the Gattrib bug where it would close without checking if hte user
13:36 < Igor2> any news for me? :)
13:36 * peterbrett dances
13:36 < sdb> hit the X window decoration. Please feel free to check it.
13:36 < peterbrett> Igor2: Any news for us?
13:36 < Igor2> :>
13:36 < peterbrett> sdb: Don't worry, I trust you ;)
13:36 < Igor2> i haven't crashed into cars! :)
13:36 < Igor2> ok,so i should install that libgd now, right?
13:36 < pcjc2> its not needed
13:36 < Igor2> then what should i do to get it working? :)
13:36 < pcjc2> just you get a few unused variable warnings if you use the alternative
13:36 < Igor2> no, it's not that
13:37 < pcjc2> Guile is the problem on your machine by the sounds of it
13:37 < Igor2> it's still the unresolved scm*
13:37 < Ales> speaking of warnings... there are a bunch in libgeda and gschem now
13:37 < Igor2> currently downgraded to 1.6
13:37 < sdb> PeterB: Trust but verify, I gnerally say. But I'll go ahead and close the bug report on SF.
13:37 < Ales> are those intentional or accidental? Most of them are due to unused variables
13:37 < pcjc2> how about posting a config.log for gschem and / or libgeda
13:37 < Igor2> i have make clean and ./configur both in libgeda and gschem after downgrade
13:37 < Igor2> ok
13:37 < peterbrett> pcb people:
13:37 < pcjc2> Ales: accidental - but Carlos fixed them (and is now about to "fix them back" ;))
13:37 < Ales> okay
13:37 < pcjc2> If you compile without libgd, there were unused variables
13:38 -!- jpd [~jpd@xxxxxxxxxxxxx] has joined #geda
13:38 < pcjc2> They need to be made conditional
13:38 < Ales> Hi John (?)
13:38 < jpd> Hi
13:38 < cnieves> hi Hohn
13:38 < peterbrett> dj: http://pastebin.ca/451595
13:39 < cnieves> s/Hohn/John sorry!
13:39 < jpd> Hello folks.
13:39 < peterbrett> dj: This is in CVS checkout
13:39 < peterbrett> hi jpd
13:39 < Igor2> >pcjc2> http://inno.bme.hu/~igor2/tmp/config.log.libgeda
13:39 < Igor2> >pcjc2> http://inno.bme.hu/~igor2/tmp/config.log.gschem
13:39 < dj> cvs update -d
13:40 < peterbrett> dj: d'oh
13:40 < peterbrett> dj: I hate CVS :(
13:40 < dj> subversion handles new directories properly.
13:40 < dj> and removes them when you go back in time, too.
13:40 < pcjc2> Carlos: a patch of the remove variables commit is at www2.eng.cam.ac.uk/~pcjc2/geda/removed_variables.diff
13:41 < cnieves> pcjc2: thank you! I've just reverted the patch, and I'm about to #ifdef the variables.
13:41 < peterbrett> We were just commenting that this is one of the most active sprints we've seen
13:42 < dj> EVERYONE TYPE FASTER!
13:42 < peterbrett> Also, I'm thinking of getting myself a copy of the IPC footprint document
13:43 < pcjc2> Carlos: Looking at those functions, I doubt that any of the code is actually needed for non-libgd, so other than the function shell, the #ifdef may as well span the whole function
13:43 < rikster> m cnieves Okay, I think I've found the problem. In the lines beginning at 240 there are callouts to gtk_response_no, gtk_response_ok, and gtk_response_help.
13:44 < rikster> m cnieves None of these are defined in the original call to setup the dialog box which is just above this.
13:44 < Ales> rikster: what's with the "m" in front of your messages?
13:45 < rikster> Dang, I was trying to just send a private message about this stuff to cnieves but my irc tool isn't interpreting m to be msg.
13:45 < Ales> okay
13:45 < Ales> glad you haven't been complaining about us then. :-)
13:45 < cnieves> pcjc2: could be. But I have the patch ready.
13:46 < rikster> msg cnieves I commented out the callouts and added the one for gtk_response_accept and it now doesn't generate any messages
13:47 < Ales> that didn't work either
13:47 < Ales> try /msg cnieves :)
13:47 < rikster> Aarrghh
13:50 < peterbrett> Someone asked for single keystrokes to increase/decrease grid size in gschem (#1443637)
13:50 < cnieves> it's in cvs since a long time...
13:50 < peterbrett> cnieves: O RLY? RFE still open
13:51 * peterbrett closes it
13:51 -!- Levente [~Levente@xxxxxxxxxxxxxxxxxxx] has joined #geda
13:51 < cnieves> isn't there a comment to the submitter to test that?
13:51 < cnieves> hi Levente
13:51 < Levente> Hi all!
13:51 < Ales> Hi Levente
13:51 < peterbrett> cnieves: it would be nicer to have it as '[' & ']'
13:52 < sdb> Hi Levente
13:52 < Levente> Hi Stuart
13:52 < peterbrett> cnieves: And I notice these are not currently used
13:52 < cnieves> peterbrett: I have no preference
13:52 < peterbrett> cool, I'll change it then
13:53 < cnieves> nice. Why don't you ask for write access to Ales?
13:53 < peterbrett> Ales: CVS commit access pls
13:56 -!- rikster [~rik@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has quit [Quit: thanks for all the good tools.]
13:59 < Igor2> hi Levente :)
13:59 < Levente> hi Igor2 :) How things goin'?
13:59 < Igor2> fine, thanx, how are you? :)
13:59 < Igor2> do you participate in critical mass tomorrow?
14:00 < Levente> I'm okay too... Yes, sure! So we can see each other? Maybe we can talk HA there?
14:00 < Levente> :-)
14:01 < Igor2> yeah :)
14:01 < Levente> Btw, I try to hack a bit on my grenum thing.
14:01 < Igor2> i will pick up Mikko at the uni at 3 pm
14:02 < Igor2> (Mikko is a guest student from Finland, we managed to get him a bike:)
14:02 < Levente> I'm gonna get there around 3:30
14:02 < Igor2> then we will meet with some other guys at Arpad hid's pest end
14:02 < Igor2> at around 4:00
14:02 < Levente> I live close there.... Buda end...
14:03 < Igor2> then we could meet at Arpad hid/buda between 3:30 and 4:00?
14:03 < Levente> Okay, that is good!
14:03 < Igor2> ok, how do we recognise eachothers? :)
14:04 < Igor2> (don't say you wil have a bike - everyone will have one around that time:)
14:04 < Levente> You know, I'm gonna come with a bike
14:04 < Igor2> ahh, i knew, i knew! :>>>
14:04 < Levente> okay... sorry...
14:04 < Levente> a blue one....
14:04 < Igor2> will you be alone?
14:04 < Levente> I don't know yet....
14:05 < Igor2> i will have a colorful bike (red/green/blue with a black/yellow bag) and Mikko has a green mountain bike
14:05 < Levente> If you give me your cellphone number, I can ring you...
14:05 < Igor2> i do not have a cellphone :)
14:05 < Levente> Okay...
14:07 < sdb> Levent, Igor, where is your critical mass?
14:07 < sdb> We have it in San Francisco, New York, and here in Boston.
14:08 < Igor2> Budapest
14:08 < Igor2> about 30k participants are expected iirc
14:08 < sdb> Cool!
14:08 < pcjc2> Ales: Shall I get on with the patch for the gdk_keyval_name segfault?
14:08 -!- pcjc2 [~pcjc2@xxxxxxxxxxxxxxxxxxxx] has left #geda []
14:09 -!- pcjc2 [~pcjc2@xxxxxxxxxxxxxxxxxxxx] has joined #geda
14:10 < mcmahill> Ales?
14:11 < Ales> Hi dan
14:11 < Ales> peterC: please
14:11 < dj> Hi dan!
14:11 < Ales> I never got around to writing that patch up, so getting that in would be great!
14:11 < mcmahill> what was the failure on distcheck?
14:12 < mcmahill> I'm sure I can fix it
14:12 < Ales> I think it can't find one of the scripts
14:12 < Ales> just run make distcheck
14:12 < mcmahill> ok. I'll take a look
14:12 < peterbrett> cnieves: I changed the keybindings, and unfortunately the keystrokes now appear as 'bracketleft' & 'bracketright'
14:12 < peterbrett> which is quite lame
14:12 < Ales> if you don't have time I am going to have to fix it, since Stuart reused your testing framework for some spice-sdb tests
14:14 < mcmahill> oh, I see part of the problem.
14:14 < mcmahill> when I renamed a bunch of files to get rid of ":" I forgot to update Makefile.am...
14:14 < Ales> I fixed that already
14:14 < Ales> lemme commit that
14:14 < mcmahill> oh. ok.
14:14 < mcmahill> yeah, check that in and I'll see whats next.
14:15 < mcmahill> hi DJ. I saw you added some diagonal pad support. That should be popular
14:16 < cnieves> peterbrett: do you mean in the menu? that's not nice...
14:16 < peterbrett> Yes
14:16 < peterbrett> But not using those keys would suck
14:16 < Ales> done
14:18 < mcmahill> I suspect I left out an environment setting which is needed when building outside the source tree.
14:18 < mcmahill> but since I reused the framework from something else that I know works with distcheck I'm sure whatever the issue is it won't be hard
14:19 < Ales> yeah, that's my guess as well
14:20 < peterbrett> Oh yeah
14:21 < peterbrett> that reminds me
14:21 < peterbrett> Do any make gurus know how to fix multithreaded make for geda?
14:21 < peterbrett> Bug #1701813
14:29 < Ales> you have to setup the dependancies manually and then it might work
14:31 < Ales> is it worth it, probably not since we don't have that many parts
14:32 < dj> dan: yeah, but it's not as easy as you'd think.
14:33 < dj> IsPointInPolygon() doesn't actually do that any more :-P
14:33 < mcmahill> because of the clipper or because the large number of places where assumptions are made that everything is on 90 deg increments?
14:34 < dj> Because polygons are checked based on the polyareas, not the original point lists.
14:34 < dj> so I can't just create a polygon for diagonal pads and use the existing primitives.
14:34 < mcmahill> I guess I'm not up on how the polygons actually work
14:34 < dj> Me neither, hence the problem.
14:35 < mcmahill> hey, I never assumed diagonal pads were easy ;)
14:37 < mcmahill> its not really geda related, but a few nights ago my son and I searched for "lego" on youtube and found some pretty cool lego movies
14:37 < mcmahill> they ranged from some animation stuff to videos of way cool lego creations
14:37 < mcmahill> there was a factory built of legos that robotically assembled small lego cars
14:38 < peterbrett> Is there a length-safed equivalent of strstr?
14:39 < peterbrett> ...or maybe there doesn't need to be one
14:39 < dj> I keep trying to talk Jason into a project: build a large lego model, and remove the parts one at a time - taking a picture after each step. Then stitch the photos together backwards to make a movie of the model being built
14:39 < dj> memcmp ?
14:39 < dj> strnstr?
14:39 < dj> libiberty might have a strnstr if it's not portable enough.
14:40 < peterbrett> strnstr doesn't exist... but we've determined that it's safe anyway
14:40 < mcmahill> autom4te: cannot create autom4te.cache: Permission denied
14:40 < mcmahill> this is wierd.
14:41 < mcmahill> I ran autogen.sh just 15 minutes ago and it was fine
14:41 < dj> ls -la ?
14:41 < Igor2> >pcjc2> i've installed libgd, made clean in both dirs, ran ./configure, make, make install in lib than in gschem
14:42 < Igor2> and i get the same scm errors at linking
14:42 < mcmahill> oh, wierd. Nuking the leftover directory from a failed 'make distcheck' fixed it
14:44 < mcmahill> ales: the distcheck problem is because srcdir is exported to the test environment but not top_srcdir. I'm testing a fix and will commit if it works
14:44 < pcjc2> Igor: sorry, haven't gone over the log file yet... will do now
14:44 < Igor2> ok :)
14:45 < Igor2> i can remove libgd to reproduce the previous setup (for which you have the logs)
14:45 < pcjc2> its not a problem
14:45 < Igor2> ok
14:45 < cnieves> pcjc2: warning: libgd is no longer used by default, if you are using the latest cvs.
14:47 < peterbrett> http://www.peter-b.co.uk/htdocs/gEDA/optionsmenu.png
14:48 < peterbrett> Does this look okay? It binds the grid increment/decrement functions to the [ ] keys
14:48 < Ales> Dan: great thanks.
14:48 < peterbrett> I mean http://www.peter-b.co.uk/gEDA/optionsmenu.png
14:48 < peterbrett> Obviously
14:49 < Ales> that looks okay
14:50 < pcjc2> Igor: it appears GUILE_LDFLAGS is missing somewhere
14:50 < pcjc2> I'll try to see where it comes from
14:50 < Igor2> :)
14:52 < cnieves> sdb: I'm getting: (gattrib:6696): GLib-GObject-WARNING **: invalid uninstantiatable type `(null)' in cast to `GtkSheet'
14:52 < sdb> Carlos, what are you doign when you get that warning?
14:52 < cnieves> and a segfault when I click on the net tab...
14:52 < sdb> Oh oh...
14:52 < cnieves> just loaded a schematic, then loaded another one.
14:53 < cnieves> those schematics are not numbered, so maybe gattrib is going crazy...
14:53 < mcmahill> peter: that netbsd git patch didn't help. I'm wondering if it is due to it being a 64-bit box. I'll give it a shot on a 32-bit system first.
14:53 < cnieves> sdb: I mean refdes in the schematic
14:53 < sdb> Did you load hte first using file->load and the second using file->load?
14:54 < mcmahill> unfortunately the whole build system is based around operating system checks, not feature tests.
14:54 < cnieves> sdb: no, the first one was with the command line, the other using file->load
14:54 < sdb> OK.
14:54 < mcmahill> i.e. "if SunOS-5.9 then..." as opposed to "if HAS_SOME_FEATURE then ..."
14:54 < Ales> that's very 80s. :)
14:54 < cnieves> sdb: I recall gattrib needs a file with property names... I don't have any
14:56 < sdb> Carlos, when you say the schematics are not numbered, do you mean no refdeses on the schematics?
14:57 < sdb> Carlos, gattrib is supposed to check that there is at least one refdes on the schematic.
14:57 < peterbrett> mcmahill: It probably needs autoconfiscating
14:57 < sdb> Carlos, it's possible it checks only on the first read-in, and if the first schematic
14:57 < mcmahill> Ales: things should work now.
14:57 < sdb> is OK, then it doesn't check any more. If that's the case, and you have a non-numbered
14:58 < sdb> second schematic, I can see that gattrib might get horribly confused.
14:58 < sdb> Carlos, can you please file a bug on it>
14:58 < mcmahill> stuart, if you've copied over my run_tests.sh script, you may want to grab the minor changes I just checked in
14:58 < sdb> Carlos, can you please file a bug on it?
14:58 < mcmahill> biab
14:59 < sdb> Dan, thanks, but mine seems to work already. I wonder if my mods fixed something broken in
14:59 < sdb> yours? One problem in the refdes_renum test script is that it wants to use Perl
14:59 < cnieves> sdb: I mean all components have refdeses, but they are all R?, C?,...
15:00 < sdb> and that seemse to cause problems.
15:00 < sdb> Carlos, I'll have to see what gattrib does wiht components numbered R? C? and so on.
15:02 < cnieves> sdb: wow! I made it segfault again, with a segfault in the terminal looking like:
15:02 < cnieves> b74a0000-b75db000 r-xp 00000000 03:02 1885434 /lib/libc-2.5.so
15:02 < cnieves> b75db000-b75dc000 r--p 0013b000 03:02 1885434 /lib/libc-2.5.so
15:02 < cnieves> (many many lines). I didn't see that before!
15:02 < cnieves> I'll file a bug report
15:03 < sdb> Carlos, yes please file a bug report! Please include what you did to make it work.
15:03 < dj> ok, crude diagonal element support is in - pads can be diagonal, but no element rotation yet.
15:03 < sdb> I've been having good luck running gattrib today on normal schematics, so I need to know
15:03 < sdb> what will break it.
15:03 < peterbrett> right, food
15:06 < peterbrett> Ales: On the developers page on the website I'm the only one with a non-obfusticated e-mail address :(
15:06 < dj> And?
15:07 < peterbrett> dj: I would very much like some obfusticatization applied, please :D
15:07 < dj> ;-)
15:08 < cnieves> sdb: I see two components tabs. Should be only one?
15:08 -!- Igor2 [~igor2@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has quit [Quit: good night]
15:08 < peterbrett> Also, I'm having difficulty working out the right sequence of commands to login as an authenticated CVS user
15:08 < Ales> peterb: sorry! fixed.
15:08 < Ales> what is your CVSROOT set to?
15:09 < peterbrett> :pserver:peterb@xxxxxxxxxxxx:2401/home/cvspsrv/cvsroot
15:10 < Ales> get rid of the 2401 (shouldn't matter; cvs is running on the default port)
15:10 < Ales> okay
15:10 < Ales> did you run cvs login next?
15:13 -!- mike [~mike@xxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
15:13 < cnieves> sdb: bug report filed.
15:13 < cnieves> hi mike
15:13 < peterbrett> Ales: PAM authenticate error: User not known to the underlying authentication module
15:13 < mike> Hi!
15:13 < Ales> okay
15:14 < Ales> I've never seen that error message before
15:14 < dj> "cvs -d <fill in the blank> login" ?
15:14 < Ales> hi Mike
15:14 < mike> Hi!
15:15 < mcmahill> stuart: it is also possible that your tests work differently enough to not matter
15:15 < mcmahill> do they work with 'make distcheck'?
15:18 < sdb> Dan: They work with distcheck. Ales and I checked that.
15:19 < sdb> Dan: They're pretty close to your tests. A big difference is that I am running
15:19 < sdb> gnetlist, and not perl, so I don't need to fool around with finding the path
15:19 < sdb> to perl.
15:19 < sdb> They run the local gnetlist which has just been built in the geda/gaf/gnetlist/src dir
15:20 < sdb> I checked all my stuff in, so you can look at it under gnetlist/tests/spice-sdb/
15:20 < sdb> The files in there should look very familiar: run_tests.sh and tests.lits
15:20 < sdb> The files in there should look very familiar: run_tests.sh and tests.list
15:21 < sdb> I believe a big problem with distcheck is that it is sensitive to being
15:21 < sdb> position-independent in the filesystem.
15:26 < Ales> Dan: make distcheck in utils works. Thanks!
15:26 < corycrossq> Is it possible to add gschem-style keybindings to pcb? i.e. 'ed' to delete an element?
15:27 < mcmahill> sdb: actually I think thats one of the nice things about distcheck
15:27 < mcmahill> for example I've been building pcb with both gtk and lesstif hid's from the same source tree so its nice to know it all builds correctly outside of the source tree
15:27 < Ales> distcheck is awesome. :) particularly when tests are run.
15:28 < mcmahill> yeah. Its nice to catch files missing from the tarballs that way
15:28 < Ales> and when some file leaves garbage installed
15:29 < mcmahill> who all showed up at MIT?
15:29 < Ales> DJ, Stuart, JohnL, and myself
15:31 < Ales> o_box_basic.c: In function 'o_box_image_write':
15:31 < Ales> o_box_basic.c:1525: warning: unused variable 's_lower_y'
15:31 < Ales> ...
15:31 < dj> cory: you can with lesstif, I think even with Dan's gtk changes you're still limited to single key bindings.
15:31 < Ales> is that expected?
15:32 < Ales> and SteveM showed up... :)
15:32 < dj> you have to use "<Keys>ed" instead of just <Key>
15:32 < cnieves> Ales: that's surely libgd->gdk-pixbuf variable which is not used now. Can you put it inside #ifdef HAVE_LIBGD (or something like this).
15:32 < Ales> sure
15:32 < Ales> I'll look at it once my build finishes
15:33 < Ales> thanks
15:33 < corycrossq> Thanks dj, is someone planning to add double bindings for gtk?
15:35 -!- Cesar [~Cesar@xxxxxxxxxxxxxxxxxxxxxx] has joined #geda
15:35 < Cesar> Hello, all.
15:35 < cnieves> hi Cesar
15:36 < dj> Dan just added customization yesterday. One thing at a time.
15:36 < peterbrett> dj: Patience, young jedi.
15:36 < peterbrett> ;)
15:36 < Ales> Hi Cesar
15:37 < peterbrett> We get the feeling Patrick won't be joining the fun today
15:37 < sdb> Hi Cesar!
15:37 < pcjc2> I hope the whole noscreen / merging problem didn't annoy him too much though
15:38 < Ales> he hasn't said anything for a while.
15:38 < pcjc2> He mentioned a re-write at least once
15:38 < pcjc2> I expect he'll be back in touch when its finished ;)
15:39 < pcjc2> (I mean that in jest of course)
15:40 < Ales> Carlos: I like how the "Ok" button behaves in the component selection dialog
15:40 < Ales> that's pretty nifty
15:41 < cnieves> thanks! :)
15:42 < corycrossq> dj: I wasn't sure if was easily possible with gtk... but I'm working on enough other stuff without trying to take that on!
15:42 < dj> Well, with lesstif I ended up trapping the raw key events and processing them myself. I suppose the gtk code could reuse that.
15:43 < cnieves> one thing I would like in the component selector is to automatically expand the branches if there is only one component there, or to expand the branch is there is only one...
15:44 < cnieves> don't know if it is hard or not, though
15:44 < pcjc2> should be possible
15:44 < pcjc2> but GtkTreeView is evil stuff
15:44 < pcjc2> I was working on a custom model which is backed by libgeda data (for the page contents browser idea)
15:45 < pcjc2> turns out, it requires some quite specific signals to be sent for every model changee
15:45 < corycrossq> is there a way to set the default size of that window? or remember its last size?
15:45 < pcjc2> One thing I've found a pain with the component selector (apart from its default size, and the room allocated to the tree), is it not remembering / adjusting position intelligently as it filters
15:48 < Ales> I'm going to move the directories "geda" and "setup" now and see what happens
15:49 < Ales> yeah, everybody who has geda/gaf checkout should delete "geda" and "setup"
15:53 < Ales> reminder e-mail sent to geda-dev
15:53 * peterbrett sees to what extent this breaks git-cvsimport ;)
15:55 < Ales> oh sorry
15:55 < peterbrett> doesn't matter
15:55 < Ales> let me know if it breaks that too much and I'll put them back
15:55 < peterbrett> If necessary I'll just hack the commit
15:56 < Ales> I know how much you like git. :)
15:56 < peterbrett> ;)
15:56 < Ales> how bandwidth intenstive is the cvs <-> git sync?
15:56 < peterbrett> very little
15:57 < peterbrett> The expense is in cvs.seul.org's CPU time :P
15:57 < Ales> hmmm
15:57 < cnieves> I'm going. bye everybody!
15:57 < Ales> what if the git repository and the cvs repository were on the same machine?
15:57 < peterbrett> cnieves: Bye!
15:57 < pcjc2> bye carlos!
15:57 < cnieves> it was a nice day as always!
15:57 < cnieves> :=
15:57 < Ales> see ya Carlos
15:57 < cnieves> :)
15:57 < Ales> thanks for all the checkins!
15:57 -!- cnieves [~cnieves@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has quit [Quit: Abandonando]
15:57 < peterbrett> Ales: Then you could do a post-commit hook in CVS to update the git repo
15:57 < pcjc2> Lots of good coding today - perhaps the most active sprint yet?
15:58 < Ales> yup
15:58 < peterbrett> Alternatively, there's a git program that pretends to be CVS
15:58 < Ales> what about svn <-> git syncing?
15:58 < peterbrett> yes, that works too
15:58 < Ales> oh okay
15:58 < peterbrett> In fact, that works much better
15:58 < peterbrett> It's CVS --> SVN that's the really dodgy bit
15:59 < Ales> how cpu intensive would that svn <-> git sync be?
15:59 < peterbrett> Using git to pretend to be CVS?
15:59 < Ales> no, just keeping a git repository in sync with svn or cvs
15:59 < peterbrett> I'm afraid I don't know
16:00 < peterbrett> Also, yes, moving the history out has broken git
16:00 < Ales> do you want me to put it back?
16:00 < peterbrett> It still thinks setup & geda are present
16:00 < peterbrett> I can't get rid of it, because it'll break the import script
16:00 < Ales> I really want to toss them, the alternative is that I do do a cvs remove on all the files
16:01 < Ales> would that be okay?
16:01 < peterbrett> that'd work fine
16:01 < Ales> okay, I'll do that now
16:01 < peterbrett> Because there'd be a CVS commit git would pick up
16:01 < peterbrett> If the history's just removed, git never realizes they've gone
16:01 < Ales> okay, it's back... does git work okay now?
16:02 < Ales> ^it's^they are
16:02 < peterbrett> No difference, no point in even checking ;)
16:02 < Ales> okay, lemme remove all the files
16:02 < peterbrett> If you back up the rcs files, then cvs rm them, then reinstate the rcs files in the new home?
16:02 < peterbrett> Would that work?
16:02 < Ales> I'll just copy the directories instead of moving them
16:06 < pcjc2> Ales: http://www.pastebin.ca/451742
16:06 < pcjc2> just compiling to check
16:07 -!- Levente [~Levente@xxxxxxxxxxxxxxxxxxx] has left #geda [Going to sleep]
16:07 < peterbrett> I can't believe how long `cvs diff` takes :(
16:10 < Ales> peter, I cvs remove'd setup and geda, so that shouldn't break git
16:10 < peterbrett> Thx, appreciate it
16:11 < pcjc2> In gschem, I've found:
16:11 < Ales> peterC: patch looks good
16:11 < pcjc2> x_dialog.c: In function â??close_confirmation_dialog_constructorâ??:
16:11 < pcjc2> x_dialog.c:3857: warning: assignment discards qualifiers from pointer target type
16:11 < Ales> I will test once you commit it
16:11 < pcjc2> not related to my change, but there are a bug or two yet
16:11 < Ales> as I have a keyboard with 0x0 keysyms
16:11 < pcjc2> key_value rather than key_name by accident in a place or two
16:12 < pcjc2> I've got one two, so will get on
16:13 < pcjc2> Also: x_menus.c: In function â??gettext_fnâ??:
16:13 < pcjc2> x_menus.c:241: warning: return discards qualifiers from pointer target type
16:13 < jpd> I believe I now have a gnetlist back end for Osmond PCB Design.
16:13 < pcjc2> are these from commits today? I don't recall seeing them before
16:14 < Ales> I don't recall seeing those either
16:14 < jpd> Sent a netlist to an Osmond user at MIT Kavli to test.
16:14 * peterbrett tests git-cvsimport
16:15 < jpd> Ales, I'll send it to you once it's tested.
16:15 < Ales> great thanks
16:17 -!- rikster [~rik@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
16:18 < peterbrett> wb rikster
16:18 < peterbrett> Ales: You did cvs rm, then commit, didn't you?
16:19 < peterbrett> And you left the rcs files there?
16:19 < peterbrett> Or did you cvs rm, commit, then delete the rcs files?
16:20 < peterbrett> You need to have left the rcs files there long enough for me to run the tools!
16:20 < peterbrett> Then you can delete them.
16:22 < Ales> I did a cvs remove; cvs commit
16:22 < Ales> and left the rcs files there
16:22 < peterbrett> Wierd
16:22 < peterbrett> s/ie/ei/
16:22 < Ales> the rcs files will always be there
16:24 < mcmahill> please, no removing of rcs files!
16:24 < Ales> no rcs files have been removed. :)
16:25 < mcmahill> unless someone checked in something which causes legal problems...
16:26 < peterbrett> I still get lots of "is no longer in the repository" stuff
16:26 < Ales> could somebody here run a cvs update -dP and make sure it completes okay
16:26 < peterbrett> (when I do cvs up -CdP)
16:28 < peterbrett> [peter@ptbb2b gaf]$ cvs log geda/src/window.h
16:28 < peterbrett> cvs [log aborted]: no such directory `geda/src'
16:28 < mcmahill> stuart?
16:28 < peterbrett> [peter@ptbb2b gaf]$ cvs rlog geda/src/window.h
16:28 < peterbrett> cvs rlog: cannot chdir to /home/cvspsrv/cvsroot/eda/geda/src: No such file or directory
16:30 < peterbrett> Ales, I think you broke it
16:30 < pcjc2> I'm about to check in the fix for gdk_keyvalue_name bug - is this a bad time?
16:31 < sdb> I just did a cvs update -d -P, and it worked fine for me.
16:31 < sdb> Dan, I'm here. What's up?
16:32 < mcmahill> I took a look at the spice-sdb tests. Turns out my bug is there and you introduced another and they cancel...
16:33 < mcmahill> Unless you object, I'm going to remove both bugs
16:33 < peterbrett> Ales: Sorry for blaming you, cvsps is a buggy PoC
16:33 < Ales> is it working now?
16:33 < peterbrett> Not certain, but I have made sure I can see history for the stuff you moved
16:34 < Ales> okay
16:34 < mcmahill> top_srcdir isn't being set correctly to top_srcdir (my fault), but thats good becuase you're using that to find the path to the compiled gnetlist which is also a bug
16:34 < sdb> Dan, what are the two bugs which canceled? And if you know what the problem is,
16:34 < dj> my cvs update seems to have worked correctly.
16:34 < sdb> how would you feel about fixing it in my stuff? :-)
16:34 < Ales> yeah, please fix, so I can steal the fix too for my stuff :)
16:35 < Ales> as I'm not running the newly built gnetlist in my tests (but rather just the installed one)
16:35 < Ales> which is wrong
16:35 < dj> Feel free to fix my stuff too ;-)
16:35 < sdb> Dan, I'll fix my stuff by copying what you do. Just let me know
16:35 < sdb> when you're done.
16:36 < Ales> PeterC: yeah, now was/is a good time to check stuff in
16:36 < pcjc2> done
16:36 < mcmahill> sdb: I fixed yours (I think). I'll check it in after I do a trial 'make distcheck'
16:36 < Ales> great thanks
16:37 < sdb> Dan, thanks!!!
16:37 < mcmahill> here's a question.
16:38 < mcmahill> for gentlist, do you think the backends are sufficiently different that we have to have a different run_tests.sh script for each?
16:38 < mcmahill> or could there be an extra field in tests.list which specifies the backend?
16:38 < sdb> Naw, they
16:38 < Ales> if it could be generalized, that'll be okay
16:38 < sdb> Naw, they're quite different.
16:39 < mcmahill> It seems like fundamentally all we do is 1) copy over some files 2) run gnetlist 3) check some files against outputs
16:39 < sdb> Ales and I differ on this one!
16:39 < mcmahill> oh, and maybe check gnetlists result code
16:39 < sdb> THere are also different flags to set, and they don't work the same on all
16:39 < mcmahill> but you make that a field
16:39 < sdb> backends. (At least spice-sdb is different)
16:40 < Ales> my mechanism was first! :)
16:40 < sdb> I'll let you and Ales decide. In my opinion (and limited experience), a test suite
16:41 < mcmahill> testname | files to copy | output files to check | return code | extra gnetlist flags
16:41 < sdb> always becomes grotesquely complicated and becomes hard to stuff into a generalized
16:41 < Ales> what if I have special diff flags?
16:41 < sdb> format.
16:41 < Ales> like I have for spice-sdb diffs. :)
16:41 < dj> pcb now has FreeRotateBuffer(<angle>) :-) :-)
16:42 < corycrossq> woohoo!
16:42 < dj> Not sure how much of the rest of pcb will work with it though.
16:43 < peterbrett> lol
16:43 < peterbrett> Here's a new challenge for you dj
16:43 < peterbrett> Add a autofanout tool :D
16:43 < dj> still working on the old challenges
16:43 < peterbrett> ;)
16:43 < dj> You can put fanouts in the .fp file
16:43 < peterbrett> dj: Including via grid?
16:44 < peterbrett> dj: Won't it think they're pins?
16:45 < peterbrett> Ales: git repo ist gefixt!
16:45 < peterbrett> Ales: thanks for helping :D
16:46 < dj> Because of the way pcb loads footprints, you can include non-footprint data too, and it gets merged into the schematic.
16:46 < dj> There's a msp430 with jtag in the pcb library that shows this.
16:47 < Ales> peterb: cool. glad that I didn't break it too much. :)
16:50 < corycrossq> dj:did you checkin the FreeRotateBuffer?
16:50 < peterbrett> Ales: To be honest, trying to use git-cvsimport to track CVS is severe brokenness in itself. It's designed for a one-off approximate import
16:51 < mcmahill> stuart?
16:51 < mcmahill> whats the -I "gnetlist -g" part of the diff command for?
16:52 < pcjc2> Ales, can you confirm fixedness with the NULL keynames?
16:52 < mcmahill> -I is non standard
16:52 < mcmahill> oh wait... there is a comment saying why. duh
16:52 < sdb> -I is nonstandard, yes. -I is used by spice-sdb to insert a .include file
16:53 < dj> Yup, but it's not bound to any keys. You have to use ":FreeRotateBuffer(45)" for example.
16:53 < sdb> diretive instead of an entire file when you create a SPICE netlist.
16:53 < mcmahill> not to gnetlist, -I to the diff command
16:53 < mcmahill> but I see why.
16:53 < mcmahill> gnetlist puts in a full path to the command
16:53 < mcmahill> or at least the spice-sdb backend does
16:54 < mcmahill> but unfortunately diff on solaris doesn't understand -I.
16:54 < sdb> Ales says that the -I is his work.
16:54 < corycrossq> is this the right server for pcb? :pserver:anonymous@xxxxxxxxxxxxxxxxxxxxxxx:/cvsroot/pcb
16:54 < mcmahill> cory I think so
16:54 < Ales> Dan: how do you suggest we handle this then?
16:54 < corycrossq> thanks dan
16:55 < sdb> -I in gnu diff ignores a regexp
16:55 < mcmahill> use sed to eat that line or change /full/path/to/gnetlist to just gnetlist
16:55 < sdb> What's the equivalent in sun?
16:55 < mcmahill> there is none.
16:55 < mcmahill> solaris userland sucks
16:55 < Ales> use a different OS. :)
16:55 < sdb> Naw, don't use full path to gnetlist, since it will alwyas be different.
16:56 < Ales> peterc: yes, I'll test it out
16:56 < sdb> Dan, the -I is used to ignore the first line of any generated SPICe file.
16:57 < sdb> In spice-sdb, I used the first -- comment -- line to write out argv[0] for the
16:57 < sdb> user's convenience.
16:57 < sdb> The problem is that the golden files then have a position and system dependent comment line
16:58 < sdb> in the first line. We need a way to make diff ignore the first line.
16:58 < mcmahill> ok. I fixed it
16:58 < mcmahill> just verifying distcheck again before I check it in
17:00 < Ales> Dan: I'll update my stuff based on how you fixed yours
17:00 < mcmahill> ok
17:00 < dj> angled elements: drc, gerber, ps, eps all work. png needs the same square-pad code that gerber needed.
17:01 < jpd> Stuart, why not leave the first line off the golden files.
17:02 < jpd> Strip from test files with sed -e 1d or some such?
17:03 < corycrossq> dj: works for me (didn't know I had to add -P to my update)
17:03 < corycrossq> anything you want tested?
17:03 < dj> Er, everything ;-)
17:03 < dj> autoroute might be useful, and the optimizers.
17:05 < dj> http://www.delorie.com/tmp/tqfp-dip.html
17:05 < mcmahill> jpd: thats basically what I just did
17:05 < mcmahill> stripped off the offending line
17:06 < Ales> PeterC: keysym patch seems to work okay
17:06 < corycrossq> square pads of pins aren't rotate (didn't think they would be)
17:06 < dj> I think the HID has an option for specifying that, but we currently have no reference for determining the angle.
17:07 < dj> At least for square *pads* we know the angle.
17:07 < dj> OTOH octagon pins will work at 45's :-)
17:09 < sdb> Dan, did you modify run_tests to strip the first line from the golden files?
17:09 < sdb> I just ask since I would just like to run run_tests --regen to recreate
17:09 < sdb> everything.
17:09 < mcmahill> sdb: actually I just ignored those same lines
17:09 < mcmahill> but if you do --regen, that line will indeed be dropped
17:10 < mcmahill> it is checked in if you want to see
17:10 < mcmahill> Ales?
17:10 < mcmahill> cp -f $(SRCDIR)/gnetlistrc.vhdl $(BUILDDIR)/gnetlistrc
17:10 < mcmahill> that should probably be more like
17:10 < Ales> ... like?
17:11 < mcmahill> sed 's;@prefix@;${prefix};g' $(SRCDIR)/gnetlistrc.vhdl $(BUILDDIR)/gnetlistrc
17:11 < Ales> why?
17:11 < mcmahill> because otherwise it tries to find VHDL symbols in my home directory where the don't live
17:11 < mcmahill> and the tests fail
17:11 < Ales> it does?
17:11 < mcmahill> (component-library "${HOME}/geda/share/gEDA/sym/vhdl")
17:11 < Ales> crap yeah
17:11 < Ales> sorry
17:12 < mcmahill> ;)
17:12 < corycrossq> autoroute is giving errors
17:12 < mcmahill> no problem
17:12 < Ales> I will fix that
17:12 < mcmahill> thanks.
17:12 < corycrossq> I'll give some more details in a minute
17:12 < mcmahill> I have to get back to my bathroom wall before my wife catches me here...
17:13 < mcmahill> can't code with broken fingers ;)
17:13 < rikster> Since the last code sprint I submitted two tiny patches to SourceForge that improve printing.
17:13 < rikster> Any chance someone with CVS check-in authority could take a quick glance and finish off 1680214 and 1680168.
17:13 < Ales> hmmm, but ${prefix} isn't set to anything
17:13 < pcjc2> I've refreshed the patch for new page code (locally) to work round the fix already in CVS
17:14 < Ales> I will fix it so that it does the right thing
17:14 < Ales> the gnetlistrc.vhdl
17:14 < dj> We might have to ask Harry to fix the autorouter.
17:15 < sdb> corycrossq: mike should check those in since he's the gschem printing guru
17:15 < corycrossq> dj: I took a board I made before, and moved a 4-pin surface mount dip off to a blank area, and optimized with no errors
17:15 < sdb> corycrossq, if Mike doesn't do it after a few days (and we can bug him a little bit
17:15 < sdb> first) then I can do it.
17:15 < mike> Hi, lurking here.. I will look at 1680168.
17:16 < rikster> thanks mike
17:16 < corycrossq> then rotated 37 degrees, optimizing gives me a shorted net error
17:16 < mike> I think we should put orientation in there regardless.
17:16 < corycrossq> great
17:16 < mike> The old code emitted << setpage-orientation ...>> code when enabled. Telling the printer to rotate the page.
17:17 < peterbrett> Hmm, our internets seem to have disappeared
17:17 < mike> I fixed the output to rotate itself, making this redundant.
17:19 < corycrossq> dj: would you like me to send you a test case?
17:20 < pcjc2> brb... router is borked
17:21 < dj> If it's small, post an URL to it on geda-dev
17:23 -!- pcjc3 [~pcjc2@xxxxxxxxxxxxxxxxxxxx] has joined #geda
17:23 < pcjc3> am I still here?
17:23 -!- peterbrett_ [~peter@xxxxxxxxxxxxxxxxxxxx] has joined #geda
17:24 < peterbrett_> Hmm
17:24 < peterbrett_> Interesting
17:24 < pcjc3> will probably have to wait for our old IP to timeout before I can be pcjc2 again!
17:25 -!- swm_ [~swm@xxxxxxxxxxx] has joined #geda
17:26 < sdb> Hi Steve!
17:26 < swm_> Hi Stuart
17:26 < Ales> everybody is asking... what did you do with pcjc1 !?!!??!?!!
17:26 < pcjc3> Cambridge reserve "0", "1", "10", "100" etc... for important people
17:26 < pcjc3> There is no pcjc1
17:28 < Ales> really? wow. :)
17:28 -!- You're now known as Ales1
17:28 < Ales1> :)
17:28 < sdb> Better than being a zero
17:28 -!- dj is now known as dj0
17:28 -!- dj0 is now known as dj-1
17:28 < dj-1> Ha!
17:28 < sdb> Naw, I think Ales won (1).
17:29 < sdb> Ok, I'm leaving now.
17:29 < dj-1> On that happy note, time to wrap it up here
17:29 < peterbrett_> I'm going to be leaving here soon (it's almost 11 pm here)
17:29 < Ales1> yeah, it's time to move on... :(
17:29 < Ales1> this has been most successful.
17:29 < dj-1> Bye all! Have run with the rotated footprints :-)
17:29 < peterbrett_> Ales1: Yeah, it's been good
17:29 < peterbrett_> When's the next one?
17:29 < Ales1> 94 commit messages
17:30 -!- You're now known as Ales
17:30 < dj-1> Next sprint is slated for June, at my house again. No specific date yet.
17:30 < peterbrett_> 45 patchsets committed
17:30 -!- rikster [~rik@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has quit [Quit: Thanks all. See ya in June.]
17:31 -!- peterbrett [~peter@xxxxxxxxxxxxxxxxxxxx] has quit [Ping timeout: 620 seconds]
17:31 < Ales> have fun everybody, see ya around
17:31 -!- pcjc2 [~pcjc2@xxxxxxxxxxxxxxxxxxxx] has quit [Ping timeout: 633 seconds]
17:31 < sdb> By everybody! Thanks for coming!
17:31 -!- sdb [~sdb@xxxxxxxxxx] has quit [Quit: Leaving]
17:31 -!- dj-1 [~dj@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] has quit [Quit: Leaving]
17:31 < swm_> bye
17:31 -!- swm_ [~swm@xxxxxxxxxxx] has quit [Quit: Leaving]
17:32 < Ales> I'll post the sprint log later tonight!
17:32 < pcjc3> Ales, if no objections, I'll commit the new page fix
17:32 < Ales> peter: go right ahead
17:33 < pcjc3> I've split out the white-space re-indenting fixes to o_undo.c to apply separately - keep things a tiny bit cleaner
17:33 < Ales> cool. later
17:35 < pcjc3> bye!
17:40 < mike> I fixed SF#1680214 for Rikster.
17:40 -!- peterbrett_ is now known as peterbrett
17:41 -!- pcjc3 is now known as pcjc2
17:41 < peterbrett> mike: Shall I close the bug?
17:42 < mike> It works for me, but you should verify that for yourself, in case I borked something.
17:42 < peterbrett> You've committed it?
17:43 < peterbrett> Can you comment on the tracker to that effect? I can't test it now, I'm about to leave
17:43 < peterbrett> Bye!
17:43 -!- peterbrett [~peter@xxxxxxxxxxxxxxxxxxxx] has quit [Quit: Leaving]
17:55 -!- ivan [~ivan@xxxxxxxxxxxxxxxxxxxxxxx] has quit [Quit: Leaving]
18:03 < mike> There, 1680168 is fixed too.
18:08 < mcmahill> cory?
18:08 < corycrossq> Yes?
18:09 < mcmahill> did DJ fix your bug with shorted nets and rotated components?
18:09 < corycrossq> Not to my knowledge, I brought it up right before he left
18:09 < mcmahill> ok.
18:10 < mcmahill> is there an easy way for me to grab that out of pastebin, or just cut and paste?
18:10 < corycrossq> Right above where you type in a comment, there is a raw link
18:11 < mcmahill> ah I see it.
18:11 < mcmahill> ok, this is related to rotated pads?
18:11 < corycrossq> Yes
18:11 -!- peterbrett [~peter@xxxxxxxxxxxxxxxxxxxxxxx] has joined #geda
18:11 < mcmahill> ugh.
18:11 < mcmahill> I am not suprised
18:12 < mcmahill> not at all
18:12 < peterbrett> right, got home safely :)
18:12 < pcjc2> hello again
18:12 < mcmahill> I'll try to take a look "soon", but it promises to be somewhat involved
18:13 < mcmahill> are you at all familiar with that part of the code?
18:13 < corycrossq> I figured, no worries from me
18:13 < corycrossq> No
18:13 < peterbrett> context?
18:13 < mcmahill> pcb connection code
18:13 < peterbrett> ewww...
18:13 < corycrossq> and rotation
18:14 < mcmahill> basically there are a bunch of routines that do things like see if a circle and a rectangle touch or a rectangle and a rectangle or a line drawn with a circular aperture and a pad and .....
18:14 < mcmahill> and on top of that the routines are supposed to be able to see in the 2 things in question would touch if you grew one by some number (the minimum drc gap)
18:15 < pcjc2> ewww...
18:15 < mcmahill> as you might imagine, there are many assumptions in that code about rotations (or rather lack thereof)
18:15 < pcjc2> ( I thought connection tracking code in gschem was complex - will be more so when I get round to the on-the-fly page / circuit netlist creation )
18:16 < corycrossq> it assumes all smt pads are vertical or horizontal?
18:16 < mcmahill> in my mind, that part of the code could really use some good hooks for a thorough self test
18:16 < mcmahill> cory: yep.
18:16 < mcmahill> take for example 2 rectangular pads.
18:17 < mcmahill> the code currently first decides if the closest line is one perpendicular to one of the pads or it if is from the corners
18:17 < mcmahill> then it uses that result to calculate distance
18:17 < mcmahill> but if you have arbitrary rotations, that particular algorithm doesn't work
18:17 < mcmahill> don't get me wrong, I really want to see all that code fixed and working
18:18 < corycrossq> you start to get into a lot of computational complexity when you add in arbitrary rotations and shapes
18:19 < mcmahill> I wonder if it is really cpu complex or just for the person who has to think a lot about geometry
18:19 < mcmahill> there is a lot of room for errors in thinking
18:20 < mcmahill> like the case of 2 rectangles and checking if you'll get a short if you grow one by the drc minimum gap
18:20 < mcmahill> the old code used to just grow one pad into a larger rectangular pad
18:20 < mcmahill> works everywhere but at the corner where you actually increase a dimension by sqrt(2) too much...
18:21 < corycrossq> at least it's in a 'safe' direction
18:21 < mcmahill> no promises, but I do have an interest in fixing up that part of the code. I just can project when I might actually get it done
18:22 < mcmahill> there are some patches on SF which look like they address at least some of these issues too.
18:22 < mcmahill> I've been dragging my feet a little just because it will take a good bit to test it all out
18:22 < mcmahill> you know, I think my next project is going to be trying to make some of that code more unit testable
18:23 < mcmahill> then I can feel good about any improvements there.
18:23 < corycrossq> would make it a lot easier to develop that code
18:24 < mcmahill> biab
18:25 < corycrossq> I'm building a parts database/manager for work; in order to prevent having a new symbol for each part, I'll need to build a mapping function into gsch2pcb
18:26 < corycrossq> I think that's all the work I'll be able to contribute for a while, in addition to footprints and my footprint generator
18:26 < pcjc2> "all"
18:27 < pcjc2> sounds great to me
18:28 < pcjc2> Mike: Are now those patches are committed, is there anything we can close on the trackers?
18:33 < corycrossq> well, I certainly wouldn't mind cleaning up the footprint database, but one thing at a time...
18:54 < jpd> Supper time here in the Rockies, bye.
18:54 -!- jpd [~jpd@xxxxxxxxxxxxx] has quit [Quit: Disconnecting]
18:54 < mike> the patches are comitted
18:54 < mike> (Pizza is made and in the oven here in Waterloo.)
18:55 < pcjc2> which numbers want closing in the trackers?
18:56 < mike> 1680214 and 1680168, but they should be independently verified.
19:20 < mcmahill> cory, where do you work?
19:21 < corycrossq> Oh, I forgot gnetlist is the program I'd have to modify to add arbitary symbol->part mappings
19:21 < corycrossq> Small company in Seattle, Component Engineering
19:22 < corycrossq> They needed an engineer with CAD experience; they were using Eagle *shudder* my wrist still cringes from the mouse usage
19:23 < corycrossq> Will gnetlist be the favored netlister for a while?
19:23 < pcjc2> should be
19:23 < corycrossq> great
19:23 < mcmahill> My feeling is that gnetlist should always be.
19:23 < pcjc2> Steve Meier has a version (basically a fork) which does hierarchical buses
19:23 < mcmahill> but hopefully over the next year it will become much better than what we have now
19:24 < pcjc2> And there is gnetman (but I'm not sure it fits in the picture)
19:24 < mcmahill> gnetman is more geared to spice simulation for larger chip designs
19:24 < pcjc2> Peter B and myself have done / are doing some design work to improve the netlisting data-structures and that side of things
19:24 < pcjc2> (I'm hoping at some stage to make libgeda track "netlist" connectivity at least at a per-page level, on the fly.
19:25 < mcmahill> speaking of yours and peters work...
19:25 < pcjc2> This shouldn't affect the part->symbol mapping side of things
19:25 < pcjc2> yes..
19:25 < mcmahill> did you guys have any thoughts about getting information back out of pcb?
19:25 < mcmahill> specifically in the dbus world?
19:25 < corycrossq> pcjc2: just the answer I was looking for :) thanks
19:26 < mcmahill> I've been wondering if there should just be some fd that actions which provide information can write to
19:26 < pcjc2> the DBus support I added to PCB supports an integer return code from every action
19:26 < pcjc2> but it is hard coded at 0 for now, as the actions don't return codes
19:26 < mcmahill> thats one thing which has bothered me for a while
19:26 < pcjc2> This is bad for things like asking PCB to file->open something, or to run an action script
19:26 < mcmahill> on one hand we have all these actions and can script many things
19:26 < mcmahill> but as you clearly know, you never know if anything worked
19:27 < mcmahill> and forget about asking for some data to come back
19:27 < pcjc2> I did hack a version which gave return values (to stdout), but the most immediate problem was just knowing the action had finished. DBus does that for us
19:27 < pcjc2> That was the problem in xgsch2pcb
19:27 < pcjc2> we used files on disk for output from PCB
19:28 < pcjc2> we make a backup copy of the PCB, ask PCB to save the current layout to disk
19:28 < pcjc2> then (when its finished saving), update the layout with xgsch2pcb, and ask PCB to reload it
19:28 < mcmahill> While I was framing my shower I was thinking that an action which simply tells you the minimum space between any copper in a design could be used to do a pretty good testsuite of the connection code
19:28 < pcjc2> assuming the units are suitably defined, that fits well with the current integer return value setup
19:29 < pcjc2> In some respects, the DBus interface I implemented was a half-way house
19:29 < mcmahill> you'd have a whole bunch of .fp or .pcb files each with some particular combination of things like two square pads, two circular pads, one each, etc)
19:29 < pcjc2> it has one method really, which takes a string, which PCB processes as an action
19:29 < mcmahill> then you'd have an actions script which would load each file, compute the minimum copper distance and write it out, and go to the next.
19:29 -!- peterbrett [~peter@xxxxxxxxxxxxxxxxxxxxxxx] has quit [Ping timeout: 620 seconds]
19:29 < mcmahill> then you could compare that with the known correct answer
19:30 < pcjc2> I see the usefulness in terms of checking regressions
19:30 < mcmahill> this seems like a fairly easy way to really put that bit of code through some real tests.
19:30 < pcjc2> (Presumably the correct answer is computed with pen+paper, as the test files are designed)
19:30 < mcmahill> yes
19:30 < mcmahill> and in most of the cases I can think of, it is easy to calculate by hand
19:31 < pcjc2> It isn't too much code to script PCB via DBus in a language like Python
19:31 < mcmahill> like the 2 rectangular pads case
19:31 < pcjc2> hell, I believe you could do it with the command line tool "DBus-send"
19:31 < mcmahill> it is obvious to a human where the closest line is
19:31 < pcjc2> sorry, "dbus-send"
19:31 < mcmahill> I've actually wondered about pcb --listen
19:31 < mcmahill> not even do it via dbus
19:32 < pcjc2> just needs the output mechanism then
19:32 < mcmahill> just because it relies on nothing but the pcb core
19:32 < pcjc2> I originally wrote my output to stdout
19:32 < pcjc2> but that doesn't work so well, as PCB uses stdout too
19:32 < mcmahill> for the most part, pcb shouldnt' use stdout
19:32 < pcjc2> I did think of making PCB keep quiet on stdout (except return value), writing any debug stuff to stderr
19:32 < mcmahill> but I know there are a few places where it still does
19:33 < mcmahill> but thats why I was wondering about creating a FILE * which is for action output, one for action return code, and one for action error output
19:34 < mcmahill> then actions whch are supposed to tell you a value, can write to the output .
19:35 < mcmahill> what I may do is just implement this minimum space action (which would be useful anyway, you could find the minimum gap in your design) and give it some extra arguments that lets you log to a file or stdout
19:35 < mcmahill> anyway, back to the remodeling for a bit...
19:35 < mcmahill> oh, cory, that looks like cool stuff you guys do at work
19:37 < corycrossq> It's a really weird situation, actually. The bosses own 3 businesses and I'm mostly working on other stuff right now
19:37 < corycrossq> Controllers for wood pellet stoves, to be exact
19:37 < corycrossq> In addition to coding an inventory system (+ parts db)
19:38 < corycrossq> argh, at work I'm the only real programmer and I get to do all my work in Lisp and Python... you people and your C :) at least it isn't C++
19:38 < corycrossq> pcjc2: can you point me in the right direction on where to modify gnetlist for the symbol->part mapping?
19:39 < pcjc2> dan: this is an example of poking a DBus action in PCB via the command line:
19:39 < pcjc2> dbus-send --session --dest=org.seul.geda.pcb --print-reply --type=method_call /org/seul/geda/pcb org.seul.geda.pcb.actions.ExecAction string:'foobar' array:string:'blah','foo'
19:39 < pcjc2> method return sender=:1.80 -> dest=:1.86
19:39 < pcjc2> (nasty hey!)
19:39 < pcjc2> Cory: will take a brief look now - but I'm not a great expert on gnetlist
19:40 < corycrossq> Thanks
19:40 < corycrossq> Looks like I might be writing some of it in guile
19:40 < pcjc2> Do you mean symbol->footprint mapping?
19:41 < pcjc2> (gEDA doesn't currently have any concept of a part)
19:42 < corycrossq> I'd be inventing that part
19:42 < pcjc2> The most promising place to look is under scheme/gnet-gsch2pcb.scm
19:42 < pcjc2> it defines how gnetlist outputs a PCB file from a netlist (as used in gsch2pcb)
19:42 < pcjc2> s/from a netlist/from a desing/
19:43 < pcjc2> design (tired... typing going to pieces now)
19:43 < pcjc2> now this could do with an overhaul anyway
19:43 < pcjc2> It manually creates a PCB file, and has to "know" PCB's file format
19:44 < corycrossq> I think if I look in gattrib to see how it gets a list of all unique elements, that should be enough
19:44 < pcjc2> the "correct" way to do this is to produce a PCB action script, or contact a live running PCB instance - via a pipe, (or via DBus), and let PCB insert the components
19:44 < pcjc2> gattrib and gnetlist link against libgeda
19:44 < pcjc2> so in C, it is just a matter of traversing a linked list, and skipping objects of the wrong type
19:45 < pcjc2> "unique" elements I'm not sure of though
19:45 < pcjc2> inidentally, at last check, gsch2pcb doesn't handle slotted components well
19:45 < pcjc2> you can have refdes in PCB IC1a and IC1b, which it considers the same (IIRC)
19:46 < corycrossq> provided I do this halfway-well, it will replace that
19:46 < pcjc2> but gsch2pcb drops multiple footprints in the new schematic
19:46 < pcjc2> replace which bit?
19:47 < corycrossq> did I fully explain what I'm trying to do?:
19:47 < pcjc2> I got, parts and inventory db
19:47 < pcjc2> but perhaps not the full story
19:48 < corycrossq> well, for the mapping part, I want to be able to place a part ie "analog-comparator-1.sym" in gschem without any footprint or part information
19:48 < pcjc2> good
19:49 < corycrossq> if later add in, say, an AVR with a builtin comparator
19:49 < corycrossq> add in a mapping= attribute for the AVr processor
19:50 < pcjc2> Thats an intersting concept
19:50 < corycrossq> the program I'm writing reads the file in the mapping= attrib and builds the netlist to point to the proper pins on the processor
19:50 < pcjc2> I'm not sure I fully see the use case for it, though - as your output and connections would then be internal to the AVR
19:51 < pcjc2> I see the point entirely for generic sections of slotted components
19:51 < pcjc2> But usually, slotted components have all their pins mapped to pins on the "container" if you will
19:52 < pcjc2> (Perhaps excepting power pins, which are usually done as a separate symbol for the container anyway)
19:52 < corycrossq> if I begin drawing a schematic with the internal comparator, I then have to change the schematic if I later need those pins for something else
19:52 < pcjc2> true
19:52 < corycrossq> but after I draw the whole schematic up, then I can decide if I want to use the internal comparator or a different chip
19:53 < pcjc2> I guess it depends on what level of schematic you're wanting, functional, or physical
19:53 < corycrossq> yup
19:53 < pcjc2> your wiring would be different in both cases though
19:54 < pcjc2> for the external comparator, your output (and perhaps a pullup resistor, whatever), has to wire to a pin on the AVR (assuming similar functionality to an internal comparator)
19:54 < pcjc2> so you presumably need to change the schematic a bit if you change from one representation to another
19:54 < corycrossq> oh, the avr contains an external output
19:55 < corycrossq> just depends on where I need it
19:56 < corycrossq> but say you had a circuit of 12 NAND gates, I'd like to bind them in whatever order would lead to the least mess on the pcb
19:56 < corycrossq> and to whatever chip
19:57 < pcjc2> sure
19:57 < pcjc2> I didn't realise the AVR has an uncommited comparator
19:57 < corycrossq> if you had two chips, one with 4 NAND gates and one with 8 NAND gates you'd have to change the gschem symbol each time they changed
19:57 < pcjc2> in that case, sure, it is similar to a generics type implementation of slotting
19:57 < pcjc2> I don't like the way gschem does slotting
19:57 < pcjc2> your way is much closer to the way I'd expect it to be
19:58 < pcjc2> the gschem library should have generic parts
19:58 < pcjc2> possibly labeled with pin names, rather than numbers (V+, V-, Out) etc..
19:58 < pcjc2> and some way of tagging / grouping these things into components
19:58 < corycrossq> yup
19:58 < corycrossq> exactly
19:58 -!- Cesar [~Cesar@xxxxxxxxxxxxxxxxxxxxxx] has left #geda []
19:58 < pcjc2> (parts)
19:59 < pcjc2> (Without loosing any flexibility in the current way of doing things, nor the freedom to make a straight, "heavy" symbol which is a 1-1-1 symbol<->part<->footprint mapping
20:00 < pcjc2> has been suggested as a good idea for transistors too
20:00 < pcjc2> label the BJTs with C B and E
20:00 < pcjc2> then have a mapping between the footprint numbers and the actual signals
20:00 < corycrossq> hmm, I'm thinking this should actually be built in scheme and modify the parts right in gschem, communicating with an external program to get the correct mapping= name
20:00 < corycrossq> I like that
20:01 < pcjc2> I'm not sure I got the mapping= bit
20:01 < pcjc2> did you explain that somewhere before?
20:01 < corycrossq> I'd still have to modify gnetlist though, to check the mapping= attribute
20:01 < corycrossq> probably not
20:01 < corycrossq> it'd point to the file that says "C should be pin 1 of SOT-23"
20:02 < corycrossq> for a particular part
20:02 < corycrossq> well, particular (part,slot,footprint) tuple
20:02 < pcjc2> ok
20:02 < pcjc2> so it could refer to something in the parts database
20:02 < pcjc2> which says, for example
20:03 < pcjc2> LM741 opamp: Map opamp:V+ -> pin 2 opamp:V- -> pin 3 (etc..)
20:03 < pcjc2> and for multiple slots, in a dual / quad opamp etc..
20:03 < corycrossq> exactly! I must not be crazy if someone's getting the same ideas
20:04 < corycrossq> s/someone's/someone else's/
20:04 < pcjc2> I can't recall if I / we ever wrote any of this down
20:04 < corycrossq> I might've e-mailed a few ramblings once or twice
20:04 < pcjc2> but a proper parts manager was high on the wish list at CUED, so new users can just drop parts in and have them work
20:04 < pcjc2> I spent some time "thinking" about these issues, but never got past some of the design challenges
20:05 < pcjc2> Thinking database wise, taking the NE555 timer as an example
20:05 < pcjc2> you might have a generic symbol representing NE555 and the derivatives of them
20:05 < corycrossq> I have a GUI interface to a postgres db waiting for this side to be implemented
20:06 < pcjc2> in the database, you want a generic 555 timer, with options of PDIP or SOIC etc..
20:06 < pcjc2> yet also, you might want to link a very specific part in the database, which inherits from the generic one
20:06 < pcjc2> but adds a specific manufacturers data-sheet, part-number, supplier's stock-code
20:07 < corycrossq> heh, that's exactly how I did it
20:07 < pcjc2> designing the schematic, you want to put in the generic part, but at some stage (producing a BOM, for example), perhaps you need to fill in more specifics about which part-code(s) you're going to use
20:09 < pcjc2> Problem currently, is gschem works with graphical symbols
20:10 < pcjc2> It might be possible to add a "parts selector" in parallel with the "symbol selector", which adds things in the schematic which are known to refer to a parts-database for more information
20:10 < pcjc2> presumably this could basically be a symbol, plus an attribute referencing a part (at whatever level of specialisation) in the database
20:11 < corycrossq> my workflow would leave that until the schematic is mostly complete visually
20:11 < pcjc2> ok, so you'd place a fairly generic symbol
20:12 < pcjc2> Peter Brett and myself looked at a more circuit oriented data-structure for libgeda, something it currently doesn't have much concept of
20:13 < corycrossq> so I've grasped
20:13 < pcjc2> The symbols represent electrical entities, instantiations of sub-circuit definitions
20:13 < pcjc2> I never invisaged the "ports" or "pins" on those symbols corresponding 1:1 with a PCB footprint
20:14 < corycrossq> Mmhm
20:14 < pcjc2> If so, the netlists are purely "circuit" based up until the last stage of flattening (or just output, if / when PCB supports hierarchical netlists)
20:14 < pcjc2> you'd need a mapping which brings this to represent PCB pins
20:16 < corycrossq> Hmm, I think you just made my job 5000x easier
20:16 < pcjc2> Currently, I think the magic slot handling is probably too high up in the netlisting - should be lower
20:17 < pcjc2> (I hope thats not based on me promising to do some coding any time soon... this whole thing is a very slow work in progress!)
20:17 < corycrossq> no, a simple regex replace on the output netlist might solve hacking gnetlist
20:18 < pcjc2> and if the netlist format doesn't contain enough formatting / information to make that easy.. you could always make a new scheme backend which has a bit more useful info kept in.
20:19 < corycrossq> Okay, when I choose a mapping from symbol->part, the program tells gschem to give it a footprint and refdes corresponding to what it should be
20:19 < corycrossq> the output netlist has things like "U101-V+"
20:19 < corycrossq> which can easily be changed to U101-5 or whatever
20:20 < corycrossq> but this wouldn't allow any symbols to share the same pin name
20:20 < corycrossq> obviously bad, but it would give a good half-way point to have something testable
20:22 < pcjc2> why can't symbols share the same pin name?
20:22 < pcjc2> if you have multiple slots of an opamp, say, so there are multiple "V+" etc..?
20:23 < corycrossq> They should be able to
20:23 < corycrossq> and will be able to
20:23 < pcjc2> could get use U101a and U101b to get round it
20:24 < corycrossq> clever
20:24 < pcjc2> the convention in PCB is to ignore lower case suffixes
20:24 < pcjc2> (gsch2pcb doesn't yet - implying they pass through gnetlist intact)
20:25 < pcjc2> currently, the "a" or "b" bit doesn't define anything magic about which slot is used, its just a refdes. The "slot=???" attribute does the selection work - I guess its that you're looking to extend / replace
20:27 < corycrossq> I think so
20:27 < pcjc2> This all sounds very cool - I can't wait to see it
20:27 < corycrossq> I think I've found how to do this quickly and easily
20:27 < pcjc2> I really ought to get to bed now... have some data-processing to do tomorrow, lots of graphs to produce for a report.
20:28 < pcjc2> (I've been "at" this code sprint for about 15 hours now!)
20:28 < corycrossq> goodnight, thanks for helping; this is going to be much easier than I thought
20:28 < corycrossq> wow!
20:28 < pcjc2> We started early in the UK / Europe!
20:28 < pcjc2> I just failed to go to bed yet
20:28 < corycrossq> I went to sleep when you were starting
20:29 < pcjc2> where abouts are you?
20:29 < corycrossq> west coast usa :) too bad there don't appear to be an asians here, otherwise I'd have more people around to help
20:30 < pcjc2> gEDA does seem to be predominantly US + Europe
20:30 < pcjc2> I'm not sure why
20:31 < pcjc2> I'm sure its not that Linux hasn't got to other places.... I see plenty of Indian programmers on the GTK+ mailing lists
20:32 < corycrossq> There's certainly lots of circuit board design going on, I wonder what they use?
20:32 < corycrossq> at work we'll be shipping out some stuff to be manufactured in china, if I get a chance to talk to anyone I'll ask
20:33 < pcjc2> Lots of software piracy
20:33 < pcjc2> all the Chinese students at Uni use the very best in commercial software ;)
20:34 < pcjc2> (I've been told - by people who visit, that you _can't_ buy non-pirated DVDs out there, and software is similar)
20:34 < corycrossq> they can't be pirating eagle, they're producing far too many products for that to be feasible :)
20:35 < pcjc2> Orcad
20:35 < pcjc2> goodness knows
20:36 < pcjc2> I spoke to some colleagues doing IC mask design (previously with mentor graphics)
20:36 < pcjc2> they asked their Japanese partners what software they were using (to standardise, as mentor graphics is apparently not available anymore), and the Japanese people reckoned they use software not available here in the UK
20:37 < pcjc2> possibly some Japanese company
20:38 < pcjc2> I've never used Eagle
20:38 < corycrossq> if most engineers don't speak english, it'd almost be easier to write a program from scratch than convert the language of an existing one
20:38 < pcjc2> it "looks" like its fairly integrated
20:39 < corycrossq> it is -- until it falls out of sync and doesn't tell you why
20:39 < pcjc2> (but KiCad looks integrated, and I'd not touch that with a barge pole)
20:39 < corycrossq> and it's almost only mouse-driven
20:39 < pcjc2> I'm not against integration - I'm looking to add more interactivity to gEDA (for university use, teaching, simulating circuits etc..)
20:40 < corycrossq> they at least included a scripting language, but it's unique and I'm not even sure if it's turing-complete
20:40 < pcjc2> but obviously, one of gEDA's strengths is the ability to separate the tools and design flows
20:40 < corycrossq> yeah, you might not have any interest in pcb layout, only simulation
20:41 < pcjc2> From what I saw, they have a big parts library, and a strong community sharing parts
20:41 < corycrossq> eagle has none of that, for sure
20:41 < corycrossq> libraries are a mess
20:41 < pcjc2> (Ours or Eagles)
20:41 < corycrossq> eagle
20:41 < pcjc2> (I know ours could be better)
20:41 < corycrossq> you can't have a symbol in one library file reference a footprint in another file
20:42 < pcjc2> I can never remember if it was Proteus or Protel I used before - can't stand it
20:42 < pcjc2> I used EasyPC a very long time ago, but that was back in the days when 386 was powerful, and DOS ruled the PC world
20:42 < corycrossq> and trying to keep libraries synced with one other person is hard enough -- I can't imagine trying to keep a third person in the loop at work
20:43 < pcjc2> a database is a good thing to have for this kind of work
20:43 < corycrossq> I like being able to choose whatever language I want to generate footprints
20:43 < pcjc2> allows more flexibility in indexing meta-data too, for finding parts
20:43 < corycrossq> Yup, I'll be able to release the code for that
20:44 < pcjc2> its unfortunate that postgres is a bit heavy weight to stick as a pre-requisite for every gEDA install
20:44 < corycrossq> I don't think I'll be able to give work-related parts out
20:44 < pcjc2> but the hard work is in the database design
20:44 < corycrossq> sqlite
20:44 < pcjc2> sqlite or whatever could do the job
20:44 < pcjc2> (was just typing that - you beat me)
20:45 < pcjc2> You're using postgres for now though?
20:45 < corycrossq> I'll draw up my database design nice and purty and post it to the list
20:45 < pcjc2> fantastic
20:45 < corycrossq> The GUI I designed uses dabo (dabodev.com) which supports multiple backends
20:45 < pcjc2> which tools do you see the database integrating with? Or will it be a separate part of the design flow?
20:46 < corycrossq> but that couldn't go into geda
20:46 < pcjc2> Licensing?
20:47 < corycrossq> I see the database as a back-and-forth with gschem and a small script in between gsch2pcb->pcb
20:47 < corycrossq> no, wxpython
20:47 < corycrossq> (it's all gpl, or has to be, anyway)
20:47 < pcjc2> this sounds good
20:48 < pcjc2> with the database as a "helper" program for gschem?
20:48 < corycrossq> yes
20:48 < pcjc2> gschem currently lacks IPC, but I added DBus support to PCB without "much" difficulty
20:49 < pcjc2> (Actually, its easy for pure GTK / GLib apps, but since PCB doesn't have just one framework, I had to code much more low-level, and roll my own main-loop integration and support in PCB)
20:49 < corycrossq> I'm looking to see if I can write everything in guile with a sqlite/postgres backend
20:49 < pcjc2> If you launch the database helper from gschem, there is always stdin/out and pipes etc..
20:49 < corycrossq> Heh, I remember reading about your pain
20:50 < pcjc2> Looking back on it
20:50 < pcjc2> it would have been better (I think) to make GLib a requirement of PCB, and tie the Lesstif mainloop into the GLib one (not too hard).
20:50 < pcjc2> It just not likely it would be accepted politically!
20:52 < corycrossq> can guile create windows from gschem?
20:52 < pcjc2> I don't expect so
20:52 < pcjc2> There might be API for creating a message box, but I can't remember
20:53 < pcjc2> (I steer clear of the guile bits where possible!)
20:53 < corycrossq> darn, I'll have to hack some C
20:53 < pcjc2> there is / was an old binding for GTK in guile
20:53 < pcjc2> but gschem doesn't use it
20:53 < pcjc2> and I don't recall it being particularly up-to-date. Not even sure it does GTK+-2.0 onwards
20:54 < corycrossq> according to my quick apt search, there's been a name change, but there is a library for it
20:54 < pcjc2> thats probably why a helper app is a nice way to do it - can launch whatever toolkit / GUI you want. (Guile can handle process spawning and IPC via pipes etc..)
20:55 < corycrossq> is python a requirement at all?
20:55 < pcjc2> GWave used GTK in Guile, and its almost dead because it never got off GTK1.0
20:55 < pcjc2> its used by some of the tools, such as Stuart's installer CD
20:56 < pcjc2> And our "toy" project manager front-end for gsch2pcb (xgsch2pcb) uses Python and GTK
20:56 < corycrossq> sweet, that's what I'll be doing
20:56 < pcjc2> gnome-gtk might be the new guile one
20:56 < pcjc2> bah - guile-gnome0-gtk
20:57 < corycrossq> yup
20:57 < pcjc2> we've never "required" it though
20:57 < pcjc2> I can't remember who I had this discussion with, but various people were keen the parts-manager should not be "inside" gschem too much
20:57 < corycrossq> my only other choices would be C or perl... neither appetizing
20:58 < corycrossq> oh, so you could have various part-managers
20:58 < pcjc2> I've wondered about adding helper-apps to preview footprints and the like before, but never had time to actually do it
20:58 < pcjc2> Python is pretty sweet for GUI coding
21:00 < pcjc2> Changing the subject:
21:00 < pcjc2> http://sourceforge.net/project/stats/detail.php?group_id=161080&ugn=geda&type=prdownload&mode=60day&package_id=181463&release_id=0
21:00 < pcjc2> thats quite interesting
21:01 < pcjc2> a surprising number of potential new users / upgrading users per day!
21:01 < pcjc2> I wonder what changed on 2007-03-18
21:02 < pcjc2> ok (thats when the download was added)
21:02 < corycrossq> :)
21:02 < corycrossq> that's just the cd-rom
21:02 < pcjc2> Start's installer CD?
21:03 < corycrossq> I don't know'
21:03 < corycrossq> yes
21:04 < pcjc2> From the sourceforge page to the "real" downloads, is 4 clicks
21:04 < pcjc2> I'm not sure i'd have got that far, if I'd come finding gEDA from sourceforge
21:04 < corycrossq> it's interesting that 1000 people needed an install cd for linux
21:04 < corycrossq> I wonder what distros they're using
21:04 < corycrossq> or is it a livecd too?
21:04 < pcjc2> I've no idea
21:05 < pcjc2> takes 5 clicks from SF to find the source to download
21:05 < pcjc2> I forget what a pain gEDA can be to install - given the CVS checkout just sits in my home-dir, and I build it regularly
21:06 < corycrossq> that's what debian's for
21:06 < pcjc2> of course, apt-get install geda-gschem and the related packages is amazingly easy
21:07 < pcjc2> but the packages in Ubuntu are outdated now
21:07 < corycrossq> I've been running them until last night
21:07 < pcjc2> are they stable (I can't remember how many crashers have been fixed since those)
21:07 < corycrossq> zero problems
21:08 < pcjc2> cool
21:08 < pcjc2> there are crashers probably
21:08 < pcjc2> updating embeded components multiple times (frees some variable it shouldn't, now fixed)
21:08 < pcjc2> hitting a key which GDK doesn't know the name of in some dialog boxes (string-compares into a NULL pointer, fixed today)
21:09 < pcjc2> the version installed at the Engineering department is so old, it still has the GSlice bug
21:10 < pcjc2> but the file-system image the user-terminals boot off is a pain to modify, and the admins don't want to do it
21:10 < corycrossq> I'll be upgrading to CVS at work too. I'm have a debian server + vnc for the others to use
21:10 < pcjc2> Instead, they "patch" on top of it with a merged file-system driver (can't recall what thats called). Yuck
21:10 < corycrossq> yup, if you don't make it easy people won't do it
21:11 < pcjc2> PCB compiles (and I think works) under windows
21:11 < corycrossq> with what I'm developing here, I can have the other engineers build the circuit visually, then I can fill in the parts later
21:12 < pcjc2> gschem can be made to work under Cygwin, but I think a native port would be tricky. Some non-portable routines are called - which could be fixed, but building all the deps, like guile under windows could prove difficult
21:12 < corycrossq> because generating new symbols and footprints is so arcane right now, I'll scare them away
21:12 < pcjc2> exactly
21:12 < corycrossq> and I don't want to use eagle anymore!!!
21:12 < pcjc2> I just installed an X11 remote connection for my supervisor to use LaTeX and emacs etc.. from his windows box
21:13 < pcjc2> Might have to switch to VNC
21:13 < corycrossq> running on my debian machine means only one place to upgrade, and keeps the libraries in sync
21:13 < pcjc2> XWin32 is dog slow with Gnome. Gnome uses fancy rendering stuff, which is very slow without the XRender extension - and I doubt XWin32 has that
21:13 < corycrossq> vnc works remarkably well and is simple to install
21:13 < corycrossq> and the windows client is very small
21:14 < corycrossq> tightvnc, anyway
21:14 < pcjc2> I just need to set it up daemon style, so when you connect, it spawns a new Xvnc for someone to login at
21:15 < pcjc2> (and fix the backup rsync scripts to run, get the software which syncs password files with the main department servers etc...)
21:15 < corycrossq> That I'd like to know, I'm just going to launch a vnc session for everyone in the office (7 ppl)
21:15 < pcjc2> I'm not sure if it can be done at present, but I'll try and remember to let you know if I succeed
21:17 < corycrossq> Right now it feels like they're back in the paper age with the way things are done. look at gerber printouts through transparencies!? wtf
21:17 < corycrossq> bah, I'm going to go eat
21:17 < corycrossq> thanks for the help
21:18 < pcjc2> http://forums.gentoo.org/viewtopic.php?t=72893
21:18 < pcjc2> night!
21:19 -!- pcjc2 [~pcjc2@xxxxxxxxxxxxxxxxxxxx] has left #geda []
21:49 -!- mike [~mike@xxxxxxxxxxxxxxxxxxxxxxxxxxx] has left #geda []
22:10 < mcmahill> I've been fairly happy with moving back to real VNC from tight VNC
22:10 < mcmahill> they've sped things up a good bit since the earlier days
22:15 < Ales> yeah tight vnc is nice
22:15 < Ales> I haven't tried real vnc in a while
22:38 < Ales> okay, code sprint over. :)
22:38 < Ales> time to post the sprint log
_______________________________________________
geda-cvs mailing list
geda-cvs@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-cvs