* [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions
[not found] <200905211348.n4LDmnYd025976@d01av04.pok.ibm.com>
@ 2009-05-21 22:36 ` Paul Brook
2009-05-21 22:50 ` Glauber Costa
2009-05-22 1:21 ` [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions Anthony Liguori
0 siblings, 2 replies; 14+ messages in thread
From: Paul Brook @ 2009-05-21 22:36 UTC (permalink / raw)
To: Anthony Liguori, qemu-devel
> From: Anthony Liguori <aliguori@us.ibm.com>
>
> This cleans up quite a lot of #ifdefs, extern variables, and other
> ugliness.
This changes the default for at least the ARM target, which I consider to be a
bug. Worse than that, the default is now arbitrary and depends on unspecified
toolchain implementation details.
Paul
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions
2009-05-21 22:36 ` [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions Paul Brook
@ 2009-05-21 22:50 ` Glauber Costa
2009-05-22 1:34 ` Anthony Liguori
2009-05-22 1:21 ` [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions Anthony Liguori
1 sibling, 1 reply; 14+ messages in thread
From: Glauber Costa @ 2009-05-21 22:50 UTC (permalink / raw)
To: Paul Brook; +Cc: Anthony Liguori, qemu-devel
On Thu, May 21, 2009 at 11:36:01PM +0100, Paul Brook wrote:
> > From: Anthony Liguori <aliguori@us.ibm.com>
> >
> > This cleans up quite a lot of #ifdefs, extern variables, and other
> > ugliness.
>
> This changes the default for at least the ARM target, which I consider to be a
> bug. Worse than that, the default is now arbitrary and depends on unspecified
> toolchain implementation details.
How about we start sending patches to the list? Then this kind of thing can be avoided.
Note that although at first there is nothing wrong with just messing around with
the devel repository, this kind of thing breaks bisectability of the tree, which is kind
of a pain.
c'mon guys, patches to the list.
Let's start doing it before IBM put a patent on it.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions
2009-05-21 22:36 ` [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions Paul Brook
2009-05-21 22:50 ` Glauber Costa
@ 2009-05-22 1:21 ` Anthony Liguori
1 sibling, 0 replies; 14+ messages in thread
From: Anthony Liguori @ 2009-05-22 1:21 UTC (permalink / raw)
To: Paul Brook; +Cc: qemu-devel
Paul Brook wrote:
>> From: Anthony Liguori <aliguori@us.ibm.com>
>>
>> This cleans up quite a lot of #ifdefs, extern variables, and other
>> ugliness.
>>
>
> This changes the default for at least the ARM target, which I consider to be a
> bug. Worse than that, the default is now arbitrary and depends on unspecified
> toolchain implementation details.
>
The default depends on order? That's unfortunate. I'll fix it.
> Paul
>
--
Regards,
Anthony Liguori
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions
2009-05-21 22:50 ` Glauber Costa
@ 2009-05-22 1:34 ` Anthony Liguori
2009-05-22 1:49 ` Glauber Costa
2009-05-23 14:22 ` autotest (was Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions) Dor Laor
0 siblings, 2 replies; 14+ messages in thread
From: Anthony Liguori @ 2009-05-22 1:34 UTC (permalink / raw)
To: Glauber Costa; +Cc: Paul Brook, qemu-devel
Glauber Costa wrote:
> On Thu, May 21, 2009 at 11:36:01PM +0100, Paul Brook wrote:
>
>>> From: Anthony Liguori <aliguori@us.ibm.com>
>>>
>>> This cleans up quite a lot of #ifdefs, extern variables, and other
>>> ugliness.
>>>
>> This changes the default for at least the ARM target, which I consider to be a
>> bug. Worse than that, the default is now arbitrary and depends on unspecified
>> toolchain implementation details.
>>
> How about we start sending patches to the list? Then this kind of thing can be avoided.
>
It doesn't magically solve the problem. I post most patches and still
regressions slip in. I review every patch I commit and still
regressions slip in. People are imperfect.
The best way to prevent regressions is to have an automated test suite
that everyone can use to validate that a series of patches doesn't break
things.
> Note that although at first there is nothing wrong with just messing around with
> the devel repository, this kind of thing breaks bisectability of the tree, which is kind
> of a pain.
>
You can always --skip. I understand your point. In this case, the
patch was very large and mostly mechanical. There was a design flaw but
I didn't expect to get much useful feedback because of the shear amount
of things it touched.
Regression tests are the only way we're going to really solve this problem.
--
Regards,
Anthony Liguori
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions
2009-05-22 1:34 ` Anthony Liguori
@ 2009-05-22 1:49 ` Glauber Costa
2009-05-22 2:00 ` Anthony Liguori
2009-05-23 14:22 ` autotest (was Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions) Dor Laor
1 sibling, 1 reply; 14+ messages in thread
From: Glauber Costa @ 2009-05-22 1:49 UTC (permalink / raw)
To: Anthony Liguori; +Cc: Paul Brook, qemu-devel
On Thu, May 21, 2009 at 08:34:48PM -0500, Anthony Liguori wrote:
> Glauber Costa wrote:
>> On Thu, May 21, 2009 at 11:36:01PM +0100, Paul Brook wrote:
>>
>>>> From: Anthony Liguori <aliguori@us.ibm.com>
>>>>
>>>> This cleans up quite a lot of #ifdefs, extern variables, and other
>>>> ugliness.
>>>>
>>> This changes the default for at least the ARM target, which I
>>> consider to be a bug. Worse than that, the default is now arbitrary
>>> and depends on unspecified toolchain implementation details.
>>>
>> How about we start sending patches to the list? Then this kind of thing can be avoided.
>>
>
> It doesn't magically solve the problem. I post most patches and still
> regressions slip in. I review every patch I commit and still
> regressions slip in. People are imperfect.
true.
>
> The best way to prevent regressions is to have an automated test suite
> that everyone can use to validate that a series of patches doesn't break
> things.
true...
>
>> Note that although at first there is nothing wrong with just messing around with
>> the devel repository, this kind of thing breaks bisectability of the
>> tree, which is kind of a pain.
>>
>
> You can always --skip. I understand your point. In this case, the
> patch was very large and mostly mechanical. There was a design flaw but
> I didn't expect to get much useful feedback because of the shear amount
> of things it touched.
however, for a lot of patches that recently went in, there were discussions
_after_ the patch made its way to the repository. The discussions help, everybody
does that. Giving people a chance to stand up and raise valid points before
a change is made to the repository is at the very least, a polite attitude to be
taken. And although I agree with you that it does not solve all problems, it
really does help improving the situation by a huge leap.
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions
2009-05-22 1:49 ` Glauber Costa
@ 2009-05-22 2:00 ` Anthony Liguori
0 siblings, 0 replies; 14+ messages in thread
From: Anthony Liguori @ 2009-05-22 2:00 UTC (permalink / raw)
To: Glauber Costa; +Cc: Paul Brook, qemu-devel
Glauber Costa wrote:
>>> Note that although at first there is nothing wrong with just messing around with
>>> the devel repository, this kind of thing breaks bisectability of the
>>> tree, which is kind of a pain.
>>>
>>>
>> You can always --skip. I understand your point. In this case, the
>> patch was very large and mostly mechanical. There was a design flaw but
>> I didn't expect to get much useful feedback because of the shear amount
>> of things it touched.
>>
>
> however, for a lot of patches that recently went in, there were discussions
> _after_ the patch made its way to the repository. The discussions help, everybody
> does that. Giving people a chance to stand up and raise valid points before
> a change is made to the repository is at the very least, a polite attitude to be
> taken. And although I agree with you that it does not solve all problems, it
> really does help improving the situation by a huge leap.
>
I appreciate where you're coming from. I've made the same argument in
the context of other projects.
Practically speaking, very few projects have every single patch go to
the mailing list first. Almost always, quick fixes or trivial things
are committed directly by the maintainers. I think the real balancing
act is determine what falls into the category of quick fixes/trivial
changes and what ought to go to the list.
So please do provide feedback on particular commits that you think
should have gone to the mailing list. I don't think there will every be
an every single change to the mailing list first policy, but it's
certainly open to discussion about what changes should get review first.
--
Regards,
Anthony Liguori
^ permalink raw reply [flat|nested] 14+ messages in thread
* autotest (was Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions)
2009-05-22 1:34 ` Anthony Liguori
2009-05-22 1:49 ` Glauber Costa
@ 2009-05-23 14:22 ` Dor Laor
2009-05-24 19:46 ` Anthony Liguori
1 sibling, 1 reply; 14+ messages in thread
From: Dor Laor @ 2009-05-23 14:22 UTC (permalink / raw)
To: Anthony Liguori; +Cc: Glauber Costa, Paul Brook, qemu-devel
Anthony Liguori wrote:
> Glauber Costa wrote:
>> How about we start sending patches to the list? Then this kind of
>> thing can be avoided.
>>
>
> It doesn't magically solve the problem. I post most patches and still
> regressions slip in. I review every patch I commit and still
> regressions slip in. People are imperfect.
>
> The best way to prevent regressions is to have an automated test suite
> that everyone can use to validate that a series of patches doesn't
> break things.
We have such a frame work, it's the kvm autotest project -
http://www.linux-kvm.org/page/KVM-Autotest.
It is used currently by Avi for his tree + to test more internal trees.
It recently catched a regression with -net usage.
Don't let its name fool you, it should be able to test bare qemu code
too. Also we are finally on track for
merging the changes upstream towards autotest project.
So ideally, what we need for qemu project is:
1. Make kvm-autotest work with qemu only
- It's mainly about changing timeouts and better, move to kickstart
files
2. Have qemu community use it and contribute to it.
3. Maintainers should ...
- Well, I'll let you maintainers complete that line :)
#1 will surely happen soon. I hope #2, #3 will join right after, making
qemu head/stable a better place.
Regards,
Dor
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: autotest (was Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions)
2009-05-23 14:22 ` autotest (was Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions) Dor Laor
@ 2009-05-24 19:46 ` Anthony Liguori
2009-05-24 20:50 ` Avi Kivity
0 siblings, 1 reply; 14+ messages in thread
From: Anthony Liguori @ 2009-05-24 19:46 UTC (permalink / raw)
To: dlaor; +Cc: Glauber Costa, Paul Brook, qemu-devel
Dor Laor wrote:
> Anthony Liguori wrote:
>> Glauber Costa wrote:
>>> How about we start sending patches to the list? Then this kind of
>>> thing can be avoided.
>>>
>>
>> It doesn't magically solve the problem. I post most patches and
>> still regressions slip in. I review every patch I commit and still
>> regressions slip in. People are imperfect.
>>
>> The best way to prevent regressions is to have an automated test
>> suite that everyone can use to validate that a series of patches
>> doesn't break things.
> We have such a frame work, it's the kvm autotest project -
> http://www.linux-kvm.org/page/KVM-Autotest.
Autotest doesn't currently test the regressions that I want to test.
But yeah, I agree with the general point that whatever we use as a
regression suite ought to be drivable by autotest.
Regards,
Anthony Liguori
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: autotest (was Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions)
2009-05-24 19:46 ` Anthony Liguori
@ 2009-05-24 20:50 ` Avi Kivity
2009-05-26 8:10 ` Anthony Liguori
0 siblings, 1 reply; 14+ messages in thread
From: Avi Kivity @ 2009-05-24 20:50 UTC (permalink / raw)
To: Anthony Liguori; +Cc: Glauber Costa, dlaor, Paul Brook, qemu-devel
Anthony Liguori wrote:
> Autotest doesn't currently test the regressions that I want to test.
Which regressions do you want to test?
One way to increase coverage is to require each patch (fix or feature)
to come with a test. On the other hand, it might stop contributions
instead of increasing test coverage.
I've used this method for the x86 emulator in kvm, with some success.
--
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: autotest (was Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions)
2009-05-24 20:50 ` Avi Kivity
@ 2009-05-26 8:10 ` Anthony Liguori
2009-05-26 9:17 ` Avi Kivity
2009-05-26 9:17 ` Dor Laor
0 siblings, 2 replies; 14+ messages in thread
From: Anthony Liguori @ 2009-05-26 8:10 UTC (permalink / raw)
To: Avi Kivity; +Cc: Glauber Costa, dlaor, Paul Brook, qemu-devel
Avi Kivity wrote:
> Anthony Liguori wrote:
>> Autotest doesn't currently test the regressions that I want to test.
>
> Which regressions do you want to test?
For instance, we often have networking regressions. In particular, with
the refactoring going on in slirp and tun/tap, I'd really like to have
an automated way to test slirp and tap with TCP transmit/receive, and
slirp redir. I have something locally to do this that I intend on
posting in the next few days.
>
> One way to increase coverage is to require each patch (fix or feature)
> to come with a test. On the other hand, it might stop contributions
> instead of increasing test coverage.
>
> I've used this method for the x86 emulator in kvm, with some success.
I wouldn't require kvm-autotest, but I'd like to have an interest set of
unit tests that are then usable within kvm-autotest. Once we have that,
asking politely for tests to be written I think is quite reasonable.
Regards,
Anthony Liguori
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: autotest (was Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions)
2009-05-26 8:10 ` Anthony Liguori
@ 2009-05-26 9:17 ` Avi Kivity
2009-05-26 9:17 ` Dor Laor
1 sibling, 0 replies; 14+ messages in thread
From: Avi Kivity @ 2009-05-26 9:17 UTC (permalink / raw)
To: Anthony Liguori; +Cc: Glauber Costa, dlaor, Paul Brook, qemu-devel
Anthony Liguori wrote:
> Avi Kivity wrote:
>> Anthony Liguori wrote:
>>> Autotest doesn't currently test the regressions that I want to test.
>>
>> Which regressions do you want to test?
>
> For instance, we often have networking regressions. In particular,
> with the refactoring going on in slirp and tun/tap, I'd really like to
> have an automated way to test slirp and tap with TCP transmit/receive,
> and slirp redir.
kvm-autotest does test slirp (and redirection). It doesn't test tap
AFAIK, but could easily be extended to do so.
--
error compiling committee.c: too many arguments to function
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: autotest (was Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions)
2009-05-26 8:10 ` Anthony Liguori
2009-05-26 9:17 ` Avi Kivity
@ 2009-05-26 9:17 ` Dor Laor
2009-05-26 9:30 ` Anthony Liguori
1 sibling, 1 reply; 14+ messages in thread
From: Dor Laor @ 2009-05-26 9:17 UTC (permalink / raw)
To: Anthony Liguori; +Cc: qemu-devel, Glauber Costa, Avi Kivity, Paul Brook
Anthony Liguori wrote:
> Avi Kivity wrote:
>> Anthony Liguori wrote:
>>> Autotest doesn't currently test the regressions that I want to test.
>>
>> Which regressions do you want to test?
>
> For instance, we often have networking regressions. In particular,
> with the refactoring going on in slirp and tun/tap, I'd really like to
> have an automated way to test slirp and tap with TCP transmit/receive,
> and slirp redir. I have something locally to do this that I intend on
> posting in the next few days.
>
Current kvm autotest do test slirp. The step-files for guest
installation open ssh/telnet access in order
to let the host reach them.
We trapped exactly this regression using autotest.
>>
>> One way to increase coverage is to require each patch (fix or
>> feature) to come with a test. On the other hand, it might stop
>> contributions instead of increasing test coverage.
>>
>> I've used this method for the x86 emulator in kvm, with some success.
>
> I wouldn't require kvm-autotest, but I'd like to have an interest set
> of unit tests that are then usable within kvm-autotest. Once we have
> that, asking politely for tests to be written I think is quite
> reasonable.
Some features are easily tested using a large framework, for example
migration, slirp, time drift, etc.
In addition kvm's tests unit tests, qemu-io and similar should be
written too in order to test various cases that
are only reasonable to be found using low level operations.
No doubt all of the unit tests should be executed from autotest.
>
> Regards,
>
> Anthony Liguori
>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: autotest (was Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions)
2009-05-26 9:17 ` Dor Laor
@ 2009-05-26 9:30 ` Anthony Liguori
2009-05-26 9:54 ` Dor Laor
0 siblings, 1 reply; 14+ messages in thread
From: Anthony Liguori @ 2009-05-26 9:30 UTC (permalink / raw)
To: dlaor; +Cc: Anthony Liguori, Glauber Costa, qemu-devel, Paul Brook,
Avi Kivity
Dor Laor wrote:
> Anthony Liguori wrote:
>> Avi Kivity wrote:
>>> Anthony Liguori wrote:
>>>> Autotest doesn't currently test the regressions that I want to test.
>>>
>>> Which regressions do you want to test?
>>
>> For instance, we often have networking regressions. In particular,
>> with the refactoring going on in slirp and tun/tap, I'd really like
>> to have an automated way to test slirp and tap with TCP
>> transmit/receive, and slirp redir. I have something locally to do
>> this that I intend on posting in the next few days.
>>
> Current kvm autotest do test slirp. The step-files for guest
> installation open ssh/telnet access in order
> to let the host reach them.
> We trapped exactly this regression using autotest.
What I want is a single test that completes quickly. This means a
preconfigured guest that I can run a quick test case against.
Installation tests a lot of things. I'm looking for more targeted tests.
>> I wouldn't require kvm-autotest, but I'd like to have an interest set
>> of unit tests that are then usable within kvm-autotest. Once we have
>> that, asking politely for tests to be written I think is quite
>> reasonable.
> Some features are easily tested using a large framework, for example
> migration, slirp, time drift, etc.
> In addition kvm's tests unit tests, qemu-io and similar should be
> written too in order to test various cases that
> are only reasonable to be found using low level operations.
> No doubt all of the unit tests should be executed from autotest.
Yup, I agree 100%.
Regards,
Anthony Liguori
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: autotest (was Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions)
2009-05-26 9:30 ` Anthony Liguori
@ 2009-05-26 9:54 ` Dor Laor
0 siblings, 0 replies; 14+ messages in thread
From: Dor Laor @ 2009-05-26 9:54 UTC (permalink / raw)
To: Anthony Liguori
Cc: Anthony Liguori, Glauber Costa, qemu-devel, Paul Brook,
Avi Kivity
Anthony Liguori wrote:
> Dor Laor wrote:
>> Anthony Liguori wrote:
>>> Avi Kivity wrote:
>>>> Anthony Liguori wrote:
>>>>> Autotest doesn't currently test the regressions that I want to test.
>>>>
>>>> Which regressions do you want to test?
>>>
>>> For instance, we often have networking regressions. In particular,
>>> with the refactoring going on in slirp and tun/tap, I'd really like
>>> to have an automated way to test slirp and tap with TCP
>>> transmit/receive, and slirp redir. I have something locally to do
>>> this that I intend on posting in the next few days.
>>>
>> Current kvm autotest do test slirp. The step-files for guest
>> installation open ssh/telnet access in order
>> to let the host reach them.
>> We trapped exactly this regression using autotest.
>
> What I want is a single test that completes quickly. This means a
> preconfigured guest that I can run a quick test case against.
>
> Installation tests a lot of things. I'm looking for more targeted tests.
No doubt unit tests and some tools run manually are the best.
Nevertheless, the projects needs fully automated test framework that
test it all.
Even today you do not have to go through the guest install each time.
Guest images are not erased after the install and autotest itself spawn
additional
tests over this image. Even a VM can be kept alive at the end of a test,
waiting for
additional tests to be executed over it.
In the future, I envision that you can go to auto-serv web interface,
manually pick
a host and a test case and run it. The test will have built-in
dependencies, and
if the VM is installed and alive it would just run the test as quick as
possible.
Otherwise it will automatically do the dependency chain (or prompt for it).
>
>>> I wouldn't require kvm-autotest, but I'd like to have an interest
>>> set of unit tests that are then usable within kvm-autotest. Once we
>>> have that, asking politely for tests to be written I think is quite
>>> reasonable.
>> Some features are easily tested using a large framework, for example
>> migration, slirp, time drift, etc.
>> In addition kvm's tests unit tests, qemu-io and similar should be
>> written too in order to test various cases that
>> are only reasonable to be found using low level operations.
>> No doubt all of the unit tests should be executed from autotest.
>
> Yup, I agree 100%.
>
> Regards,
>
> Anthony Liguori
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2009-05-26 9:56 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <200905211348.n4LDmnYd025976@d01av04.pok.ibm.com>
2009-05-21 22:36 ` [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions Paul Brook
2009-05-21 22:50 ` Glauber Costa
2009-05-22 1:34 ` Anthony Liguori
2009-05-22 1:49 ` Glauber Costa
2009-05-22 2:00 ` Anthony Liguori
2009-05-23 14:22 ` autotest (was Re: [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions) Dor Laor
2009-05-24 19:46 ` Anthony Liguori
2009-05-24 20:50 ` Avi Kivity
2009-05-26 8:10 ` Anthony Liguori
2009-05-26 9:17 ` Avi Kivity
2009-05-26 9:17 ` Dor Laor
2009-05-26 9:30 ` Anthony Liguori
2009-05-26 9:54 ` Dor Laor
2009-05-22 1:21 ` [Qemu-devel] Re: [Qemu-commits] [COMMIT f80f9ec] Convert machine registration to use module initfunctions Anthony Liguori
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).