1 |
>>>>> On Mon, 22 Sep 2014, hasufell wrote: |
2 |
|
3 |
> Ulrich Mueller: |
4 |
>> | • atomic commits (one logical change) |
5 |
>> |
6 |
>> A version bump plus cleaning up older ebuilds will be considered |
7 |
>> one logical change, I suppose? |
8 |
|
9 |
> I'd consider it two logical changes (e.g. imagine a user complaining |
10 |
> about ebuild removal... you cannot easily revert it if it's not a |
11 |
> separate commit). But I don't have a strong opinion on that and I'm |
12 |
> not sure if we can enforce commit rules in such fine-grained |
13 |
> details, can we? |
14 |
|
15 |
> Do you think this should be added explicitly? |
16 |
|
17 |
It is a very common example that should be mentioned. |
18 |
|
19 |
>> | • for commits that affect only a single package, prepend |
20 |
>> | "CATEGORY/PN: " to the first line |
21 |
>> |
22 |
>> In some cases of long package names, this may be in conflict with |
23 |
>> the first item. |
24 |
>> "dev-python/rax-default-network-flags-python-novaclient-ext: " as a |
25 |
>> prefix doesn't leave much space for an explanation. ;) |
26 |
|
27 |
> I'd say that's rare enough to warrant exceptions in that case. Or |
28 |
> are you suggesting to drop CATEGORY/PN completely? I mean... it's |
29 |
> not strictly necessary, since you can just look at the files that |
30 |
> have been touched and run git log on an ebuild directory, but I |
31 |
> think it will still make using the history easier, especially since |
32 |
> mass-commits will not have CATEGORY/PN and can very easily be |
33 |
> identified. It's also common practice in various overlays. |
34 |
|
35 |
> Do you want me to add this exceptional case as a valid reason to |
36 |
> have more than 75 chars in the first line? |
37 |
|
38 |
Everything else, like abbreviating PN, or moving it to third or later |
39 |
line, doesn't seem reasonable. So, I'd go for exceptions to the 75 |
40 |
char rule. |
41 |
|
42 |
>> | • for commits that affect only licenses directory, prepend |
43 |
>> | "licenses: " to the first line |
44 |
>> |
45 |
>> Same for commits that affect licenses and profiles? |
46 |
|
47 |
> You are probably referring to license_groups. |
48 |
|
49 |
Right. |
50 |
|
51 |
> I'd say it matters more what the intention is and not so much what |
52 |
> directories in particular were touched. If you want to add a new |
53 |
> license and have to edit profiles/license_groups, I'd still just |
54 |
> prepend "licenses: ". |
55 |
|
56 |
> Maybe I should add this as a general idea to the commit guideline. |
57 |
> I think that's better than specing the whole through which will |
58 |
> probably just confuse people, no? |
59 |
|
60 |
Sounds good. Just say that the summary should be prepended by an |
61 |
indicator what part of the tree is (mainly) affected, followed by some |
62 |
examples that need not cover all corner cases. |
63 |
|
64 |
>> All in all, this looks sane to me. Is it planned to enforce this |
65 |
>> policy by repoman? |
66 |
|
67 |
> Good question. I'm not sure if it's a good idea though. It might get |
68 |
> in our way for corner cases and whatnot. Maybe as a polite warning |
69 |
> it would be ok. |
70 |
|
71 |
Yes, I meant adding a warning, to make devs aware that there may be a |
72 |
problem. A not quite perfect commit message is no real breakage, so it |
73 |
doesn't merit a fatal error. |
74 |
|
75 |
Ulrich |