Name | capella-diff-tools JSON |
Version |
1.1.1
JSON |
| download |
home_page | None |
Summary | Tools for comparing different versions of a Capella model |
upload_time | 2024-07-31 11:32:38 |
maintainer | None |
docs_url | None |
author | DB Netz AG |
requires_python | <3.13,>=3.11 |
license | Apache-2.0 |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
<!--
~ Copyright DB Netz AG and contributors
~ SPDX-License-Identifier: Apache-2.0
-->
# Capella Diff Tools
[![Lint](https://github.com/DSD-DBS/capella-diff-tools/actions/workflows/lint.yml/badge.svg)](https://github.com/DSD-DBS/capella-diff-tools/actions/workflows/lint.yml)
[![Apache 2.0 License](https://img.shields.io/github/license/dsd-dbs/capella-diff-tools)](LICENSES/Apache-2.0.txt)
[![Code style: Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Imports: isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336)](https://pycqa.github.io/isort/)
*Tools for comparing different versions of a Capella model*
![Screenshot of the HTML report comparing two versions of the coffee-machine demo model](docs/source/_static/screenshot.png)
# Quick start
Run the `capella-diff-tool` with a Git repo and two versions, being either
commit hashes or branch names:
```sh
capella-diff-tool coffee-machine index-links/base index-links/left
```
```yaml
diagrams:
sa:
Missions Capabilities Blank:
modified:
- display_name: '[MCB] Capabilities'
uuid: _J1uyIFucEe2iJbuWznnyfw
System Architecture Blank:
modified:
- display_name: '[SAB] make coffee'
uuid: _MWuNkFuvEe2iJbuWznnyfw
System Data Flow Blank:
modified:
- display_name: '[SDFB] make coffee'
uuid: _FOutoFujEe2iJbuWznnyfw
metadata:
model:
path: git+https://github.com/DSD-DBS/coffee-machine.git
new_revision:
author: martinlehmann
date: 2023-09-27 14:31:03+02:00
description: 'fix: Inflation is real, we cannot afford real coffee [skip ci]'
hash: 908a6b909dcdc071ffc0c424502d8f47d82d9f49
revision: index-links/left
old_revision:
author: martinlehmann
date: 2023-09-27 14:30:47+02:00
description: 'refactor: Fragment out SA and OA [skip ci]'
hash: cb0918af3df822344a80eda3fef6463bcf4c36f3
revision: index-links/base
objects:
sa:
SystemFunction:
modified:
- attributes:
name:
current: make black water
previous: make coffee
display_name: make black water
uuid: 8b0d19df-7446-4c3a-98e7-4a739c974059
```
The CLI's first argument accepts the name of a [known model], a local folder,
or JSON describing a remote model. Currently it only supports Git, but a
[Python API] is available for more advanced comparisons.
[known model]: https://dsd-dbs.github.io/py-capellambse/start/specifying-models.html#known-models
[Python API]: #api-documentation
The `capella-diff-tool` can also generate a human-friendly report in HTML form.
Use the `-r` / `--report` flag and specify a filename to write the HTML report:
```sh
capella-diff-tool coffee-machine index-links/base index-links/left -r coffee-machine.html
```
# Installation
You can install the latest released version directly from PyPI.
```sh
pip install capella-diff-tools
```
To set up a development environment, clone the project and install it into a
virtual environment.
```sh
git clone https://github.com/DSD-DBS/capella-diff-tools
cd capella-diff-tools
python -m venv .venv
source .venv/bin/activate.sh # for Linux / Mac
.venv\Scripts\activate # for Windows
pip install -U pip pre-commit
pip install -e '.[docs,test]'
pre-commit install
```
# API Documentation
The `capella_diff_tools` Python package exposes a Python API, which can be used
to compare arbitrary models programmatically. Documentation for this API is
[available on Github pages](https://dsd-dbs.github.io/capella-diff-tools).
# Contributing
We'd love to see your bug reports and improvement suggestions! Please take a
look at our [guidelines for contributors](CONTRIBUTING.md) for details.
# Licenses
This project is compliant with the
[REUSE Specification Version 3.0](https://git.fsfe.org/reuse/docs/src/commit/d173a27231a36e1a2a3af07421f5e557ae0fec46/spec.md).
Copyright DB Netz AG, licensed under Apache 2.0 (see full text in
[LICENSES/Apache-2.0.txt](LICENSES/Apache-2.0.txt))
Dot-files are licensed under CC0-1.0 (see full text in
[LICENSES/CC0-1.0.txt](LICENSES/CC0-1.0.txt))
Raw data
{
"_id": null,
"home_page": null,
"name": "capella-diff-tools",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.13,>=3.11",
"maintainer_email": null,
"keywords": null,
"author": "DB Netz AG",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/aa/e4/5cb6da2799754526be4e1f6ff46df4150ef307ffbe74efe84c914753c823/capella_diff_tools-1.1.1.tar.gz",
"platform": "any",
"description": "<!--\n ~ Copyright DB Netz AG and contributors\n ~ SPDX-License-Identifier: Apache-2.0\n -->\n\n# Capella Diff Tools\n\n[![Lint](https://github.com/DSD-DBS/capella-diff-tools/actions/workflows/lint.yml/badge.svg)](https://github.com/DSD-DBS/capella-diff-tools/actions/workflows/lint.yml)\n[![Apache 2.0 License](https://img.shields.io/github/license/dsd-dbs/capella-diff-tools)](LICENSES/Apache-2.0.txt)\n[![Code style: Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Imports: isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336)](https://pycqa.github.io/isort/)\n\n*Tools for comparing different versions of a Capella model*\n\n![Screenshot of the HTML report comparing two versions of the coffee-machine demo model](docs/source/_static/screenshot.png)\n\n# Quick start\n\nRun the `capella-diff-tool` with a Git repo and two versions, being either\ncommit hashes or branch names:\n\n```sh\ncapella-diff-tool coffee-machine index-links/base index-links/left\n```\n\n```yaml\ndiagrams:\n sa:\n Missions Capabilities Blank:\n modified:\n - display_name: '[MCB] Capabilities'\n uuid: _J1uyIFucEe2iJbuWznnyfw\n System Architecture Blank:\n modified:\n - display_name: '[SAB] make coffee'\n uuid: _MWuNkFuvEe2iJbuWznnyfw\n System Data Flow Blank:\n modified:\n - display_name: '[SDFB] make coffee'\n uuid: _FOutoFujEe2iJbuWznnyfw\nmetadata:\n model:\n path: git+https://github.com/DSD-DBS/coffee-machine.git\n new_revision:\n author: martinlehmann\n date: 2023-09-27 14:31:03+02:00\n description: 'fix: Inflation is real, we cannot afford real coffee [skip ci]'\n hash: 908a6b909dcdc071ffc0c424502d8f47d82d9f49\n revision: index-links/left\n old_revision:\n author: martinlehmann\n date: 2023-09-27 14:30:47+02:00\n description: 'refactor: Fragment out SA and OA [skip ci]'\n hash: cb0918af3df822344a80eda3fef6463bcf4c36f3\n revision: index-links/base\nobjects:\n sa:\n SystemFunction:\n modified:\n - attributes:\n name:\n current: make black water\n previous: make coffee\n display_name: make black water\n uuid: 8b0d19df-7446-4c3a-98e7-4a739c974059\n```\n\nThe CLI's first argument accepts the name of a [known model], a local folder,\nor JSON describing a remote model. Currently it only supports Git, but a\n[Python API] is available for more advanced comparisons.\n\n[known model]: https://dsd-dbs.github.io/py-capellambse/start/specifying-models.html#known-models\n[Python API]: #api-documentation\n\nThe `capella-diff-tool` can also generate a human-friendly report in HTML form.\nUse the `-r` / `--report` flag and specify a filename to write the HTML report:\n\n```sh\ncapella-diff-tool coffee-machine index-links/base index-links/left -r coffee-machine.html\n```\n\n# Installation\n\nYou can install the latest released version directly from PyPI.\n\n```sh\npip install capella-diff-tools\n```\n\nTo set up a development environment, clone the project and install it into a\nvirtual environment.\n\n```sh\ngit clone https://github.com/DSD-DBS/capella-diff-tools\ncd capella-diff-tools\npython -m venv .venv\n\nsource .venv/bin/activate.sh # for Linux / Mac\n.venv\\Scripts\\activate # for Windows\n\npip install -U pip pre-commit\npip install -e '.[docs,test]'\npre-commit install\n```\n\n# API Documentation\n\nThe `capella_diff_tools` Python package exposes a Python API, which can be used\nto compare arbitrary models programmatically. Documentation for this API is\n[available on Github pages](https://dsd-dbs.github.io/capella-diff-tools).\n\n# Contributing\n\nWe'd love to see your bug reports and improvement suggestions! Please take a\nlook at our [guidelines for contributors](CONTRIBUTING.md) for details.\n\n# Licenses\n\nThis project is compliant with the\n[REUSE Specification Version 3.0](https://git.fsfe.org/reuse/docs/src/commit/d173a27231a36e1a2a3af07421f5e557ae0fec46/spec.md).\n\nCopyright DB Netz AG, licensed under Apache 2.0 (see full text in\n[LICENSES/Apache-2.0.txt](LICENSES/Apache-2.0.txt))\n\nDot-files are licensed under CC0-1.0 (see full text in\n[LICENSES/CC0-1.0.txt](LICENSES/CC0-1.0.txt))\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "Tools for comparing different versions of a Capella model",
"version": "1.1.1",
"project_urls": {
"Documentation": "https://dsd-dbs.github.io/capella-diff-tools",
"Homepage": "https://github.com/DSD-DBS/capella-diff-tools"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2b79f8b3d4fff8cfbf438b77a1dd08b81ebccc2323a57a43fcf84e660a44522e",
"md5": "2d4b2b02d68c08e4c6c55253c4531bb2",
"sha256": "aab6bade895c21e47caa923b3b41a5a4af0e2b648b545159c50cdac05f52c2cc"
},
"downloads": -1,
"filename": "capella_diff_tools-1.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "2d4b2b02d68c08e4c6c55253c4531bb2",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.13,>=3.11",
"size": 13529,
"upload_time": "2024-07-31T11:32:37",
"upload_time_iso_8601": "2024-07-31T11:32:37.130785Z",
"url": "https://files.pythonhosted.org/packages/2b/79/f8b3d4fff8cfbf438b77a1dd08b81ebccc2323a57a43fcf84e660a44522e/capella_diff_tools-1.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "aae45cb6da2799754526be4e1f6ff46df4150ef307ffbe74efe84c914753c823",
"md5": "480362a486ede8dc160f53ddaa05a977",
"sha256": "8e001ac4440f0efb30d22e1dee0df4628e1ce18c4043fe8dd8f02ecf27f91598"
},
"downloads": -1,
"filename": "capella_diff_tools-1.1.1.tar.gz",
"has_sig": false,
"md5_digest": "480362a486ede8dc160f53ddaa05a977",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.13,>=3.11",
"size": 93401,
"upload_time": "2024-07-31T11:32:38",
"upload_time_iso_8601": "2024-07-31T11:32:38.728310Z",
"url": "https://files.pythonhosted.org/packages/aa/e4/5cb6da2799754526be4e1f6ff46df4150ef307ffbe74efe84c914753c823/capella_diff_tools-1.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-07-31 11:32:38",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "DSD-DBS",
"github_project": "capella-diff-tools",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "capella-diff-tools"
}