wasmCloud

wasmCloud is an open source Cloud Native Computing Foundation (CNCF) project that enables teams to build, manage, and scale polyglot apps across any cloud, K8s, or edge.

APACHE-2.0 License

Downloads
312
Stars
1.5K
Committers
71

Bot releases are visible (Hide)

wasmCloud - v1.3.0

Published by github-actions[bot] 13 days ago

Breaking changes

  • https://github.com/wasmCloud/wasmCloud/pull/2963 introduced a new validation rule for links that may break existing configurations. The rule, as detailed in the PR, is that a link from the same source to multiple targets on the same namespace, package, and interface must have a unique link name. This was an invalid scenario for components, but technically allowed for capability providers since providers can use outside information to otherwise differentiate what target to call. The diagram below details this a bit:
    image

If you define a link that's conflicting in this way, you'll receive a response in your client and wasmCloud will publish a linkdef_set_failed event with the message "link already exists with different target, consider deleting the existing link or using a different link name".

In addition to rejecting the invalid link, there's also a suite of fixes in the host to ensure that links are delivered to capability providers with all of their relevant information.

Features

  • ci: allow release of wasmcloud-component by @vados-cosmonic
  • examples: messaging processor worker by @vados-cosmonic
  • http-server: path-based component routing by @brooksmtownsend
  • wash-cli: Add ability to check and validate OCI image references in WADM manifests by @Aditya1404Sal
  • provider-sdk: name the provider's NATS connection by @joonas
  • wash-cli: convert dependencies to WADM manifests by @vados-cosmonic
  • wash-cli: allow multi host usage, add local sessions to wash dev by @vados-cosmonic
  • wash-cli: write out generated wadm by @vados-cosmonic
  • wash-cli: add hints for deps by @vados-cosmonic
  • wit: setup workflow for wasmcloud:secrets package by @vados-cosmonic
  • provider-blobstore-azure: Add integration tests by @joonas
  • wash-cli: add host log path option by @vados-cosmonic
  • provider-sqldb-postgres: Enable TLS by default, remove the need for feature flag by @joonas
  • host: Adds support for batch support to the host by @thomastaylor312
  • wash-cli: enable wash dev for providers by @vados-cosmonic
  • Allow wash to re-use registry credentials from Docker by @joonas
  • providers: enable auto creation of buckets by @vados-cosmonic
  • wasmcloud-platform: Add helm chart by @ossfellow
  • secrets-nats-kv: add support for NATS creds, disclaimers when deploying by @protochron
  • wash-cli: enable undeploying and deleting multiple apps by @vados-cosmonic
  • wash-cli: Implement Humantime duration input for --watch flags by @Aditya1404Sal
  • Provide predefined testcontainers by @joonas
  • ci: --allow-dirty smart release for pre-release PR by @vados-cosmonic
  • ci: Uses wkg to build and push wit package binaries to OCI by @thomastaylor312
  • feat: update to wasmtime 25 by @rvolosatovs
  • feat: update to WASI 0.2.1 by @rvolosatovs

Fixes

Refactors

  • refactor: Use testcontainers and localstack for blobstore-s3 provider testing by @joonas
  • refactor(wash-lib, wash-cli)!: use process groups for nats and wadm by @vados-cosmonic
  • refactor(core,host,wash-lib): reorganize to release by @vados-cosmonic
  • refactor(wash-cli): reorganize wash up and wash config by @vados-cosmonic
  • refactor(control-interface)!: prep for v2 release by @vados-cosmonic
  • refactor(ci): use the crate name in branch by @vados-cosmonic

Documentation

New Contributors

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/v1.2.1...v1.3.0

wasmCloud - v1.3.0-rc.1

Published by github-actions[bot] 17 days ago

What's Changed

New Contributors

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/v1.2.1...v1.3.0-rc.1

wasmCloud - wash-cli-v0.34.1

Published by github-actions[bot] 22 days ago

What's Changed

New Contributors

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/wit-wasmcloud-bus-v1.0.0...wash-cli-v0.34.1

wasmCloud - wit-wasmcloud-bus-v1.0.0

Published by ricochet 26 days ago

wasmCloud - wash-cli-v0.34.0

Published by github-actions[bot] about 1 month ago

What's Changed

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/wash-cli-v0.33.0...wash-cli-v0.33.1

wasmCloud - wash-cli-v0.33.0

Published by github-actions[bot] about 1 month ago

What's Changed

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/wit-wasmcloud-secrets-v0.1.0-draft...wash-cli-v0.33.0

wasmCloud - wit-wasmcloud-secrets-v0.1.0-draft

Published by github-actions[bot] about 1 month ago

wasmCloud - wash-cli-v0.32.1

Published by github-actions[bot] about 2 months ago

What's Changed

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/wash-cli-v0.32.0...wash-cli-v0.32.1

wasmCloud - v1.2.1

Published by github-actions[bot] about 2 months ago

What's Changed

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/v1.2.0...v1.2.1

wasmCloud - wash-cli-v0.32.0

Published by github-actions[bot] about 2 months ago

What's Changed

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/wash-cli-v0.31.0...wash-cli-v0.32.0

wasmCloud - wash-cli-v0.31.0

Published by github-actions[bot] about 2 months ago

wash 0.31.0 brings in wasmCloud v1.2.0 and wadm v0.14.0, so check out those release notes for detailed updates.

Features

This version of wash includes a couple of notable improvements!

  • wash --version got a much-needed improvement to display the versions of wadm, nats-server, and wasmCloud that will launch by default with wash up
➜ wash --version
wash          v0.30.0
├ nats-server v2.10.18
├ wadm        v0.14.0
└ wasmcloud   v1.2.0-rc.1
  • wash app list now has a --watch flag for continually watching the output for applications, thank you @Aditya1404Sal !
  • wash app status is completely redone to display the status of each individual scaler, rather than being essentially a shortened wash app list
➜ wash app status rust-hello-world

rust-hello-world@ - Failed

  Name                                         Kind           Status
  http_component                               SpreadScaler   Failed (*)
  httpserver -(wasi:http)-> http_component     LinkScaler     Deployed
  httpserver                                   SpreadScaler   Deployed

  Status Messages

  http_component
    └ failed to start component: ...

Fixes and improvements

  • wash will now be able to fully resolve a file reference for components & providers, transforming ./path/to/file fully to file://$(pwd)/path/to/file
  • wash spy will now display decoded payloads directly, which may not be formatted perfectly but will show the inner payload of invocations for debugging
  • wash scale will no longer wait for two scaled events, and combined with a fix from wasmCloud will always return with an acknowledgement even if the component was already scaled to the requested replicas.
  • wash drain will no longer remove the downloaded binaries of the host, wadm, or NATS while they are running
  • wash will constrain all tables that it outputs in human-readable text mode to the width of the terminal, giving more consistent output

What's Changed

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/wash-cli-v0.30.0...wash-cli-v0.31.0

wasmCloud - wit-wasmcloud-postgres-v0.1.1-draft

Published by github-actions[bot] about 2 months ago

wasmCloud - v1.2.0

Published by github-actions[bot] 2 months ago

wasmCloud 1.2 officially closes out the remaining issues from the Q2 Roadmap! This release is also the first of our quicker release cadence, so expect to see some great changes but not quite as many as wasmCloud 1.1.

Updating to 1.2

Components

Components using wasi:blobstore should see immediate improvements this release in terms of max bytes streamed, speed of streaming bytes, and error handling around streaming.

If you’re looking for examples of best practices when using streams, check out the blobby example component. Since it uses wasi:http and wasi:blobstore directly, you can replicate the same lines of code in any source language component.

Providers

Capability providers using the latest provider SDK will now be able to subscribe to configuration updates, allowing configuration to change and immediately be delivered to providers without needing a restart. This will be an available function to override in the Rust provider SDK, and will be implemented soon in the Golang provider SDK.

Capability providers implementing wrpc:blobstore are strongly recommended to update to the latest version (0.2.0) in order to take advantage of blobstore async streaming. The host will remain backwards compatible with wrpc:[email protected] for at least a minor release.

See https://github.com/wasmCloud/wasmCloud/pull/2779 for three implementation examples (Fileystem, Amazon S3, and Azure Blobstore) to see the best path for upgrading. We’ve updated and released each of these providers, so make sure to update your wadm manifests when possible:

wasmCloud hosts

wasmCloud introduced additional validation for policy and secret subjects, a new linkdef_set_failed event for better downstream validation of links, and the ability to tune the wasmtime runtime parameters at the wasmCloud CLI. In addition, wasmCloud is now running wasmtime 23 which comes with a suite of performance and security improvements.

Here are the newly available CLI flags for tuning runtime parameters (note that no defaults changed here from 1.1):

--max-linear-memory-bytes <MAX_LINEAR_MEMORY>
    The maximum amount of memory bytes that a component can allocate [env: WASMCLOUD_MAX_LINEAR_MEMORY=] [default: 10485760]
--max-component-size-bytes <MAX_COMPONENT_SIZE>
    The maximum byte size of a component binary that can be loaded [env: WASMCLOUD_MAX_COMPONENT_SIZE=] [default: 52428800]
--max-components <MAX_COMPONENTS>
    The maximum number of components that can be run simultaneously [env: WASMCLOUD_MAX_COMPONENTS=] [default: 10000]

What’s changed:

New Features

Fixes

CI & Documentation

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/v1.1.1...v1.2.0

wasmCloud - v1.2.0-rc.1

Published by github-actions[bot] 2 months ago

What's Changed

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/v1.1.1...v1.2.0-rc.1

wasmCloud - v1.1.1 Latest Release

Published by github-actions[bot] 3 months ago

What's Changed

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/v1.1.0...v1.1.1

wasmCloud - wash-cli-v0.30.0

Published by github-actions[bot] 3 months ago

What's Changed

  • chore(wash-cli): Replace actor by component by @nitame
  • docs(proxy): Include proxy auth information in wash by @ritesh089
  • fix(wash-ui): Type mismatch number input and schema by @emattiza
  • fix(wash-cli): Remove wash up with manifest cleanup by @vados-cosmonic
  • fix(wash-lib, wash-cli): Do not download wadm on every invocation of wasm up by @deem0n
  • fix(wash-cli): Remove help about deprecated wash reg #2404 by @deem0n
  • fix(wash-lib): Invalid target_arch riscv64gc by @vados-cosmonic
  • fix(wash-lib): Remove invalid category 'wasmcloud' by @vados-cosmonic
  • fix(wash-cli): Re-add wash call by @vados-cosmonic
  • fix(wash-cli): Transposed args in call.rs by @mtaufen
  • chore(wash-cli): Suppress warning for new rust cfg check by @vados-cosmonic
  • feat(wash-cli): Include simple invocation in wash call tests by @vados-cosmonic
  • fix(wash-cli): Better format of optional in error by @brooksmtownsend

New Contributors

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/wash-cli-v0.29.2...wash-cli-v0.30.0

wasmCloud - v1.1.0

Published by github-actions[bot] 3 months ago

wasmCloud 1.1 includes many features from the Q2 2024 roadmap, notably including Secrets support, Postgres support, implementations of the new Wasm OCI artifact type, link name on wRPC invocations, gRPC export support for OTEL, and a host of performance and ergonomic improvements to the wRPC framework.

Updating to 1.1

Components

Components looking to make use of secrets can now import the wasmcloud:secrets interface and retrieve secrets securely at runtime. This is a backwards compatible new feature.

wasmCloud hosts

Secrets support is a backwards compatible change with wasmCloud 1.1, and updating wasmCloud clusters from 1.0 to 1.1 should be possible without any changes. It is recommended to update all wasmCloud hosts in your lattice to 1.1 to avoid any issues.

wasmCloud 1.1 supports the following new command line flags:

 --trace-level <TRACE_LEVEL>
     Controls the verbosity of traces emitted from the wasmCloud host [env: WASMCLOUD_TRACE_LEVEL=] [default: INFO]
 --max-execution-time-ms <MAX_EXECUTION_TIME>
     If provided, allows to set a custom Max Execution time for the Host in ms [env: WASMCLOUD_MAX_EXECUTION_TIME_MS=] [default: 600000]
 --secrets-topic <SECRETS_TOPIC_PREFIX>
     If provided, enables interfacing with a secrets backend for secret retrieval over the given topic prefix. Must not be empty [env: WASMCLOUD_SECRETS_TOPIC=]
 --flame-graph <FLAME_GRAPH>
     Path to generate flame graph at [env: WASMCLOUD_FLAME_GRAPH=]
 --tls-ca-path <TLS_CA_PATHS>
     Configures the set of certificate authorities as repeatable set of file paths to load into the OCI and OpenTelemetry clients

Capability providers

Updates to the provider-sdk in both Rust and Golang now support receiving an xkey private key for the provider and public key for the host. This is handled by the provider-sdk internally and is used to facilitate secure transmission of secrets from a host to a provider. If a capability provider is running on a wasmCloud 1.1 host will listen on a link put topic based on the xkey public key for the provider rather than its provider ID. If the provider is running on a wasmCloud 1.0 host, it will still listen on the provider ID topic in order to be backwards compatible. Secrets are now available in the HostData passed to the provider at runtime for the provider itself and for the links that it receives.

Updates to the wRPC framework in wasmCloud 1.1 fix issues with reading from asynchronous streams when communicating with capability providers. It's strongly recommended to update capability providers to use the latest wasmcloud-provider-sdk, wit-bindgen-wrpc, and wrpc-transport crates in order to bring the support up-to-par with wasmCloud hosts. All wasmCloud capability providers have been updated and your application manifests can update to the versions below:

  • ghcr.io/wasmcloud/blobstore-azure:0.3.0
  • ghcr.io/wasmcloud/http-server:0.22.0
  • ghcr.io/wasmcloud/messaging-nats:0.22.0
  • ghcr.io/wasmcloud/keyvalue-redis:0.27.0
  • ghcr.io/wasmcloud/http-client:0.12.0
  • ghcr.io/wasmcloud/blobstore-fs:0.8.0
  • ghcr.io/wasmcloud/keyvalue-vault:0.10.0
  • ghcr.io/wasmcloud/messaging-kafka:0.4.0
  • ghcr.io/wasmcloud/blobstore-s3:0.9.0
  • ghcr.io/wasmcloud/sqldb-postgres:0.3.0
  • ghcr.io/wasmcloud/keyvalue-nats:0.2.0

What's Changed

What's Changed

New Contributors

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/v1.0.2...v1.1.0

wasmCloud - v1.1.0-beta.2

Published by github-actions[bot] 3 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/v1.1.0-beta.1...v1.1.0-beta.2

wasmCloud - v1.1.0-beta.1

Published by github-actions[bot] 3 months ago

What's Changed

wasmCloud 1.1 includes many features from the Q2 2024 roadmap, notably including Secrets support, Postgres support, implementations of the new Wasm OCI artifact type, link name on wRPC invocations, gRPC export support for OTEL, and a host of performance and ergonomic improvements to the wRPC framework.

Updating to 1.1

Components

Components looking to make use of secrets can now import the wasmcloud:secrets interface and retrieve secrets securely at runtime. This is a backwards compatible new feature.

wasmCloud hosts

Secrets support is a backwards compatible change with wasmCloud 1.1, and updating wasmCloud clusters from 1.0 to 1.1 should be possible without any changes. It is recommended to update all wasmCloud hosts in your lattice to 1.1 to avoid any issues.

wasmCloud 1.1 supports the following new command line flags:

 --trace-level <TRACE_LEVEL>
     Controls the verbosity of traces emitted from the wasmCloud host [env: WASMCLOUD_TRACE_LEVEL=] [default: INFO]
 --max-execution-time-ms <MAX_EXECUTION_TIME>
     If provided, allows to set a custom Max Execution time for the Host in ms [env: WASMCLOUD_MAX_EXECUTION_TIME_MS=] [default: 600000]
 --secrets-topic <SECRETS_TOPIC_PREFIX>
     If provided, enables interfacing with a secrets backend for secret retrieval over the given topic prefix. Must not be empty [env: WASMCLOUD_SECRETS_TOPIC=]
 --flame-graph <FLAME_GRAPH>
     Path to generate flame graph at [env: WASMCLOUD_FLAME_GRAPH=]
 --tls-ca-path <TLS_CA_PATHS>
     Configures the set of certificate authorities as repeatable set of file paths to load into the OCI and OpenTelemetry clients

Capability providers

Updates to the provider-sdk in both Rust and Golang now support receiving an xkey private key for the provider and public key for the host. This is handled by the provider-sdk internally and is used to facilitate secure transmission of secrets from a host to a provider. If a capability provider is running on a wasmCloud 1.1 host will listen on a link put topic based on the xkey public key for the provider rather than its provider ID. If the provider is running on a wasmCloud 1.0 host, it will still listen on the provider ID topic in order to be backwards compatible. Secrets are now available in the HostData passed to the provider at runtime for the provider itself and for the links that it receives.

Updates to the wRPC framework in wasmCloud 1.1 fix issues with reading from asynchronous streams when communicating with capability providers. It's strongly recommended to update capability providers to use the latest wasmcloud-provider-sdk, wit-bindgen-wrpc, and wrpc-transport crates in order to bring the support up-to-par with wasmCloud hosts. All wasmCloud capability providers have been updated and your application manifests can update to the versions below:

  • ghcr.io/wasmcloud/blobstore-azure:0.3.0
  • ghcr.io/wasmcloud/http-server:0.22.0
  • ghcr.io/wasmcloud/messaging-nats:0.22.0
  • ghcr.io/wasmcloud/keyvalue-redis:0.27.0
  • ghcr.io/wasmcloud/http-client:0.12.0
  • ghcr.io/wasmcloud/blobstore-fs:0.8.0
  • ghcr.io/wasmcloud/keyvalue-vault:0.10.0
  • ghcr.io/wasmcloud/messaging-kafka:0.4.0
  • ghcr.io/wasmcloud/blobstore-s3:0.9.0
  • ghcr.io/wasmcloud/sqldb-postgres:0.3.0
  • ghcr.io/wasmcloud/keyvalue-nats:0.2.0

Features

  • Support secrets integration in wasmCloud - Adds support for secure transmission of secrets within the platform. (#2344)
  • Add support for specifying multiple labels in wash-lib - Enhances the flexibility of specifying labels. (#2140)
  • Enable custom component support in wash - Adds support for custom components, including an example and template for Go providers. (#2173, #2215)
  • Add keyvalue-messaging example - Introduces a new example for key-value messaging. (#2560)
  • Support configuring proxy credentials for HTTP(S)_PROXY in wash-lib - Adds functionality to configure proxy credentials. (#2175)
  • Enable undeploying models by file name in wash-cli - Enhances the command-line tool with additional functionality for model management. (#2310)
  • Adds flag to [wash up] to allow reading custom NATS config - Customizes NATS configuration during wash up. (#2271)
  • Add keyvalue-messaging example - A new example showcasing key-value messaging. (#2560)
  • Support tracing and metrics with OpenTelemetry - Adds support for tracing and metrics with OpenTelemetry, including configuration options. (#2201)
  • Upgrade wrpc, async-nats, wasmtime - Integrates new versions of key dependencies for improved performance and features. (#2459)

Bug Fixes

  • Fix: Correct validation for backend key in policies - Ensures proper validation of backend keys in policies. (#2176)
  • Fix: Improve reuse of underlying TCP socket in http-server - Enhances the efficiency of TCP socket usage in the HTTP server component. (#2578)
  • Fix: Correct integration test in wash-cli - Addresses an issue with the integration tests for wash-cli. (#2589)
  • Fix: Remove old component image artifacts - Cleans up obsolete component image artifacts. (#2184)

Enhancements

  • Update to latest provider references in examples - Examples have been updated to use the latest provider versions. (#2336)
  • Improve error messages for missing links - Error messages related to missing links have been made clearer. (#2362)
  • Display max instances count in wash get inventory output - The output now includes the maximum instances count for components. (#2240)

General Updates

  • 124 dependency updates and 19 chore updates

New Contributors

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/v1.0.4...v1.1.0-beta.1

wasmCloud - washboard-ui-v0.4.0

Published by lachieh 3 months ago

Usage

To use the washboard-ui you can either use the wash cli or run it locally by opening the static file assets included in the release.

wash ui --version=v0.4.0

What's Changed

🚀 Features

🐛 Bug Fixes

🧰 Maintenance

New Contributors

Full Changelog: https://github.com/wasmCloud/wasmCloud/compare/washboard-ui-v0.3.0...washboard-ui-v0.4.0

Package Rankings
Top 18.09% on Npmjs.org
Top 6.39% on Proxy.golang.org
Top 4.91% on Crates.io
Badges
Extracted from project README
Stars Homepage and Documentation CNCF sandbox project OpenSSF Best Practices OpenSSF Scorecard Artifact Hub CLOMonitor FOSSA Status twitter youtube subscribers youtube views