qbraid-cli 0.8.4a0__tar.gz → 0.8.4b0__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 (127) hide show
  1. qbraid_cli-0.8.4b0/.github/workflows/bump-version.yml +71 -0
  2. qbraid_cli-0.8.4b0/.github/workflows/tag-on-merge.yml +36 -0
  3. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/PKG-INFO +2 -2
  4. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/pyproject.toml +2 -2
  5. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/_version.py +2 -2
  6. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/envs/create.py +4 -8
  7. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/kernels/app.py +32 -14
  8. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli.egg-info/PKG-INFO +2 -2
  9. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli.egg-info/SOURCES.txt +3 -0
  10. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli.egg-info/requires.txt +1 -1
  11. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/kernels/test_kernels_list.py +7 -9
  12. qbraid_cli-0.8.4b0/tools/bump_version.py +21 -0
  13. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tools/split_md.py +0 -0
  14. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/.env.example +0 -0
  15. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  16. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  17. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  18. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/.github/workflows/docs.yml +0 -0
  19. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/.github/workflows/format.yml +0 -0
  20. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/.github/workflows/main.yml +0 -0
  21. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/.github/workflows/pre-release.yml +0 -0
  22. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/.github/workflows/publish.yml +0 -0
  23. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/.gitignore +0 -0
  24. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/.readthedocs.yml +0 -0
  25. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/CONTRIBUTING.md +0 -0
  26. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/LICENSE +0 -0
  27. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/MANIFEST.IN +0 -0
  28. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/Makefile +0 -0
  29. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/README.md +0 -0
  30. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/Makefile +0 -0
  31. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/_static/api-key.png +0 -0
  32. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/_static/cards/jupyter.png +0 -0
  33. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/_static/cards/python.png +0 -0
  34. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/_static/cards/terminal.png +0 -0
  35. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/_static/favicon.ico +0 -0
  36. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/_static/logo.png +0 -0
  37. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/_static/style/custom.css +0 -0
  38. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/_static/style/s4defs-roles.css +0 -0
  39. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/configure.rst +0 -0
  40. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/credits.rst +0 -0
  41. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/devices-list.rst +0 -0
  42. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/devices.rst +0 -0
  43. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/envs-activate.rst +0 -0
  44. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/envs-list.rst +0 -0
  45. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/envs-uninstall.rst +0 -0
  46. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/envs.rst +0 -0
  47. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/jobs-add.rst +0 -0
  48. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/jobs-disable.rst +0 -0
  49. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/jobs-enable.rst +0 -0
  50. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/jobs-list.rst +0 -0
  51. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/jobs.rst +0 -0
  52. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/kernels.rst +0 -0
  53. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/cli/qbraid.rst +0 -0
  54. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/conf.py +0 -0
  55. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/guide/overview.rst +0 -0
  56. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/index.rst +0 -0
  57. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/make.bat +0 -0
  58. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/docs/requirements.txt +0 -0
  59. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/__init__.py +0 -0
  60. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/admin/__init__.py +0 -0
  61. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/admin/app.py +0 -0
  62. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/admin/buildlogs.py +0 -0
  63. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/admin/headers.py +0 -0
  64. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/admin/validation.py +0 -0
  65. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/configure/__init__.py +0 -0
  66. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/configure/actions.py +0 -0
  67. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/configure/app.py +0 -0
  68. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/credits/__init__.py +0 -0
  69. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/credits/app.py +0 -0
  70. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/devices/__init__.py +0 -0
  71. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/devices/app.py +0 -0
  72. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/devices/validation.py +0 -0
  73. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/envs/__init__.py +0 -0
  74. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/envs/activate.py +0 -0
  75. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/envs/app.py +0 -0
  76. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/envs/data_handling.py +0 -0
  77. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/exceptions.py +0 -0
  78. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/handlers.py +0 -0
  79. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/jobs/__init__.py +0 -0
  80. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/jobs/app.py +0 -0
  81. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/jobs/toggle_braket.py +0 -0
  82. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/jobs/validation.py +0 -0
  83. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/kernels/__init__.py +0 -0
  84. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/main.py +0 -0
  85. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/pip/__init__.py +0 -0
  86. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/pip/app.py +0 -0
  87. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/pip/hooks.py +0 -0
  88. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli/py.typed +0 -0
  89. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli.egg-info/dependency_links.txt +0 -0
  90. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli.egg-info/entry_points.txt +0 -0
  91. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/qbraid_cli.egg-info/top_level.txt +0 -0
  92. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/ruff.toml +0 -0
  93. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/setup.cfg +0 -0
  94. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/__init__.py +0 -0
  95. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/configure/__init__.py +0 -0
  96. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/configure/test_configure_prompt_for_config.py +0 -0
  97. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/configure/test_configure_set.py +0 -0
  98. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/configure/test_configure_validate_input.py +0 -0
  99. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/credits/__init__.py +0 -0
  100. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/credits/test_credits_value.py +0 -0
  101. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/devices/__init__.py +0 -0
  102. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/devices/test_devices_list.py +0 -0
  103. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/devices/test_devices_validations.py +0 -0
  104. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/envs/__init__.py +0 -0
  105. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/envs/test_envs_activate.py +0 -0
  106. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/envs/test_envs_activate_find_shell_rc.py +0 -0
  107. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/envs/test_envs_activate_print_command.py +0 -0
  108. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/envs/test_envs_activate_pyenv.py +0 -0
  109. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/envs/test_envs_list.py +0 -0
  110. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/envs/test_envs_remove.py +0 -0
  111. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/jobs/__init__.py +0 -0
  112. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/jobs/test_jobs_disable.py +0 -0
  113. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/jobs/test_jobs_enable.py +0 -0
  114. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/jobs/test_jobs_list.py +0 -0
  115. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/jobs/test_jobs_state.py +0 -0
  116. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/jobs/test_jobs_toggle_braket_confirm.py +0 -0
  117. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/jobs/test_jobs_toggle_braket_disable.py +0 -0
  118. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/jobs/test_jobs_toggle_braket_enable.py +0 -0
  119. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/jobs/test_jobs_toggle_braket_get_data.py +0 -0
  120. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/jobs/test_jobs_validate_get_state.py +0 -0
  121. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/jobs/test_jobs_validate_handle_state.py +0 -0
  122. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/jobs/test_jobs_validate_library.py +0 -0
  123. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tests/kernels/__init__.py +0 -0
  124. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tools/create_dev_build.sh +0 -0
  125. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tools/install_wheel_extras.sh +0 -0
  126. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tools/split_rst.py +0 -0
  127. {qbraid_cli-0.8.4a0 → qbraid_cli-0.8.4b0}/tools/stamp_pre_release.py +0 -0
@@ -0,0 +1,71 @@
1
+ name: Bump Version
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ inputs:
6
+ bump_type:
7
+ description: 'Select the version bump type'
8
+ required: true
9
+ type: choice
10
+ options:
11
+ - major
12
+ - minor
13
+ - patch
14
+ default: 'patch'
15
+
16
+ jobs:
17
+ bump-version:
18
+ runs-on: ubuntu-latest
19
+ permissions:
20
+ contents: write
21
+ pull-requests: write
22
+ steps:
23
+ - name: Checkout code
24
+ uses: actions/checkout@v4
25
+ with:
26
+ ref: 'main'
27
+
28
+ - name: Create feature branch
29
+ run: git checkout -b qbraid-bot/${{ github.run_id }}
30
+
31
+ - name: Setup Python
32
+ uses: actions/setup-python@v5
33
+ with:
34
+ python-version: '3.11'
35
+
36
+ - name: Install dependencies
37
+ run: |
38
+ python -m pip install --upgrade pip
39
+ python -m pip install "qbraid-core>=0.1.16"
40
+
41
+ - name: Setup Git config
42
+ run: |
43
+ git config --global user.name 'qbraidTeam'
44
+ git config --global user.email 'qbraid.team@qbraid.com'
45
+
46
+ - name: Bump version, commit and push
47
+ id: bump_version
48
+ run: |
49
+ BUMP_TYPE=${{ github.event.inputs.bump_type }}
50
+ VERSION=$(python3 tools/bump_version.py $BUMP_TYPE)
51
+ echo "version=$VERSION" >> $GITHUB_OUTPUT
52
+ git commit -am "Bump $BUMP_TYPE version to $VERSION"
53
+ git push origin qbraid-bot/${{ github.run_id }}
54
+
55
+ - name: Create Pull Request
56
+ id: create_pr
57
+ run: |
58
+ VERSION=${{ steps.bump_version.outputs.version }}
59
+ PR_URL=$(gh pr create -B main -H qbraid-bot/${{ github.run_id }} --title "Bump project version to $VERSION" --body "This PR bumps the project version to $VERSION")
60
+ PR_NUMBER=$(echo "$PR_URL" | grep -o '[0-9]*$')
61
+ echo "url=$PR_URL" >> $GITHUB_OUTPUT
62
+ echo "number=$PR_NUMBER" >> $GITHUB_OUTPUT
63
+ env:
64
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
65
+
66
+ - name: Summary
67
+ run: |
68
+ VERSION=${{ steps.bump_version.outputs.version }}
69
+ PR_URL=${{ steps.create_pr.outputs.url }}
70
+ PR_NUMBER=${{ steps.create_pr.outputs.number }}
71
+ echo "Opened PR [#$PR_NUMBER]($PR_URL) to update project to version **$VERSION**." >> $GITHUB_STEP_SUMMARY
@@ -0,0 +1,36 @@
1
+ name: Tag on PR Merge
2
+
3
+ on:
4
+ pull_request:
5
+ types: [closed]
6
+
7
+ jobs:
8
+ tag-version:
9
+ if: github.event.pull_request.merged == true && github.event.pull_request.user.login == 'github-actions[bot]' && startsWith(github.event.pull_request.title, 'Bump project version to ')
10
+ runs-on: ubuntu-latest
11
+ permissions:
12
+ contents: write
13
+ steps:
14
+ - name: Extract version
15
+ id: extract_version
16
+ run: |
17
+ VERSION=$(echo '${{ github.event.pull_request.title }}' | sed -E 's/Bump project version to (.*)/\1/')
18
+ echo "version=$VERSION" >> $GITHUB_OUTPUT
19
+
20
+ - name: Checkout code
21
+ uses: actions/checkout@v4
22
+ with:
23
+ ref: 'main'
24
+
25
+ - name: Setup Git config
26
+ run: |
27
+ git config --global user.name 'qbraidTeam'
28
+ git config --global user.email 'qbraid.team@qbraid.com'
29
+
30
+ - name: Create Tag
31
+ run: |
32
+ VERSION=${{ steps.extract_version.outputs.version }}
33
+ git tag v$VERSION
34
+ git push origin v$VERSION
35
+ env:
36
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: qbraid-cli
3
- Version: 0.8.4a0
3
+ Version: 0.8.4b0
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
@@ -29,7 +29,7 @@ Description-Content-Type: text/markdown
29
29
  License-File: LICENSE
30
30
  Requires-Dist: typer>=0.12.1
31
31
  Requires-Dist: rich>=10.11.0
32
- Requires-Dist: qbraid-core[environments]==0.1.17a0
32
+ Requires-Dist: qbraid-core[environments]>=0.1.17b0
33
33
  Provides-Extra: jobs
34
34
  Requires-Dist: amazon-braket-sdk>=1.48.1; extra == "jobs"
35
35
  Provides-Extra: dev
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "qbraid-cli"
7
- version = "0.8.4-alpha"
7
+ version = "0.8.4-beta"
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" }]
@@ -29,7 +29,7 @@ classifiers = [
29
29
  dependencies = [
30
30
  "typer>=0.12.1",
31
31
  "rich>=10.11.0",
32
- "qbraid-core[environments]==0.1.17a0",
32
+ "qbraid-core[environments]>=0.1.17b0",
33
33
  ]
34
34
  requires-python = ">= 3.9"
35
35
 
@@ -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+g8412556'
16
- __version_tuple__ = version_tuple = (0, 1, 'dev1', 'g8412556')
15
+ __version__ = version = '0.1.dev1+gf8dbccc'
16
+ __version_tuple__ = version_tuple = (0, 1, 'dev1', 'gf8dbccc')
@@ -5,10 +5,6 @@
5
5
  Module supporting 'qbraid envs create' command.
6
6
 
7
7
  """
8
- import json
9
- import os
10
- import shutil
11
- import sys
12
8
 
13
9
 
14
10
  def create_venv(*args, **kwargs) -> None:
@@ -20,14 +16,14 @@ def create_venv(*args, **kwargs) -> None:
20
16
 
21
17
  def update_state_json(*ags, **kwargs) -> None:
22
18
  """Update the state.json file for the qBraid environment."""
23
- from qbraid_core.services.environments.state import update_install_status
19
+ from qbraid_core.services.environments.state import update_state_json as update_state
24
20
 
25
- return update_install_status(*ags, **kwargs)
21
+ return update_state(*ags, **kwargs)
26
22
 
27
23
 
28
24
  def create_qbraid_env_assets(slug: str, alias: str, kernel_name: str, slug_path: str) -> None:
29
25
  """Create a qBraid environment including python venv, PS1 configs,
30
26
  kernel resource files, and qBraid state.json."""
31
- from qbraid_core.services.environments.create import create_qbraid_env_assets
27
+ from qbraid_core.services.environments.create import create_qbraid_env_assets as create_assets
32
28
 
33
- return create_qbraid_env_assets(slug, alias, kernel_name, slug_path)
29
+ return create_assets(slug, alias, kernel_name, slug_path)
@@ -2,13 +2,10 @@
2
2
  # All rights reserved.
3
3
 
4
4
  """
5
- Module defining commands in the 'qbraid jobs' namespace.
5
+ Module defining commands in the 'qbraid kernels' namespace.
6
6
 
7
7
  """
8
- from pathlib import Path
9
-
10
8
  import typer
11
- from qbraid_core.services.environments.kernels import add_kernels, list_kernels, remove_kernels
12
9
  from rich.console import Console
13
10
 
14
11
  from qbraid_cli.handlers import handle_error
@@ -19,9 +16,11 @@ kernels_app = typer.Typer(help="Manage qBraid kernels.")
19
16
  @kernels_app.command(name="list")
20
17
  def kernels_list():
21
18
  """List all available kernels."""
19
+ from qbraid_core.services.environments.kernels import get_all_kernels
20
+
22
21
  console = Console()
23
22
  # Get the list of kernelspecs
24
- kernelspecs = list_kernels()
23
+ kernelspecs: dict = get_all_kernels()
25
24
 
26
25
  if len(kernelspecs) == 0:
27
26
  console.print("No qBraid kernels are active.")
@@ -31,16 +30,25 @@ def kernels_list():
31
30
  longest_kernel_name = max(len(kernel_name) for kernel_name in kernelspecs)
32
31
  spacing = longest_kernel_name + 10
33
32
 
34
- console.print("# qbraid kernels:\n#\n")
33
+ output_lines = []
34
+ output_lines.append("# qbraid kernels:")
35
+ output_lines.append("#")
36
+ output_lines.append("")
35
37
 
36
38
  # Ensure 'python3' kernel is printed first if it exists
37
39
  default_kernel_name = "python3"
38
40
  python3_kernel_info = kernelspecs.pop(default_kernel_name, None)
39
41
  if python3_kernel_info:
40
- console.print(f"{default_kernel_name.ljust(spacing)}{python3_kernel_info['resource_dir']}")
42
+ line = f"{default_kernel_name.ljust(spacing)}{python3_kernel_info['resource_dir']}"
43
+ output_lines.append(line)
41
44
  # print rest of the kernels
42
45
  for kernel_name, kernel_info in sorted(kernelspecs.items()):
43
- console.print(f"{kernel_name.ljust(spacing)}{kernel_info['resource_dir']}")
46
+ line = f"{kernel_name.ljust(spacing)}{kernel_info['resource_dir']}"
47
+ output_lines.append(line)
48
+
49
+ final_output = "\n".join(output_lines)
50
+
51
+ console.print(final_output)
44
52
 
45
53
 
46
54
  @kernels_app.command(name="add")
@@ -50,15 +58,18 @@ def kernels_add(
50
58
  )
51
59
  ):
52
60
  """Add a kernel."""
61
+ from qbraid_core.services.environments.kernels import add_kernels
53
62
 
54
63
  try:
55
64
  add_kernels(environment)
56
- except ValueError as e:
65
+ except ValueError:
57
66
  handle_error(
58
- message=e,
59
- include_traceback=False,
67
+ message="Failed to add kernel(s). Please verify that the environment exists.",
68
+ include_traceback=True,
60
69
  )
61
- return
70
+
71
+ console = Console()
72
+ console.print(f"\nSuccessfully added '{environment}' kernel(s).", highlight=False)
62
73
 
63
74
 
64
75
  @kernels_app.command(name="remove")
@@ -69,11 +80,18 @@ def kernels_remove(
69
80
  )
70
81
  ):
71
82
  """Remove a kernel."""
83
+ from qbraid_core.services.environments.kernels import remove_kernels
84
+
72
85
  try:
73
86
  remove_kernels(environment)
74
87
  except ValueError:
75
- handle_error(message=f"Environment '{environment}' not found.", include_traceback=False)
76
- return
88
+ handle_error(
89
+ message="Failed to remove kernel(s). Please verify that the environment exists.",
90
+ include_traceback=True,
91
+ )
92
+
93
+ console = Console()
94
+ console.print(f"\nSuccessfully removed '{environment}' kernel(s).", highlight=False)
77
95
 
78
96
 
79
97
  if __name__ == "__main__":
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: qbraid-cli
3
- Version: 0.8.4a0
3
+ Version: 0.8.4b0
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
@@ -29,7 +29,7 @@ Description-Content-Type: text/markdown
29
29
  License-File: LICENSE
30
30
  Requires-Dist: typer>=0.12.1
31
31
  Requires-Dist: rich>=10.11.0
32
- Requires-Dist: qbraid-core[environments]==0.1.17a0
32
+ Requires-Dist: qbraid-core[environments]>=0.1.17b0
33
33
  Provides-Extra: jobs
34
34
  Requires-Dist: amazon-braket-sdk>=1.48.1; extra == "jobs"
35
35
  Provides-Extra: dev
@@ -11,11 +11,13 @@ ruff.toml
11
11
  .github/PULL_REQUEST_TEMPLATE.md
12
12
  .github/ISSUE_TEMPLATE/bug_report.yml
13
13
  .github/ISSUE_TEMPLATE/feature_request.yml
14
+ .github/workflows/bump-version.yml
14
15
  .github/workflows/docs.yml
15
16
  .github/workflows/format.yml
16
17
  .github/workflows/main.yml
17
18
  .github/workflows/pre-release.yml
18
19
  .github/workflows/publish.yml
20
+ .github/workflows/tag-on-merge.yml
19
21
  docs/Makefile
20
22
  docs/conf.py
21
23
  docs/index.rst
@@ -115,6 +117,7 @@ tests/jobs/test_jobs_validate_handle_state.py
115
117
  tests/jobs/test_jobs_validate_library.py
116
118
  tests/kernels/__init__.py
117
119
  tests/kernels/test_kernels_list.py
120
+ tools/bump_version.py
118
121
  tools/create_dev_build.sh
119
122
  tools/install_wheel_extras.sh
120
123
  tools/split_md.py
@@ -1,6 +1,6 @@
1
1
  typer>=0.12.1
2
2
  rich>=10.11.0
3
- qbraid-core[environments]==0.1.17a0
3
+ qbraid-core[environments]>=0.1.17b0
4
4
 
5
5
  [dev]
6
6
  ruff
@@ -15,8 +15,7 @@ def mock_is_exe(path):
15
15
  return path == "/path/to/bin/python3", "-m", "ipykernel_launcher", "-f", "test"
16
16
 
17
17
 
18
- # @patch("jupyter_client.kernelspec.KernelSpecManager")
19
- @patch("qbraid_cli.kernels.app.list_kernels", return_value={})
18
+ @patch("qbraid_core.services.environments.kernels.get_all_kernels", return_value={})
20
19
  @patch("qbraid_cli.kernels.app.Console")
21
20
  def test_kernels_list_no_active_kernels(mock_console, mock_list_kernels):
22
21
  """Test listing kernels when no kernels are active."""
@@ -33,7 +32,7 @@ def test_kernels_list_no_active_kernels(mock_console, mock_list_kernels):
33
32
 
34
33
 
35
34
  @patch(
36
- "qbraid_cli.kernels.app.list_kernels",
35
+ "qbraid_core.services.environments.kernels.get_all_kernels",
37
36
  return_value={"python3": {"resource_dir": "/path/to/python3/kernel"}},
38
37
  )
39
38
  @patch("qbraid_cli.kernels.app.Console")
@@ -43,15 +42,14 @@ def test_kernels_list_default_python3_kernel_present(mock_console, mock_list_ker
43
42
  kernels_list()
44
43
 
45
44
  expected_calls = [
46
- call("# qbraid kernels:\n#\n"),
47
- call("python3 /path/to/python3/kernel"),
45
+ call("# qbraid kernels:\n#\n\npython3 /path/to/python3/kernel"),
48
46
  ]
49
47
  actual_calls = mock_console.return_value.print.call_args_list
50
48
  assert actual_calls == expected_calls
51
49
 
52
50
 
53
51
  @patch(
54
- "qbraid_cli.kernels.app.list_kernels",
52
+ "qbraid_core.services.environments.kernels.get_all_kernels",
55
53
  return_value={
56
54
  "python3": {"resource_dir": "/path/to/python3/kernel"},
57
55
  "another_kernel": {
@@ -71,9 +69,9 @@ def test_kernels_list_multiple_kernels_available(mock_console, mock_list_kernels
71
69
  kernels_list()
72
70
 
73
71
  expected_calls = [
74
- call("# qbraid kernels:\n#\n"),
75
- call("python3 /path/to/python3/kernel"),
76
- call("another_kernel /path/to/another/kernel"),
72
+ call(
73
+ "# qbraid kernels:\n#\n\npython3 /path/to/python3/kernel\nanother_kernel /path/to/another/kernel"
74
+ ),
77
75
  ]
78
76
  actual_calls = mock_console.return_value.print.call_args_list
79
77
  assert actual_calls == expected_calls
@@ -0,0 +1,21 @@
1
+ # Copyright (c) 2024, qBraid Development Team
2
+ # All rights reserved.
3
+
4
+ """
5
+ Script to bump the major, minor, or patch version in pyproject.toml.
6
+
7
+ """
8
+ import pathlib
9
+ import sys
10
+
11
+ from qbraid_core.system.versions import bump_version, extract_version, update_version_in_pyproject
12
+
13
+ if __name__ == "__main__":
14
+
15
+ bump_type = sys.argv[1]
16
+ root = pathlib.Path(__file__).parent.parent.resolve()
17
+ pyproject_toml_path = root / "pyproject.toml"
18
+ old_version = extract_version(pyproject_toml_path)
19
+ new_version = bump_version(old_version, bump_type)
20
+ update_version_in_pyproject(pyproject_toml_path, new_version)
21
+ print(new_version)
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes