sphinx-contrib / sphinxcontrib-versioning

Sphinx extension that allows building versioned docs for self-hosting.
https://sphinxcontrib-versioning.readthedocs.io/en/latest/
MIT License
127 stars 80 forks source link

Project orphaned? #59

Closed epruesse closed 4 years ago

epruesse commented 5 years ago

With the last commit to master in 2016, it looks like this project is no longer maintained by @Robpol86.

ping @leokoppel @RasaHQ @MXWXZ @sizmailov @HTenkanen @carlodri @emerali @nocarryr @joshuaavalon

HTenkanen commented 5 years ago

I have sphinxcontrib-versioning in use on my course site: https://autogis.github.io

You can take a look of this fork: https://github.com/HTenkanen/sphinxcontrib-versioning

Hopefully that helps.

Cheers, Henrikki

odoublewen commented 5 years ago

Thanks @epruesse and @HTenkanen

I've remarked elsewhere that @leokoppel's fork works well with recent versions of sphinx.

It's too bad GitHub doesn't have any process or guidelines for dealing with orphaned open source projects... a particular problem for repos with a "bus factor of one"*. All we really need is a way to coalesce around a single fork, and elevate it from someone's personal repo to an organization with more than 1 maintainer. I don't know how we'd handle pypi... my guess is, without the cooperation of @Robpol86, we would have to give the new project a new name.

* As in "hit by a bus" -- though not suggesting @Robpol86 has been hit by a bus... he'd had commits to other repos this in Jan 2019... but he's clearly not paying attention to this one.

nocarryr commented 5 years ago

@epruesse I feel your pain. The number of forks with continued work (and PR merges from this repo) shows that there's a need for this to move forward.

I've had a few ideas for improvements as I'm sure many others have, but without any movement on existing PR's, it seems less worthwhile to pursue (without the ability to give back to the community).

I can't say I'd like to take over (at least not as the sole owner), but I do like @odoublewen 's organization idea.

As far as PyPI goes, PEP 541 provides some guidance:

sizmailov commented 5 years ago

+1 to organization idea.

While I'm able to contribute, the maintenance requires another level of project understanding. I don't think I'll get to that point.

@epruesse thanks for pulling it out! I believe I've implemented a feature in 90%, but without active project there was no right place to ask for help and I gave up.

odoublewen commented 5 years ago

@nocarryr -- nice find. Seems like this project would qualify as abandoned (provided that PyPI tries and fails to contact the owner.)

Seems like sphinx-contrib would be the obvious organization to house the resurrected project (whether under the old or a new name).

Anyone from @sphinx-contrib care to comment?

epruesse commented 5 years ago

It might be simplest to just change the name. The license it MIT, so we should be fine to to so. Considering the many quick responses here, the lot of us probably have the capacity to at least get the work already done into a new package.

nocarryr commented 5 years ago

@odoublewen I agree, this really should be under sphinx-contrib

epruesse commented 5 years ago

So do we wait for @sphinx-contrib to respond or create an org specifically for this package?

nocarryr commented 5 years ago

I would think we should give a day or so for a response from @Robpol86

In the meantime though, we could start to organize and sync our forks to a single master

epruesse commented 5 years ago

@sphinx-doc (since I don't think org's can be @-mentioned, ping @birkenfeld @shimizukawa @TimKam tk0miya) - do you have suggestions for us here?

nocarryr commented 5 years ago

Also @tk0miya

nocarryr commented 5 years ago

@stephenfin @dhellmann @chintal

epruesse commented 5 years ago

@nocarryr Do we use a new master so that there can be merge commits, or do we just use yours? I'm tempted to just spawn a temporary org, fork the repo and invite the lot of you. Just so that we don't loose momentum here.

odoublewen commented 5 years ago

I created a fork that has master from @HTenkanen and also @leokoppel

Here's the diff

Happy to assign the repo to any one or any org if it's useful.

TimKam commented 5 years ago

@epruesse Please be more patient and do not spam too many people. I think it does not make sense to publish a new package on pypi before you are not absolutely sure that the maintainer cannot be persuaded to hand over the repo and package. We will gladly accept this repo at https://github.com/sphinx-contrib/. @Robpol86 seems to be still active on GitHub from time to time, so please wait for a response or write them an email. In the meantime, you can (for example) use a fork the repo and point your requirements file to the location of the adjusted fork.

epruesse commented 5 years ago

@TimKam & everyone else pinged: I apologize for being a little overzealous at pinging everyone who might have a stake or some comment to make and spamming you all.

To those who make sphinx-doc possible: Thank you for providing all of us with such a great tool and for all the time you invested and continue to dedicate!

The future of sphinxcontrib-versioning should most definitely be decided by @Robpol86 and he needs to be given at least a few weeks to respond as his day job allows so that he can make his wishes known. Any action re PyPi or moving this repo would indeed be rash. Should he agree, relocating the project to https://github.com/sphinx-contrib does appear to be a sensible choice.

In the mean time, those of us interested can perhaps continue the conversation at sphinxcontrib-versioning-ng/sphinxcontrib-versioning#1. The org and fork are meant to be a temporary, shared location serving only to consolidate the various forks and PRs while the initial enthusiasm lasts. I will delete it once @Robpol86 can get back to us.

It would be great if we could come up with a version that works with sphinx 1.8.* and combines the efforts already made towards improving sphinxcontrib-versioning.

@Robpol86 I hope this finds you in good health! How would you prefer your project to continue?

Robpol86 commented 5 years ago

Hey everyone. Sorry for the silence these past couple of years. I've unfortunately not been able to maintain my OSS projects. I do consider this project orphaned since I no longer plan to use it in any of my other personal projects (I plan on migrating my websites off of sphinxcontrib-versioning once I have spare time in the future).

I'm definitely open to transferring ownership of sphinxcontrib-versioning on PyPI to new maintainers. Having it in the sphinx-contrib GitHub org would be great!

Let me know what I should do next regarding PyPI. I'd like to transfer ownership to maintainers of sphinx-contrib if it indeed is transferred to them (assuming that's how other sphinx-contrib projects are maintained in PyPI).

Sorry about the broken tests, I should've pinned all of my dependencies instead of just a handful during testing :P

MXWXZ commented 5 years ago

@epruesse This project is a great expansion for sphinx-doc and I dont want it be abandoned. Since @Robpol86 dont have time to maintain this repo, how about add some collaborators (github & PYPI both support). I think the current features are enough for us, what we need is just some bug fix (this can be easily fixed and will not put much pressure on the community). So the collaborators have the access to push commit and upload a release to PYPI after a pre-release in Github, the owner dont need to care much or transfer the ownership. I think this way can be better. Any other suggestions? XD

TimKam commented 5 years ago

@Robpol86 thanks for the quick follow-up on this! Can you invite me as a maintainer of this project (ideally on GitHub and pypi). Then I'll move the project over to https://github.com/sphinx-contrib :-)

Robpol86 commented 5 years ago

@TimKam what's your PyPI username? Can't seem to find you: https://pypi.org/user/TimKam/

TimKam commented 5 years ago

@Robpol86 sorry, my PyPi user is: https://pypi.org/user/Timotheus.Kampik/

Robpol86 commented 5 years ago

@TimKam I've added you as maintainer in PyPI. I need to double check what secrets or other sensitive stuff I have on TravisCI and other API usages I have here before I add anyone as maintainer in GitHub. I've got a big deadline coming at work early March so I my availability here will be very spotty until then. Too burned out to review stuff now. Apologies for the delay.

TimKam commented 5 years ago

@Robpol86 thanks! No worries. I will set myself a reminder to ping you once again in mid-March in case I do not have maintainer permissions then :-)

Peque commented 5 years ago

@Robpol86 You may consider transferring the project yourself, without adding anybody as maintainer. Transferring is trivial: Project Settings --> "Danger zone" --> Transfer project. Only for that @TimKam would need to give you permissions to create repositories in that organization. May be the easiest/fastest procedure and, specially, the one that requires less intervention from @Robpol86.

Peque commented 5 years ago

@Robpol86 @TimKam Friendly ping. :innocent:

epruesse commented 5 years ago

Any news?

chintal commented 5 years ago

I don't have a significant opinion on sphinx-versioning itself, but since I did get mentioned somehow, IMO sphinx-contrib is the org that should hold the project in this and any future cases that require maintainership. Those of us who have sphinx extensions which get less focus than they deserve (including mine), or are unable to do so for any reason, should ideally try to transfer ownership of the project to sphinx-contrib so that any users of the extension have an avenue to continue using it, atleast with maintenance updates as needed.

In practice, this would include, less critically, ownership of the github repository, and more importantly ownership of the package on PyPi and other package repositories that may be involved with that particular project (deb, yum, etc), if they do not already have active maintainers. A note to this effect somewhere around sphinx-contrib should help, with appropriate instructions. This would be a reasonable ask from authors and projects that (a) use the sphinxcontrib namespace and (b) make their work publicly accessible.

At the same time, those of us at sphinx-contrib who have some time to spare should try to help out with any orphaned or nearly orphaned sphinx-contrib packages - something I will admit I have not done in the past, and will try to do so in the future. This should atleast extend to help triage issues and pull requests.

odoublewen commented 5 years ago

@Peque's suggestion is good and requires only minimal effort from @TimKam and @Robpol86

@TimKam can you temporarily grant permission to @Robpol86 to create repos in your org? @Robpol86 can you transfer the project to https://github.com/sphinx-contrib ?

If another month goes by with no activity, I propose we just give the fork a new name and new home (sphinx-contrib/sphinxcontrib-versioning2?). Although it would be a shame to lose the issue & PR history, and it will create a small but lasting bit of confusion for the community.

TimKam commented 5 years ago

Sorry, I do not have maintainer permissions. I need maintainer access to this repo. Otherwise, I cannot do anything. @Robpol86 friendly ping. Should take you two minutes and then you're out of the loop :-)

odoublewen commented 5 years ago

@TimKam No, not this repo -- what @Peque and I are asking you to do is to grant @Robpol86 permission to create repos in sphinx-contrib -- I think you are a maintainer there.

I see now that 2 months ago you suggested that @Robpol86 could make you a maintainer here, and then you could transfer it.

Either way accomplishes the same thing and you're right that either way we're dependent on the cooperation of @Robpol86

TimKam commented 5 years ago

Exactly. I can create repos in sphinx-contrib but don't have the permissions to add new maintainers. That's why the "shortest path" is @Robpol86 adding me as maintainer when he finds the time :-)

dhellmann commented 5 years ago

I have admin rights in the sphinx-contrib org. If you can all clearly say exactly what you want, I'll try to do it this week.

tk0miya commented 5 years ago

FYI: I think the package maintainers role in PyPI is also important. It is needed to upload new package.

odoublewen commented 5 years ago

@dhellmann The details are all in the 33 comments of this thread, what's not clear about that ;) The tl;dr is that we are waiting for @Robpol86 cooperation to transfer this repo. Either he makes a sphinx-contrib maintainer an admin on this repo, or else a sphinx-contrib maintainer gives @Robpol86 "repository create" rights in sphinx-contrib. If you wanted to go ahead and do that, then @Robpol86 would have two options. It really doesn't matter which way it is done, but since @Robpol86's time is clearly limited, we could make it as easy as possible for him to pull the trigger.

@tk0miya - @Robpol86 reported above that he already gave @TimKam maintainer role on PyPI.

tk0miya commented 5 years ago

oh, sorry. I've overlooked it. Thanks.

dhellmann commented 5 years ago

OK, I have invited Robpol86 to be a member of sphinx-contrib. In the past that has been sufficient for someone to move a repo into the org and maintain admin access to that repo.

odoublewen commented 5 years ago

@TimKam -- Since @Robpol86 made you a maintainer of the PyPI project, another option (correct me if I'm wrong) is that you could just edit the project page so that upstream points to sphinx-contrib/sphinxcontrib-versioning (and make a fork in that location).

Yes, we'd lose the issue history, and the url change might confuse folks a little, so it's probably not the best plan. But I suggest if nothing has happened by June 1, it's better than the indefinite waiting. And I don't think this would be going against the wishes of @Robpol86.

TimKam commented 5 years ago

@odoublewen Good point. I'll set myself a reminder for June 1 and do so if there are no objections by then.

Robpol86 commented 5 years ago

Sorry again everyone for my absence. I finished removing deploy keys and such from TravisCI/AppVeyor/Codecov. Looks like I was invited to the sphinx-contrib group. Let me try transferring this repo over to sphinx-contrib GitHub org.

Robpol86 commented 5 years ago

Ok looks like it's transferred.

Robpol86 commented 5 years ago

Let me know if there's anything else needed on my part. I don't plan on maintaining this project anymore since I don't have a personal nor business use for it, so I can't find much time to maintain it. Sorry about letting this project go for a few years, hopefully new owners will treat it better :)

epruesse commented 5 years ago

We all understand that life changes, no worries.

Thank you @Robpol86 for writing the extension in the first place!

grazius commented 5 years ago

@TimKam so now we can close this issue ? you are the official maintainer on git & pypi ?

grazius commented 5 years ago

What you plan to do with sphinx-versions contribs (an another fork) documentation: https://sphinx-versions.readthedocs.io/en/latest/settings.html#global-options pypi: https://pypi.org/project/sphinx-versions/

TimKam commented 5 years ago

While the repo is transferred now, nobody is maintaining it and I still don't have admin access. Is there anyone in this thread who can grant me admin access to the repo? Then I'll do my best to get the CI going again (CircleCI instead?), to merge the open PRs, and to release and update.

dhellmann commented 5 years ago

@TimKam I have made you an admin on this repository.

gravelpot commented 5 years ago

Hi, our team is getting started with a Sphinx project and would love to use this extension. Any update on the plans to get it under new maintainership?

vale981 commented 5 years ago

Bump!

odoublewen commented 5 years ago

Hi @TimKam -- Can you confirm that you have admin on this repo now? If you want help getting things moving, you could deputize me or someone else. I could help with PR reviews, possibly with getting CI set up. I (and others) would love to see an update pushed to PyPI, and I'm happy to help make this happen.

And we probably ought to close this issue as there are many participants, and the orphan issue has been resolved.

TimKam commented 5 years ago

Hi @odoublewen thanks for getting back at this. Yes, I have access rights, and yes, I did not have time to make the CI work. So any PRs are welcome. Please @mention me if anyone adds a PR that makes the CI work. Sorry for not being proactive.