qcoder 0.4.0a2__tar.gz → 0.5.0a2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/CHANGELOG.md +40 -0
  2. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/MANIFEST.in +6 -2
  3. qcoder-0.5.0a2/PKG-INFO +106 -0
  4. qcoder-0.5.0a2/README.md +76 -0
  5. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/pyproject.toml +2 -1
  6. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/__init__.py +1 -1
  7. qcoder-0.5.0a2/src/qcoder/cli.py +621 -0
  8. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/ir.py +8 -0
  9. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/qasm2_regex_parser.py +15 -2
  10. qcoder-0.5.0a2/src/qcoder/pro_preview/__init__.py +32 -0
  11. qcoder-0.5.0a2/src/qcoder/pro_preview/client.py +122 -0
  12. qcoder-0.5.0a2/src/qcoder/pro_preview/config.py +97 -0
  13. qcoder-0.5.0a2/src/qcoder/pro_preview/errors.py +6 -0
  14. qcoder-0.5.0a2/src/qcoder/pro_preview/manifest.py +157 -0
  15. qcoder-0.5.0a2/src/qcoder.egg-info/PKG-INFO +106 -0
  16. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder.egg-info/SOURCES.txt +6 -31
  17. qcoder-0.4.0a2/PKG-INFO +0 -188
  18. qcoder-0.4.0a2/README.md +0 -158
  19. qcoder-0.4.0a2/docs/architecture.md +0 -32
  20. qcoder-0.4.0a2/docs/model-cards/resource-guidance-local-v0.md +0 -33
  21. qcoder-0.4.0a2/src/qcoder/cli.py +0 -246
  22. qcoder-0.4.0a2/src/qcoder.egg-info/PKG-INFO +0 -188
  23. qcoder-0.4.0a2/tests/__init__.py +0 -0
  24. qcoder-0.4.0a2/tests/test_adjoint_eligibility.py +0 -61
  25. qcoder-0.4.0a2/tests/test_analyze_pipeline.py +0 -106
  26. qcoder-0.4.0a2/tests/test_batch_pipeline.py +0 -127
  27. qcoder-0.4.0a2/tests/test_cirq_intake.py +0 -97
  28. qcoder-0.4.0a2/tests/test_cli_batch_nested_discovery.py +0 -43
  29. qcoder-0.4.0a2/tests/test_cli_context_review.py +0 -191
  30. qcoder-0.4.0a2/tests/test_cli_help.py +0 -197
  31. qcoder-0.4.0a2/tests/test_context_bundle.py +0 -260
  32. qcoder-0.4.0a2/tests/test_cut_profile.py +0 -43
  33. qcoder-0.4.0a2/tests/test_entangling_layers.py +0 -83
  34. qcoder-0.4.0a2/tests/test_examples_smoke.py +0 -95
  35. qcoder-0.4.0a2/tests/test_feature_glossary.py +0 -23
  36. qcoder-0.4.0a2/tests/test_feature_profiles.py +0 -135
  37. qcoder-0.4.0a2/tests/test_gate_set_stats.py +0 -72
  38. qcoder-0.4.0a2/tests/test_guidance_model_pack.py +0 -146
  39. qcoder-0.4.0a2/tests/test_interaction_graph_metrics.py +0 -52
  40. qcoder-0.4.0a2/tests/test_mirror_build.py +0 -138
  41. qcoder-0.4.0a2/tests/test_parse_qasm2_text.py +0 -92
  42. qcoder-0.4.0a2/tests/test_pennylane_intake.py +0 -105
  43. qcoder-0.4.0a2/tests/test_qiskit_intake.py +0 -136
  44. qcoder-0.4.0a2/tests/test_resource_guidance.py +0 -182
  45. qcoder-0.4.0a2/tests/test_review_bundle.py +0 -220
  46. qcoder-0.4.0a2/tests/test_review_counts_v0.py +0 -30
  47. qcoder-0.4.0a2/tests/test_review_qiskit_counts.py +0 -32
  48. qcoder-0.4.0a2/tests/test_schema_stability.py +0 -35
  49. qcoder-0.4.0a2/tests/test_smoke.py +0 -23
  50. qcoder-0.4.0a2/tests/test_temporal_spans.py +0 -32
  51. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/LICENSE +0 -0
  52. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/NOTICE +0 -0
  53. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/setup.cfg +0 -0
  54. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/__main__.py +0 -0
  55. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/core/__init__.py +0 -0
  56. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/core/context.py +0 -0
  57. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/core/qasm2/__init__.py +0 -0
  58. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/core/qasm2/adjoint_eligibility.py +0 -0
  59. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/core/qasm2/mirror_build.py +0 -0
  60. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/core/run_config.py +0 -0
  61. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/core/schema.py +0 -0
  62. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/context/__init__.py +0 -0
  63. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/context/bundle.py +0 -0
  64. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/context/markdown.py +0 -0
  65. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/adapters/__init__.py +0 -0
  66. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/adapters/cirq_intake.py +0 -0
  67. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/adapters/pennylane_intake.py +0 -0
  68. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/adapters/qiskit_intake.py +0 -0
  69. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/extractor.py +0 -0
  70. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/features/compute_v0.py +0 -0
  71. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/features/glossary_v0.py +0 -0
  72. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/features/schema_v0.py +0 -0
  73. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/labeling.py +0 -0
  74. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/parsers/__init__.py +0 -0
  75. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/reps/cut_profile.py +0 -0
  76. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/reps/depth.py +0 -0
  77. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/reps/entangling_layers.py +0 -0
  78. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/reps/gate_set_stats.py +0 -0
  79. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/reps/interaction_graph.py +0 -0
  80. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/reps/interaction_graph_metrics.py +0 -0
  81. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/feature_extraction/reps/spans.py +0 -0
  82. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/guidance/__init__.py +0 -0
  83. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/guidance/model_pack.py +0 -0
  84. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/guidance/resource.py +0 -0
  85. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/guidance/structural_scores.py +0 -0
  86. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/profiles/__init__.py +0 -0
  87. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/profiles/feature_profiles_v0.py +0 -0
  88. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/review/__init__.py +0 -0
  89. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/review/bundle.py +0 -0
  90. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/review/counts_v0.py +0 -0
  91. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/review/markdown.py +0 -0
  92. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/engines/review/qiskit_counts.py +0 -0
  93. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/model_packs/__init__.py +0 -0
  94. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/model_packs/resource_guidance_local_v0.json +0 -0
  95. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/pipelines/analyze.py +0 -0
  96. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/pipelines/batch.py +0 -0
  97. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/pipelines/context.py +0 -0
  98. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/pipelines/review.py +0 -0
  99. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder/tools/batch.py +0 -0
  100. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder.egg-info/dependency_links.txt +0 -0
  101. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder.egg-info/entry_points.txt +0 -0
  102. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder.egg-info/requires.txt +0 -0
  103. {qcoder-0.4.0a2 → qcoder-0.5.0a2}/src/qcoder.egg-info/top_level.txt +0 -0
@@ -4,6 +4,46 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  The format is based on common practice for pre-1.0 semantic versioning: **`MAJOR.MINOR.PATCH`** with **`aN`** for alpha prereleases.
6
6
 
7
+ ## Unreleased
8
+
9
+ ## 0.5.0a2 (alpha — public Free + Pro Preview client contract)
10
+
11
+ Second public alpha for the **Option 3 product line**: unchanged Free local/offline CLI plus an expanded **Pro Preview bootstrap/client contract** (not a generally available hosted Pro product).
12
+
13
+ ### Added
14
+
15
+ - Public-safe **Pro Preview bootstrap** commands: `qcoder pro signup`, `login`, `install`, `status`, `validate` with local token/config support only.
16
+ - **`qcoder pro workflow --dry-run-manifest`** — writes `qcoder.pro_preview.workflow_manifest.v0` locally (QASM hashes/bytes plus local Free analysis); no network.
17
+ - **Explicit configured manifest-only service submit** — `qcoder pro workflow --submit --service-url <url>` with optional `--manifest-out`; requires token and a non-default configured service URL; sanitizes manifest before POST.
18
+ - Stronger **public package safety** checks, Pro Preview unit tests, and release rehearsal coverage in CI.
19
+
20
+ ### Scope / boundaries
21
+
22
+ - **No** generally available production hosted Pro service, public account/token issuance from qcoder.ai, or sellable hosted Pro product behavior.
23
+ - **No** artifact upload, source upload, or background upload in this submit slice.
24
+ - **No** local confidential Pro analysis, cards, or `qcoder.pro_v0` in the wheel.
25
+ - **No** telemetry upload or training delivery.
26
+ - **No** QPU, simulator, or provider execution in CLI flows.
27
+ - Free commands (`analyze`, `batch`, `context`, `review`) remain local/offline and useful without Pro.
28
+
29
+ ## 0.5.0a1 (alpha — public Free + Pro Preview shell)
30
+
31
+ First public package version for the **Option 3 product line**: local/offline Free CLI plus a service-backed Pro Preview shell. Version **`0.5.0a1`** is distinct from the internal frozen local private-alpha RC **`0.4.0a4`** (not shipped here).
32
+
33
+ ### Changed
34
+
35
+ - **Package version** — public Free + service-backed Pro Preview shell ships as **`0.5.0a1`**.
36
+ - **Public package** — Free local/offline CLI (`analyze`, `batch`, `context`, `review`) with no cards; confidential local Pro implementation is not included.
37
+ - **`qcoder pro` shell** — service-backed Pro Preview stub (`signup`, `status`, `login`, `workflow`); no local cards or Pro analysis in the wheel.
38
+ - **Release-check** — public Free + Pro shell smoke; wheel/sdist scanned for forbidden Pro artifacts.
39
+
40
+ ### Scope / boundaries
41
+
42
+ - Free qCoder remains local/offline and useful without Pro.
43
+ - Pro Preview service is not implemented in this repository slice.
44
+
45
+ ---
46
+
7
47
  ## 0.4.0a2 (alpha)
8
48
 
9
49
  ### Added
@@ -4,8 +4,12 @@ include README.md
4
4
  include CHANGELOG.md
5
5
  include pyproject.toml
6
6
  graft src
7
- graft tests
8
- recursive-include docs *.md
7
+ prune src/qcoder/pro_v0
8
+ prune tests
9
+ prune docs
10
+ exclude docs/pro-v0-install.md
11
+ exclude docs/private-alpha-quickstart.md
12
+ exclude docs/private-alpha-release-candidate-validation.md
9
13
  global-exclude __pycache__
10
14
  global-exclude *.py[cod]
11
15
  global-exclude .DS_Store
@@ -0,0 +1,106 @@
1
+ Metadata-Version: 2.4
2
+ Name: qcoder
3
+ Version: 0.5.0a2
4
+ Summary: Quantum circuit analysis and structured feature extraction tools.
5
+ Author-email: Quantum Ready Solutions <support@qcoder.ai>
6
+ Maintainer-email: Quantum Ready Solutions <support@qcoder.ai>
7
+ License-Expression: Apache-2.0
8
+ Project-URL: Homepage, https://qcoder.ai
9
+ Project-URL: Documentation, https://qcoder.ai/manual/
10
+ Project-URL: Repository, https://github.com/QuantumReadySolutions/qCoder
11
+ Project-URL: Issues, https://github.com/QuantumReadySolutions/qCoder/issues
12
+ Classifier: Development Status :: 3 - Alpha
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: Intended Audience :: Science/Research
15
+ Classifier: Topic :: Scientific/Engineering
16
+ Classifier: Programming Language :: Python :: 3
17
+ Classifier: Programming Language :: Python :: 3 :: Only
18
+ Requires-Python: >=3.11
19
+ Description-Content-Type: text/markdown
20
+ License-File: LICENSE
21
+ License-File: NOTICE
22
+ Requires-Dist: numpy
23
+ Provides-Extra: qiskit
24
+ Requires-Dist: qiskit>=1.0; extra == "qiskit"
25
+ Provides-Extra: cirq
26
+ Requires-Dist: cirq-core>=1.4; extra == "cirq"
27
+ Provides-Extra: pennylane
28
+ Requires-Dist: pennylane>=0.44; extra == "pennylane"
29
+ Dynamic: license-file
30
+
31
+ # qCoder
32
+
33
+ `qcoder` is a local, deterministic quantum circuit evidence CLI.
34
+
35
+ Free `qcoder` commands run offline and do not call hosted services, upload telemetry, or run QPU/simulator jobs.
36
+
37
+ ## Public CLI surface
38
+
39
+ - `qcoder analyze`
40
+ - `qcoder batch`
41
+ - `qcoder context`
42
+ - `qcoder review`
43
+ - `qcoder pro` (Pro bootstrap and client contract; non-confidential local plumbing only)
44
+
45
+ ## Pro Preview boundaries
46
+
47
+ Public `qcoder` ships **Free local commands** plus a **Pro bootstrap/client contract**. It is **not** the sellable hosted Pro product.
48
+
49
+ - **Free commands** (`analyze`, `batch`, `context`, `review`) run offline. They do not upload data, call a qCoder hosted service, or run QPU/simulator jobs.
50
+ - **`qcoder pro` bootstrap** (`signup`, `login`, `install`, `status`, `validate`) stores local token/config only. It does not upload circuits, run confidential analysis, or generate Pro cards locally.
51
+ - **`qcoder pro workflow --dry-run-manifest`** writes a local JSON contract (`qcoder.pro_preview.workflow_manifest.v0`) and performs **no network calls**. This is the default path for most users.
52
+ - **`qcoder pro workflow --submit`** posts a **sanitized manifest only** to an **explicitly configured** `--service-url` (or `QCODER_PRO_API_URL`). Use it only when QRS has given you a service URL and token. The default `https://qcoder.ai/preview` URL is **not** accepted for submit.
53
+ - There is **no generally available production hosted Pro service**, account/token issuance, or artifact upload in this public-main surface. Production hosted service, Cloud Run/GCS, and confidential analysis are separate/future.
54
+ - **No confidential Pro analysis or cards** are bundled in this package. Token-gating is **access control only**, not a secrecy boundary.
55
+
56
+ ## Quick start
57
+
58
+ Install:
59
+
60
+ ```bash
61
+ pip install qcoder
62
+ ```
63
+
64
+ Analyze a circuit:
65
+
66
+ ```bash
67
+ qcoder analyze path/to/circuit.qasm --json
68
+ ```
69
+
70
+ Create local context and review artifacts:
71
+
72
+ ```bash
73
+ qcoder context path/to/circuit.qasm --out-json preflight.context.json --out-md preflight.context.md
74
+ qcoder review --counts-json counts.json --format qiskit_counts --preflight-json preflight.context.json --out-json execution.review.json --out-md execution.review.md
75
+ ```
76
+
77
+ Pro Preview bootstrap (local contract rehearsal):
78
+
79
+ ```bash
80
+ qcoder pro --help
81
+ qcoder pro signup
82
+ qcoder pro install --token <token-if-provided>
83
+ qcoder pro status
84
+ qcoder pro validate
85
+ qcoder pro workflow --qasm path/to/circuit.qasm --dry-run-manifest pro.workflow.manifest.json
86
+ ```
87
+
88
+ Use **`--dry-run-manifest`** unless QRS has given you a non-default service URL and token for contract rehearsal. Manifest-only submit (no artifact upload) is opt-in:
89
+
90
+ ```bash
91
+ qcoder pro workflow --qasm path/to/circuit.qasm --submit --service-url <url-qrs-provided>
92
+ ```
93
+
94
+ Architecture notes: [`docs/architecture.md`](docs/architecture.md).
95
+
96
+ ## Optional extras
97
+
98
+ ```bash
99
+ pip install "qcoder[qiskit]"
100
+ pip install "qcoder[cirq]"
101
+ pip install "qcoder[pennylane]"
102
+ ```
103
+
104
+ ## License
105
+
106
+ Apache-2.0 (see `LICENSE` and `NOTICE`).
@@ -0,0 +1,76 @@
1
+ # qCoder
2
+
3
+ `qcoder` is a local, deterministic quantum circuit evidence CLI.
4
+
5
+ Free `qcoder` commands run offline and do not call hosted services, upload telemetry, or run QPU/simulator jobs.
6
+
7
+ ## Public CLI surface
8
+
9
+ - `qcoder analyze`
10
+ - `qcoder batch`
11
+ - `qcoder context`
12
+ - `qcoder review`
13
+ - `qcoder pro` (Pro bootstrap and client contract; non-confidential local plumbing only)
14
+
15
+ ## Pro Preview boundaries
16
+
17
+ Public `qcoder` ships **Free local commands** plus a **Pro bootstrap/client contract**. It is **not** the sellable hosted Pro product.
18
+
19
+ - **Free commands** (`analyze`, `batch`, `context`, `review`) run offline. They do not upload data, call a qCoder hosted service, or run QPU/simulator jobs.
20
+ - **`qcoder pro` bootstrap** (`signup`, `login`, `install`, `status`, `validate`) stores local token/config only. It does not upload circuits, run confidential analysis, or generate Pro cards locally.
21
+ - **`qcoder pro workflow --dry-run-manifest`** writes a local JSON contract (`qcoder.pro_preview.workflow_manifest.v0`) and performs **no network calls**. This is the default path for most users.
22
+ - **`qcoder pro workflow --submit`** posts a **sanitized manifest only** to an **explicitly configured** `--service-url` (or `QCODER_PRO_API_URL`). Use it only when QRS has given you a service URL and token. The default `https://qcoder.ai/preview` URL is **not** accepted for submit.
23
+ - There is **no generally available production hosted Pro service**, account/token issuance, or artifact upload in this public-main surface. Production hosted service, Cloud Run/GCS, and confidential analysis are separate/future.
24
+ - **No confidential Pro analysis or cards** are bundled in this package. Token-gating is **access control only**, not a secrecy boundary.
25
+
26
+ ## Quick start
27
+
28
+ Install:
29
+
30
+ ```bash
31
+ pip install qcoder
32
+ ```
33
+
34
+ Analyze a circuit:
35
+
36
+ ```bash
37
+ qcoder analyze path/to/circuit.qasm --json
38
+ ```
39
+
40
+ Create local context and review artifacts:
41
+
42
+ ```bash
43
+ qcoder context path/to/circuit.qasm --out-json preflight.context.json --out-md preflight.context.md
44
+ qcoder review --counts-json counts.json --format qiskit_counts --preflight-json preflight.context.json --out-json execution.review.json --out-md execution.review.md
45
+ ```
46
+
47
+ Pro Preview bootstrap (local contract rehearsal):
48
+
49
+ ```bash
50
+ qcoder pro --help
51
+ qcoder pro signup
52
+ qcoder pro install --token <token-if-provided>
53
+ qcoder pro status
54
+ qcoder pro validate
55
+ qcoder pro workflow --qasm path/to/circuit.qasm --dry-run-manifest pro.workflow.manifest.json
56
+ ```
57
+
58
+ Use **`--dry-run-manifest`** unless QRS has given you a non-default service URL and token for contract rehearsal. Manifest-only submit (no artifact upload) is opt-in:
59
+
60
+ ```bash
61
+ qcoder pro workflow --qasm path/to/circuit.qasm --submit --service-url <url-qrs-provided>
62
+ ```
63
+
64
+ Architecture notes: [`docs/architecture.md`](docs/architecture.md).
65
+
66
+ ## Optional extras
67
+
68
+ ```bash
69
+ pip install "qcoder[qiskit]"
70
+ pip install "qcoder[cirq]"
71
+ pip install "qcoder[pennylane]"
72
+ ```
73
+
74
+ ## License
75
+
76
+ Apache-2.0 (see `LICENSE` and `NOTICE`).
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "qcoder"
7
- version = "0.4.0a2"
7
+ version = "0.5.0a2"
8
8
  description = "Quantum circuit analysis and structured feature extraction tools."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -45,6 +45,7 @@ package-dir = {"" = "src"}
45
45
 
46
46
  [tool.setuptools.packages.find]
47
47
  where = ["src"]
48
+ exclude = ["qcoder.pro_v0", "qcoder.pro_v0.*"]
48
49
 
49
50
  [tool.setuptools.package-data]
50
51
  qcoder = ["model_packs/*.json"]
@@ -1,3 +1,3 @@
1
1
  __all__ = []
2
- __version__ = "0.4.0a2"
2
+ __version__ = "0.5.0a2"
3
3
  file = __file__