The icalendar
package in the Plone collective has been designated as a "critical" project on PyPI, meaning it is in the top 1 percent of downloaded packages. It was started by Martijn Faassen in 2005, saw lots of commits by Johannes Raggam and Rok Garbas around 2011/2012, during the time plone.app.event
was created and added to Plone. You can see all contributors.
Apparently I am the number four contributor, but that is only because I occasionally make a release. I hardly know anything about the inner workings of this package. As Plone Release Manager I am interested in having stable releases of this.
It would help if we get some fresh developer/maintainer blood in here. Is anyone capable and interested?
I have some ideas for the near future, to hopefully get things unstuck:
- We should no longer test this on the Plone Jenkins server. That would be something to arrange in
mr.roboto
. I can have a look at that. - The package can use Github Actions instead.
- According to
setup.py
the package supports Python 2.7 and 3.4-3.10. We should get GitHub actions to work with those versions. I expect that this is not really doable for at least Python 3.4 and 3.5, so we would need a new major release in which we drop support for some Python versions. - Ideally there should be a branch that keeps working on all Python versions that are supported for Plone 5.2, which means: Python 2.7, 3.6, 3.7, 3.8. Maybe that just needs to be the current branch, which we then would copy to 4.x. If we fail to get Github Actions to work for this, Jenkins for Plone 5.2 should still keep testing the package.
- Increase master branch version to 5 (or 6 if needed). This should keep working on Plone 6.0 (which is near beta), which means Python 3.7-3.10.
So the first action item is really: try to get Github Actions (and locally tox
) running on as much Python versions as possible, with a reasonable amount of effort.
Some links:
- PyPI: icalendar · PyPI
- Documentation: Internet Calendaring and Scheduling (iCalendar) for Python — icalendar 4.0.5.dev0 documentation
- Code: GitHub - collective/icalendar: icalendar parser library for Python, where you can see it has 138 forks and 783 stars.
- Issue tracker: Issues · collective/icalendar · GitHub
- 18 open pull requests: Pull requests · collective/icalendar · GitHub, including:
- My failed attempt at adding GitHub actions, from November 2021.
- Document Setup process for development.
Update: I have opened up discussions on GitHub as well.