rozzin | Is it possible to do a lightweight checkout of a remote git branch using bzr-git? | 02:39 |
---|---|---|
SamB | I heard bzr-git was unfinished, with no plans to finish it | 02:39 |
=== jamesh__ is now known as jamesh | ||
zyga | hi, I ran the trunk test suite on 14.04 and got 8 failures, is that expected? | 20:27 |
zyga | this is a part of the failure log (gee, thanks gnome-terminal for insane default of 512 lines of backlog): http://paste.ubuntu.com/6728629/ | 20:28 |
rozzin | I'm not even sure how to read that log and identify what the 8 things are. | 20:52 |
zyga | rozzin: I'm getting a fresh run with all of the failures | 20:58 |
zyga | rozzin: a few were caused by missing python-lzma, now installed | 20:59 |
zyga | rozzin: what remained now are tests related to gpg | 21:00 |
zyga | rozzin: note, this is stock trunk on python2.7, nothing fancy yet | 21:00 |
zyga | full failure log: http://paste.ubuntu.com/6728825/ | 21:05 |
rozzin | zyga: It looks like the ones that failed due to missing python-lzma were excluded from the `8' count, though. | 21:30 |
rozzin | zyga: Do you know which 8 tests are actually the ones referred to be "failures=8"? | 21:31 |
rozzin | zyga: I'm not really all that familiar with how any of this is implemented, but I'm willing to dig in and try to help. I used to be a Python programmer. | 21:32 |
zyga | re | 22:04 |
zyga | rozzin: I guess each of FAIL is one test | 22:04 |
jderose | zyga: so i wont have time to dig into anything till this weekend, but i'm highly excited about your python3 porting effort :) | 22:21 |
jderose | zyga: also, those failures seem (mostly) related to python-gpgme, so i'd first see if its tests pass on trusty - http://packages.ubuntu.com/search?keywords=python-gpgme | 22:22 |
jderose | possibly related to gpg 1.4.15 being in trusty, dunno - http://packages.ubuntu.com/search?keywords=gnupg | 22:22 |
zyga | jderose: thanks, I was suspecting the same thing | 22:23 |
zyga | jderose: I'm looking at the code now, I think the first attempt will cut a lot of functionality, I'm quite surprised by how much stuff is inside bzr, I think that some strong decisions to drop things could make the (huge) effort doable but I'm not yet sure about what to consider dropping | 22:25 |
jderose | if it is a python-gpgme issue, you should ping James Henstridge (dunno his IRC nick) - https://plus.google.com/u/0/+JamesHenstridge/posts | 22:25 |
zyga | jderose: I'm currently removing lazy imports so that 2to3 can be more productive | 22:25 |
zyga | jderose: once I get --help to run I'll post my code | 22:25 |
jderose | sweet :) | 22:25 |
jderose | i think there are areas that should probably be trimmed, but dropping support for any old formats kinda scares me :P | 22:26 |
zyga | jderose: this is a fork, you can still use bzr --upgrade for old stuff | 22:27 |
jderose | true | 22:27 |
zyga | jderose: and the game is lost anyway, so it's not about keeping what we have, it's about making something that people want | 22:27 |
jderose | good point | 22:27 |
zyga | jderose: or what we can still *have* | 22:27 |
jderose | does bzr still use pyrex? (been a while since i've looked at the bzr code) | 22:28 |
zyga | jderose: yeah | 22:28 |
zyga | jderose: more scary stuff for me ;) | 22:28 |
jderose | how's that as far as python3? | 22:28 |
jderose | hehe | 22:28 |
zyga | jderose: not sure, I never wrote any, I'm considering dropping that if needed | 22:28 |
zyga | jderose: as there are pure python versions too | 22:28 |
zyga | jderose: right now I want to see bzr --help | 22:28 |
jderose | might be something that would be better replaced with c extensions | 22:29 |
jderose | yeah | 22:29 |
jderose | sorry, getting ahead of myself... especially considering that fact that i haven't done anything yet :) | 22:29 |
zyga | jderose: hey, I didn't do anything at all :) I just want to :> | 22:29 |
jderose | i'm pretty sure you're a lot closer to `bzr --help` than i am :P | 22:30 |
zyga | I wonder if some parts of bzr could be dropped/replaced by existing libraries, I feel that a lot of bzr is actually now available as readily-available modules that we don't have to maintain | 22:32 |
zyga | especially a lot of the network code | 22:32 |
fullermd | I'd not worry overmuch (at least at the moment_ about the server shutdown failure. I think that's a somewhat touchy area in general, so... | 22:32 |
zyga | fullermd: thanks! | 22:32 |
zyga | fullermd: as long as trunk fails the same way as my neutered version I'm happy | 22:32 |
* zyga reads the launchpad plugin code | 22:33 | |
fullermd | And the builddeb stuff... well, shoot, nobody uses that "deb" thing anyway. | 22:33 |
zyga | the single most important plugin | 22:33 |
jderose | fullermd: yeah, speak for yourself :P | 22:33 |
fullermd | Naturally; I always speak for all right-thinking people :P | 22:34 |
jderose | zyga: i think for the HTTP/HTTPS transport stuff, yes, the standard lib could replace a lot of things. BTW, I have a lot of experience with the Python3 `http.client` module. | 22:34 |
zyga | OOHHH | 22:34 |
jderose | hehe | 22:34 |
zyga | so lp_api_lite | 22:34 |
zyga | that's so sweet, no lauchpadlib | 22:34 |
zyga | jderose: for all networking I was hoping to use requests, it's nice and shiny and has lots of usage, it seems to handle auth very well out-of-the-box | 22:35 |
jderose | zyga: but there is also the custom SSH implementation (can't recall the python package name)... that might be a lot harder to replace | 22:35 |
zyga | jderose: paramiko | 22:35 |
zyga | jderose: yeah | 22:35 |
jderose | right | 22:35 |
fullermd | paramiko isn't actually used most of the time. | 22:35 |
zyga | jderose: I haven't looked at that yett | 22:35 |
jderose | zyga: er, requests? is that part of httplib2? | 22:35 |
fullermd | Only on Windows sometimes I think, unless you forcibly call it. Usually just calls the command-line ssh. | 22:36 |
zyga | jderose: I don't think so: http://docs.python-requests.org/en/latest/ | 22:36 |
jderose | fullermd: so even when using the SSH transport (say, with launcphad), paramiko isn't used all the time? | 22:36 |
fullermd | Er, wait, maybe paramiko is still used for sftp. | 22:36 |
zyga | fullermd: ah, good, something that can be dropped then | 22:36 |
fullermd | But yeah, bzr+ssh calls ssh(1). | 22:36 |
zyga | fullermd: TBH, I only care about lp and local work, everything else is gone | 22:36 |
jderose | gotcha, then that's easy to replace | 22:37 |
fullermd | Or even putty or something on Win, I think. | 22:37 |
zyga | fullermd: I don't care for windows yet, lots of issues for no gain for now | 22:37 |
fullermd | But thinking about it, it probably IS used for sftp. How common that still is, I dunno; it's probably mostly OBE when the smart server came in, but I'll bet there are still niches. | 22:37 |
jderose | fullermd: what is this "Win" you right-thinking people speak of? :P | 22:37 |
zyga | jderose: the thing with metal bars ;) | 22:38 |
fullermd | It's a recursive toy. You get Win so you can toss it out a Win, for the Win :p | 22:38 |
jderose | fullermd: i think if you have a launchpad account, most tend to use SSH as the transport. stuff like lp:foo automatically gets transformed into a bzr+ssh URI when you've set your launchpad username | 22:39 |
jderose | hehe | 22:39 |
fullermd | Oh, sure. I'm not even sure LP still supports sftp (though of course it used to) | 22:39 |
fullermd | But people do once in a while use bzr on something other than LP :p | 22:39 |
jderose | launchpad definitely supports SSH still | 22:40 |
fullermd | You mean sftp, or bzr+ssh? They're two vastly different things. | 22:40 |
jderose | er, yeah, i mean bzr+ssh:// not sftp:// | 22:40 |
jderose | not sure about the later | 22:40 |
fullermd | Yeah, bzr+ssh [almost] always calls out to a command-line ssh(1) if it can. Pretty sure sftp is all done via paramiko though. | 22:41 |
jderose | interesting... i would have guessed the oposite | 22:41 |
jderose | but dropping a dependencies is always good :) | 22:41 |
fullermd | Well, over ssh it just uses it as a tunnel to blat bytes over. It could probably be made to support bzr+rsh in about 2 minutes if somebody wanted to. | 22:41 |
fullermd | But sftp, you'd have to interactively script a program or something to call out like that, which is icky. | 22:42 |
jderose | gotcha | 22:42 |
fullermd | I'm not sure that e.g. OpenSSH's sftp(1) even lets you do all the stuff bzr tries behind the scenes. The sftp protocol is hyuge compared to the 2 or 3 things 99% of the uses do. | 22:43 |
zyga | mmm | 22:43 |
zyga | I'm quite interested in what github did | 22:43 |
zyga | with their move to abandon git:// and ssh and use https for everything | 22:43 |
zyga | they still support that but actively discourage it | 22:43 |
fullermd | Obviously, got hold of some very good drugs. They went with git, after all. | 22:43 |
zyga | fullermd: indeed | 22:44 |
zyga | git has a very simple model and no content type conflicts ;) | 22:44 |
jderose | plus their excellent security track record :D | 22:44 |
zyga | jderose: who cares, they are being used | 22:44 |
jderose | i'm pretty sure these days you can replace "who" with "governments, large companies, non profits, etc..." :P | 22:45 |
zyga | jderose: the same ones that run java and winxp | 22:46 |
fullermd | No, I'm pretty sure nobody cares about security, just like the last 20 years... | 22:46 |
zyga | jderose: I agree that security is good but secure dead software is not useful | 22:46 |
jderose | true | 22:46 |
zyga | they care about wiretaps but they don't really care that $vendor got owned $number of times as everyone gets owned once in a while | 22:47 |
zyga | jderose: if security was important we'd be running solaris, not linux ;) | 22:47 |
fullermd | Nah, I'd vote for AIX. | 22:48 |
* zyga is too young for that | 22:48 | |
fullermd | When I _adminned_ an AIX box, I could never get it to do what it was supposed to. How's somebody who's not root gonna pull it off? | 22:48 |
zyga | btw, is knit a word I should know or some fancy invention? | 22:49 |
fullermd | Well, I'd expect you to know it as a word in general. The application into version control is a bit of an analogical invention. | 22:50 |
zyga | fullermd: I'm not familiar with it | 22:50 |
zyga | fullermd: what does it mean? | 22:50 |
jderose | fullermd: knit was a specific repository format, right? | 22:50 |
* zyga is google lazy while reading python on the next monitor | 22:50 | |
fullermd | The way you make socks and sweaters and scarves and such? | 22:51 |
zyga | aaah | 22:51 |
zyga | from tiny threads and such? | 22:51 |
fullermd | In bzr, it was a history storage format, succeeding weaves. | 22:51 |
jderose | fullermd: is knit the current history format then? | 22:51 |
fullermd | (hence the choice of naming; knits are like weaves, but append-only instead of constantly re-weaving, and since you knit purely from a top end...) | 22:51 |
fullermd | No, [pure-]knit was replaced by pack-0.92 which used knits internally, and that was replaced by 2a. | 22:52 |
jderose | ah, gotcha | 22:52 |
fullermd | I still come across pack-0.92 stuff occasionally, but it's gotten pretty rare. | 22:52 |
jderose | ah, i remember when pack-0.92 was the new hotness :P | 22:53 |
fullermd | The re-weaving with weaves was crazy expensive. | 22:53 |
fullermd | I remember back when bzr.dev was still in weaves, and I had to carefully time my daily pulls, because they would nail up the CPU for about 20 minutes. | 22:54 |
jderose | hehe | 22:54 |
fullermd | (the crazy-slow reputation bzr still carries may be almost totally historical, but it sure was earned at one time...) | 22:54 |
jderose | yeah, i do remember those days | 22:55 |
fullermd | knits were a huge improvement. packs made a number of things better too; for one thing, I could take annoying hacks out of my Apache config to avoid interpretting the knit filenames. | 22:56 |
zyga | well | 22:56 |
zyga | it's not crazy slow | 22:56 |
zyga | but noticeably slower than git on anything | 22:56 |
zyga | and pushing is dead slow | 22:56 |
fullermd | Try it with weaves; you'll get a great appreciation for how fast it is now :p | 22:56 |
zyga | not sure if lp or bzr are to blame there | 22:56 |
zyga | hehe | 22:56 |
zyga | I remember all the old versions of bzr | 22:57 |
fullermd | But it is python, so stuff like startup is always gonna be way slower. | 22:57 |
zyga | I was using it from the start, almost | 22:57 |
zyga | way before I joined Canonical | 22:57 |
fullermd | Those lazy imports you were talking about were a major improvement in that. | 22:57 |
zyga | yeah, I know | 22:57 |
zyga | now I'm just killing the magic to get 2to3 to see stuff | 22:57 |
* fullermd pictures you with a 7 foot spear standing over a dead unicorn... | 22:57 | |
zyga | fullermd: but they are full of candy inside | 22:58 |
zyga | ;) | 22:58 |
fullermd | I have vague memories of 2to3 experiments a couple years ago. Seems like a few bumps were hit and then it was set aside due to nobody caring enough at the time. | 23:01 |
fullermd | Probably far enough back now that whatever lessons were learned are pretty stale. | 23:02 |
zyga | fullermd: I think that 2 and 3 codebase is hard | 23:02 |
zyga | fullermd: especially since bzr still supports really old code syntax | 23:02 |
fullermd | I think the really old stuff is gone (or at least not necessary); think the last few major releases have been 2.6+ only. | 23:03 |
fullermd | (3 being a major reason behind that) | 23:03 |
zyga | fullermd: the code is full of 3.0 incompatible syntax though | 23:04 |
zyga | fullermd: one thing I learned to like about recent pythons | 23:04 |
zyga | fullermd: is that I can drop hacks | 23:04 |
fullermd | Oh, sure. But dropping 2.4 meant we could dump a lot of _required_ 3.0 incompatible stuff. | 23:04 |
zyga | fullermd: drop static copies of stuff I needed but wasn't around | 23:04 |
zyga | fullermd: and that my code kept getting smaller and easier to follow | 23:04 |
zyga | fullermd: I think that 3.2+ is good enough though 3.3 could be sweeter as it has even more goodies that can replace bzrlib home-grown code | 23:05 |
fullermd | I'd bet there's a lot of stuff hiding around in bzrlib that's still 2.4 compatible but doesn't have to be. | 23:05 |
zyga | yeah | 23:05 |
* zyga just read 'this is not present in python2.2 so here's a copy' in one file | 23:06 | |
zyga | 2.2 | 23:06 |
zyga | configobj.py | 23:06 |
fullermd | Hey, it's a palindromic version. Gotta support those. | 23:07 |
zyga | what is rio | 23:07 |
fullermd | Serialization format, I vaguely remember? | 23:07 |
zyga | hmm | 23:07 |
zyga | relevant? | 23:07 |
fullermd | I _think_ it was something from old formats, like pre-pack knits and before. But that's very vague memory. | 23:08 |
zyga | one thing I always liked about bzr is that it was a promise of pythonic api for vcs'es | 23:08 |
zyga | but it was so complex that I never really got to like it or felt it was simple | 23:08 |
zyga | and the layers of layers of indirections were a major factor each time I tried following the code | 23:09 |
fullermd | Hey, don't tell that to me; I'm the guy who doesn't like OO wholesale :p | 23:10 |
zyga | python2.4 support is alive and strong in some files :) | 23:11 |
fullermd | Looks like it was the 2.4 release series that officially dropped py2.4 and 2.5 support. Appropriate. | 23:15 |
Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!