/srv/irclogs.ubuntu.com/2009/09/18/#ubuntu-classroom.txt

jcastro8 minutes until "How to Run a Jam!"15:54
dholbachjcastro: I would have dented it, but twitter is a bit screwed15:56
jcastrodholbach: I put it on identi.ca15:56
jcastrobut my gwibber is broken so I had to do it on the website15:56
dholbachyeah15:57
nizarusstrange my gwibber is broken too...15:59
sebnertwitter seems to be pretty br0ken :P15:59
jcastromaybe that's what's breaking gwibber15:59
jacoboddly enough gwibber is working here. it usually drops all of my messages16:00
dholbachbuenos dias!16:00
jurebaHola!16:00
nizarussalamou alaykoum :)16:01
jcastrolet's give it a few more minutes for the stragglers16:01
jcastroin the meantime introduce yourselves!16:01
* dholbach is Daniel Holbach from the Ubuntu Berlin team - and we'll have a Jam on 3rd October! :)16:01
pleia2I'm Elizabeth Krumbach from the Pennsylvania team :) we're having a mythbuntu jam + doc jam16:02
jurebaHi, this is Jose from Madrid, Spain16:02
* ianto is Christopher Swift of Ubuntu Cymru (Wales) - And our Jam is in the nation's Capital library on 3 - 4 October16:02
dpmhi everyone16:02
jacobubuntu-us-ohio here, _still_ figuring out details on a jam in Cleveland16:02
* jcastro is jorge castro from ubuntu-michigan16:02
sbco/  I'm Søren Caspersen from the Danish team. We hope to have a bug jam, but are not entirely sure yet16:02
* nizarus is Nizar Kerkeni from Tunisian LoCo we are planning to run our first jam 16:02
* andol is Andreas Olssom from the Swedish LoCo. We will have a (bug) jam the 3rd of October.16:02
dholbachjames_w: Jam in Bristol?16:03
james_walways16:03
james_wmy life is one big sticky mess16:03
jcastrook, before we start, if you're participating in the global jam, then your loco should be listed here:16:04
jcastrohttps://wiki.ubuntu.com/UbuntuGlobalJam/Events16:04
jcastroplease add yourself if you haven't already16:04
jcastrook let's get started!16:05
jcastrofirst of all, welcome!16:05
* dholbach hugs y'all :-)16:05
jcastroThis session is for local teams who want to know how to run what we call "Jams"16:05
jcastrohttps://wiki.ubuntu.com/Jams is the URL16:05
jcastrofor those of you who want to read ahead16:05
jcastroSo basically, a Jam is when a bunch of ubuntu enthusiasts get together and do something useful for ubuntu.16:06
jcastroanything from installfests, bug jams, packaging courses, you name it16:06
jcastrolast year we had a "Global Bug Jam", which was a big bug triaging session all around the world16:06
jcastrothat went so well that we decided to do one huge "Global Jam", so LoCos could work on all sorts of things that interest them16:06
jcastroSo you can do Doc Jams, Testing Jams, Translations Jams, as well as Packaging and Bug Jams.16:07
jcastrowhatever interests your LoCo16:07
jcastroso for example on the sign up page you'll see LoCos signing up for different jams16:07
jcastroor even doing their own, like NY is focusing on security, and Pennsylvania is doing mythbuntu16:08
jcastroand california still doesn't know what it wants to do. :D16:08
dholbach:-)16:08
jcastrothe most important thing to remember about holding a jam is that the key to success is for the Local Team to get together16:08
dholbachif you're a bit bigger team and there's various interests you can also think about nominating people who take care of the organisation of parts of the jam16:08
jcastrothe purpose is to bring people together in real life and mentor each other16:09
dholbach(somebody takes care of Translations and is the "go-to" guy for that, somebody else does bug stuff, etc.)16:09
jcastroso if you hold a jam and you feel like you didn't accomplish too much then don't worry about that16:09
jcastrobecause as your LoCo grows you'll get better at that kind of thing16:09
jcastroyou should concentrate on having a good time and learning16:09
jcastrodevelopment of your team should be the priortiy16:10
jcastrook, so, since lots of people have been running Jams now we have put together a list of tips and tricks16:10
jcastrohttps://wiki.ubuntu.com/Jams16:10
jcastroUsually the tough part is getting a venue16:11
vubuntor6765hello16:11
jcastroif you're participating in the global jam you hopefully have a venue already picked out.16:11
jcastroThis can be difficult, one person wrote in to me that he couldn't find a place because they needed X amount of people, but he couldn't get X amount of people to show up without a venue!16:11
dholbachand if you have just a few people participating you might want to consider inviting people to your house... Ubuntu people usually behave themselves. :-)16:11
jcastroRight, another good place is your local library16:12
jcastroor civic center or something.16:12
iantoI second the library, it was what the Welsh team is using! :)16:12
afterlastangeltomorrow is Software Freedom Day16:12
iantos/was/is/g16:12
brobostigon:)16:12
jcastroso they key parts to the venue would be normal things that geeks need16:12
jcastroso power and internet16:12
jcastroa projector is also useful because you can do tutorials and things on the screen while other people see what you are doing16:13
jcastrofor bug jams we keep a projector handy16:13
jacoband a supply of caffeine? ;)16:13
jcastroso when a person get's stuck on a bug we put it up on the big screen and discuss it16:13
jcastrothis is useful because the experienced people end up telling their knowledge to the new people.16:13
jcastroand something like bug triaging is a skill that you forget if you're not doing it all the time16:14
jcastroso it helps the experienced people stay sharp16:14
jcastrobecause humans are good at becoming experts at something if we teach someone else to do it16:14
jcastroand yes, jacob brings up a good point16:14
jcastroyou should plan for sustinance16:14
jcastroso if you're having a 12 hour jam you should plan in for a lunch/dinner somewhere16:15
brobostigonfood and drink.16:15
jcastroright16:15
jcastrofor example like most LoCos, ours does not function without beer.16:15
jcastroso you need to plan for these things ahead of time16:15
jcastroIf you meet at a local restaurant (which is commong), you'll want to get reservations, etc.16:15
jcastrowe always have to ask for certain tables with power access, etc.16:16
jcastrook, so that's all I have for venues16:16
jcastroanyone have any tips to share?16:16
brobostigonfacilities, is you have disabled members.16:16
jcastroah, that's a good point16:17
jcastroaccessability is important for a bunch of things16:17
jcastrolike, if you have your meeting in the smoking session of a pub but you have 3 underage non-smokers16:17
jcastrothat would affect your attendance. :D16:17
dholbachhahaha16:17
jcastroA long time ago there was this story of this guy who got invited to speak at LinuxWorld but they wouldn't let him in because he was underage16:18
jcastrobut anyway ...16:18
dholbachif you can, try to plan in enough time for everything, 2-3 hours might be just enough to get to know each other, get everybody set up and a quick introduction :)16:18
brobostigonwe have a member who requires a wheelchair, so venue wheelchair access.16:18
jcastroalso don't forget other supplies16:18
jcastropeople will always need power strips, ubuntu CDs, etc.16:18
jcastroyou'll never know when that ethernet cable might come in handy!16:19
dholbachI take with me an extra harddisk with Karmic ISOs for the Test Jam part16:19
jcastrook, after you have a place let's talk about promotion a bit16:19
dholbachsomebody is going to bring a local mirror on his laptop16:19
jcastrothis is basically telling people in your area about the event16:19
jcastrothis involves mailing other mailing lists16:19
jcastroperhaps contacting your local lug16:19
jcastroputting up flyers at the local PC shops16:20
dholbachthe Berlin team is also mailing local Debian developers16:20
jcastroor whatever other creative thing you can think of16:20
dholbachTV Ads, Magazine Ads, everything is OK ;-)16:20
jcastroheh16:20
jcastroso hopefully by now people in your local area kno0w about the global jam16:20
jcastrobut it's never too late to keep sending out stuff16:20
dholbachand try to be precise about what you're going to do there16:21
dholbachprobably the first question you're going to get is: will you help us fix our Ubuntu installation?16:21
dholbachor: is this tutorials and workshops and stuff?16:21
dholbachbetter be clear about hands-on-making-ubuntu-better16:21
dholbach:)16:21
jcastroright16:22
jcastroalthough invariably someone always shows up needing help16:22
jcastrowhich is fine too of course16:22
dholbachsure16:22
jcastroalso, the time leading up to the jam is a good time to prepare attendees16:22
jcastroif you're doing bug stuff and stuff you'll want to make sure people have launchpad accounts before hand16:23
dholbachand gobby installed :)16:23
jcastroif 30 people show up and they all need lp accounts it could eat up precious together-time16:23
jcastroso usually reminding people is a good idea16:23
iantoSome venues may need for example, a library card to enter ^16:24
jcastrodholbach: oh, we should add gobby to the Jams prereq section16:24
jcastroianto: good point16:24
dholbachjcastro: on it16:24
jcastroso there's all sorts of ways to promote stuff16:24
jcastroanyone have any other  tips?16:24
jcastrothe wiki page lists obvious things like twitter/facebook, etc.16:24
jacobperhaps video streaming parts of the event? ustream.tv/mogulus are nice16:25
jacobs/mogulus/livestream/16:25
jcastroright16:26
jcastroalso, lots of pictures16:26
pleia2we have a lot of local tech groups and non-profits that don't have a linux focus, but have been interested in events, contacting them with event info is great16:26
jcastrowe like to have at least one photo per loco who participates to make a big collage16:26
jcastropleia2: yeah, events like this are good for people who go to computer groups who have heard of that ubuntu thing but would  like more information16:27
dholbachhttps://wiki.ubuntu.com/UbuntuGlobalJam/Stories16:27
dholbach^ we want you on there :)16:27
jcastrothe part after the jam is also important16:28
jcastrowe like to see planet flooded with stories and pictures of people having a good time16:28
jcastroone thing that we just added is the Testing Part of the Jams:16:29
jcastrohttps://wiki.ubuntu.com/Jams/Testing16:29
jcastroif you have a LiveCD of Karmic (the beta will be out the thursday before the jam)16:29
jcastroyou can boot it up, and right from there do a submission to the hardware database16:29
jcastroand run the little tests and all that16:29
jcastrothis is very important because the weekend after beta we have tons of people all over the world gathering together16:30
jcastroand since it's really easy, just booting into a liveCD, perhaps it's something you can use to warm up new people with16:30
dholbachand we have a lot of test cases, so everybody can grab a few: https://wiki.ubuntu.com/Testing16:31
dholbachif you have a few spare USB keys, you can easily use usb-creator to create live-usb-sticks and ask people to test with them16:31
jcastroespecially with the fresh beta, that will be real handy!16:31
dholbachyep16:31
jcastrosince people will be bringing all sorts of hardware16:31
jcastroand a livecd won't break their existing computer16:32
jcastroso it's a nice low-barrier/high-win of awesome.16:32
dholbachAWESOME16:32
jcastrodo we have anymore tips?16:32
jcastroI think we've covered most of the things you need16:32
jcastroanyone have questions or comments?16:32
dholbachare there any concerns you still have or things you're unsure about?16:33
jcastroany comments from the last jam for those of you who have participated in the past?16:34
dholbachor maybe what kind of jams did you do the last time and what are you trying out now?16:35
jcastrobeuller?16:37
dholbachbrobostigon, pleia2, ianto, dpm, sbc, jureba, nizarus: you guys are all set?16:37
dholbachor is there anything that's still unclear or problematic?16:37
iantodholbach: Yep16:37
brobostigondholbach: yes.16:37
nizaruso/16:38
dholbachall good... all jams planned? :)16:39
dpmall set16:39
dholbachany great tips or tricks from you?16:39
sbcdholbach: My biggest problem is getting people to show up. A jam with just me will be kind of boring. Hopefully people will respond to my mails / forum posts going out this weekend.16:39
dholbachor what are you most excited about?16:39
dholbachsbc: try the "contact team" feature of LP16:39
dholbachsbc: and mention that there's beer after the event!16:39
sbcdholbach: We have a fine working mail list, problem is if people have the time / want to. But I hope so. And beer alwas works as a lure ;)16:40
vojtech_ti have a question. is it good idea to run jam only virtually -- via audio/videoconference (ekiga), irc or something like this?16:40
andolsbc: Well, if nothing else, you'r welcome to Linköping :)16:40
brobostigondholbach: if i can attend ubuntu-cym's, i will do beer organising, :)16:40
iantoClub Ubuntu did that last year ^16:40
dholbachvojtech_t: sure... if there's no way around it, you can do that16:41
vojtech_tour problem is, that there are about 10 interested in Jam in the Czech rep. bud they are from six cities/towns16:41
dholbachgenerally it's just preferrable to meet up and get to know each other16:41
vojtech_ts/10/10 people/g16:41
dholbachit's so much easier to have a chat and help each other when you can just have a look at somebody else's screen16:41
dholbachvojtech_t: are those 10 people spread over the whole country?16:41
vojtech_tunfortunately yes16:41
dholbachah I see - that can be difficult then16:42
dholbachalthough... there's always a good reason to meet in Prague, isn't there? :-)16:42
iantoOh a question, how late do we leave it until we go out for a drink without feeling guilty? :)16:42
nizaruswhat if we havent an experianced user ?16:42
dholbachianto: in Berlin we plan to be around from 11 to 1916:43
vojtech_tdholbach: Prague isn't good idea... I hear them all saying "oh no, everything is in Prague..." (I'm from Prague)16:44
dholbachnizarus: that's a good question16:44
dholbachvojtech_t: I see what you mean :)16:44
dholbachnizarus: if you head to https://wiki.ubuntu.com/Jams you can take a look at the top bar there (Testing, Translations, Bug, etc.)16:45
nizarusyes dholbach16:45
brobostigonbudweiser budvar, rocks.16:45
dholbachI think at least Translations and Testing should be self-explanatory and easy to prepare16:45
dholbachI agree that Packaging without having an expert might be a bit slow and complicated16:45
dholbachbut I guess the rest should be easier16:45
dholbachif the documentation doesn't make sense16:45
dholbachcome and talk to dpm, jcastro and me :)16:46
dholbachand mdke and davmor :)16:46
nizarusin each cases having tutors is recommended16:47
jcastronizarus: if you don't have an experienced packager then don't do a packaging jam, I would start with a test jam and live CDs16:47
YoBoYdholbach: come where? :p16:48
dholbachYoBoY: hm?16:48
dholbachah ok :)16:48
YoBoYfor the doc16:48
dholbachjust talk to us on IRC or mail us16:48
dholbachand we can improve the docs16:48
YoBoYwe have shared some ideas last time, but i don't know yet what to do exactly16:49
dholbachYoBoY: what are you thinking about?16:50
YoBoYupgrading doc for karmic, erasing old docs (related to no more supported releases), making wanted pages, ...16:51
dholbachah ok16:52
dholbachwell there's a bunch of tasks at https://wiki.ubuntu.com/Jams/Docs#Tasks16:52
sbcandol: Thanks, but 5 hours each way is a bit much for transport time :) If you had jams in Malmö or Lund that might be closer.16:53
YoBoYho this page is more complete than last time i saw it16:53
dholbachYoBoY: mdke put a lot of work into it16:54
YoBoYi see, great work16:54
jcastrook well, that's pretty much it16:55
jcastrowe got through a bunch of it quickly16:55
jcastroas always, feel free to ping myself, dpm, or dholbach if you have questions16:55
dholbachor ask in #ubuntu-locoteams16:55
iantojcastro: off-toopic, but can I ask what happened to yesterday's meeting? there were lots of us waiting in #ubuntu-meeting and nothing happened16:56
dholbachthere's a lot of experienced loco team contacts in there :)16:56
dholbachrock on everybody!16:56
jcastroianto: we rescheduled it for next week because no one showed up in #ubuntu-locoteams16:57
jcastroianto: those meetings are in #ubuntu-locoteams afaik16:57
jcastrohmm, now I am confused16:57
jcastroah no, they're in here16:57
iantojcastro: You emailed saying there was an overwhelming turnout and jono tweeted -meeting16:57
iantoabout 10 mins before16:58
jcastro-meeting? I did16:58
jcastrosigh.16:58
jcastrothat was a mistake on my part.16:58
jcastrook, next week for sure16:59
jcastroin here.16:59
jcastroianto: sorry about that. :-/16:59
iantoOK no problem ^16:59
jureba*17:15
=== egon_ffj1 is now known as egon_ffj
=== egon_ffj1 is now known as egon_ffj
wubbbiHello :)19:44
* funkyHat dances19:57
* ikt dances19:58
sistpotyhiho20:03
* sistpoty just quickly finishes a mail and will then start, ok?20:03
iktok :)20:04
=== pleia2 changed the topic of #ubuntu-classroom to: Ubuntu Classroom || Support in #ubuntu || https://wiki.ubuntu.com/Classroom || https://wiki.ubuntu.com/Packaging/Training || Now: Fri Sep 18 @ 19:00 UTC: Fixing FTBFS; Upcoming: Thu Oct 1 @ 06:00 UTC: Ubuntu Development Q&A || Run 'date -u' in a terminal to find out the UTC time
sistpotyso who's around for the FTBFS session?20:05
* Rail is20:05
sistpotythanks pleia220:05
pleia2sure thing :)20:05
* norax_ is20:05
* sebner waves 20:05
* funkyHat is ^·^20:05
* ikt dances20:05
ikti mean hi20:06
sistpotyis geser around as well? :)20:06
* funkyHat dances on ikt 20:06
gesersistpoty: yes20:06
sistpotyexcellent, then let's get started20:06
geserI'm already looking for a good example20:06
sistpoty:)20:06
sistpotyfirst off, our recent archive rebuild showed a lot of packages, that fail to build from source (that's what FTBFS stands for)20:06
sistpotyyou can see the results at http://people.ubuntuwire.org/~wgrant/rebuild-ftbfs-test/test-rebuild-20090909.html20:07
geserhttp://launchpadlibrarian.net/32020496/buildlog_ubuntu-karmic-i386.libofa_0.9.3-3_FAILEDTOBUILD.txt.gz looks like a good candidate20:07
sistpotyyes, let's take this one20:08
sistpotyfirst off, a number of packages have already been fixed on the list20:08
sistpotyso please first check if the version in the archive is not already newer than the one in this list20:09
sistpotyhowever there are more good sources to look at in this list...20:10
sistpotythe "PTS" link goes straight to the debian package tracking system20:10
dhillon-v10hi all how are you guys doing?20:10
sistpotymaybe unstable already has a newer version20:10
sistpotythe "BTS" link goes to the debian bug tracking system20:11
sistpotyeventually there's already a bug and/or a patch there20:11
sistpotylet's check20:11
c_kornsorry, I am late. which bug are you on currently ?20:12
RoAkSoAxc_korn, http://launchpadlibrarian.net/32020496/buildlog_ubuntu-karmic-i386.libofa_0.9.3-3_FAILEDTOBUILD.txt.gz20:12
sistpotyc_korn: libofa from http://people.ubuntuwire.org/~wgrant/rebuild-ftbfs-test/test-rebuild-20090909.html20:12
c_kornthanks20:12
dhillon-v10quit20:12
sistpotynow in this case, we're lucky, because at http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=504902 there already is a patch :)20:13
stlsaintlo all20:13
geserone should also look at the bugs in LP for that package in case an other contributor fixed it already and waits on sponsoring20:13
sistpotyhttps://launchpad.net/ubuntu/+source/libofa/+bugs20:14
sistpotymaybe we'll pick another package, where it's up to us to do the work?20:15
* sistpoty looks for a good one20:17
geserlike http://launchpadlibrarian.net/31983196/buildlog_ubuntu-karmic-i386.libcommoncpp2_1.7.3-1_FAILEDTOBUILD.txt.gz?20:17
* funkyHat doesn't see where libofa has been fixed ?20:18
geserfunkyHat: there is a Debian bug with a patch which "just" need to be packaged and sponsored into Ubuntu20:18
sistpotygeser: that one is excellent :)20:19
DasEior tor..20:19
sistpotyfunkyHat: here: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=50490220:19
geserwhile in itself easy to do (and should be done) it's not an good example how to fix it yourself20:19
funkyHatOk. Perhaps I will have a go at fixing that one then, should be good practice20:20
sistpotyok, so at first we'll be looking again at BTS and PTS, and at lp bugs of libcommoncpp220:20
sebnerfunkyHat: ping me and I'll sponsor it then20:21
gesersebner: to main?20:22
sebnergeser: ah, didn't check where it's based :\20:22
sistpotyso no fixes in BTS, no newer version in unstable and no open bugs in launchpad20:22
sistpotyfor libcommoncpp220:22
sistpotyI guess I could offer sponsoring to main for FTBFSes ;)20:22
sistpotyhowever there's another thing we could check for libcommoncpp220:23
sistpotyif you type apt-cache showsrc libcommoncpp220:23
sistpotyyou'll see a field called Vcs-Browser: http://svn.debian.org/wsvn/pkg-voip/libcommoncpp2/?op=log20:23
funkyHat(I'm not sure if there's a format I should use for the bug report, but I won't disturb the class any more)20:23
sistpotyand Vcs-Svn: svn://svn.debian.org/pkg-voip/libcommoncpp2/trunk/20:23
geser(or use the links on the PTS page for libcommoncpp2)20:24
sistpotyfunkyHat: along the lines "patch to fix FTBFS", please subscribe me if you've got a patch ;)20:24
sistpotyat this link (or the VCS link from PTS) is where development of the debianization happens20:25
sistpotyat a glance, there doesn't seem to be anything related to the FTBFS20:25
sistpotyfinally, let's grab the sourcepackage and get working20:25
sistpotywhile the source package downloads, let's try to see where the first error is that gcc reported20:26
sistpotyto make it more clear, I've pastebinned it (as taken from the build log)20:27
sistpotyhttp://paste.ubuntu.com/273724/20:27
sistpotyso we'll need to look add ciddr.cpp, lines 205 and 33520:28
sistpoty(they reside in the "src" subdirectory)20:28
sistpotyeveryone got that file open right now?20:28
funkyHatyep20:29
sistpotyI've pastebinned the relevant part again: http://paste.ubuntu.com/273729/20:30
sistpotynow gcc tells us about an "invalid conversion from 'const char*' to 'char*'"20:31
sistpotya const pointer means, that you cannot change the object (memory) it points to20:32
sistpotyin c++ (and in c as well) you can only get rid of that const by casting20:32
sistpotyhowever casting often enough is not safe20:32
sistpotye.g. if the memory is read-only memory (e.g. if it's a string constant like const char *s = "hello world";)20:33
sistpotyif you'd cast away the const for read only memory, the program would simply segfault when trying to write to it20:33
sistpotythe posix c string functions are a little bit nasty... you pass them a const char *20:33
sistpotyand you obtain a char * out of these, pointing to the memory that the parameter referred to20:34
sistpotyerm, I'm referring to strrchr for example (strchr and a few other follow that scheme)20:34
sistpotythis means, they implicitely get rid of the const (which might be dangerous)20:35
sistpotyin c there is sadly no alternative to it20:35
sistpotyhowever in c++, you can overload functions20:35
sistpotyand that's one of the gcc-4.4 changes20:35
sistpotythere exist two overloaded strrchr functions20:35
sistpotyone which gets a char * as parameter and returns a char *20:35
sistpotyand one which gets a const char * as parameter and returns a const char *20:36
sistpotygcc then selects the correct one based on the parameter passed into it (not by the return type)20:36
sistpotyso with gcc-4.4 you can no longer accidentally get rid of the const by calling strrchr20:37
sistpotyin this example (line 205) , cp is declared const, hence the return value (ep) must also be const20:37
sistpotyhowever as ep is written to later, we cannot simply declare it const as well20:38
sistpotylet's try to see what the entire IPV4Cidr::set method does20:39
sistpotythe only place, where ep is written to, is straight afterwards, so let's take a closer look at this snippet20:41
sistpotyhttp://paste.ubuntu.com/273732/20:41
sistpotystill following me so far?20:41
c_kornyes20:41
funkyHatJust about!20:41
jurebaya20:41
sistpotyok, good20:42
sistpotythis snippet tries to find the last occurance of a '/' in cp20:42
geserin case you missed this write access, gcc will inform you during your test build (-> FTBFS :)20:42
sistpotyand then sets it to '\0'20:42
sistpotywhich means it simply truncates cp at (i.e. before) the last '/'.20:43
sistpotynow comes the fun: this means that it writes to cp, which is passed as *const* into the method. tststs20:43
sistpotyat this point, we can either choose the unelegant and simple way, or try to get it right (which might mean pain, pain, pain)20:44
geserit looks like we found a bug20:44
sistpotythe simple way would be to assume that it worked before, and obviously the const'ness of cp is a red herring20:44
sistpotyso we can cast it away20:45
sistpotywith: const_cast<char *>(whatwewanttocast)20:45
sistpotyor in this case line 205: ep = strchr(const_cast<char *>(cp), '/');20:46
gesersistpoty: from a look at this function, should line 211 (cp = cbuf) be moved before line 202?20:46
sistpotygeser: that could be20:47
sistpotyhowever the program could also require the side effect that cp is in fact changed20:47
sistpoty(that's always hard to judge from a glimpse)20:48
geserthat's a problem :(20:48
sistpotyyes20:48
geserbut anyway: this function doesn't seem to the right thing in case someone passes a string of e.g. "192.168.1/24"20:48
sbeattiegeser: indeed.20:49
sistpotyyes, then it segfaults20:49
sistpotyof course if you're unsure, there's always one very good option to choose:20:49
gesersistpoty: I mean even if it's passed in a memory from e.g. strcpy20:49
sistpotyask upstream :)20:49
geserthe function takes our string, copies it (line 200), then strips it off at '/' and fills up the copy (still with the '/' with ".0" till it has 4 octects20:51
geserwhen now someone passes "192.168.1/24" it turns cp into "192.168.1" and makes cbuf contain "192.168.1/24.0"20:52
sistpotyyes, that looks like it20:52
geserdon't know what inet_aton will make out of it20:52
sistpoty(parse it and convert it to a non-string representation)20:53
geser(and probably fail at the parsing)20:53
geserthis is probably now a good time to look if upstream released a new version and look if it's fixed there else contact upstream with what we found out and let upstream handle it20:54
c_korntheir homepage announces: GNU Common C++ 2.0 Beta Candidate20:56
c_kornhttp://www.gnu.org/software/commoncpp/20:56
sistpotyhm... has anyone found a download link for the 2.0 beta yet?20:59
* sistpoty only sees 1.7.320:59
* geser too20:59
sistpotyand cvs seems to be 40421:00
c_kornseems so21:00
funkyHatftp://www.mirrorservice.org/sites/ftp.gnu.org/gnu/commoncpp/21:01
* BlackFate away21:01
sistpotyah, so it's called ucommon nowadays?21:02
sistpotyindeed it is, and I've also found our nice method again in the ucommon source package21:04
sistpotyit's in src/socket.cpp, line 78821:05
sistpotywhich a) has majored a bit, and b) seems to confirm geser's first idea how to fix it21:06
sistpoty<geser> sistpoty: from a look at this function, should line 211 (cp = cbuf) be moved before line 202?21:07
sistpotyso the string as is should be copied to cbuf, and only cbuf should get adjusted21:08
sistpotylet's try to do this21:09
sistpotyso we change line 205 to      ep = strchr(cbuf, '/');21:10
sistpotyany objection?21:11
sistpotyanyone still around? :)21:12
c_kornhere21:12
* geser is21:12
c_kornjust let's try if it builds :)21:12
funkyHathere, but this is over my head, I'll try to follow what I understand :)21:12
sistpotywell, for sure it won't because we didn't adjust the error in line 305 yet21:13
geseras one has seen here fixing FTBFS trains ones detective skill :)21:13
sistpotyfunkyHat: just ask if anythings unclear21:13
sistpotylet's take a look at line 30521:13
sistpotyany suggestions how to fix this?21:13
geserwhy does it need fixing? I seem to overlook something there21:14
c_kornline 335 ?21:15
sistpotyc_korn: yes, in the same file21:15
sistpotycidr.cpp:335: error: invalid conversion from 'const char*' to 'char*'21:15
sistpoty(from the original build log)21:15
geserline 335 makes more sense21:15
sistpotyerm, sorry :)21:16
c_kornhm, ep gets written again21:16
sistpotylooks like a copy&paste bug to me :)21:16
sistpotyso anyone with a suggestion?21:17
geserand when you compare the function name and what it does with the one we just fixed, then the fix should be pretty obvious21:17
nicolasvwcopy and paste fix ? ;)21:18
sistpotynicolasvw: righto, let's use the buffer again21:18
sistpotyand finally now it's time to do a test-build21:19
sistpotylet's add a changelog entry and build it in pbuilder21:19
sistpotyhint: if you're working on a package, which might need a number of patches21:20
sistpotyit might be easier to install the build-dependencies on your system21:20
sistpotyand do a fakeroot make -f debian/rules binary21:20
sistpotyto test-build21:20
sistpotyas this can then (ideally) reuse the already built files and will only built your new changes (and dependencies) again21:20
sistpoty-- i.e. if the upstream build system supports it21:21
sistpotyof course as last action, you should then always test-build it in a clean (=pbuilder) environment21:21
sistpotyso anyone with a buildresult yet?21:22
geseran other option is to start directly in a pbuilder (pbuilder login) but one has to don't forget to copy the changes outside the pbuilder before one exits it21:23
nicolasvw(or use the --bindmounts option to pbuilder)21:23
nicolasvw?21:23
geserwhat I currently do is using a pbuilder hook to get a shell if pbuilder fails so I can investigate or test more changes21:23
geserdoesn't pdebuild use it? never used pdebuild21:24
sistpotyheh, me neither... (as I once wrote my own pdebuild alike variant *g*)21:24
geserone has to find the way which works for one the best (I prefer not to pollute my host system with -dev packages)21:25
sistpotyok, it did build for me21:26
sistpotyso here's another thing that can be totally different21:26
sistpotylet's see if the package has a patch system. if so, we should add the fix as a patch, otherwise we can simply leave it as is21:27
* sistpoty usually looks if there's a directory called debian/patches, but what-patch of ubuntu-dev-tools also should give you an answer21:27
sistpoty(is that the right command *g*)21:27
sistpotyin this case, it uses dpatch21:28
sistpotyso here's my tricky way to apply it21:28
sistpotyas I already added a changelog entry, I now have got 2 .dsc files lying around21:28
sistpotyand can simple debdiff between these two21:28
sistpotythis however means that my changelog entry (which I don't want in there) is also in the debdiff21:29
sistpotybut with filterdiff, it can easily get excluded:21:29
sistpotydebdiff libcommoncpp2_1.7.3-1.dsc libcommoncpp2_1.7.3-1ubuntu1.dsc | filterdiff -x "libcommoncpp2-1.7.3/debian/*"21:29
sistpotythis one gives me the patch, which I'm putting into debian/patches21:30
c_kornhah, cheater. I never thought of that :)21:30
sistpotynow I've also need to add it to debian/patches/00list, so that it will get applied21:31
sistpotyand being a good citizen I should add a descriptive header to it21:31
c_kornbut the patch is now already applied to the sources. do you revert it manually ?21:31
sistpotyeither that, or I unpack the old sources (depending on how much unwanted damage I did to the sources)21:33
c_kornok21:33
sistpotyhowever how you do it is pretty much your choice, you could also use dpatch-edit-patch21:34
sistpotyhowever after manually fiddling with patch systems, I usually do another test-build (one never knows *g*)21:36
* c_korn usually sets up a git repository in the sources to get those patches :)21:37
sistpotybut what you should always do (after your final build) is to debdiff between the old and the new dsc file21:37
sistpotythat way you can make sure that only changes you really want are in the new version21:38
sistpotyshould I write something about adding a debian/changelog entry, or is this clear for everyone21:38
sistpoty?21:38
c_kornclear to me (dholbach explained it in a session)21:39
sistpotyso what's left to do...21:40
sistpotytesting your fix is always a good idea21:41
sistpotyso you should install the resulting package and test it21:41
sistpotyin this case its a library, so testing it gets a little bit hard21:41
sistpotybut you should install it, and check the file contents21:42
sistpotyeventually a lintian run on the resulting binaries might also be a good idea...21:42
sistpotyhowever don't try to fix these bugs, but rather look out for really critical stuff21:42
sistpoty(happened to me recently, that after a no-change-rebuild the resulting package was empty, of course that a must to get this right then)21:43
sistpotylooks all good here :)21:44
sistpotyso now it's time to upload it to the archive, or (if you don't have powers to do so) to request sponsorship21:44
sistpotybut wait, we're not yet done...21:45
c_kornwhat about update-maintainer ?21:45
sistpotyc_korn: of course, mea culpa21:45
sistpoty(I silently did that for my package when dpkg-buildpackage bailed out)21:46
sistpotyhowever ther's more to do21:46
sistpotyforwarding the bug and the fix21:47
sistpotyas the same version is also in debian, I'm forwarding it there.21:47
sistpotygeser: anything else that should get mentioned?21:48
sistpotyany questions from anyone?21:50
gesernothing missed (or I missed it too because of the routine in doing it (like calling update-maintainer))21:50
sistpotyheh21:50
sistpotyoh, I missed an important thing21:50
sistpotyas you've seen, fixing a FTBFS bug is not always trivial21:51
sistpotyso if you've come to a point, where you have no clue, it's a good idea to paste the build error (with a little bit of context) and the failing function in pastebin21:51
sistpotyand ask around (for example at #ubuntu-motu)21:51
sistpotyI'm quite sure, there'll always be someone in knowledge of the fix around, and most of the time will also give you an answer ;)21:52
sistpotyso concluding, I'd like to invite you all to #ubuntu-motu now, to get practice from the theoretical lesson right now21:53
sistpotyas a side note, until I'm too tired I'll be happy to sponsor fixes for FTBFS bugs ;)(21:53
sistpotygeser: oh, did you upload libcommoncpp2 already or did anyone else or should I do it?21:54
funkyHatsistpoty: good timing :)21:54
* DasEi lacks c- / gcc knowledge for that21:54
funkyHatI just subscribed you to my libofa bug21:54
gesersistpoty: no, I didn't upload it21:55
geserDasEi: there are also other FTBFS, if you are more familiar with e.g. perl look at those21:55
sistpotygeser: ok, then I'll uload it in 5 minutes (/me needs a short break first *g*)21:56
funkyHatI didn't really manage to follow the bug-fixing on this one as I don't know any c++, but I learnt stuff anyway :)21:57
sistpotywell, I'm already writing code in c++ since 7 years or so, but I still don't understand it yet :P21:58
funkyHat:D21:58
c_kornthank you sistpoty and geser for the great lesson. I am going for some bug hunting now :)21:59
sistpotythanks everyone for coming!21:59
sistpotyexcellent c_korn:21:59
funkyHatI'm going to wait for my first patch to be looked at before I try anything else, in case I got something wrong. Don't want to keep doing the wrong thing if I did :)22:00
geserfunkyHat: not everyone is that hard like that one, some are only applying a patch from Debian (like libofa) or adding a const for the same error like in the libcommoncpp2 case. you still can try and abort if it gets to hard22:00
funkyHatgeser: right, and I just fixed the libofa one, but I want to check I got it right, rather than fix another one wrong as well :)22:02
geserfunkyHat: not that bad, missed one thing22:04
geserforget to call update-maintainer22:04
funkyHatAh22:05
funkyHatNow I should debuild -S again, then debdiff again?22:05
c_korneh, gambas2 FTBFS but the same version is already in karmic ?22:09
geserfunkyHat: yes22:09
funkyHatgeser: I guessed and did it already :)22:09
geserc_korn: the toolchain or one of the build-dependecies changed since it got build.22:10
geserthat's the reason behind the archive test rebuild: to know that it still builds (we already know that it build (or not build) in the past)22:11
c_kornah, ok22:11
geserimagine a SRU (or security upload) you want to do later just to find out that you have to first fix a FTBFS too22:12
c_kornright22:12
c_kornthere is a newer version in debian but the changelog does not mention changes regarding the FTBFS bug: http://packages.debian.org/changelogs/pool/main/g/gambas2/gambas2_2.15.2-1/changelog22:13
geserc_korn: AFAIR this specific problem only appears since g++ 4.4 with eglibc 2.10 (Debian still has g++ 4.3 as default and eglibc 2.10 is only in experimental, so there was no test build with it in Debian yet)22:15
c_kornhm, so what should I do now? file a sync request (which would require a FFe first) and patch it then ? or just patch it and it has to be merged later with debian in karmic+1 ?22:16
geserc_korn: if there is no good reason for the new upstream version, patch it22:27
c_kornok22:27
c_kornhm, another invalid conversion in line 5. and I cannot constify it. http://pastebin.com/d3445f60522:33
c_kornI better ask in #ubuntu-motu22:42
sistpotyyep, let's move to -motu22:43
=== swoody_ is now known as swoody
=== croppa_ is now known as croppa
=== nizarus_ is now known as nizarus
=== evil is now known as Guest63068

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!