mirror of
https://github.com/bndr/pipreqs.git
synced 2025-06-03 01:50:11 +00:00
Merge branch 'master' into rasa-py-3.13-support
This commit is contained in:
commit
da63e0d71c
13
.github/workflows/tests.yml
vendored
13
.github/workflows/tests.yml
vendored
@ -1,6 +1,10 @@
|
|||||||
name: Tests and Codecov
|
name: Tests and Codecov
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
- main
|
||||||
|
- "release/*"
|
||||||
pull_request:
|
pull_request:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
@ -23,8 +27,8 @@ jobs:
|
|||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install uv
|
||||||
pip install tox tox-gh-actions
|
uv pip install --system tox tox-gh-actions
|
||||||
|
|
||||||
- name: Test with tox
|
- name: Test with tox
|
||||||
run: tox
|
run: tox
|
||||||
@ -38,9 +42,8 @@ jobs:
|
|||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install uv poetry
|
||||||
pip install poetry
|
uv pip install --system .[dev]
|
||||||
poetry install --with dev
|
|
||||||
|
|
||||||
- name: Calculate coverage
|
- name: Calculate coverage
|
||||||
run: poetry run coverage run --source=pipreqs -m unittest discover
|
run: poetry run coverage run --source=pipreqs -m unittest discover
|
||||||
|
96
.pre-commit-config.yaml
Normal file
96
.pre-commit-config.yaml
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
ci:
|
||||||
|
autoupdate_commit_msg: "chore: update pre-commit hooks"
|
||||||
|
autofix_commit_msg: "style: pre-commit fixes"
|
||||||
|
autoupdate_schedule: quarterly
|
||||||
|
|
||||||
|
repos:
|
||||||
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||||||
|
rev: v5.0.0
|
||||||
|
hooks:
|
||||||
|
- id: check-added-large-files
|
||||||
|
args: [ '--maxkb=1000' ]
|
||||||
|
- id: check-case-conflict
|
||||||
|
- id: check-merge-conflict
|
||||||
|
- id: check-symlinks
|
||||||
|
- id: check-yaml
|
||||||
|
- id: check-toml
|
||||||
|
- id: check-json
|
||||||
|
- id: debug-statements
|
||||||
|
- id: end-of-file-fixer
|
||||||
|
- id: mixed-line-ending
|
||||||
|
- id: requirements-txt-fixer
|
||||||
|
- id: trailing-whitespace
|
||||||
|
files: ".*\\.(?:tex|py)$"
|
||||||
|
args: [ --markdown-linebreak-ext=md ]
|
||||||
|
exclude: (^notebooks/|^tests/truth/)
|
||||||
|
- id: detect-private-key
|
||||||
|
- id: fix-byte-order-marker
|
||||||
|
- id: check-ast
|
||||||
|
- id: check-docstring-first
|
||||||
|
- id: debug-statements
|
||||||
|
|
||||||
|
- repo: https://github.com/pre-commit/pygrep-hooks
|
||||||
|
rev: v1.10.0
|
||||||
|
hooks:
|
||||||
|
- id: python-use-type-annotations
|
||||||
|
- id: python-check-mock-methods
|
||||||
|
- id: python-no-eval
|
||||||
|
- id: rst-backticks
|
||||||
|
- id: rst-directive-colons
|
||||||
|
|
||||||
|
- repo: https://github.com/asottile/pyupgrade
|
||||||
|
rev: v3.3.1
|
||||||
|
hooks:
|
||||||
|
- id: pyupgrade
|
||||||
|
args: [ --py38-plus ]
|
||||||
|
|
||||||
|
# Notebook formatting
|
||||||
|
- repo: https://github.com/nbQA-dev/nbQA
|
||||||
|
rev: 1.9.1
|
||||||
|
hooks:
|
||||||
|
- id: nbqa-isort
|
||||||
|
additional_dependencies: [ isort ]
|
||||||
|
|
||||||
|
- id: nbqa-pyupgrade
|
||||||
|
additional_dependencies: [ pyupgrade ]
|
||||||
|
args: [ --py38-plus ]
|
||||||
|
|
||||||
|
|
||||||
|
- repo: https://github.com/kynan/nbstripout
|
||||||
|
rev: 0.8.1
|
||||||
|
hooks:
|
||||||
|
- id: nbstripout
|
||||||
|
|
||||||
|
- repo: https://github.com/sondrelg/pep585-upgrade
|
||||||
|
rev: 'v1.0'
|
||||||
|
hooks:
|
||||||
|
- id: upgrade-type-hints
|
||||||
|
args: [ '--futures=true' ]
|
||||||
|
|
||||||
|
- repo: https://github.com/MarcoGorelli/auto-walrus
|
||||||
|
rev: 0.3.4
|
||||||
|
hooks:
|
||||||
|
- id: auto-walrus
|
||||||
|
|
||||||
|
- repo: https://github.com/python-jsonschema/check-jsonschema
|
||||||
|
rev: 0.30.0
|
||||||
|
hooks:
|
||||||
|
- id: check-github-workflows
|
||||||
|
- id: check-github-actions
|
||||||
|
- id: check-dependabot
|
||||||
|
- id: check-readthedocs
|
||||||
|
|
||||||
|
- repo: https://github.com/dannysepler/rm_unneeded_f_str
|
||||||
|
rev: v0.2.0
|
||||||
|
hooks:
|
||||||
|
- id: rm-unneeded-f-str
|
||||||
|
|
||||||
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
||||||
|
rev: "v0.8.6"
|
||||||
|
hooks:
|
||||||
|
- id: ruff
|
||||||
|
types_or: [ python, pyi, jupyter ]
|
||||||
|
args: [ --fix, --show-fixes , --line-length=120 ] # --unsafe-fixes,
|
||||||
|
# Run the formatter.
|
||||||
|
- id: ruff-format
|
||||||
|
types_or: [ python, pyi, jupyter ]
|
@ -2,8 +2,8 @@
|
|||||||
``pipreqs`` - Generate requirements.txt file for any project based on imports
|
``pipreqs`` - Generate requirements.txt file for any project based on imports
|
||||||
=============================================================================
|
=============================================================================
|
||||||
|
|
||||||
.. image:: https://img.shields.io/travis/bndr/pipreqs.svg
|
.. image:: https://github.com/bndr/pipreqs/actions/workflows/tests.yml/badge.svg
|
||||||
:target: https://travis-ci.org/bndr/pipreqs
|
:target: https://github.com/bndr/pipreqs/actions/workflows/tests.yml
|
||||||
|
|
||||||
|
|
||||||
.. image:: https://img.shields.io/pypi/v/pipreqs.svg
|
.. image:: https://img.shields.io/pypi/v/pipreqs.svg
|
||||||
|
@ -36,6 +36,7 @@ Pyxides:astro_pyxis
|
|||||||
QtCore:PySide
|
QtCore:PySide
|
||||||
S3:s3cmd
|
S3:s3cmd
|
||||||
SCons:pystick
|
SCons:pystick
|
||||||
|
speech_recognition:SpeechRecognition
|
||||||
Shared:Zope2
|
Shared:Zope2
|
||||||
Signals:Zope2
|
Signals:Zope2
|
||||||
Stemmer:PyStemmer
|
Stemmer:PyStemmer
|
||||||
@ -582,6 +583,7 @@ ctff:tff
|
|||||||
cups:pycups
|
cups:pycups
|
||||||
curator:elasticsearch_curator
|
curator:elasticsearch_curator
|
||||||
curl:pycurl
|
curl:pycurl
|
||||||
|
cv2:opencv-python
|
||||||
daemon:python_daemon
|
daemon:python_daemon
|
||||||
dare:DARE
|
dare:DARE
|
||||||
dateutil:python_dateutil
|
dateutil:python_dateutil
|
||||||
@ -720,6 +722,7 @@ jaraco:jaraco.util
|
|||||||
jinja2:Jinja2
|
jinja2:Jinja2
|
||||||
jiracli:jira_cli
|
jiracli:jira_cli
|
||||||
johnny:johnny_cache
|
johnny:johnny_cache
|
||||||
|
jose:python_jose
|
||||||
jpgrid:python_geohash
|
jpgrid:python_geohash
|
||||||
jpiarea:python_geohash
|
jpiarea:python_geohash
|
||||||
jpype:JPype1
|
jpype:JPype1
|
||||||
@ -975,6 +978,7 @@ pysynth_samp:PySynth
|
|||||||
pythongettext:python_gettext
|
pythongettext:python_gettext
|
||||||
pythonjsonlogger:python_json_logger
|
pythonjsonlogger:python_json_logger
|
||||||
pyutilib:PyUtilib
|
pyutilib:PyUtilib
|
||||||
|
pywintypes:pywin32
|
||||||
pyximport:Cython
|
pyximport:Cython
|
||||||
qs:qserve
|
qs:qserve
|
||||||
quadtree:python_geohash
|
quadtree:python_geohash
|
||||||
|
@ -31,7 +31,7 @@ Options:
|
|||||||
--clean <file> Clean up requirements.txt by removing modules
|
--clean <file> Clean up requirements.txt by removing modules
|
||||||
that are not imported in project
|
that are not imported in project
|
||||||
--mode <scheme> Enables dynamic versioning with <compat>,
|
--mode <scheme> Enables dynamic versioning with <compat>,
|
||||||
<gt> or <non-pin> schemes.
|
<gt> or <no-pin> schemes.
|
||||||
<compat> | e.g. Flask~=1.1.2
|
<compat> | e.g. Flask~=1.1.2
|
||||||
<gt> | e.g. Flask>=1.1.2
|
<gt> | e.g. Flask>=1.1.2
|
||||||
<no-pin> | e.g. Flask
|
<no-pin> | e.g. Flask
|
||||||
@ -110,6 +110,7 @@ def get_all_imports(path, encoding="utf-8", extra_ignore_dirs=None, follow_links
|
|||||||
"__pycache__",
|
"__pycache__",
|
||||||
"env",
|
"env",
|
||||||
"venv",
|
"venv",
|
||||||
|
".venv",
|
||||||
".ipynb_checkpoints",
|
".ipynb_checkpoints",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
@ -1,11 +1,16 @@
|
|||||||
[tool.poetry]
|
[project]
|
||||||
name = "pipreqs"
|
name = "pipreqs"
|
||||||
version = "0.5.0"
|
version = "0.5.0"
|
||||||
description = "Pip requirements.txt generator based on imports in project"
|
description = "Pip requirements.txt generator based on imports in project"
|
||||||
authors = ["Vadim Kravcenko <vadim.kravcenko@gmail.com>"]
|
authors = [
|
||||||
|
{ name = "Vadim Kravcenko", email = "vadim.kravcenko@gmail.com" }
|
||||||
|
]
|
||||||
|
maintainers = [
|
||||||
|
{name = "Jonas Eschle", email = "jonas.eschle@gmail.com"}
|
||||||
|
]
|
||||||
license = "Apache-2.0"
|
license = "Apache-2.0"
|
||||||
readme = ["README.rst", "HISTORY.rst"]
|
readme = "README.rst"
|
||||||
packages = [{include = "pipreqs"}]
|
packages = [{ include = "pipreqs" }]
|
||||||
repository = "https://github.com/bndr/pipreqs"
|
repository = "https://github.com/bndr/pipreqs"
|
||||||
keywords = ["pip", "requirements", "imports"]
|
keywords = ["pip", "requirements", "imports"]
|
||||||
classifiers = [
|
classifiers = [
|
||||||
@ -14,30 +19,35 @@ classifiers = [
|
|||||||
"License :: OSI Approved :: Apache Software License",
|
"License :: OSI Approved :: Apache Software License",
|
||||||
"Natural Language :: English",
|
"Natural Language :: English",
|
||||||
"Programming Language :: Python :: 3",
|
"Programming Language :: Python :: 3",
|
||||||
"Programming Language :: Python :: 3.8",
|
|
||||||
"Programming Language :: Python :: 3.9",
|
"Programming Language :: Python :: 3.9",
|
||||||
"Programming Language :: Python :: 3.10",
|
"Programming Language :: Python :: 3.10",
|
||||||
"Programming Language :: Python :: 3.11",
|
"Programming Language :: Python :: 3.11",
|
||||||
"Programming Language :: Python :: 3.12",
|
"Programming Language :: Python :: 3.12",
|
||||||
"Programming Language :: Python :: 3.13"
|
"Programming Language :: Python :: 3.13",
|
||||||
]
|
]
|
||||||
|
requires-python = ">=3.9, <3.14"
|
||||||
[tool.poetry.scripts]
|
dependencies = [
|
||||||
pipreqs = "pipreqs.pipreqs:main"
|
"yarg>=0.1.9",
|
||||||
|
"docopt>=0.6.2",
|
||||||
[tool.poetry.dependencies]
|
"nbconvert>=7.11.0",
|
||||||
python = ">=3.8.1,<3.14"
|
"ipython>=8.12.3",
|
||||||
yarg = "0.1.9"
|
]
|
||||||
docopt = "0.6.2"
|
[project.optional-dependencies]
|
||||||
nbconvert = "^7.11.0"
|
dev = [
|
||||||
ipython = "8.12.3"
|
"flake8>=6.1.0",
|
||||||
|
"tox>=4.11.3",
|
||||||
[tool.poetry.group.dev.dependencies]
|
"coverage>=7.3.2",
|
||||||
|
"sphinx>=7.2.6;python_version>='3.9'",
|
||||||
|
]
|
||||||
|
[tool.poetry.group.dev.dependencies] # for legacy usage
|
||||||
flake8 = "^6.1.0"
|
flake8 = "^6.1.0"
|
||||||
tox = "^4.11.3"
|
tox = "^4.11.3"
|
||||||
coverage = "^7.3.2"
|
coverage = "^7.3.2"
|
||||||
sphinx = { version = "^7.2.6", python = ">=3.9" }
|
sphinx = { version = "^7.2.6", python = ">=3.9" }
|
||||||
|
|
||||||
|
[project.scripts]
|
||||||
|
pipreqs = "pipreqs.pipreqs:main"
|
||||||
|
|
||||||
[build-system]
|
[build-system]
|
||||||
requires = ["poetry-core"]
|
requires = ["poetry-core>=2.0.0,<3.0.0"]
|
||||||
build-backend = "poetry.core.masonry.api"
|
build-backend = "poetry.core.masonry.api"
|
||||||
|
5
tox.ini
5
tox.ini
@ -1,10 +1,9 @@
|
|||||||
[tox]
|
[tox]
|
||||||
isolated_build = true
|
isolated_build = true
|
||||||
envlist = py38, py39, py310, py311, py312, py313, pypy3, flake8
|
envlist = py39, py310, py311, py312, py313, pypy3, flake8
|
||||||
|
|
||||||
[gh-actions]
|
[gh-actions]
|
||||||
python =
|
python =
|
||||||
3.8: py38
|
|
||||||
3.9: py39
|
3.9: py39
|
||||||
3.10: py310
|
3.10: py310
|
||||||
3.11: py311
|
3.11: py311
|
||||||
@ -15,7 +14,7 @@ python =
|
|||||||
[testenv]
|
[testenv]
|
||||||
setenv =
|
setenv =
|
||||||
PYTHONPATH = {toxinidir}:{toxinidir}/pipreqs
|
PYTHONPATH = {toxinidir}:{toxinidir}/pipreqs
|
||||||
commands =
|
commands =
|
||||||
python -m unittest discover
|
python -m unittest discover
|
||||||
|
|
||||||
[testenv:flake8]
|
[testenv:flake8]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user