Saturday, 2009-03-14

*** tpb has joined #tp00:00
*** ChanServ sets mode: +o tpb00:00
*** DTRemenak has quit IRC01:17
*** DTRemenak has joined #tp01:45
*** peres has joined #tp01:50
*** llnz has joined #tp02:13
*** llnz2 has joined #tp02:32
*** llnz has quit IRC02:32
*** llnz2 is now known as llnz02:32
*** llnz2 has joined #tp02:41
*** llnz has quit IRC02:42
*** llnz2 is now known as llnz02:43
*** llnz2 has joined #tp07:31
*** llnz has quit IRC07:32
*** llnz2 is now known as llnz07:32
*** llnz has quit IRC09:41
*** llnz2 has joined #tp09:41
JLPgood morning everyone09:43
*** llnz2_64 has joined #tp10:03
*** llnz2 has quit IRC10:18
*** llnz2_64 has quit IRC10:21
*** llnz2 has joined #tp10:27
*** llnz2 has joined #tp10:28
mithroezod: ping?10:53
ezodmithro: pong10:54
mithroezod: so do you have some time to get together later today and hopefully knock of the rest of these singleplayer issues?10:55
ezodmithro: sure10:56
mithroI need to get some sleep first - but how does 7 or 8 hours from now sound?10:56
ezodshould be fine, that's my 6pm or 7pm (and your 9am or 10am?)10:58
ezodthat would give me a good 3 hours10:58
mithrookay10:58
mithroyeah about 10am my time10:58
ezodi'll be around10:59
mithroI'll try and get up a bit earlier to maximise the time10:59
mithrodo you have a list of things left to do?10:59
ezodi have a few things, but i'll spend some time before we start putting something more concrete together11:00
mithrothanks a lot11:03
mithroI really want to get a working release before GSoC starts as if we get accepted it'll be important for students to try out11:04
mithroanyway I'm off to bed11:04
*** llnz2 has quit IRC12:43
*** llnz2 has joined #tp12:47
*** jernejovc has joined #tp13:21
*** llnz2 has quit IRC13:23
*** llnz2 has joined #tp13:23
*** jernejovc has quit IRC13:31
*** jernejovc has joined #tp13:35
*** llnz2 has quit IRC14:21
*** llnz2_64 has joined #tp14:21
*** llnz2_64 has quit IRC14:49
*** peres has quit IRC15:39
*** Demitar has quit IRC16:01
*** llnz2_64 has joined #tp17:31
*** llnz2_64 is now known as llnz17:32
*** llnz2 has joined #tp17:37
*** llnz has quit IRC17:38
*** llnz2 is now known as llnz17:38
mithroezod: ping - just got up now, will have a shower and make a cup of tea - back in like 15 minutes18:01
ezodmithro: cool, im good to go when you are18:02
*** llnz has quit IRC18:06
mithroezod: so do you have a list of remaining release blockers somewhere?18:10
ezodmithro: i have a list on a piece of paper on my desk18:12
ezodi'll go through what i have here18:12
ezod1. wizard cleanup - particularly sizing - reference issue #5818:13
ezodhttp://code.google.com/p/thousandparsec/issues/detail?id=5818:13
tpb<http://ln-s.net/2zUu> (at code.google.com)18:13
mithroezod: I think I can fix the sizing issue pretty quickly18:14
ezodalright18:14
ezod2. more robust stopping18:14
ezodthere are cases where stuff gets left running still - non-deterministic __del__() and all - if we can figure out every possible exit after calling SinglePlayerGame.start() and catch them all with finally's or whatever, we should be able to completely fix this18:16
ezodi can do a bit of testing and be more specific about when stuff gets orphaned18:16
ezodand probably fix it too :)18:16
ezod3. format strings in XML files - python-specific?18:17
ezodwe are currently using stuff like %(rname)s directly in the XML files18:17
ezodif we allow it to proliferate any further it might cause problems with non-python single player stuff down the road18:17
ezodshould we nip that problem in the bud now?18:18
ezod4. separate commandstring bits out into <forced> tags18:19
ezodjust a cleanup thing i thought about18:19
ezodmight require me to modify libtpclient-py a bit too18:19
mithrothe __del__() should get called eventually unless the program crashes18:19
ezod5. update daneel-ai tarball and packages18:19
ezodself-explanatory, i can do this18:20
ezodmithro: ok, i'll try to figure out when it happens, i just remember making a mental note about it while i was working on something else18:20
ezodanyway, those 5 are all i can think of currently, it seems that our target of linux/tpserver-cpp/risk/daneel-ai is working fine for people otherwise18:22
mithrowell daneel-ai goes into a spin when it EOT timer is zero18:24
mithrowith 3 - how do you propose we solve it?18:24
ezodbtw, i proposed to do a talk about TP at Penguicon (http://www.penguicon.org), seems like a good fit and would get me free admission if they accept it :)18:24
mithrocoming up with our own format just because we don't want to use python's seems a bit silly18:25
ezodagreed - at least this way *one* language can use it natively ;)18:25
mithroezod: go ahead and submit a talk18:26
ezodcool18:26
mithroI think we 5) we probably need to do a release of everything involved18:27
ezodoh18:28
ezod6. SinglePlayer.py no longer needs to look in separate 'servers' and 'aiclients' directories18:28
ezodso we can ditch that in the installers18:28
ezodit still *does* look though, for now18:29
mithrookay18:34
mithroso I think we can ignore 318:35
mithrodo you want to finish 4 and 5?18:35
mithroI'll look at 1)18:35
mithro6) Make an all inclusive Windows binary18:36
mithro7) Make an all inclusive Mac binary18:36
ezod4/5 i can do18:39
ezodso looks like once 1 & 2 are done we can merge the singleplayer branches?18:42
ezodi'll find out what (if anything) needs to be done for 2 right now18:42
ezodmithro: btw, i don't suppose you by some extreme coincidence know a guy named alex flint who went to adelaide for cs?18:44
mithroezod: his name sounds kinda familiar - why?18:44
mithrodo you have a picture?18:44
ezodmithro: matter of fact, i do, sec18:44
ezodhttp://www.adelaide.edu.au/news/image2321/D.jpg.html18:44
ezodon the right18:44
tpb<http://ln-s.net/30m$> (at www.adelaide.edu.au)18:45
mithroyes I do know him18:45
ezodhe wrote a paper on a computer vision algorithm that would be extremely useful to me at school18:45
ezodbut i can't seem to find a current email for him18:45
mithrohe went to the same primary school I did and also did an internship at Google for 3 months18:45
mithroI believe he is in the UK now18:45
ezodwow, amazing :)18:46
mithrosmall world ha? :)18:46
mithroI have NFI how to contact him however18:47
mithrolooks like Iwanowitch will join us in about 30 minutes18:48
ezodmithro: ah well, i'll try one of the other authors - that made my day though :)18:48
mithroezod: why are the descriptions not kept in the xrced? why do you set them in the code?18:52
ezodwhich descriptions?18:52
ezodok, so it seems there are no non-crash situations that leave stuff started by SinglePlayerGame running18:57
mithrookay cool18:59
mithroezod: just a couple of hints next time you do wx stuff18:59
mithroalways use the flexgridsizer - it's the only one which autoexpands nicely18:59
ezodk18:59
mithroalways set things to be wxEXPAND in the sizeritem page18:59
*** llnz has joined #tp19:07
llnzhi all19:09
ezodhey llnz19:09
llnzhi ezod19:09
mithroezod: you don't seem to check the startup of various things19:09
mithroRunning server with cmd: ./tpserver-cpp -d --configure /dev/null --ruleset ../modules/games/tae/.libs/libtae --tp_port 55777 --game_load yes --game_start yes --network_start yes --add_players yes --autoadd_players yes --turn_player_threshold 100 --tpscheme ../modules/tpcl/guile/.libs/libtpguile --turn_length_under_threshold 019:10
mithro/bin/sh: ./tpserver-cpp: Permission denied19:10
CIA-69mavrinac libtpclient-py-singleplayer * rfb51e093e4f5 /tp/client/SinglePlayer.py:19:13
CIA-69Allow format strings to be in forced parameters in single player XML19:13
CIA-69files.19:13
CIA-69mavrinac tpserver-cpp * r4a25fc0f4bd1 / (tpserver-cpp-inplace.xml tpserver-cpp.xml.in): Clean up single player XML a bit by putting stuff in forced parameters.19:17
CIA-69mavrinac daneel-ai * r65e6f0478890 / (daneel-ai-inplace.xml daneel-ai.xml): Clean up single player XML a bit by putting stuff in forced parameters.19:20
ezodmithro: putting in a check for OSError exception - will that cover it?19:24
mithroezod: not really19:24
mithroyou want to check that the processes are still alive19:25
ezodah19:25
ezodPopen.poll() maybe19:26
ezodseems that returns None if the process is still alive19:33
ezoduh oh - i have Popen.kill() in there and that's only available in 2.619:36
ezodoh, nevermind, i already solved that :)19:39
CIA-69mavrinac libtpclient-py-singleplayer * rc0b103372489 /tp/client/SinglePlayer.py:19:43
CIA-69Check if single player processes are running and handle exceptions19:43
CIA-69gracefully.19:43
mithroalmost got this singleplayer dialog looking decent19:53
*** Iwanowitch has joined #tp19:56
llnzcool19:56
ezodshould this debian stuff be included in the daneel-ai tarball?19:57
mithroezod: probably not19:58
ezodok19:58
CIA-69mavrinac daneel-ai * rb013395e7949 / (daneel-ai setup.py): Bump version to 0.1.0 for packaging.19:59
mithrohey Iwanowitch20:00
IwanowitchHeya.20:00
IwanowitchOkay, err, so... The turn timer is not a reliable way to determine the end of a turn.20:05
IwanowitchDoes anyone know of a better idea or should I dig into tpclient-pywx?20:06
CIA-69mavrinac daneel-ai * rddf40daa1966 /setup.py: Install single player XML to share/tp/ instead of share/tp/aiclients/.20:07
ezodi can do new daneel-ai tarball and ebuild now or wait for a fix on that - verdict?20:11
mithroezod: I think lets fix the daneel-ai bugs first20:11
ezodok20:12
mithroIwanowitch: I'm not sure what you mean?20:12
mithroyou will always get a EOT message when the turn ends20:12
ezodebuild works much better now that setup.py works properly20:12
IwanowitchMmyeah, but I don't read those messages I think, I poll everything.20:13
mithroezod: should the turn-time be a spin control?20:13
mithroezod: or a slider maybe?20:14
CIA-69mithro libtpclient-py-singleplayer * r7516e1bbca13 /tp/client/SinglePlayer.py: Sort the return values.20:15
CIA-69mithro libtpclient-py-singleplayer * rcd8208f646bd /tp/client/SinglePlayer.py: Merge branch 'singleplayer' of git+ssh://git.thousandparsec.net/git/libtpclient-py into singleplayer20:15
ezodmithro: it's a matter of adding more parameter data types to the XML dtd and handlers for them in PopulateOpts20:17
mithrowell maybe everything which is an int should be a spinner control by default? make it easier to understand what it means20:17
ezoda spin sounds good to me - doesn't require a range, ergo doesn't require additional XML spec20:18
ezodcurrently it is validated as an int at least20:18
mithrothats good20:22
mithroGreywhind: ping?20:24
ezodmithro: is there a proper way to pull submodule changes?20:34
mithroezod: yes20:34
ezodas it is, git submodule update updates to the latest head specified in the commit of the parent repo, it looks like20:35
ezodso i've been just cding to the submodule dir and doing git pull20:35
ezodbut that seems like it's messing with stuff20:35
mithrogit submodule update20:35
mithrowhen you update libtpclient-py you then do a commit in the top level which tells tpclient-pywx to use the new version20:36
ezodok, by update do you mean a git pull in the submodule dir?20:36
mithroezod: when you commit20:37
mithroor a git pull20:37
ezodok, that's what i've been doing then20:37
CIA-69mithro tpclient-pywx-singleplayer * r51b3c5430b0d / (3 files in 3 dirs): Making the wizard look prettier.20:38
CIA-69mithro tpclient-pywx-singleplayer * r8ec8759f524b /windows/winConnect.py:20:38
CIA-69Merge branch 'singleplayer' of git+ssh://git.thousandparsec.net/git/tpclient-pywx into singleplayer20:38
CIA-69Conflicts:20:38
CIA-69windows/winConnect.py20:38
CIA-69mithro tpclient-pywx-singleplayer * r0a745e1dc3ba / (3 files in 3 dirs): Make the single player wizard prettier.20:38
CIA-69mithro tpclient-pywx-singleplayer * ra5a862e99fed /requirements.py: Always do an update in requirements.20:38
mithroezod: give that a go20:38
IwanowitchErr, how do I start a quick test server? Do I need everything of tpadmin for that?20:39
mithroIwanowitch: no - you only need tpadmin if you want to control the server after starting it up20:39
mithroif you just want to use a config file then it's not needed20:40
mithrodid anyone else see - http://freegamer.blogspot.com/2009/03/open-source-3d-landscape-generators.html20:40
tpb<http://ln-s.net/30nZ> (at freegamer.blogspot.com)20:40
ezodmithro: ok, so when you first clone the tpclient-pywx repo and switch to singleplayer branch, the submodules don't seem to know what to pull20:41
mithroezod: oh?20:41
ezodat least for me20:41
IwanowitchI see, it's a capital C on the command line options. Looked over that. :/20:41
ezodits that thing where it says You asked me to pull without telling me which branch you20:41
ezodwant to merge with20:41
ezodnormally i know how to fix that20:42
ezodbut in a submodule... what do you do?20:42
ezodthats what im worried is going to mess something up20:42
mithroezod: let me do a fresh checkout and see20:43
mithrogit submodule always references a "bare" head20:44
ezodmithro: it seems to be getting the right stuff, it just doesn't know it's on the singleplayer branch i guess?20:47
mithroezod: submodules don't know anything about branches20:47
mithrothey point at "bare" commits20:47
ezodok, so i suppose it's safe for me to manually checkout branches and pull20:48
mithroezod: yes, if you do a checkout of the singleplayer branch it's fine20:48
ezodhah, nice graphic :)20:50
mithroit's the windows installer graphic :)20:51
ezodwell looks good20:52
ezodfyi i am still having to manually comment out sizer.Show(True) and sizer.Hide(True)20:52
ezoddo we need those in there?20:52
mithroezod: they are suppose to hide/show the Label if nothing exists20:54
ezodok, they generate errors for me20:54
mithrofine a better way to do it and we can remove them20:56
CIA-69mavrinac tpclient-pywx-singleplayer * rd52840bb7ff0 /windows/winConnect.py: Use spin controls for integer-type parameters in single player wizard.21:02
mithrolooks like Greywhind has not pushed his fixes for the order window21:04
mithros/order/message/21:04
*** cherez has joined #tp21:05
mithrohi cherez21:06
cherezHey mithro!21:06
mithroezod: we need to test on windows21:06
mithrocherez: long time no see21:06
mithrocherez: I assuming you are hanging around for GSoC?21:06
cherezYeah, been damned busy with college.21:06
cherezNot really, I was a little homesick for free software development.21:07
cherezStill, if you guys are still in GSoC, you have my interest. :)21:07
mithrocherez: we could use testers right this very second :)21:08
cherezOh?21:08
ezodmithro: i set up a winxp box here the other day, so i may be able to do that tomorrow21:08
cherezHow might I be of service?21:08
mithrocherez: we are currently trying to get the singleplayer stuff into shape21:09
mithroso that we can do a release just before GSoC21:09
cherezAhh, so you are mentoring again.21:10
cherezAnd you just need testing?21:10
cherezSo, pull the latest off of git and run it?21:15
IwanowitchErr. Is it possible that Risk refuses to move past the second turn or is there something wrong in what I'm doing? :/21:18
IwanowitchI can clearly see 2 "turn finished frame received" events in the server debug log.21:19
IwanowitchAnd I only have 2 players (me and daneel)21:19
IwanowitchBut the turn doesn't end?21:19
* ezod is almost out of time21:31
ezodeverything looking good on the libtpclient-py and tpclient-pywx ends?21:32
ezodif so, can we merge singleplayer, or do we want to do win32 testing first?21:32
mithroIwanowitch: what is happening? it seems to be working here - can you explain better21:33
mithrocherez: you'll need to switch to the singleplayer branch first21:34
Iwanowitchmithro: I don't know... The server just doesn't seem to finish the turn, though there might be another reason for that. Though can't really think of one.21:35
mithrowhat do you mean by "finish the turn" ?21:35
ezodIwanowitch: have you checked out and recompiled the latest tpserver-cpp?21:35
ezodIwanowitch: we changed the params relating to the turn time last weekend21:36
IwanowitchYes, yes, I compiled just an hour ago.21:36
IwanowitchAnd I mean that it doesn't do any of the end-of-turn calculations and stuff, it just sits there as if no-one has finished his turn.21:37
mithroso you do an EOT in the client right?21:38
mithroand nothing happens?21:38
IwanowitchYeah.21:42
mithroezod: what do we have left apart from the Iwanowitch problem?21:46
mithroIwanowitch: so you started risk with one daneel-ai?21:46
mithrocan you send me the output on your console?21:46
IwanowitchThe server output?21:47
ezodmithro: nothing involving libtpclient-py or tpclient-pywx, to my knowledge21:47
ezodmithro: we still need to package daneel-ai though21:47
mithrowhen you do a21:48
mithro./tpclient-pywx21:48
mithropaste the complete output from that21:48
*** llnz2 has joined #tp21:48
mithroIwanowitch: your starting things with the singleplayer mode right?21:51
IwanowitchEh, I'm running the server from the command line right now, not from the single player wizard.21:51
IwanowitchLet me see there...21:51
mithrooh okay21:51
mithrowhich config file are you using then?21:51
ezodIwanowitch: sp wizard does some specific config stuff - check tpserver-cpp.xml or tpserver-cpp-inplace.xml for details21:52
mithroIwanowitch: you are using a quickstart config?21:53
Iwanowitchmithro: Yes, quickstart-risk-random21:53
IwanowitchWith SP it doesn't even go past one turn, hmmm...21:54
IwanowitchErr, wait.21:56
IwanowitchWhy is there an EOT timer running?21:56
* ezod must sign off shortly21:56
IwanowitchThe Turn Length option doesn't seem to do anything?22:00
mithroIwanowitch: hrm - you seem to be right22:00
mithroI just started a minisec game with just me in it22:00
ezodthat was what was changed by llnz last weekend22:00
ezodor maybe i did it22:00
mithroezod: do you pass the number of players to tpserver?22:01
ezodmithro: negative - shouldn't it know that from connections?22:01
mithroi'm not sure22:01
mithrollnz: poke poke22:01
ezodi don't think there's any such option22:01
IwanowitchThere's definitely options for max players and stuff in Risk.22:02
ezodanyhow, the relevant stuff is in the forced params in tpserver-cpp{-inplace}.xml22:02
ezodif necessary that should be easy to pass in22:03
ezodbut i have to get going now..22:03
*** llnz has quit IRC22:03
mithroit looks like EOT is actually occuring, but tpclient-pywx isn't getting the EOT message22:03
ezodthanks for hackathon #2 all :)22:04
CIA-69verhoevenv daneel-ai * r848af95c4020 /daneel-ai: Fix space/tab mixing22:05
CIA-69verhoevenv daneel-ai * rf728091a9064 /setup.py: Merge branch 'master' of git+ssh://[email protected]/git/daneel-ai22:05
ezodfeel free to assign bugs to me on google, im going to try to do more work tomorrow (including moving the todo items over from sf.net)22:05
CIA-69verhoevenv daneel-ai * rf8b543893f05 /daneel-ai: Fixed bot in infinite loop when EOT is undefined22:05
mithrollnz2: poke poke22:05
* ezod out22:06
IwanowitchI'm not entirely sure I didn't introduce new bugs with the fix, but it seems to work. Of course, not being able to play for very long doesn't really help...22:10
mithroIwanowitch: I think it's a tpserver-cpp bug22:10
mithroit doesn't appear to be sending EOT has finished packets22:10
IwanowitchYou're testing in minisec?22:11
IwanowitchBecause if so, this might just be quite a showstopper.22:11
mithroIwanowitch: yes22:13
IwanowitchAnything else for me to do? Otherwise I'm going to sleep.22:26
mithroIwanowitch: not really22:28
Iwanowitchmithro: Kay, let me know if anything comes up, I might be able to squeeze in some time tomorrow.22:30
mithroIwanowitch: okay22:30
IwanowitchNight.22:30
mithroadding minisec support would be a good goal22:30
IwanowitchYeah, I should do that, at least before all those students come crawling over the place.22:31
IwanowitchWill start tomorrow.22:32
*** Iwanowitch has quit IRC22:32
*** llnz2 has quit IRC22:39
*** JLP_ has joined #tp22:52
*** JLP has quit IRC22:54
*** JLP_ is now known as JLP22:54
mithrohey JLP22:59
JLPmithro: ahoy22:59
CIA-69mithro daneel-ai * r8f1c7b36a3f7 / (6 files):23:00
CIA-69Added submodules and a requirements.py to daneel-ai.23:00
CIA-69This should mean people only have to checkout the daneel-ai directory23:00
CIA-69and everything should just work.23:00
CIA-69mithro daneel-ai * r0a799a4cbbcb /daneel-ai: Merge branch 'master' of git+ssh://git.thousandparsec.net/git/daneel-ai23:00
mithroJLP: so do you know where we are at regarding the translation of tpclient-pywx? if you start up tpclient-pywx is it translated correctly?23:00
JLPmithro: all but the new SP parts, if i remember correctly23:01
mithroJLP: got time to give it a go?23:01
mithrowe should be able to fix the singleplayer stuff if you can point out the parts which are not getting translated23:02
CIA-69mithro tpserver-cpp * r5d9a955b6058 / (tpserver-cpp-inplace.xml tpserver-cpp.xml.in): Adding the over_threshhold_interval to make the server EOT.23:04
JLPmithro: i think i can do it tomorrow, it's 4am here now and i'll probably sloely fell asleep23:04
mithroJLP: oh okay23:04
mithroit would be good if you can test23:04
JLPmithro: first thing when I get up23:04
mithroJLP: for most of the stuff, it should just be a matter of putting _() around the strings23:05
JLPyup, i remember this part, and about some special thing when there are multiple parametrs in the string23:06
mithroJLP: yeah we need to convert them to the %(bha)s format23:08
mithroezod: I'm guessing you are really gone?23:10
mithrozzorn: poke?23:10
JLPmithro: yeah, i've already started doing this conversion about a month ago, i just need to find the right checkout on the right computer to continue it :)23:11
mithroJLP: dunno how well that will merge now23:18
mithrothere have been quite a huge number of changew23:18
mithros23:18
JLPmithro: yeah, well i can start over, when i get up i'll start, right now i can barely keep my eyes open so i should probably just head to bed23:20
mithrookay23:20
mithrohave a good night23:20
JLPok, see you in about 6 hours23:21
CIA-69mithro tpclient-pywx-singleplayer * r8bbca0806e30 /windows/winConnect.py: Add an error message when the singleplayer stuff doesn't start.23:24
CIA-69mithro tpclient-pywx-singleplayer * rcf0d0ab348cc /requirements.py: Small clean up to requirements.py23:24
CIA-69mithro tpclient-pywx-singleplayer * rc7f9a51f63cb /windows/ (winConnect.py xrc/SinglePlayerWizard.py): Small update for translation.23:25
mithroezod: hitting control-c seems to leave the tpserver-cpp running23:40

Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!