A Python-based migration framework for Cosmo-Tech APIs versions, designed to facilitate smooth transitions between different API versions in the Cosmo Tech ecosystem.
- Automated migration paths between Cosmo-Tech API versions
- Built on the Cosmo Tech Acceleration Library
- Command-line interface via
csm-duq
command - Extensive documentation and migration guides
- Python 3.11 or higher
- pip (Python package installer)
- git (for version control and pre-commit hooks)
-
Clone the repository:
git clone https://github.com/Cosmo-Tech/cosmo-data-update-quest.git cd cosmo-data-update-quest
-
Create and activate a virtual environment:
python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
-
Install the package with all dependencies:
pip install -e .[all]
-
Install pre-commit hooks:
pre-commit install
This project uses Black for code formatting with the following configuration:
- Line length: 120 characters
- Target Python version: 3.11
- Configured via
pyproject.toml
We use pre-commit hooks to ensure code quality:
- trailing-whitespace: Removes trailing whitespace
- end-of-file-fixer: Ensures files end with a newline
- check-added-large-files: Prevents large files from being committed
- black: Formats Python code
The documentation is built using MkDocs with the Material theme. To build and serve locally:
pip install -e .[doc] # Install documentation dependencies
mkdocs serve # Start local documentation server
Visit http://127.0.0.1:8000
to view the documentation.
Basic usage of the command-line tool:
csm-duq --help # Show available commands
For detailed usage instructions and migration guides, please refer to the official documentation.
This project is licensed under the terms included in the LICENSE file.