Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 8621957

Browse files
committed
bytes all the way down
1 parent db65832 commit 8621957

File tree

1 file changed

+20
-15
lines changed

1 file changed

+20
-15
lines changed

setup.py

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,11 @@ def run(self):
3434
raise RuntimeError(
3535
'Unable to find regexes.yaml, should be at %r' % yaml_src)
3636

37+
def force_bytes(text):
38+
if text is None:
39+
return text
40+
return text.encode('utf8')
41+
3742
log.info('Converting regexes.yaml to _regexes.py...')
3843
import yaml
3944
py_dest = os.path.join(work_path, 'ua_parser', '_regexes.py')
@@ -58,33 +63,33 @@ def run(self):
5863
fp.write(b'USER_AGENT_PARSERS = [\n')
5964
for device_parser in regexes['user_agent_parsers']:
6065
fp.write(b' UserAgentParser(\n')
61-
fp.write(b' %r,\n' % device_parser['regex'])
62-
fp.write(b' %r,\n' % device_parser.get('family_replacement'))
63-
fp.write(b' %r,\n' % device_parser.get('v1_replacement'))
64-
fp.write(b' %r,\n' % device_parser.get('v2_replacement'))
66+
fp.write(force_bytes(' %r,\n' % device_parser['regex']))
67+
fp.write(force_bytes(' %r,\n' % device_parser.get('family_replacement')))
68+
fp.write(force_bytes(' %r,\n' % device_parser.get('v1_replacement')))
69+
fp.write(force_bytes(' %r,\n' % device_parser.get('v2_replacement')))
6570
fp.write(b' ),\n')
6671
fp.write(b']\n')
6772
fp.write(b'\n')
6873
fp.write(b'DEVICE_PARSERS = [\n')
6974
for device_parser in regexes['device_parsers']:
7075
fp.write(b' DeviceParser(\n')
71-
fp.write(b' %r,\n' % device_parser['regex'])
72-
fp.write(b' %r,\n' % device_parser.get('regex_flag'))
73-
fp.write(b' %r,\n' % device_parser.get('device_replacement'))
74-
fp.write(b' %r,\n' % device_parser.get('brand_replacement'))
75-
fp.write(b' %r,\n' % device_parser.get('model_replacement'))
76+
fp.write(force_bytes(' %r,\n' % device_parser['regex']))
77+
fp.write(force_bytes(' %r,\n' % device_parser.get('regex_flag')))
78+
fp.write(force_bytes(' %r,\n' % device_parser.get('device_replacement')))
79+
fp.write(force_bytes(' %r,\n' % device_parser.get('brand_replacement')))
80+
fp.write(force_bytes(' %r,\n' % device_parser.get('model_replacement')))
7681
fp.write(b' ),\n')
7782
fp.write(b']\n')
7883
fp.write(b'\n')
7984
fp.write(b'OS_PARSERS = [\n')
8085
for device_parser in regexes['os_parsers']:
8186
fp.write(b' OSParser(\n')
82-
fp.write(b' %r,\n' % device_parser['regex'])
83-
fp.write(b' %r,\n' % device_parser.get('os_replacement'))
84-
fp.write(b' %r,\n' % device_parser.get('os_v1_replacement'))
85-
fp.write(b' %r,\n' % device_parser.get('os_v2_replacement'))
86-
fp.write(b' %r,\n' % device_parser.get('os_v3_replacement'))
87-
fp.write(b' %r,\n' % device_parser.get('os_v4_replacement'))
87+
fp.write(force_bytes(' %r,\n' % device_parser['regex']))
88+
fp.write(force_bytes(' %r,\n' % device_parser.get('os_replacement')))
89+
fp.write(force_bytes(' %r,\n' % device_parser.get('os_v1_replacement')))
90+
fp.write(force_bytes(' %r,\n' % device_parser.get('os_v2_replacement')))
91+
fp.write(force_bytes(' %r,\n' % device_parser.get('os_v3_replacement')))
92+
fp.write(force_bytes(' %r,\n' % device_parser.get('os_v4_replacement')))
8893
fp.write(b' ),\n')
8994
fp.write(b']\n')
9095
fp.write(b'\n')

0 commit comments

Comments
 (0)