From 8b49fc8efb8af985a2c2f33a3b52259b5e35f00f Mon Sep 17 00:00:00 2001 From: happysalada Date: Sun, 9 Jul 2023 16:10:55 +0800 Subject: [PATCH] python310Packages.pdfplumber: init at 0.9.0 --- .../python-modules/pdfplumber/default.nix | 82 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 84 insertions(+) create mode 100644 pkgs/development/python-modules/pdfplumber/default.nix diff --git a/pkgs/development/python-modules/pdfplumber/default.nix b/pkgs/development/python-modules/pdfplumber/default.nix new file mode 100644 index 000000000000..a4dbe9dfb184 --- /dev/null +++ b/pkgs/development/python-modules/pdfplumber/default.nix @@ -0,0 +1,82 @@ +{ lib +, stdenv +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +# build inputs +, pdfminer-six +, pillow +, wand +# check inputs +, pytestCheckHook +, pytest-cov +, pytest-parallel +, flake8 +, black +, isort +, pandas +, mypy +, pandas-stubs +, types-pillow +, jupyterlab +, nbexec +}: +let + pname = "pdfplumber"; + version = "0.9.0"; +in +buildPythonPackage { + inherit pname version; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "jsvine"; + repo = "pdfplumber"; + rev = "refs/tags/v${version}"; + hash = "sha256-cGTn1JTSp1YvksemjlvvToZcVauZ7GKINiNmG5f4zKg="; + }; + + propagatedBuildInputs = [ + pdfminer-six + pillow + wand + ]; + + preCheck = '' + export HOME=$(mktemp -d) + ''; + + nativeCheckInputs = [ + pytestCheckHook + pytest-cov + pytest-parallel + flake8 + black + isort + pandas + mypy + pandas-stubs + types-pillow + jupyterlab + nbexec + ]; + + pythonImportsCheck = [ + "pdfplumber" + ]; + + disabledTests = [ + # flaky + "test__repr_png_" + ]; + + meta = with lib; { + description = "Plumb a PDF for detailed information about each char, rectangle, line, et cetera — and easily extract text and tables."; + homepage = "https://github.com/jsvine/pdfplumber"; + changelog = "https://github.com/jsvine/pdfplumber/releases/tag/v${version}"; + license = licenses.mit; + maintainers = with maintainers; [ happysalada ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 3e828f522ba1..cc1d35ea1456 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7586,6 +7586,8 @@ self: super: with self; { pdfminer-six = callPackage ../development/python-modules/pdfminer-six { }; + pdfplumber = callPackage ../development/python-modules/pdfplumber { }; + pdfrw = callPackage ../development/python-modules/pdfrw { }; pdftotext = callPackage ../development/python-modules/pdftotext { };