/srv/irclogs.ubuntu.com/2009/08/23/#bzr.txt

dleeI'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
lifelesswhat platform?07:36
dleeI'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:36
lifelessyou could possibly use freeze07:37
dleefreeze?07:37
* wgrant wouldn't be storing anything on that server...07:37
lifelessyou'd need to do considerable work to make that get all the lazy-loaded modules correctly though07:37
lifelessdlee: its a python thing, makes a big C file with the python pyc files embedded as constant strings.07:37
lifelesshttp://wiki.python.org/moin/Freeze07:38
dleewgrant: hehehe, it's not my web site though, so not my choice there.  Lifeless: thanks I'll look there.07:39
dleeProbably 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:39
davidstraussdlee: Try some of the publishing plugins07:40
wgrantbzr-upload!07:40
dleeThought 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:40
dleeI was hoping for a static bzr for Linux like we (sort of) have for Windows.07:42
dleelifeless: 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
lifelessI don't know07:48
lifelesshow do the other editors coordinate their changes?07:49
dleeThis 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:50
dleeMostly 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
lifelessI'd consider rsyncing from the site to your machine; commit; bzr upload07:52
lifelessthat doesn't seem to have a wider race condition than editing by hand on a live server :>07:53
dleersync/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:54
dleeIt does prevent bzr diff on server before upload, but even my proposal has leaks.  Thanks much all, and keep up the good work. :)07:55
Stavroshello09:26
Stavrosi have two diverged branches, how can i replace one with the other?09:26
Stavrosbzr pull --overwrite?09:26
bialixigc: ping09:56
bialixigc: qrun!!!09:58
bialixigc: check https://bugs.launchpad.net/qbzr/+bug/41693910:03
ubottuLaunchpad bug 416939 in qbzr "qrun command needed as universal bzr commands launcher" [Medium,In progress]10:03
=== ejat is now known as e-jat
cha0shey guys... anyone tried running bzr with an expect script? it keeps dying when i try13:10
cha0shere's my script: http://codepad.org/PXfNA1J013:12
cha0ssay 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:21
cha0ssay 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
LarstiQcha0s: I presume you mean branch, and not repository.16:44
LarstiQcha0s: the answer probably is, you don't16:45
LarstiQcha0s: possibly you want join, but I'm thinking you want something that isn't there yet16:45
LarstiQcha0s: alternatives are using https://launchpad.net/bzr-scmproj, config-manager or just versioing symlinks (and possibly zc.buildout or similar for deploymnet)16:46
=== lamont` is now known as lamont
Noldorinlifeless: hello?19:15
alsurenhey 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
alsurenhave you done some horrible monkey-patching to the logging module?19:27
alsurenoops. My bad19:28
sveinunghello. I'm getting the same backtrace as in bug 417238, but I also had the same issue with the version of bzr-fastimport in Squeeze19:44
ubottuLaunchpad bug 417238 in bzr-fastimport "KeyError trying to import a bzr fast-export" [High,Fix released] https://launchpad.net/bugs/41723819:44
sveinungshould I repoen the bug or is this a different issue?19:44
sveinung(I get it when I try to fast-import data on top of another one helped by --import-marks)19:46
bialixsveinung: please, report it as separate bug report but add note about existing bug19:46
sveinungok19:47
sveinungthank you19:47
bialixauthor of fast-import (igc) will decide is it duplicate or not and will be able to mark it correspondingly19:47
bialixsveinung: and ensure you're using fresh version from trunk19:49
sveinungbialix: sure. Checked it out today, will check out again before reporting just to be sure19:50
bialixok19:50
alsurenis 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:20
bialixalsuren: in theory: yes20:23
alsurenbialix: "go implement" right?20:24
bialix?20:24
alsurenbialix: if I want it I'll have to implement it myself?20:25
bialixwell, yes20:25
bialixI mean it's possible20:25
bialixeither as custom transport or as custom repository format20:26
bialixperhaps the latter20:26
bialixand you can implement it as plugin20:26
alsurenbialix: the problem is this: we have a windows server with broken ftp20:27
bialixthat's bad20:28
alsurenit works for normal file transfer most of the time, but bzr breaks20:28
bialixI'm sure you have file a bug already20:28
alsurenyeah. Noldorin did20:28
bialixoh20:29
bialixI'm aware of that bug, but don't dive too deep into20:29
alsurenI tried hacking together a cgi-wsgi gateway but then realised that cgi scripts don't have write access to the filesystem20:30
bialixand you can't use bzr+ssh or bzr+http solution?20:30
alsurenso bzr+http doesn't work20:30
bialixI know webdav is another option20:30
bialixcan you?..20:31
alsurenthat also requires server support20:31
alsurenthey don't offer dav20:31
bialixalsuren: I'm not sure what lifeless told you or Noldorin20:31
bialixbut maybe will be simpler to try to hack around ftp transport20:32
alsurenso the only option left is either fix/workaround the bug noldorin reported or write a bzr+http transport that can commit to sql20:32
lukswhat bug is that?20:33
bialixthe latter will require custom branch/repository format20:33
lukswriting a sql backend would be work for a few months, IMO20:33
bialixyep, a lot of work20:33
bialixluks: hi btw20:33
lukshi20:33
bialixalsuren: can you say bug number?20:35
alsurendoes bzr+http use a standard wire protocol for all repo formats, like hg's wire protocol, or is it made of bong?20:35
alsurenbialix:  https://bugs.launchpad.net/bzr/+bug/412244?comments=all according to my ff history20:36
ubottuLaunchpad bug 412244 in bzr "unlock fails to unlock over FTP with Windows FTP server (Microsoft FTP Service IIS6)" [Medium,Confirmed]20:36
bialixluks ^20:36
alsurenwhat about the wire protool stuff?20:36
bialixwire protocol?20:37
alsurenhow does bzr+http work?20:37
bialixfor FTP transport bzr uses only filesystem operations20:37
bialixit uses bzr smart server protocol under the hood20:38
bialixbzr+http ^20:38
alsurenand the smart server protocol is repo format agnostic?20:38
bialixmostly AFAIK20:39
luksthe smart server protocol does very little actually20:39
luksit's a RPC service20:39
bialixthere is still a lot of VFS calls in smart server protocol20:40
bialixcore devs trying to get rid of them and convert it to pure RPC, but it's not yet here20:40
luksbialix: well, those VFS calls are also RPC calls :)20:40
lifelessmoin20:41
bialixyes, of course20:41
luksalsuren: can't you just setup a windows share and be done with it?20:41
Noldorinhi lifeless20:41
bialixbut they are trying to direct access filesystem on the server20:41
Noldorinhave i managed to catch you at work now?20:41
alsurenokay, 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:41
Noldorinew20:42
luksheh, that's really going to be a seriously large project20:42
bialixalsuren: luks question20:42
Noldorinthis makes me want to get the ftp stuff fixed all the more20:42
lifelesswhat does20:43
alsurenNoldorin: can you get the host to give you a CIFS share?20:43
Noldorinlifeless: the alternative.20:43
Noldorinbzr+http/smart server20:43
Noldorinlifeless: so basically, i got another reply from my admin saying there's no problem20:44
Noldorin!20:44
Noldorin:S20:44
Noldorinlooks like it's up to us20:44
lifelessseriously, wow.20:44
lifelessjust ...20:44
lifelesswow20:44
Noldorini know. idiots20:44
Noldorini'm not even sure they've run the script20:44
lifelessI mean, I can understand stubborn.20:44
Noldorinwhich i took time to put together for them20:44
Noldorinso they need not even use bzr20:45
lifelessare they external to your company?20:45
Noldorinlifeless: fcgi storm internet20:45
Noldorinerm, stupid clipboard20:45
Noldorinlifeless: http://www.storminternet.co.uk/20:45
Noldorinthis is actually for my personal website. (though i also happen to manage the company website with them)20:46
Noldorinlifeless: so where do we go now?20:50
alsurenokay. Dinner time for me20:50
Noldorinalsuren: see you in a bigt20:51
alsurenif anyone knows how hard an sql vfs layer would be to write, tell me20:51
lifelessalsuren: not hard, but why?20:52
Noldorinhe's off now20:53
lifelessNoldorin: are there any other protocols you can use to push to this site?20:53
Noldorinlifeless: alsuren is trying to help me work around this ftp problem to get a bzr repo on my server another way20:53
Noldorinthat's what we're thinking20:53
Noldorinhttp with a smart server is the only other option really20:53
Noldorinlifeless: might we try hacking the bzr source any more?20:53
lifelessNoldorin: it would be faster than ftp20:53
Noldorinah right20:54
lifelessNoldorin: we could add a workaround, but it will be extremely slow.20:54
Noldorinfair enough then20:54
Noldorini think we should try the smart server approach20:54
lifelessyou've reported that it takes them up to 30 seconds to action a delete20:54
Noldorinyes. more commonly about 5-10 though20:54
lifelessstill, what should be a milliscond operation will take that long20:55
Noldorinindeed20:55
Noldorinit's baffling. the admin's reply, included.20:55
lifelessI have to admit, if they were my webhost I'd be escalating to the support manager20:56
lifelessor higher20:56
Noldorinlifeless: to be quite honest, i think i will20:56
Noldorini sent the last email to them on friday20:56
Noldorinand they haven't replied since (despite supposed 24/7 support)20:56
Noldorinbut tomorrow i'm going to get on their case20:57
=== abentley1 is now known as abentley
=== JaredWigmore is now known as JaredW
alsurenlifeless: how long do you think it would take/how would you do it?21:30
alsurenthe hg/bigtable chaps just use a database with strings as keys and binary blobs as values21:33
alsurenbut I don't know whether sql server has a size limit for binary blobs, or whether I'm going to get screwed by it21:34
lifelessa 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
lifelessif you want bzr on SQL, write a SQLBranch and SQLRepository objects.21:40
alsurenlifeless: but then you need both client and server support21:40
alsurensurely?21:41
lifelessif 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
lifelesswhats the overall goal here though?21:41
alsurenhonestly to work around Noldorin's broken ftp server21:42
lifelessadding a 30 second spinlock will be a lot less work21:43
lifelessor doing http+wsgi with the smart server21:43
lifelessor even bzr+ssh, if they support that21:43
Noldorinback21:43
Noldorinhmm21:43
alsurenyeah, given that the http server mounts the FS read only21:43
lifelessI'd be surprised if they let arbitrary clients attach to SQL over the internet21:43
Noldorinno SSH i don't think21:44
Noldorinlifeless: they do21:44
lifelesseven anonymous?21:44
Noldorinif by attach you mean connect?21:44
Noldorinno21:44
Noldorinrequires a login21:44
lifelessso whats in the repository21:44
Noldorinerm, just project work21:45
Noldorini have various personal and open-source projects i manage21:45
alsurenlifeless: the sql idea would be bzr+http -> cgi script -> vfs hack -> sql21:45
lifelessI mean21:45
lifelessis it meant to be the website content?21:45
lifelessis it meant to be branchable by anonymous, or just by you?21:46
lifelessor by $some_group?21:46
alsurenlifeless: needs to be private because Noldorin has a habit of storing passwords in his repos like the closed source .NET developer that he secretly is21:46
lifelessdo they allow SMB/CIFS access?21:47
lifelessor webdav?21:47
alsurenno21:47
alsurenso 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
Noldorinalsuren: thanks a lot.21:53
alsurenit's funny beause it's true :P21:54
lifelessalsuren: as an optionally enabled tool, there's no problem includin it in  the core21:54
Noldorinlifeless: everything the server supports is listed on that page21:54
Noldorinalsuren: i have a private repos dir on my site, which isn't accessible via ftp btw :P21:54
alsurenoh like bzr push --workaround-broken-ftp ftp://user:pass@host.com/repo ?21:54
lifelessalsuren: or export BZR_FTP_DELETE_TAKES=3021:55
lifelessor even a locations.conf setting21:55
alsuren30 sounds like a timeout. Is that what we want or do we want to repeatedly test?#21:57
lifelessit may well repeatedly test under the hood21:58
lifelessbut we don't want to spin-on-unlock forever21:58
lifelessin fact, bzr spinlocks already, you see21:58
lifelessso in theory just leaving it to spin for 30 seconds should work today21:58
alsurenoh I see21:59
* alsuren is ignorant21:59
alsurenone 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:00
lifelessits entirely possible that replacing the root node in the repo, and the branch tip data will be extremely fragile in this environment22:01
lifelessI won't make any guesses about what will go right ;)22:01
alsurentake-home lesson: microsoft is shit at conforming to protocol specifications?22:03
alsurenmeh22:04
lifelessI'm pretty sure its not stock IIS doing this22:05
lifelessthe ISP may be backing on a high latency  cluster server, for instance22:05
lifelesswith 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 :P22:06
lifelessMS 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:06
Noldorinlifeless: yeah, i think we agreed it's not standalone Windows FTP server causing the problem here22:07
Noldorinsome silly virus scanner they have running or something22:07
Noldorinor some module installed22:07
alsurenNoldorin: might be worth testing on some other host, like that free MS student offer thing22:08
Noldorinprobably won't give very interesting results though22:09
Noldorinhrmm22:11
Noldorinso what is the conclusion here?22:11
Noldorinwhich protocol are we going for?22:11
alsurenNoldorin: ftp with a 30 second spinlock is the thing to try. Just patch it into your client and see if it works22:18
Noldorinalsuren: you don't need to tell me that. :)22:18
Noldorinthat's what i determined with lifeless22:18
Noldorinbut we thought it wouldn 't be too practical22:18
alsurenbut writing an sql backend will be even less practical22:19
alsurenacademically quite an interesting project, but not something you could hack together quickly22:20
Noldorinpestering the server admins until they fix the darned issue will be the best solution :)22:21
Noldorinthough possibly the most effort22:21
Noldorinalsuren: yeah, true. i don't exactly have time for any more projects now, as you know though22:21
thumperalsuren: I'd be interested if you put together a functional sql backend :)22:22
alsurenthumper: propose it as a GSoC project for next year22:23
thumperhmm..22:23
thumperespecially if we can get good locking and high performance out of it22:24
thumperisolation would need to be solved22:24
lifelessso22:24
thumperbut then "one repo for the whole world, mwa haha"22:24
alsurenthumper: though google would probably want it to work on bigtable and pals too, like their hg hack does22:24
Noldorinalsuren: lol.22:24
lifelessa bigtable like solution may work well; the architecture we have under the hood is vaguely similar22:24
lifelessI _very much_ doubt that something built on a vfs on sql would perform at all well22:24
alsurenlifeless: what? and host it on google app engine using datastore?22:25
lifelessalsuren: thumper is asking because launchpad hosts 100's of thousands of branches22:26
alsurenthat would be fun and games. I'd be up for that if someone would give me £1000 for it22:26
lifelessgoogle app engine is not scaled for individual apps in that manner22:27
alsurenthumper: fancy giving me a job at canonical? :D I could fix up the project management features of launchpad while I'm at it.22:29
thumperalsuren: :)22:30
thumperalsuren: patches accepted now for LP :)22:30
thumperalsuren: I found my job at canonical by watching the canonical employment page22:31
alsurenthumper: I offered to help, if someone would mentor me https://bugs.edge.launchpad.net/launchpad/+bug/41346222:32
ubottuLaunchpad bug 413462 in launchpad "Should be able to see graph of blueprints for whole project." [Undecided,New]22:32
Noldorinalsuren: you fancy going up to the isle of man, too? :P22:32
alsurenlifeless: 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 job22:34
=== alsuren_ is now known as alsuren
pooliehi all23:20
lifelesshai23:21
igcmorning23:25
igchi lifeless, poolie23:25
=== kfogel is now known as this_is_john
pooliehi igc23:31
=== this_is_john is now known as kfogel
blizzkidlo 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:57
lifelesshave you run 'bzr add'?23:58
blizzkidlifeless: just after hitting enter I realised I forgot about that one *shame*23:59

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