Metadata-Version: 2.1
Name: third-party-imports
Version: 0.0.7
Classifier: Development Status :: 3 - Alpha
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
License-File: LICENSE
Summary: Find all third-party packages imported into your python project.
Keywords: import,finder
Home-Page: https://github.com/saadmk11/python-third-party-imports
Author: Maksudul Haque <saad.mk112@gmail.com>
Author-email: Maksudul Haque <saad.mk112@gmail.com>
Maintainer-email: Maksudul Haque <saad.mk112@gmail.com>
License: MIT
Requires-Python: >=3.7
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: repository, https://github.com/saadmk11/python-third-party-imports

# python-third-party-imports

This is a **Python** **CLI** tool built with **Rust** that finds all third-party packages imported into your Python project.

# Install

You can install this package via pip.

```console
pip install third-party-imports
```

# Usage

### Run:

**Check a directory:**

```console
third-party-imports path/to/project/dir
```

**Check a directory with extra files:**

```console
third-party-imports --extra-file-paths path/to/project/dir/foo.sh path/to/project/dir
```

**Note:** You can use `--extra-file-paths` option to include files that do not contain `.py` or `.pyi` extension.


**Check a file:**

```console
third-party-imports --project-root path/to/project/dir/ path/to/project/dir/foo/main.py
```

**Note:** If the file is not located in the project root directory,
then you need to use `--project-root` option to specify where the project root directory is located.

### Help:

```console
Find all third-party packages imported into your python project.

Usage: third-party-imports [OPTIONS] <PATH>

Arguments:
  <PATH>  Path to a file or directory to check

Options:
  -p, --project-root <PROJECT_ROOT>          Path to the project's root directory
  -e, --extra-file-paths <EXTRA_FILE_PATHS>  Extra file paths to check
  -h, --help                                 Print help
  -V, --version                              Print version
```

# Example

```console
third-party-imports examples/
```

**Output:**

```console
Found '4' third-party package imports in '5' files. (Took 920.50µs)

celery
django
pandas
requests
```

# Development

### Run using Cargo

```console
cargo +nightly run -- path/to/project/dir
```

### Code Format

```console
cargo +nightly fmt
```

### Run Tests

```console
cargo +nightly test
```

### Install Package in current `virtualenv`

```console
maturin develop
```

# License

The code in this project is released under the [MIT License](LICENSE).

