gcash / meep Goto Github PK
View Code? Open in Web Editor NEWMeep is a command line Bitcoin Cash script debugger
License: MIT License
Meep is a command line Bitcoin Cash script debugger
License: MIT License
installation error "installing executables with 'go get' in module mode is depreciated", apparently since the release of Go 1.17
I tried to update my meep installation, but got this error. Possibly related: golang/go#51091
% go version
go version go1.18.2 darwin/amd64
% go install github.com/gcash/meep@latest
# golang.org/x/sys/unix
go/pkg/mod/golang.org/x/[email protected]/unix/syscall_darwin.1_13.go:29:3: //go:linkname must refer to declared function or variable
go/pkg/mod/golang.org/x/[email protected]/unix/zsyscall_darwin_amd64.1_13.go:27:3: //go:linkname must refer to declared function or variable
go/pkg/mod/golang.org/x/[email protected]/unix/zsyscall_darwin_amd64.1_13.go:40:3: //go:linkname must refer to declared function or variable
go/pkg/mod/golang.org/x/[email protected]/unix/zsyscall_darwin_amd64.go:28:3: //go:linkname must refer to declared function or variable
go/pkg/mod/golang.org/x/[email protected]/unix/zsyscall_darwin_amd64.go:43:3: //go:linkname must refer to declared function or variable
go/pkg/mod/golang.org/x/[email protected]/unix/zsyscall_darwin_amd64.go:59:3: //go:linkname must refer to declared function or variable
go/pkg/mod/golang.org/x/[email protected]/unix/zsyscall_darwin_amd64.go:75:3: //go:linkname must refer to declared function or variable
go/pkg/mod/golang.org/x/[email protected]/unix/zsyscall_darwin_amd64.go:90:3: //go:linkname must refer to declared function or variable
go/pkg/mod/golang.org/x/[email protected]/unix/zsyscall_darwin_amd64.go:105:3: //go:linkname must refer to declared function or variable
go/pkg/mod/golang.org/x/[email protected]/unix/zsyscall_darwin_amd64.go:121:3: //go:linkname must refer to declared function or variable
go/pkg/mod/golang.org/x/[email protected]/unix/zsyscall_darwin_amd64.go:121:3: too many errors
It would be a nice feature to have to display some text, possibly upon pressing some F button for help, that describes the function of the next opcode to be executed and the stack transformation to be expected.
A valid script using bitcoin-abc regtest only succeeds sometimes with meep debug mode.
If it doesn't succeed then this is the error: Fail :( script exceeds maximum signature density
which is then followed by Fail :( past input scripts 3:0 3:xxxx
when hit F4 again.
It seems the script execution will only result with Success!!!
1/10 attempts.
Using the latest meep release, here's the debug command I'm using:
meep debug -t \
020000000250e5e2c80453a3f796fbdbe816490fd86a907152775082ab83f2c98b530c0af502000000fd6103047c0000000414d6617f040084d717483045022100bf1052c12db26c65ae5773799536f2cd629f20014a11916554043bc1b4dbc55e0220022afa616adefc4d72a4ba2c437905e7d08c6d02a9d472d381e13b6d4b04647941210295822e18325e0681c96b14a1dec917305c8ce694601e19c24e9829014dc8b3374dc00102000000bdeacb1f4d848d11b4bcc967e4e73d13d379c17023930d178dd14b68e16ed60cc992651ac89a97aecd0811c1761915a8e2c8f5153d1bdd994a789e6bd86ab71750e5e2c80453a3f796fbdbe816490fd86a907152775082ab83f2c98b530c0af502000000fd2101047b0000002060a64105009f8c933158632975d1c863ad370ca449792c0dadcef74bb24241cf5279820128947f777601207f75547982012c947f757601687f777678827758947f7576538b7f7776587982777f5c795c79ad5c79828c7f755b79a85d79bb5f79815a7981788c887603e77e039f69040084d7177802a866968b607952795279965480880400000000011179bc7e5e790113797eaa76527f7576810088540116797e57797e170000000000000000396a04534c50000101044d494e542060797e030102087e54797e0c22020000000000001976a914011479a97e0288ac7e0b220200000000000017a9145379a97e01877e527952797e787eaa011179885979b1755177777777777777777777777777777777777777777777777777772202000000000000feffffffac0e564dda2b728b92666275a3f56c9a053c239d4f66552437bb03f7f1637b0c7c000000410000004d2101047b0000002060a64105009f8c933158632975d1c863ad370ca449792c0dadcef74bb24241cf5279820128947f777601207f75547982012c947f757601687f777678827758947f7576538b7f7776587982777f5c795c79ad5c79828c7f755b79a85d79bb5f79815a7981788c887603e77e039f69040084d7177802a866968b607952795279965480880400000000011179bc7e5e790113797eaa76527f7576810088540116797e57797e170000000000000000396a04534c50000101044d494e542060797e030102087e54797e0c22020000000000001976a914011479a97e0288ac7e0b220200000000000017a9145379a97e01877e527952797e787eaa011179885979b175517777777777777777777777777777777777777777777777777777feffffffb66cf4f645c845436c9e8b3ee2546848c86eb9eca893995f7f82aae73aee3204000000006a47304402201797f2857dccdf3ed42f655f3b523ffe169d22b7b6fd7d4ead46becb49b20e04022015fdbf98b501e0a7880078b23c853ac7c9489749ae84351f278d34bec84db12841210295822e18325e0681c96b14a1dec917305c8ce694601e19c24e9829014dc8b337feffffff030000000000000000396a04534c50000101044d494e542060a64105009f8c933158632975d1c863ad370ca449792c0dadcef74bb24241cf0102080000000017d7840022020000000000001976a9148fbec65375d437ffb61c6941ed4b84a8e660063c88ac220200000000000017a91483eeadfaf294583d2ea294add4b2432ab6d4da01877c000000 \
-a 546 \
-i 0 \
-s a9141e14ddc4ec5c292de9a377e767f683e041447bcd87
When encountering OP_0 the program just display an empty line instead of the expected '0'
The following command fails in meep on the final OP_CHECKSIG:
meep debug --idx=0 --amt=10200 --pkscript=a9148baa7f7c897382d277f6eb8a61e2666358364b2387 --tx=010000000118bff68d350eed902b1c3e3fcc4efebdcd2071e6ec8fab2b8462fc950fe49e9f00000000fd1a01473044022065b2ac31e78f41e6272b7ba6c38fc7b27a9d1aecf71b611fe07ac702f0050b14022038f56b9d2bd491448224f2af8072fdd9d12d88a3849a95b1b30fdd537ebcc4a7412103c1694a3fc1365d274d4018ff084fce836deca598f80067d3eee4a639bb79f3b4463044022073d326debb068da4e7c99d2a917355bf708c7f5bcca02837ca12af7efbf1b1b70220328a3c2a8035e5a6bf28a640d6ed0367450124623e1c6f51c71504fe56ce47bb05edb309b45f4c6176537f7cb175021860a15379a97c6314ac656e2dd5378ca9c45fd5cd44aa7da87c7bfa82886714da74026d67264c0acfede38e8302704ef7d8cfb288682102ca65d71ee988f11435ca59534e24f200b2053e2f65e8836493f1e56e4a9c2327bbacfeffffff0141060000000000001976a914ac656e2dd5378ca9c45fd5cd44aa7da87c7bfa8288acedb30900
However, this is indeed a valid transaction and is on the blockchain at https://explorer.bitcoin.com/bch/tx/dbe0a2baa0857606375775fde2a89a6abaac204246ef0ccc13b9a776d0e0b3d7
I've got the "Fail :( script exceeds maximum signature density" error message trying to debug the following tx e481e7179c7fb233bfa316482760987e40a643860d0f46abf0a0197819a6dfc8 in Bitcoin Cash mainnet
I am having issues on windows using the git bash terminal. Meep runs fine but the commands F3 F4 and ESC don't work.
Because of this I can't step through the stack, it's possible that this is an issue for al windows users.
If there is any quickk fix I'd love to hear it!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.