Metadata-Version: 2.1
Name: pyvast
Version: 3.0.3
Summary: A security telemetry engine for detection and response
Home-page: https://vast.io
License: BSD-3-Clause
Author: Tenzir
Author-email: engineering@tenzir.com
Maintainer: Tenzir
Maintainer-email: engineering@tenzir.com
Requires-Python: >=3.10,<4.0
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Plugins
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Scientific/Engineering :: Information Analysis
Classifier: Topic :: Scientific/Engineering :: Interface Engine/Protocol Translator
Classifier: Topic :: Security
Classifier: Topic :: Software Development :: Object Brokering
Classifier: Topic :: System :: Distributed Computing
Provides-Extra: thehive
Requires-Dist: aiohttp (>=3.8,<4.0) ; extra == "thehive"
Requires-Dist: coloredlogs (>=15.0,<16.0)
Requires-Dist: dynaconf (>=3.1,<4.0)
Requires-Dist: numpy (>=1.24,<2.0)
Requires-Dist: pandas (>=1.5,<2.0)
Requires-Dist: pyarrow (>=11.0,<12.0)
Project-URL: Documentation, https://vast.io/docs
Project-URL: Repository, https://github.com/tenzir/vast
Description-Content-Type: text/markdown

# VAST Python

The Python package of VAST provides a flexible control plane to integrate VAST
with other security tools.

> **Note**
> The Python effort is still highly experimental and subject to rapid change.
> Please do not consider it for production use.

## Usage

To get started, clone the VAST repository and install the Python package via
[Poetry](https://python-poetry.org/docs/):

```bash
git clone https://github.com/tenzir/vast.git
cd vast/python
poetry install
```

## Development

We recommend that you work with an editable installation, which is the default
for `poetry install`.

### Unit Tests

Run the unit tests via pytest:

```bash
poetry run pytest
```

### Integration Tests

Run the integrations tests via Docker Compose and pytest:

```bash
./docker-poetry-run.sh pytest -v
```

## Packaging

The following instructions concern maintainers who want to publish the Python
package to PyPI.

> **Note**
> Our releasing scripts and CI run these steps automatically. You do not need to
> intervene anywhere. The instructions below merely document the steps taken.

### Bump the version

Prior to releasing a new version, bump the version, e.g.:

```bash
poetry version 2.3.1
```

This updates the `pyproject.toml` file.

### Publish to Test PyPI

1. Add a Test PyPi repository:

   ```bash
   poetry config repositories.test-pypi https://test.pypi.org/legacy/
   ```

2. Get the token from <https://test.pypi.org/manage/account/token/>.

3. Store the token:

  ```bash
  poetry config pypi-token.test-pypi pypi-XXXXXXXX
  ```

4. Publish:
  
   ```bash
   poetry publish --build -r test-pypi
   ```

### Publish to PyPI

1. Get the token from <https://pypi.org/manage/account/token/>.

2. Store the token:

  ```bash
  poetry config pypi-token.pypi pypi-XXXXXXXX
  ```

3. Publish

   ```bash
   poetry publish --build
   ```

