Rework the section on proposing a new category. Some of the text
comes from the Committer's Guide, where it really didn't belong.
This commit is contained in:
parent
45ab797c4f
commit
a9ca7de11f
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=23309
1 changed files with 120 additions and 17 deletions
|
@ -1290,23 +1290,6 @@ PORTEPOCH= 1</programlisting>
|
||||||
the first category. See <link
|
the first category. See <link
|
||||||
linkend="choosing-categories">below</link> for more
|
linkend="choosing-categories">below</link> for more
|
||||||
discussion about how to pick the right categories.</para>
|
discussion about how to pick the right categories.</para>
|
||||||
|
|
||||||
<para>If your port truly belongs to something that is different from
|
|
||||||
all the existing ones, you can even create a new category name. In
|
|
||||||
that case, please send mail to the &a.ports; to propose a new
|
|
||||||
category. However, in general, until there are more than a
|
|
||||||
handful of ports which could be reclassified into the category
|
|
||||||
you propose, you will probably be turned down.</para>
|
|
||||||
|
|
||||||
<note><para>Occasionally someone proposes reorganizing the categories
|
|
||||||
with either a 2-level structure, or some other kind of keyword
|
|
||||||
structure. To date, nothing has come of any of these proposals
|
|
||||||
because, while they are very easy to make, the effort involved to
|
|
||||||
retrofit the entire existing ports collection with any kind of
|
|
||||||
reorganization is daunting to say the very least. Please read
|
|
||||||
the history of these proposals in the mailing list archives before
|
|
||||||
you post this idea; furthermore, you should be prepared to be
|
|
||||||
challenged to offer a working prototype.</para></note>
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 id="porting-categories">
|
<sect2 id="porting-categories">
|
||||||
|
@ -1966,6 +1949,126 @@ PORTEPOCH= 1</programlisting>
|
||||||
This causes unnecessary and undesirable bloat in the master
|
This causes unnecessary and undesirable bloat in the master
|
||||||
source repository.</para>
|
source repository.</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
<sect2 id="proposing-categories">
|
||||||
|
<title>Proposing a new category</title>
|
||||||
|
|
||||||
|
<para>As the Ports Collection has grown over time, various new
|
||||||
|
categories have been introduced. New categories can either
|
||||||
|
be <emphasis>virtual</emphasis> categories—those that do
|
||||||
|
not have a corresponding subdirectory in the ports tree—
|
||||||
|
or <emphasis>physical</emphasis> categories—those that
|
||||||
|
do. The following text dicusses the issues involved in creating
|
||||||
|
a new physical category so that you can understand them before
|
||||||
|
you propose one.</para>
|
||||||
|
|
||||||
|
<para>Our existing practice has been to avoid creating a new
|
||||||
|
physical category unless either a large number of ports would
|
||||||
|
logically belong to it, or the ports that would belong to it
|
||||||
|
are a logically distinct group that is of limited general
|
||||||
|
interest (for instance, categories related to spoken human
|
||||||
|
languages), or preferably both.</para>
|
||||||
|
|
||||||
|
<para>The rationale for this is that such a change creates a
|
||||||
|
<ulink url="&url.articles.committers-guide;/#ports">
|
||||||
|
fair amount of work</ulink> for both the committers and also
|
||||||
|
for all users who track changes to the Ports Collection. In
|
||||||
|
addition, proposed category changes just naturally seem to
|
||||||
|
attract controversy. (Perhaps this is because there is no
|
||||||
|
clear consensus on when a category is <quote>too big</quote>,
|
||||||
|
nor whether categories should lend themselves to browsing (and
|
||||||
|
thus what number of categories would be an ideal number), and
|
||||||
|
so forth.)</para>
|
||||||
|
|
||||||
|
<para>Here is the procedure:</para>
|
||||||
|
|
||||||
|
<procedure>
|
||||||
|
<step>
|
||||||
|
<para>Propose the new category on &a.ports;. You should
|
||||||
|
include a detailed rationale for the new category,
|
||||||
|
including why you feel the existing categories are not
|
||||||
|
sufficient, and the list of existing ports proposed to move.
|
||||||
|
(If there are new ports pending in
|
||||||
|
<application>GNATS</application> that would fit this
|
||||||
|
category, list them too.) If you are the maintainer and/or
|
||||||
|
submitter, respectively, mention that as it may help you
|
||||||
|
to make your case.</para>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<para>Participate in the discussion.</para>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<para>If it seems that there is support for your idea,
|
||||||
|
file a PR which includes both the rationale and the list
|
||||||
|
of existing ports that need to be moved. Ideally, this
|
||||||
|
PR should also include patches for the following:</para>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
<listitem>
|
||||||
|
<para><filename>Makefile</filename>s for the
|
||||||
|
new ports once they are repocopied</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para><filename>Makefile</filename> for the
|
||||||
|
new category</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para><filename>Makefile</filename> for the
|
||||||
|
old ports' categories</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para><filename>Makefile</filename>s for ports
|
||||||
|
that depend on the old ports</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>(for extra credit, you can include the other
|
||||||
|
files that have to changes, as per the procedure
|
||||||
|
in the Committer's Guide.)</para>
|
||||||
|
</listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<para>Since it affects the ports infrastructure and involves
|
||||||
|
not only performing repo-copies but also possibly running
|
||||||
|
regression tests on the build cluster, the PR should be
|
||||||
|
assigned to the &a.portmgr;.</para>
|
||||||
|
</step>
|
||||||
|
|
||||||
|
<step>
|
||||||
|
<para>If that PR is approved, a committer will need to follow
|
||||||
|
the rest of the procedure that is
|
||||||
|
<ulink url="&url.articles.committers-guide;/#ports">
|
||||||
|
outlined in the Committer's Guide</ulink>.</para>
|
||||||
|
</step>
|
||||||
|
</procedure>
|
||||||
|
|
||||||
|
<para>Proposing a new virtual category should be similar to
|
||||||
|
the above but much less involved, since no ports will
|
||||||
|
actually have to move. In this case, the only patches to
|
||||||
|
include in the PR would be those to add the new category to the
|
||||||
|
<makevar>CATEGORIES</makevar>s of the affected ports.</para>
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2 id="proposing-reorg">
|
||||||
|
<title>Proposing reorganizing all the categories</title>
|
||||||
|
|
||||||
|
<para>Occasionally someone proposes reorganizing the categories
|
||||||
|
with either a 2-level structure, or some other kind of keyword
|
||||||
|
structure. To date, nothing has come of any of these proposals
|
||||||
|
because, while they are very easy to make, the effort involved to
|
||||||
|
retrofit the entire existing ports collection with any kind of
|
||||||
|
reorganization is daunting to say the very least. Please read
|
||||||
|
the history of these proposals in the mailing list archives before
|
||||||
|
you post this idea; furthermore, you should be prepared to be
|
||||||
|
challenged to offer a working prototype.</para>
|
||||||
|
</sect2>
|
||||||
</sect1>
|
</sect1>
|
||||||
|
|
||||||
<sect1 id="makefile-distfiles">
|
<sect1 id="makefile-distfiles">
|
||||||
|
|
Loading…
Reference in a new issue