Releases: CharmsDev/charms
v15.0.0
What's Changed
- Versioned Apps by @imikushin in #170
- Require running new binary on app-version change by @imikushin in #177
- feat(scrolls_bitcoin): add verify_spell update method by @imikushin in #178
- feat(scrolls_bitcoin): delegate verify_spell to next version canister for higher spell versions by @imikushin in #179
- feat(scrolls): expose cycles_balance + deposit_cycles for blackholing by @imikushin in #180
- chore(scrolls): add icp-cli config alongside dfx.json by @imikushin in #182
- chore(scrolls): add scrolls_bitcoin_v15 canister by @imikushin in #183
- feat(scrolls_bitcoin): rename sign to sign_and_submit, broadcast via ICP Bitcoin by @imikushin in #186
- scrolls_bitcoin: deterministic address derivation from (tx_in_0, out_i) + API simplifications by @imikushin in #187
- feat(scrolls_bitcoin): sign addresses with Schnorr chain key by @imikushin in #188
- scrolls_bitcoin: vetKD-derived canister-specific secret prefix for address derivation by @imikushin in #189
- scrolls_bitcoin: drop stable-memory persistence of secret prefix by @imikushin in #190
- Add SCROLLS_ADDRS_PUBKEY const with ic-pub-key derivation test by @imikushin in #191
- feat(charms-client): add tx.scrolls output set + signed-address-map verification by @imikushin in #192
- Unify Groth16 verification; bump V15 to use
[u8; 32]spell VKs by @imikushin in #193 - Bump SP1 to 6.2.1 + rebuild zkVM binaries + add guest smoke test by @imikushin in #194
- scrolls_bitcoin: delegate v14 input signing to v14 canister by @imikushin in #195
- feat(cli): default app signatures to .sig.yaml by @imikushin in #196
- feat(cli): app vk from app-key.json and app verify command by @imikushin in #197
- Cache SP1 verifying keys to speed up prover startup by @imikushin in #198
- Broadcast Bitcoin transactions via mempool.space API by @imikushin in #199
Full Changelog: v14.1.0...v15.0.0
v14.0.0
This release addresses a security issue in SP1 v6.0.x: GHSA-63x8-x938-vx33
We are deprecating Charms v12 and v13 and encouraging everyone to migrate to Charms v14.
No API changes have been made since v12 and v13.
Full Changelog: v13.0.0...v14.0.0
v13.0.0
What's Changed
- Protocol fee address handling for Cardano transactions by @imikushin in #167
- fix(charms-client): beam claim fails for empty placeholder UTXOs by @capitaharlock in #168
Full Changelog: v12.0.0...v13.0.0
v12.0.0
What's Changed
- fix(charms-app-runner): Do not crash if Charms app Wasm is missing the entry point by @imikushin in #160
- Remove outdated example projects by @imikushin in #163
- feat(cardano): support spending from Charms app contracts on Cardano by @imikushin in #162
- Update dependencies and enhance Cardano support for version 12 by @imikushin in #164
Full Changelog: v11.0.1...v12.0.0
v11.0.1
What's Changed
- fix(charms-lib): enable getrandom with wasm_js for wasm feature by @imikushin in #159
Full Changelog: v11.0.0...v11.0.1
v11.0.0
What's Changed
- Add support for Cardano transaction finality proof by @imikushin in #152
- Handle beamed-out outputs for Cardano multi-asset transactions by @imikushin in #153
- Refactor and enhance spell outputs on Cardano by @imikushin in #154
- Introduce
BeamSourcestruct and update build documentation by @imikushin in #155 - Add Cardano NativeOutput content by @imikushin in #156
- Add
util destsubcommand by @imikushin in #157 - Add deterministic PRNG to Charms Wasm app runtime by @imikushin in #158
Full Changelog: v0.12.0...v11.0.0
v0.11.1
Full Changelog: v0.10.0...v0.11.1
v0.10.0
Charms v0.10.0 brings native coins visibility to app contracts. Combined with Scrolls this enables smart contracts on Bitcoin that can lock and unlock BTC.
This release also completes the ground work necessary for Charms being represented on Cardano as CNTs.
Also, Charms can now be securely beamed from Bitcoin to... currently only Bitcoin (but also any other chains, when we add support for them). Great news is: now adding support for Bitcoin clones is straightforward, so now Litecoin and Dogecoin can be added almost trivially.
What's Changed
- Native coin handling in spells by @imikushin in #127
- Prepare v0.10 release by @imikushin in #133
Full Changelog: v0.9.3...v0.10.0
v0.9.1 - Improve Reliability
New
- Charms protocol current version to use in spells:
version: 7
Improved
- charms-lib Wasm module for use both in browser and server JS runtimes
- Proving speed
- Improved reliability across the board
Full Changelog
v0.8.0 - Proper mocks
What's New
- Charms protocol version 6 is now the current version
- charms-lib Wasm module for use both in browser and backend runtimes like Node.js and Deno
- Find
charms_lib.wasmin this release's artifacts - Generate JS bindings for it using
wasm-bindgen --out-dir target/wasm-bindgen-nodejs --target nodejs ./charms_lib.wasm
- Find
- Proper mocks:
- Use
--mockflag in charms CLI commands to generate and verify mock proofs mock: boolparam in charms-lib'sextractAndVerifySpell(tx, mock)
- Use
Full Changelog: v0.7.0...v0.8.0