Releases: polywrap/wrap-cli
Releases · polywrap/wrap-cli
Polywrap Origin (0.10.4)
Polywrap Origin (0.10.4)
Features
polywrap
CLI:
- PR-1735 Add Docs Manifest &
polywrap docs init
Command- The
polywrap.docs.yaml
manifest is used to add additional metadata to your wraps.
- The
- PR-1776 Add HTTP Headers To HTTP Deploy Module
- The
http
deploy module now supports theheaders
configuration property.
- The
Bugs
polywrap
CLI:
- PR-1773 Don't Install
wasm-opt
Everylocal
Rust Build- The
local
strategy for rust wasm projects was unexpectedly installingwasm-opt
every time it was run, leading to very long build times.
- The
@polywrap/schema-bind
:
Polywrap Origin (0.10.3)
Polywrap Origin (0.10.3)
Features
polywrap
CLI:
- PR-1747 Add Rust & Python plugin template projects to CLI's
create
command- The
create
command now supportsplugin/rust
andplugin/python
project types.
- The
Bugs
@polywrap/schema-bind
:
- PR-1734 Update
plugin/python
Bindings- Update
wrap.info
python module embedding.
- Update
- PR-1728 Update
plugin/rust
Bindings- Modify JSON serialization within rust plugin's bindings.
- PR-1736 Properly emit function name when
Env
is missing- Fixed the error message that's emitted when an environment is not supplied to a function that requires it.
- PR-1733 Add imported
Env
topropertyDeps
transform- Adds imported
Env
topropertyDeps
transform, so that now codegen properly generates imports for dependencies of imported env.
- Adds imported
Polywrap Origin (0.10.2)
Polywrap Origin (0.10.2)
Bugs
@polywrap/schema-bind
:
- PR-1718
plugin/python
Enum Bindings Fix- Enums are now properly displayed in Python plugins.
Polywrap Origin (0.10.1)
Polywrap Origin (0.10.1)
Features
@polywrap/schema-bind
:
- PR-1694
plugin/rust
Env Bindings Refactor- Rust plugin bindings now expose
env
as a function argument.
- Rust plugin bindings now expose
Bugs
@polywrap/schema-bind
:
- PR-1700
plugin/rust
Serde renaming for snake-cased properties in rust plugins types- Rust plugins now properly convert wrap schema property names into snake-cased names, so they are compatable with Rust naming conventions.
@polywrap/templates
:
- PR-1680 Import newer logger in typescript template
- Update the typescript app template to use the latest logging wrap at
ens/wraps.eth:logging@1.0.0
.
- Update the typescript app template to use the latest logging wrap at
@polywrap/polywrap-manifest-types-js
:
- PR-1692 top-level
docker
property is now removed from build manifest during migration- Fixes a bug where the top-level
docker
property of build manifest version 0.1.0 was not being dropped during migration, causing migrated build manifests to fail validation.
- Fixes a bug where the top-level
Polywrap Origin (0.10.0)
Polywrap Origin (0.10.0)
Features
Toolchain
polywrap
CLI:
- PR-1592 Add
primaryJob
to deploy manifest and outputURI.txt
when runningpolywrap deploy
- The
primaryJob
option in the deploy manifest identifies the name of the job that is used for the primary deployment. The URI that is emitted from theprimaryJob
will be output to aURI.txt
file next to the deploy manifest.
- The
- PR-1529
polywrap create template
Command- Added the
polywrap create template
command to the CLI, enabling users to provide a url to a template project.
- Added the
- PR-1584 Codegen Command Now Supports
--watch
- You can now run npx
polywrap codegen --watch
which will automatically watch files within your project directory and re-run codegen whenever changes are detected.
- You can now run npx
- PR-1677 Python Plugin Support
- Add bindings for
plugin/python
projects.
- Add bindings for
- PR-1428 Rust Plugin Support
- Add bindings for
plugin/rust
projects.
- Add bindings for
- PR-1437 Support Custom Wrapper Environment Variables
- Enable users to customize the CLI's internal client's wrapper environment via a
--wrapper-envs
option, added to thebuild
,codegen
,docgen
, andtest
commands.
- Enable users to customize the CLI's internal client's wrapper environment via a
- PR-1430 Support Arbitrary Resources Files
- Polywrap
wasm/
&interface/
projects can now include aresources:
directory, specified in thepolywrap.yaml
manifest. This resources directory will be copied into thebuild/
folder upon runninpolywrap build
. For example:format: 0.3.0 project: type: interface | wasm/... ... source: ... resources: ./resources
- Polywrap
- PR-1349 Log File Support
- 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.
- A
@polywrap/cli-js
:
- PR-1359 Polywrap CLI JS Wrapper
- Created the
polywrap/cli-js
package to wrap thepolywrap
CLI with a JavaScript/TypeScript interface.
- Created the
@polywrap/polywrap-manifest-schemas
:
- PR-1430 Support Arbitrary Resources Files
- Added version
0.3.0
of thePolywrapManifest
, which includes the newresources: string
field.
- Added version
@polywrap/polywrap-manifest-types-js
:
- PR-1379 Add Logging to Manifest Migrators
- Added an optional logger parameter to the deserialization function of all manifest types.
- PR-1430 Support Arbitrary Resources Files
- Added version
0.3.0
of thePolywrapManifest
, which includes the newresources: string
field.
- Added version
@polywrap/schema-bind
:
- PR-1677 Python Plugin Support
- Add bindings for
plugin/python
projects.
- Add bindings for
- PR-1464
wasm/rust
Bindings Now UseModuleTrait
Trait- Codegen for
wasm/rust
wraps now generates aModuleTrait
trait that must be implemented for the rootModule
struct.
- Codegen for
- PR-1460
wasm/assemblyscript
Bindings Now UseModuleBase
Interface- Codegen for
wasm/assemblyscript
wraps now generates aModuleBase
interface that must be extended by a rootModule
class.
- Codegen for
- PR-1428 Rust Plugin Support
- Add bindings for
plugin/rust
projects.
- Add bindings for
- PR-1236 Plugin Refactor
- In
plugin-ts
bindings, thePluginModule
type is now imported fron@polywrap/plugin-js
instead of@polywrap/core-js
.
- In
@polywrap/schema-compose
:
- PR-1600 Allow WRAP URIs in Un-Namespaced Imports
- Support URIs within un-namespaced import statements like so
#import { Object, Module } from "wrap://..."
- This effectively enables the "embedding" of external ABIs, which is useful when you'd like to copy 1:1 an ABI that lives elsewhere.
- Support URIs within un-namespaced import statements like so
JS Client
@polywrap/client-js
:
- PR-1582 Support ENS Text Record WRAP URIs
- Support has been added for using ENS text records as valid
wrap://
URIs. - Example:
wrap://ens/uniswap.wraps.eth:v3
- NOTE: Text record key names must begin with
wrap/
- Support has been added for using ENS text records as valid
- PR-1431 WRAP Error Structure
- Integrate the
WrapError
structure, helping debug common client error scenarios.
- Integrate the
- PR-1340 Wrapper Validation
- Added a
validate(uri, options)
method to thePolywrapClient
class, allowing users to guarantee the client can communicate with the provided wrapper located at the provided URI.
- Added a
- PR-1236 Plugin Refactor
- 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.
- For users who do not need those packages and are using noDefaults there will be a separate PR that refactor core client functionality into a core-client package that does not depend on the config builder and uri-resolvers packages, but has no defaults.
- 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
:
- PR-1582 Integrate URI Resolver Extension Wraps
- The default configuration bundle now has the following uri-resolver-ext wraps registered as interface implementations:
- `wrap://ens/wraps.eth:ipfs-uri-resolver-ext@1.0.0
wrap://ens/wraps.eth:ens-text-record-uri-resolver-ext@1.0.0
wrap://ens/wraps.eth:http-uri-resolver-ext@1.0.0
wrap://ens/wraps.eth:file-system-uri-resolver-ext@1.0.0
wrap://ens/wraps.eth:ens-uri-resolver-ext@1.0.0
wrap://ens/wraps.eth:ens-ipfs-contenthash-uri-resolver-ext@1.0.0
- The default configuration bundle now has the following uri-resolver-ext wraps registered as interface implementations:
- PR-1560 Add
BuildOptions
to build method inIClientConfigBuilder
- This makes it possible to add a custom cache or resolver without casting.
- PR-1475 Embed IPFS HTTP Client & IPFS URI Resolver Wraps
- The default configuration bundle now comes with two embedded wraps that enable interactions with IPFS:
ipfs-http-client
@wrap://ens/wraps.eth:ipfs-http-client@1.0.0
async-ipfs-uri-resolver-ext
@wrap://ens/wraps.eth:async-ipfs-uri-resolver-ext@1.0.1
- The default configuration bundle now comes with two embedded wraps that enable interactions with IPFS:
- PR-1518 Optional Build Method Arguments
- The
build(...)
method now accepts a single argument of typeBuildOptions
.
- The
- PR-1496 Use New Concurrent Wrapper
- The default config bundle now uses the
wrap://ens/wrappers.polywrap.eth:concurrent@1.0.0
interface, and adds theconcurrent-plugin-js
package @wrap://plugin/concurrent
as an implementation.
- The default config bundle now uses the
- PR-1468 Export Default Config Bundle URIs
- The default config now exports constants for all URIs used within the config.
- PR-1436 Use New Logger Wrapper
- The default config bundle now uses the
wrap://ens/wrappers.polywrap.eth:logger@1.0.0
interface, and adds the@polywrap/logger-plugin-js
package @wrap://plugin/logger
as an implementation.
- The default config bundle now uses the
- PR-1411 Add
ens-text-record-resolver
to Default Config Bundle- The
ens-text-record-resolver
wrapper @wrap://ipfs/QmfRCVA1MSAjUbrXXjya4xA9QHkbWeiKRsT7Um1cvrR7FY
has been added to the default client config bundle. This resolver enables ENS, text-record based, WRAP URI resolution. The text-record's key must be prepended with thewrap/...
identifier. For example, the URIwrap://ens/domain.eth:foo
maps todomain.eth
'swrap/foo
text record. Thewrap/foo
text-record's value must contain another valid WRAP URI. For examples, see dev.polywrap.eth.
- The
- PR-1236 Plugin Refactor
- Added
addRedirects
,addWrappers
,addPackages
methods to theClientConfigBuilder
, so users can add many items at once. - Added
buildDefault
to theClientConfigBuilder
which builds aClientConfig
using default resolvers.
- Added
@polywrap/plugin-js
:
- PR-1614 Add
env
ToPluginModule
Invocation Method Arguments- `Plug...
Polywrap Origin (0.9.7)
Polywrap Origin (0.9.7)
Bugs
- PR-1635
@polywrap/templates
: Fix thets-node
template code as it wouldn't build without changes.
Polywrap Origin (0.9.6)
Polywrap Origin (0.9.6)
Bugs
- PR-1565
@polywrap/ipfs-plugin-js
: Added optional support for provider authentication via the plugin's environment variables. - PR-1559
@polywrap/client-config-builder-js
,@polywrap/ipfs-resolver-plugin-js
: Add the concept of configurable retries to the IPFS resolver. - PR-1558
@polywrap/core-js
: WrapError now correctly parsing Rust unwrap errors.
Polywrap Origin (0.9.5)
Polywrap Origin (0.9.5)
Bugs
- PR-1541
polywrap
CLI: Update build images to use the latest multi-platform versions. - PR-1517
polywrap
CLI: Fix thebuild
command's--watch
option. - PR-1512
@polywrap/client-js
,@polywrap/core-js
: Created a customWrapError
structure that improves debugging ability for common client error scenarios. - PR-1509
@polywrap/core-js
: Correct typings for the URI resolver interface, and handle null return values.
Polywrap Origin (0.9.4)
Polywrap Origin (0.9.4)
Bugs
- PR-1372
@polywrap/schema-parse
,@polywrap/schema-compose
: Fixed a bug when importing type with map properties that use imported types. - PR-1380
polywrap
CLI: Add informative logging when manifests are automatically migrated. - PR-1356
polywrap
CLI: Building interface projects should not require docker. - PR-1374
@polywrap/ethereum-plugin-js
: Update README. - PR-1381
@polywrap/templates
: Add https://ipfs.wrappers.io gateway to IPFS deployment step for interface project.
Polywrap Origin (0.9.3)
Polywrap Origin (0.9.3)
Bugs
- PR-1344
@polywrap/cli
: Improve workflow validation. - PR-1345
@polywrap/cli
: Theens-recursive-name-register
deploy step now properly registers ENS sub-domains recursively. - PR-1342
@polywrap/polywrap-manifest-schemas
: Accept @ character in folder paths. - PR-1333
@polywrap/client-js
: Added TsDoc comments to thePolywrapClient
class. - PR-1337
@polywrap/schema-bind
: In Rust bindings, enum imports are now added in serialization modules when the enum is a subtype of an array (Vec) or map.