bsv-wasm
bsv-wasm copied to clipboard
BSV stdlib written in Rust and runs in WASM environments
Quick wins: - Replace all the anyhow::Error properties in Error enums either with an enum or a simple type like &str
With bsv.js (legacy 1.x version) we can define script flags when signing a transaction. e.g.: bsv.Interp.SCRIPT_ENABLE_MAGNETIC_OPCODES | bsv.Interp.SCRIPT_ENABLE_MONOLITH_OPCODES | bsv.Interp.SCRIPT_VERIFY_STRICTENC | bsv.Interp.SCRIPT_ENABLE_SIGHASH_FORKID | bsv.Interp.SCRIPT_VERIFY_LOW_S | bsv.Interp.SCRIPT_VERIFY_NULLFAIL | bsv.Interp.SCRIPT_VERIFY_DERSIG | bsv.Interp.SCRIPT_VERIFY_MINIMALDATA...
Hey @Firaenix, I'm currently running some tests with your new version and experienced a `RuntimeError: unreachable` when using `Transaction.add_outputs()`. Adding them all manually with `Transaction.add_output()` works as expected. _Originally posted...
Solving some problems related to script templates using different ways to represent opcodes. OP_FALSE and OP_TRUE on script and script template. Make 00 work as a PushData[00] on script and...
Templates that had OP_IF were not working. This patch creates a iterator on script that expands OP_IF for matching and for ASM and BYTE serializations.
The locking script of the sCrypt contract is somewhat special. After the last opreturn, there may be situations where the data is not stored according to oppushdata. But this is...
this test should pass: ```rust #[test] fn true_opreturn_false() { let script = Script::from_hex("516a00") .unwrap(); let mut interpreter = Interpreter::from_script(&script); interpreter.run().unwrap(); assert_eq!(interpreter.state().stack().last().unwrap(), &vec![1_u8]); } ```
I'm testing out the sending of big file ordinals (specifically 40-47mb 3D model) on BSV using 1sat ordinals. I get this error: RuntimeError: memory access out of bounds at wasm://wasm/003b639a:wasm-function[280]:0x86a2f...