Metadata-Version: 2.4
Name: pms-integration-utils
Version: 25.8
Summary: PMS Integration Utils
Author-email: Sandeep Kadyan <sandeep.kadyan@corient.com>
License: Proprietary Software (c) 2025-2026 data-integration-libs maintainer.
        
Classifier: Development Status :: 4 - Beta
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: typer
Requires-Dist: xmlschema
Requires-Dist: fsspec
Requires-Dist: pydantic
Requires-Dist: pydantic-extra-types
Requires-Dist: pendulum
Requires-Dist: pyyaml
Requires-Dist: zstandard
Requires-Dist: sshtunnel
Requires-Dist: tenacity
Provides-Extra: dev
Requires-Dist: pip-tools; extra == "dev"
Requires-Dist: twine; extra == "dev"
Requires-Dist: pre-commit; extra == "dev"
Requires-Dist: Flake8-pyproject; extra == "dev"
Requires-Dist: Flake8-html; extra == "dev"
Requires-Dist: flake8-formatter-junit-xml; extra == "dev"
Requires-Dist: pipdeptree; extra == "dev"
Requires-Dist: tabulate; extra == "dev"
Provides-Extra: test
Requires-Dist: pytest-mock; extra == "test"
Requires-Dist: pytest-cov; extra == "test"
Requires-Dist: pytest-env; extra == "test"
Requires-Dist: pytest-html; extra == "test"
Requires-Dist: flake8-formatter-junit-xml; extra == "test"
Dynamic: license-file

# Introduction

The foundational utilities for PMS integration projects.

# Build

1. Create virtual environment (with python > 3.12)
2. make build output directory `mkdir target`
3. Install project locally (for development) `python3 -m pip install -e .[test,dev]`
4. Run code linting (static code analysis) `python3 -m flake8 --format=html --htmldir=reports/flake8`
5. Run unit test `python3 -m pytest`
6. Or run unit test with coverage `python3 -m pytest --cov`
7. Package Source and Wheel distributions:

   `python3 -c "import shutil, os;shutil.rmtree('target/dist', True);os.makedirs('target', exist_ok=True)"`

   `python3 -m build -n --wheel -o target/dist "-C--build-option=--build-number=1"`
8. [Optional] Source Distribution

   `python3 -m build -n --sdist -o target/dist "-C=--build-option="`
9. Upload artifacts
   `python3 -m twine upload target/dist/*.whl --verbose`

# CI/CD
We need to publish the html/json report of static code analysis, unit test cases and coverage reports.
