Saturday, 2007-08-11

*** tpb has joined #tp00:00
*** ChanServ sets mode: +o tpb00:00
*** guitsaru has joined #tp00:27
*** pschulz01 has joined #tp00:56
pschulz01#tp00:56
mithrohey people01:00
mithrohey pschulz0101:00
pschulz01Might not be here long.. going to look at baby stuff01:01
mithro~seen niphree01:01
tpbmithro: niphree was last seen in #tp 1 day, 6 hours, 5 minutes, and 56 seconds ago: <niphree> good night all01:01
mithrolooks like demo1 crash again01:02
pschulz01mithro: libtproto2-py ready for packaging?01:02
mithrono01:02
pschulz01mithro: libtproto-py ?01:02
mithroit probably won't even run on anyone elses computer part from mine01:02
mithrolibtproto-py can be packaged01:03
pschulz01mithro: What supplies tp.netlib, tp.client ?01:03
pschulz01:-)01:03
mithrolibtpproto-py -> tp.netlib01:03
mithrolibtpclient-py -> tp.client01:03
pschulz01Ta.01:05
mithrobut for tpclient-pywx-dev you'll want the development branch of tp.client01:06
pschulz01Ok.. just working on tpproto01:08
pschulz01You are attempting to install a package to a directory that is not01:14
pschulz01on PYTHONPATH and which Python does not read ".pth" files from.  The01:14
pschulz01installation directory you specified (via --install-dir, --prefix, or01:14
pschulz01the distutils default setting) was:01:14
pschulz01    tmp/lib/python2.5/site-packages/01:14
pschulz01and your PYTHONPATH environment variable currently contains:01:15
pschulz01    ''01:15
pschulz01This was using..01:15
pschulz01python setup.py install --prefix=tmp01:15
pschulz01for libtpproto-py01:16
mithroI think you can ignore that warning01:23
mithroas the package will install it to the python-path when you do so01:24
pschulz01mithro: OK - I used PYTHONPATH to fake it out.01:25
pschulz01mithro: Bonus.. install tests run01:25
mithroinstall tests!?01:26
pschulz01PYTHONPATH="debian/libtpproto-py/lib/python2.5/site-packages" \01:26
pschulz01          python setup.py install --prefix=debian/libtpproto-py01:26
pschulz01Well.. it ws trying to compile up stuff.01:27
mithrodid you get a package?01:35
pschulz01http://git.mawsonlakes.org/git/tp/libtpproto-py01:36
pschulz01Yes..01:36
tpbTitle: Index of /git/tp/libtpproto-py (at git.mawsonlakes.org)01:36
pschulz01but it didn't work after installing.. tpclient-pywx can't find tp.netlib01:36
mithrohrm....01:36
mithrowhat is the contents of the deb?01:37
pschulz01http://pastebin.org/37801:38
tpbTitle: pastebin - collaborative debugging tool (at pastebin.org)01:38
pschulz01I have to disappear.. I'll be back later.01:38
mithropschulz01: I'm afraid that deb is quite wrong :/01:43
mithrofirstly - debs must never contain .pyc's01:43
mithro#01:44
mithro-rw-r--r-- root/root      2362 2007-08-11 14:54 ./lib/python2.5/site-packages/site.py01:44
mithro#01:44
mithro-rw-r--r-- root/root       217 2007-08-11 14:54 ./lib/python2.5/site-packages/easy-install.pth01:44
mithrothose two files shouldn't be in the deb01:44
mithrothey need to be modified01:44
mithro(by the package install process)01:44
mithrohttp://wiki.debian.org/DebianPythonFAQ01:47
tpbTitle: DebianPythonFAQ - Debian Wiki (at wiki.debian.org)01:47
mithrotry the "Python eggs" section?01:47
mithrohttp://python-modules.alioth.debian.org/python-central_howto.txt01:48
tpb<http://ln-s.net/ofc> (at python-modules.alioth.debian.org)01:48
TBBleDidn't I push package scripts for tpproto-py and tpclient-py?03:00
mithroTBBle: yes, kind of03:01
mithroTBBle: I don't think we ever successfully built debs from them?03:02
TBBleKind of? Were they broken?03:02
TBBleSorry I dropped off the earth after that, BTW. Project's ramping up, again, I've just checked my email properly for the first time in a fortnight.03:02
TBBleWeird. I'd built them here before pushing them. *updates his local copy to see what's up*03:03
mithroTBBle: yeah, but we are now trying to build "from git"03:05
mithrorather then real packaged versions03:05
TBBleYeah, that's what I pushed. What I was supposed to do next was make them work with the released tarballs.03:05
mithroTBBle: oh?03:05
TBBleI just build a python-tp-netlib package from git.03:05
TBBleUh, built03:05
mithrooh?03:06
TBBleIt doesn't handle updating the changelog string, mind you. Prolly should, but that wouldn't be too hard. I'm guessing from discussion earlier someone's already got something that throws a git commit string into the version number.03:06
mithroTBBle: how does one build this magical deb?03:06
mithrobtw, do you know if BigWorld is in need of any Python Programmers? /me is in the market for a job :P03:07
TBBleGo into the directory. dpkg-buildpackage -us -uc -b -rfakeroot03:07
TBBlemithro: Actually, they very well may be... I remember something being emailed around, but I don't remember what sort of specific programmers they were looking for, if any.03:08
TBBleIf you want, email me at work (I'll /query you the address) and I'll give you the details. (Sorry, they're in my work email, don't have them here)03:08
mithroTBBle: i've been meaning to finish get my Resume in order03:10
TBBleOh, I see, there's code in the version.py file to fetch the git revision... There ought to be an easier way, though. Also, that code doesn't produce numerically-increasing version numbers for later git-commits.03:10
mithroTBBle: no03:11
TBBleNo?03:11
mithroTBBle: the version.py in tpclient-pywx has some stuff which might be useful03:12
mithrotim@ultraslim:~/oss/tp/tpclient-pywx-dev$ python version.py03:12
mithro0.2.99+0.3.0.20070811 (git fdeb5cc90d34b26943a738172fade7d44142112c)03:12
mithroI can add similar stuff to libtpproto-py if it helps03:13
TBBle(I assume the 'master' branch is the right one for these, BTW...)03:13
TBBleAh, that must be on the other branch?03:14
mithroyeah, the development branch03:14
mithrohows this look?03:15
mithrotim@ultraslim:~/oss/tp/libtpproto-py$ python ./tp/netlib/version.py03:15
mithro0.2.3+0.2.4.20070811 (git 9c5e10eaef0b2cc809b0f6006f8cfbad8371e9b6)03:15
TBBleThat's not bad. Of course, it'll still need a little munging for Debian.03:16
TBBleHmm. Isn't this what update-debian-changelog in the debian/ tree does?03:18
TBBle(Of python-pywx, I mean)03:18
CIA-23mithro libtpclient-py-development * r999072b36328 /tp/client/ (cache.py media.py threads.py): Removed a lot of excess prints.03:22
CIA-23mithro libtpproto-py * r8a6bd385a875 /tp/netlib/version.py: Added more versioning information.03:22
CIA-23mithro libtpclient-py-development * r6ccfe8d757b7 /tp/client/__init__.py: Register a _ function if one doesn't exist.03:22
CIA-23mithro libtpclient-py-development * r4cec2d6ca0c9 /tp/client/version.py: Added more versioning information.03:22
mithroTBBle: update-debian-changelog seems to generate an updated changelog03:24
TBBleYeah. Which is what you do if you want the package to have a different version.03:24
mithroTBBle: so just run a script like that first?03:28
TBBleYeah, something like that.03:30
TBBleBeh. If I from tp.netlib.version import version,version_str, I don't get the .git part, just 0.2.303:31
TBBleOh, wait, that's what I get for skimming.03:31
*** zipola has joined #tp03:33
TBBleOf course, if the file is not installed in a .git directory, version_git and target version won't be defined. Would be good to have an else: which sets those to None, so a script in debian/ can just import those, and if it sees the None, know not to touch the changelog since we're a release tarball.03:34
mithropython-tp-netlib_0.2.3+0.2.4.20070811-1auto1_all.deb03:35
TBBleHmm. Maybe git-describe would be a better result?03:35
mithrogit-describe?03:36
mithroit doesn't use any git commands03:36
mithrojust reads the .git directory directly03:37
TBBleYeah, but it could. If we can run git-describe, and it doesn't return 1, then it gives a much more useful versioning string.03:37
mithroTBBle: it does?03:37
CIA-23mithro libtpproto-py * r03707ba1998a / (3 files in 3 dirs): Add support for auto-building.03:38
TBBleYeah.03:38
mithroseems all we need to do is03:38
mithrocd debian03:39
TBBlegit-describe my current libtpptorot-py: LIBTPPROTO_0_2_2-72-g8a6bd3803:39
TBBleThat's 'tag'-'commits since tag'-g'commit sha1'03:39
mithropython update-debian-changelog03:39
mithrocd ..03:39
TBBleSo you _know_ it's always increasing, unless someone moves the tag.03:39
mithrodpkg-buildpackage -us -uc -b -rfakeroot03:39
TBBleYeah, that's what I'm saying. I'm suggesting tp/netlib/version.py call git-describe to get the git version, rather than manually parsing around in .git03:40
mithrohrm...03:40
TBBleWell, I guess that assumes the tags are increasing...03:40
mithrono debian directory in the development branch?03:41
TBBleI dunno. I'm working in master, I dunno if I committed one to development or not.03:42
TBBlegit-describe also has the advantage that if you build your package again the next day, the version number doesn't change. ^_^03:44
TBBleOf course, I've never ``d in python before.03:45
mithro``d ?03:47
mithrohe he, this is a little confusing03:50
mithroboth our debian packagers are a "Paul" :P03:50
CIA-23tim libtpclient-py-development * r8da6e49c7f78 /debian/ (changelog compat control copyright rules watch):03:53
CIA-23Debian packaging goodness.03:53
CIA-23Kindly produced by Paul Hampson aka TBBle.03:53
CIA-23(cherry picked from commit c394cb09bff8a76168b0684498c2c858569715f2)03:53
CIA-23Paul.Hampson libtpclient-py-development * rb4bca9b1237a /debian/rules:03:53
CIA-23Remove workaround for setup.cfg left next to setup.py03:53
CIA-23(cherry picked from commit abbadb9a84716d5eac3522f22ef0622c3ec97cf9)03:53
CIA-23Paul.Hampson libtpclient-py-development * r0b04ebf09944 /debian/changelog:03:53
CIA-23Update Debian packaging to current version number03:53
CIA-23(cherry picked from commit 1e2c8a007c8b75ae8a7bffaca70b14ef6e23cb7c)03:53
CIA-23Paul.Hampson libtpclient-py-development * re3c4279c5ec5 /debian/ (changelog control):03:53
CIA-23Build-depend on python-all, to ensure runtimes are present03:53
CIA-23(cherry picked from commit a6bd007ec7cddc689e941078824040fa56382d13)03:53
CIA-23mithro libtpclient-py-development * r303119404a90 / (4 files in 3 dirs): Updated to make debian packaging working.03:53
TBBle``d, like in bash. In perl, you can also $str = `git-describe`;. I dunno if python has such a syntactic sugar....03:54
TBBleOK. So I should play with the development branch, when I play with this stuff?03:55
mithroTBBle: sure!03:56
TBBleOK.03:56
TBBleAh. tpproto-py doesn't have a development branch. ^_^03:56
mithroyeah03:57
mithrolibtpproto-py doesn't have a dev branch03:57
mithrobut both libtpclient-py and tpclient-pywx do03:57
mithroTBBle: you are probably right about the GIT-version - I don't like the look of the tag however?03:57
TBBleWell, they _are_ your tags...03:58
TBBleYou could easily trim off the stuff before the first -, I guess.03:58
TBBleOr rather, before the second-last -.03:58
TBBleIt'll be .*-\d+-g[0-9a-f]+ as a regex.03:59
TBBleUnless you happen to be on the tag exactly.03:59
TBBleI wonder if git-tags are forbidden from having - in them...03:59
TBBleDoesn't seem like it.04:03
TBBleAh, popen is the thing.04:07
mithroTBBle: yeah, I think you would want to reformat the tags a little04:08
TBBleI'm just throwing something together, I'll get you to have a look at it before I do anything with it.04:11
TBBleHmm. This highlights the fact that 0.2.3 wasn't every tagged, or if it was, git-remote fetch isn't grabbing it.04:12
* mithro ponders if 0.2.3 was ever released04:17
TBBleHehe. Turns out git-describe produces something which is actually treeish.04:18
TBBleSo I'd argue for including it literally, since you can trivially git-diff <git-commit-description> to see what's changed since that commit.04:18
mithrookay04:20
mithrobut what about in the package name?04:20
mithro0.2.2 is the current "released" version of libtpproto-py04:21
CIA-23mithro libtpproto-py * rdfe9a4f729de /tp/netlib/version.py: Fixed the version number now we also have a "development version".04:23
TBBleTrue. But the point is if someone's ferreting away on their own version, and puts their own tag in a tree, you want to know about it in any package they roll.04:27
TBBleHmm. This also has the issue that once it's packaged and installed, it loses its .git versioning. Does that matter?04:30
TBBleActually, it loses the version-targetted version too.04:30
TBBleYou could always create nicer tags for the same revisions, if the name of the tag is an issue.04:31
TBBleOf course, I don't know that the nicer tag would override the older tag in git-describe.04:32
mithrolet me try this...04:33
TBBleFascinating. Putting version.py in ~ and running ~/version.py makes it claim it's installed to /04:38
mithro?04:43
mithrooh04:43
mithroI know why04:43
TBBleYeah, the more I think about this, the less actually useful I think this versioning is. It's lost as soon as it's installed.04:52
TBBleBeh. And os.popen doesn't eat stderr for you. And the existence of a .git is no guarantee that git-describe exists. And you don't want to be doing that at runtime anyway.04:55
TBBleI think the version in version.py should prolly have been an API/bugfix version, rather than a release version. Beh. Versioning is hard.04:57
mithrohold on a sec04:58
mithroThis version of this deb will be 0.2.2+0.2.3+git.74.gdfe9a4f-1auto104:59
mithrohow does that look?04:59
mithroin the changelog it will have the output from gitdescribe04:59
mithroit also checks that the tp.netlib.version and git tags agree otherwise it bails05:00
TBBleYeah, that works.05:01
TBBleGoin' to the shops, back later05:02
TBBle(Although that's what I said in June...)05:02
*** pschulz01_ has joined #tp05:06
*** pangvisor has left #tp05:07
mithrohey pschulz0105:09
mithroI would recommend reading the logs05:09
*** pschulz01 has quit IRC05:09
*** pschulz01_ has quit IRC05:09
*** pschulz01 has joined #tp05:10
mithroas TBBle was about, he did the original python packages05:11
pschulz01mithro: Ok..05:11
mithropschulz01: he also found "git-describe"05:12
mithrowhich gives us a continually incrementing version related to the git repository05:12
mithrohttp://www.thousandparsec.net/~irc/logs/%23tp.2007-08-11.log.html#t2007-08-11T01:48:5705:13
tpb<http://ln-s.net/og1> (at www.thousandparsec.net)05:13
pschulz01I was figuring that there should have been something like this done before.05:13
mithropschulz01: so I've updated your "update-change-log"05:14
mithroand using TBBle's stuff it seems to build correct packages05:14
pschulz01mithro: I'm still learning05:14
mithropschulz01: that is okay05:15
mithrobtw just to be interesting TBBle is a Paul too :P05:15
CIA-23mithro libtpproto-py * r5423f44482e7 / (debian/update-debian-changelog tp/netlib/version.py): Use the "git-describe" version for the deb packages.05:15
mithropschulz01: give that a look05:15
CIA-23mithro libtpclient-py-development * r2796f651f567 / (3 files in 2 dirs): Use the "git-describe" version for the deb packages.05:24
CIA-23mithro tpclient-pywx-development * r5bdb77859333 / (debian/update-debian-changelog version.py): Use the "git-describe" version for the deb packages.05:39
pschulz01mithro:05:41
pschulz01paul@flik:~/Desktop/git/tp/libtpproto-py/debian$ ./update-debian-changelog05:41
pschulz01Currently in /home/paul/Desktop/git/tp/libtpproto-py/debian05:41
pschulz01Traceback (most recent call last):05:41
pschulz01  File "/home/paul/Desktop/git/tp/libtpproto-py/debian/update-debian-changelog", line 58, in <module>05:41
pschulz01    tag, commits, gitcommit = gitdescribe.strip().split('-')05:41
pschulz01ValueError: need more than 2 values to unpack05:41
mithrohrm....05:41
pschulz01Freshly cloned05:42
mithrocan you tell me what "git-describe" outputs in your directory?05:42
pschulz01LIBTPPROTO_0_2_2-g5423f4405:42
CIA-23mithro tpclient-pywx-development * rc100f4b2c467 /requirements.py: Make the version requirement match the development version.05:43
mithrogit --version05:43
mithromy guess is 1.4 right?05:43
pschulz01git version 1.4.4.205:43
pschulz01bad?05:43
mithroyeah05:45
mithrothat version doesn't do the right thing05:46
pschulz01Hmm.. lot's of packages to upgrade. git-core gitk included.05:48
mithroI guess I should probably check git-version?05:51
pschulz01mithro: git describe will not give sequential versions though.. will it? (Not that I can see)05:51
pschulz01mithro: Incoming version - 1.5.2.305:53
mithroyes it will05:56
pschulz01bbs.. Dr.Who on.05:56
mithropschulz01: the new gits output05:57
mithro<tag>-<number of commits since tag>-<commit short sha1>05:57
pschulz01Ahh.. good :-)05:58
mithropschulz01: gf over, bblr06:02
TBBleIt'd be nice to have the update-debian-changelog catch the failure to import debian_bundle and report a useful message about needing python-debian installed.06:03
TBBleAh. It needs to add '.' to sys.path as well, as stuff in the debian/ directory should expect to be able to be run as debian/blah. (Ideally it'd be available as "debian/rules update-changelog" as well which then calls the script.)06:21
pschulz01TBBle: Howdy..06:45
* JLP wakes up06:46
JLPahoy people06:46
pschulz01I was thinking that update-debian-changelog was not something inside the debian build process... (eg. not in debian/rules)06:47
pschulz01unless there was some way of separating 'auto' builds from regular release builds.06:48
pschulz01debian_bundle?06:48
mithroI guess the last trick, is how to get the dependencies right, the latest deb of libtpclient-py should depend on the latest deb of libtpproto-py06:58
mithroetc06:58
mithrobe back later06:59
TBBleNo, I'm not saying you make it part of the debian build process, but you do make it runnable as a rule in debian/rules, which reduces the number of places people have to look to work out how to run stuff.07:37
TBBlemithro: For interdependancies, you're going to have to do it by hand, or track when relevant APIs change. Sounds like versioning-nightmare to me, frankly.07:38
TBBlepschulz01: When you do "from debian_bundle.changelog import Changelog, Version" wrap it in a try: ... except ImportError: print "You need to install the python-debian package"; sys.exit()07:40
TBBleOr similar.07:40
*** zipola has joined #tp07:42
TBBleAnd add a rule to debian/rules (which is a Makefile) for "update-changelog" which just runs the changelog update script. Or even better, runs the changelog update script and then runs dpkg-buildpackage -us -uc -b -rfakeroot or similar. Then of course it'd be called "build-git-package" or something.07:45
pschulz01TBBle: Wouldn't it be beter in a top level Makeifle?08:04
TBBleNo, it's a rule that relates only to the Debian packaging, so it goes in debian/rules.08:51
TBBleYou could put a rule in the toplevel makefile to call that rule if you wanted, but I think that sort of thing pollutes top-level makefiles, personally.08:52
*** zipola has quit IRC09:24
*** zipola has joined #tp10:16
* mithro is back10:17
* mithro assumes that both TBBle and pschulz01 have disappeared10:17
mithroTBBle: I think for development versions it would be enough to just say the latest libtpclient-py depends on the latest libtpproto-py10:18
mithrothe problem with that is how do you find out the latest version of the other package?10:20
TBBleIf by latest you mean latest released, that's easy. If you want the actualy current git HEAD, that's harder.10:20
TBBlegit-peek-remote or something might help there.10:20
mithroTBBle: I mean git HEAD10:20
mithrowe need a git-describe which works on a remote repository10:21
TBBlegit-ls-remote might be a good start.10:22
TBBleThen you've got to turn that into something that matches git-describe's output...10:24
mithroTBBle: the hard part is getting the number of commits part10:26
*** zipola has quit IRC10:27
*** zipola has joined #tp10:31
TBBleThis might be something worth chasing up on a git-users mailing list. All the stuff must be there to query, but I suspect it's currently internal to git-fetch10:31
mithroTBBle: we could just cheat and look in a directory somewhere for the latest deb?10:39
mithroObviously "releases" would have fixed numbers10:39
mithroit's not like the development versions are to end up in Debian10:41
TBBleActually, I was just thinking your bot for monitoring commits could auto-generate the git-describe result of the libtpproto-py head and put it someone people building libtpclient-py can get it.11:21
TBBleHmm. Bedtime for me, methinks.11:22
mithroTBBle: have a good night11:30
*** JLP has quit IRC11:55
*** JLP has joined #tp11:59
*** JLP has quit IRC12:42
*** greywhind has joined #tp14:15
*** guitsaru has quit IRC14:51
mithro~seen niphree15:58
tpbmithro: niphree was last seen in #tp 1 day, 21 hours, 2 minutes, and 51 seconds ago: <niphree> good night all15:58
*** pschulz01 has quit IRC20:13
*** pschulz01 has joined #tp20:15
CIA-23fr33.em4il tpserver-cpp-rfts * rba617173c20e /modules/games/rfts/ (planet.cpp planet.h productionorder.cpp productionorder.h):21:02
CIA-23production bug fixes.21:02
CIA-23production should be working. just needs a couple fixes, tweaking, etc21:02
CIA-23fr33.em4il tpserver-cpp-rfts * r400f321cc073 /modules/games/rfts/ (planet.cpp productionorder.cpp rfts.cpp rftsturn.cpp):21:02
CIA-23Production bug fixes. Added planet RP creation on odd turns. Production is21:02
CIA-23in and working (but barely tested). Just needs some tweaks, and fixes.21:02
xdotxwow those updates seem vaguely similar ~~21:03
*** DystopicFro has joined #tp22:15

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