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

lifelessmwhudson: ui api changes00:02
lifelessmwhudson: silentuifactory is generally regarded as testing only so if you're using it in production you may need to fix it.00:02
mwhudsonlifeless: all i was doing is calling run_bzr00:03
mwhudsonbut ok00:03
mwhudsonanyway, i cribbed some code to set a ui factory and it works now00:03
lifelessmwhudson: oh, so the default 'call run_bzr' breaks now? I'd really like it if you file a bug about that.00:03
mwhudsonlifeless: yes; ok00:04
mwhudsonlifeless: https://bugs.edge.launchpad.net/bzr/+bug/49963700:06
ubottuUbuntu bug 499637 in bzr "run_bzr() fails unless you set a ui factory" [Undecided,New]00:06
jelmerpoolie: No idea, sorry00:09
jelmerin general, CIFS shares should have the same semantics as NTFS drives00:10
pooliemwhudson: it does mean something to me00:21
pooliemwhudson: it means that you're calling code that wants to do an output stream but you've asked it to be silent00:21
poolieso you have to make up your mind :)00:21
poolieor fix one of these things00:21
mwhudsonpoolie: i haven't asked for it to be silent; that's the default00:22
pooliespiv: bug 495023 is nice :)00:22
ubottuLaunchpad bug 495023 in bzr "Interrupting commit to smart server sometimes removes files" [High,Confirmed] https://launchpad.net/bugs/49502300:22
lifelesspoolie: I think you misread the no idea comment, it was from jelmer00:22
lifelesspoolie: and I think SilentUI should eat an output stream :)00:22
poolielifeless: no i didn't00:22
spivpoolie: if by nice you mean "signals are die die die" :)00:22
spivs/are/argh/00:23
spiv(weird typo!)00:23
scorp007how do I change the submit branch that shows up in bzr info?00:24
lifelesspoolie: ok00:24
poolie:)00:24
lifelesspoolie: ah I see, it made sense to the earlier comment ;)00:25
lifelessscorp007: via bzr submit00:25
scorp007oh00:25
scorp007there's no such command? you mean send?00:26
lifelessyes00:27
lifelesspoolie: and boom, it lands01:02
=== abentley1 is now known as abentley
lifelessjames_w: I've blogged about getting started with bzr-builddeb01:37
lifelesshttp://radar.oreilly.com/2009/12/the-best-and-the-worst-tech-of.html01:41
lifelessI love the quote about scrum-as-practiced :)01:42
spivLaunchpad should announce new merge proposals in this IRC channel.02:40
mwhudsonspiv: statik has a thingummy that does that02:50
mwhudson(it works off email i guess)02:50
spivYeah, something email triggered would do I suppose.02:51
spivI don't want to look after an IRC bot, I want someone else to do all the hard work :)02:51
mwhudsoni suggest you talk to statik then02:53
statikyo02:53
mwhudson!02:53
statikall i had was a procmail rule the spit text at radix's publishbot02:53
statikniemeyers mup supports the same interface02:54
mwhudsonpoolie: where does make_uifactory_for_stream  live?03:54
mwhudsonoh hang on, maybe the checkout i'm grepping is out of date03:54
poolieactually make_ui_for_terminal03:54
pooliein bzrlib.ui03:54
mwhudsonah ok03:54
poolieyou know what i mean :)03:54
mwhudson    ui.ui_factory = ui.make_ui_for_terminal(03:54
mwhudson        sys.stdin, sys.stdout, sys.stderr)03:54
mwhudsondoing this seems to work03:54
mwhudson(i cargo culted that from some where else)03:55
pooliejml, still around?04:03
jmlpoolie, yes.04:34
Viper550okay, used explorer to make a trunk "repository" on my hard drive for something, how do I push it up to lp?04:48
poolielifeless: first test against testtools trunk and it fails with an AttributeError :/06:16
lifelesspoolie: ugh :( pastebin ?06:17
poolie    self.exception_handlers.insert(0,06:18
poolieAttributeError: 'TestAdd' object has no attribute 'exception_handlers'06:18
PengOh? In what, lp:bzr?06:19
lifelesspoolie: that indicates you have an old testtools version06:19
lifelesspoolie: definitely not trunk, or 0.9.206:20
poolieit does look like it06:20
pooliei'm pretty sure i have trunk06:20
lifelesspython -c 'import testtools; print testtools.__file__'06:20
poolieah maybe i have jml's old trunk06:20
pooliei thought you were going to check the version?06:21
pooliehttps://code.edge.launchpad.net/~mbp/bzr/trivial/+merge/1652506:26
pooliebit of a bug in lp that this can happen06:26
lifelessthat what can happen?06:28
pooliethat i can do 'bzr pull' in a checkout of testtools trunk, but not get what's the new trunk06:28
lifelessyes06:28
pooliethis can be seen as a bug in putting the owner into the url06:28
lifelessif jml had moved the branch you would have gotten an error06:29
poolieright06:29
lifelessI consider the bug to be bzr storing the resolved branch though06:29
spivWell, there can be more than one bug :)06:29
poolieanyhow06:29
lifelessspiv: true, but I *like* owner in url :P06:29
pooliedoes it?06:29
lifelessspiv: I'll agree to 'side effect'06:30
pooliei guess it does, though it's possible i just used the full url originally06:30
poolieanyhow06:30
pooliei am glad this is in06:30
pooliei'd like to tweak the display to show errors as they happen06:30
poolieand that's better done not specific to bzr06:30
lifelesspoolie: yes, bzr branch lp:foo -> parent will be bzr+ssh://b.l.n/foo/~bar/baz06:30
poolieassuming it can be merged06:30
lifelesspoolie: so, errors showing as they happen - change bzr's reporter to not use the 'current global ui factory' and instead cache the ui factory it is started with.06:31
poolieok06:32
pooliethat sounds good06:32
lifelesspoolie: tests running with silent ui are hiding reporting of things via note() - I saw this, but its an orthogonal change to the root class06:32
pooliewhat's the connection?06:32
poolieah06:32
lifelessif you run with --parallel=fork, the global ui isn't ever changed, and the current encoded behaviour can be seen. With a normal run, things get masked.06:34
lifelesspoolie: btw you can use the testtools packages in the beta ppa - or install the subunit releases ppa and get subunit and testtools from there.06:34
pooliei know06:35
lifelesspoolie: I'm happy for you to run from trunk of these dependencies, just want to be sure you know its optional.06:35
pooliebut i may actually patch them06:35
poolieso (barely) slightly easier to start with branches06:35
lifelesspoolie: sure. They both have bzr packaging branches, so you can patch with packages too :)06:35
lifelesspoolie: fwiw I run from packages on them, regardless of patched-or-not, it just works out easier overall, I think.06:36
pooliedefinitely helps by the time there are binaries06:37
lifelessSomeone next year I'll do the 'include the failed test work area' patch06:40
lifelessusing the addOnException TestCase api to add a tarball detail06:40
lifelesss/Someone/Sometime/06:41
lifelesspoolie: well, I find it has a bunch of benefits; I find out about things that would make packaging harder (such as files not included in the tarball) early;07:04
lifelessI don't need to remember to set the python path07:04
poolietrue07:04
poolieok, maybe i'll build from them07:04
lifelessand I don't need to futz with a local python install getting in the way in the future.07:04
pooliek07:04
pooliesigning off soon07:05
lifelesssee you in the new year07:07
spivOk, I'm off too.07:17
* lifeless sniffs07:22
lifelessI can't tell from here07:23
lifelessPeng: new test dependency07:23
* Peng nods07:23
lifelessPeng: its in lucid, or the bzr-beta-ppa07:35
PengI've got it from source.07:36
lifelesskk07:43
Fleabaghi07:55
PengI like playing with --parallel, so I already needed it anyway. :P08:11
PengBesides, I don't run the test suite much.08:11
lifelessPeng: :P08:19
PengI should probably RTFM, but: subunit is a superset of testtools, right? And bzr now always depends on testtools, but only uses subunit for --parallel, right?08:22
lifelesssubunit is orthogonal to testtools08:22
PengIt doesn't depend on testtools?08:22
lifelessit does08:22
lifelessso its a superset in the same way that bzrlib is a superset of testtools :)08:23
PengHeh, okay.08:23
lifelesssubunit is: a protocol definition, serialiser in [languages], parser in [languages] and command line filters for the protocol.08:24
PengOooh.08:29
lifelesse.g. see libcppunit-subunit-dev - link that in and use it as your test reporter, and you can use subunit-filter,subunit-stats, subunit-tags etc with your favourite cppunit using test suite.08:36
lifelessand even subunit-diff08:36
ronnylifeless: is there any buildin sheduling  in subunit08:51
ronny(i.e. choosing what tests get executed)08:51
lifelessronny: no, but it encourages an idiom of having unique ids for tests, and you can use subunit-ls to turn a stream into a \n separated list of test ids08:52
lifelesswhich works very will with runners that support choosing based on test id (such as bzr, or zopes test runner)08:52
lifelessronny: however, the python 'subunit.run' module can select tests with whatever granularity you give it. It would be appropriate for that module to gain a --load-list feature, I think.08:53
lifelessronny: (wouldn't help non-python runners, but would be convenient for python folk)08:54
ronnylifeless: im thinking in terms of 2-way communication in ad-hoc networks08:55
lifelessronny: subunit itself is unidirectional, but it should play nice in larger systems that do 2-way stuff (an example of which is vilas patch to bzr selftest --parallel to feed small chunks to the worker processes)08:57
ronnyat least thats what we want to build for py.test and possibly others08:57
lifelessronny: sure, I'd be delighted to see subunit as part of that08:57
ronnylifeless: does it have separate message lines for collect/discover and run?08:58
lifelessit doesn't have the first two concepts08:58
ronnythen there is little use for it08:59
lifelessI think thats a premature opinion08:59
lifelessfor several reasons08:59
lifelessfirstly, subunit passes things it doesn't understand through, so you can embed it in other protocols without needing special out-of-band signalling09:00
lifelesssecondly, setup and control of a test process is a very different problem to machine readable output from the test process; its the latter that subunit provides (and pretty nicely now, I think).09:01
lifelesslastly, setting up a remote process isn't a test protocol problem, its a remote execution problem, and there are plenty of tools to do that today, so I don't see why you'd want to write it again :)09:02
lifelessthe other test protocols around:09:02
lifelesspandokia09:02
lifelesstap09:02
lifelessjunit-xml09:03
lifelessnone of them provide for setting up a remote process09:03
lifeless(pandokia in aggregate does, but not in its test description format)09:03
ronnyhmm09:05
ronnyi suppose i really ought to take another look09:05
ronnydiscovery/feedback will be an important part tho09:06
lifelessI never said it wasn't important :)09:06
lifelesswhat do you mean by feedback09:06
lifelessyou said collect/discovery before09:06
ronnylifeless: test nodes report the tests they discover, the node manager gives feedback on if they should run it09:07
lifelessronny: why do it that way?09:07
ronnythe set of tests that gets run depends on the platform/environment09:08
lifelesssure09:08
lifelessbut that doesn't imply chatty protocols09:08
ronnylifeless: well, parallelize test-runs over a ad-hoc network and it suddenly gets handy09:10
ronnysomething needs to keep track of what tests had been executed09:11
lifelessronny: here is a different way: master node calculates all tests, inspects for machine requirements, partitions by available machines and their info09:11
ronnythats a lot more tricky than just letting things happen and react according to that09:12
lifelessanyhow.. here is how you can do the approach you have in mind with subunit easily09:13
lifelessfrom the node send "available: id\n" to advertise a test that can be run09:14
lifelesson the node read "run: id\n" to run a test, and EOF  to shutdown the node09:14
ronnyyes, thats along what i was thinking09:15
ronnylifeless: feel like adding that as optional extension to subunit, so runners for other languages can add it?09:15
lifelesson the master, hook each nodes output up to either a subunit.ProtocolTestCase or subunit.TestProtocolServer (if you are running twisted or asyncore you'll want the second)09:16
ronnylifeless: we'll most likely be using execnet at least for the setup09:16
lifelessto hook it up, use09:16
lifelessparser = ProtocolTestCase(stream, passthrough=extra)09:17
lifelesswhere extra is a closure with a write method,09:17
lifelessthat write method will get called with "available: id\n" and any other extensions you have.09:17
lifelessand to kick if off with ProtocolTestCasse, do run(masterresultobject)09:18
lifelessusing the TestProtocolServer is slightly different, but not much.09:18
lifelessyou need to arrange to call lineReceived for it.09:18
lifelessronny: are you saying 'reserve the token "available" so that other folk doing similar things might choose the same token'?09:19
ronnylifeless: yes09:19
lifelessronny: If so, I'm happy to note that your project is doing this in the subunit docs09:19
ronnyalso the token run09:19
lifelessronny: subunit won't see the token run at all09:19
lifelessronny: subunit is unidirectional09:20
ronnylifeless: just as note in the docs, so other folks know the feedback protocol09:20
lifelesssure09:20
ronnywell, actually run and skip09:20
lifelessronny: why would you need skip ?09:20
lifelessronny: only tell it to run things you want it to run :)09:21
ronnylifeless: then the collect/run parts would have to be async09:21
lifelessI don't see the connection.09:22
lifelessronny: so, I think a document describing what you're doing and how it hangs together would be great; that could be either included in subunit, or referenced from subunits docs, depending on how you write it and what focus you put in it.09:23
lifelessronny: one thing I've been considering doing is making subunit easier to install with e.g. pip or easy_install.09:23
lifelessronny: I mention this in case ease of install comes up for you.09:24
ronnylifeless: please do that, we'll most likely use virtualenvs09:24
ronnylifeless: as far as i remember various testrunners execute tests as they find them, and dont collect the whole suite before starting test runs09:27
lifelessronny: only nose does that09:27
lifelessronny: you can use a lazy loader to do that in any unittest runner that can run a callable (e.g. via the test_suite idiom)09:27
ronnythats why a skip directive would be helpfull09:29
lifelessronny: sorry, I still don't follow09:29
ronnyjust report what you find as you go, and get feedback on if you should run the tests09:29
lifelessronny: yes, I get that, but I don't see why you need a skip directive on the control side09:30
ronnyi dont like having to guess the dont cases09:30
lifelessseems like a waste to me, but sure, I can see how it would work09:31
ronnyi want to have a simple sync loop along while test=find_next() { report; read action; if action { run }}09:31
lifelessI think that would be very slow09:32
lifelessI'd do09:32
lifelesstests = find_all()09:32
lifelessadvertise_tests(tests)09:32
lifelessto_run = (read all run: commands)09:32
lifelesstests.filter(to_run)09:32
lifelessrun_tests(tests)09:32
lifelesswell, with the last three lines in a loop09:33
ronnylifeless: i dont want to tell them all to run at a time09:33
lifelessread one or more run commands, execute, look for more09:33
lifelessronny: sure, but that is orthogonal to discovering them all at once, isn't it ?09:34
ronnyi like more granular events tho09:34
lifelessronny: I have some experience with this, having done --parallel and --parallel=ec2 for bzr; you really don't want to be waiting for network latency on each test09:34
ronnyhmk09:35
lifelessif you have enough tests that multi machine parallelisation is worth doing, per test latency will kill your performance.09:35
lifelessunless your tests are several times slower than that latency09:35
ronnyhmm, well, mine probably are, but other are most likely not09:37
ronnylifeless: i just discovered that mine and holgers mindmodels rather differ (his already solved the latency stuff, i suppose other issues as well)09:44
lifelesswell, mail me :) or t-i-p, or something :)09:45
ronnylifeless: yes, i'll get my mindmodel fixed, then i suppose start something on tip09:47
Kamping_Kaiserhi all, sorry if this is covered in a faq:11:52
Kamping_Kaisercan i pull in a file from a repository which *does not* share a common ancestor with my current branch?11:53
Kamping_Kaiser(keeping history)11:53
spivKamping_Kaiser: you can merge in an entire, unrelated branch.  bzr in general can't track revision history when cherrypicking just parts of revisions (like single files rather than all changes)12:00
Kamping_Kaiserspiv: the branch is 1 script + a README, as long as the merge doesn't eat my existing README that would be fine for me.12:02
spivKamping_Kaiser: cool12:03
spivKamping_Kaiser: the trick then is "bzr merge -r0..-1 ../unrelated_branch12:03
spiv"12:03
PengKamping_Kaiser: The README will probably conflict. Anyway, even if it does get eaten, nothing's set in stone until you commit; you can just revert it.12:03
spivit'll probably give a path conflict about the README file; they'll both be there (one will be README, the other README.moved, probably)12:04
Kamping_Kaiserspiv: if i understand that correctly, from revision 0 until latest revision?12:04
PengKamping_Kaiser: Uh-huh.12:04
spivyou can 'bzr mv' and/or 'bzr rm' things before committing of course to make sure they are how you want them.12:05
Kamping_KaiserPeng: re README, noted, I'll try and see what happens.12:05
Kamping_KaiserConflict adding file README.  Moved existing file to README.moved.12:05
spivKamping_Kaiser: right.  The zeroth "revision" is in a sense a common ancestor for all branches :)12:05
Kamping_Kaiser*grin*12:05
Kamping_KaiserI'm interested that the existing readme is moved, rather then the new one.12:06
spivYeah, I'm not sure why that choice was made.  Possibly a coin toss came up heads rather than tails when the implementer had to choose ;)12:07
Kamping_Kaiserhehe.12:08
spivI must admit I tend to find it backwards to my expectations most of the time too.12:08
Kamping_KaiserI'll resist the urge to pontificate about what I think shoul happen instead, since I won't be offering patches ;)12:08
spivKamping_Kaiser: you can always file bugs or post to the list :)12:09
spivAnyway, I'm off to bed.  I'm glad that that merge seems to have worked for you.12:09
Kamping_Kaiserthanks for that, sleep well12:10
rubbsMorning13:12
Viper550okay, I got a local repository. I'm using Windows. How would I push it up to Launchpad?13:54
rubbsViper550: are you trying to contribute to a specific project?14:04
Viper550yeah, trying to bring it up to my project14:04
rubbswhat is your project's name.14:05
Viper550lp:~viper550/bbesque/platypus14:07
Viper550I can explain the name "platypus" though :P14:07
rubbsno need... just a sec, and I can help you out.14:09
rubbsok, so you've got a branch you want to push to the bbesque project. The simplest way to do that is to say "bzr push lp:~viper550/bbesque/branch-name" where branch name is whatever you want (platypus I think is what you got).14:12
rubbsyou will need to set up some ssh keys and get them working with pagent14:12
rubbsdo you know how to do that?14:12
rubbsI could help you out with that if you don't14:12
Viper550dunno14:13
rubbsk... do you have putty installed?14:13
rubbsif not go here: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html and download the link under "A Windows installer for everything except PuTTYtel"14:14
Viper550done14:15
rubbsonce you have the putty suite installed, you need to generate some ssh keys.14:15
Viper550puttygen?14:16
rubbsyep14:16
rubbshttps://help.launchpad.net/YourAccount/CreatingAnSSHKeyPair?action=show&redirect=CreatingAnSSHKeyPair14:17
rubbslet me know when you are ready for more info.  I'll brb.14:20
Viper550done14:21
Viper550rubbs: done the pagent part14:23
=== Noldorin is now known as Noldorin2
=== Noldorin2 is now known as Noldorin
rubbsViper550: sorry about being away for so long.14:35
rubbsso if you've added your keys to pagent and added the key to launchpad you should be able to just push to the location. like this: bzr push lp:~viper550/bbesque/branch-name14:36
Viper550can it be done through a GUI?14:37
rubbsyes14:37
Viper550okay...how? I got Bazaar Explorer open with my local branch14:37
rubbsI'm looking up exatly how to do it... shouldn't take me more than a sec14:37
rubbsViper550: when you push, you should be able to just put "lp:~viper550/bbesque/branch-name" into the "location" text field14:39
Viper550bzr: ERROR: Parent directory of bzr push lp:~viper550/bbesque/platypus does not exist.14:40
Viper550wait whoops14:41
Viper550"You have not informed bzr of your Launchpad ID"14:41
rubbsOh, k... sorry forgot that step myself. just a sec I'll find out where yo uset that14:41
rubbsunder settings -> credentials14:43
rubbsyou need to have an entry like this:14:43
rubbs[Launchpad]14:43
rubbshost = .launchpad.net14:43
rubbsscheme = ssh14:43
rubbsuser = patrick-regan14:43
rubbser... sorry others out there, forgot to pastebin14:44
jelmer_rubbs: Running "bzr lp-login patrick-regan" should create that for you14:45
rubbsjelmer_ I know, but he was asking on how to do this with bzr explorer14:46
LeoNerdIs it possible to define an alias command including a shell fragment? e.g. I'd love to define   bzr diffstat =>  bzr diff | diffstat14:51
Viper550yay got it14:55
rubbsViper550: cool glad you got it working. it should be easier from now on14:57
rubbscome back if you have any other questions.14:57
Viper550thanks :)14:58
rubbsnp15:00
rubbsLeoNerd: I don't think that's possible15:03
rubbsLeoNerd: you could alias that at the shell level though15:03
LeoNerdYeah, I know... but doing it in bzr itself would be cute :)15:06
rubbsLeoNerd: agreed. I pretty sure it's not possible (at this point) though.15:07
LeoNerdAhwell.. no great problem..15:08
LaserJockquick question: how do I set my commit email address on a directory basis?15:29
LaserJockcan I do it from the command line or do I have to mess with ~/.bazaar/locations.conf15:30
rubbsLaserJock: use the --branch option on the whoami command15:35
rubbssee "bzr help whoami" for more info15:35
=== pass is now known as kriss
=== kriss is now known as krissn
LaserJockrubbs: ah, I thought I could just be in the dir and run bzr whoami15:49
LaserJockrubbs: switching to an actual branch in the dir and using --branch solved the mystery :-)15:49
rubbsLaserJock: good to hear that helped.15:49
rubbsthe problem with whoami working on the dir level only is that you have to go out of a branch then to set it globally.15:50
rubbsthat and most people use the global email for most/all of their projects.15:50
rubbsbut I can see where you came up with that...15:50
rubbsI'll see about the documentation... Maybe somethign needs to be clarified.15:51
LaserJockrubbs: I guess I was going by "if there was a branch right here what would it use?"15:54
rubbsLaserJock:15:57
rubbser... LaserJock: I see. I'll look into that15:58
=== beuno is now known as beuno-lunch
=== Linkadmin is now known as alanpee
=== beuno-lunch is now known as beuno
LaserJockdoes olive-gtk visualize the relationship between branches in a repo?17:26
rubbsLaserJock: not as well as qlog or explorer (which uses qlog).17:28
rubbsLaserJock: qlog is part of the qbzr plugin17:28
LaserJockoh dang it, how do I make a file I just did a bzr add to untracked again? I haven't committed yet17:38
jpdsLaserJock: bzr remove --keep $file17:39
=== weigon__ is now known as weigon
=== alanpee is now known as Linkadmin
beunoI forgot how much I liked bzrlib19:03
beuno90% of the time it's already solved a problem I'm trying to solve19:03
lifeless\o/19:18
lifelessmerry christmas beuno19:18
beunohey lifeless19:18
beunomerry christmas to you19:18
beunoeven more so considering you're in the future19:19
lifeless-> plane to catch  :) ciao19:19
beunolifeless, have a great flight19:20
mneptokManny Krramer!19:20
jwhitleyis there an equivalent of git-filter-branch for bzr?  I can fast-export/fast-import, of course, but it'd be nice to stay in bzr if possible.19:48
jwhitleyuse case: I have a repo which I've tried to deliberately keep fairly small.  I now realize that some time ago I inadvertently committed some directories with contents much larger than I'd like.19:49
rubbsjwhitley: so really you just want to strip out some stuff from your history?19:49
jwhitleyIt happens to be practical to rewrite the repo history (it's a personal and private repo, so far), FWIW.19:49
jwhitleyrubbs: yes, precisely.19:49
rubbsjust a sec... someone yesterday was asking the same thing. I'll look through my logs and see what the best answers where19:50
jwhitleylovely, thanks.19:50
rubbsjwhitley: http://irclogs.ubuntu.com/2009/12/21/%23bzr.html check the post from 20:40 (time) on. I think that may be what you're looking for19:53
jwhitleyrubbs: outstanding, just what I needed.  thanks!19:55
rubbsnp19:56
=== cjohnston is now known as FFEMTcJ
=== FFEMTcJ is now known as cjohnston
=== khmarbaise_ is now known as khmarbaise
chromakodehey bzr folks, are "oh no my repo is broken" inquiries acceptable here?22:35
chromakodeI am a bzr noob who upgraded a lp: branch, and managed to break it somehow.22:35
chromakodele google is not currently turning up useful advice.22:36
chromakodeah, you know what? I think I followed some bad bug report advice and changed a stacking branch to a non-stacking format22:37
gutworthhow is it broken?22:39
maxbchromakode: If you explain more about what exactly you did and what's broken, someone here can probably help22:39
chromakodethanks. didn't want to bug you if this was an inappropriate channel22:39
chromakodeany operation [upgrade,check] fails with "RepositoryFormatKnitPack4 ... is not a stackable format."22:39
chromakodetrying `push --overwrite` yields "(Bazaar pack repository format 1 with rich root (needs bzr 1.0)) is not a stackable format"22:40
gutworthwhat's bzr info?22:40
maxbstacking was added in 1.6, aka KnitPack522:41
chromakodeI believe my original sin was running `bzr upgrade --rich-root-pack lp:myrepo`22:41
chromakode(lp:myrepo was 2a, I believe)22:41
chromakodegutworth, bzr info returns the same "(Bazaar pack repository format 1 with rich root (needs bzr 1.0)) is not a stackable format"22:41
maxband stacked?22:41
chromakodemaxb, yes.22:41
maxbis this a public branch?22:42
chromakodepublic how so?22:42
chromakodeit's on launchpad: lp:~chromakode/drizzle-interface/dbapi22:42
chromakodeso, my local branch was in a repo22:42
vadi21I remember there being a "bzr release" command... but apparently I'm mistaken. What is the proper command name?22:42
chromakodeand I think what happened was that I needed to upgrade my repo. however, I googled and saw the `bzr upgrade --rich-root-pack lp:myrepo` command, which probably borked my remote format22:43
maxbchromakode: Launchpad has a rather peculiar way of storing branches - it has a public and a writable copy. So it might be simplest for you to simply branch the public copy, which is still intact22:44
maxbIf you try accessing it over http, you'll end up at the public copy, since http branch access is unauthenticated22:45
vadi21got it, bzr export22:45
chromakodemaxb, I think my local branch is in order, but it seems like any operations on the lp branch will break. should I just throw out the lp branch using the web interface, and remake it?22:52
maxbchromakode: Either that, which will wipe metadata such as bug<->branch links, or subscriptions, or, you could delete just the branch files using an sftp client, and re-push22:53
chromakodemaxb, sounds good. so, just for the learning experience, my fault was downgrading the repo to a non-stacking format?22:54
maxbSounds like that22:54
maxbThough one could say it's bzr's fault for not shrieking loudly and refusing22:54
chromakodeI might claim that if I wasn't a nice user ;)22:55
igc1morning23:05
=== igc1 is now known as igc
AfCDoes bzr-git do git SSH URLs?23:31
AfCI tried the URL I was given [ ssh://<username>@git.gnome.org/git/gtk+ ] and Bazaar gave me a helpful error message about how I had to use bzr+ssh:// as the protocol23:31
AfCSo then I tried git+ssh and it didn't work.23:32
AfCSo presumably my answer is "no" but perhaps I'm missing something?23:32
RAOFAfC: It does, yes.23:35
RAOFI forget quite how I managed to make it happen, though.23:35
pooliehi all23:36
RAOFAfC: I'd guess you'd be after a URI of the form git+ssh://git@gitorious.org/~raof/banshee/gapless-work.git23:36
AfCRAOF: Hm. I thought I'd tried that.23:37
poolieafc: looking at the code, git+ssh should work23:37
AfCpoolie: ok, thanks!23:39
* AfC tries again23:39
AfCOk, so I have no idea what happened there. I did23:41
AfC$ bzr branch git+ssh://afcowie@git.gnome.org/git/gnote/ master23:41
AfCand it worked23:41
AfCso... well, er23:42
AfCthanks?23:42
AfC:)23:42
AfC[I had previously tried with the gtk+ URL and it crashed]23:42
AfC[though I also tried a git:// URL and that crashed too]23:42
AfC[so I'm guessing someone fixed something and did a release and got it into the PPA? Either way, thanks!]23:43
RAOFNow all bzr-git needs is a way to specify non-master branches!23:52

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