Sunday, 2007-08-12

*** tpb has joined #tp00:00
*** ChanServ sets mode: +o tpb00:00
*** guitsaru has joined #tp00:17
mithrogreywhind: ping?02:23
mithropschulz01: ping?02:24
pschulz01pong03:08
mithropschulz01: so umm, where are we at03:14
*** pschulz01 has quit IRC03:16
*** pschulz01 has joined #tp03:26
mithropschulz01: so umm, where are we at?03:29
mithrois the dependecy problem the only thing left?03:30
mithroand how do we make a repository which works for all the current versions of debian/ubuntu?03:31
*** zipola has quit IRC03:31
mithro(the python stuff should be pretty easy as it's only dependent on python being installed)03:33
pschulz01mithro: Goos questions...:-)03:37
pschulz01good03:37
*** zipola has joined #tp03:37
mithropschulz01: so what are the ansers :P03:44
pschulz01mithro: Another good question.. you're good at this.04:00
pschulz01mithro: Soem things that I'd like to sort out..04:03
pschulz01mithro: -  Getting deb of libtpproto-pw to install tp.netlib correctly.04:03
pschulz01mithro: - similarly with tp.client04:04
pschulz01mithro: - sort out best way to use 'update-debian-changelog'04:04
pschulz01mithro: - figure out how to do regular builds .. and..04:05
pschulz01mithro: - creating debian repository indexes.04:05
pschulz01mithro: .. also deb's shouldn't have *.pyc files in them, but I'll have to readup on the debian packaging guidelines for the how and why.04:07
pschulz01http://www.debian.org/doc/packaging-manuals/python-policy/04:09
tpb<http://ln-s.net/8Se> (at www.debian.org)04:09
*** xdotx has quit IRC04:14
*** xdotx has joined #tp04:16
mithropschulz01: tp.netlib/tp.client appear to be install correctly using TBBle's ./debian04:19
mithroand they correctly don't have *.pyc in them04:19
mithroand are correctly shared via pycentral04:19
mithropschulz01: if you do a fresh checkout and run04:21
*** niphree has joined #tp04:21
niphreehello04:21
mithrocd debian; ./update-debian-changelog; cd ..; dpkg-buildpackage -us -uc -b -rfakeroot04:21
mithrohi niphree04:21
CIA-23niphree /tmp/kz5FBK7xtT/cEQLgHBeBh-rewrite * r91559e170de5 / (6 files in 2 dirs): via git-CVS emulator04:35
pschulz01Is there a package for the dev version of libtpclient-py ?04:59
pschulz01Packaging of libtpprotocol-py looks good :-)04:59
mithroyeah04:59
mithroif you do a fresh pull of the development tree05:00
mithroI cherry-picked TBBle's stuff in the main tree05:01
pschulz01paul@flik:~/Desktop/git/tp/libtpcloent-py-dev/debian$ ./update-debian-changelog <module '__builtin__' (built-in)>05:04
pschulz01Currently in /home/paul/Desktop/git/tp/libtpcloent-py-dev/debian05:04
pschulz01This version of this deb will be 0.2.99+0.3.0+git.49.g2796f65-1auto105:04
mithrothat looks about right05:05
pschulz01 <module '__builtin__' (built-in)>  <<---- what's this?05:06
mithropschulz01: I've got a print somewhere I shouldn't05:06
CIA-23mithro libtpclient-py-development * re69a1cccf015 /tp/client/__init__.py: Remove excess print.05:07
mithropschulz01: that should fix that05:08
pschulz01Yup05:08
mithro:)05:09
*** xdotx has joined #tp05:09
mithrothe good thing about this versioning system is that if we build every day the deb only changes when a change actually occurs05:09
mithrolibtpcloent-py-dev <- sp :)05:10
pschulz01mithro: Woops :-)05:10
mithropschulz01: we need something like "update-debian-changelog" which updated the dependency information05:10
mithroupdated/updates/05:10
pschulz01mithro: dh_py**** should look after some of this05:12
pschulz01mithro: dh05:12
pschulz01mithro: dh <- deb helper scripts05:13
mithropschulz01: you can't reliably detect python dependencies05:13
pschulz01mithro: I'll defer to you on that one :-)05:13
pschulz01mithro: :-(05:13
mithropschulz01: and there is *definitely* no way to detect python dependency versions05:14
mithrofor the auto-builds, I think it's safe to always depend on the latest build of the dependecy05:15
pschulz01mithro: Hmm.... yes.. latest 'installed' build.05:16
pschulz01mithro: .. rather than querying other git trees.05:17
mithropschulz01: I think the best way is to make the assumption that we do the auto-build in order05:18
mithroIE Build libtpproto-py first, then libtpclient-py-dev, then tpclient-pywx-dev05:20
pschulz01mithro: Build in a 'debootstrap' chroot cage.. and add a dpkg -i python-<package? after building the libraries.05:21
pschulz01<package>05:22
pschulz01I'm getting..  dpkg-gencontrol: error: source package has two conflicting values - libtpclient-py and libtpproto-py05:23
pschulz01dh_gencontrol: command returned error code 6528005:23
pschulz01make: *** [binary-indep] Error 105:23
pschulz01Looking into it.05:23
pschulz01I should put TBBle's name in the update-debian-changelog script :-)05:24
mithro?05:26
mithropschulz01: how are you running that?05:27
pschulz01dpkg-buildpackage -us -uc -b -rfakeroot05:27
* mithro tests again05:29
pschulz01Ahah!05:29
mithrooh, I see the problem05:29
pschulz01changelog is wrong.. update-debian-changelog05:29
mithroyeah05:29
pschulz01Do you want to change..05:29
mithroyeah I will05:30
pschulz01package='libtpproto-py' -> 'libtpclient-py'05:30
mithroyeah05:30
CIA-23mithro libtpclient-py-development * r5573423f111a /debian/update-debian-changelog: Fixed the package name in update-debian-changelog.05:32
CIA-23mithro tpclient-pywx-development * r6d8c6d7ff822 /debian/update-debian-changelog: Fixed the package name in update-debian-changelog.05:33
mithropschulz01: same thing in tpclient-pywx's update-debian-changelog05:33
pschulz01woot05:33
mithropschulz01: ahh, found one problem05:36
mithrogoing to dinner05:36
mithrobblr05:36
mithroback06:04
mithropschulz01: when you install it looses the extra versioning information06:05
*** zipola has quit IRC06:48
*** zipola has joined #tp06:48
mithropschulz01: ping?06:49
mithroniphree: ping?06:49
CIA-23mithro libtpproto-py * r31649bb013e7 / (build-deb.sh tp/netlib/version.py): Version can now be called with "--fix" which fixes the version of the library.06:49
CIA-23mithro libtpclient-py-development * rac517652f8c7 / (build-deb.sh tp/client/version.py): Version can now be called with "--fix" which fixes the version of the library.07:04
mithroTBBle: ping?07:11
*** jotham has joined #tp07:29
jothamnew ship design my friend did http://imagebin.org/989107:30
tpbTitle: Imagebin - A place to slap up your images. (at imagebin.org)07:30
mithrothats a nasty looking ship07:30
jothamsome kind of aztek shit07:30
mithrowon't want to get in the way of that :P07:31
mithrojotham: think you can get him to GPL it?07:31
jothamhe's making it for me, so no doubt07:31
mithrocool!07:32
pschulz01mithro: pong07:32
mithroany chance you can get him to do the rest of a ship line?07:32
mithropschulz01: have a look at "build-deb.sh"07:32
pschulz01jotham: Wo..07:33
pschulz01mithro: Where?07:33
mithropschulz01: update07:34
mithrojotham: liked watching Epyon's ships fly in circles :P07:34
jothamyeah i've been working on a particle emitter07:35
jothamso it'll be firing bullets soon enough07:35
pschulz01mithro: chmod 775 build-deb.sh07:35
jothami have a good one i made in C++ but having SWIG as a dependancy is annoying07:35
jothamso i'm doing a pure python one07:35
mithroyeah07:35
mithrojotham: if you had it in C, you could use something like ctypes?07:35
jothamyeah but that's even more stuff to learn07:35
jothamthough i want to at some stage07:36
mithroctypes is pretty cool07:36
jothamyeah i've looked at it07:36
mithroI'm using to allow me to call guile from Python07:36
mithroand the libmng-py wrapper07:37
jothamwhat's guile07:38
jothamhttp://imagebin.org/989307:38
tpbTitle: Imagebin - A place to slap up your images. (at imagebin.org)07:38
mithroGuile is a fast Scheme implimentation07:38
mithrojotham: cool07:39
pschulz01mithro: Do you have any good guile/scheme documentation/examples?07:39
mithropschulz01: what do you mean "examples"?07:39
pschulz01jotham: That looks nasty..07:40
mithropschulz01: do you want to do something specific?07:40
pschulz01mithro: .. so I can understand how to program in it properly.07:40
mithrolots of good stuff on http://www.schemers.org/07:40
tpbTitle: Welcome to schemers.org! (at www.schemers.org)07:40
pschulz01mithro: ta07:40
mithropschulz01: schemepy can be found at http://git.thousandparsec.net/gitweb/gitweb.cgi?p=schemepy.git;a=summary07:41
tpb<http://ln-s.net/okn> (at git.thousandparsec.net)07:41
pschulz01mithro: hehe.. schemers.org well laid out :-)07:41
mithropschulz01: :P07:49
mithroniphree: ping?09:28
*** zipola has quit IRC09:35
CIA-23mithro schemepy * r3c297dbef359 / (60 files in 8 dirs): Move stuff around to prepare for packaging...11:15
CIA-23mithro schemepy * rea3f0312eaa8 /schemepy/ (__init__.py version.py): Added more files for packaging.11:15
CIA-23mithro schemepy * rf2ec4746fb29 /schemepy/guile/ (__init__.py guile.py guilehelper.c profiles/scope.scm):11:15
CIA-23Fixed up various bugs in the type tree.11:15
CIA-23Fixed the exception handling.11:15
CIA-23mithro schemepy * r5439761e0675 /tests/conversion.py: Started a test-suite.11:15
*** JLP has joined #tp12:01
mithrowell I think I'm going to head to bed13:05
*** zipola has joined #tp13:06
CIA-23mithro schemepy * rafb861b0e604 /tests/conversion.py: Updated to use py.test testing.13:07
CIA-23mithro schemepy * r43bffdd855c6 /tests/ (10 files): Split the tests out into seperate files.13:07
CIA-23mithro schemepy * r858da4209fab /tests/ (7 files): More verbose output on an error.13:07
CIA-23mithro schemepy * rcf4faf1e1606 /tests/ (TestList.py TestString.py): Small fixes in the test suite.13:07
CIA-23mithro schemepy * r992d367ff29d /tests/TestFloat.py: Added correct 'NaN' test.13:07
CIA-23mithro schemepy * r7a439bec7ecc /tests/TestComplex.py: Fixed complex tests.13:07
niphreemithro: pong13:09
mithrohey niphree13:09
mithroI'm thinking of heading to bed13:10
mithrobut if you want to go through some of the backconnect stuff, I'm happy to stay up for another hour13:10
niphreehmm... we can do this tommorow - or maybe you just tell me if there is something I can read13:11
CIA-23mithro schemepy * r801480fa5e86 /tests/TestFloat.py: Make test portable..13:11
mithronot a huge amount you can read13:11
mithroniphree: out of interest, where did you get stuck with doing it?13:14
mithrofrom the looks of it, you got a socket connection working?13:15
niphreeI didn't test it :/ - it should work, but I didn't test it13:17
niphreeso first: there is no game server I could test it on13:18
mithrowell, with the socket stuff you could just connect to any server13:19
mithrohave you done any socket stuff before?13:21
niphreeonly in Java but mostly it was using something that someone else done13:23
*** guitsaru has joined #tp13:24
mithrowell, they work very much like files13:24
mithroyou open up a socket13:25
mithrothen you write/read to it13:25
niphreeok13:26
mithrothe reason it's a little complicated13:27
mithrois that if there is not enough data already arrived, a read will wait until enough data arrives13:28
mithroon a client - this is normally what you do want however13:29
mithrothe Thousand Parsec protocol also makes this easy on you13:29
mithrobecause you know at any time how much data to expect13:29
mithroyou read a Thousand Parsec frame from a socket in two steps13:30
mithro1. Read the header13:30
mithro2. Read the body13:30
mithrothe header is always 16 bytes long13:30
mithrothe body is variable in length - but the length is recorded in the header13:31
niphreeok13:31
mithroso what the code would look like is13:32
mithro$header_data = socket_read($sock, 16); $packet = Frame.parse_header($header_data); $body_data = socket_read($sock, $packet->length); $packet->parse_data($body_data);13:33
mithros/16/Frame.header_size/13:34
mithrobut that is getting ahead of ourself, the first thing you have to do is make a successful socket connection13:35
niphreeframe is this same in protocol 3 and 4 ? I can use this same library ?13:35
mithroniphree: there have been some small changes13:36
mithrothe size/length stuff hasn't changed however13:36
niphreeok13:36
mithroI started a server for you -> http://metaserver.thousandparsec.net/13:36
tpbTitle: Thousand Parsec : Metaserver Server Listing (at metaserver.thousandparsec.net)13:36
niphreethx :]13:37
mithrothe server won't send you anything unless you request it13:37
mithrobtw, incase you don't remember, the protocol is describe here -> http://www.thousandparsec.net/tp/dev/documents/protocol3.php13:38
tpb<http://ln-s.net/Ix2> (at www.thousandparsec.net)13:38
mithroso you will need to construct a "Connect" Frame and send that to the server13:42
mithroniphree: so you need to do the following13:45
mithro1. Connect to the server using socket_connect13:45
mithro2. Create a Connect frame using libtpproto-py13:45
mithro3. Convert the Connect frame to a string13:45
mithro4. Send the string using socket_send13:46
mithro5. Use socket_read to get the result back13:46
mithroyou probably want the following too13:48
mithroTo set a socket timeout value (assuming you've set it blocking) use:13:48
mithrosocket_set_option(13:48
mithro  $socket,13:48
mithro  SOL_SOCKET,  // socket level13:48
mithro  SO_SNDTIMEO, // timeout option13:48
mithro  array(13:48
mithro    "sec"=>10, // Timeout in seconds13:48
mithro    "usec"=>0  // I assume timeout in microseconds13:48
mithro    )13:48
mithro  );13:48
mithroopps13:49
mithrothat should be SO_RCVTIMEO13:49
niphreeopps ?13:49
niphreehmm - ok, I'll read about it :]13:49
mithroit sets a timeout13:51
mithrobut you probably want a receive timeout13:51
niphreeso - I'll try to do this today - socket connect and try to send some frames13:51
mithrorather then a send timeout13:51
mithroniphree: okay13:55
mithroi'm going to head to bed now13:55
niphreek, good night13:56
mithrotommorrow I should have time to sit down with you and help you get something working (if you haven't already)13:57
mithrosee you at 10:30am your time tomorrow!13:58
niphreeok !13:58
* nash is back18:58
*** guitsaru has joined #tp19:06
CIA-23fr33.em4il tpserver-cpp-rfts * ra6f279673f13 /modules/games/rfts/ (buildfleet.cpp buildfleet.h fleet.cpp fleet.h): Added fleet names19:11
CIA-23fr33.em4il tpserver-cpp-rfts * r654fbee0825d /modules/games/rfts/ (buildfleet.cpp fleet.cpp fleet.h rfts.cpp):19:11
CIA-23Fixing designs, adding mark1s to inital usable designs.19:11
CIA-23Currently a bug when building a mark1 fleet19:11
CIA-23fr33.em4il tpserver-cpp-rfts * r4d7e5395485b /modules/games/rfts/ (containertypes.h move.cpp rftsturn.cpp): debugging move order and misc19:11
xdotxwb nash19:12
nashthanks xdotx19:15
nashAnything interesting happen over the weekend?19:16
xdotxstill the weekend for me ;)19:23
*** niphree has quit IRC19:23
xdotxgot a lotta things to get done in rfts. i've got a huge todo list and i'm just picking things and doin' them whenever i feel like it19:25
nashCool19:33
nashTodo lists to knock down are alays good19:33
jothamman, C-r in bash/python interactive interpreter is so hot20:06
jothamwhy didn't i know about it years ago20:06
nash! is useful too20:33
jothamwhat's ! do20:37
nashGoing back first command that matches what you type after teh !20:40
nashSo ! by itself repeats last command20:40
nash!make repeats last make command !m will do the same, or last command whihc started with m anyway20:40
jothamthat's cool20:52
*** tuna-fish has quit IRC21:18
CIA-23fr33.em4il tpserver-cpp-rfts * r7de62a423c0e /modules/games/rfts/ (6 files): Added and applied RP cost to fleet creation22:18
mithrohowdy people22:32
xdotxhey mithro22:37
mithroxdotx: so you working on getting a playable subset of RFTS?22:46
mithronash: so, I don't see any galaxie commits yet?22:48
mithroTBBle: ping?22:52
mithrojotham: have you tried iPython?23:04
jothamno23:04
jothamwhat is it23:04
mithroit's a script which wraps the interactive python and does a bunch of cool things23:04
jothamfor example?23:05
* xdotx is busy makin' dinner23:06
mithro* Dynamic object information:23:06
mithro  Typing ?word or word? prints detailed information about an object.  If23:06
mithro  certain strings in the object are too long (docstrings, code, etc.) they get23:06
mithro  snipped in the center for brevity.23:06
xdotxmithro: almost there. hopefully going to have all but combat implemented before bed today23:06
mithro* Completion in the local namespace, by typing TAB at the prompt.23:06
mithro* Persistent command history across sessions (readline required).23:06
mithroand a whole bunch more23:07
jothamcool23:08
mithroapt-get install ipython23:10
nashmithro: Still don't have internet acces at home23:22
mithroI thought the coding was on the bus? :P23:41
nashDrove today23:44
mithroslacker :P23:49
nashmithro: Sorry - I code and drive badly23:55
*** guitsaru has joined #tp23:56
mithronash: so? you would probably still drive better then a Victorian ;)23:56

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