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

refactor: Update homestar-functions to use cargo component #576

Merged
merged 8 commits into from
Feb 16, 2024

Conversation

bgins
Copy link
Contributor

@bgins bgins commented Feb 16, 2024

Description

This PR makes the following changes:

  • Update homestar-functions to use cargo-component
  • Update Wasms, their CID references, and workflows that use them
  • Update nix flake wasmTest and wasmAdd scripts
  • Add log message when homestar-wasm upgrades a Wasm to a Wasm component

Link to issue

Closes #533

Type of change

  • Refactor (non-breaking change that updates existing functionality)

Test plan (required)

Tests added for the new cargo-component generated Wasm components.

Copy link

codecov bot commented Feb 16, 2024

Codecov Report

Attention: 673 lines in your changes are missing coverage. Please review.

Comparison is base (a82d01d) 76.64% compared to head (09beabb) 72.57%.
Report is 3 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #576      +/-   ##
==========================================
- Coverage   76.64%   72.57%   -4.08%     
==========================================
  Files          90       92       +2     
  Lines       11575    12237     +662     
==========================================
+ Hits         8872     8881       +9     
- Misses       2703     3356     +653     
Files Coverage Δ
homestar-functions/add/src/lib.rs 0.00% <ø> (ø)
homestar-functions/test/src/lib.rs 75.78% <ø> (+1.73%) ⬆️
homestar-invocation/src/task.rs 91.19% <100.00%> (ø)
homestar-invocation/src/task/instruction.rs 38.83% <100.00%> (ø)
homestar-runtime/src/tasks/fetch.rs 100.00% <ø> (ø)
homestar-wasm/src/wasmtime/world.rs 85.05% <100.00%> (+0.05%) ⬆️
homestar-functions/add/src/bindings.rs 0.00% <0.00%> (ø)
homestar-functions/test/src/bindings.rs 0.00% <0.00%> (ø)

... and 2 files with indirect coverage changes

@bgins bgins marked this pull request as ready for review February 16, 2024 22:15
@bgins bgins requested a review from a team as a code owner February 16, 2024 22:15
@bgins bgins merged commit 513b038 into main Feb 16, 2024
33 checks passed
@bgins bgins deleted the bgins/cargo-component branch February 16, 2024 22:53
@release-plz-ipvm-wg release-plz-ipvm-wg bot mentioned this pull request Feb 16, 2024
zeeshanlakhani pushed a commit that referenced this pull request Feb 21, 2024
## 🤖 New release
* `homestar-runtime`: 0.1.1 -> 0.2.0 (⚠️ API breaking changes)
* `homestar-invocation`: 0.1.1 -> 0.2.0 (✓ API compatible changes)
* `homestar-wasm`: 0.1.1 -> 0.2.0 (✓ API compatible changes)
* `homestar-workflow`: 0.1.1 -> 0.2.0 (✓ API compatible changes)

### ⚠️ `homestar-runtime` breaking changes

```
--- failure enum_variant_added: enum variant added on exhaustive enum ---

Description:
A publicly-visible enum without #[non_exhaustive] has a new variant.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#enum-variant-new
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.28.0/src/lints/enum_variant_added.ron

Failed in:
  variant Command:Node in /tmp/.tmp7PLiiL/homestar/homestar-runtime/src/cli.rs:149
  variant Command:Info in /tmp/.tmp7PLiiL/homestar/homestar-runtime/src/cli.rs:155
```

<details><summary><i><b>Changelog</b></i></summary><p>

## `homestar-runtime`
<blockquote>

##
[0.2.0](homestar-runtime-v0.1.1...homestar-runtime-v0.2.0)
- 2024-02-20

### Added
- Add OpenRPC API docs and associated JSON Schemas
([#534](#534))
- redial `node_addresses` at an interval on connection close
([#529](#529))

### Fixed
- add handling of dns multiaddrs + bootstrapping + CLI / Conn changes
([#547](#547))

### Other
- deps + flake cleanup
([#581](#581))
- Allow dead code default timeout
([#577](#577))
- Update homestar-functions to use cargo component
([#576](#576))
- fix transport order for wss possibility
([#563](#563))
- small comment, sorry
([#561](#561))
- move away from deadlines dealing w/ the runner and wasi-preview 2
wasmtime ([#560](#560))
- docker updates with info command and rpc host update
([#558](#558))
- just test conn ([#544](#544))
- handle this evil workflow_info test
([#543](#543))
- remove unnecessary deps and add tooling for those checks
([#541](#541))
- [chore(cargo)](deps): bump puffin from 0.18.1 to 0.19.0
([#537](#537))
- updates/flaky kills on ci
([#540](#540))
- release docs and cp readmes
([#530](#530))
- port selection and test config generation macro
([#528](#528))
- [chore(cargo)](deps): bump serde_with from 3.4.0 to 3.5.0
([#524](#524))
- [chore(cargo)](deps): bump moka from 0.12.3 to 0.12.4
([#525](#525))
</blockquote>

## `homestar-invocation`
<blockquote>

##
[0.2.0](homestar-invocation-v0.1.1...homestar-invocation-v0.2.0)
- 2024-02-20

### Added
- Add OpenRPC API docs and associated JSON Schemas
([#534](#534))

### Other
- deps + flake cleanup
([#581](#581))
- Update homestar-functions to use cargo component
([#576](#576))
- move away from deadlines dealing w/ the runner and wasi-preview 2
wasmtime ([#560](#560))
- remove unnecessary deps and add tooling for those checks
([#541](#541))
- release docs and cp readmes
([#530](#530))
</blockquote>

## `homestar-wasm`
<blockquote>

##
[0.2.0](homestar-wasm-v0.1.1...homestar-wasm-v0.2.0)
- 2024-02-20

### Other
- deps + flake cleanup
([#581](#581))
- Update homestar-functions to use cargo component
([#576](#576))
- move away from deadlines dealing w/ the runner and wasi-preview 2
wasmtime ([#560](#560))
- remove unnecessary deps and add tooling for those checks
([#541](#541))
- release docs and cp readmes
([#530](#530))
</blockquote>

## `homestar-workflow`
<blockquote>

##
[0.2.0](homestar-workflow-v0.1.1...homestar-workflow-v0.2.0)
- 2024-02-20

### Added
- Add OpenRPC API docs and associated JSON Schemas
([#534](#534))

### Other
- deps + flake cleanup
([#581](#581))
- remove unnecessary deps and add tooling for those checks
([#541](#541))
- release docs and cp readmes
([#530](#530))
</blockquote>


</p></details>

---
This PR was generated with
[release-plz](https://github.com/MarcoIeni/release-plz/).

Signed-off-by: release-plz-ipvm-wg[bot] <144082651+release-plz-ipvm-wg[bot]@users.noreply.github.com>
Co-authored-by: release-plz-ipvm-wg[bot] <144082651+release-plz-ipvm-wg[bot]@users.noreply.github.com>
@release-plz-ipvm-wg release-plz-ipvm-wg bot mentioned this pull request Feb 21, 2024
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.

Explore cargo-component integration over current wasm guest build process
2 participants