cubicweb/misc/migration/3.22.0_Any.py
author Denis Laxalde <denis.laxalde@logilab.fr>
Fri, 05 Apr 2019 17:58:19 +0200
changeset 12567 26744ad37953
parent 11129 97095348b3ee
permissions -rw-r--r--
Drop python2 support This mostly consists in removing the dependency on "six" and updating the code to use only Python3 idioms. Notice that we previously used TemporaryDirectory from cubicweb.devtools.testlib for compatibility with Python2. We now directly import it from tempfile.

if confirm('use Europe/Paris as timezone?'):
    timezone = 'Europe/Paris'
else:
    import pytz
    while True:
        timezone = raw_input('enter your timezone')
        if timezone in pytz.common_timezones:
            break

dbdriver = repo.system_source.dbdriver
if dbdriver == 'postgres':
    sql("SET TIME ZONE '%s'" % timezone)

for entity in schema.entities():
    if entity.final or entity.type not in fsschema:
        continue
    change_attribute_type(entity.type, 'creation_date', 'TZDatetime', ask_confirm=False)
    change_attribute_type(entity.type, 'modification_date', 'TZDatetime', ask_confirm=False)

if dbdriver == 'postgres':
    sql("SET TIME ZONE UTC")