Releases: polywrap/wrap-cli
Releases · polywrap/wrap-cli
Polywrap Origin (0.9.2)
Polywrap Origin (0.9.2)
Bugs
- PR-1327
@polywrap/schema-bind: Added missing serialization bindings for module method arguments & return values.
Polywrap Origin (0.9.1)
Polywrap Origin (0.9.1)
Bugs
- PR-1320
@polywrap/ethereum-plugin-js: Properviewmethod result parsing. - PR-1317
@polywrap/core-js,@polywrap/uri-resolvers-extensions-js: Properly check for null when using UriResolverExtensionFileReader to read wasm module. - PR-1318
polywrapCLI: Thecodegencommand properly applies the-g, --codegen-diroption. - PR-1318
@polywrap/templates: Fix several issues within thewasmtemplate projects. - PR-1316
polywrapCLI: Fix an issue where the CLI process would hang after the command had completed. - PR-1315
polywrapCLI: Minor cleanup post logging refactor. - PR-1310
polywrapCLI: Use base images from the "polywrap" Docker Hub organization.
Polywrap Origin (0.9.0)
Polywrap Origin (0.9.0)
Features
- PR-1306
polywrapCLI: Console logging has been improved, and all commands now support-q, --quietand-v, --verboseoptions. - PR-1204
polywrapCLI: Build times are faster for wasm wrappers!!! Thebuildcommand has been updated to include the concept of "build strategies". The existing way of building (viaDockerfileimage layers) is available through thepolywrap build --strategy imagecommand. 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).- NOTE:
--strategy imageis useful for source-code verification, something we'll be better supporting in the future.
- NOTE:
- PR-1297
@polywrap/schema-bind:wasm/rustnow has support forprintln!(...)andprint!(...)macros. They have been redefined to use thepolywrap_wasm_rs::wrap_debug_log(...)function. - PR-1192
@polywrap/client-js:PolywrapClient.invoke(...)now supports invoke-time environment variables, passed in via theenvproperty. - PR-1270
polywrapCLI: Themanifestcommand has been added:
Usage: polywrap manifest|m [options] [command]
Inspect & Migrade Polywrap Manifests
Options:
-h, --help display help for command
Commands:
schema|s [options] [type] Prints out the schema for the current manifest format.
migrate|m [options] [type] Migrates the polywrap project manifest to the latest version.
help [command] display help for command
- PR-1301 Added a
--formatoption to themigratecommand, enabling the targeting of specific format versions when migrating manifests (ex:polywrap manifest migrate -f 0.2.0). - PR-1218
polywrapCLI,@polywrap/tracing-js: Thetracinginfrastructure module (i.e.polywrap infra up --modules tracing) now uses version0.11.0of theSizNoztracing service. Additionally the underlying@polywrap/tracing-jslibrary has been updated to support this, and also now has named traces via thetraceNameconfiguration property.
Bugs
- PR-1304
polywrapCLI: Generated build files from thevmstrategy now have proper file-system permissions. - PR-1305
@polywrap/ipfs-plugin-js: Fallback providers are now properly being used. - PR-1296
polywrapCLI: Thepolywrap.app.yamlandpolywrap.plugin.yamlproject manifest file names are being deprecated in favor of a unifiedpolywrap.yamlfile 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. - PR-1303
@polywrap/core-js: TheUriclass now properly formats itself when beingJSON.stringify(...)'d. - PR-1288
@polywrap/core-js: Correctly handle errors in thegetImplementationsalgorithm. - PR-1298
@polywrap/ipfs-plugin-js,@polywrap/ipfs-resolver-plugin-js: Remove the use ofrequire(...)statements. - PR-1286
@polywrap/polywrap-manifest-types-js: Manifest migration logic has been upgraded to use a strategy that finds a "shortest path" between thefromandtoformat versions, using predefined migration functions.
Breaking Changes
- PR-1284
@polywrap/core-js:Wrapper.getFile(...)andWrapper.getManifest(...)no longer require aClientinstance as a second function argument. - PR-1291
@polywrap/core-js,@polywrap/client-js: AllClientConfigproperties are nowreadonly. - PR-1287
@polywrap/core-js:executeMaybeAsyncFunctionhas been removed. - PR-1277
@polywrap/client-js: The following methods now return theResult<T, E>type, and will not throw exceptions:getManifest(...),getFile(...),getImplementations(...),query(...),invokeWrapper(...),invoke(...),loadWrapper(...). - PR-1192
@polywrap/client-js:PolywrapClient.invoke(...)no longer accepts invoke-time reconfiguration via theconfigproperty. Users who wish to reconfigure the client can do so by callingclient.getConfig(), modifying it via theClientConfigBuilder, and constructing a newPolywrapClientinstance.
Polywrap Origin (0.8.0)
Polywrap Origin (0.8.0)
Features
- PR-1083
@polywrap/client-config-builder-js: The default client config now has the ability to resolvehttpURIs (ex:wrap://http/domain.com/path) via the@polywrap/http-resolver-plugin-js. - PR-1083
polywrapCLI: Hosting & deploying wrappers via HTTP is now possible with the newhttpdeploy & infra modules. - PR-1097 & PR-1272
polywrapCLI,@polywrap/polywrap-manifest-schemas,@polywrap/polywrap-manifest-types-js:polywrap.deploy.yamlformat version0.2.0has been added, making the schema similar to thepolywrap.test.yamlschema, where users define a series ofjobsto be performed. - PR-1097
polywrapCLI: Recursive ENS domain name registration is now supported via theens-recursive-name-registerdeploy module. - PR-1060
@polywrap/ipfs-interface: AddedfallbackProviders: [String!]totype Options. - PR-1169
@polywrap/core-js,@polywrap/client-js: URI resolution has been refactored. Resolution is now implemented in a singleIUriResolverinstance. - PR-1169
@polywrap/client-js:invokeWrapper(...)has been added to thePolywrapClientclass. - PR-1169
@polywrap/client-config-builder-js:setResolver(...)has been added, enabling users to set theIUriResolverinstance on the builder'sClientConfig. - PR-1133
@polywrap/core-js,@polywrap/client-js:getPluginByUri(...)has been added to theClientinterface, andPolywrapClientclass. - PR-1231
polywrapCLI:buildcommand now supports the--no-codegenoption, which disables the automatic codegen step when compiling projects.
Bugs
- PR-1244
polywrapCLI: Workflows can now properly access nested properties of previous job step output. - PR-1243
@polywrap/schema-compose: Multi-line imports are now properly supported within block comments. - PR-1097
polywrapCLI: ENS deployment URIs generated via thedeploycommand now properly contain the network's name in the URI. - PR-1234
polywrapCLI: Theruncommand and underlyingWorkflowsystem has had multiple bug fixes added.- Workflow validation always printed "SUCCESS" and errors were never printed.
- Workflow manifest was not being validated.
- The stderr messages were not being output (previously unnoticed because errors were not printed).
- PR-1220
@polywrap/schema-bind:wasm/rustbindings handle the serialization of reserved words via serde, so that the original name of properties is reserved during encoding. - PR-1219
@polywrap/schema-bind:wasm/rustbindings now properly handle imported interface modules. - PR-1229
polywrapCLI:runcommand now properly resolves thevalidation: ...property within thepolywrap.test.yamlmanifest relative to the manifest's directory, instead of the user's cwd.
Breaking Changes
- PR-1097
polywrapCLI: Thelocal-dev-ensdeploy module has been removed. - PR-1060
@polywrap/ipfs-plugin-js:IpfsPluginConfighas been removed, and all properties (provider,fallbackProviders) have been moved into the wrapper'sEnv. - PR-1169
@polywrap/client-js:loadUriResolvers(...)has been removed from thePolywrapClientclass. - PR-1169
@polywrap/client-js:resolveUri(...)has been renamed totryResolveUri(...)on thePolywrapClientclass. - PR-1169
@polywrap/core-js,@polywrap/client-js:getUriResolvers(...)has been renamed togetUriResolver(...)on theClientinterface andPolywrapClientclass. - PR-1169
@polywrap/client-config-builder-js:addUriResolver(...)andsetUriResolvers(...)have been removed from theClientConfigBuilderclass. - PR-1169
@polywrap/core-js,@polywrap/wasm-js: Moved theWasmWrapperclass and all related types into their own package named@polywrap/wasm-js. - PR-1235
@polywrap/core-js:Uri.from(...)has been added, andtoUri(...)has been removed.
Polywrap Origin (0.7.0)
Polywrap Origin (0.7.0)
Bugs
- PR-1158
@polywrap/client-config-builder-js: The following plugins have been removed from the default config, and replaced with their WebAssembly wrapper equivalents available at the same URIs:wrap://ens/uts46.polywrap.ethwrap://ens/sha3.polywrap.ethwrap://ens/graph-node.polywrap.eth
- PR-1213
@polywrap/schema-bind: Nested map types (i.e.Map<K, Map<K, V>>) are now properly supported forwasm/rustandwasm/assemblyscript. - PR-1213
@polywrap/wasm-as: Nested map types (i.e.Map<K, Map<K, V>>) are now properly msgpack encoded. - PR-1212
polywrapCLI:wasm/rustbuild image now uses thebuild-depscargo extension to properly build dependencies in a seperate Dockerfile layer, enabling the caching of compiled artifacts.
Breaking Changes
- PR-1217
@polywrap/schema-bind:plugin/typescriptandapp/typescriptbindings have been updated to improve type safety, and no longer accept generic properties for all method argument types. - PR-1051
polywrapCLI:polywrap plugin codegenandpolywrap app codegencommands have been moved into thepolywrap codegen, which can now generate types for any Polywrap project (wasm, plugin, app). - PR-1154
@polywrap/schema-bind: Thewasm/assemblyscriptbindings have been updated to useBox<T> | nullfor all optional scalar types, instead of theOption<T>class used before. - PR-1154
@polywrap/ws-plugin-js: The WebSocket plugin's schema has been updated to useUInt32for socket IDs, instead ofInt32.
Polywrap Origin (0.6.0)
Polywrap Origin (0.6.0)
Features
- PR-1100
polywrapCLI: A new manifest namedpolywrap.test.yamlhas been added, which encapsulates workflows and validation scripts. - PR-1100
@polywrap/polywrap-manifest-types-js:polywrap.testmanifest types have been added. - PR-1100
@polywrap/polywrap-manifest-schemas:polywrap.testmanifest schema has been added.
Bugs
- PR-1205
polywrapCLI: Theruncommand's output now has deterministic ordering for text emitted from both workflow & validation steps. - PR-1194
@polywrap/msgpack-js: NestedMap<K, V>serialization is now supported. - PR-1199
@polywrap/core-js@polywrap/client-js: Runtime type inference has been improved to be compatible with JavaScript minimization optimizations where theClass.namestatic property is removed. - PR-1196
@polywrap/core-js: AllWrapperCacheinterface methods have been updated to returnMaybeAsyncpromises, allowing developers to implement async logic.
Breaking Changes
- PR-1100
polywrapCLI:runcommand no longer accepts the<workflow>argument, and instead uses the newpolywrap.test.yamlmanifest. - PR-1100
@polywrap/client-js: Therunmethod has been removed. - PR-1100
@polywrap/core-js: AllWorkflowrelated types have been removed, and migrated into the manifest packages and the CLI.
Polywrap Origin (0.5.0)
Polywrap Origin (0.5.0)
Features
- PR-1042
@polywrap/client-js: ThePolywrapClientConfignow has atracerConfig: Partial<TracerConfig>property, allowing users to easily configure the tracing level, and various toggles related to tracing. - PR-1042
polywrapCLI: Added thetracerinfra module, allowing developers to easily spin up an OpenTelemetry compatible tracing server. This can be used to gather runtime tracelog events from thePolywrapClient. - PR-1042
@polywrap/tracing-js: The@Tracer.traceMethod()function decorator now has an optionalTracingLevelargument. - PR-1143
@polywrap/ethereum-plugin-js: TheEthereumPluginConfignow has aconnectionsproperty, which takes an instance of theConnectionsclass. This new implementation makes configuring new network connections at runtime easier and more application developer friendly. - PR-1045
@polywrap/client-config-builder-js: TheClientConfigBuilderhas been added to make building & customizingPolywrapClientConfigseasier than before with a simple user friendly interface. - PR-1036
@polywrap/client-js: Added thewrapperCache: WrapperCacheproperty to thePolywrapClientConfiginterface. - PR-1036
@polywrap/core-js: Added theWrapperCachecore type, along with aSimpleCacheimplementation that persists wrappers within a map.
Bugs
- PR-1186
@polywrap/schema-bind: Using aMap<K, V>type within theMap's value (V) template argument has been fixed. - PR-1179
polywrapCLI: Improved the readability of thepolywrap build -vcommand's output from the Docker child process.
Breaking Changes
- PR-1042
@polywrap/client-js: ThePolywrapClientConfig'stracingEnabledproperty has been removed, and replaced bytracerConfig. - PR-1143
@polywrap/ethereum-plugin-js: TheEthereumPluginConfig'snetworksproperty has been removed, and replaced byconnections. - PR-1045
@polywrap/client-js: ThegetDefaultClientConfig()&defaultIpfsProvidersexports have been moved to the@polywrap/client-config-builder-jspackage.
Polywrap Origin (0.4.1)
Polywrap Origin (0.4.1)
Features
- PR-1171
@polywrap/schema-bind: Handle reserve words (keywords) for object, enum, and method names.
Bugs
Polywrap Origin (0.4.0)
Polywrap Origin (0.4.0)
Features
- PR-1091
@polywrap/polywrap-manifest-schemas: Polywrap project manifests (polywrap.yaml,polywrap.app.yaml,polywrap.plugin.yaml) have a new format0.2.0, which restructures the manifest into 3 top level properties:project,source, andextensions. Additionally all project manifests can be given thepolywrap.yamlfile name. - PR-1092
@polywrap/ws-plugin-js: Added a WebSocket plugin. - PR-1096
@polywrap/client-js: Expose thenoValidateoption for theclient.getManifest(...)method. - PR-820
polywrapCLI:docgencommand added, allowing wrapper developers to easily generate documentation. Supported formats: schema, docusaurus, jsdoc. - PR-1068
@polywrap/ethereum-plugin-js:requestAccountsmethod added, which utilizes theeth_requestAccountsRPC method on the configured provider.
Bugs
- PR-1142
wasm/rust:Map<K, V>bugs have been fixed. - PR-1140
polywrapCLI: Added a check to make sure the Docker daemon is running, and provides an informative error if it is not. - PR-1090
polywrap/wrap-manifest-types-js: Remove runtime schema bundling, which required file system access. - PR-1050
polywrapCLI: Errors encounted in child processes now output bothstdtypesoutandstderr, allowing easier end-user debugging.
Breaking Changes
- PR-1046
polywrapCLI:schema.graphqlhas been removed from wrapper build artifacts.polywrap.plugin.yamlhas been removed from plugin build artifacts. - PR-1046
@polywrap/schema-bind:schema.tshas been removed from typescript bindings. - PR-1046
@polywrap/schema-bind@polywrap/schema-compose:WrapAbiis now used in all places, instead of schema documents. - PR-1095
@polywrap/http-plugin-js: UseMap<String, String>forheaders&urlParams. - PR-1073
@polywrap/schema-compose: TheComposerOptionspropertyschemas: SchemaFile[]has been replaced withschema: SchemaFile. Additionally the function argumentschemas: SchemaFile[]on theresolveImportsfunction has bee replaced withschema: SchemaFile. - PR-1073
@polywrap/wrap-manifest-types-js: InWrapAbiformat0.1, properties no longer acceptnulland instead useundefined. - PR-1073
@polywrap/schema-parse:Abiexport renamed toWrapAbi.
Polywrap Origin (0.3.0)
Polywrap Origin (0.3.0)
Features
- PR-1034
@polywrap/wrap-manifest-schemas,@polywrap/wrap-manifest-types-js: Added a JSON-schema for thewrap.info'sabifield. - PR-1058
polywrapCLI: Deploy results can now be output to a file using the-o, --output-file <path>option of thedeploycommand.
Bugs
- PR-1034
@polywrap/wrap-manifest-schemas,@polywrap/polywrap-manifest-schemas: Version numbers for the manifest'sformat: ...field have been changed to only include<major>.<minor>(ex:0.1.0is now0.1). This is because there cannot be a change to a pure interface that is a<patch>. - PR-1034
@polywrap/package-validation: Thewrap.info.abifield is no longer being validated via schema rendering, and is instead utilizing the newly added JSON-schema. - PR-1054
polywrapCLI: Improvedwasm/rustbuild times by refactoring the build image's Dockerfile, helping reduce cache invalidations. - PR-1053
@polywrap/wasm-as: Increased minor version of as-bignumber. The new version has a bug fix for the toFixed method, which was incorrectly printing numbers when a decimal number was rounded to an integer.
Breaking Changes
- PR-1034
@polywrap/wrap-manifest-types-js:deserializeWrapManifestis nowasync.