[07:36] <dlee> I've tried to avoid asking this here, but after fighting to install a sufficiently full Python 2.6 to support Bzr but failing...
[07:36] <lifeless> what platform?
[07:36] <dlee> I'm trying to set up Bzr to do web site file vc on a remote server that, amazingly, seems only to have Python 1.5 and 2.1.  Is there a way to get Bzr running without an actual Python installation?  This is Linux, though I don't know which distro at this point.
[07:37] <lifeless> you could possibly use freeze
[07:37] <dlee> freeze?
[07:37]  * wgrant wouldn't be storing anything on that server...
[07:37] <lifeless> you'd need to do considerable work to make that get all the lazy-loaded modules correctly though
[07:37] <lifeless> dlee: its a python thing, makes a big C file with the python pyc files embedded as constant strings.
[07:38] <lifeless> http://wiki.python.org/moin/Freeze
[07:39] <dlee> wgrant: hehehe, it's not my web site though, so not my choice there.  Lifeless: thanks I'll look there.
[07:39] <dlee> Probably more trouble than it's worth... so far I've been doing the ssh/rsync-then-bzr thing, but it's not as easy to use bzr to recover from a mistake real quick that way.
[07:40] <davidstrauss> dlee: Try some of the publishing plugins
[07:40] <wgrant> bzr-upload!
[07:40] <dlee> Thought of that, but I'm not the only updater, just the only one with a vc approach atm.  Don't want to clobber someone else's work.
[07:42] <dlee> I was hoping for a static bzr for Linux like we (sort of) have for Windows.
[07:48] <dlee> lifeless: I see from your page that -X excludes, so I bet -I includes.  Would it be sufficient to collect all lazy import lines via grep over bzr source, then make a -I for each?
[07:48] <lifeless> I don't know
[07:49] <lifeless> how do the other editors coordinate their changes?
[07:50] <dlee> This is not a busy development project.  The site needs significant overhall, but everyone else is just making as-needed small changes.  My concern with a publish-based approach is that I'd miss that someone made one and it would be replaced quietly.
[07:52] <dlee> Mostly I'm trying to use bzr as a safety net.  The site is live, there's no staging version, and it's interconnected enough (database, streaming software on other machines etc.) that I'm not sure how to make that happen.  I'm nervous making sweeping updates to a live site w/o a fallback plan.
[07:52] <lifeless> I'd consider rsyncing from the site to your machine; commit; bzr upload
[07:53] <lifeless> that doesn't seem to have a wider race condition than editing by hand on a live server :>
[07:54] <dlee> rsync/commit is what I've been doing, but I never tried publishing back from here to there.  That would certainly be easier to set up...
[07:55] <dlee> It does prevent bzr diff on server before upload, but even my proposal has leaks.  Thanks much all, and keep up the good work. :)
[09:26] <Stavros> hello
[09:26] <Stavros> i have two diverged branches, how can i replace one with the other?
[09:26] <Stavros> bzr pull --overwrite?
[09:56] <bialix> igc: ping
[09:58] <bialix> igc: qrun!!!
[10:03] <bialix> igc: check https://bugs.launchpad.net/qbzr/+bug/416939
[13:10] <cha0s> hey guys... anyone tried running bzr with an expect script? it keeps dying when i try
[13:12] <cha0s> here's my script: http://codepad.org/PXfNA1J0
[15:21] <cha0s> say i have a repository 'foo', and there's another repository under it at 'foo/bar'. how do i bzr add foo/bar to the repo in foo? it seems like bzr is totally ignoring it.
[15:32] <cha0s> say i have a repository 'foo', and there's another repository under it at 'foo/bar'. how do i bzr add foo/bar to the repo in foo? it seems like bzr is totally ignoring it.
[16:44] <LarstiQ> cha0s: I presume you mean branch, and not repository.
[16:45] <LarstiQ> cha0s: the answer probably is, you don't
[16:45] <LarstiQ> cha0s: possibly you want join, but I'm thinking you want something that isn't there yet
[16:46] <LarstiQ> cha0s: alternatives are using https://launchpad.net/bzr-scmproj, config-manager or just versioing symlinks (and possibly zc.buildout or similar for deploymnet)
[19:15] <Noldorin> lifeless: hello?
[19:27] <alsuren> hey chaps. I'm trying to run a bzr http smart server using cgi and it's giving me Logger instance has no attribute 'status'
[19:27] <alsuren> have you done some horrible monkey-patching to the logging module?
[19:28] <alsuren> oops. My bad
[19:44] <sveinung> hello. I'm getting the same backtrace as in bug 417238, but I also had the same issue with the version of bzr-fastimport in Squeeze
[19:44] <sveinung> should I repoen the bug or is this a different issue?
[19:46] <sveinung> (I get it when I try to fast-import data on top of another one helped by --import-marks)
[19:46] <bialix> sveinung: please, report it as separate bug report but add note about existing bug
[19:47] <sveinung> ok
[19:47] <sveinung> thank you
[19:47] <bialix> author of fast-import (igc) will decide is it duplicate or not and will be able to mark it correspondingly
[19:49] <bialix> sveinung: and ensure you're using fresh version from trunk
[19:50] <sveinung> bialix: sure. Checked it out today, will check out again before reporting just to be sure
[19:50] <bialix> ok
[20:20] <alsuren> is it possible to store a bzr repo in an sql/bigtable database?
[20:20]  * kfogel is away: packing up laptop to go to onShore.  again.
[20:23] <bialix> alsuren: in theory: yes
[20:24] <alsuren> bialix: "go implement" right?
[20:24] <bialix> ?
[20:25] <alsuren> bialix: if I want it I'll have to implement it myself?
[20:25] <bialix> well, yes
[20:25] <bialix> I mean it's possible
[20:26] <bialix> either as custom transport or as custom repository format
[20:26] <bialix> perhaps the latter
[20:26] <bialix> and you can implement it as plugin
[20:27] <alsuren> bialix: the problem is this: we have a windows server with broken ftp
[20:28] <bialix> that's bad
[20:28] <alsuren> it works for normal file transfer most of the time, but bzr breaks
[20:28] <bialix> I'm sure you have file a bug already
[20:28] <alsuren> yeah. Noldorin did
[20:29] <bialix> oh
[20:29] <bialix> I'm aware of that bug, but don't dive too deep into
[20:30] <alsuren> I tried hacking together a cgi-wsgi gateway but then realised that cgi scripts don't have write access to the filesystem
[20:30] <bialix> and you can't use bzr+ssh or bzr+http solution?
[20:30] <alsuren> so bzr+http doesn't work
[20:30] <bialix> I know webdav is another option
[20:31] <bialix> can you?..
[20:31] <alsuren> that also requires server support
[20:31] <alsuren> they don't offer dav
[20:31] <bialix> alsuren: I'm not sure what lifeless told you or Noldorin
[20:32] <bialix> but maybe will be simpler to try to hack around ftp transport
[20:32] <alsuren> so the only option left is either fix/workaround the bug noldorin reported or write a bzr+http transport that can commit to sql
[20:33] <luks> what bug is that?
[20:33] <bialix> the latter will require custom branch/repository format
[20:33] <luks> writing a sql backend would be work for a few months, IMO
[20:33] <bialix> yep, a lot of work
[20:33] <bialix> luks: hi btw
[20:33] <luks> hi
[20:35] <bialix> alsuren: can you say bug number?
[20:35] <alsuren> does bzr+http use a standard wire protocol for all repo formats, like hg's wire protocol, or is it made of bong?
[20:36] <alsuren> bialix:  https://bugs.launchpad.net/bzr/+bug/412244?comments=all according to my ff history
[20:36] <bialix> luks ^
[20:36] <alsuren> what about the wire protool stuff?
[20:37] <bialix> wire protocol?
[20:37] <alsuren> how does bzr+http work?
[20:37] <bialix> for FTP transport bzr uses only filesystem operations
[20:38] <bialix> it uses bzr smart server protocol under the hood
[20:38] <bialix> bzr+http ^
[20:38] <alsuren> and the smart server protocol is repo format agnostic?
[20:39] <bialix> mostly AFAIK
[20:39] <luks> the smart server protocol does very little actually
[20:39] <luks> it's a RPC service
[20:40] <bialix> there is still a lot of VFS calls in smart server protocol
[20:40] <bialix> core devs trying to get rid of them and convert it to pure RPC, but it's not yet here
[20:40] <luks> bialix: well, those VFS calls are also RPC calls :)
[20:41] <lifeless> moin
[20:41] <bialix> yes, of course
[20:41] <luks> alsuren: can't you just setup a windows share and be done with it?
[20:41] <Noldorin> hi lifeless
[20:41] <bialix> but they are trying to direct access filesystem on the server
[20:41] <Noldorin> have i managed to catch you at work now?
[20:41] <alsuren> okay, so if we want to hack something together, we should add an sql vfs layer and make the smart server pretend that it's committing to a standard filesystem?
[20:42] <Noldorin> ew
[20:42] <luks> heh, that's really going to be a seriously large project
[20:42] <bialix> alsuren: luks question
[20:42] <Noldorin> this makes me want to get the ftp stuff fixed all the more
[20:43] <lifeless> what does
[20:43] <alsuren> Noldorin: can you get the host to give you a CIFS share?
[20:43] <Noldorin> lifeless: the alternative.
[20:43] <Noldorin> bzr+http/smart server
[20:44] <Noldorin> lifeless: so basically, i got another reply from my admin saying there's no problem
[20:44] <Noldorin> !
[20:44] <Noldorin> :S
[20:44] <Noldorin> looks like it's up to us
[20:44] <lifeless> seriously, wow.
[20:44] <lifeless> just ...
[20:44] <lifeless> wow
[20:44] <Noldorin> i know. idiots
[20:44] <Noldorin> i'm not even sure they've run the script
[20:44] <lifeless> I mean, I can understand stubborn.
[20:44] <Noldorin> which i took time to put together for them
[20:45] <Noldorin> so they need not even use bzr
[20:45] <lifeless> are they external to your company?
[20:45] <Noldorin> lifeless: fcgi storm internet
[20:45] <Noldorin> erm, stupid clipboard
[20:45] <Noldorin> lifeless: http://www.storminternet.co.uk/
[20:46] <Noldorin> this is actually for my personal website. (though i also happen to manage the company website with them)
[20:50] <Noldorin> lifeless: so where do we go now?
[20:50] <alsuren> okay. Dinner time for me
[20:51] <Noldorin> alsuren: see you in a bigt
[20:51] <alsuren> if anyone knows how hard an sql vfs layer would be to write, tell me
[20:52] <lifeless> alsuren: not hard, but why?
[20:53] <Noldorin> he's off now
[20:53] <lifeless> Noldorin: are there any other protocols you can use to push to this site?
[20:53] <Noldorin> lifeless: alsuren is trying to help me work around this ftp problem to get a bzr repo on my server another way
[20:53] <Noldorin> that's what we're thinking
[20:53] <Noldorin> http with a smart server is the only other option really
[20:53] <Noldorin> lifeless: might we try hacking the bzr source any more?
[20:53] <lifeless> Noldorin: it would be faster than ftp
[20:54] <Noldorin> ah right
[20:54] <lifeless> Noldorin: we could add a workaround, but it will be extremely slow.
[20:54] <Noldorin> fair enough then
[20:54] <Noldorin> i think we should try the smart server approach
[20:54] <lifeless> you've reported that it takes them up to 30 seconds to action a delete
[20:54] <Noldorin> yes. more commonly about 5-10 though
[20:55] <lifeless> still, what should be a milliscond operation will take that long
[20:55] <Noldorin> indeed
[20:55] <Noldorin> it's baffling. the admin's reply, included.
[20:56] <lifeless> I have to admit, if they were my webhost I'd be escalating to the support manager
[20:56] <lifeless> or higher
[20:56] <Noldorin> lifeless: to be quite honest, i think i will
[20:56] <Noldorin> i sent the last email to them on friday
[20:56] <Noldorin> and they haven't replied since (despite supposed 24/7 support)
[20:57] <Noldorin> but tomorrow i'm going to get on their case
[21:30] <alsuren> lifeless: how long do you think it would take/how would you do it?
[21:33] <alsuren> the hg/bigtable chaps just use a database with strings as keys and binary blobs as values
[21:34] <alsuren> but I don't know whether sql server has a size limit for binary blobs, or whether I'm going to get screwed by it
[21:40] <lifeless> a VFS on SQL? a day or so. bzr performing well on top of it? I don't think its possible.
[21:40] <alsuren> "well"?
[21:40] <lifeless> if you want bzr on SQL, write a SQLBranch and SQLRepository objects.
[21:40] <alsuren> lifeless: but then you need both client and server support
[21:41] <alsuren> surely?
[21:41] <lifeless> if you want all of bzr's networking features yes. And I'm sure you'd run into a number of TODO's along the way.
[21:41] <lifeless> whats the overall goal here though?
[21:42] <alsuren> honestly to work around Noldorin's broken ftp server
[21:43] <lifeless> adding a 30 second spinlock will be a lot less work
[21:43] <lifeless> or doing http+wsgi with the smart server
[21:43] <lifeless> or even bzr+ssh, if they support that
[21:43] <Noldorin> back
[21:43] <Noldorin> hmm
[21:43] <alsuren> yeah, given that the http server mounts the FS read only
[21:43] <lifeless> I'd be surprised if they let arbitrary clients attach to SQL over the internet
[21:44] <Noldorin> no SSH i don't think
[21:44] <Noldorin> lifeless: they do
[21:44] <lifeless> even anonymous?
[21:44] <Noldorin> if by attach you mean connect?
[21:44] <Noldorin> no
[21:44] <Noldorin> requires a login
[21:44] <lifeless> so whats in the repository
[21:45] <Noldorin> erm, just project work
[21:45] <Noldorin> i have various personal and open-source projects i manage
[21:45] <alsuren> lifeless: the sql idea would be bzr+http -> cgi script -> vfs hack -> sql
[21:45] <lifeless> I mean
[21:45] <lifeless> is it meant to be the website content?
[21:46] <lifeless> is it meant to be branchable by anonymous, or just by you?
[21:46] <lifeless> or by $some_group?
[21:46] <alsuren> lifeless: needs to be private because Noldorin has a habit of storing passwords in his repos like the closed source .NET developer that he secretly is
[21:47] <lifeless> do they allow SMB/CIFS access?
[21:47] <lifeless> or webdav?
[21:47] <alsuren> no
[21:53] <alsuren> so if we manage to develop/test a spinlock hack and it works on one machine, what are the chances it will make it upstream?
[21:53] <Noldorin> alsuren: thanks a lot.
[21:54] <alsuren> it's funny beause it's true :P
[21:54] <lifeless> alsuren: as an optionally enabled tool, there's no problem includin it in  the core
[21:54] <Noldorin> lifeless: everything the server supports is listed on that page
[21:54] <Noldorin> alsuren: i have a private repos dir on my site, which isn't accessible via ftp btw :P
[21:54] <alsuren> oh like bzr push --workaround-broken-ftp ftp://user:pass@host.com/repo ?
[21:55] <lifeless> alsuren: or export BZR_FTP_DELETE_TAKES=30
[21:55] <lifeless> or even a locations.conf setting
[21:57] <alsuren> 30 sounds like a timeout. Is that what we want or do we want to repeatedly test?#
[21:58] <lifeless> it may well repeatedly test under the hood
[21:58] <lifeless> but we don't want to spin-on-unlock forever
[21:58] <lifeless> in fact, bzr spinlocks already, you see
[21:58] <lifeless> so in theory just leaving it to spin for 30 seconds should work today
[21:59] <alsuren> oh I see
[21:59]  * alsuren is ignorant
[22:00] <alsuren> one other thing: do you think we actually have any ordering guarantees anymore, or is the lock going to say it's gone but still leave the repo in an unusable state?
[22:01] <lifeless> its entirely possible that replacing the root node in the repo, and the branch tip data will be extremely fragile in this environment
[22:01] <lifeless> I won't make any guesses about what will go right ;)
[22:03] <alsuren> take-home lesson: microsoft is shit at conforming to protocol specifications?
[22:04] <alsuren> meh
[22:05] <lifeless> I'm pretty sure its not stock IIS doing this
[22:05] <lifeless> the ISP may be backing on a high latency  cluster server, for instance
[22:06] <lifeless> with a distributed lock manager for locking, but we can't see the lock manager using plain ol ftp. Its definitely a bug or deployment issue :P
[22:06] <lifeless> MS FTP has issues I've seen other users encounter, but to date this one is unique - and most FTP servers have quirks of their own :)
[22:07] <Noldorin> lifeless: yeah, i think we agreed it's not standalone Windows FTP server causing the problem here
[22:07] <Noldorin> some silly virus scanner they have running or something
[22:07] <Noldorin> or some module installed
[22:08] <alsuren> Noldorin: might be worth testing on some other host, like that free MS student offer thing
[22:09] <Noldorin> probably won't give very interesting results though
[22:11] <Noldorin> hrmm
[22:11] <Noldorin> so what is the conclusion here?
[22:11] <Noldorin> which protocol are we going for?
[22:18] <alsuren> Noldorin: ftp with a 30 second spinlock is the thing to try. Just patch it into your client and see if it works
[22:18] <Noldorin> alsuren: you don't need to tell me that. :)
[22:18] <Noldorin> that's what i determined with lifeless
[22:18] <Noldorin> but we thought it wouldn 't be too practical
[22:19] <alsuren> but writing an sql backend will be even less practical
[22:20] <alsuren> academically quite an interesting project, but not something you could hack together quickly
[22:21] <Noldorin> pestering the server admins until they fix the darned issue will be the best solution :)
[22:21] <Noldorin> though possibly the most effort
[22:21] <Noldorin> alsuren: yeah, true. i don't exactly have time for any more projects now, as you know though
[22:22] <thumper> alsuren: I'd be interested if you put together a functional sql backend :)
[22:23] <alsuren> thumper: propose it as a GSoC project for next year
[22:23] <thumper> hmm..
[22:24] <thumper> especially if we can get good locking and high performance out of it
[22:24] <thumper> isolation would need to be solved
[22:24] <lifeless> so
[22:24] <thumper> but then "one repo for the whole world, mwa haha"
[22:24] <alsuren> thumper: though google would probably want it to work on bigtable and pals too, like their hg hack does
[22:24] <Noldorin> alsuren: lol.
[22:24] <lifeless> a bigtable like solution may work well; the architecture we have under the hood is vaguely similar
[22:24] <lifeless> I _very much_ doubt that something built on a vfs on sql would perform at all well
[22:25] <alsuren> lifeless: what? and host it on google app engine using datastore?
[22:26] <lifeless> alsuren: thumper is asking because launchpad hosts 100's of thousands of branches
[22:26] <alsuren> that would be fun and games. I'd be up for that if someone would give me £1000 for it
[22:27] <lifeless> google app engine is not scaled for individual apps in that manner
[22:29] <alsuren> thumper: fancy giving me a job at canonical? :D I could fix up the project management features of launchpad while I'm at it.
[22:30] <thumper> alsuren: :)
[22:30] <thumper> alsuren: patches accepted now for LP :)
[22:31] <thumper> alsuren: I found my job at canonical by watching the canonical employment page
[22:32] <alsuren> thumper: I offered to help, if someone would mentor me https://bugs.edge.launchpad.net/launchpad/+bug/413462
[22:32] <Noldorin> alsuren: you fancy going up to the isle of man, too? :P
[22:34] <alsuren> lifeless: but I'm no longer a student, so I can't really spend too long on anything that's not going to get me a job
[23:20] <poolie> hi all
[23:21] <lifeless> hai
[23:25] <igc> morning
[23:25] <igc> hi lifeless, poolie
[23:31] <poolie> hi igc
[23:57] <blizzkid> lo all, I did   bzr branch lp:~segphault/gwibber/service-split After that I added a file, but on bzr commit I get bzr: ERROR: No changes to commit. Use --unchanged to commit anyhow. What am I missing or doing wrong?
[23:58] <lifeless> have you run 'bzr add'?
[23:59] <blizzkid> lifeless: just after hitting enter I realised I forgot about that one *shame*