* Changes to emacs-23 branch and the trunk
@ 2010-08-30 8:20 Kenichi Handa
2010-08-30 14:19 ` Chong Yidong
2010-08-30 16:03 ` Stefan Monnier
0 siblings, 2 replies; 19+ messages in thread
From: Kenichi Handa @ 2010-08-30 8:20 UTC (permalink / raw)
To: emacs-devel
I'm going to fix the display-table related problem in
emacs-23 branch. But, the diff of the change will conflict
with the trunk code. As I'm afraid that it's not a simple
work to resolve that confliction, I want to apply the same
change to the trunk code by myself. Can I do that? What
should I take care other than the usual committing of
changes?
---
Kenichi Handa
handa@m17n.org
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-08-30 8:20 Changes to emacs-23 branch and the trunk Kenichi Handa
@ 2010-08-30 14:19 ` Chong Yidong
2010-08-30 20:20 ` Juanma Barranquero
2010-08-30 16:03 ` Stefan Monnier
1 sibling, 1 reply; 19+ messages in thread
From: Chong Yidong @ 2010-08-30 14:19 UTC (permalink / raw)
To: Kenichi Handa; +Cc: emacs-devel
Kenichi Handa <handa@m17n.org> writes:
> I'm going to fix the display-table related problem in
> emacs-23 branch. But, the diff of the change will conflict
> with the trunk code. As I'm afraid that it's not a simple
> work to resolve that confliction, I want to apply the same
> change to the trunk code by myself. Can I do that? What
> should I take care other than the usual committing of
> changes?
If different changes have to be applied to the different branches, just
make the changes directly.
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-08-30 14:19 ` Chong Yidong
@ 2010-08-30 20:20 ` Juanma Barranquero
2010-09-14 15:03 ` Juanma Barranquero
0 siblings, 1 reply; 19+ messages in thread
From: Juanma Barranquero @ 2010-08-30 20:20 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
> If different changes have to be applied to the different branches, just
> make the changes directly.
Speaking of changes that differ between branches, I think that the
last merge from emacs-23 didn't take into account that emacs-23's
ido.el does not support virtual buffers, but the trunk one does.
The result is that `ido-add-virtual-buffers-to-list' is now not called
from anywhere and the virtual buffers feature does not work.
Juanma
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-08-30 20:20 ` Juanma Barranquero
@ 2010-09-14 15:03 ` Juanma Barranquero
2010-09-16 22:33 ` Chong Yidong
0 siblings, 1 reply; 19+ messages in thread
From: Juanma Barranquero @ 2010-09-14 15:03 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
ping!
On Mon, Aug 30, 2010 at 22:20, Juanma Barranquero <lekktu@gmail.com> wrote:
>
> Speaking of changes that differ between branches, I think that the
> last merge from emacs-23 didn't take into account that emacs-23's
> ido.el does not support virtual buffers, but the trunk one does.
>
> The result is that `ido-add-virtual-buffers-to-list' is now not called
> from anywhere and the virtual buffers feature does not work.
Juanma
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-09-14 15:03 ` Juanma Barranquero
@ 2010-09-16 22:33 ` Chong Yidong
2010-09-17 15:09 ` Juanma Barranquero
0 siblings, 1 reply; 19+ messages in thread
From: Chong Yidong @ 2010-09-16 22:33 UTC (permalink / raw)
To: Juanma Barranquero; +Cc: emacs-devel
Juanma Barranquero <lekktu@gmail.com> writes:
> ping!
>
> On Mon, Aug 30, 2010 at 22:20, Juanma Barranquero <lekktu@gmail.com> wrote:
>>
>> Speaking of changes that differ between branches, I think that the
>> last merge from emacs-23 didn't take into account that emacs-23's
>> ido.el does not support virtual buffers, but the trunk one does.
>>
>> The result is that `ido-add-virtual-buffers-to-list' is now not called
>> from anywhere and the virtual buffers feature does not work.
I checked in a fix for the merge error. Sorry for the delay.
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-08-30 8:20 Changes to emacs-23 branch and the trunk Kenichi Handa
2010-08-30 14:19 ` Chong Yidong
@ 2010-08-30 16:03 ` Stefan Monnier
2010-08-31 1:54 ` Kenichi Handa
1 sibling, 1 reply; 19+ messages in thread
From: Stefan Monnier @ 2010-08-30 16:03 UTC (permalink / raw)
To: Kenichi Handa; +Cc: emacs-devel
> I'm going to fix the display-table related problem in
> emacs-23 branch. But, the diff of the change will conflict
> with the trunk code. As I'm afraid that it's not a simple
> work to resolve that confliction, I want to apply the same
> change to the trunk code by myself.
It's basically easy:
cd .../trunk
bzr merge .../emacs-23
<resolve&commit>
cd .../emacs-23
<make-change>
bzr commit -m ...
cd .../trunk
bzr merge .../emacs-23
bzr revert .
<make-the-change-by-hand>
bzr commit -m "Merge by hand from emacs-23"
The first part just updates the trunk w.r.t emacs-23 so that when you do
the "bzr merge" after installing your change, you only get your own
change, rather than a bunch of others.
Note that rather than
bzr revert .
<make-the-change-by-hand>
you may want to check the conflict that Bzr gives you: it may turn out
to be just as easy to resolve it by hand than to undo&redo.
Stefan
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-08-30 16:03 ` Stefan Monnier
@ 2010-08-31 1:54 ` Kenichi Handa
2010-08-31 8:43 ` Stefan Monnier
0 siblings, 1 reply; 19+ messages in thread
From: Kenichi Handa @ 2010-08-31 1:54 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
In article <jwvlj7oks6c.fsf-monnier+emacs@gnu.org>, Stefan Monnier <monnier@iro.umontreal.ca> writes:
> > I'm going to fix the display-table related problem in >
> emacs-23 branch. But, the diff of the change will
> conflict > with the trunk code. As I'm afraid that it's
> not a simple > work to resolve that confliction, I want to
> apply the same > change to the trunk code by myself.
> It's basically easy:
> cd .../trunk
> bzr merge .../emacs-23
> <resolve&commit>
> cd .../emacs-23
> <make-change>
> bzr commit -m ...
> cd .../trunk
> bzr merge .../emacs-23
> bzr revert .
> <make-the-change-by-hand>
> bzr commit -m "Merge by hand from emacs-23">
Thank you for the detailed procedure, but I'm not working
directly in emacs-23 and trunk branches but in "Task
Branches". I have these branches:
trunk -- bound to upstream
emacs-23 -- bound to upstream
work -- made by "bzr branch trunk work"
work-23 -- made by "bzr branch emacs-23 work-23"
And, this is my workflow for Emacs 23:
A % cd work-23
<make-change>
% bzr commit -m 'my change'
% cd ../emacs-23
B % bzr up
<if there's no new change, go to step C)
% cd ../work-23
% bzr merge
<resolve conflicts if any>
% bzr commit -m 'merge emacs-23'
% cd ../emacs-23
C % bzr merge ../work-23
% bzr commit -m 'my change'
<if it's refused by conflicts, do "bzr revert" and goto step B>
<go to step A for another work>
So to apply your procedure in the above model, what I should
do is this, right?
A % cd work-23
<make-change>
% bzr commit -m 'my change'
% cd ../emacs-23
B % bzr up
<assuming that there's no new change>
C % bzr merge ../work-23
% bzr commit -m 'my change'
% cd ../work
% bzr merge ../emacs-23
<fix conflicts>
% bzr commit -m "Merge by hand from emacs-23"
% cd ../trunk
% bzr up
<assuming that there's no new change>
% bzr commit -m "Merge by hand from emacs-23"
Does this surely records that the trunk already took in my
change for emacs-23? I think that's necessary to avoid
future double merging.
---
Kenichi Handa
handa@m17n.org
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-08-31 1:54 ` Kenichi Handa
@ 2010-08-31 8:43 ` Stefan Monnier
2010-08-31 11:44 ` Kenichi Handa
0 siblings, 1 reply; 19+ messages in thread
From: Stefan Monnier @ 2010-08-31 8:43 UTC (permalink / raw)
To: Kenichi Handa; +Cc: emacs-devel
> So to apply your procedure in the above model, what I should
> do is this, right?
> A % cd work-23
> <make-change>
> % bzr commit -m 'my change'
> % cd ../emacs-23
> B % bzr up
> <assuming that there's no new change>
> C % bzr merge ../work-23
> % bzr commit -m 'my change'
> % cd ../work
> % bzr merge ../emacs-23
> <fix conflicts>
> % bzr commit -m "Merge by hand from emacs-23"
> % cd ../trunk
> % bzr up
> <assuming that there's no new change>
> % bzr commit -m "Merge by hand from emacs-23"
That looks right, yes, except for a missing "bzr merge ../work" before
the last commit.
> Does this surely records that the trunk already took in my
> change for emacs-23?
Yes.
> I think that's necessary to avoid future double merging.
Indeed. Note that the steps you describe above are the normal steps to
do a merge (except they go through many branches rather than going
straight from emacs-23 to trunk).
The key part of my suggestion was to use "bzr revert ." followed by
applying the change by hand, rather than resoling the conflicts, since
I thought that's what you asked.
Stefan
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-08-31 8:43 ` Stefan Monnier
@ 2010-08-31 11:44 ` Kenichi Handa
2010-08-31 11:59 ` Andreas Schwab
2010-08-31 13:08 ` Stefan Monnier
0 siblings, 2 replies; 19+ messages in thread
From: Kenichi Handa @ 2010-08-31 11:44 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
In article <jwvtymbi3d5.fsf-monnier+emacs@gnu.org>, Stefan Monnier <monnier@IRO.UMontreal.CA> writes:
> > So to apply your procedure in the above model, what I should
> > do is this, right?
> > A % cd work-23
> > <make-change>
> > % bzr commit -m 'my change'
> > % cd ../emacs-23
> > B % bzr up
> > <assuming that there's no new change>
> > C % bzr merge ../work-23
> > % bzr commit -m 'my change'
> > % cd ../work
> > % bzr merge ../emacs-23
> > <fix conflicts>
> > % bzr commit -m "Merge by hand from emacs-23"
> > % cd ../trunk
> > % bzr up
> > <assuming that there's no new change>
> > % bzr commit -m "Merge by hand from emacs-23"
> That looks right, yes, except for a missing "bzr merge ../work" before
> the last commit.
Ah, sure, I forgot to write that step.
But, I've just proceeded to "% bzr merge ../emacs-23", and
this message was shown:
[work] bzr merge ../emacs-23
M doc/man/ChangeLog
M doc/man/emacs.1
M doc/misc/ChangeLog
M etc/ChangeLog
M etc/emacs3.py
M leim/ChangeLog
M leim/quail/japanese.el
M lisp/ChangeLog
M lisp/disp-table.el
M lisp/international/mule-cmds.el
M lisp/net/rcirc.el
M lisp/net/tramp-cmds.el
M lisp/net/tramp-compat.el
M lisp/net/tramp-fish.el
M lisp/net/tramp-ftp.el
M lisp/net/tramp-gvfs.el
M lisp/net/tramp-imap.el
M lisp/net/tramp-smb.el
M lisp/net/tramp-uu.el
M lisp/net/trampver.el
M lisp/play/cookie1.el
M lisp/progmodes/python.el
M lisp/simple.el
M src/ChangeLog
M src/dispextern.h
M src/term.c
M src/xdisp.c
Text conflict in doc/misc/ChangeLog
Text conflict in etc/ChangeLog
Text conflict in lisp/ChangeLog
Text conflict in lisp/net/rcirc.el
Text conflict in src/ChangeLog
Text conflict in src/xdisp.c
6 conflicts encountered.
This is strange. The above step apparently merged more than
what I committed in emacs-23 branch. That commit was done
as this just before the above merge:
[emacs-23] bzr commit -m 'Fix handling of 8-bit characters in a display table.'
Committing to: sftp://bzr.savannah.gnu.org/srv/bzr/emacs/emacs-23/
modified lisp/ChangeLog
modified lisp/disp-table.el
modified lisp/international/mule-cmds.el
modified src/ChangeLog
modified src/dispextern.h
modified src/term.c
modified src/xdisp.c
Committed revision 100011.
What was wrong?
---
Kenichi Handa
handa@m17n.org
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-08-31 11:44 ` Kenichi Handa
@ 2010-08-31 11:59 ` Andreas Schwab
2010-08-31 12:37 ` Kenichi Handa
2010-08-31 13:08 ` Stefan Monnier
1 sibling, 1 reply; 19+ messages in thread
From: Andreas Schwab @ 2010-08-31 11:59 UTC (permalink / raw)
To: Kenichi Handa; +Cc: Stefan Monnier, emacs-devel
Kenichi Handa <handa@m17n.org> writes:
> What was wrong?
You are probably confusing merge with cherry-pick.
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-08-31 11:59 ` Andreas Schwab
@ 2010-08-31 12:37 ` Kenichi Handa
2010-08-31 17:05 ` Eli Zaretskii
0 siblings, 1 reply; 19+ messages in thread
From: Kenichi Handa @ 2010-08-31 12:37 UTC (permalink / raw)
To: Andreas Schwab; +Cc: monnier, emacs-devel
In article <m38w3nkn6f.fsf@hase.home>, Andreas Schwab <schwab@linux-m68k.org> writes:
> You are probably confusing merge with cherry-pick.
Maybe. Then which part was wrong with the procedure given
by Stefan, and what is the correct procedure?
It seems that git has cherry-pick command but bzr doesn't
(at least by that name).
---
Kenichi Handa
handa@m17n.org
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-08-31 12:37 ` Kenichi Handa
@ 2010-08-31 17:05 ` Eli Zaretskii
0 siblings, 0 replies; 19+ messages in thread
From: Eli Zaretskii @ 2010-08-31 17:05 UTC (permalink / raw)
To: Kenichi Handa; +Cc: schwab, monnier, emacs-devel
> From: Kenichi Handa <handa@m17n.org>
> Date: Tue, 31 Aug 2010 21:37:19 +0900
> Cc: monnier@IRO.UMontreal.CA, emacs-devel@gnu.org
>
> In article <m38w3nkn6f.fsf@hase.home>, Andreas Schwab <schwab@linux-m68k.org> writes:
>
> > You are probably confusing merge with cherry-pick.
>
> Maybe. Then which part was wrong with the procedure given
> by Stefan, and what is the correct procedure?
>
> It seems that git has cherry-pick command but bzr doesn't
> (at least by that name).
You don't _want_ to cherry-pick in this case, because bzr does not
track cherry-picks in its history. So cherry-picking would create
potential merge conflicts when Stefan or Chong will later merge from
the release branch. Avoiding such conflicts was the motivation behind
the procedure suggested by Stefan.
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-08-31 11:44 ` Kenichi Handa
2010-08-31 11:59 ` Andreas Schwab
@ 2010-08-31 13:08 ` Stefan Monnier
2010-09-01 0:32 ` Kenichi Handa
1 sibling, 1 reply; 19+ messages in thread
From: Stefan Monnier @ 2010-08-31 13:08 UTC (permalink / raw)
To: Kenichi Handa; +Cc: emacs-devel
> This is strange. The above step apparently merged more than
> what I committed in emacs-23 branch. That commit was done
> as this just before the above merge:
Yes, "bzr merge" will merge all the changes from the upstream branch
that haven't been merged yet. I.e. your command merged all the changes
that had been applied to `emacs-23' but hadn't yet been merged to
`trunk' (or `work'). That's why my original scenario started with:
cd .../trunk
bzr merge .../emacs-23
<resolve&commit>
so as to first merge other "pending" changes.
Stefan
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-08-31 13:08 ` Stefan Monnier
@ 2010-09-01 0:32 ` Kenichi Handa
2010-09-01 7:01 ` Stefan Monnier
0 siblings, 1 reply; 19+ messages in thread
From: Kenichi Handa @ 2010-09-01 0:32 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
In article <jwv1v9fey05.fsf-monnier+emacs@gnu.org>, Stefan Monnier <monnier@IRO.UMontreal.CA> writes:
> > This is strange. The above step apparently merged more than
> > what I committed in emacs-23 branch. That commit was done
> > as this just before the above merge:
> Yes, "bzr merge" will merge all the changes from the upstream branch
> that haven't been merged yet. I.e. your command merged all the changes
> that had been applied to `emacs-23' but hadn't yet been merged to
> `trunk' (or `work'). That's why my original scenario started with:
> cd .../trunk
> bzr merge .../emacs-23
> <resolve&commit>
> so as to first merge other "pending" changes.
But, I didn't want to merge other "pending" changes.
Anyway, I've already merged them in my working directory
"work". What should I do? May I commit all of them (after
resolving conflicts) to the trunk at once with the commit
message something like "merge changes in emacs-23 branches"?
---
Kenichi Handa
handa@m17n.org
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-09-01 0:32 ` Kenichi Handa
@ 2010-09-01 7:01 ` Stefan Monnier
2010-09-02 2:49 ` Kenichi Handa
0 siblings, 1 reply; 19+ messages in thread
From: Stefan Monnier @ 2010-09-01 7:01 UTC (permalink / raw)
To: Kenichi Handa; +Cc: emacs-devel
>> so as to first merge other "pending" changes.
> But, I didn't want to merge other "pending" changes.
You have to merge them before you merge yours, otherwise Bzr doesn't
know how to track the merge history (as mentioned elsewhere, it (like
most other VCS, except for DaRCS and maybe Arch) doesn't know how to
track cherry-picks).
> Anyway, I've already merged them in my working directory
> "work". What should I do? May I commit all of them (after
> resolving conflicts) to the trunk at once with the commit
> message something like "merge changes in emacs-23 branches"?
Yes.
Stefan
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-09-01 7:01 ` Stefan Monnier
@ 2010-09-02 2:49 ` Kenichi Handa
2010-09-02 5:07 ` Eli Zaretskii
0 siblings, 1 reply; 19+ messages in thread
From: Kenichi Handa @ 2010-09-02 2:49 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
In article <jwvvd6qaqz1.fsf-monnier+emacs@gnu.org>, Stefan Monnier <monnier@iro.umontreal.ca> writes:
>>> so as to first merge other "pending" changes.
> > But, I didn't want to merge other "pending" changes.
> You have to merge them before you merge yours,
My original hope was to avoid that, but now I understand
that is necessary.
> > Anyway, I've already merged them in my working directory
> > "work". What should I do? May I commit all of them (after
> > resolving conflicts) to the trunk at once with the commit
> > message something like "merge changes in emacs-23 branches"?
> Yes.
Just done.
By the way, when I do "bzr merge" in "work" directory, now
it tries to merge from emacs-23 branch with this message:
Merging from remembered submit location /usr/local/work/emacs/emacs-23/
Previously it tried to merge from trunk with this message:
Merging from remembered parent location /usr/local/work/emacs/trunk/
How can I recover that behaviour?
---
Kenichi Handa
handa@m17n.org
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-09-02 2:49 ` Kenichi Handa
@ 2010-09-02 5:07 ` Eli Zaretskii
2010-09-02 5:33 ` Kenichi Handa
0 siblings, 1 reply; 19+ messages in thread
From: Eli Zaretskii @ 2010-09-02 5:07 UTC (permalink / raw)
To: Kenichi Handa; +Cc: monnier, emacs-devel
> From: Kenichi Handa <handa@m17n.org>
> Date: Thu, 02 Sep 2010 11:49:19 +0900
> Cc: emacs-devel@gnu.org
>
> By the way, when I do "bzr merge" in "work" directory, now
> it tries to merge from emacs-23 branch with this message:
>
> Merging from remembered submit location /usr/local/work/emacs/emacs-23/
>
> Previously it tried to merge from trunk with this message:
>
> Merging from remembered parent location /usr/local/work/emacs/trunk/
>
> How can I recover that behaviour?
I think the next time you merge with the trunk, the remembered parent
location will be reset to the trunk. If you want to be sure, you
could use the --remember option to "bzr merge":
cd work && bzr merge --remember ../trunk
or something similar.
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Changes to emacs-23 branch and the trunk
2010-09-02 5:07 ` Eli Zaretskii
@ 2010-09-02 5:33 ` Kenichi Handa
0 siblings, 0 replies; 19+ messages in thread
From: Kenichi Handa @ 2010-09-02 5:33 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: monnier, emacs-devel
In article <E1Or21C-00057g-9a@fencepost.gnu.org>, Eli Zaretskii <eliz@gnu.org> writes:
> I think the next time you merge with the trunk, the remembered parent
> location will be reset to the trunk. If you want to be sure, you
> could use the --remember option to "bzr merge":
> cd work && bzr merge --remember ../trunk
> or something similar.
Thank you. "bzr merge --remember ../trunk" worked.
---
Kenichi Handa
handa@m17n.org
^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2010-09-17 15:09 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-08-30 8:20 Changes to emacs-23 branch and the trunk Kenichi Handa
2010-08-30 14:19 ` Chong Yidong
2010-08-30 20:20 ` Juanma Barranquero
2010-09-14 15:03 ` Juanma Barranquero
2010-09-16 22:33 ` Chong Yidong
2010-09-17 15:09 ` Juanma Barranquero
2010-08-30 16:03 ` Stefan Monnier
2010-08-31 1:54 ` Kenichi Handa
2010-08-31 8:43 ` Stefan Monnier
2010-08-31 11:44 ` Kenichi Handa
2010-08-31 11:59 ` Andreas Schwab
2010-08-31 12:37 ` Kenichi Handa
2010-08-31 17:05 ` Eli Zaretskii
2010-08-31 13:08 ` Stefan Monnier
2010-09-01 0:32 ` Kenichi Handa
2010-09-01 7:01 ` Stefan Monnier
2010-09-02 2:49 ` Kenichi Handa
2010-09-02 5:07 ` Eli Zaretskii
2010-09-02 5:33 ` Kenichi Handa
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
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 read-only IMAP folder(s) and NNTP newsgroup(s).