qbraid-cli 0.8.0.dev7__tar.gz → 0.8.1__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.

Potentially problematic release.


This version of qbraid-cli might be problematic. Click here for more details.

Files changed (145) hide show
  1. qbraid_cli-0.8.1/.env.example +4 -0
  2. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/.github/PULL_REQUEST_TEMPLATE.md +1 -1
  3. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/.github/workflows/docs.yml +1 -1
  4. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/.github/workflows/format.yml +2 -8
  5. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/.github/workflows/main.yml +15 -3
  6. qbraid_cli-0.8.1/.github/workflows/pre-release.yml +38 -0
  7. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/.github/workflows/publish.yml +1 -3
  8. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/.readthedocs.yml +2 -1
  9. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/CONTRIBUTING.md +15 -17
  10. qbraid_cli-0.8.1/LICENSE +41 -0
  11. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/MANIFEST.IN +2 -1
  12. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/PKG-INFO +55 -21
  13. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/README.md +50 -9
  14. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/index.rst +2 -1
  15. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/requirements.txt +4 -4
  16. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/pyproject.toml +26 -4
  17. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/_version.py +2 -2
  18. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/admin/__init__.py +2 -0
  19. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/admin/app.py +3 -4
  20. qbraid_cli-0.8.1/qbraid_cli/admin/buildlogs.py +114 -0
  21. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/admin/headers.py +41 -41
  22. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/configure/__init__.py +2 -0
  23. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/credits/__init__.py +2 -0
  24. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/credits/app.py +5 -2
  25. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/devices/__init__.py +2 -0
  26. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/envs/__init__.py +2 -0
  27. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/envs/app.py +26 -36
  28. qbraid_cli-0.8.1/qbraid_cli/envs/create.py +61 -0
  29. qbraid_cli-0.8.1/qbraid_cli/envs/data_handling.py +46 -0
  30. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/handlers.py +15 -2
  31. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/jobs/__init__.py +2 -0
  32. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/kernels/__init__.py +2 -0
  33. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/kernels/app.py +3 -1
  34. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/main.py +5 -2
  35. qbraid_cli-0.8.1/qbraid_cli/pip/__init__.py +11 -0
  36. qbraid_cli-0.8.1/qbraid_cli/pip/app.py +49 -0
  37. qbraid_cli-0.8.1/qbraid_cli/pip/hooks.py +73 -0
  38. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli.egg-info/PKG-INFO +55 -21
  39. qbraid_cli-0.8.1/qbraid_cli.egg-info/SOURCES.txt +125 -0
  40. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli.egg-info/requires.txt +3 -12
  41. qbraid_cli-0.8.1/ruff.toml +62 -0
  42. {qbraid_cli-0.8.0.dev7/tests/test_credits → qbraid_cli-0.8.1/tests/credits}/test_credits_value.py +12 -12
  43. qbraid_cli-0.8.0.dev7/tests/test_envs/test_create/test_create_qbraid_env_assets.py → qbraid_cli-0.8.1/tests/envs/test_envs_create_qbraid_env_assets.py +0 -3
  44. qbraid_cli-0.8.0.dev7/tests/test_envs/test_data_handling/test_validate_env_name.py → qbraid_cli-0.8.1/tests/envs/test_envs_create_validate_env_name.py +38 -0
  45. {qbraid_cli-0.8.0.dev7/tests/test_envs/test_app → qbraid_cli-0.8.1/tests/envs}/test_envs_remove.py +6 -3
  46. qbraid_cli-0.8.0.dev7/tests/test_jobs/test_validation/test_get_state.py → qbraid_cli-0.8.1/tests/jobs/test_jobs_validate_get_state.py +33 -1
  47. qbraid_cli-0.8.1/tools/create_dev_build.sh +88 -0
  48. qbraid_cli-0.8.1/tools/install_wheel_extras.sh +67 -0
  49. qbraid_cli-0.8.1/tools/split_md.py +179 -0
  50. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/tools/split_rst.py +3 -0
  51. qbraid_cli-0.8.1/tools/stamp_pre_release.py +48 -0
  52. qbraid_cli-0.8.0.dev7/.env.example +0 -3
  53. qbraid_cli-0.8.0.dev7/.github/workflows/test-publish.yml +0 -29
  54. qbraid_cli-0.8.0.dev7/qbraid_cli/envs/create.py +0 -128
  55. qbraid_cli-0.8.0.dev7/qbraid_cli/envs/data_handling.py +0 -140
  56. qbraid_cli-0.8.0.dev7/qbraid_cli.egg-info/SOURCES.txt +0 -128
  57. qbraid_cli-0.8.0.dev7/tests/test_envs/test_create/test_replace_str.py +0 -25
  58. qbraid_cli-0.8.0.dev7/tests/test_envs/test_create/test_update_state_json.py +0 -61
  59. qbraid_cli-0.8.0.dev7/tests/test_envs/test_data_handling/__init__.py +0 -0
  60. qbraid_cli-0.8.0.dev7/tests/test_envs/test_data_handling/test_installed_envs_data.py +0 -87
  61. qbraid_cli-0.8.0.dev7/tests/test_envs/test_data_handling/test_is_valid_env_name.py +0 -43
  62. qbraid_cli-0.8.0.dev7/tests/test_envs/test_data_handling/test_request_delete_env.py +0 -31
  63. qbraid_cli-0.8.0.dev7/tests/test_jobs/__init__.py +0 -0
  64. qbraid_cli-0.8.0.dev7/tests/test_jobs/test_app/__init__.py +0 -0
  65. qbraid_cli-0.8.0.dev7/tests/test_jobs/test_toggle_braket/__init__.py +0 -0
  66. qbraid_cli-0.8.0.dev7/tests/test_jobs/test_validation/__init__.py +0 -0
  67. qbraid_cli-0.8.0.dev7/tests/test_jobs/test_validation/test_run_progress_get_state.py +0 -43
  68. qbraid_cli-0.8.0.dev7/tests/test_kernels/__init__.py +0 -0
  69. qbraid_cli-0.8.0.dev7/tools/verify_headers.py +0 -209
  70. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  71. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  72. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/.gitignore +0 -0
  73. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/Makefile +0 -0
  74. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/Makefile +0 -0
  75. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/_static/api-key.png +0 -0
  76. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/_static/cards/jupyter.png +0 -0
  77. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/_static/cards/python.png +0 -0
  78. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/_static/cards/terminal.png +0 -0
  79. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/_static/favicon.ico +0 -0
  80. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/_static/logo.png +0 -0
  81. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/_static/style/custom.css +0 -0
  82. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/_static/style/s4defs-roles.css +0 -0
  83. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/configure.rst +0 -0
  84. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/credits.rst +0 -0
  85. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/devices-list.rst +0 -0
  86. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/devices.rst +0 -0
  87. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/envs-activate.rst +0 -0
  88. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/envs-list.rst +0 -0
  89. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/envs-uninstall.rst +0 -0
  90. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/envs.rst +0 -0
  91. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/jobs-add.rst +0 -0
  92. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/jobs-disable.rst +0 -0
  93. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/jobs-enable.rst +0 -0
  94. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/jobs-list.rst +0 -0
  95. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/jobs.rst +0 -0
  96. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/kernels.rst +0 -0
  97. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/cli/qbraid.rst +0 -0
  98. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/conf.py +0 -0
  99. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/guide/overview.rst +0 -0
  100. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/docs/make.bat +0 -0
  101. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/__init__.py +0 -0
  102. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/admin/validation.py +0 -0
  103. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/configure/actions.py +0 -0
  104. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/configure/app.py +0 -0
  105. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/devices/app.py +0 -0
  106. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/devices/validation.py +0 -0
  107. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/envs/activate.py +0 -0
  108. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/exceptions.py +0 -0
  109. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/jobs/app.py +0 -0
  110. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/jobs/toggle_braket.py +0 -0
  111. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli/jobs/validation.py +0 -0
  112. /qbraid_cli-0.8.0.dev7/tests/__init__.py → /qbraid_cli-0.8.1/qbraid_cli/py.typed +0 -0
  113. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli.egg-info/dependency_links.txt +0 -0
  114. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli.egg-info/entry_points.txt +0 -0
  115. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/qbraid_cli.egg-info/top_level.txt +0 -0
  116. {qbraid_cli-0.8.0.dev7 → qbraid_cli-0.8.1}/setup.cfg +0 -0
  117. {qbraid_cli-0.8.0.dev7/tests/test_configure → qbraid_cli-0.8.1/tests}/__init__.py +0 -0
  118. {qbraid_cli-0.8.0.dev7/tests/test_credits → qbraid_cli-0.8.1/tests/configure}/__init__.py +0 -0
  119. /qbraid_cli-0.8.0.dev7/tests/test_configure/test_prompt_for_config.py → /qbraid_cli-0.8.1/tests/configure/test_configure_prompt_for_config.py +0 -0
  120. {qbraid_cli-0.8.0.dev7/tests/test_configure → qbraid_cli-0.8.1/tests/configure}/test_configure_set.py +0 -0
  121. /qbraid_cli-0.8.0.dev7/tests/test_configure/test_validate_input.py → /qbraid_cli-0.8.1/tests/configure/test_configure_validate_input.py +0 -0
  122. {qbraid_cli-0.8.0.dev7/tests/test_devices → qbraid_cli-0.8.1/tests/credits}/__init__.py +0 -0
  123. {qbraid_cli-0.8.0.dev7/tests/test_envs → qbraid_cli-0.8.1/tests/devices}/__init__.py +0 -0
  124. {qbraid_cli-0.8.0.dev7/tests/test_devices → qbraid_cli-0.8.1/tests/devices}/test_devices_list.py +0 -0
  125. /qbraid_cli-0.8.0.dev7/tests/test_devices/test_validations.py → /qbraid_cli-0.8.1/tests/devices/test_devices_validations.py +0 -0
  126. {qbraid_cli-0.8.0.dev7/tests/test_envs/test_activate → qbraid_cli-0.8.1/tests/envs}/__init__.py +0 -0
  127. {qbraid_cli-0.8.0.dev7/tests/test_envs/test_app → qbraid_cli-0.8.1/tests/envs}/test_envs_activate.py +0 -0
  128. /qbraid_cli-0.8.0.dev7/tests/test_envs/test_activate/test_find_shell_rc.py → /qbraid_cli-0.8.1/tests/envs/test_envs_activate_find_shell_rc.py +0 -0
  129. /qbraid_cli-0.8.0.dev7/tests/test_envs/test_activate/test_print_activate_command.py → /qbraid_cli-0.8.1/tests/envs/test_envs_activate_print_command.py +0 -0
  130. /qbraid_cli-0.8.0.dev7/tests/test_envs/test_activate/test_activate_pyenv.py → /qbraid_cli-0.8.1/tests/envs/test_envs_activate_pyenv.py +0 -0
  131. {qbraid_cli-0.8.0.dev7/tests/test_envs/test_app → qbraid_cli-0.8.1/tests/envs}/test_envs_create.py +0 -0
  132. {qbraid_cli-0.8.0.dev7/tests/test_envs/test_app → qbraid_cli-0.8.1/tests/envs}/test_envs_list.py +0 -0
  133. {qbraid_cli-0.8.0.dev7/tests/test_envs/test_app → qbraid_cli-0.8.1/tests/jobs}/__init__.py +0 -0
  134. {qbraid_cli-0.8.0.dev7/tests/test_jobs/test_app → qbraid_cli-0.8.1/tests/jobs}/test_jobs_disable.py +0 -0
  135. {qbraid_cli-0.8.0.dev7/tests/test_jobs/test_app → qbraid_cli-0.8.1/tests/jobs}/test_jobs_enable.py +0 -0
  136. {qbraid_cli-0.8.0.dev7/tests/test_jobs/test_app → qbraid_cli-0.8.1/tests/jobs}/test_jobs_list.py +0 -0
  137. {qbraid_cli-0.8.0.dev7/tests/test_jobs/test_app → qbraid_cli-0.8.1/tests/jobs}/test_jobs_state.py +0 -0
  138. /qbraid_cli-0.8.0.dev7/tests/test_jobs/test_toggle_braket/test_confirm_updates.py → /qbraid_cli-0.8.1/tests/jobs/test_jobs_toggle_braket_confirm.py +0 -0
  139. /qbraid_cli-0.8.0.dev7/tests/test_jobs/test_toggle_braket/test_disable_braket.py → /qbraid_cli-0.8.1/tests/jobs/test_jobs_toggle_braket_disable.py +0 -0
  140. /qbraid_cli-0.8.0.dev7/tests/test_jobs/test_toggle_braket/test_enable_braket.py → /qbraid_cli-0.8.1/tests/jobs/test_jobs_toggle_braket_enable.py +0 -0
  141. /qbraid_cli-0.8.0.dev7/tests/test_jobs/test_toggle_braket/test_get_package_data.py → /qbraid_cli-0.8.1/tests/jobs/test_jobs_toggle_braket_get_data.py +0 -0
  142. /qbraid_cli-0.8.0.dev7/tests/test_jobs/test_validation/test_handle_jobs_state.py → /qbraid_cli-0.8.1/tests/jobs/test_jobs_validate_handle_state.py +0 -0
  143. /qbraid_cli-0.8.0.dev7/tests/test_jobs/test_validation/test_validate_library.py → /qbraid_cli-0.8.1/tests/jobs/test_jobs_validate_library.py +0 -0
  144. {qbraid_cli-0.8.0.dev7/tests/test_envs/test_create → qbraid_cli-0.8.1/tests/kernels}/__init__.py +0 -0
  145. {qbraid_cli-0.8.0.dev7/tests/test_kernels → qbraid_cli-0.8.1/tests/kernels}/test_kernels_list.py +0 -0
@@ -0,0 +1,4 @@
1
+ QBRAID_API_KEY= # YOURAPIKEY
2
+ QBRAID_ENVS_PATH= # default: ~/.qbraid/environments
3
+ QBRAID_CONFIG_FILE= # default: ~/.qbraid/qbraidrc
4
+ QBRAID_CLI_SHOW_PROGRESS= # default: true
@@ -1,3 +1,3 @@
1
1
  <!-- Please link or tag any issues that is PR closes -->
2
2
 
3
- ## Changes
3
+ # Changes
@@ -20,7 +20,7 @@ jobs:
20
20
  cache: pip
21
21
  - name: Install dependencies
22
22
  run: |
23
- python -m pip install --upgrade pip setuptools
23
+ python -m pip install --upgrade pip setuptools build
24
24
  python -m pip install -r docs/requirements.txt
25
25
  - name: Build & install package
26
26
  run: |
@@ -18,17 +18,11 @@ jobs:
18
18
  - name: Install dependencies
19
19
  run: |
20
20
  pip install --upgrade pip
21
- pip install black isort pylint
21
+ pip install black isort pylint qbraid-cli
22
22
  - name: Check isort, black, pylint
23
23
  run: |
24
24
  black --check qbraid_cli tests tools
25
25
  isort --check-only qbraid_cli tests tools
26
- # if pylint qbraid_cli tests tools --disable=C0415,R0914,W0511 2>&1 | grep 'Your code has been rated at 10\.00/10' > /dev/null; then
27
- # echo "Perfect pylint score!"
28
- # else
29
- # echo "Pylint score is not 10/10."
30
- # exit 1
31
- # fi
32
26
  - name: Check copyright headers
33
27
  run: |
34
- python tools/verify_headers.py qbraid_cli tests tools --skip qbraid_cli/_version.py
28
+ qbraid admin headers qbraid_cli tests tools
@@ -64,9 +64,21 @@ jobs:
64
64
  shell: pwsh
65
65
  - name: Install testing dependencies
66
66
  run: |
67
- pip install pytest
67
+ pip install pytest coverage
68
68
  - name: Run tests with pytest
69
69
  run: |
70
- pytest
70
+ coverage run -m pytest -x tests
71
+ coverage combine
72
+ coverage report
73
+ coverage html
74
+ coverage xml
71
75
  env:
72
- QBRAID_API_KEY: ${{ secrets.QBRAID_API_KEY }}
76
+ QBRAID_API_KEY: ${{ secrets.QBRAID_API_KEY }}
77
+ - name: Upload coverage to Codecov
78
+ if: matrix.python-version == '3.11' && matrix.os == 'ubuntu-latest'
79
+ uses: codecov/codecov-action@v3
80
+ with:
81
+ token: ${{ secrets.CODECOV_TOKEN }}
82
+ fail_ci_if_error: false
83
+ files: ./build/coverage/coverage.xml
84
+ verbose: true
@@ -0,0 +1,38 @@
1
+ name: Pre-release to PyPI
2
+
3
+ on:
4
+ workflow_dispatch:
5
+
6
+ jobs:
7
+ pypi-publish:
8
+ name: Build pre-release dist & upload to PyPI
9
+ environment: publish
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: actions/checkout@v3
13
+ with:
14
+ fetch-depth: 1
15
+
16
+ - name: Set up Python
17
+ uses: actions/setup-python@v4
18
+ with:
19
+ python-version: '3.11'
20
+
21
+ - name: Install build dependencies
22
+ run: python -m pip install -U pip wheel build toml-cli qbraid-core
23
+
24
+ - name: Build binary wheel + source tarball
25
+ id: build-dev
26
+ run: |
27
+ export PRE_RELEASE_VERSION=$(python tools/stamp_pre_release.py)
28
+ [[ "$PRE_RELEASE_VERSION" =~ .*(-a\.|-b\.|-rc\.).* ]] && echo "Deploying pre-release version '$PRE_RELEASE_VERSION'" || (echo "not pre-release version"; exit 0)
29
+ out_dir="${PWD}/dist"
30
+ tools/create_dev_build.sh $PRE_RELEASE_VERSION "${out_dir}"
31
+ echo "dir=$out_dir" >> $GITHUB_OUTPUT
32
+
33
+ - name: Publish pre-release package to PyPI
34
+ uses: pypa/gh-action-pypi-publish@release/v1
35
+ with:
36
+ user: __token__
37
+ password: ${{ secrets.PYPI_API_TOKEN }}
38
+ packages-dir: ${{ steps.build-dev.outputs.dir }}
@@ -1,8 +1,6 @@
1
1
  name: Publish to PyPI
2
2
 
3
3
  on:
4
- release:
5
- types: [published]
6
4
  workflow_dispatch:
7
5
 
8
6
  jobs:
@@ -18,7 +16,7 @@ jobs:
18
16
  - name: Set up Python
19
17
  uses: actions/setup-python@v4
20
18
  with:
21
- python-version: '3.10'
19
+ python-version: '3.11'
22
20
 
23
21
  - name: Build binary wheel + source tarball
24
22
  run: |
@@ -10,7 +10,8 @@ build:
10
10
  tools:
11
11
  python: "3.10"
12
12
  commands:
13
- - pip install -r docs/requirements.txt
13
+ - python -m pip install -r docs/requirements.txt
14
+ - python -m pip install build
14
15
  - python -m build .
15
16
  - python -m pip install dist/*.whl
16
17
  - mkdir -p docs/tree
@@ -32,7 +32,7 @@ qbraid --version
32
32
 
33
33
  To view available `make` commands, run:
34
34
 
35
- ```shell
35
+ ```bash
36
36
  make help
37
37
  ```
38
38
 
@@ -40,19 +40,19 @@ make help
40
40
 
41
41
  Install test dependencies:
42
42
 
43
- ```shell
43
+ ```bash
44
44
  pip install pytest
45
45
  ```
46
46
 
47
47
  And run tests:
48
48
 
49
- ```shell
49
+ ```bash
50
50
  pytest tests
51
51
  ```
52
52
 
53
53
  You can also run tests with make:
54
54
 
55
- ```shell
55
+ ```bash
56
56
  make test
57
57
  ```
58
58
 
@@ -60,19 +60,19 @@ make test
60
60
 
61
61
  To generate the API reference documentation locally, install the necessary requirements:
62
62
 
63
- ```shell
63
+ ```bash
64
64
  pip install -r docs/requirements.txt
65
65
  ```
66
66
 
67
67
  And then run
68
68
 
69
- ```shell
69
+ ```bash
70
70
  make docs
71
71
  ```
72
72
 
73
73
  Alternatively, you can generate command tree `.rst` files step-by-step:
74
74
 
75
- ```shell
75
+ ```bash
76
76
  mkdir docs/tree
77
77
  typer qbraid_cli.main utils docs --name=qbraid --output=docs/tree/qbraid.md
78
78
  m2r docs/tree/qbraid.md
@@ -82,31 +82,29 @@ python tools/split_rst.py docs/tree/qbraid.rst
82
82
 
83
83
  And then, build the docs:
84
84
 
85
- ```shell
85
+ ```bash
86
86
  sphinx-build -W -b html docs docs/build/html
87
87
  ```
88
88
 
89
89
  You can view the generated documentation in your browser (on OS X) using:
90
90
 
91
- ```shell
91
+ ```bash
92
92
  open docs/build/html/index.html
93
93
  ```
94
94
 
95
95
  ## Code style
96
96
 
97
- For code style, our project uses a combination of [isort](https://github.com/PyCQA/isort), [pylint](https://github.com/pylint-dev/pylint),
98
- and [black](https://github.com/psf/black). Specific configurations for these tools should be added to [`pyproject.toml`](pyproject.toml).
97
+ For code style, our project uses [ruff](https://github.com/astral-sh/ruff). Specific configurations for these tools should be added to [`pyproject.toml`](pyproject.toml).
99
98
 
100
99
  Install linters:
101
100
 
102
- ```shell
103
- pip install black isort pylint
101
+ ```bash
102
+ pip install ruff qbraid-cli
104
103
  ```
105
104
 
106
105
  Run the following and make changes as needed to satisfy format checks:
107
106
 
108
- ```shell
109
- black qbraid_cli tests tools
110
- isort qbraid_cli tests tools
111
- pylint qbraid_cli tests tools
107
+ ```bash
108
+ ruff format qbraid_cli tests tools
109
+ qbraid admin headers qbraid_cli tests tools --type=default --fix
112
110
  ```
@@ -0,0 +1,41 @@
1
+ qBraid Closed-Source Software License
2
+
3
+ Copyright (c) 2024, qBraid Development Team
4
+
5
+ All rights reserved.
6
+
7
+ This license agreement ("License") is between the qBraid Development Team ("Author") and you, the Licensee. By using or distributing the qBraid ("Software"), you agree to the following terms:
8
+
9
+ 1. Grant of License.
10
+
11
+ Subject to the terms of this License, the Author grants you a non-exclusive, non-transferable license to use the Software for personal, academic, and educational purposes. Use of the Software for commercial purposes is strictly prohibited unless express permission is granted by the Author.
12
+
13
+ 2. Distribution.
14
+
15
+ You may distribute the Software to others, provided that any such distribution is made under the same terms of this License. Modifications to the Software may not be distributed.
16
+
17
+ 3. Modification.
18
+
19
+ You are permitted to modify the Software for personal use. You may contribute improvements or bug fixes back to the Author or the community, but you may not distribute the modifications.
20
+
21
+ 4. Commercial Use.
22
+
23
+ The Software may not be used for commercial purposes without explicit, prior written permission from the Author. Permissions for commercial use will be considered on a case-by-case basis.
24
+
25
+ 5. Attribution
26
+
27
+ If the Software is used in a non-private setting, including but not limited to academic work, commercial settings, or published literature, attribution must be given to the "qBraid Jupyter Environment Manager authored by the qBraid Development Team."
28
+
29
+ 6. Disclaimer of Warranty.
30
+
31
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT.
32
+
33
+ 7. Limitation of Liability.
34
+
35
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM, OUT OF, OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
36
+
37
+ 8. Termination.
38
+
39
+ This License is effective until terminated. Your rights under this License will terminate automatically without notice from the Author if you fail to comply with any term(s) of this License.
40
+
41
+ By using the Software, you agree to be bound by the terms of this License. Redistribution of the Software or use of the Software other than as specifically authorized under this License is prohibited and may result in severe civil and criminal penalties.
@@ -1,5 +1,6 @@
1
1
  include *.txt *.md
2
2
  recursive-include docs *.txt *.rst *.py *.png *.ico
3
3
  recursive-include qbraid_cli *.py
4
+ include qbraid_cli/py.typed
4
5
  prune docs/build/
5
- prune docs/cli/
6
+ prune docs/cli/
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: qbraid-cli
3
- Version: 0.8.0.dev7
3
+ Version: 0.8.1
4
4
  Summary: Command Line Interface for interacting with all parts of the qBraid platform.
5
5
  Author-email: qBraid Development Team <contact@qbraid.com>
6
6
  License: Proprietary
@@ -26,26 +26,19 @@ Classifier: Programming Language :: Python :: 3.11
26
26
  Classifier: Programming Language :: Python :: 3.12
27
27
  Requires-Python: >=3.9
28
28
  Description-Content-Type: text/markdown
29
+ License-File: LICENSE
29
30
  Requires-Dist: typer>=0.12.1
30
31
  Requires-Dist: rich>=10.11.0
31
32
  Requires-Dist: jupyter_client<9.0.0,>=7.0.0
32
33
  Requires-Dist: ipykernel
33
- Requires-Dist: qbraid-core>=0.1.4
34
+ Requires-Dist: qbraid-core>=0.1.10
34
35
  Provides-Extra: jobs
35
36
  Requires-Dist: amazon-braket-sdk>=1.48.1; extra == "jobs"
36
37
  Provides-Extra: dev
37
- Requires-Dist: black; extra == "dev"
38
+ Requires-Dist: ruff; extra == "dev"
38
39
  Requires-Dist: isort; extra == "dev"
39
- Requires-Dist: pylint; extra == "dev"
40
+ Requires-Dist: black; extra == "dev"
40
41
  Requires-Dist: pytest; extra == "dev"
41
- Provides-Extra: docs
42
- Requires-Dist: sphinx~=7.2.6; extra == "docs"
43
- Requires-Dist: sphinx-rtd-theme<2.1,>=1.3; extra == "docs"
44
- Requires-Dist: docutils<0.22; extra == "docs"
45
- Requires-Dist: toml; extra == "docs"
46
- Requires-Dist: build; extra == "docs"
47
- Requires-Dist: m2r; extra == "docs"
48
- Requires-Dist: typer; extra == "docs"
49
42
 
50
43
  <img width="full" alt="qbraid_cli" src="https://qbraid-static.s3.amazonaws.com/logos/qbraid-cli-banner.png">
51
44
 
@@ -54,24 +47,43 @@ Requires-Dist: typer; extra == "docs"
54
47
  [![Python verions](https://img.shields.io/pypi/pyversions/qbraid-cli.svg?color=blue)](https://pypi.org/project/qbraid-cli/)
55
48
  [![Downloads](https://static.pepy.tech/badge/qbraid-cli)](https://pepy.tech/project/qbraid-cli)
56
49
  [![GitHub](https://img.shields.io/badge/issue_tracking-github-blue?logo=github)](https://github.com/qBraid/qBraid-Lab/issues)
57
- [![Discord](https://img.shields.io/discord/771898982564626445.svg?color=pink)](https://discord.gg/KugF6Cnncm)
58
50
 
59
51
  Command Line Interface for interacting with all parts of the qBraid platform.
60
52
 
61
- The **qBraid CLI** is a specialized command-line interface tool designed *exclusively* for use within the [qBraid Lab](https://docs.qbraid.com/projects/lab/en/latest/lab/overview.html) platform. It is not intended for local installations or use outside the qBraid Lab environment. This tool ensures seamless integration and optimized performance specifically tailored for qBraid Lab's unique cloud-based quantum computing ecosystem.
53
+ The **qBraid CLI** is a versatile command-line interface tool designed for seamless interaction with qBraid cloud services and quantum software management tools. Initially exclusive to the [qBraid Lab](https://docs.qbraid.com/projects/lab/en/latest/lab/overview.html) platform, the CLI now supports local installations as well. This enhancement broadens access to features like [qBraid Quantum Jobs](https://docs.qbraid.com/projects/lab/en/latest/lab/quantum_jobs.html), enabling direct acess to QPU devices from leading providers like IonQ, Oxford Quantum Circuits, QuEra, and Rigetti, as well as on-demand simulators from AWS, all using qBraid credits, with no additional access keys required.
62
54
 
63
55
  ## Getting Started
64
56
 
65
- To use the qBraid CLI, login to qBraid (or create an account), launch Lab, and then open Terminal. You can also access the CLI directly from within [Notebooks](https://docs.qbraid.com/projects/lab/en/latest/lab/notebooks.html) using the ``!`` operator. See [quantum jobs example](https://github.com/qBraid/qbraid-lab-demo/blob/045c7a8fbdcae66a7e64533dd9fe0e981dc02cf4/qbraid_lab/quantum_jobs/aws_quantum_jobs.ipynb).
57
+ The qBraid-CLI comes pre-installed and pre-configured in qBraid Lab:
66
58
 
67
59
  - [Launch qBraid Lab &rarr;](https://lab.qbraid.com/)
68
60
  - [Make an account &rarr;](https://account.qbraid.com/)
69
61
 
70
62
  For help, see qBraid Lab User Guide: [Getting Started](https://docs.qbraid.com/projects/lab/en/latest/lab/getting_started.html).
71
63
 
64
+ You can also install the qBraid-CLI from PyPI with:
65
+
66
+ ```bash
67
+ pip install qbraid-cli
68
+ ```
69
+
70
+ ## Local configuration
71
+
72
+ After installation, you must configure your account credentials to use the CLI locally:
73
+
74
+ 1. Create a qBraid account or log in to your existing account by visiting
75
+ [account.qbraid.com](https://account.qbraid.com/)
76
+ 2. Copy your API Key token from the left side of
77
+ your [account page](https://account.qbraid.com/):
78
+ 3. Save your API key from step 2 in local configuration file `~/.qbraid/qbraidrc` using:
79
+
80
+ ```bash
81
+ $ qbraid configure
82
+ ```
83
+
72
84
  ## Basic Commands
73
85
 
74
- ```shell
86
+ ```bash
75
87
  $ qbraid
76
88
  ----------------------------------
77
89
  * Welcome to the qBraid CLI! *
@@ -94,19 +106,19 @@ Reference Docs: https://docs.qbraid.com/projects/cli/en/stable/guide/overview.ht
94
106
 
95
107
  A qBraid CLI command has the following structure:
96
108
 
97
- ```shell
109
+ ```bash
98
110
  $ qbraid <command> <subcommand> [options and parameters]
99
111
  ```
100
112
 
101
113
  For example, to list installed environments, the command would be:
102
114
 
103
- ```shell
115
+ ```bash
104
116
  $ qbraid envs list
105
117
  ```
106
118
 
107
119
  To view help documentation, use one of the following:
108
120
 
109
- ```shell
121
+ ```bash
110
122
  $ qbraid --help
111
123
  $ qbraid <command> --help
112
124
  $ qbraid <command> <subcommand> --help
@@ -114,7 +126,7 @@ $ qbraid <command> <subcommand> --help
114
126
 
115
127
  For example:
116
128
 
117
- ```shell
129
+ ```bash
118
130
  $ qbraid --help
119
131
 
120
132
  Usage: qbraid [OPTIONS] COMMAND [ARGS]...
@@ -138,6 +150,28 @@ Commands
138
150
 
139
151
  To get the version of the qBraid CLI:
140
152
 
141
- ```shell
153
+ ```bash
142
154
  $ qbraid --version
143
155
  ```
156
+
157
+ ## Magic Commands
158
+
159
+ You can also access the CLI directly from within [Notebooks](https://docs.qbraid.com/projects/lab/en/latest/lab/notebooks.html) using IPython [magic commands](https://ipython.readthedocs.io/en/stable/interactive/magics.html). First, configure the qBraid magic commands extension using:
160
+
161
+ ```bash
162
+ $ qbraid configure magic
163
+ ```
164
+
165
+ The above command can also be executed from within a Jupyter notebook using the ``!`` operator. Then, from within a notebook cell, load the qBraid magic IPython extension using:
166
+
167
+ ```python
168
+ In [1]: %load_ext qbraid_magic
169
+ ```
170
+
171
+ Now you can continue to use the qBraid-CLI as normal from within your Jupyter notebook using the magic ``%`` operator, e.g.
172
+
173
+ ```python
174
+ In [2]: %qbraid jobs state
175
+
176
+ In [3]: %qbraid jobs enable braket -y
177
+ ```
@@ -5,24 +5,43 @@
5
5
  [![Python verions](https://img.shields.io/pypi/pyversions/qbraid-cli.svg?color=blue)](https://pypi.org/project/qbraid-cli/)
6
6
  [![Downloads](https://static.pepy.tech/badge/qbraid-cli)](https://pepy.tech/project/qbraid-cli)
7
7
  [![GitHub](https://img.shields.io/badge/issue_tracking-github-blue?logo=github)](https://github.com/qBraid/qBraid-Lab/issues)
8
- [![Discord](https://img.shields.io/discord/771898982564626445.svg?color=pink)](https://discord.gg/KugF6Cnncm)
9
8
 
10
9
  Command Line Interface for interacting with all parts of the qBraid platform.
11
10
 
12
- The **qBraid CLI** is a specialized command-line interface tool designed *exclusively* for use within the [qBraid Lab](https://docs.qbraid.com/projects/lab/en/latest/lab/overview.html) platform. It is not intended for local installations or use outside the qBraid Lab environment. This tool ensures seamless integration and optimized performance specifically tailored for qBraid Lab's unique cloud-based quantum computing ecosystem.
11
+ The **qBraid CLI** is a versatile command-line interface tool designed for seamless interaction with qBraid cloud services and quantum software management tools. Initially exclusive to the [qBraid Lab](https://docs.qbraid.com/projects/lab/en/latest/lab/overview.html) platform, the CLI now supports local installations as well. This enhancement broadens access to features like [qBraid Quantum Jobs](https://docs.qbraid.com/projects/lab/en/latest/lab/quantum_jobs.html), enabling direct acess to QPU devices from leading providers like IonQ, Oxford Quantum Circuits, QuEra, and Rigetti, as well as on-demand simulators from AWS, all using qBraid credits, with no additional access keys required.
13
12
 
14
13
  ## Getting Started
15
14
 
16
- To use the qBraid CLI, login to qBraid (or create an account), launch Lab, and then open Terminal. You can also access the CLI directly from within [Notebooks](https://docs.qbraid.com/projects/lab/en/latest/lab/notebooks.html) using the ``!`` operator. See [quantum jobs example](https://github.com/qBraid/qbraid-lab-demo/blob/045c7a8fbdcae66a7e64533dd9fe0e981dc02cf4/qbraid_lab/quantum_jobs/aws_quantum_jobs.ipynb).
15
+ The qBraid-CLI comes pre-installed and pre-configured in qBraid Lab:
17
16
 
18
17
  - [Launch qBraid Lab &rarr;](https://lab.qbraid.com/)
19
18
  - [Make an account &rarr;](https://account.qbraid.com/)
20
19
 
21
20
  For help, see qBraid Lab User Guide: [Getting Started](https://docs.qbraid.com/projects/lab/en/latest/lab/getting_started.html).
22
21
 
22
+ You can also install the qBraid-CLI from PyPI with:
23
+
24
+ ```bash
25
+ pip install qbraid-cli
26
+ ```
27
+
28
+ ## Local configuration
29
+
30
+ After installation, you must configure your account credentials to use the CLI locally:
31
+
32
+ 1. Create a qBraid account or log in to your existing account by visiting
33
+ [account.qbraid.com](https://account.qbraid.com/)
34
+ 2. Copy your API Key token from the left side of
35
+ your [account page](https://account.qbraid.com/):
36
+ 3. Save your API key from step 2 in local configuration file `~/.qbraid/qbraidrc` using:
37
+
38
+ ```bash
39
+ $ qbraid configure
40
+ ```
41
+
23
42
  ## Basic Commands
24
43
 
25
- ```shell
44
+ ```bash
26
45
  $ qbraid
27
46
  ----------------------------------
28
47
  * Welcome to the qBraid CLI! *
@@ -45,19 +64,19 @@ Reference Docs: https://docs.qbraid.com/projects/cli/en/stable/guide/overview.ht
45
64
 
46
65
  A qBraid CLI command has the following structure:
47
66
 
48
- ```shell
67
+ ```bash
49
68
  $ qbraid <command> <subcommand> [options and parameters]
50
69
  ```
51
70
 
52
71
  For example, to list installed environments, the command would be:
53
72
 
54
- ```shell
73
+ ```bash
55
74
  $ qbraid envs list
56
75
  ```
57
76
 
58
77
  To view help documentation, use one of the following:
59
78
 
60
- ```shell
79
+ ```bash
61
80
  $ qbraid --help
62
81
  $ qbraid <command> --help
63
82
  $ qbraid <command> <subcommand> --help
@@ -65,7 +84,7 @@ $ qbraid <command> <subcommand> --help
65
84
 
66
85
  For example:
67
86
 
68
- ```shell
87
+ ```bash
69
88
  $ qbraid --help
70
89
 
71
90
  Usage: qbraid [OPTIONS] COMMAND [ARGS]...
@@ -89,6 +108,28 @@ Commands
89
108
 
90
109
  To get the version of the qBraid CLI:
91
110
 
92
- ```shell
111
+ ```bash
93
112
  $ qbraid --version
94
113
  ```
114
+
115
+ ## Magic Commands
116
+
117
+ You can also access the CLI directly from within [Notebooks](https://docs.qbraid.com/projects/lab/en/latest/lab/notebooks.html) using IPython [magic commands](https://ipython.readthedocs.io/en/stable/interactive/magics.html). First, configure the qBraid magic commands extension using:
118
+
119
+ ```bash
120
+ $ qbraid configure magic
121
+ ```
122
+
123
+ The above command can also be executed from within a Jupyter notebook using the ``!`` operator. Then, from within a notebook cell, load the qBraid magic IPython extension using:
124
+
125
+ ```python
126
+ In [1]: %load_ext qbraid_magic
127
+ ```
128
+
129
+ Now you can continue to use the qBraid-CLI as normal from within your Jupyter notebook using the magic ``%`` operator, e.g.
130
+
131
+ ```python
132
+ In [2]: %qbraid jobs state
133
+
134
+ In [3]: %qbraid jobs enable braket -y
135
+ ```
@@ -109,4 +109,5 @@ Documentation
109
109
  tree/qbraid_devices
110
110
  tree/qbraid_envs
111
111
  tree/qbraid_jobs
112
- tree/qbraid_kernels
112
+ tree/qbraid_kernels
113
+ tree/qbraid_pip
@@ -1,7 +1,7 @@
1
- sphinx~=7.2.6
1
+ sphinx>=7.2.6,<7.4.0
2
2
  sphinx-rtd-theme>=1.3,<2.1
3
3
  docutils<0.22
4
- typer
5
- m2r
4
+ toml
6
5
  build
7
- toml
6
+ m2r
7
+ typer
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "qbraid-cli"
7
- version = "0.8.0.dev7"
7
+ version = "0.8.1"
8
8
  description = "Command Line Interface for interacting with all parts of the qBraid platform."
9
9
  readme = "README.md"
10
10
  authors = [{ name = "qBraid Development Team", email = "contact@qbraid.com" }]
@@ -31,7 +31,7 @@ dependencies = [
31
31
  "rich>=10.11.0",
32
32
  "jupyter_client>=7.0.0,<9.0.0",
33
33
  "ipykernel",
34
- "qbraid-core>=0.1.4",
34
+ "qbraid-core>=0.1.10",
35
35
  ]
36
36
  requires-python = ">= 3.9"
37
37
 
@@ -44,8 +44,7 @@ Discord = "https://discord.gg/KugF6Cnncm"
44
44
 
45
45
  [project.optional-dependencies]
46
46
  jobs = ["amazon-braket-sdk>=1.48.1"]
47
- dev = ["black", "isort", "pylint", "pytest"]
48
- docs = ["sphinx~=7.2.6", "sphinx-rtd-theme>=1.3,<2.1", "docutils<0.22", "toml", "build", "m2r", "typer"]
47
+ dev = ["ruff", "isort", "black", "pytest"]
49
48
 
50
49
  [project.scripts]
51
50
  qbraid = "qbraid_cli.main:app"
@@ -77,3 +76,26 @@ ignore-paths = [
77
76
  [tool.pytest.ini_options]
78
77
  addopts = "-ra"
79
78
  testpaths = ["tests"]
79
+
80
+ [tool.coverage.run]
81
+ parallel = true
82
+ source = ["qbraid_cli"]
83
+
84
+ [tool.coverage.report]
85
+ show_missing = true
86
+ skip_covered = true
87
+ ignore_errors = true
88
+ exclude_lines = [
89
+ "raise NotImplementedError",
90
+ "return NotImplemented",
91
+ "def __repr__",
92
+ "if __name__ == .__main__.:",
93
+ "if TYPE_CHECKING:",
94
+ "logger.debug"
95
+ ]
96
+
97
+ [tool.coverage.html]
98
+ directory = "build/coverage"
99
+
100
+ [tool.coverage.xml]
101
+ output = "build/coverage/coverage.xml"
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '0.1.dev1+g8891b4e'
16
- __version_tuple__ = version_tuple = (0, 1, 'dev1', 'g8891b4e')
15
+ __version__ = version = '0.1.dev1+g66faca7'
16
+ __version_tuple__ = version_tuple = (0, 1, 'dev1', 'g66faca7')
@@ -7,3 +7,5 @@ Module defining the qbraid admin namespace
7
7
  """
8
8
 
9
9
  from .app import admin_app
10
+
11
+ __all__ = ["admin_app"]
@@ -3,21 +3,20 @@
3
3
 
4
4
  """
5
5
  Module defining commands in the 'qbraid admin' namespace.
6
-
7
6
  """
8
7
 
9
8
  from typing import List
10
9
 
11
10
  import typer
12
11
 
12
+ from qbraid_cli.admin.buildlogs import buildlogs_app
13
13
  from qbraid_cli.admin.headers import check_and_fix_headers
14
14
  from qbraid_cli.admin.validation import validate_header_type, validate_paths_exist
15
15
 
16
- # disable pretty_exceptions_show_locals to avoid printing sensative information in the traceback
17
16
  admin_app = typer.Typer(
18
- help="CI/CD commands for qBraid maintainers.",
19
- pretty_exceptions_show_locals=False,
17
+ help="CI/CD commands for qBraid maintainers.", pretty_exceptions_show_locals=False
20
18
  )
19
+ admin_app.add_typer(buildlogs_app, name="buildlogs")
21
20
 
22
21
 
23
22
  @admin_app.command(name="headers")