Skip to content

Conversation

@jtakakura
Copy link
Contributor

@jtakakura jtakakura commented Sep 14, 2025

Feature or Problem

This pull request updates the plugin registration logic in the workload resolution process to skip registering WASI@0.2 interfaces, in addition to the existing wasmcloud:wash/plugin filter. After the refactor in #73, the registration flow is now implemented within the workload engine, and no longer uses DevPluginManager. The change ensures that unnecessary or conflicting registrations of WASI@0.2 interfaces—which are generally provided by the runtime—are prevented.

Related Issues

Fixes #11

Release Information

next

Consumer Impact

There should be no impact on consumers or dependents. The change only affects internal plugin registration logic and does not alter any public APIs or behavior for plugin authors.

Testing

Unit Test(s)

Unit tests were added to verify that WASI@0.2 interfaces are correctly skipped during registration in the refactored workload engine logic. (See test_resolve_with_plugins_success in crates/wash-runtime/src/engine/workload.rs.)

Acceptance or Integration

No changes to acceptance or integration tests were required.

Manual Verification

  • Verified that plugins exporting WASI@0.2 interfaces are not registered.
  • Confirmed that standard plugin exports are still registered as expected.
  • Checked that no runtime errors occur when plugins contain both custom and WASI@0.2 exports.

@jtakakura jtakakura force-pushed the fix/skip-wasi-0.2 branch 3 times, most recently from 8647164 to 197996d Compare September 14, 2025 10:35
@jtakakura
Copy link
Contributor Author

@brooksmtownsend I have added regex to the dependencies.

  1. Is there any issue or concern with this addition?
  2. If not, could you please confirm whether my entry in Cargo.toml is correct?

@brooksmtownsend
Copy link
Member

Hey @jtakakura thank you so much for taking this on! Quite honestly, I need to give it a better look, but I would suggest holding off for now because #73 is going to cause you pain here to rebase. Hope that's ok!

@jtakakura
Copy link
Contributor Author

@brooksmtownsend Thank you for your reply!
I understand your suggestion and will put this on hold until #73 is completed.

@brooksmtownsend
Copy link
Member

Okay @jtakakura ready to go! Thank you for your patience, #73 now merged

@jtakakura jtakakura force-pushed the fix/skip-wasi-0.2 branch 2 times, most recently from 0ea6569 to cc46059 Compare October 25, 2025 04:40
@jtakakura jtakakura changed the title [WIP] fix(dev): skip registering wasi 0.2 interfaces in plugin manager [WIP] fix(workload): skip registering wasi 0.2 interfaces in resolved workload Oct 25, 2025
@jtakakura
Copy link
Contributor Author

@brooksmtownsend Thank you for merging #73!
I have finished updating my changes to match the refactored code after #73.

Also, I have two questions about my implementation:

  • I added the regex crate for version matching. Is this acceptable for the project? If not, could you suggest a better way?
  • The code skips versions like 0.2.0 and 0.2.1 (that is, 0.2.x), but it does not handle cases like 0.2.0-draft. Is this okay, or should we support these cases too?

Let me know what you think!

@jtakakura jtakakura force-pushed the fix/skip-wasi-0.2 branch 8 times, most recently from 31d7cca to baa8f0b Compare November 9, 2025 14:46
@jtakakura jtakakura force-pushed the fix/skip-wasi-0.2 branch 4 times, most recently from 598defb to 862e338 Compare November 22, 2025 05:47
Signed-off-by: Junji Takakura <j.takakura@gmail.com>
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.

Skip registering wasi@0.2 interfaces in DevPluginManager

2 participants