Metadata-Version: 2.4
Name: pms-integration-core
Version: 25.8
Summary: PMS Integration Core Framework
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: pms-integration-utils
Requires-Dist: simple-salesforce
Requires-Dist: avro
Requires-Dist: azure-identity
Requires-Dist: azure-keyvault-secrets
Requires-Dist: bitstring
Requires-Dist: fsspec
Requires-Dist: grpcio>=1.68.1
Requires-Dist: grpcio-tools<=1.70.0
Requires-Dist: httpx_auth
Requires-Dist: httpx-ntlm
Requires-Dist: jsonlines
Requires-Dist: openpyxl
Requires-Dist: xlrd
Requires-Dist: pandas
Requires-Dist: pendulum
Requires-Dist: PyYAML
Requires-Dist: python-dotenv
Requires-Dist: psycopg[binary,pool]
Requires-Dist: prometheus_client
Requires-Dist: dlt[databricks,duckdb]
Requires-Dist: tabulate
Provides-Extra: dev
Requires-Dist: pms-integration-utils[dev]; extra == "dev"
Provides-Extra: test
Requires-Dist: pms-integration-utils[test]; extra == "test"
Requires-Dist: pytest_httpx; extra == "test"
Requires-Dist: requests-mock; 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`
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.
