/srv/irclogs.ubuntu.com/2010/12/06/#bzr.txt

bignoseI have a Bazaar checkout from a Git repository00:54
bignoseand then a Bazaar branch from that.00:54
bignosebut the branch fails to ‘diff’ or most other commands:00:55
bignose$ bzr diff00:55
bignose=== modified file 'po4a/po/devscripts.pot'00:55
bignosebzr: ERROR: Revision {('po4a/po/devscripts.pot', 'git-v1:343d00558577b9bc12c381850cdb804658547bb8')} not present in "CHKInventoryRepository('file:///home/bignose/Projects/debian/devscripts/.bzr/repository/')".00:55
bignosethe traceback from the log file is at <URL:http://pastebin.ca/2011597>01:19
spivbignose: possibly the same as https://bugs.launchpad.net/bzr-git/+bug/64953101:22
ubot5`Ubuntu bug 649531 in Bazaar Git Plugin "mesa incremental import fails with bzrlib.errors.RevisionNotPresent" [Medium,Triaged]01:22
spivbignose: probably needs jelmer to diagnose it01:23
spivIf it's an import originally from an older bzr/bzr-git, then *maybe* making a fresh import would help.01:24
bignosespiv: how about if I just upgraded the repository from rich-root-pack to 2a format?01:25
bignoseit's a shared repository. should it be enough to blow away the checkout and get it again, or will I need to trash the whole repository?01:26
spivThe whole repository, it's a problem in the repository, not the checkout.01:30
spivUpgrading shouldn't resolve the problem, upgrading can't fill in the missing data.01:30
spivIt just copies the records from the old format into the new format.01:31
bignoseokay, thanks. I'll try it.01:31
spivIf you do make a new import, I'd definitely suggest making it in 2a format though :)01:31
spivMy guess is its a bzr-git bug.01:32
bignoseyes, my Bazaar is new enough to make 2a format by default :-)01:34
bignosethe repository is a couple of years old though.01:35
bignoses/is/was/  blown it away now and starting afresh.01:35
bignosespiv: fixed, thank you. whatever the problem was in the old repository, it's gone now.01:37
spivGlad I could help.01:38
glyphspiv: My blog post got absolutely no reaction!  I guess the problem is not as common as I thought :-)04:53
spivglyph: That seems about right to me :)04:57
vilahi all !07:04
vilaspiv: did your patch about the uninitialized https socket got merged upstream ?07:05
pooliehi vila07:05
vilapoolie: hey !07:05
vilapoolie: did you get any news from Gary ?07:05
poolienot recently07:09
vilaI noticed that we have ~35 New bugs in the 'bzr (Ubuntu)' project, I haven't checked which ones are really packaging ones but I think we should have a look there (I think there is still no way to just re-affect them to 'bzr' itself).07:09
pooliecorrect, you can't mark them against only upstream :/07:10
vilaI mailed him last week but got no reply :-/07:10
spivvila: I don't even remember that patch...07:10
poolieyou can make them either invalid or just leave them open and then close when they're finished07:10
spivvila: oh, yes I do07:10
vilaspiv: the one that takes care.. :)07:10
vilapoolie: I meant, bugs that are not targeted at 'bzr' itself and as such unknown to us07:11
spivvila: and it was merged upstream, and the patch added to the ubuntu package too07:11
vilaspiv: really ? Great ! Which python version ?07:11
poolievila, i know, i'm just talking about the options after we look at them07:12
pooliei thought i was subscribed to ubuntu/bzr07:12
pooliewe could probably do with a poll every so often to clean them out07:12
pooliemy laptop filesystems died again on the weekend :/07:12
pooliei think the SSD is dying07:12
spivvila: 2.7 I believe.  http://bugs.python.org/issue972907:12
vilaI still encounter it at least on jaunty and osx recently and wanted to work  around it (it occurs during client shutdown so we can catch the TypeError exception without too much risk)07:12
vilaspiv: thanks07:13
vilapoolie: urgh, that sucks07:13
vilapoolie: how old is it ? Do you have /tmp or swap on it ?07:15
poolieit's about 18m old07:16
pooliei did have a swap partition, because otherwise there is too much of a cliff when you run out of ram07:17
vilaweird, mine is far older than that and I had /tmp on it for months before realizing it07:17
pooliebut i had /tmp in a tmpfs, and atimes turned off etc07:17
poolieit's still showing 97% erase life left07:17
pooliehowever, reading the error logs give a checksum error, which some people think means the controller is failing07:17
vilaouch07:18
poolieso, i'm going to try to return it under warranty, and if they won't swap it i'll stick with the magnetic disk07:18
pooliethat originally came in my laptop07:18
vila97% erase like left ? Where do you get that ?07:18
poolie'smartctl -A /dev/sda' shows (at least on this drive) that, amongst other things07:18
vilaI don't even this command :-/07:19
vilaOh, from the smart data ?07:19
vilaha yes, endurance remaining: N/A, I guess mine is too old to even implement that...07:20
vilain fact, everything is N/A, all I have is: 'Disk is healthy'... I'm glad I asked...07:21
vila:)07:21
vilahaving another look at these 'bzr (ubuntu)' bugs: 35 New, 70 Open...07:22
vilaI am subscribed though as many of them rings a bell, it's just that I forget about them because I never see them again when going to lp...07:23
lifelessvila: does the link in the UI help ?07:24
vilalifeless: which one ?07:33
vilalifeless: 'also affects project' ?07:33
vilamy problem here is that I didn't realize these bugs were existing as I always look at the 'bzr' bugs on lp, never at the 'bzr (Ubuntu)' ones, so they are abandoned07:35
vilathat's not as bad as I thought, though, many of them are targeted at both07:36
=== vila changed the topic of #bzr to: Bazaar version control | try https://answers.launchpad.net/bzr for more help | http://irclogs.ubuntu.copingeling aboutm/ | Patch pilot: vila | 2.3b4 is frozen, installers build time ! (rm vila)
lifelessvila: vila the link at the top of https://bugs.launchpad.net/bzr07:49
lifeless"Ubuntu also tracks bugs for packages derived from this project: bzr in ubuntu."07:49
vilaooooh, shiny, yup, exactly, thanks07:50
sobersabrehi. I have bzr repository of version 2a on machine A08:56
sobersabreand I have a machine B with older version of bzr installed.08:56
sobersabreshould I expect any problem by pulling the machine A's repo to machine B ?08:56
sobersabrewould bzr manage to do the conversion from 2a to 1* ?08:57
bob2how old is it?08:57
sobersabrebob2: let's speak in bzr versions.08:57
bob2so 'absurdly'? :)08:57
sobersabrethe 2a one has version of bzr  2.3b108:58
sobersabrethe older has bzr v 1.5-1.108:58
spivsobersabre: bzr can convert from 2a to some older formats, the oldest compatible one is rich-root-pack which was introduced in bzr 1.0.08:59
* sobersabre has 'absurdly' missed the humor. would still like an explanation.08:59
mwhudson_that's pretty old08:59
spivObviously you need to use a bzr new enough to read 2a to do the conversion :)08:59
sobersabreso, shall I maybe install a backport of 2.x for lenny ? is there one ?08:59
sobersabrespiv: maybe you're so close to 2a, it is obvious for you. but it is sure not obvious for me.09:00
sobersabreI mean internal repo structure is one thing, and pulling it via an API is another... which is obvious for me.09:00
spivBasically "bzr init-repo --format=rich-root-pack repo-for-bzr-1.0; bzr branch your-repo/foo repo-for-bzr-1.0/foo"09:00
sobersabreand incidentally both API and the repo structure can collide. only incidentally..09:00
spivsobersabre: I don't quite follow you.09:01
sobersabreI mean the bzr operation doesn't have to expose repository structure AS IS to the bzr puller.09:01
sobersabreand API can be transparent to the internal structure.09:01
sobersabreso this would allow interoperability between various versions of bzr pullers.09:02
spivsobersabre: I'd expect e.g. MS Word 2010 to be able to read MS Word 2010 format docs, and save them as MS Word 2007 format.  But I wouldn't expect MS Word 2007 to be able to do that.09:02
sobersabrestill not with me ?09:02
sobersabrespiv: you are the one who started with "obvious"ities. :)09:02
sobersabreI gave you mine.... ... ...09:02
sobersabreanyway.. thanks, It's good I asked.09:03
spivI don't know what you mean when you say "bzr operation" and "bzr puller", especially when you talk about them as separate things.09:03
vilasobersabre: in theory yes, in practice no, if you try to pull from a branch/repository in an unknown (to your local bzr) format, bzr shold tell you (the format string includes the minimal bzr version needed)09:06
vilasobersabre: i.e. : Bazaar repository format 2a (needs bzr 1.16 or later)09:07
sobersabrespiv: I must explain: let's call the machine I'm pulling from "S" (source), and the machine I'm pulling to "D" (destination).09:07
sobersabreif S has bzr 2.3 and D has bzr 1.5, we have "a situation".09:07
sobersabreunless user specifies instruction to his bzr to do something special.09:08
sobersabreinstead it would be transparent to develop a "sharing API", i.e. something with no regards to repository structure, but rather to files, revisions, comments, without the bits of which storage, which fs is used, etc.09:09
sobersabreand it would render bzr to be less cumbersome for its users.09:09
sobersabrelook at me - I'm spending about an hour or two to make sure I manage to pull :) maybe I should've pulled with error already....09:10
vilasobersabre: this works as long as both bzrs know enough about the format used... and that's what bzr does09:11
spivsobersabre: well, use an older format that both bzr versions have in common.09:11
spivsobersabre: in this case rich-root-pack.09:11
vilasobersabre: for new formats, old bzrs should give the right messages, if not that's a bug... hopefully fixed in newer versions :-P09:11
spivsobersabre: there are more complex possiblities, like using export/import tools.09:12
vilasobersabre: if I read http://packages.debian.org/search?keywords=bzr correctly, lenny-backports should give you 2.0.3 which is good enough to handle 2a09:12
vilasobersabre: I'm not a debian expert by far though :)09:13
vilasobersabre: we try to preserve backward compatibility as much as we can, but we also want to make bzr better, so far all formats ever used by bzr can still be read by the current bzr. We only remove support for some development formats recently but these ones were highly publicized as being supported for a short period of time and the migration to the supported formats as always been implemented. Just mentioning that we *do* care about compa09:19
vilatibility and interoperability.09:19
vilathat sentence was too long :)09:19
fullermdIt didn't have any good tpyos in it either.  Two strikes.09:21
vila:)09:21
sobersabreguys, thanks, I'm just a bit trolling. don't take it too seriously. I'm not a seasoned bzr user. still picking up it's bzr-speak.09:45
vilasobersabre: no problem :) Self-proclaimed trolls are ok ;) As long as we can help you find your way, feel free to ask !09:51
mgolischdoes bzr support kerberos authentication?10:26
jelmermgolisch: only over ftp10:27
mgolischtoo bad10:27
jelmeractually, http might work too10:29
* jelmer recalls working on it but isn't sure whether it actually landed10:29
mgolischbasicaly id like to host stuff in a bzr repo, provide some shiny webinterface for browsing the branches/projects and somehow enable sso authentication10:30
mgolischso youd not have to type a password all the time10:30
mgolischmanaging ssh keys seems like a pain in the butt10:31
vilamgolisch: ssh agents *are* the best sso engine I know of ;) You should try them IMHO10:32
mgolischthat still requires generating ssh keys10:33
mgolischand to deploy them to the users10:33
vilaBut they allow defining a single user on the server reducing the maintenance to a single file there (containing the allowed ssh keys)10:35
mgolischhow would i differenciate between them then?10:36
vilaby their ssh key ?10:36
mgolischoh yeah10:36
mgolischwhatever guess thats what ill do then10:37
vilaftp is not the best protocol for bzr as far as performances are concerned too, using a smart server scales far better10:38
vilamgolisch: you can have a look into the crontrib directory for bzr_access and bzr_ssh_path_delimiter for various approaches at finer grained control access too10:38
mgolischis there some easy way to predefine the host it tries to connect to?10:39
vilayou mean in a centralized workflow ?10:39
mgolischor defining somekind of shorthand/shortcut notation like with launchpad?10:39
vilayes you can, the simplest being via the bookmarks plugin (lp:bzr-bookmarks)10:40
mgolischthere will only be used that one server anyways, its for inhouse development of apps and scripts and whatnot10:40
mgolischso id would be easier of the users would not have to type the full repository url all the time10:41
vilayou can also have a look at the launchpad plugin itself (in bzrlib/plugins) for a more sophisticated approach, that's where the lp:, ubuntu: and debian: shortcuts are handled (in lp_directory.py specifically)10:42
mgolischcool ill look into that10:42
vilamgolisch: but note that they need to type the full URL only once, bzr will remember it from there10:42
mgolischthx alot10:42
vilawell, once for branch/chekout/push/merge, i.e. once for every operation that will need to use the same URL repeatedly (look for the --remember parameter in the commands)10:43
vilathe first command use remembers the URL provided so you don't have to specify it for further incantations10:44
vilamgolisch: 'bzr info' will summarize the urls already known in a given branch10:45
piranhahi. Is it possible to downgrade 2.0 format to 0.92 format?10:56
piranhaI thought about exporting patches as text and then applying it to newly created repository, but I can't find how to create text patches...10:56
spivpiranha: no, although you can downgrade to rich-root-pack, which works with bzr 1.010:57
piranhahm, ok, I'll try10:57
piranhaeh10:58
piranhaspiv: this doesn't work, my server wants 0.92 :(10:58
spivpiranha: if you want to export/import, there's the fastimport plugin, but it will generate a new, unrelated revision history you can't merge from, etc.10:58
piranhaI don't care about merging for this repository, so ok, I'll try it10:58
piranhathanks10:58
spiv0.92 is over 3 years old.10:58
piranhaI know10:59
piranhaI can't do anything about it :(10:59
spivThat's a shame.  The 2a format is much smaller and faster :(11:00
piranhaheh, python-fastimport is registered on PyPI, but that's not possible to install it from there. That's dumb :\11:03
jelmerpiranha: the python-fastimport is not the fastimport plugin for bzr11:04
piranhaI know, but it is required by bzr-fastimport11:04
jelmerright11:05
piranhayahoo11:05
piranhait worked11:05
piranhaspiv: thank you11:05
=== init is now known as GiantEnemyCrab
=== GiantEnemyCrab is now known as Elizabeth
=== Elizabeth is now known as init
mgolischis there some way to get information about repositories on a dumb server?13:24
Pengmgolisch: "bzr info" can take a remote location.13:24
mgolischlike i know the base path is /bzr/ can i have a list of all directories found under that? or maybe even which of those are actual bzr repositories?13:24
Pengmgolisch: If the dumb server supports directory listings (HTTP may not, since they're unstandardized pages), you can use the "bzr branches" command from the bzrtools plugin. If you want to find all .bzr directories or all repositories, it's simple enough to do via bzrlib in the python prompt.13:27
Peng(Usual disclaimer: This is all six-month-old information. I haven't been paying attention recently.)13:28
mgolischthx13:45
mgolischthanks that bzr branches thing seems to do what i wanted13:53
mgolischthx alot13:54
mgolischwow theres a custom_url_schemes plugin14:13
mgolischthat looks like exactly what i was looking for14:13
mgolischto get rid of those endlessly long sftp urls14:14
awilkinsCan you do the opposite of `bzr revert --forget-merges` ; ie, revert all the changes back to the HEAD of the merge-target without forgetting the merge status?14:16
Pengawilkins: bzr revert .14:17
awilkinsAha14:17
=== Ursinha is now known as Ursinha-lunch
awilkinsDid the merge in git - bless it, one tree is the same as another to it, even if the user deleted all the files then put them back again14:18
PengBlasphemer. :P14:19
awilkinsDoesn't go over so well in Bazaar though - "AAARGHH, EVERYTHING is a merge conflict!!!11""14:19
mgolischsweet that custom_url_schemes thing seems to work14:19
mgolischnow iam all set14:19
mgolisch:)14:19
=== oubiwann is now known as oubiwann_
=== oubiwann_ is now known as oubiwann
=== Ursinha-lunch is now known as Ursinha
=== deryck is now known as deryck[lunch]
jammorning all15:40
PengGood morning. :)15:41
jelmerhi jam15:41
vilamorning jam !15:41
=== beuno is now known as beuno-lunch
=== deryck[lunch] is now known as deryck
=== beuno-lunch is now known as beuno
=== Ursinha is now known as Ursinha-brb
=== Ursinha-brb is now known as Ursinha
dobeyhi all21:13
mwhudsonhello dobey21:17
dobeyany idea why ssh would be held open when doing a bzrlib.branch.Branch.open() on a lightweight checkout?21:20
lifelessopening a working tree opens its branch and repository objects21:22
lifelessby design21:22
lifelessa lightweight co is a working tree and remote branch and repo21:22
mkanatdobey: There was a thread about it on the mailing list a little while back.21:31
pooliehi mkanat21:31
pooliehi jam?21:31
jamhi poolie21:32
mkanatHey poolie. :-)21:32
pooliehi there21:32
dobeyi mean, why it would get held open after the python script that imports bzrlib exits (causing a hang due to waitpid somewhere in bzrlib)21:32
jamdobey: IIRC, paramiko uses background threads, there was also a recent bug about sftp connections not getting close21:32
jamclosed21:32
jamdobey: bug #65959021:34
ubot5`Launchpad bug 659590 in Bazaar 2.3 "dput sftp upload hangs after all files successfully uploaded" [Critical,Confirmed] https://launchpad.net/bugs/65959021:34
mkanatpoolie: I'm totally waiting on MPs, at the moment.21:35
mkanatpoolie: That is, on reviews.21:35
pooliemkanat: oops, i'll try to unblock you, and i hope spiv can help too21:36
spivGood morning.21:36
* poolie moves it to the top of my list21:36
spivI can take a look too.21:36
mwhudsonhuh, i can't approve https://code.edge.launchpad.net/~mkanat/loggerhead/launchpad/+merge/4233821:37
dobeyjam: interesting. thanks21:43
mkanatThere are two MPs I have up--one for loggerhead and one for the launchpad branch of loggerhead.21:43
pooliemwhudson: me either; i guess only ~launchpad-pqm can approve them?21:45
poolie(the rules here are a bit opaque)21:45
mwhudsonyeah, maybe the review team needs setting on the target branch?21:45
mwhudsonof course, launchpad code hackers can twiddle all of these things21:45
pooliehow?21:48
jamphenominal cosmic powers21:52
jamWould be my guess21:52
=== Ursinha is now known as Ursinha-afk
dobeyjam: hrmm, that fix doesn't seem to work for where i'm seeing the problem; but adding proc.terminate before proc.wait in the funcs list in _close_ssh_proc() does21:56
jamdobey: that would indicate that the ssh session itself is expecting something to happen21:57
jamkilling it isn't the nicest thing, though I don't know *what* it is waiting for21:57
dobeyyeah me either21:58
spivdobey: hmm, I would have thought that closing stdin/stdout to the ssh process would be enough to encourage it to close cleanly.21:58
spivOpenSSH?21:58
jamos.kill(SIGINT) would be nicer21:58
dobeyyes openssh21:58
jamhey spiv21:58
jamI was wondering if you'd get a chance to look at https://code.launchpad.net/~jameinel/bzr/2.3-commit-to-stacked/+merge/4269821:58
spivjam: I glanced at it very quickly last night :)21:58
spivjam: It's smaller than I thought it would be!21:59
jamyeah, same here21:59
jambasically, we already had "fill in parent inventories" verb because of stacking21:59
jamjust needed to use it at the right time21:59
lifeless\o/21:59
spivI vaguely recall thinking that would be a cheap way to fix that bug, then hitting some problem that stopped me from doing it.21:59
lifelesshey21:59
dobeyspiv: any ideas why ssh would be waiting for something?21:59
lifelesspoolie: I have a wishlist for bzr21:59
jamand the verb already handled stuff like needing chk entries, etc21:59
lifelessdobey: do you have connection pooling on ?22:00
spivlifeless: oh, ew, good point :/22:00
jamspiv: chained fallbacks are potentially a problem, so far it is working, but it feels like it shouldn't22:00
jamso I'm investigating22:00
lifelessdobey: a 'master connection' that is created implicitly blocks until all other connections have closed.22:00
jama bit hard to set up proper Remote objects in the test suite22:00
lifelessdobey: terminating that connection hard will break all other connections (which will be through other processes)22:00
lifelesspoolie: I would deeply deeply deeply love to be able to show the content of a shelf22:01
dobeylifeless: not as far as i know22:02
spivlifeless: I am really looking forward to OpenSSH 5.6's ControlPersist feature.22:02
spivjam: yeah, I can imagine.22:02
dobeylifeless: but i presume not, unless it's a default22:02
spivdobey: it's not a default22:02
jamspiv: urljoin(base, '../new') seems to work, since it forces the target to be on the remote url. But then you have to manually create a local lightweight checkout so you can commit, etc.22:04
lifelessdobey: grep ControlMaster in ~/.ssh/config22:04
dobeylifeless: it's not on22:04
lifelesskk22:04
mwhudsonlifeless: unshelve --preview?22:05
dobeydoes bzr dump ssh stdout/stderr to log/stderr?22:05
mwhudsonstderr, yes22:05
mwhudsonssh stdout is the communication channel bzr is actually using22:05
mwhudsoni guess it's not so much that it dumps stderr either, it just doesn't do anything wrt stderr so it ends up on the terminal22:06
poolielifeless: 'unshelve --preview'+22:06
poolie?22:06
lifelessah22:06
lifelessI miss the old ui22:06
spivHmm.  I wonder if having a live stderr fd is enough to keep the ssh subprocess alive sometimes.22:06
lifelessit had a query interface that felt more consistent22:06
lifelessshelve --list + unshelve --preview feels odd22:07
spivI guess we really should try calling proc.terminate before proc.wait :/22:07
pooliespiv: if the other end didn't close it, maybe22:07
mgzproc.terminate is pretty rude on windows (and doesn't exist till 2.6 or something)22:07
spivmgz: yeah22:08
jamspiv: problem is that proc.terminate() is SIGKILL as I understand it22:08
spivjam: no, it's SIGTERM on posix22:09
spivjam: but TerminateProcess on Win32, which is more like kill.22:09
poolielifeless: what's "the old ui"?22:10
spivI think it's reasonable to resort to SIGTERM after closing the fds we control22:10
jamwell, we are less likely to actually have a real spawned process on Win32, as well. so maybe .terminate is ok. Though IIRC, it is not available in py2.422:10
lifelesspoolie: it was a subcommand ui rather than flags to make things behave differently22:10
jamI think that is 2.5 or even 2.622:10
spivHmm, /topic looks a bit mangled22:10
spivjam: yes, 2.6 only22:10
dobeyhrmm, i added ssh -v; but nothing especially useful that i see, outside of it just being extremely slow22:10
mgzjam has me on ignore!22:10
jammgz: well, not explicitly22:11
mgz:P22:11
lifelesspoolie: bzr shelve/unshelve/shelf list/shelf show/shelf delete IIRC22:11
spivdobey: which server are you connected to?  Launchpad?22:11
dobeyyes22:11
spivVery odd then.22:12
lifelessgoing direct or through an ssh proxy22:12
dobeyand by slow i mean "the ssh -v output is probably just off because it was 50 seconds until i killed the process"22:12
dobeydirect22:12
dobeyie, only the screwy connection seems slow22:13
dobeynormal "bzr nick" is fast22:13
dobeywell as fast as doing anything with ssh -v is i guess22:15
spivdobey: I can't quite explain what's causing you to see this issue (when no-one else has reported it), but I think the proc.terminate workaround is probably a good idea for bzr (when running in a Python that supports it).  Please file a bug.22:22
jamspiv: why for the RemoteRepositoryFormat-default permutation, is the remote repo a KnitPack6 format, and not a 2a format?22:22
lifelessspiv: lsof might tell us22:23
lifelessdobey: are you on natty?22:23
lifelessspiv: also possibly an openssh change22:24
spivjam: for no good reason, probably22:24
dobeylifeless: yes22:24
dobeylifeless: but also seeing the same issue on lucid22:24
spivjam: possibly at the time it was hard to spell "default format" in that bit of the scenario-building code?22:25
spivjam: there's a bit too many parts of the test suite that explicitly select old formats that should probably use 2a :/22:26
jamspiv: the scenario code that I can see just does "RemoteRepositoryFormat()"22:27
dobeyhrmm, i don't see 2.2.1 packaged for lucid anywhere. is it going to be in backports at all?22:27
spivjam: perhaps it's due to the test and not the scenario then?22:28
spivdobey: ppa:bzr/archive22:30
jamspiv: thanks. per_repository_reference the permutation forces RepositoryFormatKnit622:30
spivjam: ah!22:30
jamper_repository just uses the default22:30
spivjam: that would be one of the "too many parts of the test suite"  :)22:30
jam_reference customizeses it, presumably because originally we needed to22:31
spivjam: right22:31
jamand if you just remove that, it breaks22:32
jamself._ensure_real fails because self._custom_format is None, and repository.network_format_registry has no default key22:32
spivdobey: I think for lucid we intend to keep putting updates to bzr 2.1.x in lucid-updates.  I'm not sure if anyone is doing anything with putting bzr in the backports repository specifically, PPAs are a bit more flexible.22:34
spivjam: RemoteRepositoryFormat does need an explicit format set, IIRC.  It's not normally instantiated without there being an associated remote repo.22:35
dobeyok22:35
jamspiv: sure, but when *creating* one...22:35
spivjam: when creating a repo the client knows what it is creating...22:36
jamspiv: the point of per-repository tests is to test against something which is remote. But it doesn't know what it is creating22:36
jamat least, I can't find where in bzrlib/tests/per_repository/__init__.py it is setting the format22:36
jamit is obvious in per_repository_reference/__init__.py where _custom_format is getting set22:37
spivjam: you mean it fails in external_reference_test_scenarios where it tests supports_external_lookups?22:40
spivjam: the difference is that per_repository scenario setup, unlike per_repository_reference, never interrogates the format instances about their capabilities22:41
spivjam: and you can't interrogate a RemoteRepositoryFormat with no network_name and no remote repo about its capabilities, because there's no remote repository to have or not have those capabilities.22:42
jamspiv: then how does it call "initialize()" on them?22:42
jamso, I'm still not sure how it knows about external, but otherwise I see your point22:43
jamsorry, I don't know how it initializes22:43
jambut I can see how calling 'support_external_lookups' would fail without a custom format22:43
dobeyspiv: https://bugs.launchpad.net/bzr/+bug/68622422:44
ubot5`Ubuntu bug 686224 in Bazaar "Call proc.terminate before proc.wait when possible" [Undecided,New]22:44
spivdobey: thanks22:45
spivjam: because RemoteBzrDirFormat's initialize and RemoteRepositoryFormat's initialize do have default formats22:46
dobeythank you for helping me figure out most of the problem at least :)22:46
spiv(RemoteBzrDirFormat appears to hardcode BzrDirMetaFormat1, RemoteRepositoryFormat grabs the default format from the bzrdir format_registry)22:47
jamspiv: so what you're saying is that while initialize() will fall back to bzrdir.format_registry.get(), ensure_real() will not22:47
spivjam: yes, and I think it's correct that ensure_real will not22:48
jamanyway, I can find another thing to do here, thanks for the tip22:48
jamanyway, the tests pass22:48
jamjust need to make sure I'm testing enough :)22:48
spivensure_real should certainly fail if there's no real object!22:48
fullermdUnless you mistype it as "ensur_real" maybe   :>22:49
spivfullermd: actually the method is “_ensure_real” :P22:50
fullermdIs it a virtual method?  :p22:53
mgzit's an imaginary method.22:54
fullermdThat sounds pretty complex.22:54

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