FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
html5lib-python/setup.py at master · Starr79/html5lib-python · GitHub
Starr79
/
html5lib-python
Public
forked from
html5lib/html5lib-python
Notifications
You must be signed in to change notification settings
Fork
0
Star
0
Code
Pull requests
0
Actions
Projects
Security and quality
0
Insights
Additional navigation options
Code
Pull requests
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
html5lib-python
/
setup.py
Copy path
More file actions
More file actions
Latest commit
History
History
History
127 lines (105 loc) · 4.55 KB
Breadcrumbs
html5lib-python
/
setup.py
Copy path
File metadata and controls
127 lines (105 loc) · 4.55 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
from
__future__
import
print_function
import
ast
import
codecs
import
sys
from
os
.
path
import
join
,
dirname
from
setuptools
import
setup
,
find_packages
,
__version__
as
setuptools_version
from
pkg_resources
import
parse_version
import
pkg_resources
try
:
import
_markerlib
.
markers
except
ImportError
:
_markerlib
=
None
# _markerlib.default_environment() obtains its data from _VARS
# and wraps it in another dict, but _markerlib_evaluate writes
# to the dict while it is iterating the keys, causing an error
# on Python 3 only.
# Replace _markerlib.default_environment to return a custom dict
# that has all the necessary markers, and ignores any writes.
class
Python3MarkerDict
(
dict
):
def
__setitem__
(
self
,
key
,
value
):
pass
def
pop
(
self
,
i
=
-
1
):
return
self
[
i
]
if
_markerlib
and
sys
.
version_info
[
0
]
==
3
:
env
=
_markerlib
.
markers
.
_VARS
for
key
in
list
(
env
.
keys
()):
new_key
=
key
.
replace
(
'.'
,
'_'
)
if
new_key
!=
key
:
env
[
new_key
]
=
env
[
key
]
_markerlib
.
markers
.
_VARS
=
Python3MarkerDict
(
env
)
def
default_environment
():
return
_markerlib
.
markers
.
_VARS
_markerlib
.
default_environment
=
default_environment
# Avoid the very buggy pkg_resources.parser, which doesn't consistently
# recognise the markers needed by this setup.py
# Change this to setuptools 20.10.0 to support all markers.
if
pkg_resources
:
if
parse_version
(
setuptools_version
)
<
parse_version
(
'18.5'
):
MarkerEvaluation
=
pkg_resources
.
MarkerEvaluation
del
pkg_resources
.
parser
pkg_resources
.
evaluate_marker
=
MarkerEvaluation
.
_markerlib_evaluate
MarkerEvaluation
.
evaluate_marker
=
MarkerEvaluation
.
_markerlib_evaluate
classifiers
=
[
'Development Status :: 5 - Production/Stable'
,
'Intended Audience :: Developers'
,
'License :: OSI Approved :: MIT License'
,
'Operating System :: OS Independent'
,
'Programming Language :: Python'
,
'Programming Language :: Python :: 2'
,
'Programming Language :: Python :: 2.7'
,
'Programming Language :: Python :: 3'
,
'Programming Language :: Python :: 3.5'
,
'Programming Language :: Python :: 3.6'
,
'Programming Language :: Python :: 3.7'
,
'Programming Language :: Python :: 3.8'
,
'Programming Language :: Python :: Implementation :: CPython'
,
'Programming Language :: Python :: Implementation :: PyPy'
,
'Topic :: Software Development :: Libraries :: Python Modules'
,
'Topic :: Text Processing :: Markup :: HTML'
]
here
=
dirname
(
__file__
)
with
codecs
.
open
(
join
(
here
,
'README.rst'
),
'r'
,
'utf8'
)
as
readme_file
:
with
codecs
.
open
(
join
(
here
,
'CHANGES.rst'
),
'r'
,
'utf8'
)
as
changes_file
:
long_description
=
readme_file
.
read
()
+
'
\n
'
+
changes_file
.
read
()
version
=
None
with
open
(
join
(
here
,
"html5lib"
,
"__init__.py"
),
"rb"
)
as
init_file
:
t
=
ast
.
parse
(
init_file
.
read
(),
filename
=
"__init__.py"
,
mode
=
"exec"
)
assert
isinstance
(
t
,
ast
.
Module
)
assignments
=
filter
(
lambda
x
:
isinstance
(
x
,
ast
.
Assign
),
t
.
body
)
for
a
in
assignments
:
if
(
len
(
a
.
targets
)
==
1
and
isinstance
(
a
.
targets
[
0
],
ast
.
Name
)
and
a
.
targets
[
0
].
id
==
"__version__"
and
isinstance
(
a
.
value
,
ast
.
Str
)):
version
=
a
.
value
.
s
setup
(
name
=
'html5lib'
,
version
=
version
,
url
=
'https://github.com/html5lib/html5lib-python'
,
license
=
"MIT License"
,
description
=
'HTML parser based on the WHATWG HTML specification'
,
long_description
=
long_description
,
classifiers
=
classifiers
,
maintainer
=
'James Graham'
,
maintainer_email
=
'james@hoppipolla.co.uk'
,
packages
=
find_packages
(
exclude
=
[
"*.tests"
,
"*.tests.*"
,
"tests.*"
,
"tests"
]),
install_requires
=
[
'six>=1.9'
,
'webencodings'
,
],
python_requires
=
">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
,
extras_require
=
{
# A conditional extra will only install these items when the extra is
# requested and the condition matches.
"lxml:platform_python_implementation == 'CPython'"
: [
"lxml"
],
# Standard extras, will be installed when the extra is requested.
"genshi"
: [
"genshi"
],
"chardet"
: [
"chardet>=2.2"
],
# The all extra combines a standard extra which will be used anytime
# the all extra is requested, and it extends it with a conditional
# extra that will be installed whenever the condition matches and the
# all extra is requested.
"all"
: [
"genshi"
,
"chardet>=2.2"
],
"all:platform_python_implementation == 'CPython'"
: [
"lxml"
],
},
)
Back
|
FazBrowse Home
|
New Git URL