Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Polywrap Origin (0.9.0)
Features
polywrap
CLI: Console logging has been improved, and all commands now support-q, --quiet
and-v, --verbose
options.polywrap
CLI: Build times are faster for wasm wrappers!!! Thebuild
command has been updated to include the concept of "build strategies". The existing way of building (viaDockerfile
image layers) is available through thepolywrap build --strategy image
command. Building without Docker (if all build-time dependencies are installed locally) can be performed using--strategy local
. And lastly, the new default build strategy is--strategy vm
, which runs all build steps in a pre-built base image, allowing for near-local speeds (once the image has been downloaded).--strategy image
is useful for source-code verification, something we'll be better supporting in the future.@polywrap/schema-bind
:wasm/rust
now has support forprintln!(...)
andprint!(...)
macros. They have been redefined to use thepolywrap_wasm_rs::wrap_debug_log(...)
function.@polywrap/client-js
:PolywrapClient.invoke(...)
now supports invoke-time environment variables, passed in via theenv
property.polywrap
CLI: Themanifest
command has been added:--format
option to themigrate
command, enabling the targeting of specific format versions when migrating manifests (ex:polywrap manifest migrate -f 0.2.0
).polywrap
CLI,@polywrap/tracing-js
: Thetracing
infrastructure module (i.e.polywrap infra up --modules tracing
) now uses version0.11.0
of theSizNoz
tracing service. Additionally the underlying@polywrap/tracing-js
library has been updated to support this, and also now has named traces via thetraceName
configuration property.Bugs
polywrap
CLI: Generated build files from thevm
strategy now have proper file-system permissions.@polywrap/ipfs-plugin-js
: Fallback providers are now properly being used.polywrap
CLI: Thepolywrap.app.yaml
andpolywrap.plugin.yaml
project manifest file names are being deprecated in favor of a unifiedpolywrap.yaml
file for all types of projects (wasm, interface, plugin, app). They will still silently work now, but in the future will no longer be recognized defaults.@polywrap/core-js
: TheUri
class now properly formats itself when beingJSON.stringify(...)
'd.@polywrap/core-js
: Correctly handle errors in thegetImplementations
algorithm.@polywrap/ipfs-plugin-js
,@polywrap/ipfs-resolver-plugin-js
: Remove the use ofrequire(...)
statements.@polywrap/polywrap-manifest-types-js
: Manifest migration logic has been upgraded to use a strategy that finds a "shortest path" between thefrom
andto
format versions, using predefined migration functions.Breaking Changes
@polywrap/core-js
:Wrapper.getFile(...)
andWrapper.getManifest(...)
no longer require aClient
instance as a second function argument.@polywrap/core-js
,@polywrap/client-js
: AllClientConfig
properties are nowreadonly
.@polywrap/core-js
:executeMaybeAsyncFunction
has been removed.@polywrap/client-js
: The following methods now return theResult<T, E>
type, and will not throw exceptions:getManifest(...)
,getFile(...)
,getImplementations(...)
,query(...)
,invokeWrapper(...)
,invoke(...)
,loadWrapper(...)
.@polywrap/client-js
:PolywrapClient.invoke(...)
no longer accepts invoke-time reconfiguration via theconfig
property. Users who wish to reconfigure the client can do so by callingclient.getConfig()
, modifying it via theClientConfigBuilder
, and constructing a newPolywrapClient
instance.