I'd love to contribute but have some questions
I'd love to contribute to python-mapnik. Mapnik is an awesome renderer, but I think the python bindings can do with some tlc probably.But I have a few questions before I go ham. I have a few ideas/suggestions of what I could do but would love to have your thoughts as well. I'd love to close this ticket and discuss elsewhere if there is a more appropriate place.
- Is it worth spending time on this. I see there have been no commits for around 2 years or so. I think mapnik is great, and I'd love to help out making docs and updating the python bindings for it, but if the devs think python-mapnik is dead, then I'd rather not waste the time. Personally though, I don't really know of an alternative that is better (not webbased/qgis) for rendering maps.
- What version should I be working on? I tried to compile mapnik master with python-mapnik master and was running into issues. The 3.1.0 and 3.0.x branches together seems to work though (at least compiles and imports), and I don't see an official release (tag) of mapnik either past v3.1.0. So I'd probably prefer to get some usable results a little bit quicker by making sure python-mapnik v3.0.x is documented and working well enough, and then move over to get master up-to-scratch with mapnik master afterwards.
- Should I generate at least some api docs with pdoc3. I have run a test and with some fixes to the code, it should work, at least providing more then is available now.
- There is a lot of old python 2 style syntax still in the code (which has reached eol 2 years ago). Shall I run 2to3 to clean that up, followed by black to clean up the syntax?
- What do you think about moving the tests away from nose to py.test, since nose has been deprecated for a few years already. Also, a lot of them are currently failing....
Basically, points 1-4 of the above have been done already in this branch (made off v3.0.x): https://github.com/dolfandringa/python-mapnik/tree/feature/add_docs
If you feel any of this is useful, I'd be happy to make a PR. And I can make feature requests/issues for the others too.
Lol, turns out a lot of the failing tests (143 or so) was because I didn't update/init the submodules so the test data was missing. But at least a few are actually failing.
I have switched from pdoc3 to sphinx and hooked it up to readthedocs.io. Currently through my own fork, but I'd gladly change that of course. See https://python-mapnik.readthedocs.io/ for a sample
note: i'm not a maintainer of mapnik but contributed in the last time a bit to mapnik itself. So these are my own thoughts and might not reflect what artemp thinks.
- I think there is a lot of work to do. I've begun porting the build system to cmake in #242 to build python-mapnik with latest master. But it needs some work which I would do after I have contributed the last things for mapnikv4
- I think latest master is the way to go. Lot has changed since v3
-
- Think this would be cool