Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prepare crates for publishing #13

Merged
merged 6 commits into from
Jan 13, 2024
Merged

Conversation

mtreinish
Copy link
Member

This commit updates the openqasm3_parser project for publishing crates. Primarily this involves unifying the packaging metadata between all the crates in the workspace. The other big change is all the crates and library names are renamed to have a oq3_ prefix with the exception of qasm3_bytecode because it already had a descriptive name that was unlikely to conflict with anything.

This commit updates the openqasm3_parser project for publishing crates.
Primarily this involves unifying the packaging metadata between all the
crates in the workspace. The other big change is all the crates and
library names are renamed to have a `oq3_` prefix with the exception of
qasm3_bytecode because it already had a descriptive name that was
unlikely to conflict with anything.
Copy link
Member

@jakelishman jakelishman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mostly this looks fine to me. Good to strip the "MIT or " bit from the license, since I don't think we're allowed to have it as part of our OSS strategy.

Do we have a formal requirement to include the same Apache-2.0-ish header on all source files in the distribution package, since crates.io involves us distributing the source files? My approximately understanding was that Apache 2.0 doesn't require it (and explicitly says you shouldn't include the copyright bit for ASF-developed stuff), but I think we might have different rules internally?

Could we unify all the directories for the source files to be oq3_ prefixed for consistency with their package names? I commented on a couple but not all.

Cargo.toml Outdated Show resolved Hide resolved
crates/parser/Cargo.toml Outdated Show resolved Hide resolved
crates/qasm3_bytecode/Cargo.toml Outdated Show resolved Hide resolved
crates/semantics/Cargo.toml Outdated Show resolved Hide resolved
mtreinish added a commit to mtreinish/openqasm3_parser that referenced this pull request Jan 11, 2024
Copy link
Member

@jakelishman jakelishman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, this packaging seems sensible and more uniform to me now. I'm sure there's references to the old structures in bits and places of comments (the readme, etc), but we can correct those over time.

* Fix merge conflicts.
* Minor clean up
@jlapeyre jlapeyre merged commit 0fdcdda into Qiskit:main Jan 13, 2024
2 checks passed
jlapeyre added a commit that referenced this pull request Jan 21, 2024
* Add CI workflow to publish crates on tag/release

This commit adds a new github actions work to publish the package's
crates to crates.io. This new CI job run cargo publish on the respective
crates in the correct order to publish the entire workspace.

* Update package dirs after #13 and #15

* Update package dirs after #27

* Choose names that better describe actions taken

* Put list of crates to release (publish on crates.io) in topo order

---------

Co-authored-by: John Lapeyre <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants