43 lines
1.2 KiB
Python
Executable File
43 lines
1.2 KiB
Python
Executable File
# This file is part of Tryton. The COPYRIGHT file at the top level of
|
|
# this repository contains the full copyright notices and license terms.
|
|
import os
|
|
import time
|
|
import warnings
|
|
from email import charset
|
|
|
|
import __main__
|
|
from lxml import etree, objectify
|
|
|
|
try:
|
|
from requests import utils as requests_utils
|
|
except ImportError:
|
|
requests_utils = None
|
|
|
|
__version__ = "7.2.9"
|
|
|
|
os.environ.setdefault(
|
|
'TRYTOND_APPNAME',
|
|
os.path.basename(getattr(__main__, '__file__', 'trytond')))
|
|
os.environ.setdefault('TRYTOND_TZ', os.environ.get('TZ', 'UTC'))
|
|
os.environ['TZ'] = 'UTC'
|
|
if hasattr(time, 'tzset'):
|
|
time.tzset()
|
|
|
|
if time.tzname[0] != 'UTC':
|
|
warnings.warn('Timezone must be set to UTC instead of %s' % time.tzname[0])
|
|
|
|
# set email encoding for utf-8 to 'quoted-printable'
|
|
charset.add_charset('utf-8', charset.QP, charset.QP)
|
|
|
|
# prevent XML vulnerabilities by default
|
|
etree.set_default_parser(etree.XMLParser(resolve_entities=False))
|
|
objectify.set_default_parser(objectify.makeparser(resolve_entities=False))
|
|
|
|
|
|
def default_user_agent(name="Tryton"):
|
|
return f"{name}/{__version__}"
|
|
|
|
|
|
if requests_utils:
|
|
requests_utils.default_user_agent = default_user_agent
|