GSOC 2018 ideas: improve date/time handling in Plone

that's all very fine the only problem I see as I was saying and you did not answer to that is that a new Plone version will need at least 2 years and really a problem like

should be fixed in 2 negative years....

My feeling is that your post was possibly motivated by the fact that I used a DateTime function to try to work around the OP poster. However there could be a way to change templates in a way that could not pose any problem when your python time change will be ready

plone_daemon@ploneprod2:/usr/local/plone-5.1-latest/ploneprod$ bin/client_reserved debug
Starting debugger (the name "app" is bound to the top-level Zope object)

>>> plone=app.Plone
>>> from zope.component.hooks import setSite
>>> setSite(plone)
>>> from plone import api
>>> with api.env.adopt_user(username="admin"):
...      documents = api.content.find(context=plone)
... 
>>> obj=documents[1].getObject()
>>> obj.id
'doc2test'
>>> d=obj.modified()
>>> d.__class__
<class 'DateTime.DateTime.DateTime'>
>>> d.isoformat()
'2018-01-10T22:11:21+00:00'
>>> 

After a 2 line change to Zope DateTime (after all as was said in an old Russian classic, the Brother Karamazope, 'if zod is dead then everything is permitted', but my recollection of this big book could be hazy) all templates could be changed in a future compatible way to enable all this moment.js goodness at least. I changed my one liner to listing.pt so

-                            <span tal:replace="python:view.toLocalizedTime(item_modified,long_format=1)">
+                            <span span class="pat-moment" data-pat-moment="format:LLL;" tal:content="python:obj.modified().isoformat()">

and it worked just as well. And it will work as well with a datetime type. After all ISO is ISO.

Then your gsoc student could be used to get the Plone calendar better indeed. It is about all right now. It could be great again. That's a more fit task for a student IMO.