nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 six,
7 webencodings,
8 pytest-expect,
9 pytestCheckHook,
10 unstableGitUpdater,
11}:
12
13buildPythonPackage {
14 pname = "html5lib";
15 version = "1.1-unstable-2024-02-21";
16 pyproject = true;
17
18 src = fetchFromGitHub {
19 owner = "html5lib";
20 repo = "html5lib-python";
21 rev = "fd4f032bc090d44fb11a84b352dad7cbee0a4745";
22 hash = "sha256-Hyte1MEqlrD2enfunK1qtm3FJlUDqmhSyrCjo7VaBgA=";
23 };
24
25 patches = [
26 # https://github.com/html5lib/html5lib-python/pull/583
27 ./python314-compat.patch
28 # https://github.com/html5lib/html5lib-python/pull/590
29 ./pytest9-compat.patch
30 ];
31
32 build-system = [ setuptools ];
33
34 dependencies = [
35 six
36 webencodings
37 ];
38
39 nativeCheckInputs = [
40 pytest-expect
41 pytestCheckHook
42 ];
43
44 passthru.updateScript = unstableGitUpdater {
45 branch = "master";
46 };
47
48 meta = {
49 homepage = "https://github.com/html5lib/html5lib-python";
50 downloadPage = "https://github.com/html5lib/html5lib-python/releases";
51 description = "HTML parser based on WHAT-WG HTML5 specification";
52 longDescription = ''
53 html5lib is a pure-python library for parsing HTML. It is designed to
54 conform to the WHATWG HTML specification, as is implemented by all
55 major web browsers.
56 '';
57 license = lib.licenses.mit;
58 maintainers = with lib.maintainers; [
59 prikhi
60 ];
61 };
62}