1 |
All, |
2 |
|
3 |
As decided by the Council in its last meeting at the beginning of this |
4 |
month, ChangeLogs will not be generated from VCS commit messages, |
5 |
because the Council wants to keep the ability to edit generated |
6 |
ChangeLog messages [1]. |
7 |
|
8 |
As a result, the Council took this up with the Portage team, to make |
9 |
repoman update the ChangeLog file upon `repoman commit'. |
10 |
|
11 |
Because some of the reasons put forward for autogenerating ChangeLogs |
12 |
was the actual speed of making a commit, repoman does not call |
13 |
echangelog, but instead uses its information about the current state of |
14 |
the VCS directory it already collected to do its QA checks to write a |
15 |
ChangeLog entry directly from Python (in which repoman is written). |
16 |
|
17 |
To facilitate those developers who have echangelog, or their own scripts |
18 |
that do the same, hardwired into their systems, repoman commit will by |
19 |
default *NOT* update the ChangeLog if it is already modified. This |
20 |
allows to run echangelog followed by repoman commit, without getting a |
21 |
double ChangeLog entry. |
22 |
|
23 |
However, this also allows to do all kinds of other actions to the |
24 |
ChangeLog file, without actually adding an entry for the current change |
25 |
being committed, as we've already seen in practice. |
26 |
The Council would like to remind developers that it is still a |
27 |
requirement that all actions are documented in the ChangeLog and that it |
28 |
is hence the responsibility of the committing developer to make sure |
29 |
this requirement is met. |
30 |
|
31 |
Repoman in the most recent Portage versions in the tree, has an |
32 |
--echangelog flag, that takes the argument `y', `n' or `force'. The |
33 |
default for this option can be set to yes or no, and is controlled by |
34 |
metadata/layout.conf. For the `gentoo' (gentoo-x86) repository, this is |
35 |
set to true, which results in the previously described behaviour. |
36 |
|
37 |
When the ChangeLog is modified, but a new entry should still be written |
38 |
by repoman, --echangelog=force will accomplish this. Obviously, passing |
39 |
--echangelog=n makes repoman skip writing a ChangeLog entry at all. |
40 |
|
41 |
|
42 |
The Council hopes to have informed all developers sufficiently through |
43 |
this message. |
44 |
|
45 |
|
46 |
[1] http://www.gentoo.org/proj/en/council/meeting-logs/20111011-summary.txt |
47 |
|
48 |
-- |
49 |
Fabian Groffen |
50 |
Gentoo on a different level |