vilamgz: hello !09:12
vilamgz: ok, 26b1 being frozen, any chance you could finish this config-caching review ? Pretty please :)10:10
vilajelmer: I need you brain and its mid-term memory :)10:44
fullermdOh no, midterms?!  I haven't studied all millennium   :(10:44
vilaWhen running 'make docs-sphinx' in a *fresh* bzr branch it fails with: http://paste.ubuntu.com/886129/10:45
vilaor rather as mentioned in the paste, the command there (triggered by make) fails10:45
vilabut a second run succeeds (not investigated yet, probably make see some file left over by the failure and is happy)10:46
vilajelmer: to the point: no default in format_registry ? Surely that should ring a bell10:46
vilafullermd: one more joke making the whoosh sound above my head ;)10:47
vilamid-term memory is not correct english ? How do you call the memory between short-term and long-term (and don't reply: can't remember, please ;)10:48
fullermdEh?  Who're you?   :p10:49
fullermdI dunno.  Is there even biophysiologically such a thing?  I guess it's as good a term as any.10:49
vilayeah, wikipedia agree with you, only short and long, weird10:50
vilagimme my elastic memory back, best vaccine against Alzheimer ;)10:50
vilaon that topic, I read the last Pratchett and he seems to be doing fine so far (good).10:51
fullermdAlzheimers is when you _lose_ your memory.  As long as you never really get it in the first place, you can't get Alzheimers   ;p10:51
vilaI should remember that...10:52
fullermdBetter write it down.10:52
fullermdAfter all, the mind is the first thing to...   to...   uh...10:53
vilajelmer: adding 'import workingtree' fixes the issue... what's the rationale again ?10:53
vilawossname ?10:53
mgz'medium term' would probably be most idiomatic.10:54
vilamgz: my saviour :)10:55
fullermdEh, it's English.  You can say any old meaningless thing, and pretty soon it'll become idiomatic.10:55
fullermdFrom the language that brought you "the proof is in the pudding", and "I could care less".10:56
mgz'I couldn't care less' is also valid and means the same.10:58
mgzso, you can be both correct and sensicle if you choose.10:59
fullermdIt's not _also_ valid.  It's the only valid one.  It's just not the one everyone around me says.10:59
fullermdMy hand gets so sore from smacking them...10:59
vilagood, so I could add 'because I could care less' to any sentence and leave other fail into the logic trap, very good11:02
* fullermd rears back his arm.11:02
quicksilverearlier this week jelmer was suggesting drink, now fullermd is suggesting pudding11:10
quicksilver#bzr becomes more and more hospitable by the day.11:10
quicksilvercan we have custard?11:10
vilaisn't it lovely ? ;)11:11
jmlI've forgotten... how does one get the repo for a Brancch?11:14
mgz.repository ?11:15
jmlfullermd: re "I could care less", http://www.youtube.com/watch?v=om7O0MFkmpw11:15
jmlmgz: ah yes, thanks.11:15
jmlmgz: it's not documented on http://people.canonical.com/~mwh/bzrlibapi/bzrlib.branch.Branch.html and other things that I would guess to be attributes are methods...11:16
mgzjml: on you udd branch, why fabric not juju?11:17
jmlmgz: because I'm deploying things to the Canonical data centre, and am thus compelled to use lucid.11:17
jmlmgz: and similarity to production is a cardinal virtue for a thing like this11:18
mgzseems like sticking it on canonistack as well as ec2 might be useful11:18
jmlmgz: yes.11:18
mgz...which apart from a few hard coded things seems nearly possible11:18
jmlmgz: a juju charm would be great too11:19
jmlmgz: I've just done the bits that interested me11:19
mgzthat's cool, was just curious for reasoning.11:20
jmlmgz: it's entirely because of lucid.11:20
jmlroll on precise!11:20
jmlhow do people check for branch equality these days?11:20
jmlin tests11:20
fullermdSo, the reasoning used to be lucid, but now it's precise instead?11:21
mgzjml: is, or when its not the same object comparing the bits you care about, so transport, url, revision stuff11:24
mgzI'm not aware of a neater option.11:24
jmlmgz: thanks11:25
jmlfullermd: huh? no. when precise is in the Canonical DC, then I'm going to switch my projects to use juju for their cloud deployment11:26
mgzit was an adjective joke :)11:27
jmloh huh11:28
jmlI do have a sense of humour, honest I do.11:28
mgzfullermd is a strong cheese.11:29
fullermdI'll put you down as a reference on my resume, shall I then?   :p11:30
alf_Hi! Is there a shortcut/prefix for specifying a colocated branch, or do I have to use the full file://...,branch=... URL?12:11
alf_For example, something like "bzr merge colo:other-branch" (but that doesn't work for me in bzr 2.5.0)12:13
jmlok, what about getting a controldir from a brancch?12:22
jelmeralf_: hi12:24
jelmeralf_: there are plans to add "co:"12:24
alf_jelmer: good to hear that, thanks12:26
jmlhmm, maybe a better question is how do I programmatically create a colocated branch in tests12:26
jelmerjml: ctrldir.create_branch(name="foo")12:27
jmljelmer: and how do I get a ctrldir from a branch?12:27
jelmerjml: br.bzrdir12:29
jmljelmer: also, is there a way to get the name of a colo branch given only the Branch object?12:29
jelmerjml: br.name12:30
jmljelmer: thanks :)12:30
jmldoes bzrlib have something that reformats file URLs as paths?13:06
jelmerjml: it does13:08
jelmermy guess is that it lives in bzrlib.urlutils but I don't remember the name13:08
jmlah found it13:08
jelmerthat's the one13:09
lamalexis it possible for a branch to define configuration for plugins inside of itself, so when people branch it that config is set by default?13:25
mgzwith cooperation from a plugin, yes13:33
mgzwhat specifically do you want?13:33
lamalexmgz, im writing a push_hook to integrate with our jenkins instance13:35
lamalexso it'd be nice if our projects that are set up in jenkins could define this bzr config, and then developers with the hook installed dont have to do any configuration on their own for the plugin, it's already set up in the project13:36
lamalexall they have to do is install the plugin13:36
mgzlamalex: that sounds fine13:38
mgzcan do something like `bzr config --scope=branch plugin_name.option=value`13:38
mgzthen in the plugin look at the branch config for some behaviours13:39
mgz...bah, but that doesn't propogate13:39
lamalexright, i want it to be stored in the remote branch, say on launchpad13:40
mgzwould have to be a versioned file in the tree with a well-known name then13:40
lamalexso would that be a new store I'd have to define?13:40
mgzvila may have better ideas13:41
vila<shudder> config option propagation...13:42
vilaopen problem right now, will *LOVE* to have it defined properly...13:42
vilaversion controlled config stores, same13:43
vilalamalex: could you re-phrase your needs in higer level language for a second, there are a lot of tricks that can be achieved without the two features mentioned above nor implementing your own store13:44
vilalamalex: when and where does the plugin run ? On user's machine or on the jenkins slave ?13:45
vilaor both ?13:45
lamalexvila, it runs on the users machine13:46
vilalamalex: for example, your plugin can very well write to the remote branch config13:46
=== mrevell_ is now known as mrevell
lamalexvila, when I do bzr push lp:~alexlauni/unity/unity.flaming-launcher-icons my plugin does a bunch of magic to tell jenkins to make a job and start running our unity test suite on my unity branch13:47
vilaso you can use the remote branch.conf and don't need to implement any more stuff (just make sure you write-lock the right branch and set the config option named as mgz suggested)13:47
vilasince it's a push_hook, you should already have access to the right branch13:47
lamalexyah, im asking about config because i dont want the other developers to have to set anything up13:48
viladunno if it's still locked but since it's pushed too obviously the user has write access13:48
vilalamalex: well, the point of the config is that the user is in control *if needed*13:48
vilas/the/one point/ grr13:49
vilabah, tyop crisis13:49
lamalexright, the user should be able to disable it or enable it on their own but i'd like our project maintainer to be able to set default for the project13:49
* vila nods13:49
ninjixHello all. I would like to stop tracking changes to a .htaccess file but leave it it the working tree. Is there a way to do this?13:49
mgzninjix: `bzr rm --keep FILE`13:50
vilalamalex: ha, tricky, so from the hook you'd want to read "trunk" and set something in the pushed-to branch ?13:50
ninjixmgz: so this will leave the base version for the other devs and users?13:51
lamalexvila, hm no not exactly13:51
vilaplease enlight me :)13:51
lamalexyah im trying to find the right wording13:51
vilathere is currently one option I can think of that smells like a project setting: child_submit_to13:52
mgzninjix: no, the normal way of doing something like that is having a template or example versioned, and leaving the real file unversioned13:52
vilalamalex: bzr help child_submit_to13:53
vilaWhere submissions to this branch are mailed to.13:53
lamalexi dont think that's it13:53
ninjixmgz: thank you. you've confirmed my hunch13:53
lamalexthe option is really jenkins on or off13:53
lamalexthat's pretty much it13:53
lamalexbut i want it to be defined in the trunk branch that lives in launchpad13:54
lamalexso when a developer branches, it's set inside their branch and when they push their branch gets submitted to jenkins13:54
lamalexbut for projects that dont have it set, nothing happsn13:54
vilahmm, yeah, project-wide setting13:55
vilaand your jenkins will walk lp to find such branches ?13:56
vilaand if the setting is changed on lp's trunk how do you want that to propagate ?13:57
lamalexno jenkins won't walk LP that's the point of the push hook- to not have to poll launchpad13:57
vilaoh, you mean, the user push *and* start a jenkins job then ?13:58
lamalexvila, i'd guess like any other new revision? branches of trunk should update on pull13:58
lamalexvila, yup13:58
lamalexwe're working on building a continuous integration workflow  in product strategy13:59
vilawhy not just have the plugin query the trunk's config then >?13:59
lamalexas in go over the net and read from trunk's config?13:59
vilayup, you already went over the net to push..14:00
lamalexright im not whining about network traffic im just making sure i understand14:00
lamalexso really you'd be reading from parent_branch though right?14:01
vilaideally I would think this is for merge proposals so the *target* branch would sounds more appropriate14:02
lamalexit's not for merge proposals14:02
lamalexwe want the tests to start running long before that14:03
lamalexfor the entire development life cycle of the branch14:03
vilaeven if people push multiple times before submitting ?14:03
lamalexyah for sure14:04
lamalexso by the time you propose a merge you already know your code is clean14:04
lamalexand the reviewer knows the code is clean14:04
lamalexand has been tested in a clean env14:04
vilathe only brittle point I see is that parent_branch may be a local mirror of lp's trunk, but you may find a way to fix that14:05
lamalexwhich is why i wanted the config to just come down when you branch trunk14:05
viladoomed if you do doom if you don't ;)14:06
vilalamalex: starting with parent_location should cover most of the use cases and allow you to validate the whole stuff though14:07
vilalamalex: the trunk will always be on lp for your plugin right ?14:08
vilalamalex: I thought you already sorted out what the project name was so you may as well just query lp:<project> no ?14:09
lamalexah yah that's valid14:09
lamalexso now the question is how do i read from a remote config14:11
=== mrevell_ is now known as mrevell
vilalamalex: you get the branch first then: br.get_config_stack().get(opt_name), done14:12
lamalexdo you think it's possible to import the bits from the launchpad plugin that translate lp:project into a real url for getting the trunk branch?14:13
lamalexvila, ^14:18
vilalamalex: sure enough, but bzrlib can probably do that for you14:18
vilalamalex: bzrlib.branch.Branch.open('lp:bzr') should just worl14:19
lamalexoh far out14:21
lamalexthat's awesome14:22
lamalexok, i think i've got what i need. that's a lot vila and mgz14:23
lamalexvila, hm hah finally how do i set an option on trunk?14:25
vilalamalex: bzr config -d lp:bzr i.am=a.happy.camper14:26
lamalexha, -d saying directory in the help doc is a little misleading14:26
lamalexbut excellent14:26
vilalamalex: don't forget to register your option (lazily of possible)14:26
lamalexin my hook?14:27
vilalamalex: look into the po_merge plugin (one of the last written so hopefully respecting most of the unspoken rules ;)14:27
vilalamalex: in your plugin14:27
lamalexwell, my "plugin" is a push hook14:28
vilalamalex: registration gives you 'bzr help <option_name>' for free14:28
vilait's a plugin, that's all that matters ;)14:28
lamalexheh ok14:32
vilamgz: thanks for the review ! Some additional questions in the comments if you don't mind ;0)14:33
* mgz refreshes14:34
lamalexvila, Branch.open('lp:unity') doesn't work, Unsupported protocol for url "lp:unity"- do i need to import something?15:02
vilahmm, yeah, the lp plugin should be imported first, I wonder how you manage to execute your Branch.open without importing it though... manual testing ?15:04
LarstiQor loading all plugins?15:05
vilalamalex: don't worry about importing order though, the way we implemented plugin import relies heavily on python sorting that for us15:05
vilaha, good point from LarstiQ (hey !), but from a push hook, I except plugins to be imported well before that15:06
LarstiQvila: ah hmm, good point15:06
* LarstiQ digs deper15:06
lamalexvila, so i set my option on a branch like, bzr config -d lp:tictactoe jenkins.run_on_branches=true15:06
lamalexbut when i get('jenkins.run_on_branches') i literally get nothing back15:07
vilalamalex: what does 'bzr config -d lp:tictactoe' display ?15:08
vilalamalex: bzr version ?15:08
LarstiQin an ipython shell at least: 'import bzrlib.plugin; bzrlib.plugin.load_plugins(); from bzrlib.branch import Branch; Branch.open("lp:bzr")' works15:09
lamalexvila, http://paste.ubuntu.com/886442/15:10
vilalamalex: no 'branch:' there, something is wrong :-/15:11
vilabzr config -d lp:bzr doesn not work >-/ bzr config -d bzr+ssh://bazaar.launchpad.net/~bzr-pqm/bzr/bzr.dev/ does15:12
* vila cries15:12
vilalamalex: bug filed, but you shouldn't be affected in your plugin, if you get a branch (and the right one) this should be ok15:15
vilabug #95704915:16
ubot5Launchpad bug 957049 in Bazaar "bzr config -d lp:bzr is broken" [High,Confirmed] https://launchpad.net/bugs/95704915:16
lamalex;) indeed- which is just a pain for setting the option but ill make a note of that15:16
=== yofel_ is now known as yofel
=== Quintasan is now known as trolllogger
=== trolllogger is now known as Quintasan
vilajelmer: I just noticed a typo in bzr-webdav info.py in the bzr_plugin_name (wedadv instead of webdav), I wonder what 'bzr_plugin_name' is useful for ?15:50
lamalexis there a doc for the error codes? i'm getting Errno 104 when I do some postdata in my plugin and it returns a 303 code16:05
mgz'the' error codes? what's the context?16:13
lamalexmgz, i'm sending a bunch of post data to a webservice that spawns a jenkins job. that service is returning a 302 when i do getrespone, and that is causing bzr to give me errno 104  Connection reset by peer16:15
lamalexif i just dont call getresponse() everything works fine hah! i think bzr is trapping something and getting mixed up16:15
vilajelmer: lintian found a typo ? Can you introduce this nice guy to me ? ;-D16:19
jelmervila: lintian is a tool that checks debian packages16:19
vilajelmer: I know :)16:19
jelmervila: lint + debian :)16:19
vilabut how did it found a typo like that is what makes me wonder ;)16:19
jelmervila: bzr_plugin_name is used by things like bzr-plugin-info, though that isn't in wide use today16:20
mgzI'm guessing the tyop was mine?16:20
mgzdid you look at the blame jelmer? :)16:21
vilamgz: I would take it as a personal offense if you're trying to steal *MY* typos16:21
jelmerwait, which typo are we talking bout?16:21
vilajelmer: wow, amazing16:22
vilasee ? MINE ? My preciooouuuuss16:22
vilahmm, and fullermd is not even around.... must be spring coming...16:23
vilaok, the builtin's one was from Marius and the xml_serializer's one from mgz :-(16:27
mgzha, you'll have to make your own typos16:28
mgzjelmer is on a lazy mission.16:35
smoserjelmer, around ?16:59
smoseri just hit bug again https://bugs.launchpad.net/ubuntu/+source/bzr-builddeb/+bug/92368816:59
ubot5Ubuntu bug 923688 in bzr-builddeb "bzr crashed with AttributeError in tree_unapply_patches(): 'DirStateRevisionTree' object has no attribute 'last_revision'" [High,Fix committed]17:00
smoserand went looking17:00
smoserbuild failed17:00
smoserbuild log: https://launchpadlibrarian.net/95953060/buildlog_ubuntu-precise-i386.bzr-builddeb_2.8.3_FAILEDTOBUILD.txt.gz17:00
jelmersmoser: it's on my list of things to fix, but it's an odd bug17:00
smoserthe build bug?17:00
smoserso i keep hitting this... is there a way i can easily not hit it?17:01
jelmerthat test failure only occurs as part of a chroot package build, and doesn't happen on sid17:01
jelmersmoser: "bzr branch lp:bzr-builddeb ~/.bazaar/plugins/builddeb"17:01
=== deryck is now known as deryck[lunch]
=== deryck[lunch] is now known as deryck
mgrandihey guys21:31
mgrandiSo, i have a svn 'dump' file by using rsvndump, do you guys know of any way to get this into bzr, or into fast-export or something?21:31
jelmermgrandi: rsvndump?21:36
jelmermgrandi: "bzr svn-import" supports svn dump files21:36
mgrandirsvndump lets you make a 'dump' of the repository when you don't have access to the repo21:37
mgrandik i'll try that21:37
jelmermgrandi: bzr-svn can also operate against remote svn operations directly21:38
mgrandiso it can basically get a repo from a svn repo?21:38
mgrandi(since i don't have access to the repo, its on some server)21:40
jelmermgrandi: yes, you can just specify "bzr branch svn://path/to/some/branch"21:42
mgrandii'll do that if it can't import the dump file21:43
jelmermgrandi: bzr svn-import will actually reconstruct the repository locally, and then talk to that21:44
mgrandiso, when i do bzr-svn import, does that create a repo?21:47
mgrandii told it to create it in a branch and now i think its confused21:47
jelmermgrandi: yes, though it does it on the fly though in a temporary directory21:48
jelmermgrandi: how do you mean?21:48
mgrandiit imported it fine, into a folder that was a branch, that i created using bzr init21:49
mgrandiit told me to do bzr checkout to create a working tree, but now it says a control directory already exists in the folder21:49
jelmermgrandi: "bzr branch" creates a new branch, so if you specify an existing location it will indeed not work21:49
mgrandiso the folder i gave it is now a repo?21:50
mgrandieven though it started out as a branch?21:50
mgrandibzr info just says its a standalone tree and i dunno what that is21:51
jelmermgrandi: bzr svn-import creates a repository with multiple branches in it21:52
jelmermgrandi: the location you specified would be the root of the repository; if you had a standard layout in svn21:52
mgrandiit said something like 'using layout trunk0"21:53
mgrandiso branch that?21:53
jelmermgrandi: if you go to LOCATION/trunk you can run 'bzr co' there to create the tree21:54
mgrandi(this is why i hate svn haha)21:55
mgrandihonestly i think i found a bug21:56
mgrandicause i re did it and now i have a 'trunk' folder21:56
mgrandibut before, when i had the TO_LOCATION argument as a folder that was already a branch21:56
mgrandiit didn't create any of the folders and was branching 0 revisions, etc21:56
mgrandiand before, it said the folder was a 'standalone tree' but when i did it (correctly i guess) it says shared repository now21:58
jelmermgrandi: I guess it said it was a 'standalone tree' because you manually ran 'bzr init' beforehand21:58
mgrandii think it just got confused or something, i dunno21:59
mgrandialso, im not sure if the 'parent branch' should be set to the temporary folder =P22:03
jelmermgrandi: heh, that's a good point22:04
mgrandi parent branch: /var/folders/hg/sz267ft96k34rjpc5zb23p200000gn/T/bzr-svn-dump-hAFefy/trunk22:05
mgrandinot the most useful thing22:05
jelmermgrandi: can you file a bug?22:05
mgrandiyeah, on bzr-svn?22:05
mgrandiok. and do you think that the thing i was describing about doing svn-import on a directory that is already a branch is a bug?22:06
mgrandicause it didn't create the trunk/ folder like it was supposed to and it said it had no revisions22:06
jelmermgrandi: I'm a bit unclear as to what you've done exactly22:07
jelmermgrandi: if you can reproduce it, a bug would be useful22:08
mgrandik jelmer, this is what i mean22:18
mgrandiat the bottom, when i cd into trunk there is no "trunk" folder22:18
jelmermgrandi: that's expected behaviour, "bzr init trunk" creates a branch22:19
mgrandiand i cant figure out how to check out22:19
jelmermgrandi: "bzr svn-import" creates a repository22:19
jelmermgrandi: and creates directories under the repository for each branch that was in the svn repo22:19
mgrandibut here it doesn't though22:19
jelmermgrandi: according to your pastebin it does22:20
jelmermgrandi: in other words, the "bzr init trunk" isn't necessary22:20
mgrandii created a trunk folder, made that a branch22:20
mgrandibut then when svn-import imports the stuff in there, there is nothing under the trunk/ folder besides .bzr22:21
mgrandias you can see in lines 8-1422:21
jelmermgrandi: try 'bzr svn-import ../ellerrepodump.dat elerrepo'22:21
jelmerthat will create a repository in elerrepo22:21
jelmerand a branch in elerrepo/trunk22:21
mgrandii did that, and thats the correct way22:21
jelmeryou can then run "bzr co" in elerrepo/trunk to crete a working tree22:21
mgrandihowever i feel that it shouldn't try and import into a branch or else you get a weird state22:22
jelmermgrandi: it doesn't really import into the branch22:22
mgrandibut then how do you check out when you do this though22:23
mgrandii'm just wondering if this is intended behavior cause it seems like you just have a repo/branch that you can't do anything with22:23
jelmermgrandi: go to elerrepo/trunk (or in your case trunk/trunk) and then run 'bzr co'22:23
mgrandido i create that directory if it doesn't exist?22:24
jelmermgrandi: hmm, if you have an older version of bzr-svn it might create colocated branches22:24
jelmermgrandi: I would suggest just starting from scratch and not using 'bzr init trunk', but just using 'bzr svn-import elerrepo'22:24
jelmer'bzr svn-import ../foo.svndmp elerrepo'22:25
mgrandii know that is the correct behavior, by just using svn-import <whatever>22:25
mgrandibut im just saying it lets you create this weird state22:25
mgrandithat oyu can't do anything with22:25
mgrandiseems like a bug, and it should not do that22:25
mgrandior error out22:25
jelmermgrandi: what version of bzr-svn are you using?22:27
jelmermgrandi: can you try running 'bzr branches' in trunk?22:27
jelmerah, actually22:27
jelmercan you run 'bzr up' in trunk22:27
mgrandisvn 1.1.222:27
mgrandiok, bzr up did it.22:28
jelmermgrandi: this is fixed in 1.2.0 I think22:28
jelmerin 1.1.2 it creates colocated branches even if you don't specify --colocated22:28
mgrandiwhat does it do there?22:28
jelmerin 1.2.0 it would create trunk/trunk22:28
mgrandiit doesn't seem to of created a colocated repository22:29
mgrandior i dont know if its using the plugin version where it has like .bzr/branches or whatever22:29
jelmermgrandi: what does "bzr branches --no-plugins" say?22:32
jelmeryeah, that's the default colocated branch22:32
mgrandias in a 2.5 coloated branch?22:35
jelmermgrandi: yes22:35
mgrandiso, how do i get bzr-svn the latest verison? just from launchpad? or is there an updated installer22:35
jelmermgrandi: yep22:36
jelmerI'm not sure if there is an updated installer22:36
mgrandii'll try and see if it works22:36
mgrandijelmer: doing it with bzr-svn 1.2.1 gives this: bzr: ERROR: Repository CHKInventoryRepository('file:///Users/markgrandi/Desktop/try2/.bzr/repository/') is not shared.22:43
mgrandiso i guess that works out22:43
jelmermgrandi: that's correct, indeed22:45
mgrandiand bzr-svn still has the parent branch thing so i'll report a bug on that22:51
mgrandijelmer: https://bugs.launchpad.net/bzr-svn/+bug/95751122:59
ubot5Ubuntu bug 957511 in Bazaar Subversion Plugin "svn-import produces branches with tmp directories as parent branches" [Undecided,New]22:59
jelmermgrandi: thanks22:59
jelmermgrandi: (note that this bug is specific to using bzr svn-import with svndump files)22:59
mgrandii'll edit it23:00
jelmerIÇǘe already done so :)23:00
jelmermgrandi: done :)23:15
mgrandithat was fast!23:23
jelmerit was a really simple fix23:24
mgrandiyeah, just add remember_parent=False a couple places23:26

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