development-framework-cli 1.7.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. development_framework_cli-1.7.3/.github/CODEOWNERS +6 -0
  2. development_framework_cli-1.7.3/.github/ISSUE_TEMPLATE/bug-report.md +13 -0
  3. development_framework_cli-1.7.3/.github/ISSUE_TEMPLATE/code-maintenance.md +14 -0
  4. development_framework_cli-1.7.3/.github/ISSUE_TEMPLATE/feature-request.md +13 -0
  5. development_framework_cli-1.7.3/.github/dependabot.yml +16 -0
  6. development_framework_cli-1.7.3/.github/pull_request_template.md +6 -0
  7. development_framework_cli-1.7.3/.github/workflows/create-release-pr.yaml +26 -0
  8. development_framework_cli-1.7.3/.github/workflows/on-main-push.yaml +25 -0
  9. development_framework_cli-1.7.3/.github/workflows/on-push.yaml +14 -0
  10. development_framework_cli-1.7.3/.github/workflows/publish.yaml +28 -0
  11. development_framework_cli-1.7.3/.github/workflows/stale.yml +22 -0
  12. development_framework_cli-1.7.3/.github/workflows/tests.yaml +84 -0
  13. development_framework_cli-1.7.3/.gitignore +137 -0
  14. development_framework_cli-1.7.3/.pre-commit-config.yaml +80 -0
  15. development_framework_cli-1.7.3/.release-please-manifest.json +3 -0
  16. development_framework_cli-1.7.3/CHANGELOG.md +234 -0
  17. development_framework_cli-1.7.3/LICENSE +21 -0
  18. development_framework_cli-1.7.3/PKG-INFO +141 -0
  19. development_framework_cli-1.7.3/README.md +115 -0
  20. development_framework_cli-1.7.3/SECURITY.md +18 -0
  21. development_framework_cli-1.7.3/dm_cli/__init__.py +1 -0
  22. development_framework_cli-1.7.3/dm_cli/cli.py +180 -0
  23. development_framework_cli-1.7.3/dm_cli/command_group/__init__.py +0 -0
  24. development_framework_cli-1.7.3/dm_cli/command_group/data_source.py +176 -0
  25. development_framework_cli-1.7.3/dm_cli/command_group/entities.py +116 -0
  26. development_framework_cli-1.7.3/dm_cli/dmss.py +104 -0
  27. development_framework_cli-1.7.3/dm_cli/dmss_api/__init__.py +27 -0
  28. development_framework_cli-1.7.3/dm_cli/dmss_api/api/__init__.py +3 -0
  29. development_framework_cli-1.7.3/dm_cli/dmss_api/api/access_control_api.py +349 -0
  30. development_framework_cli-1.7.3/dm_cli/dmss_api/api/attribute_api.py +175 -0
  31. development_framework_cli-1.7.3/dm_cli/dmss_api/api/blob_api.py +344 -0
  32. development_framework_cli-1.7.3/dm_cli/dmss_api/api/blueprint_api.py +326 -0
  33. development_framework_cli-1.7.3/dm_cli/dmss_api/api/datasource_api.py +448 -0
  34. development_framework_cli-1.7.3/dm_cli/dmss_api/api/default_api.py +4439 -0
  35. development_framework_cli-1.7.3/dm_cli/dmss_api/api/document_api.py +922 -0
  36. development_framework_cli-1.7.3/dm_cli/dmss_api/api/entity_api.py +464 -0
  37. development_framework_cli-1.7.3/dm_cli/dmss_api/api/export_api.py +313 -0
  38. development_framework_cli-1.7.3/dm_cli/dmss_api/api/file_api.py +197 -0
  39. development_framework_cli-1.7.3/dm_cli/dmss_api/api/health_check_api.py +160 -0
  40. development_framework_cli-1.7.3/dm_cli/dmss_api/api/lookup_table_api.py +323 -0
  41. development_framework_cli-1.7.3/dm_cli/dmss_api/api/meta_api.py +185 -0
  42. development_framework_cli-1.7.3/dm_cli/dmss_api/api/personal_access_token_api.py +433 -0
  43. development_framework_cli-1.7.3/dm_cli/dmss_api/api/reference_api.py +174 -0
  44. development_framework_cli-1.7.3/dm_cli/dmss_api/api/search_api.py +183 -0
  45. development_framework_cli-1.7.3/dm_cli/dmss_api/api/whoami_api.py +163 -0
  46. development_framework_cli-1.7.3/dm_cli/dmss_api/api_client.py +896 -0
  47. development_framework_cli-1.7.3/dm_cli/dmss_api/apis/__init__.py +32 -0
  48. development_framework_cli-1.7.3/dm_cli/dmss_api/configuration.py +482 -0
  49. development_framework_cli-1.7.3/dm_cli/dmss_api/exceptions.py +158 -0
  50. development_framework_cli-1.7.3/dm_cli/dmss_api/model/__init__.py +5 -0
  51. development_framework_cli-1.7.3/dm_cli/dmss_api/model/access_control_list.py +287 -0
  52. development_framework_cli-1.7.3/dm_cli/dmss_api/model/access_level.py +290 -0
  53. development_framework_cli-1.7.3/dm_cli/dmss_api/model/acl.py +287 -0
  54. development_framework_cli-1.7.3/dm_cli/dmss_api/model/data_source_information.py +282 -0
  55. development_framework_cli-1.7.3/dm_cli/dmss_api/model/data_source_request.py +281 -0
  56. development_framework_cli-1.7.3/dm_cli/dmss_api/model/dependency.py +294 -0
  57. development_framework_cli-1.7.3/dm_cli/dmss_api/model/entity.py +275 -0
  58. development_framework_cli-1.7.3/dm_cli/dmss_api/model/error_response.py +278 -0
  59. development_framework_cli-1.7.3/dm_cli/dmss_api/model/export_meta_response.py +277 -0
  60. development_framework_cli-1.7.3/dm_cli/dmss_api/model/get_blueprint_response.py +280 -0
  61. development_framework_cli-1.7.3/dm_cli/dmss_api/model/lookup.py +283 -0
  62. development_framework_cli-1.7.3/dm_cli/dmss_api/model/pat_data.py +299 -0
  63. development_framework_cli-1.7.3/dm_cli/dmss_api/model/recipe.py +311 -0
  64. development_framework_cli-1.7.3/dm_cli/dmss_api/model/recipe_attribute.py +304 -0
  65. development_framework_cli-1.7.3/dm_cli/dmss_api/model/reference.py +280 -0
  66. development_framework_cli-1.7.3/dm_cli/dmss_api/model/reference_entity.py +288 -0
  67. development_framework_cli-1.7.3/dm_cli/dmss_api/model/repository.py +317 -0
  68. development_framework_cli-1.7.3/dm_cli/dmss_api/model/repository_type.py +290 -0
  69. development_framework_cli-1.7.3/dm_cli/dmss_api/model/storage_attribute.py +295 -0
  70. development_framework_cli-1.7.3/dm_cli/dmss_api/model/storage_data_types.py +292 -0
  71. development_framework_cli-1.7.3/dm_cli/dmss_api/model/storage_recipe.py +293 -0
  72. development_framework_cli-1.7.3/dm_cli/dmss_api/model_utils.py +2057 -0
  73. development_framework_cli-1.7.3/dm_cli/dmss_api/models/__init__.py +29 -0
  74. development_framework_cli-1.7.3/dm_cli/dmss_api/rest.py +358 -0
  75. development_framework_cli-1.7.3/dm_cli/domain.py +166 -0
  76. development_framework_cli-1.7.3/dm_cli/enums.py +48 -0
  77. development_framework_cli-1.7.3/dm_cli/import_entity.py +128 -0
  78. development_framework_cli-1.7.3/dm_cli/import_package.py +173 -0
  79. development_framework_cli-1.7.3/dm_cli/package_tree_from_zip.py +120 -0
  80. development_framework_cli-1.7.3/dm_cli/state.py +12 -0
  81. development_framework_cli-1.7.3/dm_cli/utils/__init__.py +0 -0
  82. development_framework_cli-1.7.3/dm_cli/utils/file_structure.py +31 -0
  83. development_framework_cli-1.7.3/dm_cli/utils/reference.py +129 -0
  84. development_framework_cli-1.7.3/dm_cli/utils/resolve_local_ids.py +142 -0
  85. development_framework_cli-1.7.3/dm_cli/utils/utils.py +161 -0
  86. development_framework_cli-1.7.3/dm_cli/utils/zip.py +70 -0
  87. development_framework_cli-1.7.3/generate-dmss-api.sh +15 -0
  88. development_framework_cli-1.7.3/pyproject.toml +52 -0
  89. development_framework_cli-1.7.3/release-please-config.json +74 -0
  90. development_framework_cli-1.7.3/tests/integration/docker-compose.yaml +34 -0
  91. development_framework_cli-1.7.3/tests/test_data/more_documents/bmw.json +6 -0
  92. development_framework_cli-1.7.3/tests/test_data/more_documents/engines/engineA.json +5 -0
  93. development_framework_cli-1.7.3/tests/test_data/more_documents/engines/engineB.json +5 -0
  94. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/global/globalEntity.json +7 -0
  95. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/global/globalImage.jpg +0 -0
  96. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/instances/data/simulation.json +16 -0
  97. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/instances/demoApplication.json +9 -0
  98. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/instances/externalFile.json +10 -0
  99. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/instances/nameList +4 -0
  100. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/instances/package.json +24 -0
  101. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/instances/simulation.json +16 -0
  102. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/CarPackage/Car.json +34 -0
  103. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/CarPackage/EnginePackage/Engine.json +15 -0
  104. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/CarPackage/EnginePackage/package.json +17 -0
  105. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/CarPackage/Wheel.json +18 -0
  106. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/CarPackage/package.json +17 -0
  107. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/DemoApplication.json +23 -0
  108. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/ExtendsRelative.json +23 -0
  109. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/ExternalFile.json +24 -0
  110. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/more_recipe_links/wheel.json +16 -0
  111. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/package.json +17 -0
  112. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/recipe_links/Engine.json +16 -0
  113. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/recipe_links/car.json +16 -0
  114. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/recipe_links/simulation.recipe.json +23 -0
  115. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/storage_uncontained/Result.blueprint.json +14 -0
  116. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data/DemoApplicationDataSource/models/storage_uncontained/Simulation.blueprint.json +21 -0
  117. development_framework_cli-1.7.3/tests/test_data/test_app_dir_struct/data_sources/DemoApplicationDataSource.json +21 -0
  118. development_framework_cli-1.7.3/tests/test_data/test_pdf.pdf +0 -0
  119. development_framework_cli-1.7.3/tests/unit/resolve_local_ids_test_data/carRentalCompany.final.json +71 -0
  120. development_framework_cli-1.7.3/tests/unit/resolve_local_ids_test_data/carRentalCompany.json +71 -0
  121. development_framework_cli-1.7.3/tests/unit/test_import_package.py +309 -0
  122. development_framework_cli-1.7.3/tests/unit/test_replace_references.py +181 -0
  123. development_framework_cli-1.7.3/tests/unit/test_resolve_local_ids.py +38 -0
  124. development_framework_cli-1.7.3/tests/unit/test_utils.py +14 -0
@@ -0,0 +1,6 @@
1
+ # Each line is a file pattern followed by one or more owners.
2
+ # Order matter. If two rules match the same file, only the last one is used
3
+
4
+ # Repo owners
5
+ * @equinor/development-framework
6
+
@@ -0,0 +1,13 @@
1
+ ---
2
+ name: Bug Report
3
+ about: Report something that is broken or not working as intended
4
+ title: ''
5
+ labels: 'type: :bug bug'
6
+ assignees: ''
7
+ ---
8
+
9
+ #### Expected Behaviour
10
+
11
+ #### Actual Behaviour
12
+
13
+ #### Steps to Reproduce
@@ -0,0 +1,14 @@
1
+ ---
2
+ name: Code Maintenance
3
+ about: Project cleanup, improve documentation, refactor code
4
+ title: ''
5
+ labels: 'type: :wrench: maintenance'
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ #### Describe Problem
11
+
12
+ #### Suggest Changes
13
+
14
+ #### Provide Examples
@@ -0,0 +1,13 @@
1
+ ---
2
+ name: Feature Request
3
+ about: Suggest an idea for a new feature or enhancement to existing features
4
+ title: ''
5
+ labels: 'type: :bulb: feature request'
6
+ assignees: ''
7
+ ---
8
+
9
+ #### Describe Problem
10
+
11
+ #### Suggest Solution
12
+
13
+ #### Additional Details
@@ -0,0 +1,16 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: "pip"
4
+ directory: "/"
5
+ schedule:
6
+ interval: "weekly"
7
+ groups:
8
+ api:
9
+ update-types:
10
+ - "minor"
11
+ - "patch"
12
+
13
+ - package-ecosystem: "github-actions"
14
+ directory: "/"
15
+ schedule:
16
+ interval: "weekly"
@@ -0,0 +1,6 @@
1
+ ## What does this pull request change?
2
+
3
+ ## Why is this pull request needed?
4
+
5
+ ## Issues related to this change
6
+
@@ -0,0 +1,26 @@
1
+ name: "Create release-please PR"
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ workflow_call:
6
+ outputs:
7
+ release_created:
8
+ description: "If true, a release PR has been merged"
9
+ value: ${{ jobs.release-please.outputs.release_created }}
10
+ tag_name:
11
+ description: "The release tag. Ex v1.4.0"
12
+ value: ${{ jobs.release-please.outputs.tag_name }}
13
+
14
+ permissions:
15
+ contents: write
16
+ pull-requests: write
17
+
18
+ jobs:
19
+ release-please:
20
+ runs-on: ubuntu-latest
21
+ steps:
22
+ - uses: googleapis/release-please-action@v4
23
+ id: release
24
+ outputs:
25
+ release_created: ${{ steps.release.outputs.release_created }}
26
+ tag_name: ${{ steps.release.outputs.tag_name }}
@@ -0,0 +1,25 @@
1
+ on:
2
+ workflow_dispatch:
3
+ push:
4
+ branches:
5
+ - main
6
+
7
+ permissions:
8
+ contents: write
9
+ pull-requests: write
10
+
11
+ jobs:
12
+ tests:
13
+ uses: ./.github/workflows/tests.yaml
14
+
15
+ release-please:
16
+ needs: tests
17
+ uses: ./.github/workflows/create-release-pr.yaml
18
+
19
+
20
+ publish-new-pypi-package:
21
+ needs: release-please
22
+ if: ${{ needs.release-please.outputs.release_created }}
23
+ uses: ./.github/workflows/publish.yaml
24
+ secrets:
25
+ PYPI_DM_CLI_TOKEN: ${{ secrets.PYPI_DM_CLI_TOKEN }}
@@ -0,0 +1,14 @@
1
+ on:
2
+ workflow_dispatch:
3
+ push:
4
+ branches-ignore:
5
+ - main
6
+ tags-ignore:
7
+ - v*
8
+
9
+ permissions:
10
+ contents: read
11
+
12
+ jobs:
13
+ tests:
14
+ uses: ./.github/workflows/tests.yaml
@@ -0,0 +1,28 @@
1
+ on:
2
+ workflow_dispatch:
3
+ workflow_call: # Workflow is meant to be called from another workflow, with the image tag as input
4
+ secrets:
5
+ PYPI_DM_CLI_TOKEN:
6
+ required: true
7
+
8
+ permissions:
9
+ contents: read
10
+
11
+ jobs:
12
+ build-and-publish:
13
+ name: Publish development-framework-cli package to PyPI
14
+ runs-on: ubuntu-latest
15
+ steps:
16
+ - uses: actions/checkout@v6
17
+ - uses: actions/setup-python@v6
18
+ with:
19
+ python-version: "3.13"
20
+ - name: Install build tools
21
+ run: python -m pip install build twine
22
+ - name: Build package
23
+ run: python -m build
24
+ - name: Publish package to PyPI
25
+ env:
26
+ TWINE_USERNAME: __token__
27
+ TWINE_PASSWORD: ${{ secrets.PYPI_DM_CLI_TOKEN }}
28
+ run: python -m twine upload dist/*
@@ -0,0 +1,22 @@
1
+ name: Mark stale issues and pull requests
2
+
3
+ on:
4
+ schedule:
5
+ - cron: "0 0 * * *"
6
+
7
+ permissions:
8
+ issues: write
9
+ pull-requests: write
10
+
11
+ jobs:
12
+ stale:
13
+ runs-on: ubuntu-latest
14
+
15
+ steps:
16
+ - uses: actions/stale@v10
17
+ with:
18
+ stale-issue-message: "Stale issue message"
19
+ stale-pr-message: "Stale pull request message"
20
+ stale-issue-label: "no-issue-activity"
21
+ stale-pr-label: "no-pr-activity"
22
+ days-before-close: -1
@@ -0,0 +1,84 @@
1
+ on:
2
+ # Workflow dispatch is used for manual triggers
3
+ workflow_dispatch:
4
+ # Workflow call is used for called from another workflow
5
+ workflow_call:
6
+
7
+ permissions:
8
+ contents: read
9
+
10
+ jobs:
11
+ linting:
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - uses: actions/checkout@v6
15
+
16
+ - uses: actions/setup-python@v6
17
+ with:
18
+ python-version: "3.13"
19
+
20
+ - name: Install pre-commit
21
+ run: pip install pre-commit
22
+
23
+ - name: Run pre-commit
24
+ run: pre-commit run --all-files
25
+
26
+ unit-tests:
27
+ runs-on: ubuntu-latest
28
+ steps:
29
+ - uses: actions/checkout@v6
30
+
31
+ - uses: actions/setup-python@v6
32
+ with:
33
+ python-version: "3.13"
34
+
35
+ - name: Install package with dev dependencies
36
+ run: pip install -e ".[dev]"
37
+
38
+ - name: run pytest
39
+ run: pytest
40
+
41
+ integration-tests:
42
+ runs-on: ubuntu-latest
43
+ defaults:
44
+ run:
45
+ working-directory: tests/integration
46
+ steps:
47
+ - uses: actions/checkout@v6
48
+
49
+ - uses: actions/setup-python@v6
50
+ with:
51
+ python-version: "3.13"
52
+
53
+ - name: Start DMSS
54
+ run: docker compose pull && docker compose up -d
55
+
56
+ - name: Download test blueprints
57
+ run: |
58
+ npm pack @development-framework/dm-core-plugins
59
+ tar -xzf development-framework-dm-core-plugins-*.tgz
60
+
61
+ - name: Build and install development-framework-cli package
62
+ run: |
63
+ cd ../..
64
+ python -m venv .venv
65
+ source .venv/bin/activate
66
+ pip install build
67
+ python -m build
68
+ pip install dist/*.whl
69
+
70
+ - name: Tests
71
+ run: |
72
+ source ../../.venv/bin/activate
73
+ dm reset ../test_data/test_app_dir_struct
74
+ dm import-plugin-blueprints --no-validate package
75
+ dm create-lookup test DemoApplicationDataSource/models/recipe_links DemoApplicationDataSource/models/more_recipe_links
76
+ dm export DemoApplicationDataSource/models/CarPackage
77
+ dm export DemoApplicationDataSource/instances --unpack
78
+ dm ds import ../test_data/test_app_dir_struct/data_sources/DemoApplicationDataSource.json
79
+ dm ds import-all ../test_data/test_app_dir_struct/data_sources
80
+ dm entities import --no-validate ../test_data/more_documents/bmw.json DemoApplicationDataSource/instances
81
+ dm entities import --no-validate ../test_data/more_documents/engines DemoApplicationDataSource/instances
82
+ dm entities delete DemoApplicationDataSource/instances
83
+ dm ds reset DemoApplicationDataSource ../test_data/test_app_dir_struct
84
+ dm ds init ../test_data/test_app_dir_struct
@@ -0,0 +1,137 @@
1
+ tests/integration/.venv
2
+ tests/integration/package
3
+ tests/integration/development-framework-dm-core-plugins-*
4
+
5
+ # Byte-compiled / optimized / DLL files
6
+ __pycache__/
7
+ *.py[cod]
8
+ *$py.class
9
+
10
+ # C extensions
11
+ *.so
12
+
13
+ .idea
14
+
15
+ # Distribution / packaging
16
+ .Python
17
+ build/
18
+ develop-eggs/
19
+ dist/
20
+ downloads/
21
+ eggs/
22
+ .eggs/
23
+ lib/
24
+ lib64/
25
+ parts/
26
+ sdist/
27
+ var/
28
+ wheels/
29
+ pip-wheel-metadata/
30
+ share/python-wheels/
31
+ *.egg-info/
32
+ .installed.cfg
33
+ *.egg
34
+ MANIFEST
35
+
36
+ # PyInstaller
37
+ # Usually these files are written by a python script from a template
38
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
39
+ *.manifest
40
+ *.spec
41
+
42
+ # Installer logs
43
+ pip-log.txt
44
+ pip-delete-this-directory.txt
45
+
46
+ # Unit test / coverage reports
47
+ htmlcov/
48
+ .tox/
49
+ .nox/
50
+ .coverage
51
+ .coverage.*
52
+ .cache
53
+ nosetests.xml
54
+ coverage.xml
55
+ *.cover
56
+ *.py,cover
57
+ .hypothesis/
58
+ .pytest_cache/
59
+
60
+ # Translations
61
+ *.mo
62
+ *.pot
63
+
64
+ # Django stuff:
65
+ *.log
66
+ local_settings.py
67
+ db.sqlite3
68
+ db.sqlite3-journal
69
+
70
+ # Flask stuff:
71
+ instance/
72
+ .webassets-cache
73
+
74
+ # Scrapy stuff:
75
+ .scrapy
76
+
77
+ # Sphinx documentation
78
+ docs/_build/
79
+
80
+ # PyBuilder
81
+ target/
82
+
83
+ # Jupyter Notebook
84
+ .ipynb_checkpoints
85
+
86
+ # IPython
87
+ profile_default/
88
+ ipython_config.py
89
+
90
+ # pyenv
91
+ .python-version
92
+
93
+ # pipenv
94
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
95
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
96
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
97
+ # install all needed dependencies.
98
+ #Pipfile.lock
99
+
100
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
101
+ __pypackages__/
102
+
103
+ # Celery stuff
104
+ celerybeat-schedule
105
+ celerybeat.pid
106
+
107
+ # SageMath parsed files
108
+ *.sage.py
109
+
110
+ # Environments
111
+ .env
112
+ .venv
113
+ env/
114
+ venv/
115
+ ENV/
116
+ env.bak/
117
+ venv.bak/
118
+
119
+ # Spyder project settings
120
+ .spyderproject
121
+ .spyproject
122
+
123
+ # Rope project settings
124
+ .ropeproject
125
+
126
+ # mkdocs documentation
127
+ /site
128
+
129
+ # mypy
130
+ .mypy_cache/
131
+ .dmypy.json
132
+ dmypy.json
133
+
134
+ # Pyre type checker
135
+ .pyre/
136
+
137
+ token.txt
@@ -0,0 +1,80 @@
1
+ default_stages: [pre-commit]
2
+ default_install_hook_types: [pre-commit, commit-msg]
3
+ repos:
4
+ - repo: https://github.com/pre-commit/pre-commit-hooks
5
+ rev: v6.0.0
6
+ hooks:
7
+ - id: check-ast
8
+ language_version: python3.13
9
+ - id: check-merge-conflict
10
+ - id: check-yaml
11
+ - id: trailing-whitespace
12
+ exclude: ^.*\.(lock)$||^docs\/
13
+ - id: end-of-file-fixer
14
+ exclude: ^.*\.(lock)$||^docs\/
15
+ - id: mixed-line-ending
16
+ exclude: ^.*\.(lock)$||^docs\/
17
+ - id: check-case-conflict
18
+ - id: check-json
19
+ - id: check-toml
20
+ - id: detect-private-key
21
+ - id: pretty-format-json
22
+ args:
23
+ [--autofix, --no-sort-keys, "--top-keys=_id,name,type,description"]
24
+ - id: no-commit-to-branch
25
+ args: [--branch, main]
26
+ stages: [commit-msg]
27
+
28
+ - repo: https://github.com/compilerla/conventional-pre-commit
29
+ rev: v4.4.0
30
+ hooks:
31
+ - id: conventional-pre-commit
32
+ stages: [commit-msg]
33
+
34
+ - repo: https://github.com/ambv/black
35
+ rev: 26.1.0
36
+ hooks:
37
+ - id: black
38
+ language_version: python3.13
39
+ files: .*\.py$
40
+ additional_dependencies: ["click==8.0.4"]
41
+ exclude: ^dm_cli/dmss_api/
42
+ args:
43
+ - --line-length=119
44
+
45
+ - repo: https://github.com/PyCQA/bandit
46
+ rev: 1.9.4
47
+ hooks:
48
+ - id: bandit
49
+ args: [-l, --recursive, -x, tests, --skip, B311]
50
+ files: ^.*\.py$
51
+ exclude: ^dm_cli/dmss_api/
52
+
53
+ - repo: https://github.com/pycqa/isort
54
+ rev: 8.0.1
55
+ hooks:
56
+ - id: isort
57
+ name: isort (python)
58
+ files: ^.*\.py$
59
+ exclude: ^dm_cli/dmss_api/
60
+ args: ["--profile=black"]
61
+
62
+ - repo: https://github.com/pycqa/flake8
63
+ rev: 7.3.0
64
+ hooks:
65
+ - id: flake8
66
+ files: ^./dm_cli/.*\.py$
67
+ exclude: ^dm_cli/dmss_api/
68
+ additional_dependencies:
69
+ - flake8-print==5.0.0
70
+ - flake8-docstrings==1.6.0
71
+ args:
72
+ [
73
+ "--verbose",
74
+ "--max-line-length=119",
75
+ "--max-complexity=18",
76
+ "--select=B,C,D,E,F,W,T4,T,B9",
77
+ "--ignore=D100, D101, D102, D103, D104, D105, D107, D400, D401, T201",
78
+ "--docstring-convention=pep257",
79
+ "--per-file-ignores=tests/*:D",
80
+ ]
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "1.7.3"
3
+ }