Skip to main content

No project description provided

Project description

pip-split-requirements

PyPI - Version PyPI - Python Version


Split a pip requirement files according to regular expression patterns rules.

Table of Contents

Installation

pipx install pip-split-requirements

Quick start

Assume the following requirements.txt:

--find-links wheelhouse
pkga
git+https://github.com/some/project
pkgb

Running

pip-split-requirements -g slow:git requirements.txt

Will create requirementsgroup-slow.txt:

--find-links wheelhouse
git+https://github.com/some/project

and requirementsgroup-other.txt:

--find-links wheelhouse
pkga
pkgb

CLI Usage

Usage: pip-split-requirements [OPTIONS] REQUIREMENTS_FILE...

  Split a pip requirements file into multiple files according to patterns.

  Patterns are regular expressions against which requirement lines are
  searched to determine if they belong to a group. Group specs are evaluated
  in order, and the first match determines in which group the line goes.

  Comment lines are ignored.

  Option lines are emitted in all groups.

Arguments:
  REQUIREMENTS_FILE...  [required]

Options:
  -g, --group-spec TEXT           Group specifications in form name:pattern.
  -p, --prefix TEXT               Each requirements group file will be named
                                  {prefix}-{group_name}.txt. The prefix can
                                  contain path separators, to generate files
                                  into a chosen directory.  [default:
                                  requirementsgroup]
  --default-group / --no-default-group
                                  Automatically append a group named 'other',
                                  matching all lines not matched by other
                                  groups.  [default: default-group]
  --remove-empty / --no-remove-empty
                                  Remove empty requirements group files.
                                  [default: no-remove-empty]
  --help                          Show this message and exit.

Usage as a pre-commit hook

The following section of .pre-commit-config.yaml will split requirements.txt into a group named vcs with requirements containing the word git and another group with everything else, as build/reqgroup-*.txt.

  - repo: https://github.com/sbidoul/pip-split-requirements
    rev: v0.1.0
    hooks:
      - id: pip-split-requirements
        files: ^requirements\.txt$
        args:
          - --prefix=build/reqgroup
          - --group-spec=vcs:git

License

pip-split-requirements is distributed under the terms of the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pip_split_requirements-0.5.0.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

pip_split_requirements-0.5.0-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file pip_split_requirements-0.5.0.tar.gz.

File metadata

File hashes

Hashes for pip_split_requirements-0.5.0.tar.gz
Algorithm Hash digest
SHA256 12f93797417f58402f64e2aaf298f5887d5b27716a83036b80b4e108cc3f03ac
MD5 fd910fd2cc6a4edfc892c1e08c5f867f
BLAKE2b-256 cbe2a94859da350173faa879d151b8e7749501a811505a35f1417f3b9c159179

See more details on using hashes here.

File details

Details for the file pip_split_requirements-0.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pip_split_requirements-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a0f1f3b519e0ddcf57492faec33650fd3d698af35fca9d6eaff1eec37f9b946b
MD5 07277af91f4c31f248e308f6363bf7d1
BLAKE2b-256 951cb400f5fafea056496e6b54b5eec9d89cae40d5aef3aa6fb79b0589760312

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page