quattor / maven-tools

Maven-based Build Tools
www.quattor.org
Apache License 2.0
3 stars 12 forks source link

Clarify contributors vs. developers use #16

Open jouvin opened 10 years ago

jouvin commented 10 years ago

In a few pom.xml that I looked at recently, I saw that people who contributed to a Quattor component tended to add themselves as contributors. But it looks like we don't do anything with contributors (apart keeping track of them into the pom.xml file). Sometimes, someone gets added as a developer which is added in the file header (after the licence) for most components. Do we really want a difference? Should we document some guidelines about whether you are added as one or the other? Should credit to contributors appear somewhere?

jrha commented 10 years ago

It seems rather pointless to distinguish between the two, maintainer is clearly a special role, but developer and contributor are the same in my mind.

ned21 commented 10 years ago

Agreed.

jrha commented 10 years ago

So we have agreed to stop using "contributor", we should new issues against repos to move them to be listed as "developers".

Where should be publish the guidance on this?

ned21 commented 10 years ago

In the "how to write/maintain a component" doc. Which should link from https://trac.lal.in2p3.fr/Quattor/wiki/Development/Code but I can't currently see it. :(

jouvin commented 10 years ago

@ned21: it works for me! What's your problem?

jouvin commented 10 years ago

Back on the original topic, I'd a look at what is expected by the quattor-build-maven plugin and I am not sure this is a good idea to deprecate contributors without changing the plugin: contributors are used if they have the role 'author' to build the author list (that is added at the top of almost all files). Other contributors are ignored. On the other hand, developers are used to build the "current developers" list.

I'd suggest cleaning up the plugin before pushing any change in the pom files. I see several alternatives:

  1. Remove contributors, add the role to developers (if supported by maven) and fix the plugin to look at authors in this place.
  2. remove developers, fix the plugin to use contributors without author role as current developers, authors being listed only as authors even if they are active developers.
  3. Fix the plugin to add developers and contributors without the author role to the current developers list.
  4. Enhance the plugin to produce a 3d cateogory, "past developers" that will be the contributors without the author role and add a ${past_developers}to files.

My preference is probably the last choice with a variant that would be to support author role both for developers and contributors (if allowed by Maven) and add all developers (authors or not) to the "current developers" list and all contributors to the "past developers" list.

ned21 commented 10 years ago

@jouvin - oh, it's labelled "CodingStyle". I think I was looking/scanning for a different name.

I dislike "past_developers" - it suggests someone has to decide whether they are being active and then get moved somewhere else when they are no longer active. I think we want to model two distinct concepts:

  1. Everyone who has ever contributed to this code base. That might include non-code patches like documentation but I am fine with those people being labelled "developer" or "contributor" or "author".
  2. The person or organisation who are currently actively maintaining this code. Almost certainly a subset of (1) since the mere act of updating the pom file with your name makes you a contributor/developer/author.

I haven't looked at the maven plugin to see what it currently supports but in general, the simpler the better I think.

jouvin commented 10 years ago

I've had a look: there is no problem to define the author role attached to developers too.

I'm fine with your proposal: keep things simple. After thinking again, I'd suggest what is in fact the easiest in terms of editing required: change only the plugin, keep the source files as they are. The changes that I suggest are:

  1. Treat developers and contributors interchangeably: just merge their contents. Both for developers and authors.
  2. Replace the text "Current developers" that is put in the large files by "Contributors" and add everybody, including authors.
  3. In authors, keep the limited list of people that wrote the first version or did a major architecture evolution (as an example, I don't consider myself as a ncm-cdispd author despite the total rewrite I did as I didn't change the architecture). For the record, "Authors" is just a list of name, without emails. If you don't want to see "Authors" appearing in a module, it is enough to remove all author roles (we may have to check that the plugin doesn't insert an empty "Author:" line but this should be easy to fix).
jrha commented 10 years ago

Sounds good to me.

jrha commented 10 years ago

Bumping to 14.10, this won't get fixed this week.

jrha commented 9 years ago

Bumped to 14.12 at workshop.

jrha commented 9 years ago

So this is clarified, now it just needs to be implemented.

jouvin commented 9 years ago

I thought I'll be able to work on it for this release but this will have to be the next one...

jrha commented 9 years ago

No worries, it's not really urgent, just untidy

jouvin commented 9 years ago

I'm afraid that this will be again for next release... Would be good to do it but really low priority for me...

jrha commented 7 years ago

@jouvin does the milestone mean that this is now implemented?

jouvin commented 7 years ago

Sorry, I probably did something wrong setting the milestone... No intent to work on this in the short term...