public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2015-05-09 15:22 Ulrich Müller
  0 siblings, 0 replies; 18+ messages in thread
From: Ulrich Müller @ 2015-05-09 15:22 UTC (permalink / raw
  To: gentoo-commits

commit:     2a7992696a79c344de41c814a756d5f9f4836f8e
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sun May  3 16:53:26 2015 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sun May  3 16:53:26 2015 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=2a799269

Merge remarks about revision bumps from Developer Handbook.

This is taken from proj/en/devrel/handbook/hb-policy-ebuild.xml,
section "Ebuild policy", subsection "Versioning and revision bumps".

Permission to reuse the CC-BY-SA-1.0 work under CC-BY-SA-2.0
(or any later version) obtained from author plasmaroo per e-mail
on 2015-04-16.

 general-concepts/ebuild-revisions/text.xml | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index 9ddc39f..012745f 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -17,12 +17,16 @@ Ebuilds should have their <c>-rX</c> incremented whenever a change is made which
 will make a substantial difference to what gets installed by the package <d/> by
 substantial, we generally mean "something for which many users would want to
 upgrade". This is usually for bugfixes.
+For any such revision bump, the new ebuild should be based on the
+previous revision to ensure that fixes aren't dropped accidentally.
 </p>
 
 <p>
 Simple compile fixes do <b>not</b> warrant a revision bump; this is because they do
 not affect the installed package for users who already managed to compile it.
 Small documentation fixes are also usually not grounds for a new revision.
+In particular, this applies if the package has a substantial compilation
+time; developers should use their best judgement in these circumstances.
 </p>
 
 <important>


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2017-09-25  4:23 Göktürk Yüksek
  0 siblings, 0 replies; 18+ messages in thread
From: Göktürk Yüksek @ 2017-09-25  4:23 UTC (permalink / raw
  To: gentoo-commits

commit:     253075dc4fcb9cac1567caff2891e47fd76453f4
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Aug  6 12:25:23 2017 +0000
Commit:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
CommitDate: Mon Sep 25 04:14:52 2017 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=253075dc

general-concepts/ebuild-revisions: Provide examples for when to revbump or not

Provide a wider set of examples when to revbump or not.

 general-concepts/ebuild-revisions/text.xml | 51 ++++++++++++++++++++++++++----
 1 file changed, 44 insertions(+), 7 deletions(-)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index d18d333..c370d27 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -62,13 +62,50 @@ of thumb could be used as a guideline:
   </li>
 </ol>
 
-<p>
-Simple compile fixes do <b>not</b> warrant a revision bump; this is because they do
-not affect the installed package for users who already managed to compile it.
-Small documentation fixes are also usually not grounds for a new revision.
-In particular, this applies if the package has a substantial compilation
-time; developers should use their best judgement in these circumstances.
-</p>
+<p>Examples of changes that warrant a new revision are:</p>
+<ul>
+  <li>adding a patch to fix a runtime issue,</li>
+  <li>installing additional files that could be useful to the user,</li>
+  <li>adding a missing runtime dependency to one of the existing blocks,</li>
+  <li>
+    adding a missing build-time dependency that contributed to
+    a successfully yet incorrect build (e.g. missing some feature),
+  </li>
+  <li>
+    restricting a runtime dependency version, unless the <c>:=</c>
+    subslot operator is going to trigger a rebuild.
+  </li>
+</ul>
+
+<p>Examples of changes that can be done without a revision bump are:</p>
+<ul>
+  <li>
+    adding a patch to fix a build-time issue that prevented users from
+    building the package (since it does not affect users who already
+    managed to build it),
+  </li>
+  <li>adding a trivial documentation fix,</li>
+  <li>
+    installing an additional file of relatively little value (minor
+    documentation, editor syntax file, bash completion) compared
+    to the cost of rebuilding the package (especially if a new bump
+    is expected soon),
+  </li>
+  <li>
+    adding a missing build-time dependency that caused a build failure,
+  </li>
+  <li>
+    adding a new USE flag or removing an existing one (since change
+    in USE flags is going to trigger <c>--changed-use</c> rebuild),
+  </li>
+  <li>
+    a trivial stylistic / ebuild code change (as long as the new code
+    is equivalent to the old code),
+  </li>
+  <li>
+    a dependency change that is a result of a package move (slot move).
+  </li>
+</ul>
 
 </body>
 </chapter>


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2017-09-25  4:23 Göktürk Yüksek
  0 siblings, 0 replies; 18+ messages in thread
From: Göktürk Yüksek @ 2017-09-25  4:23 UTC (permalink / raw
  To: gentoo-commits

commit:     c487cdb2874911a5495f2f05dae89d4253fa260f
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Aug  6 11:45:35 2017 +0000
Commit:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
CommitDate: Mon Sep 25 04:10:26 2017 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=c487cdb2

general-concepts/ebuild-revisions: Clearly define the purpose of revisions

 general-concepts/ebuild-revisions/text.xml | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index f2d7234..b0c0d97 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -13,6 +13,20 @@ An ebuild with no explicit revision number has the implicit <c>-r0</c>
 revision.
 </p>
 
+<p>Ebuild revisions usually serve two purposes:</p>
+<ol>
+  <li>
+    keeping an older copy of an ebuild around when doing a potentially
+    breaking change, and
+  </li>
+
+  <li>
+    propagating the rebuild of a package when performing a meaningful
+    change that would otherwise go unnoticed by users who have installed
+    the current version already.
+  </li>
+</ol>
+
 <p>
 Ebuilds should have their <c>-rX</c> incremented whenever a change is made which
 will make a substantial difference to what gets installed by the package <d/> by


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2017-09-25  4:23 Göktürk Yüksek
  0 siblings, 0 replies; 18+ messages in thread
From: Göktürk Yüksek @ 2017-09-25  4:23 UTC (permalink / raw
  To: gentoo-commits

commit:     1025a862ea563b5ae0c2e42f36395c4d7b516f95
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Aug  6 12:14:34 2017 +0000
Commit:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
CommitDate: Mon Sep 25 04:10:53 2017 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=1025a862

general-concepts/ebuild-revisions: Provide a 3-step guide for when to revbump

 general-concepts/ebuild-revisions/text.xml | 49 +++++++++++++++++++-----------
 1 file changed, 32 insertions(+), 17 deletions(-)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index b0c0d97..d18d333 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -28,13 +28,39 @@ revision.
 </ol>
 
 <p>
-Ebuilds should have their <c>-rX</c> incremented whenever a change is made which
-will make a substantial difference to what gets installed by the package <d/> by
-substantial, we generally mean "something for which many users would want to
-upgrade". This is usually for bugfixes.
-For any such revision bump, the new ebuild should be based on the
-previous revision to ensure that fixes aren't dropped accidentally.
+Developers are encouraged to use common sense when determining
+whether to introduce a new <c>-rX</c> revision. The following rule
+of thumb could be used as a guideline:
 </p>
+<ol>
+  <li>
+    If the change can cause the package to be broken to the point
+    of requiring users to revert to the previous version (in the case
+    of packages marked stable, every non-trivial change is classified
+    as such), then a new revision should be introduced and the old one
+    kept. If the package has stable keywords, the new revision should
+    be dropped to <c>~arch</c> (see
+    <uri link="::keywording#Keywording on Upgrades"/>).
+    For any such revision bump, the new ebuild should be based
+    on the previous revision to ensure that fixes aren't dropped
+    accidentally.
+  </li>
+
+  <li>
+    If the change makes a substantial difference to the user who already
+    installed the package (fixes runtime issues, changes installed files,
+    etc.) and it would not be propagated using other means, then
+    the ebuild should be renamed to a new revision. If the package has
+    stable keywords, they should be moved to the new revision without
+    dropping. To commit the ebuild, <c>repoman commit
+    --straight-to-stable</c> option should be used.
+  </li>
+
+  <li>
+    Otherwise, the change can be done in place in the current revision
+    of the ebuild.
+  </li>
+</ol>
 
 <p>
 Simple compile fixes do <b>not</b> warrant a revision bump; this is because they do
@@ -44,17 +70,6 @@ In particular, this applies if the package has a substantial compilation
 time; developers should use their best judgement in these circumstances.
 </p>
 
-<important>
-For ebuilds marked stable on at least one arch, only trivial edits can be made
-without a bump (e.g. typo fixes in elog messages). Even simple changes may
-result in a breakage. <b>Modifying stable ebuilds should be avoided.</b>
-</important>
-
-<p>
-When doing a revision bump, the usual rules about dropping to <c>~arch</c> apply.
-See <uri link="::keywording#Keywording on Upgrades"/>.
-</p>
-
 </body>
 </chapter>
 </guide>


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2017-09-25  4:23 Göktürk Yüksek
  0 siblings, 0 replies; 18+ messages in thread
From: Göktürk Yüksek @ 2017-09-25  4:23 UTC (permalink / raw
  To: gentoo-commits

commit:     ed57d7479b904aa765841b03d92742be9d8276db
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Aug  6 11:38:41 2017 +0000
Commit:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
CommitDate: Mon Sep 25 04:09:47 2017 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=ed57d747

general-concepts/ebuild-revisions: by default -> when empty (more precise)

 general-concepts/ebuild-revisions/text.xml | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index 012745f..f2d7234 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -8,8 +8,9 @@
 Ebuilds may have a Gentoo revision number associated with them. This is a
 <c>-rX</c> suffix, where <c>X</c> is an integer <d/> see <uri
 link="::ebuild-writing/file-format#File Naming Rules"/>. This
-component must only be used for Gentoo changes, not upstream releases. By
-default, <c>-r0</c> is implied.
+component must only be used for Gentoo changes, not upstream releases.
+An ebuild with no explicit revision number has the implicit <c>-r0</c>
+revision.
 </p>
 
 <p>


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2021-07-03 16:21 Ulrich Müller
  0 siblings, 0 replies; 18+ messages in thread
From: Ulrich Müller @ 2021-07-03 16:21 UTC (permalink / raw
  To: gentoo-commits

commit:     cec523e3124cd7cc04d688c397262935875ae35a
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 23 07:25:15 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Jul  3 16:18:56 2021 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=cec523e3

general-concepts/ebuild-revisions: add 'updating USE flag defaults' in dep as revbump reason

Without revision bumping in cases where we change USE dep defaults in a
dependency, the package manager will refuse an upgrade because newer
versions of the dependency will not satisfy the requirements
in the package.

Closes: https://github.com/gentoo/devmanual/pull/232
Signed-off-by: Sam James <sam <AT> gentoo.org>
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 general-concepts/ebuild-revisions/text.xml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index 395cc7f..00e60c5 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -68,6 +68,7 @@ of thumb could be used as a guideline:
   <li>installing additional files that could be useful to the user,</li>
   <li>adding a missing runtime dependency to one of the existing blocks,</li>
   <li>adding a binding subslot operator (:=) to a dependency,</li>
+  <li>updating a dependency with default on/off USE flags,</li>
   <li>
     adding a missing build-time dependency that contributed to
     a successfully yet incorrect build (e.g. missing some feature),


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2021-07-03 16:21 Ulrich Müller
  0 siblings, 0 replies; 18+ messages in thread
From: Ulrich Müller @ 2021-07-03 16:21 UTC (permalink / raw
  To: gentoo-commits

commit:     f16a1ca58fc9761c0a7a65d82c115b3da651f3eb
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 23 07:23:24 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Jul  3 16:18:52 2021 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=f16a1ca5

general-concepts/ebuild-revisions: add 'subscribing with :=' as revbump reason

A revision bump is needed for a rebuild to occur when e.g. ABI is broken.

Without doing this, we're relying on Portage's preserve-libs feature which
does not have to be enabled and is not specified by PMS.

Signed-off-by: Sam James <sam <AT> gentoo.org>
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 general-concepts/ebuild-revisions/text.xml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index c370d27..395cc7f 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -67,6 +67,7 @@ of thumb could be used as a guideline:
   <li>adding a patch to fix a runtime issue,</li>
   <li>installing additional files that could be useful to the user,</li>
   <li>adding a missing runtime dependency to one of the existing blocks,</li>
+  <li>adding a binding subslot operator (:=) to a dependency,</li>
   <li>
     adding a missing build-time dependency that contributed to
     a successfully yet incorrect build (e.g. missing some feature),


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2021-09-24 12:00 Joonas Niilola
  0 siblings, 0 replies; 18+ messages in thread
From: Joonas Niilola @ 2021-09-24 12:00 UTC (permalink / raw
  To: gentoo-commits

commit:     cca1990a25e204e5c8dd6cbbad0f0436a26c3115
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  6 12:56:23 2021 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Fri Sep 24 11:59:38 2021 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=cca1990a

general-concepts/ebuild-revisions: clarify the automagic dep detection

 - the current example is very hard to realize what it means, I'm
   only guessing it means automagic dep detection? Let's update it to
   make it clearer?

Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 general-concepts/ebuild-revisions/text.xml | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index 89ed8ea..1bcd23f 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -69,10 +69,7 @@ of thumb could be used as a guideline:
   <li>adding a missing runtime dependency to one of the existing blocks,</li>
   <li>adding a binding subslot operator (:=) to a dependency,</li>
   <li>updating a dependency with default on/off USE flags,</li>
-  <li>
-    adding a missing build-time dependency that contributed to
-    a successfully yet incorrect build (e.g. missing some feature),
-  </li>
+  <li>fixing an automagic dependency detection from a build system,</li>
   <li>
     restricting a runtime dependency version, unless the <c>:=</c>
     subslot operator is going to trigger a rebuild.


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2021-09-24 12:00 Joonas Niilola
  0 siblings, 0 replies; 18+ messages in thread
From: Joonas Niilola @ 2021-09-24 12:00 UTC (permalink / raw
  To: gentoo-commits

commit:     dcde372b99383c87ffe2fed23061f9f42b61b101
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Tue Sep  7 08:12:55 2021 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Fri Sep 24 11:59:38 2021 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=dcde372b

general-concepts/ebuild-revisions: mention EAPI bump

Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 general-concepts/ebuild-revisions/text.xml | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index 1bcd23f..f5e8be8 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -72,7 +72,11 @@ of thumb could be used as a guideline:
   <li>fixing an automagic dependency detection from a build system,</li>
   <li>
     restricting a runtime dependency version, unless the <c>:=</c>
-    subslot operator is going to trigger a rebuild.
+    subslot operator is going to trigger a rebuild,
+  </li>
+  <li>
+    changing the EAPI (unless changes to the ebuild are trivial, and you can be
+    sure it won't break stable or reverse dependencies).
   </li>
 </ul>
 


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2021-09-24 12:00 Joonas Niilola
  0 siblings, 0 replies; 18+ messages in thread
From: Joonas Niilola @ 2021-09-24 12:00 UTC (permalink / raw
  To: gentoo-commits

commit:     22a7fb2ca3bc0897a80b27470da1f9b5f06dd874
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  6 12:48:05 2021 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Fri Sep 24 11:59:38 2021 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=22a7fb2c

general-concepts/ebuild-revisions: mention removing a virtual pkg

Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 general-concepts/ebuild-revisions/text.xml | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index 00e60c5..89ed8ea 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -105,7 +105,12 @@ of thumb could be used as a guideline:
     is equivalent to the old code),
   </li>
   <li>
-    a dependency change that is a result of a package move (slot move).
+    a dependency change that is a result of a package move (slot move),
+  </li>
+  <li>
+    a dependency change due to
+    <uri link="::ebuild-maintenance/removal/#removing-a-virtual-package">
+    removal of a virtual package.</uri>
   </li>
 </ul>
 


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2021-09-24 12:00 Joonas Niilola
  0 siblings, 0 replies; 18+ messages in thread
From: Joonas Niilola @ 2021-09-24 12:00 UTC (permalink / raw
  To: gentoo-commits

commit:     384ff6b951ddc1ecb29c241b54e96bc4c90bef39
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Tue Sep  7 08:15:01 2021 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Fri Sep 24 11:59:38 2021 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=384ff6b9

general-concepts/ebuild-revisions: mention pkgdev as alternative

Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
Closes: https://github.com/gentoo/devmanual/pull/248

 general-concepts/ebuild-revisions/text.xml | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index f5e8be8..55e1387 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -52,8 +52,9 @@ of thumb could be used as a guideline:
     etc.) and it would not be propagated using other means, then
     the ebuild should be renamed to a new revision. If the package has
     stable keywords, they should be moved to the new revision without
-    dropping. To commit the ebuild, <c>repoman commit
-    --straight-to-stable</c> option should be used.
+    dropping. To commit the ebuild, <c>repoman commit --straight-to-stable</c>
+    option should be used. (Alternatively, <c>pkgdev commit</c> or <c>git
+    commit</c> paired with <c>pkgcheck scan --commits</c>).
   </li>
 
   <li>


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2021-09-24 14:07 Ulrich Müller
  0 siblings, 0 replies; 18+ messages in thread
From: Ulrich Müller @ 2021-09-24 14:07 UTC (permalink / raw
  To: gentoo-commits

commit:     961b2033331b450c52b5835a995a7c6812497d36
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 24 14:05:23 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Fri Sep 24 14:05:23 2021 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=961b2033

general-concepts/ebuild-revisions: Fix link syntax

Fixes: 22a7fb2ca3bc0897a80b27470da1f9b5f06dd874
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 general-concepts/ebuild-revisions/text.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index 55e1387..755e0cf 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -111,8 +111,8 @@ of thumb could be used as a guideline:
   </li>
   <li>
     a dependency change due to
-    <uri link="::ebuild-maintenance/removal/#removing-a-virtual-package">
-    removal of a virtual package.</uri>
+    <uri link="::ebuild-maintenance/removal/#Removing a virtual package">
+    removal of a virtual package</uri>.
   </li>
 </ul>
 


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2022-11-10  7:17 Sam James
  0 siblings, 0 replies; 18+ messages in thread
From: Sam James @ 2022-11-10  7:17 UTC (permalink / raw
  To: gentoo-commits

commit:     ce68316d173482f9b82fb3255b1a657c08c80c56
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Nov  8 04:31:33 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Nov 10 07:17:03 2022 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=ce68316d

general-concepts/ebuild-revisions: note that build failures may be a missing rdepend

If, for example, a "qtcore" missing dependency results in a src_configure
failure and a bug is filed, that doesn't mean a revbump can be skipped,
as for others, if they had qtcore installed already, the package is
silently linked against it without it being recorded as a dependency.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 general-concepts/ebuild-revisions/text.xml | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index b2fa57f..ad394e8 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -89,7 +89,7 @@ of thumb could be used as a guideline:
     (e.g. <c>-Wformat</c> or <c>-Wimplicit-function-declaration</c> fixes);
     the package may have been miscompiled, or the change is substantial
     (if adding a huge patch to fix a problem, the chances of an unexpected
-    issue being introduced by it are larger).
+    issue being introduced by it are greater).
   </li>
   <li>adding a trivial documentation fix,</li>
   <li>
@@ -99,7 +99,8 @@ of thumb could be used as a guideline:
     is expected soon),
   </li>
   <li>
-    adding a missing build-time dependency that caused a build failure,
+    adding a missing build-time dependency that caused a build failure
+    (unless it is also a runtime dependency),
   </li>
   <li>
     adding a new USE flag or removing an existing one (since change


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2022-11-10  7:17 Sam James
  0 siblings, 0 replies; 18+ messages in thread
From: Sam James @ 2022-11-10  7:17 UTC (permalink / raw
  To: gentoo-commits

commit:     2b94b64306230dc3595150c5bba87ec0763d93a3
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Nov  8 04:31:16 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Nov 10 07:17:02 2022 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=2b94b643

general-concepts/ebuild-revisions: note which build-time fixes need a new revision

Signed-off-by: Sam James <sam <AT> gentoo.org>

 general-concepts/ebuild-revisions/text.xml | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index fc5ba7c..b2fa57f 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -85,7 +85,11 @@ of thumb could be used as a guideline:
   <li>
     adding a patch to fix a build-time issue that prevented users from
     building the package (since it does not affect users who already
-    managed to build it),
+    managed to build it) unless: it affected runtime behaviour in some way
+    (e.g. <c>-Wformat</c> or <c>-Wimplicit-function-declaration</c> fixes);
+    the package may have been miscompiled, or the change is substantial
+    (if adding a huge patch to fix a problem, the chances of an unexpected
+    issue being introduced by it are larger).
   </li>
   <li>adding a trivial documentation fix,</li>
   <li>


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2023-01-14 20:24 Sam James
  0 siblings, 0 replies; 18+ messages in thread
From: Sam James @ 2023-01-14 20:24 UTC (permalink / raw
  To: gentoo-commits

commit:     f5cec0886bed97956d047c73cb997f2aa2a15b5f
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 26 04:42:02 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan 14 20:04:05 2023 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=f5cec088

general-concepts/ebuild-revisions: clarify interaction with adding/removing USE flags

Note that when adding a USE flag where the functionality was previously on
(not off in build system), one must revbump
because a dep was unconditional that now became conditional.

Also, if removing a USE flag where the behaviour is now on, but was previously
always off (not on in build system), one must revbump also,
because people might have never set USE=foo (hence --changed-use wouldn't pick
it up) but their deps have now effectively changed.

Bug: https://github.com/pkgcore/pkgcheck/pull/435
Signed-off-by: Sam James <sam <AT> gentoo.org>

 general-concepts/ebuild-revisions/text.xml | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index ad394e8..e0c8b01 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -103,8 +103,14 @@ of thumb could be used as a guideline:
     (unless it is also a runtime dependency),
   </li>
   <li>
-    adding a new USE flag or removing an existing one (since change
-    in USE flags is going to trigger <c>--changed-use</c> rebuild),
+    adding a new USE flag if it controls a USE-dependency where the
+    functionality was hard-disabled in the build system before,
+  </li>
+  <li>
+    removing an existing USE flag if it controls a USE-dependency where the
+    functionality is now disabled entirely, rather than always being enabled
+    (since the change in USE flags is going to trigger a <c>--changed-use</c>
+    rebuild),
   </li>
   <li>
     a trivial stylistic / ebuild code change (as long as the new code


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2023-08-26  5:43 Ulrich Müller
  0 siblings, 0 replies; 18+ messages in thread
From: Ulrich Müller @ 2023-08-26  5:43 UTC (permalink / raw
  To: gentoo-commits

commit:     80a65cf5f16ebf75b7606fbdcdc4db5e3ea3e097
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 19 14:01:19 2023 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Aug 26 05:39:28 2023 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=80a65cf5

general-concepts/ebuild-revisions: License updates may require a revbump

See for example bug 912458, where removal of the unused CMake license
caused a blocker on users' systems.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 general-concepts/ebuild-revisions/text.xml | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index e0c8b01..b524a4b 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -74,6 +74,10 @@ of thumb could be used as a guideline:
     restricting a runtime dependency version, unless the <c>:=</c>
     subslot operator is going to trigger a rebuild,
   </li>
+  <li>
+    updating the license, if any of the affected licenses is either non-free or
+    is about to be removed,
+  </li>
   <li>
     changing the EAPI (unless changes to the ebuild are trivial, and you can be
     sure it won't break stable or reverse dependencies).


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2024-10-29 17:40 Ulrich Müller
  0 siblings, 0 replies; 18+ messages in thread
From: Ulrich Müller @ 2024-10-29 17:40 UTC (permalink / raw
  To: gentoo-commits

commit:     267ff220678b04b39acc3d32b6dfaea8c57d51ff
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 29 16:20:20 2024 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Tue Oct 29 16:36:18 2024 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=267ff220

general-concepts/ebuild-revisions: Almost always revbump when stable

Drop the paragraph after the example and make it a new list item with
updated wording.

Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 general-concepts/ebuild-revisions/text.xml | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index 72087f0..b657b68 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -29,23 +29,28 @@ revision.
 
 <p>
 Developers are encouraged to use common sense when determining
-whether to introduce a new <c>-rX</c> revision. The following rule
+whether to introduce a new <c>-rX</c> revision. The following rules
 of thumb could be used as a guideline:
 </p>
+
 <ol>
   <li>
     If the change can cause the package to be broken to the point
-    of requiring users to revert to the previous version (in the case
-    of packages marked stable, every non-trivial change is classified
-    as such), then a new revision should be introduced and the old one
-    kept. If the package has stable keywords, the new revision should
-    be dropped to <c>~arch</c> (see
-    <uri link="::keywording/#Keywording on upgrades"/>).
+    of requiring users to revert to the previous version, then a new
+    revision should be introduced and the old one kept.
     For any such revision bump, the new ebuild should be based
     on the previous revision to ensure that fixes aren't dropped
     accidentally.
   </li>
 
+  <li>
+    If the package has stable keywords, then a new revision should be
+    introduced for every non-trivial change, and its keywords should be dropped
+    to <c>~arch</c> (see <uri link="::keywording/#Keywording on upgrades"/>).
+    The general guideline here is conservatism and the need to minimize
+    the risk of accidental breakage for stable users.
+  </li>
+
   <li>
     If the change makes a substantial difference to the user who already
     installed the package (fixes runtime issues, changes installed files,
@@ -125,11 +130,6 @@ of thumb could be used as a guideline:
   </li>
 </ul>
 
-<p>
-Note that the examples above should still be balanced against the general
-principle of conservatism and need to minimize risk for stable users.
-</p>
-
 </body>
 </chapter>
 </guide>


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/
@ 2024-10-29 17:40 Ulrich Müller
  0 siblings, 0 replies; 18+ messages in thread
From: Ulrich Müller @ 2024-10-29 17:40 UTC (permalink / raw
  To: gentoo-commits

commit:     f32f4134963c6a157056b68b95503a40d265b0bc
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 14 00:01:45 2024 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Tue Oct 29 16:35:24 2024 +0000
URL:        https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=f32f4134

general-concepts/ebuild-revisions: mention balancing examples against stable

Explicitly say that even 'no revision bump' examples should be balanced
against whether a stable ebuild is being modified, as we want to minimize
any risk of regressions there.

i.e. It might be that a change would not need a revbump for an ~arch-only
ebuild, but if the ebuild is stable, the principle of being conservative
ofr stable would mean a revbump is warranted.

Signed-off-by: Sam James <sam <AT> gentoo.org>
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 general-concepts/ebuild-revisions/text.xml | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/general-concepts/ebuild-revisions/text.xml b/general-concepts/ebuild-revisions/text.xml
index 2c8531a..72087f0 100644
--- a/general-concepts/ebuild-revisions/text.xml
+++ b/general-concepts/ebuild-revisions/text.xml
@@ -125,6 +125,11 @@ of thumb could be used as a guideline:
   </li>
 </ul>
 
+<p>
+Note that the examples above should still be balanced against the general
+principle of conservatism and need to minimize risk for stable users.
+</p>
+
 </body>
 </chapter>
 </guide>


^ permalink raw reply related	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2024-10-29 17:40 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-11-10  7:17 [gentoo-commits] proj/devmanual:master commit in: general-concepts/ebuild-revisions/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2024-10-29 17:40 Ulrich Müller
2024-10-29 17:40 Ulrich Müller
2023-08-26  5:43 Ulrich Müller
2023-01-14 20:24 Sam James
2022-11-10  7:17 Sam James
2021-09-24 14:07 Ulrich Müller
2021-09-24 12:00 Joonas Niilola
2021-09-24 12:00 Joonas Niilola
2021-09-24 12:00 Joonas Niilola
2021-09-24 12:00 Joonas Niilola
2021-07-03 16:21 Ulrich Müller
2021-07-03 16:21 Ulrich Müller
2017-09-25  4:23 Göktürk Yüksek
2017-09-25  4:23 Göktürk Yüksek
2017-09-25  4:23 Göktürk Yüksek
2017-09-25  4:23 Göktürk Yüksek
2015-05-09 15:22 Ulrich Müller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox