Polywrap Origin (0.10.0-pre.0) #1394
Merged
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.10.0-pre.0)
Features
@polywrap/client-js: Polywrap Client now re-exports the config builder and uri-resolvers (in addition to core) packages. This is done to improve dev exp and remove the need for users to import those package themselves.@polywrap/client-config-builder-js:addRedirects,addWrappers,addPackagesmethods to theClientConfigBuilder, so users can add many items at once.buildDefaultto theClientConfigBuilderwhich builds aClientConfigusing default resolvers.@polywrap/plugin-js:PluginPackage.from.manifestand aPluginModule, or an inlinePluginModule.@polywrap/uri-resolvers-js: AddedStaticResolverandStaticResolver.fromto optimize building resolvers withIUriRedirect,IUriWrapperandIUriPackage.@polywrap/schema-bind: Inplugin-tsbindings, thePluginModuletype is now imported fron@polywrap/plugin-jsinstead of@polywrap/core-js.polywrapCLI: A-l, --log-file [path]option has been added to all commands. Its purpose is to configure aLog file to save console output to, useful in situations when the console log overflows.Breaking Changes
polywrapCLI: The JS/TS module passed into the--client-configoption has a new entrypoint signature.getCustomConfig, users should export the followingconfigure(builder: IClientConfigBuilder): IClientConfigBuilder.IClientConfigBuildercan be imported from the@polywrap/client-config-builder-jspackage.@polywrap/client-config-builder-js: RenamedremoveUriRedirect(...)toremoveRedirect(...).@polywrap/client-js:noDefaults: falseno longer accepts apluginsfield, but it acceptswrappersandpackages.resolverfield has been replaced withresolvers, since with default client the resolver used is theRecursiveResolverwith thePackageToWrapperCacheResolver.noDefaults: true, no longer accepts apluginsfield. It is expected that devs using this option will manually configure their own resolver.getPluginsandgetPluginByUri. Will addgetWrapper,getWrapperByUri,getPackage,getPackageByUri, in a follow up PR.createPolywrapClientfunction has been deleted from the client-js package as it is unnecessary@polywrap/client-config-builder-js:CustomClientConfigwhich doesn't havepluginsand aresolver, but now haswrappers,packagesandresolversCustomClientConfig, which can be used with defaults from thePolywrapClient, but can not be used ifnoDefaults: trueis passed to thePolywrapClientconstructor.addPluginfrom theClientConfigBuilder, users can now useaddWrapperoraddPackagewhere appropriate.addUriRedirecttoaddRedirectto keep it inline withaddWrapperandaddPackage(IUriRedirect, IUriWrapper, IUriPackage)@polywrap/core-js:UriRedirecttoIUriRedirectto matchIUriWrapperandIUriPackageIUriRedirect,IUriWrapperandIUriPackageare now generic and their generic param implementsUri | stringoptionsargument fromclient.getManifestmethod since all wrappers have a deserialized manifest@polywrap/reactpluginson thePolywrapProviderwithwrappersandpackages@polywrap/uri-resolvers-js:buildUriResolverwithUriResolver.fromRecursiveResolverandPackageToWrapperCacheResolvernow accept a concreteIUriResolverwhile their staticfrommethods accept aUriResolverLikePluginsResolverandPluginResolver, users can now useWrapperResolverorPackageResolverpolywrapCLI: Rename theruncommand totest, which uses thetestproject extension, as defined in thepolywrap.test.yamlmanifest file.@polywrap/logging-js: Moved the logging interface from the CLI's lib into its own package.@polywrap/polywrap-manifest-types-js: Added an optional logger parameter to the deserialization function of all manifest types.@polywrap/ethereum-plugin-js: Added asignMessageBytesmethod.Bugs
polywrapCLI: Updated the CLI's README.polywrapCLI: Automatically upgrading manifests now emits a warning, suggesting users to upgrade their manifest.polywrapCLI: Invokeascusingnpxto help with program resolution.@polywrap/templates: Add thehttps://ipfs.wrappers.iogateway to the interface template'spolywrap.deploy.yamlmanifest.@polywrap/ethereum-plugin-js: Update README to latest code.polywrapCLI: Update error messaging for the--client-configoption.