[Migration] PDF
wombelix opened this issue · 7 comments
Hi,
I wanna help migrating the PDF Plugin (https://github.com/getpelican/pelican-plugins/tree/master/pdf) to the new Organization.
All Steps described in the Guide on https://blog.getpelican.com/namespace-plugin-migration.html were already completed.
There is a 'migration' branch in my local repository which is based on the legacy code, the CookieCutter Template was applied and Bugfixes as well adjustments - mostly related to Python 3 compatibility - performed.
The only thing so far i wasn't 100% sure about and could use some help:
Who should be the Author in pyproject.toml?
Right now i added all earlier Contributor: Kyle Mahan, Renato Cunha, dpetzel, Justin Mayer, Lucas Cimon
Is that correct? Should i add myself to the List as well?
I'm looking for a Maintainer (@davidlesieur @kdeldycke @kernc ) who can create the new Repository and invite me as Collaborator so i can push my changes :)
Please let me know if i missed anything or if i have to provide further details.
Cheers
Dominik
Hi Dominik. Thank you for reaching out and offering to help migrate the PDF plugin. Much appreciated.
All steps described in the guide were already completed.
Did you first create an empty commit and then filter existing commits related to the plugin via git-filter-repo
, as indicated in the instructions? I'm just checking to see how closely you've followed that guide. 😸
Who should be the Author in pyproject.toml?
If there are one or more active primary contributor(s), then I think it makes sense to credit those one or two people (example). But there are many cases in which plugin development seems to be a team effort, in which case I have been using "Pelican Dev Team" (example):
authors = ["Pelican Dev Team <authors@getpelican.com>"]
I feel like the PDF plugin falls into this latter category, so that is what I would suggest.
I'm looking for a Maintainer who can create the new Repository and invite me as Collaborator so i can push my changes :)
I have created the PDF plugin repository and have invited to you to collaborate on it. In the early stages of this plugin's migration, I think it's best if you fork the PDF plugin repository and then submit your branch as a pull request so we can review the changes before they are merged into main
.
Do you have any further questions I can help with? Looking forward to collaborating with you on this migration. ✨
Thank you very much Justin :)
Did you first create an empty commit and then filter existing commits related to the plugin via git-filter-repo, as indicated in the instructions? I'm just checking to see how closely you've followed that guide.
Yes i tried to follow the Instructions as close as possible, i think the only difference is that my git log now contains one consolidated commit, but from a technical point it should be fine. I also adjusted the author based on your recommendation.
Unfortunately the new created PDF plugin repository is empty, therefore i couldn't fork it or create a pull request. I tried to push a Initial Commit based on a empty repo as described in the Guide, but didn't had the rights:
ERROR: Permission to pelican-plugins/pdf.git denied to wombelix
As starting point, I created a repository in my Account and pushed the updated version of the Plugin, so you can already take a look if you want: https://github.com/wombelix/pelican-plugins_pdf
Do you have any further questions I can help with? Looking forward to collaborating with you on this migration
Thanks for asking and offering your help, i'm good so far regarding the actual Plugin Code.
But I didn't have much experience with automated PyPI releases and versioning yet. Is there something i have to take care of?
As far i understood the Guide that seem to be handled by the Github Workflow on every commit to the main branch?
I think the only difference is that my git log now contains one consolidated commit
I imagine it would be easier to review changes — and project history — to form these as separate commits. I’ll comment about this further below.
Unfortunately the new created PDF plugin repository is empty, therefore i couldn't fork it or create a pull request.
Sorry about that. I forgot about that limitation. I will create the initial commit. At that point, it’s probably easiest for me to follow the aforementioned guide and put the pre-existing PDF-related commits into the main
branch, after which we can collaborate on a new migrate
branch (as indicated in the guide).
As starting point, I created a repository in my Account and pushed the updated version of the Plugin, so you can already take a look if you want: https://github.com/wombelix/pelican-plugins_pdf
There are a few minor issues there but otherwise looks to be a very helpful set of changes. I’ll let you know once the new repository is ready for PRs, after which we can work on gradually bringing your changes over, preferably in the form of discrete commits. 😊
But I didn't have much experience with automated PyPI releases and versioning yet. Is there something i have to take care of?
You don’t need to do anything with regarding to that, no. It’s all handled automatically via AutoPub. 🚀
Following up on my comment from yesterday, I made an initial commit and then put the pre-existing PDF-related commits into the main
branch, setting the stage for subsequent PR-based enhancements to the PDF plugin.
@wombelix: Would you be so kind as to fetch these commits into your fork of the new PDF plugin repository, create a migrate
branch, and starting bringing over your changes? While it's up to you to formulate the commits as you see fit, I think the commit points mentioned in the migration guide are a good way to batch the changes as you go along. Once you have something ready to review, please push the migrate
branch to your fork and then submit a pull request. Does that make sense? What other guidance can I provide?
Thank you very much @justinmayer, made perfect sense, I tried to follow all recommendations and advises, PR created.
The PDF Generator Plugin was migrated to https://github.com/pelican-plugins/pdf
@justinmayer I'm closing this Issue, not sure what's the process after a Plugin was migrated, if there is any Task for me i missed, please let me know :)