author | robin |
Thu, 27 Feb 2014 12:51:04 +0000 | |
branch | py33 |
changeset 4050 | a899d3baa5f4 |
parent 4047 | 2319faeb2f5e |
child 4053 | 173718fd2975 |
permissions | -rw-r--r-- |
3617 | 1 |
#Copyright ReportLab Europe Ltd. 2000-2012 |
494 | 2 |
#see license.txt for license details |
2332 | 3 |
#history http://www.reportlab.co.uk/cgi-bin/viewcvs.cgi/public/reportlab/trunk/reportlab/__init__.py |
4 |
__version__=''' $Id$ ''' |
|
681 | 5 |
__doc__="""The Reportlab PDF generation library.""" |
4050
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
6 |
Version = "3.0-20140226" |
2618
19c47ce76a0c
changed version and added warning for old Python users
andy
parents:
2407
diff
changeset
|
7 |
|
4050
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
8 |
import sys, os, imp |
2618
19c47ce76a0c
changed version and added warning for old Python users
andy
parents:
2407
diff
changeset
|
9 |
|
3940
39b5e5c82ea1
reportlab/__init__.py: fix allowed version checks & remove cruft
robin
parents:
3820
diff
changeset
|
10 |
if sys.version_info[0:2]!=(2, 7) and sys.version_info<(3, 3): |
39b5e5c82ea1
reportlab/__init__.py: fix allowed version checks & remove cruft
robin
parents:
3820
diff
changeset
|
11 |
raise ImportError("""reportlab requires Python 2.7+ or 3.3+; 3.0-3.2 are not supported.""") |
3820 | 12 |
|
13 |
#define these early in reportlab's life |
|
14 |
isPy3 = sys.version_info[0]==3 |
|
15 |
if isPy3: |
|
16 |
def cmp(a,b): |
|
17 |
return -1 if a<b else (1 if a>b else 0) |
|
18 |
||
19 |
import builtins |
|
20 |
builtins.cmp = cmp |
|
4005
b7dee7fcd927
utils.py: move xrange hack to reportlab.__init__, add rl_add_builtins utility
robin
parents:
3990
diff
changeset
|
21 |
builtins.xrange = range |
3820 | 22 |
del cmp, builtins |
23 |
else: |
|
24 |
from future_builtins import ascii |
|
25 |
import __builtin__ |
|
26 |
__builtin__.ascii = ascii |
|
3990
b484eaf71af9
reportlab/__init__.py: fix del to delete what we imported (not its alias)
robin
parents:
3946
diff
changeset
|
27 |
del ascii, __builtin__ |
4032
5106a9463326
__init__.py: attempt import of reportlab.local_rl_mods for customization
robin
parents:
4031
diff
changeset
|
28 |
|
4050
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
29 |
#try to use dynamic modifications from |
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
30 |
#reportlab.local_rl_mods.py |
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
31 |
#reportlab_mods or ~/.reportlab_mods |
4032
5106a9463326
__init__.py: attempt import of reportlab.local_rl_mods for customization
robin
parents:
4031
diff
changeset
|
32 |
try: |
5106a9463326
__init__.py: attempt import of reportlab.local_rl_mods for customization
robin
parents:
4031
diff
changeset
|
33 |
import reportlab.local_rl_mods |
5106a9463326
__init__.py: attempt import of reportlab.local_rl_mods for customization
robin
parents:
4031
diff
changeset
|
34 |
except ImportError: |
5106a9463326
__init__.py: attempt import of reportlab.local_rl_mods for customization
robin
parents:
4031
diff
changeset
|
35 |
pass |
4050
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
36 |
|
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
37 |
def _fake_import(fn,name): |
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
38 |
if os.path.isfile(fn): |
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
39 |
with open(fn,'rb') as f: |
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
40 |
imp.load_source('reportlab_mods',fn,f) |
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
41 |
|
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
42 |
try: |
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
43 |
import reportlab_mods #application specific modifications can be anywhere on python path |
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
44 |
except ImportError: |
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
45 |
try: |
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
46 |
_fake_import(os.path.expanduser(os.path.join('~','.reportlab_mods')),'reportlab_mods') |
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
47 |
except ImportError: |
a899d3baa5f4
__init__.py, rl_config.py & rl_settings.py: revamp initialization yet again
robin
parents:
4047
diff
changeset
|
48 |
pass |