qbraid-cli 0.8.1a0__tar.gz → 0.8.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.

Potentially problematic release.


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

Files changed (143) hide show
  1. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/.github/ISSUE_TEMPLATE/bug_report.yml +1 -8
  2. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -9
  3. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/.github/PULL_REQUEST_TEMPLATE.md +1 -1
  4. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/.github/workflows/docs.yml +4 -4
  5. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/.github/workflows/format.yml +3 -3
  6. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/.github/workflows/main.yml +17 -9
  7. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/.github/workflows/pre-release.yml +2 -2
  8. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/.github/workflows/publish.yml +2 -2
  9. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/.readthedocs.yml +2 -1
  10. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/CONTRIBUTING.md +20 -17
  11. qbraid_cli-0.8.3/LICENSE +41 -0
  12. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/MANIFEST.IN +2 -1
  13. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/PKG-INFO +16 -23
  14. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/README.md +10 -11
  15. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/index.rst +2 -1
  16. qbraid_cli-0.8.3/docs/requirements.txt +7 -0
  17. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/pyproject.toml +24 -5
  18. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/_version.py +2 -2
  19. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/admin/__init__.py +2 -0
  20. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/admin/app.py +3 -4
  21. qbraid_cli-0.8.3/qbraid_cli/admin/buildlogs.py +114 -0
  22. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/configure/__init__.py +2 -0
  23. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/credits/__init__.py +2 -0
  24. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/devices/__init__.py +2 -0
  25. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/envs/__init__.py +2 -0
  26. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/envs/app.py +36 -42
  27. qbraid_cli-0.8.3/qbraid_cli/envs/create.py +61 -0
  28. qbraid_cli-0.8.3/qbraid_cli/envs/data_handling.py +46 -0
  29. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/jobs/__init__.py +2 -0
  30. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/jobs/toggle_braket.py +4 -7
  31. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/kernels/__init__.py +2 -0
  32. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/kernels/app.py +12 -6
  33. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/main.py +2 -0
  34. qbraid_cli-0.8.3/qbraid_cli/pip/__init__.py +11 -0
  35. qbraid_cli-0.8.3/qbraid_cli/pip/app.py +50 -0
  36. qbraid_cli-0.8.3/qbraid_cli/pip/hooks.py +73 -0
  37. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli.egg-info/PKG-INFO +16 -23
  38. qbraid_cli-0.8.3/qbraid_cli.egg-info/SOURCES.txt +125 -0
  39. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli.egg-info/requires.txt +4 -12
  40. qbraid_cli-0.8.3/ruff.toml +62 -0
  41. {qbraid_cli-0.8.1a0/tests/test_credits → qbraid_cli-0.8.3/tests/credits}/test_credits_value.py +13 -11
  42. qbraid_cli-0.8.1a0/tests/test_envs/test_create/test_create_qbraid_env_assets.py → qbraid_cli-0.8.3/tests/envs/test_envs_create_qbraid_env_assets.py +0 -3
  43. qbraid_cli-0.8.1a0/tests/test_envs/test_data_handling/test_validate_env_name.py → qbraid_cli-0.8.3/tests/envs/test_envs_create_validate_env_name.py +38 -0
  44. {qbraid_cli-0.8.1a0/tests/test_envs/test_app → qbraid_cli-0.8.3/tests/envs}/test_envs_remove.py +6 -3
  45. qbraid_cli-0.8.1a0/tests/test_jobs/test_toggle_braket/test_get_package_data.py → qbraid_cli-0.8.3/tests/jobs/test_jobs_toggle_braket_get_data.py +17 -17
  46. qbraid_cli-0.8.1a0/tests/test_jobs/test_validation/test_get_state.py → qbraid_cli-0.8.3/tests/jobs/test_jobs_validate_get_state.py +33 -1
  47. {qbraid_cli-0.8.1a0/tests/test_kernels → qbraid_cli-0.8.3/tests/kernels}/test_kernels_list.py +6 -14
  48. qbraid_cli-0.8.3/tools/split_md.py +179 -0
  49. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/tools/split_rst.py +3 -0
  50. qbraid_cli-0.8.3/tools/stamp_pre_release.py +18 -0
  51. qbraid_cli-0.8.1a0/qbraid_cli/envs/create.py +0 -128
  52. qbraid_cli-0.8.1a0/qbraid_cli/envs/data_handling.py +0 -140
  53. qbraid_cli-0.8.1a0/qbraid_cli.egg-info/SOURCES.txt +0 -129
  54. qbraid_cli-0.8.1a0/tests/test_envs/test_create/test_replace_str.py +0 -25
  55. qbraid_cli-0.8.1a0/tests/test_envs/test_create/test_update_state_json.py +0 -61
  56. qbraid_cli-0.8.1a0/tests/test_envs/test_data_handling/__init__.py +0 -0
  57. qbraid_cli-0.8.1a0/tests/test_envs/test_data_handling/test_installed_envs_data.py +0 -87
  58. qbraid_cli-0.8.1a0/tests/test_envs/test_data_handling/test_is_valid_env_name.py +0 -43
  59. qbraid_cli-0.8.1a0/tests/test_envs/test_data_handling/test_request_delete_env.py +0 -31
  60. qbraid_cli-0.8.1a0/tests/test_jobs/__init__.py +0 -0
  61. qbraid_cli-0.8.1a0/tests/test_jobs/test_app/__init__.py +0 -0
  62. qbraid_cli-0.8.1a0/tests/test_jobs/test_toggle_braket/__init__.py +0 -0
  63. qbraid_cli-0.8.1a0/tests/test_jobs/test_validation/__init__.py +0 -0
  64. qbraid_cli-0.8.1a0/tests/test_jobs/test_validation/test_run_progress_get_state.py +0 -43
  65. qbraid_cli-0.8.1a0/tests/test_kernels/__init__.py +0 -0
  66. qbraid_cli-0.8.1a0/tools/stamp_pre_release.py +0 -68
  67. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/.env.example +0 -0
  68. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/.gitignore +0 -0
  69. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/Makefile +0 -0
  70. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/Makefile +0 -0
  71. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/_static/api-key.png +0 -0
  72. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/_static/cards/jupyter.png +0 -0
  73. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/_static/cards/python.png +0 -0
  74. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/_static/cards/terminal.png +0 -0
  75. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/_static/favicon.ico +0 -0
  76. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/_static/logo.png +0 -0
  77. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/_static/style/custom.css +0 -0
  78. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/_static/style/s4defs-roles.css +0 -0
  79. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/configure.rst +0 -0
  80. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/credits.rst +0 -0
  81. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/devices-list.rst +0 -0
  82. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/devices.rst +0 -0
  83. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/envs-activate.rst +0 -0
  84. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/envs-list.rst +0 -0
  85. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/envs-uninstall.rst +0 -0
  86. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/envs.rst +0 -0
  87. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/jobs-add.rst +0 -0
  88. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/jobs-disable.rst +0 -0
  89. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/jobs-enable.rst +0 -0
  90. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/jobs-list.rst +0 -0
  91. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/jobs.rst +0 -0
  92. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/kernels.rst +0 -0
  93. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/cli/qbraid.rst +0 -0
  94. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/conf.py +0 -0
  95. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/guide/overview.rst +0 -0
  96. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/docs/make.bat +0 -0
  97. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/__init__.py +0 -0
  98. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/admin/headers.py +0 -0
  99. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/admin/validation.py +0 -0
  100. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/configure/actions.py +0 -0
  101. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/configure/app.py +0 -0
  102. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/credits/app.py +0 -0
  103. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/devices/app.py +0 -0
  104. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/devices/validation.py +0 -0
  105. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/envs/activate.py +0 -0
  106. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/exceptions.py +0 -0
  107. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/handlers.py +0 -0
  108. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/jobs/app.py +0 -0
  109. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli/jobs/validation.py +0 -0
  110. /qbraid_cli-0.8.1a0/tests/__init__.py → /qbraid_cli-0.8.3/qbraid_cli/py.typed +0 -0
  111. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli.egg-info/dependency_links.txt +0 -0
  112. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli.egg-info/entry_points.txt +0 -0
  113. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/qbraid_cli.egg-info/top_level.txt +0 -0
  114. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/setup.cfg +0 -0
  115. {qbraid_cli-0.8.1a0/tests/test_configure → qbraid_cli-0.8.3/tests}/__init__.py +0 -0
  116. {qbraid_cli-0.8.1a0/tests/test_credits → qbraid_cli-0.8.3/tests/configure}/__init__.py +0 -0
  117. /qbraid_cli-0.8.1a0/tests/test_configure/test_prompt_for_config.py → /qbraid_cli-0.8.3/tests/configure/test_configure_prompt_for_config.py +0 -0
  118. {qbraid_cli-0.8.1a0/tests/test_configure → qbraid_cli-0.8.3/tests/configure}/test_configure_set.py +0 -0
  119. /qbraid_cli-0.8.1a0/tests/test_configure/test_validate_input.py → /qbraid_cli-0.8.3/tests/configure/test_configure_validate_input.py +0 -0
  120. {qbraid_cli-0.8.1a0/tests/test_devices → qbraid_cli-0.8.3/tests/credits}/__init__.py +0 -0
  121. {qbraid_cli-0.8.1a0/tests/test_envs → qbraid_cli-0.8.3/tests/devices}/__init__.py +0 -0
  122. {qbraid_cli-0.8.1a0/tests/test_devices → qbraid_cli-0.8.3/tests/devices}/test_devices_list.py +0 -0
  123. /qbraid_cli-0.8.1a0/tests/test_devices/test_validations.py → /qbraid_cli-0.8.3/tests/devices/test_devices_validations.py +0 -0
  124. {qbraid_cli-0.8.1a0/tests/test_envs/test_activate → qbraid_cli-0.8.3/tests/envs}/__init__.py +0 -0
  125. {qbraid_cli-0.8.1a0/tests/test_envs/test_app → qbraid_cli-0.8.3/tests/envs}/test_envs_activate.py +0 -0
  126. /qbraid_cli-0.8.1a0/tests/test_envs/test_activate/test_find_shell_rc.py → /qbraid_cli-0.8.3/tests/envs/test_envs_activate_find_shell_rc.py +0 -0
  127. /qbraid_cli-0.8.1a0/tests/test_envs/test_activate/test_print_activate_command.py → /qbraid_cli-0.8.3/tests/envs/test_envs_activate_print_command.py +0 -0
  128. /qbraid_cli-0.8.1a0/tests/test_envs/test_activate/test_activate_pyenv.py → /qbraid_cli-0.8.3/tests/envs/test_envs_activate_pyenv.py +0 -0
  129. {qbraid_cli-0.8.1a0/tests/test_envs/test_app → qbraid_cli-0.8.3/tests/envs}/test_envs_create.py +0 -0
  130. {qbraid_cli-0.8.1a0/tests/test_envs/test_app → qbraid_cli-0.8.3/tests/envs}/test_envs_list.py +0 -0
  131. {qbraid_cli-0.8.1a0/tests/test_envs/test_app → qbraid_cli-0.8.3/tests/jobs}/__init__.py +0 -0
  132. {qbraid_cli-0.8.1a0/tests/test_jobs/test_app → qbraid_cli-0.8.3/tests/jobs}/test_jobs_disable.py +0 -0
  133. {qbraid_cli-0.8.1a0/tests/test_jobs/test_app → qbraid_cli-0.8.3/tests/jobs}/test_jobs_enable.py +0 -0
  134. {qbraid_cli-0.8.1a0/tests/test_jobs/test_app → qbraid_cli-0.8.3/tests/jobs}/test_jobs_list.py +0 -0
  135. {qbraid_cli-0.8.1a0/tests/test_jobs/test_app → qbraid_cli-0.8.3/tests/jobs}/test_jobs_state.py +0 -0
  136. /qbraid_cli-0.8.1a0/tests/test_jobs/test_toggle_braket/test_confirm_updates.py → /qbraid_cli-0.8.3/tests/jobs/test_jobs_toggle_braket_confirm.py +0 -0
  137. /qbraid_cli-0.8.1a0/tests/test_jobs/test_toggle_braket/test_disable_braket.py → /qbraid_cli-0.8.3/tests/jobs/test_jobs_toggle_braket_disable.py +0 -0
  138. /qbraid_cli-0.8.1a0/tests/test_jobs/test_toggle_braket/test_enable_braket.py → /qbraid_cli-0.8.3/tests/jobs/test_jobs_toggle_braket_enable.py +0 -0
  139. /qbraid_cli-0.8.1a0/tests/test_jobs/test_validation/test_handle_jobs_state.py → /qbraid_cli-0.8.3/tests/jobs/test_jobs_validate_handle_state.py +0 -0
  140. /qbraid_cli-0.8.1a0/tests/test_jobs/test_validation/test_validate_library.py → /qbraid_cli-0.8.3/tests/jobs/test_jobs_validate_library.py +0 -0
  141. {qbraid_cli-0.8.1a0/tests/test_envs/test_create → qbraid_cli-0.8.3/tests/kernels}/__init__.py +0 -0
  142. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/tools/create_dev_build.sh +0 -0
  143. {qbraid_cli-0.8.1a0 → qbraid_cli-0.8.3}/tools/install_wheel_extras.sh +0 -0
@@ -12,6 +12,7 @@ body:
12
12
  attributes:
13
13
  label: Environment
14
14
  value: |
15
+ - **qBraid-CORE version**:
15
16
  - **qBraid-CLI version**:
16
17
  - **Python version**:
17
18
  - **Operating system**:
@@ -31,11 +32,3 @@ body:
31
32
  description: We warmly welcome any recommendations on potential fixes, insights, or considerations that contributors should keep in mind when working to resolve this issue.
32
33
  validations:
33
34
  required: false
34
-
35
- - type: checkboxes
36
- id: agreement
37
- attributes:
38
- label: 'Please confirm the following:'
39
- options:
40
- - label: 'I have searched the existing issues and confirm this is a new bug report.'
41
- required: true
@@ -23,12 +23,3 @@ body:
23
23
  description: "Do you have an idea for how this could be implemented? Please include those details here."
24
24
  validations:
25
25
  required: false
26
-
27
- - type: checkboxes
28
- id: agreement
29
- attributes:
30
- label: 'Please confirm the following:'
31
- description: 'Understanding that feature requests are evaluated for their applicability and benefit to the community, and not all requests may be implemented.'
32
- options:
33
- - label: 'I have searched the existing issues and confirm this is a new feature request.'
34
- required: true
@@ -1,3 +1,3 @@
1
1
  <!-- Please link or tag any issues that is PR closes -->
2
2
 
3
- ## Changes
3
+ # Changes
@@ -12,20 +12,20 @@ jobs:
12
12
  runs-on: ubuntu-latest
13
13
 
14
14
  steps:
15
- - uses: actions/checkout@v3
15
+ - uses: actions/checkout@v4
16
16
  - name: Set up Python
17
- uses: actions/setup-python@v4
17
+ uses: actions/setup-python@v5
18
18
  with:
19
- python-version: '3.10'
19
+ python-version: '3.11'
20
20
  cache: pip
21
21
  - name: Install dependencies
22
22
  run: |
23
23
  python -m pip install --upgrade pip setuptools build
24
+ python -m pip install -r docs/requirements.txt
24
25
  - name: Build & install package
25
26
  run: |
26
27
  python -m build .
27
28
  python -m pip install dist/*.whl
28
- tools/install_wheel_extras.sh dist --extra docs
29
29
  - name: Generate docs assets
30
30
  run: |
31
31
  python -c "import pathlib; pathlib.Path('docs/tree').mkdir(parents=True, exist_ok=True)"
@@ -10,11 +10,11 @@ jobs:
10
10
  runs-on: ubuntu-latest
11
11
 
12
12
  steps:
13
- - uses: actions/checkout@v3
13
+ - uses: actions/checkout@v4
14
14
  - name: Set up Python
15
- uses: actions/setup-python@v4
15
+ uses: actions/setup-python@v5
16
16
  with:
17
- python-version: '3.10'
17
+ python-version: '3.11'
18
18
  - name: Install dependencies
19
19
  run: |
20
20
  pip install --upgrade pip
@@ -15,9 +15,9 @@ jobs:
15
15
  python-version: ['3.11']
16
16
 
17
17
  steps:
18
- - uses: actions/checkout@v3
18
+ - uses: actions/checkout@v4
19
19
  - name: Set up Python ${{ matrix.python-version }}
20
- uses: actions/setup-python@v4
20
+ uses: actions/setup-python@v5
21
21
  with:
22
22
  python-version: ${{ matrix.python-version }}
23
23
  cache: pip
@@ -29,7 +29,7 @@ jobs:
29
29
  run: |
30
30
  python -m build
31
31
  - name: Upload built package
32
- uses: actions/upload-artifact@v3
32
+ uses: actions/upload-artifact@v4
33
33
  with:
34
34
  name: built-package
35
35
  path: dist/*.whl
@@ -43,14 +43,14 @@ jobs:
43
43
  python-version: ['3.9', '3.10', '3.11', '3.12']
44
44
 
45
45
  steps:
46
- - uses: actions/checkout@v3
46
+ - uses: actions/checkout@v4
47
47
  - name: Set up Python ${{ matrix.python-version }}
48
- uses: actions/setup-python@v4
48
+ uses: actions/setup-python@v5
49
49
  with:
50
50
  python-version: ${{ matrix.python-version }}
51
51
  cache: pip
52
52
  - name: Download built package
53
- uses: actions/download-artifact@v3
53
+ uses: actions/download-artifact@v4
54
54
  with:
55
55
  name: built-package
56
56
  path: dist
@@ -64,9 +64,17 @@ jobs:
64
64
  shell: pwsh
65
65
  - name: Install testing dependencies
66
66
  run: |
67
- pip install pytest
67
+ pip install pytest pytest-cov
68
68
  - name: Run tests with pytest
69
69
  run: |
70
- pytest
70
+ pytest --cov=qbraid_cli tests/ --cov-report=html --cov-report=xml --cov-report=term --cov-config=pyproject.toml
71
71
  env:
72
- QBRAID_API_KEY: ${{ secrets.QBRAID_API_KEY }}
72
+ QBRAID_API_KEY: ${{ secrets.QBRAID_API_KEY }}
73
+ - name: Upload coverage to Codecov
74
+ if: matrix.python-version == '3.11' && matrix.os == 'ubuntu-latest'
75
+ uses: codecov/codecov-action@v4.0.1
76
+ with:
77
+ token: ${{ secrets.CODECOV_TOKEN }}
78
+ fail_ci_if_error: false
79
+ files: ./build/coverage/coverage.xml
80
+ verbose: true
@@ -9,12 +9,12 @@ jobs:
9
9
  environment: publish
10
10
  runs-on: ubuntu-latest
11
11
  steps:
12
- - uses: actions/checkout@v3
12
+ - uses: actions/checkout@v4
13
13
  with:
14
14
  fetch-depth: 1
15
15
 
16
16
  - name: Set up Python
17
- uses: actions/setup-python@v4
17
+ uses: actions/setup-python@v5
18
18
  with:
19
19
  python-version: '3.11'
20
20
 
@@ -9,12 +9,12 @@ jobs:
9
9
  environment: publish
10
10
  runs-on: ubuntu-latest
11
11
  steps:
12
- - uses: actions/checkout@v3
12
+ - uses: actions/checkout@v4
13
13
  with:
14
14
  fetch-depth: 1
15
15
 
16
16
  - name: Set up Python
17
- uses: actions/setup-python@v4
17
+ uses: actions/setup-python@v5
18
18
  with:
19
19
  python-version: '3.11'
20
20
 
@@ -10,9 +10,10 @@ build:
10
10
  tools:
11
11
  python: "3.10"
12
12
  commands:
13
+ - python -m pip install -r docs/requirements.txt
14
+ - python -m pip install build
13
15
  - python -m build .
14
16
  - python -m pip install dist/*.whl
15
- - tools/install_wheel_extras.sh dist --extra docs
16
17
  - mkdir -p docs/tree
17
18
  - rm -f docs/tree/*.rst
18
19
  - typer qbraid_cli.main utils docs --name=qbraid --output=docs/tree/qbraid.md
@@ -1,5 +1,10 @@
1
1
  # Contributing
2
2
 
3
+ [![CI](https://github.com/qBraid/qBraid-CLI/actions/workflows/main.yml/badge.svg?branch=main)](https://github.com/qBraid/qBraid-CLI/actions/workflows/main.yml)
4
+ [![Documentation Status](https://readthedocs.com/projects/qbraid-qbraid-cli/badge/?version=latest)](https://docs.qbraid.com/projects/cli/en/latest/?badge=latest)
5
+ [![codecov](https://codecov.io/gh/qBraid/qBraid-CLI/graph/badge.svg?token=wVNrLILy9c)](https://codecov.io/gh/qBraid/qBraid-CLI)
6
+
7
+
3
8
  Welcome! We're delighted that you're interested in contributing. Your help is essential for keeping the project great.
4
9
 
5
10
  ## Getting Started
@@ -32,7 +37,7 @@ qbraid --version
32
37
 
33
38
  To view available `make` commands, run:
34
39
 
35
- ```shell
40
+ ```bash
36
41
  make help
37
42
  ```
38
43
 
@@ -40,19 +45,19 @@ make help
40
45
 
41
46
  Install test dependencies:
42
47
 
43
- ```shell
48
+ ```bash
44
49
  pip install pytest
45
50
  ```
46
51
 
47
52
  And run tests:
48
53
 
49
- ```shell
54
+ ```bash
50
55
  pytest tests
51
56
  ```
52
57
 
53
58
  You can also run tests with make:
54
59
 
55
- ```shell
60
+ ```bash
56
61
  make test
57
62
  ```
58
63
 
@@ -60,19 +65,19 @@ make test
60
65
 
61
66
  To generate the API reference documentation locally, install the necessary requirements:
62
67
 
63
- ```shell
68
+ ```bash
64
69
  pip install -r docs/requirements.txt
65
70
  ```
66
71
 
67
72
  And then run
68
73
 
69
- ```shell
74
+ ```bash
70
75
  make docs
71
76
  ```
72
77
 
73
78
  Alternatively, you can generate command tree `.rst` files step-by-step:
74
79
 
75
- ```shell
80
+ ```bash
76
81
  mkdir docs/tree
77
82
  typer qbraid_cli.main utils docs --name=qbraid --output=docs/tree/qbraid.md
78
83
  m2r docs/tree/qbraid.md
@@ -82,31 +87,29 @@ python tools/split_rst.py docs/tree/qbraid.rst
82
87
 
83
88
  And then, build the docs:
84
89
 
85
- ```shell
90
+ ```bash
86
91
  sphinx-build -W -b html docs docs/build/html
87
92
  ```
88
93
 
89
94
  You can view the generated documentation in your browser (on OS X) using:
90
95
 
91
- ```shell
96
+ ```bash
92
97
  open docs/build/html/index.html
93
98
  ```
94
99
 
95
100
  ## Code style
96
101
 
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).
102
+ 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
103
 
100
104
  Install linters:
101
105
 
102
- ```shell
103
- pip install black isort pylint
106
+ ```bash
107
+ pip install ruff qbraid-cli
104
108
  ```
105
109
 
106
110
  Run the following and make changes as needed to satisfy format checks:
107
111
 
108
- ```shell
109
- black qbraid_cli tests tools
110
- isort qbraid_cli tests tools
111
- pylint qbraid_cli tests tools
112
+ ```bash
113
+ ruff format qbraid_cli tests tools
114
+ qbraid admin headers qbraid_cli tests tools --type=default --fix
112
115
  ```
@@ -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.1a0
3
+ Version: 0.8.3
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,20 @@ 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.16
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.4.0,>=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"
42
+ Requires-Dist: pytest-cov; extra == "dev"
49
43
 
50
44
  <img width="full" alt="qbraid_cli" src="https://qbraid-static.s3.amazonaws.com/logos/qbraid-cli-banner.png">
51
45
 
@@ -54,11 +48,10 @@ Requires-Dist: typer; extra == "docs"
54
48
  [![Python verions](https://img.shields.io/pypi/pyversions/qbraid-cli.svg?color=blue)](https://pypi.org/project/qbraid-cli/)
55
49
  [![Downloads](https://static.pepy.tech/badge/qbraid-cli)](https://pepy.tech/project/qbraid-cli)
56
50
  [![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
51
 
59
52
  Command Line Interface for interacting with all parts of the qBraid platform.
60
53
 
61
- 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.
54
+ 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, Rigetti, and IQM, as well as on-demand simulators from AWS, all using qBraid credits, with no additional access keys required.
62
55
 
63
56
  ## Getting Started
64
57
 
@@ -71,7 +64,7 @@ For help, see qBraid Lab User Guide: [Getting Started](https://docs.qbraid.com/p
71
64
 
72
65
  You can also install the qBraid-CLI from PyPI with:
73
66
 
74
- ```shell
67
+ ```bash
75
68
  pip install qbraid-cli
76
69
  ```
77
70
 
@@ -85,13 +78,13 @@ After installation, you must configure your account credentials to use the CLI l
85
78
  your [account page](https://account.qbraid.com/):
86
79
  3. Save your API key from step 2 in local configuration file `~/.qbraid/qbraidrc` using:
87
80
 
88
- ```shell
81
+ ```bash
89
82
  $ qbraid configure
90
83
  ```
91
84
 
92
85
  ## Basic Commands
93
86
 
94
- ```shell
87
+ ```bash
95
88
  $ qbraid
96
89
  ----------------------------------
97
90
  * Welcome to the qBraid CLI! *
@@ -114,19 +107,19 @@ Reference Docs: https://docs.qbraid.com/projects/cli/en/stable/guide/overview.ht
114
107
 
115
108
  A qBraid CLI command has the following structure:
116
109
 
117
- ```shell
110
+ ```bash
118
111
  $ qbraid <command> <subcommand> [options and parameters]
119
112
  ```
120
113
 
121
114
  For example, to list installed environments, the command would be:
122
115
 
123
- ```shell
116
+ ```bash
124
117
  $ qbraid envs list
125
118
  ```
126
119
 
127
120
  To view help documentation, use one of the following:
128
121
 
129
- ```shell
122
+ ```bash
130
123
  $ qbraid --help
131
124
  $ qbraid <command> --help
132
125
  $ qbraid <command> <subcommand> --help
@@ -134,7 +127,7 @@ $ qbraid <command> <subcommand> --help
134
127
 
135
128
  For example:
136
129
 
137
- ```shell
130
+ ```bash
138
131
  $ qbraid --help
139
132
 
140
133
  Usage: qbraid [OPTIONS] COMMAND [ARGS]...
@@ -158,7 +151,7 @@ Commands
158
151
 
159
152
  To get the version of the qBraid CLI:
160
153
 
161
- ```shell
154
+ ```bash
162
155
  $ qbraid --version
163
156
  ```
164
157
 
@@ -166,7 +159,7 @@ $ qbraid --version
166
159
 
167
160
  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:
168
161
 
169
- ```shell
162
+ ```bash
170
163
  $ qbraid configure magic
171
164
  ```
172
165
 
@@ -5,11 +5,10 @@
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 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.
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, Rigetti, and IQM, 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
 
@@ -22,7 +21,7 @@ For help, see qBraid Lab User Guide: [Getting Started](https://docs.qbraid.com/p
22
21
 
23
22
  You can also install the qBraid-CLI from PyPI with:
24
23
 
25
- ```shell
24
+ ```bash
26
25
  pip install qbraid-cli
27
26
  ```
28
27
 
@@ -36,13 +35,13 @@ After installation, you must configure your account credentials to use the CLI l
36
35
  your [account page](https://account.qbraid.com/):
37
36
  3. Save your API key from step 2 in local configuration file `~/.qbraid/qbraidrc` using:
38
37
 
39
- ```shell
38
+ ```bash
40
39
  $ qbraid configure
41
40
  ```
42
41
 
43
42
  ## Basic Commands
44
43
 
45
- ```shell
44
+ ```bash
46
45
  $ qbraid
47
46
  ----------------------------------
48
47
  * Welcome to the qBraid CLI! *
@@ -65,19 +64,19 @@ Reference Docs: https://docs.qbraid.com/projects/cli/en/stable/guide/overview.ht
65
64
 
66
65
  A qBraid CLI command has the following structure:
67
66
 
68
- ```shell
67
+ ```bash
69
68
  $ qbraid <command> <subcommand> [options and parameters]
70
69
  ```
71
70
 
72
71
  For example, to list installed environments, the command would be:
73
72
 
74
- ```shell
73
+ ```bash
75
74
  $ qbraid envs list
76
75
  ```
77
76
 
78
77
  To view help documentation, use one of the following:
79
78
 
80
- ```shell
79
+ ```bash
81
80
  $ qbraid --help
82
81
  $ qbraid <command> --help
83
82
  $ qbraid <command> <subcommand> --help
@@ -85,7 +84,7 @@ $ qbraid <command> <subcommand> --help
85
84
 
86
85
  For example:
87
86
 
88
- ```shell
87
+ ```bash
89
88
  $ qbraid --help
90
89
 
91
90
  Usage: qbraid [OPTIONS] COMMAND [ARGS]...
@@ -109,7 +108,7 @@ Commands
109
108
 
110
109
  To get the version of the qBraid CLI:
111
110
 
112
- ```shell
111
+ ```bash
113
112
  $ qbraid --version
114
113
  ```
115
114
 
@@ -117,7 +116,7 @@ $ qbraid --version
117
116
 
118
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:
119
118
 
120
- ```shell
119
+ ```bash
121
120
  $ qbraid configure magic
122
121
  ```
123
122
 
@@ -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
@@ -0,0 +1,7 @@
1
+ sphinx>=7.2.6,<7.4.0
2
+ sphinx-rtd-theme>=1.3,<2.1
3
+ docutils<0.22
4
+ toml
5
+ build
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.1-alpha"
7
+ version = "0.8.3"
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.16",
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,<7.4.0", "sphinx-rtd-theme>=1.3,<2.1", "docutils<0.22", "toml", "build", "m2r", "typer"]
47
+ dev = ["ruff", "isort", "black", "pytest", "pytest-cov"]
49
48
 
50
49
  [project.scripts]
51
50
  qbraid = "qbraid_cli.main:app"
@@ -55,7 +54,7 @@ write_to = "qbraid_cli/_version.py"
55
54
 
56
55
  [tool.black]
57
56
  line-length = 100
58
- target-version = ["py39", "py310", "py311", "py312"]
57
+ target-version = ["py39", "py310", "py311"]
59
58
 
60
59
  [tool.isort]
61
60
  profile = "black"
@@ -77,3 +76,23 @@ 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
+ omit = [
84
+ "**/qbraid_cli/admin/buildlogs.py"
85
+ ]
86
+
87
+ [tool.coverage.report]
88
+ show_missing = true
89
+ skip_covered = true
90
+ ignore_errors = true
91
+ exclude_lines = [
92
+ "raise NotImplementedError",
93
+ "return NotImplemented",
94
+ "def __repr__",
95
+ "if __name__ == .__main__.:",
96
+ "if TYPE_CHECKING:",
97
+ "logger.debug"
98
+ ]
@@ -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+gc908824'
16
- __version_tuple__ = version_tuple = (0, 1, 'dev1', 'gc908824')
15
+ __version__ = version = '0.1.dev1+gd2e0183'
16
+ __version_tuple__ = version_tuple = (0, 1, 'dev1', 'gd2e0183')
@@ -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"]