otigen v0.1.0-alpha.5
Pre-release
Pre-release
otigen v0.1.0-alpha.5
The multi-contract release. One project can now hold many contracts that
build, test, and deploy together — plus a hardening pass over the whole CLI
and a new build-time check that catches manifest mistakes before they reach a
chain.
Multi-contract workspaces
otigen initcreates a workspace;otigen newadds a contract to it.
Standalone single-contract projects work exactly as before.otigen buildandotigen testrun across every contract
(--contract <name>targets one).otigen deploybuilds everything, shows you the plan (network, RPC,
account, order), then deploys in order — resolving@namereferences to
real deployed addresses. Re-running skips what's already deployed.
--dry-runpreviews everything offline, no password, no node needed.otigen addresseslists what's deployed where.call,inspect, and
verifyaccept a contract's name from anywhere in the workspace.
Your manifest can't lie anymore
otigen build now verifies that the types declared in [functions.*]
match your actual Rust code, and fails with a clear message when they don't:
function "increment": otigen.toml declares inputs [uint64],
but the code's signature is [] — update [functions.increment] to match
Requires pyde-host 0.1.0-alpha.7 (new scaffolds pin it automatically).
Constructors are recognised by the constructor attribute — any function
name works.
Errors and returns you can actually read
- Reverts show the message your contract wrote —
Reverted: erc721: nonexistent token— everywhere: view calls, transactions, deploys, and
the console. No more wasm backtraces. - Write functions that return data now display it, decoded per your declared
outputs — structs, enums, and nestedvec(…)included. - Every scaffold command prints the same clean summary: what was created,
the files that matter, and the next commands to run.
Smaller fixes worth knowing
- Scaffolds pull
pyde-hostfrom crates.io / npm / the Go module registry —
no vendored sources in your project tree. devnet --jsonemits clean NDJSON (logs go to stderr).--chain-idaccepts the0xform thatpyde_chainIdreturns.wallet password --password-stdinfor scripts and CI.- Constructor args can be passed on the command line for a single-contract
deploy inside a workspace (otigen deploy --contract usdc usdc USDC 6 …). - Devnet endpoints standardised on
127.0.0.1:9933across all scaffolds and
examples.
Install
Download the archive for your platform below, verify the checksum, and put
otigen on your PATH. macOS/Linux:
tar xzf otigen-v0.1.0-alpha.5-<target>.tar.gz
install -m 755 otigen-v0.1.0-alpha.5-<target>/otigen ~/.otigen/bin/otigenVerify
cosign verify-blob \
--certificate-identity-regexp 'https://github.com/.*' \
--certificate-oidc-issuer-regexp 'https://token.actions.githubusercontent.com|https://github.com/login/oauth' \
--signature <archive>.sig \
--certificate <archive>.pem \
<archive>.tar.gz