summaryrefslogtreecommitdiffstats
path: root/abs/core/python_modules/python-html5lib/PKGBUILD
blob: 2e7f14bf0b44990c713b4d431432c846ccbe8593 (plain)
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
# Maintainer: Eli Schwartz <eschwartz@archlinux.org>
# Maintainer: Jelle van der Waa <jelle@archlinux.org>
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
# Contributor: Erol V. Aktay <e.aktay@gmail.com>

pkgbase=python-html5lib
pkgname=('python2-html5lib' 'python-html5lib')
pkgver=1.1
pkgrel=5
arch=('any')
url="https://github.com/html5lib"
license=('MIT')
_deps=('six' 'webencodings')
makedepends=('python-setuptools' 'python2-setuptools' "${_deps[@]/#/python-}" "${_deps[@]/#/python2-}")
_checkdeps=('pytest' 'pytest-expect' 'lxml' 'mock')
checkdepends=("${_checkdeps[@]/#/python-}" "${_checkdeps[@]/#/python2-}")
_test_commit=71eebd59772d1d39aced0c0582ae9c09acf3ce6e
source=("$pkgbase-$pkgver.tar.gz::https://github.com/html5lib/html5lib-python/archive/${pkgver}.tar.gz"
        "https://github.com/html5lib/html5lib-python/commit/2c19b9899ab3a3e8bd0ca35e5d78544334204169.patch"
        "https://github.com/html5lib/html5lib-tests/archive/${_test_commit}.tar.gz")
sha256sums=('66e9e24a53c10c27abb6be8a3cf2cf55824c6ea1cef8570a633cb223ec46e894'
            '6f37b33667e35ea138279be9842f012792821b1497b81ae4b108a74180cfe249'
            'c866f5e4ae9ef34313e2b61fcb74849b6f8aef970bf8249956b6a5d142197087')

prepare() {
    cd "${srcdir}"/html5lib-python-${pkgver}

    # fix pytest 6 compat
    patch -p1 -i ../2c19b9899ab3a3e8bd0ca35e5d78544334204169.patch

    rmdir html5lib/tests/testdata
    ln -sfT ../../../html5lib-tests-${_test_commit} html5lib/tests/testdata
}

build() {
    cd "${srcdir}"/html5lib-python-${pkgver}

    python setup.py build
    python2 setup.py build
}

check() {
    cd "${srcdir}"/html5lib-python-${pkgver}

    py.test
    py.test2
}

package_python-html5lib() {
    pkgdesc="A Python HTML parser/tokenizer based on the WHATWG HTML5 spec"
    depends=("${_deps[@]/#/python-}")
    optdepends=('python-lxml: lxml treebuilder'
                'python-genshi: genshi treewalker')
    cd "${srcdir}"/html5lib-python-${pkgver}

    python setup.py install --root="${pkgdir}" --optimize=1 --skip-build
    install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}

package_python2-html5lib() {
    pkgdesc="A Python2 HTML parser/tokenizer based on the WHATWG HTML5 spec"
    depends=("${_deps[@]/#/python2-}")
    optdepends=('python2-lxml: lxml treebuilder')
    cd "${srcdir}"/html5lib-python-${pkgver}

    python2 setup.py install --root="${pkgdir}" --optimize=1 --skip-build
    install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}