diff --git a/pkgs/development/python-modules/jsonfeed/default.nix b/pkgs/development/python-modules/jsonfeed/default.nix new file mode 100644 index 000000000000..8cde64656acc --- /dev/null +++ b/pkgs/development/python-modules/jsonfeed/default.nix @@ -0,0 +1,43 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + setuptools, + pythonOlder, + requests, +}: + +buildPythonPackage rec { + pname = "jsonfeed"; + version = "0.0.1"; + pyproject = true; + + disabled = pythonOlder "3.9"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-Etfi59oOCrLHavLRMQo3HASFnydrBnsyEtGUgcsv1aQ="; + }; + + postPatch = '' + # Mixing of dev and runtime requirements + substituteInPlace setup.py \ + --replace-fail "install_requires=install_requires," "install_requires=[]," + ''; + + build-system = [ setuptools ]; + + dependencies = [ requests ]; + + # Module has no tests, only a placeholder + doCheck = false; + + pythonImportsCheck = [ "jsonfeed" ]; + + meta = with lib; { + description = "Module to process json feed"; + homepage = "https://pypi.org/project/jsonfeed/"; + license = licenses.bsd2; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/mkdocs-material/default.nix b/pkgs/development/python-modules/mkdocs-material/default.nix index 3b4e459669e4..f344a92445ab 100644 --- a/pkgs/development/python-modules/mkdocs-material/default.nix +++ b/pkgs/development/python-modules/mkdocs-material/default.nix @@ -1,38 +1,34 @@ -{ lib -, buildPythonPackage -, fetchFromGitHub - -# build-system -, hatch-requirements-txt -, hatch-nodejs-version -, hatchling -, trove-classifiers - -# dependencies -, babel -, colorama -, jinja2 -, markdown -, mkdocs -, mkdocs-material-extensions -, paginate -, pygments -, pymdown-extensions -, pythonOlder -, regex -, requests - -# optional-dependencies -, mkdocs-minify-plugin -, mkdocs-redirects -, mkdocs-git-revision-date-localized-plugin -, pillow -, cairosvg +{ + lib, + babel, + buildPythonPackage, + cairosvg, + colorama, + fetchFromGitHub, + hatch-nodejs-version, + hatch-requirements-txt, + hatchling, + jinja2, + markdown, + mkdocs, + mkdocs-git-revision-date-localized-plugin, + mkdocs-material-extensions, + mkdocs-minify-plugin, + mkdocs-redirects, + mkdocs-rss-plugin, + paginate, + pillow, + pygments, + pymdown-extensions, + pythonOlder, + regex, + requests, + trove-classifiers, }: buildPythonPackage rec { pname = "mkdocs-material"; - version = "9.5.17"; + version = "9.5.18"; pyproject = true; disabled = pythonOlder "3.7"; @@ -41,7 +37,7 @@ buildPythonPackage rec { owner = "squidfunk"; repo = "mkdocs-material"; rev = "refs/tags/${version}"; - hash = "sha256-r+w3Nf7mAfWiDUeOelO+ykizeqxRiKWBnbUjakXov3U="; + hash = "sha256-5FCIDAWRY6YfZi4QbcEpJMFfbJ17vudxlUYx4czDxrY="; }; nativeBuildInputs = [ @@ -69,7 +65,7 @@ buildPythonPackage rec { recommended = [ mkdocs-minify-plugin mkdocs-redirects - # TODO: mkdocs-rss-plugin + mkdocs-rss-plugin ]; git = [ # TODO: gmkdocs-git-committers-plugin @@ -84,9 +80,7 @@ buildPythonPackage rec { # No tests for python doCheck = false; - pythonImportsCheck = [ - "mkdocs" - ]; + pythonImportsCheck = [ "mkdocs" ]; meta = with lib; { changelog = "https://github.com/squidfunk/mkdocs-material/blob/${src.rev}/CHANGELOG"; diff --git a/pkgs/development/python-modules/mkdocs-rss-plugin/default.nix b/pkgs/development/python-modules/mkdocs-rss-plugin/default.nix new file mode 100644 index 000000000000..5328c196c31e --- /dev/null +++ b/pkgs/development/python-modules/mkdocs-rss-plugin/default.nix @@ -0,0 +1,69 @@ +{ + lib, + buildPythonPackage, + feedparser, + fetchFromGitHub, + gitpython, + jsonfeed, + mkdocs, + pytestCheckHook, + pythonOlder, + setuptools, + validator-collection, +}: + +buildPythonPackage rec { + pname = "mkdocs-rss-plugin"; + version = "1.12.1"; + pyproject = true; + + disabled = pythonOlder "3.9"; + + src = fetchFromGitHub { + owner = "Guts"; + repo = "mkdocs-rss-plugin"; + rev = "refs/tags/${version}"; + hash = "sha256-cLQfhMYW/9Eb+IamQIC7fZRTm/ORD8xbcrmKkSkUrMs="; + }; + + postPatch = '' + sed -i "/--cov/d" setup.cfg + ''; + + build-system = [ setuptools ]; + + dependencies = [ + gitpython + mkdocs + ]; + + nativeCheckInputs = [ + feedparser + jsonfeed + pytestCheckHook + validator-collection + ]; + + pythonImportsCheck = [ "mkdocs_rss_plugin" ]; + + disabledTests = [ + # Tests require network access + "test_plugin_config_through_mkdocs" + "test_remote_image_ok" + ]; + + disabledTestPaths = [ + # Tests require network access + "tests/test_integrations_material_social_cards.py" + "tests/test_build_no_git.py" + "tests/test_build.py" + ]; + + meta = with lib; { + description = "MkDocs plugin to generate a RSS feeds for created and updated pages, using git log and YAML frontmatter"; + homepage = "https://github.com/Guts/mkdocs-rss-plugin"; + changelog = "https://github.com/Guts/mkdocs-rss-plugin/blob/${src.rev}/CHANGELOG.md"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/validator-collection/default.nix b/pkgs/development/python-modules/validator-collection/default.nix new file mode 100644 index 000000000000..8625956d7754 --- /dev/null +++ b/pkgs/development/python-modules/validator-collection/default.nix @@ -0,0 +1,145 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + wheel, + alabaster, + attrs, + babel, + certifi, + cffi, + chardet, + codecov, + colorama, + coverage, + docutils, + filelock, + html5lib, + idna, + imagesize, + isort, + jinja2, + jsonschema, + lazy-object-proxy, + markupsafe, + mccabe, + more-itertools, + packaging, + pkginfo, + pluggy, + py, + py-cpuinfo, + pycparser, + pyfakefs, + pygments, + pyparsing, + pytest, + pytest-benchmark, + pytest-cov, + pytz, + readme-renderer, + requests, + requests-toolbelt, + restview, + six, + snowballstemmer, + sphinx, + sphinx-rtd-theme, + sphinx-tabs, + sphinxcontrib-websupport, + toml, + pytestCheckHook, + tox, + tqdm, + twine, + urllib3, + virtualenv, + webencodings, + wrapt, + pythonOlder, +}: + +buildPythonPackage rec { + pname = "validator-collection"; + version = "1.5.0"; + pyproject = true; + + disabled = pythonOlder "3.9"; + + src = fetchFromGitHub { + owner = "insightindustry"; + repo = "validator-collection"; + rev = "refs/tags/v.${version}"; + hash = "sha256-CDPfIkZZRpl1rAzNpLKJfaBEGWUl71coic2jOHIgi6o="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + alabaster + attrs + babel + certifi + cffi + chardet + codecov + colorama + coverage + docutils + filelock + html5lib + idna + imagesize + isort + jinja2 + jsonschema + lazy-object-proxy + markupsafe + mccabe + more-itertools + packaging + pkginfo + pluggy + py + py-cpuinfo + pycparser + pyfakefs + pygments + pyparsing + pytest + pytest-benchmark + pytest-cov + pytz + readme-renderer + requests + requests-toolbelt + restview + six + snowballstemmer + sphinx + sphinx-rtd-theme + sphinx-tabs + sphinxcontrib-websupport + toml + tox + tqdm + twine + urllib3 + virtualenv + webencodings + wrapt + ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + pythonImportsCheck = [ "validator_collection" ]; + + meta = with lib; { + description = "Python library of 60+ commonly-used validator functions"; + homepage = "https://github.com/insightindustry/validator-collection/"; + changelog = "https://github.com/insightindustry/validator-collection/blob/${src.rev}/CHANGES.rst"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 1598ea923ec4..4731c7459fcd 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6079,6 +6079,8 @@ self: super: with self; { jsondiff = callPackage ../development/python-modules/jsondiff { }; + jsonfeed = callPackage ../development/python-modules/jsonfeed { }; + jsonfield = callPackage ../development/python-modules/jsonfield { }; jsonlines = callPackage ../development/python-modules/jsonlines { }; @@ -7432,30 +7434,49 @@ self: super: with self; { mizani = callPackage ../development/python-modules/mizani { }; mkdocs = callPackage ../development/python-modules/mkdocs { }; + mkdocs-autolinks-plugin = callPackage ../development/python-modules/mkdocs-autolinks-plugin { }; + mkdocs-autorefs = callPackage ../development/python-modules/mkdocs-autorefs { }; + mkdocs-drawio-exporter = callPackage ../development/python-modules/mkdocs-drawio-exporter { }; + mkdocs-exclude = callPackage ../development/python-modules/mkdocs-exclude { }; - mkdocs-jupyter = callPackage ../development/python-modules/mkdocs-jupyter { }; - mkdocs-gitlab = callPackage ../development/python-modules/mkdocs-gitlab-plugin { }; + mkdocs-git-authors-plugin = callPackage ../development/python-modules/mkdocs-git-authors-plugin { }; + mkdocs-git-revision-date-localized-plugin = callPackage ../development/python-modules/mkdocs-git-revision-date-localized-plugin { }; + + mkdocs-gitlab = callPackage ../development/python-modules/mkdocs-gitlab-plugin { }; + + mkdocs-jupyter = callPackage ../development/python-modules/mkdocs-jupyter { }; + mkdocs-linkcheck = callPackage ../development/python-modules/mkdocs-linkcheck { }; + mkdocs-macros = callPackage ../development/python-modules/mkdocs-macros { }; + mkdocs-material = callPackage ../development/python-modules/mkdocs-material { }; + mkdocs-material-extensions = callPackage ../development/python-modules/mkdocs-material/mkdocs-material-extensions.nix { }; + + mkdocs-mermaid2-plugin = callPackage ../development/python-modules/mkdocs-mermaid2-plugin { }; + mkdocs-minify-plugin = callPackage ../development/python-modules/mkdocs-minify-plugin { }; + mkdocs-redirects = callPackage ../development/python-modules/mkdocs-redirects { }; + mkdocs-redoc-tag = callPackage ../development/python-modules/mkdocs-redoc-tag { }; + + mkdocs-rss-plugin = callPackage ../development/python-modules/mkdocs-rss-plugin { }; + mkdocs-simple-hooks = callPackage ../development/python-modules/mkdocs-simple-hooks { }; + mkdocs-swagger-ui-tag = callPackage ../development/python-modules/mkdocs-swagger-ui-tag { }; mkdocstrings = callPackage ../development/python-modules/mkdocstrings { }; mkdocstrings-python = callPackage ../development/python-modules/mkdocstrings-python { }; - mkdocs-mermaid2-plugin = callPackage ../development/python-modules/mkdocs-mermaid2-plugin { }; - mkl-service = callPackage ../development/python-modules/mkl-service { }; ml-collections = callPackage ../development/python-modules/ml-collections { }; @@ -16420,6 +16441,8 @@ self: super: with self; { validate-email = callPackage ../development/python-modules/validate-email { }; + validator-collection = callPackage ../development/python-modules/validator-collection { }; + validators = callPackage ../development/python-modules/validators { }; validobj = callPackage ../development/python-modules/validobj { };