Python 2.7 EOL is getting closer (~10 months from now): https://www.python.org/dev/peps/pep-0373/
Any plan to support Python 3?
Well, this discussion popped up several times. From what I know nobody expressed the willingness to sponsors it or started working on it yet. But true this is of high importance. In my opinion even if GeoNode3 would be released.
(
There are just so many instances of GeoNode 2+ out in the wild
-> https://www.google.com/search?q=inurl:layers/+%26+intitle:GeoNode+%26+intext:%22Explore+Layers+About+Create+a+Map
)
I had some minor experience with Python 2 to Python 3 migration. We could proceed step-by-step, following this guide:
We need tests. I hope we could focus on them while fixing issues, update our requirements and release GeoNode 2.10. Then we could go all-in with Python 3 for GeoNode 3, using 2to3 and updating the Dockerfiles in order to use Python 3. GeoNode 3 would be just a Python 3 version of GeoNode 2.10 with some additional fixes and cleaning, because we cannot release it in December, as no one would have the time to update to it. It seems reasonable to have GeoNode 2.10 in in March and GeoNode 3.0 in June. If no-one is interested in PPA or alternative methods, we could just drop them (it make no sense to me to invite people to used outdated and unsupported versions of GeoNode) and focus on just manual installation and Docker (a merge between SPC and standard Docker setups would be nice).
Of course that kind of decision requires a broad agreement between developers and a certain type of commitment, but if we want to have GeoNode alive and not let it die, this has to be done, there is no alternative.
Links:
https://docs.python.org/3/howto/pyporting.html
http://python3porting.com/bookindex.html
I, as mainly a soon to be user of GeoNode, would like to see a timely release of a Python 3 version for GeoNode. But I currently have no ressources to actually do anything to achieve this goal (...german translation...).
+1 for the merged spc / geonode main docker setup. I would love to see a dev-based docker setup and one which is mostly production ready.
@frafra I fully agree just a small note:
and GeoNode 3.0 in June
As far as I know GN3 should be completely rewritten. API First. I do not know of any programming done yet so June will be unlikely.
As far as I know GN3 should be completely rewritten. API First. I do not know of any programming done yet so June will be unlikely.
Let's use a different number, like 2.12, but we need to have a Python 3 release few months before 2.10 in my opinion.
Thanks all for commenting and joining the discussion.
Nice, thanks.
Here is a list of what need to be ported or replaced to Python 3 (checked items are Python 3 ready).
External dependencies:
GeoNode:
Most of these external Python 2 only libraries are abandoned software (last update 2010/2011), which has to be replaced nonetheless.
@frafra this is of great help!
I suppose that issue has been replaced by #4276, right?
@frafra yep. would close here.
Most helpful comment
Nice, thanks.
Here is a list of what need to be ported or replaced to Python 3 (checked items are Python 3 ready).
External dependencies:
GeoNode:
Most of these external Python 2 only libraries are abandoned software (last update 2010/2011), which has to be replaced nonetheless.