-
Notifications
You must be signed in to change notification settings - Fork 7
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
feat: git subtree move in hugr-llvm #1601
Conversation
Co-authored-by: doug-q <[email protected]>
feat: Emission for Call nodes
fix: Syntax error
chore: Add issue-to-project.yml, enable coverage
They were pointing to an invalid source directory.
ci: Fix change-filters
fix: sum type tag elision logic reversed
test: add a test for sum type tags
feat: Support `FunctionType` values
We take this opportunity to move some auxilliary code out of emit.rs, and to fix up some docs in fat.rs. BREAKING CHANGE: `Namer::new` takes an additional parameter. --------- Co-authored-by: Alec Edgington <[email protected]>
Co-authored-by: Mark Koch <[email protected]>
We take the opportunity to tidy up cfg.rs a bit. `impl Copy for FatNode` will now work, and many other methods now have more appropriate lifetime constraints. The borrow checker will thank you. We add `FatNode::try_new_hierarchy_view`.
e7509de
to
3f281d3
Compare
tket2 rotation lowering moved to eldarion here: https://github.com/CQCL-DEV/eldarion/pull/195 |
.github/workflows/ci-rs.yml
Outdated
tests-stable-llvm: | ||
needs: changes | ||
if: ${{ needs.changes.outputs.llvm == 'true' && github.event_name == 'push'}} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note that llvm
will always be true when triggered by a push
to main
(due to overrides).
We'll probably want some flag to run this on pull_request
s too. Maybe we could add an override
output to the changes
job, and write this here.
if: ${{ ( needs.changes.outputs.llvm == 'true' && github.event_name == 'push' ) || needs.changes.outputs.override == 'true' }}
Though the logic is getting a bit muddy.
strategy: | ||
matrix: | ||
llvm-version: | ||
- ["14.0", "14-0"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are these different versions?
Can you add a comment explaining what they are?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, you could also call name them instead
- version: "14.0"
action: "14-0"
.github/workflows/ci-rs.yml
Outdated
- name: Build benchmarks with all features | ||
run: cargo bench --verbose --no-run --workspace --all-features | ||
run: cargo bench --verbose --no-run --workspace --exclude hugr-llvm --all-features |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Won't --all-features
include hugr-llvm
anyways, since it's an optional dep of hugr
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes you're right, the excluding only makes sense for tests
strategy: | ||
matrix: | ||
llvm-version: | ||
- ["14.0", "14-0"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, you could also call name them instead
- version: "14.0"
action: "14-0"
run: cargo test --verbose --all-features --no-run | ||
- name: Tests with all features | ||
run: cargo test --verbose --workspace --all-features | ||
run: cargo test --verbose --all-features |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This does compile hugr-llvm
due to the hugr/llvm
feature, it just doesn't run the dependency tests.
I'm guessing we don't need to install llvm as long as no test actually tries to access it at runtime?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes correct
Co-authored-by: Agustín Borgna <[email protected]>
Due to the LLVM dependency the package is excluded from default CI runs, except check which does not require llvm.
A separate job for building and testing is added that runs on push to main.
Succesful CI run: https://github.com/CQCL/hugr/actions/runs/11860727905