/srv/irclogs.ubuntu.com/2008/09/24/#bzr.txt

pooliehello00:02
lifelesspoolie: I need more details on vila's stuff to find it00:16
poolie"how various commands display revisions"00:21
poolieand there's one about python2.6, which does have a patch that i'm about to read00:21
poolieyou don't need to spend a lot of time on it, i think he'd just like to know people read them00:23
lifelessI read the former00:31
lifelessI'll pass on the latter for now00:31
lifelessspiv: btw aren't context manages 2.5?00:31
spivlifeless: yeah, they are.00:34
spivlifeless: but we're still supporting 2.4, so that doesn't help us much.00:34
lifelessspiv: yah, not to mention, like I said, I don't think they help anyhow00:36
lifelessspiv: because, aren't they effectively just syntactic sugar for try:finally:except:?00:36
spivRoughly, yes.00:36
beunomwhudson, do you have a bit of time today to review Verterok's branch for traceback logging?00:36
lifelessso the squashing will still happen00:36
spivBut that is helpful, in this case.00:37
lifelessspiv: how so?00:37
spivBecause unlike try/except/finally, I'm fairly sure you can put the logic to preserve the original exception (if any) inside the context manager.00:37
mwhudsonVerterok: yeah, should think so00:38
=== dereine is now known as dereine[afk]
spivSo the obvious spelling of "with write_locked(foo): ..." can then DTRT, where "foo.lock(); try: ... finally: foo.unlock()" doesn't.00:39
lifeless__exit__(  exc_type, exc_val, exc_tb)00:39
lifelessis the key spelling00:39
lifelessspiv: but you can spell write_locked as try:finally:except e:try:self.unlock() except:pass; raise e00:40
spivIt is possible to preserve the original exception (and traceback) with try/except; our needs_write_lock decorator does that now.00:40
beunomwhudson, thanks. It's a big patch, and mostly touches code you've worked on00:40
spivBut it's awkward to reuse that in a typical try/finally, which means that it's going to be easy to miss places that don't do it properly.00:41
lifelessapply_locked ?00:42
lifelesserm00:42
lifelessapply_write_locked, suggesting a name00:42
spivYeah.  I was also thinking that *maybe* it would be possible to re-write just the finally block as "preserve_original_exception(foo.unlock)"00:43
spiv(not a great name, obviously)00:44
lifelessthe sys.tb* are not threadsafe though00:44
spivsys.exc_info() is.00:44
lifelessoh cool00:44
spivThe tricky bit is that I need to look up if there can be times where sys.exc_info() can be set when there isn't an active exception (and I suspect there are).00:45
=== RAOF_ is now known as RAOF
spivPossibly those are just corner cases about invoking things from except: blocks.  But I'd prefer a solution that obviously correct :)00:46
lifelessabentley: ping00:48
abentleylifeless: pong00:49
lifelessabentley: the intertree previewtree test, I'm not quite sure what its testing00:49
lifelessabentley: I just had a conflict on that change, so I thought I'd expand on the comment.00:49
lifelessabentley: is there a different InterTree that it tests? Or are you just adding-some-coverage-to-PreviewTree ?00:49
abentleyI'm just adding-some-coverage-to-PreviewTree00:50
lifelessok.00:50
lifeless    # PreviewTree doesn't get the stock interface tests for working tree,00:51
lifeless    # having it exercised by the standard intertree tests provides useful test00:51
lifeless    # coverage.00:51
lifelessthats my expanded comment, seem ok ?00:51
Verterokbeuno, mwhudson: thanks!00:51
lifeless[I've also made it clear that the InterTree tests are running with PreviewTree, so failures are clearer00:51
lifeless]00:52
beunoVerterok thanks for working on it  :)00:52
abentleylifeless: I don't understand why you're referring to working tree.00:52
lifelesss/working tree/trees/00:52
abentleylifeless: Okay, so now I don't understand the comment, because PreviewTree is exercised by the tree_implementation tests00:53
lifelessabentley: I'm trying to write down _why_ we get more coverage by having PreviewTree present in the InterTree tests.00:54
lifelessobviously we *do*, and thats fine.00:54
abentleyI would say "PreviewTree does get the stock interface tests for tree..."00:54
lifelessbut the System-Under-Test is the InterTree class and its subclasses, not any specific tree implementation; its very weird from that perspective to have PreviewTree here00:54
abentleySo the point is that PreviewTree doesn't have an InterTree, perhaps?00:56
lifeless    # The stock interface tests for 'tree' are insufficient to thoroughly cover00:56
lifeless    # PreviewTree. Exercising it by the InterTree tests provides useful00:56
lifeless    # additional coverage.00:56
lifelessabentley: from a theory perspective, any failures you uncovered are failures in the tree interface tests00:57
lifeless[in that they fail to cover something that anything claiming to be a Tree should provide]00:57
lifelesspoolie: you sunk my battleship00:58
abentleylifeless: So do you think that iter_changes et al should be tested in tree_implementations?00:58
lifelesspoolie: (conflict in NEWS after the lock patch landed)00:59
lifelessabentley: uhm, that question suggests I need to read a little deeper. Tree.iter_changes is meant to be just a thunk down to InterTree; if its not its going to be asymmetric across types.01:00
lifelessabentley: I'll be a minute, just fixing this conflict for pqm01:00
abentleylifeless: For PreviewTree, it's not, but that's not relevant.01:01
poolielifeless: someone should write a script to avoid NEWS conflicts :-P01:02
abentleyI need to make sure that PreviewTree.iter_changes works.  How should we be testing that?01:02
lifelessabentley: ok, now I see whats going on01:02
lifelessabentley: InterTree is the right place to test iter_changes; I think PreviewTree should not have an iter_changes method though01:04
lifelessabentley: because wt.iter_changes(preview_tree) should be the reverse of preview_tree.iter_changes(wt)01:04
lifelessanyhow, the comment I propose now is:01:05
lifeless    # PreviewTree does not have an InterTree optimiser class.01:05
abentleylifeless: In these tests, it's using InterTree.iter_changes.01:05
abentleyIt still needs to be tested.01:05
abentleyIf we just use the existing tests, it won't be.01:06
lifelessI'm getting more confused by the minute01:06
abentleyThere needs to be a scenario for every tree type.01:06
lifelessInterTree does not have a scenario for every tree type and shouldn't have one01:06
abentleyCorrect.01:07
lifelessit should have a scenario for every code path from InterTree01:07
abentleyBut we do need to test every tree type in "tree_implementations".01:07
poolielifeless: +1 to taking files from a special directory and merging them into NEWS01:07
abentleySorry01:07
abentleyin "intertree_implementations".01:08
pooliei don't see why special handling would be needed for deletions01:08
mwhudsonhow do i make a repository a no-trees repository again?01:08
lifelesspoolie: in a single-file approach01:08
lifelessmwhudson: touch no-working-trees in .bzr/repository01:08
mwhudsonlifeless: thanks01:08
poolielifeless: i mean if someone changes the news entry after it's merged into NEWS01:08
pooliethat is a real conflict01:08
pooliewe'd want them to instead update the bit merged in to NEWS01:08
abentleyOtherwise, we don't know that those operations work.01:09
lifelessabentley: the point of interfaces is to avoid polynomial growth; test that object A implements interface I correctly, then test that object B uses interface I correctly01:09
lifelessabentley: InterTree tests are tests of object B on the interface 'Tree'01:10
lifelessabentley: any failure on an arbitrary (Tree,Tree) pair passed into InterTree.get(Tree, Tree).iter_changes() is either a failure in the Tree interface tests (if the object doesn't support something), or a failure in the InterTree tests (if the code path in InterTree is faulty)01:11
abentleylifeless:  I think that isn't true when optimizers are invoked.  I suspect that the InterTree optimizer for WorkingTree4 has requirements that Tree doesn't meet.01:11
lifelessabentley: the optimiser for WT4 only kicks in (and this is tested) when the other tree is a DirStateRevisionTree01:12
abentleylifeless: So it is not a test on the interface 'Tree'.01:12
lifelessabentley: what 'it' there?01:13
abentleyA test of iter_changes involving a wt4 and a DirstateRevisionTree.01:14
lifelessright, its a test of InterTree (specifically InterDirstateTree)01:14
abentleyBut you said "InterTree tests are tests of object B on the interface 'Tree'"01:14
lifelessobject B is is the SUT, which is InterDirstateTree01:15
lifelessthe interface 'Tree' is a layer the test depends on01:15
abentleylifeless: expand SUT please?01:15
lifelesssystem under test01:15
lifelessthe code being tested01:15
lifelessas opposed to things the test needs but assumes are in good working order01:16
abentleylifeless: So you are saying that InterTree and not InterDirstateTree tests are tests on the interface "Tree"?01:16
lifelessI'm saying they are both tests that build on the interface "Tree" but *do not test the interace "Tree"*01:17
lifelessthey make no assertions about the behaviour of e.g. get_file_sha101:17
lifelessabentley: we almost certainly have missing test coverage of the Tree interface01:17
abentleylifeless: Well, less since I merged my previous two patches.01:19
lifelessabentley: so doing what you've done is a good thing, I'm just trying to make sure its commented correctly; and ideally get some bugs filed about the things you found out so that we can fix the other faulty/missing tessts01:19
lifelessabentley: skipping the theory, here is the pragmatic thing I'm trying to get at: a broken method on PreviewTree found by running InterTree tests implies a missing/faulty test in tree_implementations/*.py01:21
abentleylifeless: Since PreviewTree's iter_changes was broken, this suggests that iter_changes should be tested in tree_implementations.01:22
lifelessabentley: the transform.iter_changes was broken, or InterTree.iter_changes broke on PreviewTrees?01:22
abentleyInterTree.iter_changes broke on PreviewTrees01:22
lifelessabentley: that says that tree_implementations is missing tests, but not of iter_changes01:23
lifelessabentley: rather of the parts of the Tree interface that are not fully tested.01:23
abentleyI don't think there's anything that mandates that iter_changes be implemented in terms of InterTree.  I think it's an implementation detail.01:24
lifelessabentley: you found get_file_sha1 was missing, IIRC?01:24
abentleylifeless: Yes, and _comparison_data, _file_size.01:26
lifelessabentley: to me that says there are missing tests for get_file_sha1, _comparison_data, _file_size on Tree01:26
abentleylifeless: We don't disagree about that.01:27
lifelessok01:27
lifelessphew, I thought we were stuck.01:27
abentleyBut I also think that iter_trees should be tested on every class that claims to provide it.01:27
abentleyBecause testing that PreviewTree provides X and InterTree works with X doesn't work if iter_changes doesn't use InterTree.01:28
lifelessabentley: I don't think anyone should override iter_changes, and so we shouldn't need to test it on each tree.01:28
lifelessiter_changes needs two trees to test; doing interface tests for that needs two degrees of parameterisation; its tricky at best.01:29
lifelessI think what you've done is ok, though I'm struggling to reconstruct the change you made vis-a-vis _test_mutable_trees_to_test_trees01:29
abentleyI wasn't suggesting it we needed to do n^2 complexity.01:29
lifeless(its broken by iter_changes branch)01:29
lifelesss/by/my/01:29
abentleyBut to not test at all seems questionable.01:30
lifelessabentley: I'm not suggesting that we don't test!01:31
abentleylifeless: You are essentially saying we should test InterTree.iter_changes, not Tree.iter_changes.01:31
lifelessabentley: I'm saying that there should be only one implementation of Tree.iter_changes - its meant to be just syntactic sugar01:32
lifelessabentley: because the multimethod support InterObject gives us lets us test it effectively; it certainly looks like you found it easy enough to slot it in.01:33
abentleylifeless: So yeah, that's what we disagree on.  Mandating that Tree.iter_changes be implemented via InterTree and therefore not testing Tree.iter_changes.01:34
lifelessI guess so01:35
abentleylifeless: Anyhow, I just changed _test_mutable_trees_to_test_trees to take TestCase as a parameter.01:36
abentleyThat allows me to call addCleanup to clean up the PreviewTree's TreeTransform.01:37
lifelessyup, thanks01:41
lifelessI had a change there to add C and python versions of the dirstate iter_changes code01:42
abentleylifeless: So one of the breakages was that PreviewTree doesn't provide .inventory, and iter_changes attempted to use it.01:43
lifelessnow I need to figure out why readdir acceleration fails on PQM01:43
=== mw is now known as mw|out
pooliejam, still around/02:57
VerterokHi, any thoughts about implementing __str__ in bzrlib.inventory.Inventory?...to avoid this http://rafb.net/p/yY76bI24.html02:57
lifelessVerterok: well thats for debugging really :P02:58
Verterokhehe02:59
jamspiv: there was a specific discussion in the Pyrex mailing list, about Pyrex leaving something in sys.exc_info() when there wasn't an active exception.02:59
Verteroklifeless: it's using __repr__02:59
jampoolie: I'm aronud a bit, but I'll probably be in and out02:59
lifelessVerterok: I'd definitely want that output given that error to analyse things; user input shouldn't be able to trigger any normal exception like that02:59
lifelessjam: can you put that python 2.4 IFDEF in the pyrex bug I opened ?02:59
lifelessjam: PQM itself needs that02:59
pooliejam, so, for the lca shape merge, i'd like to merge it as-is to 1.7 in preparation for a 1.7.103:02
pooliewhat say you?03:04
lifelesspoolie: is it really worth a 1.7.1 for it ? It doesn't seem to meet our general policy there [its not a regression]03:04
jamlifeless: well, we don't have a real policy for "large project publicly using bzr having problems doing common operations needs an officially released update to function properly"03:07
jamnot sure if that makes a 1.7.1 valid or not03:07
jamjust saying that it is outside of general policy we have crafted so far03:07
lifelessmmm03:08
jamfor *their* trees, 'bzr merge' likes to leave broken paths around, because they have lots of things that get merged into multiple "release" branches, and then the release branches get merged (causes criss-cross)03:12
lifeless1.7.1 will affect everyone by causing a new upgrade, more QA for distro folk etc03:13
jampoolie: My concern is that 1.7.1 will come out with it, and then 1.8 won't have it, which will be weird.03:13
jamlifeless: I'm not particularly concerned with the code causing regressions. I've done a lot of testing, including setting it as the default algorithm and running the full test suite.03:13
jamATM the issues are "clarity of design" etc03:14
jamwhich is more a "can we maintain this?" rather than "is it broken?"03:14
Verteroklifeless: what's your recommendation? I made trivial fix, added __str__ to Inventory, and now only shows: http://paste.ubuntu.com/49910/03:14
jamlifeless: I don't see a "pyrex bug that you just opened" can you link it for me?03:15
pooliejam, so i do see the "clarity of design" thing as a case of the general thing about the way we do reviews03:15
lifelessVerterok: I think the bug is that it's showing the inventory and not a tree objct03:15
lifelessVerterok: totally unrelated to __str__ or __repr__03:15
poolieif we merge it to bzr.1.7 we should immediately merge that back to trunk03:15
Verteroklifeless: ok, thanks for the tip :) I'll back after digging a bit more03:16
lifelessjam: https://bugs.edge.launchpad.net/bzr/+bug/271939/comments/203:16
ubottuUbuntu bug 271939 in bzr "extensions fail to build on python 2.4" [Medium,Triaged]03:16
jamlifeless: of course, lp has a bug that linking to a comment on a bug doesn't have an obvious link back to the bug itself ... :)03:17
lifelesshey, I just work here03:17
lifelessjam: re using 'pathjoin' rather than 'osutils.pathjoin'03:18
jamlifeless: what about: https://bugs.edge.launchpad.net/bzr/+bug/271939/comments/303:18
ubottuUbuntu bug 271939 in bzr "extensions fail to build on python 2.4" [Medium,Triaged]03:19
lifelessjam: you can't use default values in cdef functions03:19
lifelessjam: thanks03:19
jamso you can't do "cdef myfunction(foo, bar=XXX)" ?03:19
lifelessright03:19
lifelessso I can cache it in some of the places its used, and I've just done that03:20
lifelessbut I really don't want a double-lookup in _update_entry03:20
pooliejam, lifeless, any other concerns about doing this?03:20
lifelesspoolie: I think it doesn't match our stated motivations for point releases. So we shouldn't do it, or we should rewrite those motivations.03:21
jamlifeless: I don't have a problem with it being at module scope, I just find "from bzrlib import osutils\nfrom bzrlib.osutils import X, Y" to be a bit odd.03:21
lifelessjam: we do it a lot; doing an import and assignment would be more weird IMNSHO, but I can do that if you want03:22
fullermdWhoah.  Did I miss the announcement of meta week on the list?03:22
poolielifeless: ok, we'll add "or as needed"  :-)  specifically, this is a serious bug for numerous users03:22
lifelesspoolie: its not a regression03:23
lifelesspoolie: thats the real thing that annoys me about it03:23
jamlifeless: strictly speaking neither was 1.6.103:23
jambranch --stacked wasn't *in* 1.503:23
lifelessjam: 1.6 was a brown paper bag03:23
jamso we couldn't regress anything03:23
lifelessjam: it had a format that could create data loss; that is a regression03:23
poolieis this defined in hacking or is it just general principle?03:24
lifelesspoolie: memory from our interminable discussions years ago03:24
pooliei don't remember us saying it was only regressions and not bugs03:24
lifelesspoolie: dunno if its enshrined or not03:24
jamlifeless: i don't actually know any way that data loss could have actually happened in it. but if you say so03:24
poolie_anyhow_, they want it sooner than 1.8 and i want to help them03:24
pooliei think this is a reasonable use of a point release03:24
jampoolie: we could always make it "1.7-mysql" :)03:25
pooliejam, 1.7-we-love-you-and-brought-you-flowers03:25
lifelessI can't wait for 2.5.34, when we have more large users03:25
poolieme either, that will be great03:25
pooliewell03:25
poolieto be a bit more serious, we have some other options03:25
poolie1- just wait for 1.803:26
poolie2- start releasing 1.8 now, from trunk03:26
poolie3- do a 1.7-mysql that's not a regular release03:26
poolie2s/$/, with this merged in first/03:26
poolielet's decide what's right in this case and we can use that to tune the documented policy if necessary03:27
lifelessMy understanding, from the original agreement with them was that we would do (1)03:27
lifelesswe'd get them a fix, and then work to get it into the normal release03:27
pooliethe original plan was it would be in _1.7_ since the patch was ready before then03:28
poolieafter it looked likely it would slip i told them we would do a 1.7.103:28
poolieor at least that it would be soon after 1.703:28
poolienot a month later03:28
poolieso, 1 would both be disappointing for them and breaking our commitment03:28
lifelessI don't think its breaking our commitment if it took more than one release to polish the workaround to inclusion03:29
lifelessI can understand the disappointment03:29
poolieare there any issues other than the policy one?03:30
lifelessreleases have a cost; I don't see why paying that cost is better than spending the same effort on getting the thing merged to trunk03:31
poolieit's a good poitn03:32
pooliebut for them it won't really be done until it's in a release03:32
poolieas they can't ask everyone to run from trunk03:32
lifelessso if you want to talk about getting it done, why didn't we just do what Aaron requested during the 1.7 cycle, then it could be landed already?03:33
lifelessjam: re putting the python stuff in _dirstate_helpers_py.py, I'm a bit ambivalent; I guess feeling lazy more than anything03:36
jamlifeless: well, if we are getting to that point, why didn't we review it a month earlier when it was posted ?03:36
jamthere are a lot of "woulda-coulda-shoulda"s we can get to03:36
jambut how do we get where we want to be now?03:36
jamlifeless: I think it is a bit easier to find the comparison code if it follows the same layout03:37
jamis it more than a cut & paste for you to do so?03:37
lifelessjam: adjust imports, possibly circular ones03:37
lifelessother than that, no, just c&Pp03:37
jamlifeless: ATM, I can respect your feeling, I think it is cleaner to put it in _py.py, but it doesn't change the correctness of your patch :)03:38
lifelessjam: moving it over03:39
lifelessI ended up with it in dirstate.py because _update_entry started there.03:39
* spiv -> lunch03:44
lifelessjam: circular imports up the wazoow03:50
Verteroklifeless: when you have a few minutes to spare in the inventory.__repr__ bug, I have a question (or two)04:30
lifelessVerterok: sure04:31
lifelessVerterok: I think its a annotate bug :P04:31
Verteroklifeless: indeed :)04:31
Verteroklifeless: acctually Inventory contributes a bit04:32
Verteroklifeless: Inventory.__getitem__ raises errors.NoSuchId, with the inventory instance instead of a tree04:33
Verterokmaybe annotate could catch that and raise the right error?04:33
Verterokor there is an API to access the inventory that annotate isn't using?04:34
* Verterok hides04:34
lifelessVerterok: I need food rather badly; could you pastebin the backtrace perhaps? or file a bug about the bad UI result?04:35
lifelessI'll look whwen I get back04:35
Verteroklifeless: np, I'll keep playing a bit, and file a bug about it04:36
lifelessVerterok: ah caffeine and food05:03
Verteroklifeless: what we would do without them!05:03
fullermdStarve in our sleep.05:04
Verterokjaja05:04
lifelessITYM java :P05:04
Verterok:p05:05
Verteroklifeless: done, filed Bug #27383505:28
ubottuLaunchpad bug 273835 in bzr "annotate of a not present file_id give a huge error message" [Undecided,New] https://launchpad.net/bugs/27383505:28
lifelessVerterok: thanks05:29
Verterokups...I think it's a duplicate :p (Bug #246573)05:31
ubottuLaunchpad bug 246573 in bzr "'bzr annotate file.OTHER' during contents conflict gives traceback" [Medium,Confirmed] https://launchpad.net/bugs/24657305:31
* AfC wonders if the Bazaar hackers have landed the compression work they've been talking about over the last few months.06:13
beunoAfC, I think the b-tree stuff is in 1.7 as experimental06:14
lifelessbeuno: groupcompress is what afc means06:14
lifelessAfC: no, its not landed yet06:14
beunolifeless, oh, I thought that was part of the btree?06:15
lifelessbeuno: no06:15
beunolifeless, so that would be another format?06:16
lifelessgroupcompress is a replacement for the 'knit' stuff06:16
lifelessbtree isn't in a format in bzr.dev yet06:16
beunobut both of them will trigger a format change, right?06:17
lifelesseither of06:18
lifeless(yes, you need a new format to use either set of code)06:19
=== Snaury is now known as Snaury[away]
=== tro|| is now known as tro
vilahi all, yeah for 1.7 !06:55
lifelessvila: I'm still not sure what stuff you wanted in my inventory docs06:57
lifelessvila: AFAICT I wrote some prose; you were confused by it; I rephrased the exact same text and it made you happy.06:57
vilalifeless: your answers made me happy, I'm not sure they found their way in the text, but I think I BB:approved anyway06:58
lifelessvila: it was approved with the edit, but I'm feeling lost as to how to do the edit without repeating myself lots06:59
vilaI can review it again if you want but I'm not sure about where to find the latests version07:00
vilas/ts/t/07:00
vilaI needed to read it again anyway07:01
pooliehi vila!07:01
vilahey poolie :)07:01
lifelessvila: on-list/bb07:01
vilalifeless: ok, I've got it back (I've lost all my read/unread markers last week and had to triage ~10.000 mails again :-/)07:04
fullermdGyuh.07:05
fullermdWhat a horrible thought.07:05
vilaJust thinking about it is far less painful though :D07:06
poolievila: um07:06
poolieanyhow, i'm reading your 2.6 patch07:07
fullermdY'know, that sorta thing wouldn't happen if you used vi...07:07
* fullermd hides.07:07
vilafullermd: I'm not sure there is mail agent suiting my needs for vi, but anyway, storing ~25.000 files in a single directory is more likely the root cause, especially when mounted over NFS07:10
vilasometimes you just have to pay for your sins :D07:10
lifelessvila: "NotFileSystem"07:10
vilalifeless: until it's broken, don't fix it :D It's likely a combination NFS/shutting down a virtual machine including a running mail client inside an editor, something I don't even want to start debugging, not even starting to think about it :)07:13
lifelessspiv: let me know if you want to chat re Inter*Remote*07:33
lifelessvila: how do you feel about me just landing the current prose?07:42
vilalifeless: just give me a few more minutes and I send you a patch where I inserted in your document the relevant comments07:43
lifelessvila: oh thanks07:43
spivlifeless: If there's no InterOtherToRemote/InterRemoteToOther, which InterRepo would you want used?  Whichever of InterSameData/InterModel1and2/InterDifferingSerializer fits best?07:49
lifelessspiv: 'yes'07:53
lifelessspiv: as in, the RemoteRepo already exposes the needed data to choose one of those and use it07:53
* spiv nods07:53
lifelessspiv: my reasoning in a nutshell is - the generic API should be fine for performance07:54
spivAt the moment, the generic InterRepo's would force an _ensure_real just by the is_compatible checks.07:54
vilalifeless: sent07:55
lifelessspiv: if its not then many other things like 'annotate', 'cat', 'fast-export' that operate directly on RemoteRepo etc will be slow too07:55
igclifeless: wrt the inventory prose patch, please check 'make docs' works before submitting it07:55
lifelessspiv: realy? those attributes are statically allocated by find_repositoryV2 I thought07:55
igcit didn't for me07:55
spivThey check repository._serializer07:55
spivWhich is a property that does _ensure_real atm :(07:56
vilaigc, lifeless: I didn't check and my patch may contain even more errors :-/07:56
lifelessspiv: oh, thats reasonable. Its needed to ensure the inventory and revision style is understood07:56
lifelessspiv: so fix that :P07:56
spivThat's something to fix in a find_repositoryV3...07:56
lifelessspiv: yah, I'm not trying to add work you understand, rather reduce overall work07:56
spivI do understand that :)07:57
igchi vila!07:57
vilahi Ian !07:57
lifelessvila: so there is duplication straight up07:57
vilalifeless: ? my patch try to add things you already added ?07:58
vilaif that's the case, I may have started with the wrong base, if you think what my patch try to add is already there, forget it and merge your version07:59
lifelessvila: btw its easier to merge patches if they are attachments08:00
vilalifeless: I was about to ask that precise question :)08:01
* vila solves that kind of problem by having a mail agent integrated into an editor :D08:01
* vila should nevertheless think more about vi's users :)08:02
lifelessvila: well, everything you quoted was already duplication08:02
igcvila: I'll take a look at 'how various cmds display revisions' tonight fwiw08:05
lifelessvila: I don't have any specific ideas on how to parameterise log_adapters; if I did I would have written them down.08:05
vilaigc: thanks08:05
lifelessvila: I just think it needs doing; look at bzr-search if you want an example of a plugin patching into the log adapter stack08:06
vilalifeless: ok08:06
vilalifeless: ha, excellent08:06
igcspiv, poolie: well done on http://bazaar-vcs.org/SmartPushAnalysis1.8 - will be nice as we nail each of the issues found!08:06
pooliehm08:07
poolieit still needs more structure as a document but thanks08:08
vilaI started with revno: 364108:09
vilarevision-id: robertc@robertcollins.net-20080827004239-7d2b1m4bsd2u8ufm08:09
vilabut anyway, BB:approve, land, land ! :)08:09
lifelessvila: This is the patch I have uncommitted. ...08:09
lifelesshttp://paste.ubuntu.com/49971/08:10
lifeless10 past 5 makes an unhappy boy08:10
lifelessvila: (bzr log -m "\bVincent\b") will use a bzr search index, if you have one08:10
lifelessigc: looks like a rest bug to me :(08:21
lifelessigc: its valid reset list AFAICT, but it fails-to-format08:29
=== Spaz is now known as Kittens
=== Kittens is now known as Spaz
=== dereine[afk] is now known as dereine
a_c_mwith bzr using file permissions can you restrict commit access to a folder in a branch e.g. only about the dba to commit to /sql ? would that work?09:16
bob2no09:16
a_c_mis there a way to achieve that?09:17
bob2you could use a commit hook, I think09:19
a_c_mwhy would the file permissions thing not work?09:19
lifelessa_c_m: because bzr does not version anything other than the 'x' bit09:19
lifelessa_c_m:  you could use a seperate baranch for /sql09:20
bob2a_c_m: all the data in the branch is stored in .bzr in the root of the branch09:20
lifelessa_c_m: or you could just enforce policy on merge; bzr is aimed at distributed setups09:20
a_c_mlifeless: humm ok, the commit hooks method is interesting, but i'm no python programer09:22
lifelessa_c_m: so, you could get someone to write it for you, its no harder than shell (actually easier than shell :P)09:23
lifelessa_c_m: because we support many databases, polcy can't be enforced by normal access control09:26
lifelessa_c_m: instead you have to do it 'when the content arrives'09:26
a_c_mlifeless: makes sense really :)09:31
vigneswarihello all11:18
vigneswariplz help in resolving my problem reg.bzr-trac11:18
vigneswariif i create any brach or repo using bzr init or init-repo..i couldnt view in trac browser11:19
vigneswariam i asking in correct channel?11:24
vigneswariplz help in resolving my problem reg.bzr-trac11:48
vigneswariif i create any brach or repo using bzr init or init-repo..i couldnt view in trac browser11:48
vigneswarishould i provide some more details?11:52
bob2maybe try the list11:58
frk2hi guys!12:08
frk2have successfully switched my project over to bzr from svn but have some issues with versioning while merging12:09
jakobbvigneswari: I just checked the website of trac: it says: 'it provides an interface to subversion' Are you even sure it should work with bzr?12:09
jakobbaah got it.... there is a plugin12:10
frk2my problem is, mostly, that after merging and pushing - version numbers on the target repository get overwritten12:10
bob2yes12:10
frk2is that intentional?12:12
frk2is thats how bzr is supposed to work? or am i doing something wrong12:13
bob2you can set the append_mumble option12:13
frk2bob2, append_mumble?12:13
bob2append_revisions_only12:14
frk2in bazaar.conf?12:15
bob2in the branch.conf for the trunk12:15
lifelessfrk2: merge + commit doesn't reset revisions12:17
lifelessfrk2: 'pull' can and so can 'push'12:17
frk2right12:17
frk2thats whats happening12:18
frk2we have a central trunk12:18
frk2where multiple developers PULL from, and then PUSH12:18
lifelessfrk2: this is covered in the users guide I believe12:18
frk2if the branches diverge, one of us has to MERGE and PUSH, upsetting revision numbers12:18
lifelessfrk2: recommended way to manage your trunk is to use checkouts for the trunk itself12:18
lifelessfrk2: then you don't push into it, you commit your merge12:19
lifelessrevision numbers won't change if you do this12:19
frk2hmm12:20
=== dereine is now known as dereine[afk]
frk2I understand... but the whole point of me using bzr was that we have developers who have no write access to trunk12:20
=== dereine[afk] is now known as dereine
frk2so, we merge their changes and then push to trunk12:20
lifelessfrk2: so those developers can't push anyhow12:20
lifelessfrk2: exactly12:20
frk2ah okay12:20
frk2i see :)12:20
jakobbvigneswari: I guess you should try to get one of the developers of the bzr-plugin for trac to answer your question; I don't think the 'general' audience here has much experience with it12:21
vigneswarijakobb, any separate channel for plugins12:22
jakobbnot that I'm aware of12:25
jakobbI do see that jelmer is among the developers... he's in here as well12:26
vigneswarijelmer, do u have any idea abt my issue?12:30
vigneswariin bzr-trac integration12:30
jelmervigneswari, you mean trac-bzr ?12:31
jelmer(there are two different projects these days)12:31
vigneswarijelmer, yes12:32
vigneswarijelmer, am not able to see the content of branch as well repo12:33
vigneswarijelmer, anything created using bzr init command12:33
jelmervigneswari: Did you edit the trac configuration file to include bzr?12:33
vigneswaritracbzr.* = enabled jelmer12:34
vigneswarijelmer, this line i ve added in trac.ini file12:34
vigneswarinothing else :)12:34
jelmernothing about trac not being able to find the plugin, etc, in the logs?12:37
vigneswarijelmer, http://pastebin.com/m14c672cb12:44
vigneswarijelmer, i cant locate the logs12:44
jelmervigneswari, please file a bug12:45
vigneswarijelmer, where?12:46
jelmerlaunchpad.net/trac-bzr12:46
vigneswarijelmer, ok12:48
vigneswarithnks12:49
xtrqtI have branch without main repo ~/a, and in it I have ~/a/b which is standalone branch of project-part, I want to have only ~/a branch and not to lose revs in b.13:16
xtrqthow could I import b as subdirectory of a, without deleting /a/b/.bzr13:16
luksyou can try https://launchpad.net/bzr-merge-into13:19
xtrqtthanks13:21
StevHi13:50
StevI'm pushing my revisions to a ftp server (from a free hosting service), is there some web interface to browse through the sources/revisions? The ones i've found are not suitable for me as I cannot run anything execpt cgi/php/perl scripts on the host.13:54
KinnisonRegister it on launchpad and use that to view the source?13:57
KinnisonE.g. http://bazaar.launchpad.net/~dsilvers/flail/devel/files13:57
StevUhm nice :)13:58
StevOK, another question then... is there a way to push more to than one locations at once?14:00
luksI dont think so14:00
StevI mean.. "bzr push" and it pushes "ftp://server1.foo.com" and "sftp://aaa@bbb.com"14:00
Stevok, thanks, i think i'll just create a small script/alias to avoid typing the 2nd whole url :) Thanks guys14:01
lukswell, you can use bzr-bookmarks to not having to type the whole url14:03
StevHad a look at bzr-bookmarks, thanks14:07
nevanshmm... bzr-bookmarks... that looks useful.14:09
=== mw|out is now known as mw
rockyjelmer: which version (if any) of bzr-svn should we use with bzr-1.7 ?14:43
jelmerrocky, the 0.4 branch at the moment14:44
rockykk14:44
Takjelmer: I think I'm supposed to ping you about monodevelop-bzr?14:49
jelmerTak, Hi14:49
jelmerTak, What about specifically?14:49
Takhi - I've been working on it in a branch14:49
Takspeaking with palango, he said I should request to be added to the monodevelop-bzr team14:50
Tak(which I have, on launchpad)14:51
jelmerah, ok14:52
jelmerone sec, let me check if I've received any email yet14:52
strkbzr: ERROR: no such option: --no-tree14:58
strkbzr branch --no-tree <src> <tgt>14:59
LarstiQstrk: supplied to what command?14:59
strkBazaar (bzr) 1.6.114:59
jelmerTak, I've approved you15:00
Takcool15:00
LarstiQstrk: branch doesn't take a --no-tree argument15:00
LarstiQstrk: did you mean init-repo --no-trees?15:01
strkI never know what I'm doing when it comes to bzr really15:02
LarstiQstrk: hmm :)15:02
LarstiQstrk: what are you trying to do in this specific case?15:02
strksetup my working envorinment :)15:02
strkso far I've been using two branches15:03
strkone bound to the main shared one online15:03
strkand one unbound15:03
strkboth with no trees15:03
strkthen a separate tree-only dir, from which i used to 'bzr switch'15:03
strkbetween the bound and unbound ones15:03
strkthis was as for lifeless suggestion15:03
strknot sure it's a good setup though15:03
strkit surely isn't straightforward15:03
strkso may change habits and only branch when really needed15:04
strkas long as I can still do offline setups w/out big hassle15:04
Odd_Blokestrk: Please file a bug about the lack of a --no-tree option to branch.15:05
strkOdd_Bloke: url ?15:06
Odd_Blokestrk: launchpad.net/bzr "Report A Bug", I think.15:06
LarstiQstrk: I guess that is how I would work if I wanted to use switch.15:08
LarstiQstrk: although I'd a shared repository inited with --no-trees15:08
* LarstiQ fails in English15:08
LarstiQuse15:08
Takbranch pushed15:13
Odd_Blokestrk: Give me a link to the bug report and I'll claim it. :)15:15
strkLarstiQ: there should be a 'drop-tree' or similar to use after the fact IIRC15:16
LarstiQstrk: `bzr remove-tree`15:17
strkOdd_Bloke: https://bugs.launchpad.net/bzr/+bug/27399315:19
ubottuUbuntu bug 273993 in bzr "bzr 1.6.1 lacks --no-tree option for 'branch'" [Undecided,New]15:19
Odd_Blokestrk: Thanks. :)15:21
strkLarstiQ: so, now I created the two branches, and dropped tree15:21
strkbut I forgot how I was supposed to crete the actual working tree for use with switch15:21
strkcheckou --lightweight ?15:21
Odd_Blokestrk: Yup.15:22
strkgood. all setup now :)15:22
enobrevanybody ever see a "Unrecognised container format" error after trying to "update" a recently pushed set of changes?16:36
enobrevactual error message is bzr: ERROR: Unrecognised container format: 'B419'16:37
LarstiQenobrev: I haven't, can you pastebin the entirety?16:38
enobrevthat's it... that's the whole error... what would you like me to pastebin?16:38
enobrevLarstiQ, or at least, that's all I get from bzr when i try to bzr update16:39
james_wenobrev: please run again with -Derror as an option16:39
LarstiQenobrev: the command you tried plus it's output. If there is no traceback, supply -Derror as well.16:39
enobrevcool... thanks... one mo.16:39
enobrevLarstiQ, james_w: hey, that's fancy, here it is: http://pastebin.com/d5f6b537216:43
james_wwow16:44
enobrevthat sounds ominous16:44
james_wit seems to be trying to read the pack header and getting something totally unexpected back16:45
enobrevhmm... well, is there a way to revert a push?16:45
james_wit should say "Bazaar pack format 1 (introduced in 0.18)" and it says "B419" apparently16:46
enobrevany way i can help debug?16:46
james_wI'm just looking at where we should look16:47
enobrevi'm completely blank on this one... as for getting my job done, i just need to know how to revert the push - but if this is a bug i can help find / report, i'll be glad to help dig if you point me in the right direction16:48
LarstiQwhat's it bound to?16:49
enobrevnot sure what you mean16:49
LarstiQenobrev: what does `bzr info` say?16:49
enobrevLarstiQ: ah, thx: "Standalone tree (format: pack-0.92) Location: branch root: ."16:50
james_wenobrev: do you have .bzr/repository/packs/ ?16:51
enobrevjames_w: yep16:52
enobrev7 .pack files within16:52
james_wenobrev: can you run "head -n 2 .bzr/repository/packs/*.pack ?16:52
LarstiQenobrev: where did you push from, and whereto?16:53
enobrevanother dev pushed from bzr 1.6.1 on a mac16:53
LarstiQupdate isn't in your typical workflow on a standalone branhc16:53
enobrevonto this 1.5 repo on my server16:53
LarstiQenobrev: to what, this branch?16:53
enobrevyes16:53
LarstiQok16:54
enobrevjames_w, head doesn't seem to like the wildcard16:54
james_wenobrev: it works here, may be a new feature or extension16:54
james_wfor i in .bzr/repository/packs/*.pack; do echo $i; head -n 2 $i; done16:55
james_wthat should do it16:55
enobrevoh man.. silly mistake.. sorry - i was in .bzr16:55
enobrevI got it one sec...16:55
enobrevone of the packs came back as B419.  did you wan the full output?16:56
james_wthat's the badger then16:56
james_wI wonder why it's got the first line missing16:57
james_wyou can fix it by adding "Bazaar pack format 1 (introduced in 0.18)" as the first line to that file16:57
enobrevoh i see, so the first line is supposed to be "Bazaar pack format..."16:57
enobrevoddly enough there's another pack file that's missing it as well16:57
enobrevshould i just open it up in vim and add it to the top?16:58
enobrevhere's the output, btw http://pastebin.com/d155efcd116:59
james_wyeah, you'll need to fix them both17:00
enobrevi see... ok, i'll give it a shot, thanks guys.. back in a couple min.17:01
LarstiQwell17:02
enobrevLarstiQ: ?17:02
LarstiQif that is missing, the question arises as to what more could be wrong17:02
enobrevany suggestions?17:02
LarstiQenobrev: make a backup before you do anything else17:02
LarstiQenobrev: cp -a repo backup17:02
enobrevalready done.17:02
LarstiQshould be enough17:02
LarstiQenobrev: cool :)17:03
LarstiQenobrev: well then, go ahead and try it17:03
LarstiQenobrev: might want a `bzr check` later as well17:03
enobrevah.. ok17:03
enobrevbzr check gave the same error17:06
enobrevwow, talk about files that look like you don't want to edit them manually.  trying another bzr check...17:08
enobrevIt's GOOD!!!17:10
enobrevthank you gentlemen.17:10
enobrevbzr update worked just fine after fixing the headers on the pack files.  going to have to tell the other dev what happened to see if he can figure out anything from his end... appreciate the help.17:11
=== dereine is now known as dereine[afk]
quicksilverany news on the bzr web integration thingy?17:38
quicksilverwas it called loggerhead?17:38
* quicksilver googles17:38
jelmerquicksilver, yup17:39
jelmerlp/loggerhead17:39
jelmerit's awesome17:39
quicksilverthat's interesting, because an awesome thing was just the kind of thing I wanted17:40
quicksilverwhere's it's home page these days?17:40
quicksilvergoogle for 'loggerhead bzr' doesn't appear to work.17:40
jelmer:-) I think the launchpad page is the main page for it these days17:40
quicksilverdid it become launchpad, then, basically?17:41
jelmerquicksilver, it's homepage is on launchpad I think, or are you searching for an example instance to see how it looks like?17:42
jelmerfor the latter, see e.g. http://bzr-playground.gnome.org/17:43
abeaumonthi, how can a svn repo be updated from a bzr repo created with svn-import?17:43
jelmerhi abeaumont17:43
quicksilverjelmer: I'm looking to download it to install locaally17:44
quicksilverah17:44
quicksilverhttps://launchpad.net/loggerhead17:44
jelmerabeaumont, pushing back into svn you mean?17:45
jelmerabeaumont: bzr push <svn-url>/branch-path17:45
abeaumontjelmer: yes, that's what i mean17:46
jelmerabeaumont, you can only push one branch at a time though17:46
abeaumontjelmer: hmmm, so, there's no need for svn specific command needed, as with svn-import?17:47
jelmerabeaumont: You don't need a svn-specific command to import from svn per se, you can use "bzr branch" as well17:47
jelmerabeaumont, there are no bzr commands for copying all of the branches underneath a repository17:48
jelmerabeaumont, that's why svn-import exists17:48
abeaumontjelmer: ahhh, ok, i didn't understand svn-import purpose then17:48
abeaumontjelmer: ok, thanks!17:48
rockstarHow do I set my smtp server port in bazaar.conf ?18:05
rockstarabentley, ^^  Maybe you know?  I don't see any docs about it.18:08
fdvbzr: ERROR: Operation denied because it would change the main history, which is not permitted by the append_revisions_only setting on branch18:13
fdvcan anybody tell me why that is necessary?18:14
jelmerfdv, why the change of main history is needed?18:14
fdvI mean, as long as I get an error when trying to commit when there's a mid-air-collision, how will the two branches diverge?18:15
fdva little more context, perhaps. I do a bzr bind, then an update18:16
fdvthat's when I get this error18:16
fdvoh, maybe it's because I have set the setting globally18:17
* fdv tests18:17
fdvthat's better, yes18:21
fdvsorry about the fuss18:21
abeaumontjelmer: it worked like a charm, many thanks!18:40
=== dereine[afk] is now known as dereine
=== dereine is now known as dereine[afk]
=== dereine[afk] is now known as dereine
eyepulp_yo ho ho18:58
eyepulp_tryng to get 1.7 setup properly on osx without having to run the setup.py install.  is this doable?18:58
LarstiQeyepulp_: I myself run from the source tree without installing19:00
eyepulp_hrm - from the python command line I can do "from bzrlib import workingtree"  but  when running under textmate and trying to commit it says it can't find the module bzrlib19:01
eyepulp_the add and init work fine19:02
eyepulp_looking at the textmate commit code now19:03
LarstiQeyepulp_: bzrlib users need to be able to find it. One option is to install it so it gets into python<version>/site-packages/19:06
LarstiQeyepulp_: another is to broaden the python path, for instance, export PYTHONPATH=~/src/bzr/bzr.dev/19:07
eyepulp_yeah, I have a .pth file that points to the dir above bzrlib19:07
LarstiQok19:07
LarstiQeyepulp_: but textmate isn't looking at it?19:07
eyepulp_as mentioned, I can drop into the py interpreter and import bzrlib19:08
eyepulp_but yeah, TM can't find it.19:08
strkI'm trying to install the bzr-gtk plugin, but isn't working19:08
eyepulp_I've restarted TM on the odd chance it cached the .pth settings19:08
jambeuno: ping19:08
strkI got bzr-1.6.1 release19:08
strkand fetched bzr-gtk from repository19:08
strkdo I need a bzr-gtk *release* instead ?19:09
strkbzr: ERROR: exceptions.AttributeError: 'module' object has no attribute 'link_button_set_uri_hook'19:09
jamsiretart: ping19:09
strk^^ this is the error with that setup19:09
jelmerstrk, afaik that's caused by a too old version of pygtk19:09
strkuhm19:09
jamhmm... perhaps I can ask Jelmer... do you know the process for packaging bzrtools?19:10
jamsiretart and beuno have done the last few, so I'm not explicitly set up for it19:10
jambut I'd like to, and I'd like to get 1.7 into the ppa19:10
jelmerjam: Same story as everything else :-)19:10
strkI'm on debian... could add ppa with instructions19:10
jelmerstrk: On debian, you should be able to just install the debian package19:10
strkii python-gtk2   2.8.6-819:10
jamjelmer: well, not the same as bzr-svn or bzr, since I packaged both of those :)19:11
jelmerjam: ah, it's probably not based on the Debian package then19:11
jamthere seems to be a lp:~jelmer/bzrtools/experimental19:11
strkNeed to get 213MB of archives.19:11
strk:!19:11
strk156 upgraded, 102 newly installed, 30 to remove and 541 not upgraded.19:11
jamIs it just grab that, put in a new dch entry19:11
jamand package it up?19:11
strknot now plz :)19:11
jelmerjam, Yeah, I think so19:11
jamAh, now I see the other packaging branches, thanks for bearing with me19:12
abentleyrockstar: You put a colon after the server name, followed by the port number.19:13
rockstarabentley, that wasn't working.  I ended up just setting up a local postfix instance to relay mail.19:13
abentleyrockstar: Works for me.  What config line did you have.19:14
rockstarsmtp_server = <mail_host>:58719:14
abentleyrockstar: That looks right.  Where did you put it?19:15
rockstarTried two different servers.19:15
rockstarabentley, bazaar.conf [DEFAULT]19:15
abentleyI mean, did you put it in bazaar.conf, locations.conf or branch.conf?19:15
abentleyOkay, perhaps it was being overridden by a setting in locations.conf.19:16
rockstarYea, wasn't defined anywhere else.19:16
abentleyrockstar: Was any additional configuration needed, e.g. username or password?19:17
rockstarNo, but the relay server I set up in postfix requires it.19:18
eyepulp_LarstiQ: it looks like textmate is using a different install of python than I am.  irksome19:19
abentleyWhat operation were you doing?19:19
eyepulp_me?19:20
eyepulp_not me - sorry19:20
abentleyeyepulp_: no, I meant rockstar.19:20
LarstiQeyepulp_: if you try setting PYTHONPATH in the shell instead of using a .pth, it should pick up on that though?19:20
rockstarabentley, trying to submit to PQM.  Comcast decided to start blacking port 25 today.19:21
rockstarI also can't seem to type blocking today...19:23
abentleyrockstar: Maybe you can and your computer's just trying to make you crazy...19:24
rockstarabentley, if you had been working on cscvs as long as I have, you would start hallucinating too... :)19:25
jamjelmer: so which is more correct to use... ~debian-bazaar/bzrtools/debian, or ~jelmer/bzrtools/experimental, or is it something over in the bzr.debian.org domain?19:27
jelmerjam: http://bzr.debian.org/pkg-bazaar/bzrtools/experimental is the most correct at this point19:27
jamjelmer: of course, "experimental" is rich-root while "unstable" is still knit format...19:28
jelmerjam: I've recently merged the debian/ directory and the upstream branch19:29
jamsure, I noticed19:29
jelmerjam, since that involved using join, I had to upgrade19:29
jamwell, you didn't *have* to. I've done it about 4 times in the bzr code base19:29
jamwith various plugisn19:30
jambut probably the simple "bzr join" command wouldn't work without it19:30
=== mw is now known as mw|food
jambzr merge-into would, though19:30
LarstiQare you sure?19:30
jamLarstiQ: asking me? I just did it (as well as updating bzr-merge-into to work again :)19:31
LarstiQhmm, maybe I did explicitly ask for --development-subtree19:31
LarstiQjam: sort of, I was pondering if join didn't work by default19:31
LarstiQjam: maybe I've been living too close to nested-trees lately19:31
jamugh, we've got 3 different ways that bzrtools is being packaged... :(19:32
jamwith different branch ancestries19:32
jamjelmer: I'm not positive, but I think your 1.7 package for bzrtools is incorrect.19:58
jamIs see:19:58
jamhttp://edge.launchpad.net/bzrtools/stable/1.6.0/+download/bzrtools-1.6.0.tar.gz19:58
jamsorry19:58
jamDepends: ${python:Depends}, bzr (>= 1.6~), bzr (<< 1.7~), patch19:58
jamwhich means the bzrtools 1.7 package is depending on bzr 1.6 rather than bzr 1.719:59
jelmerjam, Sorry, I had that fixed, just not pushed yet19:59
jelmerjam: Should be pushed now19:59
jamany particular reason you don't use a checkout? You seem to often forget to push20:01
siretartjam: pong?20:03
jelmerI sometimes do but always unbind when I work offline20:04
jelmer(I hate bzr up's behaviour turning local commits into pending merges)20:04
jamsiretart: jelmer answered my question, thanks for getting back to me20:06
siretartk20:07
jamjelmer: do I need to do a new bzr-svn package for bzr 1.7? Or is it still compatible with the 0.4.12 release?20:11
jelmerjam, You need a new one - I silently released 0.4.13 today20:12
jamagain with "experimental" ?20:13
jamand you did upload it, right?20:13
jelmeryep20:14
jamjelmer: so do I need to be releasing them as 0.4.13-2~bazaar1, or 0.4.13-1~bazaar1 ?20:14
jamsince you had to do a -220:15
jelmerthe first20:15
jelmerso people who are using ubuntu will get your package rather than the broken 0.4.13-120:16
jelmer(just theory, in practice this can't really happen because the time window between -1 and -2 is so short)20:17
jamI suppose, though your -2 branch supersedes the -2~bazaar1 one anyway20:18
jams/branch/package/20:18
nDuffDoes bzr-rebase contain functionality equivalent to "git rebase -i"?20:23
jamjelmer: you may have uploaded, but I don't have a bzr-svn-0.4.13 tag20:24
Odd_BlokenDuff: Describe what the git command does. :)20:24
jamOdd_Bloke: it doesn't have --interactive, I believe20:24
jamRobert has talked about it, as have others20:24
nDuffOdd_Bloke, provides a text file describing the order in which the given revisions are applied, and allows that file to be edited to reorder or coalesce revisions.20:24
jamor maybe you do and I just forgot --export-upstream20:25
jamlet me check20:25
Odd_BlokenDuff: Then, no, I don't think so.20:25
jamlast I recall, lifeless thought it would be about 1 day worth of work to implement it20:31
jamjelmer: what about bzr-gtk? Since that is in the same repo20:32
jelmerjam, try "debian-0.4.13-2"20:35
jelmerjam, I've started using "bzr mark-uploaded" (from bzr builddeb)20:35
jamjelmer: I just needed to use --export-upstream=.20:36
jelmeryeah, by default the location is set to launchpad20:36
=== mw|food is now known as mw
Odd_Blokejam: Is that 1 lifeless day or 1 normal-person day? :p20:38
jamOdd_Bloke: well, parsing a text file isn't particularly difficult20:41
jamit is more the what do you do when you conflict, and how do you resume20:42
Odd_BlokeSo one normal-person day?20:42
jamanyway, mostly afk because the sick baby just woke up20:43
Crusher4I'm having problems with Mac OS X 10.5.5 + bzr 1.5 and/or 1.6.1 + sftp repository20:54
Crusher4it says 'garbage packet recieved'20:56
Crusher4but i can ssh to it just fine20:56
Crusher4just tried it with 1.7, same problem21:03
rockstarjelmer, around?21:53
jelmerrockstar, sortof21:53
rockstarjelmer, what does "sort of" mean?21:53
rockstarCould you help me with a libsvn issue?21:54
jelmerrockstar, sure21:54
rockstarI'm stuck, and I'm searching for help...21:54
rockstarjelmer, https://code.edge.launchpad.net/~rockstar/launchpad-cscvs/remove-pysvn21:55
rockstarI'm trying to check out from libsvn using the SWIG python bindings.21:55
rockstarHowever, I think I have the params right, but it fires off the exception SubversionException: (None, 195002) which appears to be a revision error.21:57
jelmeryeah, that's SVN_ERR_CLIENT_BAD_REVISION21:58
rockstarjelmer, do you have that memorized?!21:58
jelmerwell, there's a couple of these that you hit very often21:59
jelmerrockstar, what are the exact arguments you are passing in?22:03
rockstarclient.svn_client_checkout(svn_url, path, core.svn_opt_revision_t(), True, client.svn_client_ctx_t(), self._pool)22:09
rockstarjelmer, ^^22:09
jelmerrockstar, you have to initialize core.svn_opt_revision_t22:11
rockstarjelmer, yea, so the actual call is client.svn_client_checkout(svn_url, path, revision, True, ctx, self._pool)22:12
rockstarI just wanted demonstrate the types.22:12
jelmer(pool is optional, you shouldn't use it for new code)22:13
rockstarjelmer, I thought that was correct.  IT should be managing its pools on its own, right?22:14
jelmeryeah22:15
rockstarBut if I remove it, I still get the error.  :(22:16
jelmerhow do you initialize opt_revision_t ?22:17
rockstarrevision = core.svn_opt_revision_t()22:17
jelmeryou don't initialize any of the members of svn_opt_revision_t ?22:19
rockstarjelmer, I found no docs that said I needed to.  :(22:20
jelmerYou found docs !? (-:22:21
rockstarYea, it's called reading other people's code...  :)22:21
jelmerI always initialize the "kind" member22:22
jelmernot sure if that's really necessary22:22
rockstarjelmer, I don't think I'm familiar with that.22:25
jelmerrevision.kind = svn_opt_revision_head22:27
rockstarjelmer, holy crap, I think that got it!22:29
=== fta_ is now known as fta
rockstarjelmer, still around?23:04
jelmerrockstar, yeah23:04
rockstarSo if I set revision.kind to svn_opt_revision_number, how do I set the actual number?23:05
jelmerrev.value.number IIRC23:07
rockstarAh, great, thanks.23:08
=== thumper_laptop is now known as thumper
=== sdboyer is now known as fapi
=== fapi is now known as sdboyer
=== sdboyer is now known as RuPaul
=== RuPaul is now known as sdboyer
jmllifeless: hello23:50
igcmorning23:58
pooliehello igc, jml23:59

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