Problem/Motivation

Consider the following message on a project page.

screenshot

There are a couple of issues about this.

First, it is simply wrong because New Maintainer did not post that project. He is just an owner of the project node. I guess it's implemented this way to give proper node permissions to new maintainer. Sometimes it's a bit funny. The New maintainer may have two-years account and it confuses a lot how he has managed to post a project on drupal.org a decade ago.

Second issue (more important) is giving proper credits to the original project author when transferring a project to a new maintainer. An original project author may have spent years working on that project and we should respect that work.

Current project maintainers are already listed in the right sidebar and "Posted by" message should display the name of the user who has really posted that project.

Proposed resolution

Show original project author in "Posted by" message.
I suppose this could be done by adding a new field to project node editable only by d.o. admins. The original author reference can be fetched from the first node revision.

CommentFileSizeAuthor
do-posted-by.png9.28 KBchi

Issue fork drupalorg-3099925

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

Chi created an issue. See original summary.

chi’s picture

Issue summary: View changes
chi’s picture

Issue summary: View changes
chi’s picture

Issue summary: View changes
drumm’s picture

I’d also consider removing the whole “By …” line for projects, and relying on the Maintainers block.

chi’s picture

I’d also consider removing the whole “By …” line for projects, and relying on the Maintainers block.

Displaying posted date still makes sense. Also the name of the original author needs to appear somewhere.

ivnish’s picture

+

shelane’s picture

Since the line looks like

By projectowner on 14 September 2015, updated 29 June 2021

But it’s quite possible that all of the updates have come from another maintainer since the project owner hasn’t worked on the project for some time, maybe it can look like:

By originalauthor on 14 September 2015, updated by editor 29 June 2021

crawleyhost made their first commit to this issue’s fork.

avpaderno’s picture

I think the "issue" is that a single line is trying to give three different pieces of information.

  • When the project page has been created
  • When the project page has been last updated
  • Who is the current project owner

A line like By Drupal on 28 September 2003, updated 17 December 2021 would make me think that Drupal user created the project page on September, 2003 and last updated it on December, 2021. I know that Drupal is the project owner, but probably most users won't understand that.

I would rather replace that line by two lines that say:

  • First line
    • When the project page has been created and by which user
    • When the project page has been last updated and by which user
  • Second line
    • Who is the current project owner

  • drumm committed 52d45a8 on 7.x-3.x authored by crawleyhost
    Issue #3099925 by crawleyhost, drumm, Chi, shelane, apaderno: Display...
drumm’s picture

Status: Active » Fixed

Stuck to keeping this simple, just swapping the current author for the original author. As mentioned, the current project author is also a maintainer, so they are shown in the sidebar. The last revision author seems like too much information, that doesn’t really help with evaluating a project.

This will be deployed later today or tomorrow.

  • drumm committed 7216e65 on 7.x-3.x
    Issue #3099925 by drumm, crawleyhost, Chi, shelane, apaderno: Correct...
chi’s picture

@drumm, I am not sure if this is related, but can you look at this project.
https://www.drupal.org/project/plugin

It wasn't created by Anonymous.

avpaderno’s picture

@Chi The user who created the project deleted the account. In the history page, the first entry is 1 Dec 2014 at 18:25 CET by Anonymous (not verified).

chi’s picture

@apaderno, I am confident that the project was initially created by me. At any case it worth to remove the link for anonymous profile.

avpaderno’s picture

Yes, the link to the user profile should not be output, if the logged-in user doesn't have the permission to see it, as in the case for the anonymous user account or blocked accounts. (Nobody can access /user/0.)

  • drumm committed c679846 on 7.x-3.x
    Issue #3099925 by drumm, crawleyhost, Chi, apaderno, shelane: Do not...
drumm’s picture

Ok, this behavior is now reverted if the first revision author is anonymous.

shelane’s picture

These changes though still imply that the original owner made the changes. The project may have been transferred, but the new owner isn't shown as having made the edits. Or a new maintainer was added and is really the one doing all of the work, but the original owner doesn't want to let it go. To the casual viewer, it's the original owner that is making the page edits.

chi’s picture

but the new owner isn't shown as having made the edits

The current maintainers are listed in the "Maintainers" block on the right sidebar.

chi’s picture

We might have a second line.
Something like "Last updated by Current mantainer on [date]"

tr’s picture

These changes though still imply that the original owner made the changes. The project may have been transferred, but the new owner isn't shown as having made the edits. Or a new maintainer was added and is really the one doing all of the work, but the original owner doesn't want to let it go. To the casual viewer, it's the original owner that is making the page edits.

Yes, I agree completely. I think this change was an improvement. And there is still some work to do. It would be great to see a link to the specific user who last edited the project, because that's one way to acknowledge the people who are currently doing the work as opposed to the person who created the page 15 years ago.

The current maintainers are listed in the "Maintainers" block on the right sidebar.

Yeah but that has the same problem - all the maintainers are shown, and the original maintainer (even if not active for many years) will be the first one listed. There is no indication of who actually modified the project page recently or who is currently responsible for maintaining the project.

The information that we recently lost and that is missing is still "Who is actively working on this project". You can't tell this from the Maintainers block, and you can't really tell this from the Commit log - maybe if you're a developer you can drill down into Gitlab and figure out who has been making the commits recently, but for the average person evaluating a project, that information is no longer on the project page or easily accessible.

On some of my projects I refer to the "maintainer emeritus" who is the original founder of the project but is no longer participating in the maintenance or development, as a way to confer credit and also to clarify that that person is not the one currently doing the work. I think it's a useful notion to separate the "creator" of the project from the "maintainer" of the problem. Especially these days, now that Drupal is mature and many of the original creators are moving on - we need to do some succession planning and providing credit to both the project creator AND the current maintainers is part of this.

cmlara’s picture

This might need to be a new issue but I'll file it here first since its related to the discussion above:

It is my understanding that per Becoming owner, maintainer, or co-maintainer of a project the owner of a project needs to be contacted.

Which maintainer is the owner no longer appears to be available. This could be a maintainer block change or a byline change. No real preference from me on where we do it, just that it I believe per Drupal policies this is information that is necessary and should be clearly available.

Example: https://www.drupal.org/project/s3fs who is the project owner?
Did you choose jansete? I'm a co-maintainer and I had to go back to the wayback machine to be sure my memory was correct that it wasn't Manuel Garcia.

chi’s picture

and the original maintainer (even if not active for many years) will be the first one listed

@tr, the original maintainer is not shown in that list at all.
Example: https://www.drupal.org/project/masquerade

chi’s picture

The information that we recently lost and that is missing is still "Who is actively working on this project".

Agree, but that's a different issue #3006207: Maintainers block on projects should show maintainers of project, not committers .

chi’s picture

I'm a co-maintainer and I had to go back to the wayback machine to be sure my memory was correct that it wasn't Manuel Garcia.

If by "wayback machine" you mean revisions page then it's not reliable way to find the project owner because the author of the most recent revision may have already left the project.

All current maintainers are listed in the right sidebar block but not all of them have equal permissions.

The list of maintainers with permissions is only availble in JSON format and I unfortunetly it's not linked anywhere on project page.
https://www.drupal.org/project/s3fs/maintainers.json

tr’s picture

@tr, the original maintainer is not shown in that list at all.

@Chi: Maybe for your use case, but in general the original maintainer has "Administer maintainers" permission for life, even if other co-maintainers come along.

Here's my example: https://www.drupal.org/project/typed_data
In this case, the original maintainer created the project and maintained it for two years. Since then, I have maintained it and done all the work for the past FOUR years. I have significantly more commits and have contributed more lines of code than the original maintainer ever did.

But currently it appears that the original maintainer is the main contributor.

tr’s picture

The information that we recently lost and that is missing is still "Who is actively working on this project".

Agree, but that's a different issue #3006207: Maintainers block on projects should show maintainers of project, not committers .

Well, that's the issue that BROKE everything, because it stopped showing the "committers" block which shows all the recent commits and who made them. Instead, it shows the "maintainers" block, which is just people who have permissions on the project, but are not necessarily the people doing the work.

chi’s picture

But currently it appears that the original maintainer is the main contributor.

Techically, he is still a maintainer not "original" maintainer. And that block is intended to show maintainers not contributers. Currently the project page does show contributions and that's the issue.

in general the original maintainer has "Administer maintainers" permission for life

Mainly because having the project ownership was the only way to keep your name on the project page. That's actually one of the problems that this issue has potentially solved or mitigated.

chi’s picture

it stopped showing the "committers" block which shows all the recent commits

To clarify, even before #3006207: Maintainers block on projects should show maintainers of project, not committers was resolved the commiters block actually only showed commiters with special permissions on the project. Developers who contributed to a project by submitting patches and merge requests were not listed there even though they were properly attributed in git commits.

cmlara’s picture

All current maintainers are listed in the right sidebar block but not all of them have equal permissions.

The list of maintainers with permissions is only availble in JSON format

The important role is owner for the procedures noted above. There is no owner permission so even using the mainatiners.json directly isn't a solution.

The only place I can maybe obtain the owner is https://www.drupal.org/api-d7/node.json?&field_project_machine_name=s3fs and look for the Author field however arguably that value shouldn't be used anymore as that too implies that the current owner authored the module not the original author.

(and I'll admit again this could possibly belong in a new issue, or maybe in the maintainer block issue, just discussing it here first since this is the change that has removed access to that information)

tr’s picture

But currently it appears that the original maintainer is the main contributor.

Techically, he is still a maintainer not "original" maintainer. And that block is intended to show maintainers not contributers. Currently the project page does show contributions and that's the issue.

I have no idea what you're trying to say here. On that project, he is most definitely the "original" maintainer - he created the project, made the initial commits, maintained the issue queue for two years, did all the work for two years.

The problem is, what about all the time since he last contributed, in 2017? He is STILL shown as the project owner, and is still shown #1 in the list of maintainers, and there is most certainly NO information on the project page that shows that anyone else has contributed, let alone shows that others have contributed MORE than the original owner.

And this is not an unusual situation - I can show many projects where the original maintainer is long-gone and the projects are maintained entirely by other people. Yet there is no way to tell that on the project page anymore.

Again, I have no problem with showing the maintainers block - the problem I have is throwing away the contributors block, which serves an equally important function.

chi’s picture

The important role is owner for the procedures noted above.

That's become clear now. A person with permission "Administer maintainers" may not actually have permissions to transfer project ownership.

tr’s picture

in general the original maintainer has "Administer maintainers" permission for life

Mainly because having the project ownership was the only way to keep your name on the project page. That's actually one of the problems that this issue has potentially solved or mitigated.

This issue has most certainly NOT solved or mitigated that - it's made things worse if anything. It's made things worse because now the person who is actively maintaining the project doesn't get their name on the project page and only shows up somewhere down the list of "maintainers", most of whom haven't contributed ANYTHING in ages.

The original maintainer has "Administer maintainers" permission for life because the only way to remove that permission is to take over the project entirely. If the original maintainer is absent, that means completely eliminating credit for that original maintainer and transferring it to a new maintainer.

More commonly, if the original maintainer is just not participating, then co-maintainers get added but the original maintainer does not get removed. Hence the situation I pointed out in #30 where the original maintainer still gets all the credit but hasn't done any of the work for four years.

tr’s picture

And let me repeat my position so it's clear: The original maintainer should get prominent mention as the owner of the project. That has been fixed by this issue. But at the expense of the people currently doing the work, since there is no longer any information on the project page to indicate who is doing the work. So one step forward, one step backwards. And dropping the "committers" block was another step backwards for people currently doing the work.

Right now there are many projects where I have been doing all the work for many years but there is now no way of seeing that. That is unacceptable.

And major contributors who don't have any maintainer permissions don't show up at all anymore, so they are being disrespected as well.

chi’s picture

Re #36. Makes sense.
I've created a new issues that covers that as well.
#3266262: Redesign the project page

crawleyhost’s picture

Assigned: Unassigned » crawleyhost
avpaderno’s picture

To me, a line like Created by Drupal on 28 September 2003, updated 17 December 2021 doesn't imply the last update has been done from the Drupal user. If that is ambiguous because the comma, it should be sufficient to use a period.

Created by Drupal on 28 September 2003. Updated 17 December 2021

That is merely about editing the project node. To recognize the active maintainers/co-maintainers isn't sufficient to show they edited the project page. They would normally commit code, create a new branch, or create a new release; that is what shows they are active (except in the case a user has just the permission to edit a project node.)

tr’s picture

To me, a line like Created by Drupal on 28 September 2003, updated 17 December 2021 doesn't imply the last update has been done from the Drupal user

To me, it doesn't imply anything else but that Drupal user was responsible, even with the comma. After all, no-one else is mentioned.

To recognize the active maintainers/co-maintainers isn't sufficient to show they edited the project page.

I completely agree, but it's a start, and it's better than not showing who is actually editing the project page.

commit code, create a new branch, or create a new release; that is what shows they are active

Yes, and that commit information is exactly what has been removed from the project page.

@crawleyhost: Are you actually working on this?

drumm’s picture

This issue is marked fixed and there is already a followup issue. No further work should happen here.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.