{"_id":"@ignored/vm","_rev":"14-edeb3fdd5717fa437562a0075ac91475","name":"@ignored/vm","dist-tags":{"latest":"6.0.0-beta.6"},"versions":{"6.0.0-beta.3":{"name":"@ignored/vm","version":"6.0.0-beta.3","keywords":["ethereum","VM"],"author":{"name":"mjbecze","email":"mjbecze@gmail.com"},"license":"MPL-2.0","_id":"@ignored/vm@6.0.0-beta.3","maintainers":[{"name":"fvictorio","email":"victorio.franco@gmail.com"},{"name":"alcuadrado","email":"email@patriciopalladino.com"}],"contributors":[{"name":"Alex Beregszaszi","email":"alex@rtfs.hu"}],"homepage":"https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/vm#readme","bugs":{"url":"https://github.com/ethereumjs/ethereumjs-monorepo/issues?q=is%3Aissue+label%3A%22package%3A+vm%22"},"dist":{"shasum":"2102de18b6135eeaff2100f6bb47679a62f67812","tarball":"https://registry.npmjs.org/@ignored/vm/-/vm-6.0.0-beta.3.tgz","fileCount":50,"integrity":"sha512-9OV6sbpwhrBj0YcOyHZGNNlhGsC+Xo25ToKnlXOn5qmql70ULKImm/cY6xSmN0qnjm3zY1rH06/EIz0ncM8dBA==","signatures":[{"sig":"MEQCICwtq+XxK8jgIjaMWjwhGi7COV9AGoPDzfPZuEbS6m+CAiA2eXLQcvuc/KytRkKLgBvA48NHgxWOfovGTGfvIAXsQQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":285389,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi/QVUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqKEhAAlVIRMJW/4izjfHhe6DWN/kaYhHl5c/8198y2EWFN+V+KXMO0\r\nNlc3K2Z+yPF2duOP+P+B9GUpOqIJzO8jnbeJ94BJifTfH3rjc9GVJhIet7Ik\r\nB3rkwHk61zSWGRnedM0ZGm+3MBxS0cPVDaUJ8LIQQ8XqgAjYFpwIk9vLUdAa\r\nK1S07yMgfN2OqW9ggWI4yHL1zqE9alcJ+7zV1u451lQ3FbGYByGubrMdpo4p\r\nlV4AzKyt+dL9stFrca0C7hmXdwe+mgRaNum0WDKk9+WeEFM4Eh5ci11bacmg\r\n5V4rCoSpX9Y4ycAFwylBAUOhsDijM63j9s2YA73H8wiQQuka99QRg2BSyZZ0\r\nT3pyoDIXsMrSDaOP/FnRnh7kUANat8lRvwVNvWlqImIU6xt//hNs4oq5Zcu+\r\nwQVpw3VWTW9r66f9zfjrMhHnrBlsXV1oeJ372y7/P1oF3vw8/WJGG1ZDpLUS\r\nahugFa0CFBf7qERgnKdr6B+8wToyJm632j1jykSnap/RwBsO56No1qpnJ3QZ\r\nXWNonSqgsGv+WhK9MTOiYeF2j5q0OZwINPXoSbtQ5+Ac/agRJwZ087F1xf+f\r\nGGCOHts4vsVKNTfMQGtAj0khQzTUHJ0tsqds9AWUGqtwV2zZsiYdWjdm/GkR\r\nwBi6eWg+3Ze93/212u7UPub5cAVKD+bNP/Y=\r\n=FbeV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"e6cd90ad72ae51dc60e6f2b0b6d3e56312469bbb","scripts":{"tsc":"../../config/cli/ts-compile.sh","lint":"../../config/cli/lint.sh","tape":"tape -r ts-node/register --stack-size=1500","test":"echo \"[INFO] Generic test cmd not used. See package.json for more specific test run cmds.\"","build":"../../config/cli/ts-build.sh","clean":"../../config/cli/clean-package.sh","tester":"ts-node ./tests/tester --stack-size=1500","coverage":"nyc npm run coverage:test","examples":"ts-node ../../scripts/examples-runner.ts -- vm","lint:fix":"../../config/cli/lint-fix.sh","test:API":"npm run tape -- './tests/api/**/*.spec.ts'","lint:diff":"../../config/cli/lint-diff.sh","profiling":"0x ./benchmarks/run.js profiling","benchmarks":"node --max-old-space-size=4096 ./benchmarks/run.js benchmarks mainnetBlocks:10","docs:build":"typedoc --options typedoc.js","formatTest":"node ./scripts/formatTest","test:state":"npm run tester -- --state","coverage:test":"npm run test:API && npm run tester -- --state","test:blockchain":"npm run tester -- --blockchain","test:state:slow":"npm run test:state -- --runSkipped=slow","build:benchmarks":"npm run build && tsc -p tsconfig.benchmarks.json","test:API:browser":"karma start karma.conf.js","test:buildIntegrity":"npm run test:state -- --test='stackOverflow'","test:state:allForks":"echo 'Chainstart Homestead dao TangerineWhistle SpuriousDragon Byzantium Constantinople Petersburg Istanbul MuirGlacier Berlin London ByzantiumToConstantinopleFixAt5 EIP158ToByzantiumAt5 FrontierToHomesteadAt5 HomesteadToDaoAt5 HomesteadToEIP150At5 BerlinToLondonAt5' | xargs -n1 | xargs -I v1 npm run test:state -- --fork=v1 --verify-test-amount-alltests","test:blockchain:allForks":"echo 'Chainstart Homestead dao TangerineWhistle SpuriousDragon Byzantium Constantinople Petersburg Istanbul MuirGlacier Berlin London ByzantiumToConstantinopleFixAt5 EIP158ToByzantiumAt5 FrontierToHomesteadAt5 HomesteadToDaoAt5 HomesteadToEIP150At5 BerlinToLondonAt5' | xargs -n1 | xargs -I v1 npm run tester -- --blockchain --fork=v1 --verify-test-amount-alltests","test:state:selectedForks":"echo 'Homestead TangerineWhistle SpuriousDragon Petersburg Berlin London' | xargs -n1 | xargs -I v1 npm run test:state -- --fork=v1 --verify-test-amount-alltests","test:blockchain:transitionForks":"echo 'ByzantiumToConstantinopleFixAt5 EIP158ToByzantiumAt5 FrontierToHomesteadAt5 HomesteadToDaoAt5 HomesteadToEIP150At5 BerlinToLondonAt5' | xargs -n1 | xargs -I v1 npm run tester -- --blockchain --fork=v1 --verify-test-amount-alltests"},"_npmUser":{"name":"fvictorio","email":"victorio.franco@gmail.com"},"repository":{"url":"git+https://github.com/ethereumjs/ethereumjs-monorepo.git","type":"git"},"_npmVersion":"8.15.1","description":"An Ethereum VM implementation","directories":{},"_nodeVersion":"14.19.3","dependencies":{"debug":"^4.3.3","mcl-wasm":"^0.7.1","rustbn.js":"~0.2.0","@ignored/tx":"4.0.0-beta.3","@ignored/evm":"1.0.0-beta.3","@ignored/rlp":"4.0.0-beta.3","core-js-pure":"^3.0.1","@ignored/trie":"5.0.0-beta.3","@ignored/util":"8.0.0-beta.3","@ignored/block":"4.0.0-beta.3","@ignored/common":"3.0.0-beta.3","async-eventemitter":"^0.2.4","@ignored/blockchain":"6.0.0-beta.3","@ignored/statemanager":"1.0.0-beta.3","ethereum-cryptography":"^1.1.2","@types/async-eventemitter":"^0.2.1","functional-red-black-tree":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^15.1.0","solc":"^0.8.1","tape":"^5.3.1","karma":"^6.3.2","level":"^8.0.0","eslint":"^8.0.0","ts-node":"^10.2.1","minimist":"^1.2.5","node-dir":"^0.1.17","standard":"^10.0.0","benchmark":"^2.1.4","karma-tap":"^4.2.0","typescript":"^4.4.2","@types/node":"^16.11.7","@types/tape":"^4.13.2","memory-level":"^1.0.0","@types/core-js":"^2.5.0","@types/minimist":"^1.2.2","@types/node-dir":"^0.0.34","@types/benchmark":"^1.0.33","@types/lru-cache":"^5.1.0","karma-typescript":"^5.5.3","@ethersproject/abi":"^5.0.12","karma-chrome-launcher":"^3.1.0","karma-firefox-launcher":"^2.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vm_6.0.0-beta.3_1660749140276_0.28564771067303596","host":"s3://npm-registry-packages"}},"6.0.0-beta.4":{"name":"@ignored/vm","version":"6.0.0-beta.4","keywords":["ethereum","VM"],"author":{"name":"mjbecze","email":"mjbecze@gmail.com"},"license":"MPL-2.0","_id":"@ignored/vm@6.0.0-beta.4","maintainers":[{"name":"fvictorio","email":"victorio.franco@gmail.com"},{"name":"alcuadrado","email":"email@patriciopalladino.com"}],"contributors":[{"name":"Alex Beregszaszi","email":"alex@rtfs.hu"}],"homepage":"https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/vm#readme","bugs":{"url":"https://github.com/ethereumjs/ethereumjs-monorepo/issues?q=is%3Aissue+label%3A%22package%3A+vm%22"},"dist":{"shasum":"36d2f76cc6fb249e5dba4727d316f7e9c9b40b91","tarball":"https://registry.npmjs.org/@ignored/vm/-/vm-6.0.0-beta.4.tgz","fileCount":50,"integrity":"sha512-Ye7qtEmuBNQShSF/+rKnfPImODMbDU/t9p51FYmvJBrJFmdwbrFoapBvVpLHPTqG9tnmRQ0QjSn2pc4FuLfl9w==","signatures":[{"sig":"MEYCIQClKyKQ1866XUoIzgs/5O7J5TD15hB7sKmo1xkQxE2gzQIhAJnzGxbU4GTGMkHzm3uE8VEm1swUCQoFjWBKIthFst2v","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":285559,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjAR7dACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq/LQ/7B4zZOm/hVW6bVSnIuRTHIvNnsMoq8mntxV7UwzbMR4XtJk0+\r\n/SxwTSYb8lTAI9r5TU2Ez6BO206xho6RLtPC4vXWdZM1PybOaH9mAqcVL2w4\r\nNBAsASqKWNRlF82niW4vo2J9+v9aAbaeoxrURHSZ8/dfgPP2CCaZHs36kVHQ\r\nMYYMAJC9UJAnND0CA/Xu10NjKHalkDfQ8TjY4oo/U0Qvc7I7SXhLK2Vg9fjM\r\nj7Xs3NlF1b9I2KIs5p39Tha0VzleXVT1WWnuzKJQnK0oO7aX8DWvUeWIVOy7\r\nHkIqBEcZz/Lz3j/jan7s9Xybb68fRjLrDNn3LV6pGjKzgbZ8gCSaFLwSr7Wq\r\n4dX+K5vVNXtMQmGnN/mZQvi4Yg52Y20jSi+6JEz5dkqqMff7a7Oo/bScPoRZ\r\nczkvhu/PAKNd9y1dpqEXTxC1fbTyaNN0hczdigCiKmU+LH/6m+6zYP1mFFqv\r\nHN+3IuX3BswuVzuE5BIJT1Ay1WBtCH/JbXuvKVFnixLJXbzWuIGe6SvYrz8J\r\n/czWwNikdKef15+LStHatggaxq+sJAofA/Ejqe7W97a7CdtEHcleWOkbNAsg\r\nnua7uYVUR6Az68YMbPxurf2ZiUV329vJCJRF6O4cZJ9RB8kZlBGc2021mXoJ\r\nUAcmVASr5R0OU2LvAe5ponu2MOuKGMfCBhw=\r\n=Ibv1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=14"},"gitHead":"38f7fe0088ea852ecb0a8a5b4b5bcd00e68b5b25","scripts":{"tsc":"../../config/cli/ts-compile.sh","lint":"../../config/cli/lint.sh","tape":"tape -r ts-node/register --stack-size=1500","test":"echo \"[INFO] Generic test cmd not used. See package.json for more specific test run cmds.\"","build":"../../config/cli/ts-build.sh","clean":"../../config/cli/clean-package.sh","tester":"ts-node ./tests/tester --stack-size=1500","coverage":"c8 --all --reporter=lcov --reporter=text --reporter=text-lcov npm run coverage:test","examples":"ts-node ../../scripts/examples-runner.ts -- vm","lint:fix":"../../config/cli/lint-fix.sh","test:API":"npm run tape -- './tests/api/**/*.spec.ts'","lint:diff":"../../config/cli/lint-diff.sh","profiling":"0x ./benchmarks/run.js profiling","benchmarks":"node --max-old-space-size=4096 ./benchmarks/run.js benchmarks mainnetBlocks:10","docs:build":"typedoc --options typedoc.js","formatTest":"node ./scripts/formatTest","test:state":"npm run tester -- --state","coverage:test":"npm run test:API","test:blockchain":"npm run tester -- --blockchain","test:state:slow":"npm run test:state -- --runSkipped=slow","build:benchmarks":"npm run build && tsc -p tsconfig.benchmarks.json","test:API:browser":"karma start karma.conf.js","test:buildIntegrity":"npm run test:state -- --test='stackOverflow'","test:state:allForks":"echo 'Chainstart Homestead dao TangerineWhistle SpuriousDragon Byzantium Constantinople Petersburg Istanbul MuirGlacier Berlin London ByzantiumToConstantinopleFixAt5 EIP158ToByzantiumAt5 FrontierToHomesteadAt5 HomesteadToDaoAt5 HomesteadToEIP150At5 BerlinToLondonAt5' | xargs -n1 | xargs -I v1 npm run test:state -- --fork=v1 --verify-test-amount-alltests","test:blockchain:allForks":"echo 'Chainstart Homestead dao TangerineWhistle SpuriousDragon Byzantium Constantinople Petersburg Istanbul MuirGlacier Berlin London ByzantiumToConstantinopleFixAt5 EIP158ToByzantiumAt5 FrontierToHomesteadAt5 HomesteadToDaoAt5 HomesteadToEIP150At5 BerlinToLondonAt5' | xargs -n1 | xargs -I v1 npm run tester -- --blockchain --fork=v1 --verify-test-amount-alltests","test:state:selectedForks":"echo 'Homestead TangerineWhistle SpuriousDragon Petersburg Berlin London' | xargs -n1 | xargs -I v1 npm run test:state -- --fork=v1 --verify-test-amount-alltests","test:blockchain:transitionForks":"echo 'ByzantiumToConstantinopleFixAt5 EIP158ToByzantiumAt5 FrontierToHomesteadAt5 HomesteadToDaoAt5 HomesteadToEIP150At5 BerlinToLondonAt5' | xargs -n1 | xargs -I v1 npm run tester -- --blockchain --fork=v1 --verify-test-amount-alltests"},"_npmUser":{"name":"fvictorio","email":"victorio.franco@gmail.com"},"repository":{"url":"git+https://github.com/ethereumjs/ethereumjs-monorepo.git","type":"git"},"_npmVersion":"8.15.1","description":"An Ethereum VM implementation","directories":{},"_nodeVersion":"14.19.3","dependencies":{"debug":"^4.3.3","mcl-wasm":"^0.7.1","rustbn.js":"~0.2.0","@ignored/tx":"4.0.0-beta.4","@ignored/evm":"1.0.0-beta.4","@ignored/rlp":"4.0.0-beta.4","@ignored/trie":"5.0.0-beta.4","@ignored/util":"8.0.0-beta.4","@ignored/block":"4.0.0-beta.4","@ignored/common":"3.0.0-beta.4","async-eventemitter":"^0.2.4","@ignored/blockchain":"6.0.0-beta.4","@ignored/statemanager":"1.0.0-beta.4","ethereum-cryptography":"^1.1.2","@types/async-eventemitter":"^0.2.1","functional-red-black-tree":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"solc":"^0.8.1","level":"^8.0.0","minimist":"^1.2.5","node-dir":"^0.1.17","benchmark":"^2.1.4","memory-level":"^1.0.0","@types/core-js":"^2.5.0","@types/minimist":"^1.2.2","@types/node-dir":"^0.0.34","@types/benchmark":"^1.0.33","@types/lru-cache":"^5.1.0","@ethersproject/abi":"^5.0.12"},"_npmOperationalInternal":{"tmp":"tmp/vm_6.0.0-beta.4_1661017821660_0.6631618873936633","host":"s3://npm-registry-packages"}},"6.0.0-beta.5":{"name":"@ignored/vm","version":"6.0.0-beta.5","keywords":["ethereum","VM"],"author":{"name":"mjbecze","email":"mjbecze@gmail.com"},"license":"MPL-2.0","_id":"@ignored/vm@6.0.0-beta.5","maintainers":[{"name":"fvictorio","email":"victorio.franco@gmail.com"},{"name":"alcuadrado","email":"email@patriciopalladino.com"}],"contributors":[{"name":"Alex Beregszaszi","email":"alex@rtfs.hu"}],"homepage":"https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/vm#readme","bugs":{"url":"https://github.com/ethereumjs/ethereumjs-monorepo/issues?q=is%3Aissue+label%3A%22package%3A+vm%22"},"dist":{"shasum":"dc5bc654a26d8b203be1f66972f3292c0d5b261b","tarball":"https://registry.npmjs.org/@ignored/vm/-/vm-6.0.0-beta.5.tgz","fileCount":50,"integrity":"sha512-DOmJqw3Q5SUdM9bossPBgJMR5mIbSxezzy42wVU1SPjHk9Pu9QVvXyOMjn6yhxfgX+/sajvLHsdoTK0Wc+SGyg==","signatures":[{"sig":"MEYCIQCnJ2Vda81vXk+RlMTUWT1grhoLN3Ac6NefdTjQwYpKFgIhANahoRibYBvorXYL1N97Sc7N4nFR9Zev0T6t7tma31PT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":285559,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjASD4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmorMg/9ESpG7BIBkRObVcnWhu0MUDauSLW/QZ6+Fks1/bfpeQIMEtog\r\nq9vzvrJV3N60wU40yIKi04Ga83zIGH2RPjKPojlmMBfGVRvhVMSE+5R68Vfp\r\nq15AHJb/EOyMKecIYhJnM0J5nLsodYaXV55gxgU/vJ/c87SlLIzdQg16HKmg\r\nHp/LDNQq34py8eKmi/7vzS/+uix5SdnsKPCQ5huUtEX3A4E35lh3unaucOff\r\negF99kV2LmcUYb4aAoOEAb9b2W4T/k6WjLfzbZoWtkiKBMb/F9rpqv3sRt7j\r\n1TtdrcRdpF0l9aGEHKS97nKTpOdhMNGRnp+EPIY/1SFbn5QFlSCSWrGvxwlc\r\nGhBP+GAALtqdHKgH29Ym+yTOXd4TUP4MFZwIoNWRXdssmNM7sD4lAHHjBIOI\r\nTnZ9c8yEhYnNJMSqjh3AhIqAkmyX67MudE9WRg3MKzdLZzelhSjymehwBUH0\r\nS/SrEuidRHx1WNsIMWMkAw3Vfll+UH5Eks8yS+OvZ7vay6F+7/9ajbtGIUt5\r\nBwiVwY1M5zPgo5opeJp1RNoFeMYr9q3t0+pfx91t7mGBLqthqwVltHegeqKt\r\nZWP+4wqULv0WnOcLnmQPK59w2lviBcugmEWc32dr0rBK0MX6wMcWQcNZaj6z\r\ngyXkCTN20R6q9aBV+5+BJGh10DkmudOUHeY=\r\n=gtmc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=14"},"gitHead":"38f7fe0088ea852ecb0a8a5b4b5bcd00e68b5b25","scripts":{"tsc":"../../config/cli/ts-compile.sh","lint":"../../config/cli/lint.sh","tape":"tape -r ts-node/register --stack-size=1500","test":"echo \"[INFO] Generic test cmd not used. See package.json for more specific test run cmds.\"","build":"../../config/cli/ts-build.sh","clean":"../../config/cli/clean-package.sh","tester":"ts-node ./tests/tester --stack-size=1500","coverage":"c8 --all --reporter=lcov --reporter=text --reporter=text-lcov npm run coverage:test","examples":"ts-node ../../scripts/examples-runner.ts -- vm","lint:fix":"../../config/cli/lint-fix.sh","test:API":"npm run tape -- './tests/api/**/*.spec.ts'","lint:diff":"../../config/cli/lint-diff.sh","profiling":"0x ./benchmarks/run.js profiling","benchmarks":"node --max-old-space-size=4096 ./benchmarks/run.js benchmarks mainnetBlocks:10","docs:build":"typedoc --options typedoc.js","formatTest":"node ./scripts/formatTest","test:state":"npm run tester -- --state","coverage:test":"npm run test:API","test:blockchain":"npm run tester -- --blockchain","test:state:slow":"npm run test:state -- --runSkipped=slow","build:benchmarks":"npm run build && tsc -p tsconfig.benchmarks.json","test:API:browser":"karma start karma.conf.js","test:buildIntegrity":"npm run test:state -- --test='stackOverflow'","test:state:allForks":"echo 'Chainstart Homestead dao TangerineWhistle SpuriousDragon Byzantium Constantinople Petersburg Istanbul MuirGlacier Berlin London ByzantiumToConstantinopleFixAt5 EIP158ToByzantiumAt5 FrontierToHomesteadAt5 HomesteadToDaoAt5 HomesteadToEIP150At5 BerlinToLondonAt5' | xargs -n1 | xargs -I v1 npm run test:state -- --fork=v1 --verify-test-amount-alltests","test:blockchain:allForks":"echo 'Chainstart Homestead dao TangerineWhistle SpuriousDragon Byzantium Constantinople Petersburg Istanbul MuirGlacier Berlin London ByzantiumToConstantinopleFixAt5 EIP158ToByzantiumAt5 FrontierToHomesteadAt5 HomesteadToDaoAt5 HomesteadToEIP150At5 BerlinToLondonAt5' | xargs -n1 | xargs -I v1 npm run tester -- --blockchain --fork=v1 --verify-test-amount-alltests","test:state:selectedForks":"echo 'Homestead TangerineWhistle SpuriousDragon Petersburg Berlin London' | xargs -n1 | xargs -I v1 npm run test:state -- --fork=v1 --verify-test-amount-alltests","test:blockchain:transitionForks":"echo 'ByzantiumToConstantinopleFixAt5 EIP158ToByzantiumAt5 FrontierToHomesteadAt5 HomesteadToDaoAt5 HomesteadToEIP150At5 BerlinToLondonAt5' | xargs -n1 | xargs -I v1 npm run tester -- --blockchain --fork=v1 --verify-test-amount-alltests"},"_npmUser":{"name":"fvictorio","email":"victorio.franco@gmail.com"},"repository":{"url":"git+https://github.com/ethereumjs/ethereumjs-monorepo.git","type":"git"},"_npmVersion":"8.15.1","description":"An Ethereum VM implementation","directories":{},"_nodeVersion":"14.19.3","dependencies":{"debug":"^4.3.3","mcl-wasm":"^0.7.1","rustbn.js":"~0.2.0","@ignored/tx":"4.0.0-beta.5","@ignored/evm":"1.0.0-beta.5","@ignored/rlp":"4.0.0-beta.5","@ignored/trie":"5.0.0-beta.5","@ignored/util":"8.0.0-beta.5","@ignored/block":"4.0.0-beta.5","@ignored/common":"3.0.0-beta.5","async-eventemitter":"^0.2.4","@ignored/blockchain":"6.0.0-beta.5","@ignored/statemanager":"1.0.0-beta.5","ethereum-cryptography":"^1.1.2","@types/async-eventemitter":"^0.2.1","functional-red-black-tree":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"solc":"^0.8.1","level":"^8.0.0","minimist":"^1.2.5","node-dir":"^0.1.17","benchmark":"^2.1.4","memory-level":"^1.0.0","@types/core-js":"^2.5.0","@types/minimist":"^1.2.2","@types/node-dir":"^0.0.34","@types/benchmark":"^1.0.33","@types/lru-cache":"^5.1.0","@ethersproject/abi":"^5.0.12"},"_npmOperationalInternal":{"tmp":"tmp/vm_6.0.0-beta.5_1661018360726_0.449322864967135","host":"s3://npm-registry-packages"}},"6.0.0-beta.6":{"name":"@ignored/vm","version":"6.0.0-beta.6","keywords":["ethereum","VM"],"author":{"name":"mjbecze","email":"mjbecze@gmail.com"},"license":"MPL-2.0","_id":"@ignored/vm@6.0.0-beta.6","maintainers":[{"name":"fvictorio","email":"victorio.franco@gmail.com"},{"name":"alcuadrado","email":"email@patriciopalladino.com"}],"contributors":[{"name":"Alex Beregszaszi","email":"alex@rtfs.hu"}],"homepage":"https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/vm#readme","bugs":{"url":"https://github.com/ethereumjs/ethereumjs-monorepo/issues?q=is%3Aissue+label%3A%22package%3A+vm%22"},"dist":{"shasum":"f7149a497df4a5ecea4a4b678c38b88c68068b80","tarball":"https://registry.npmjs.org/@ignored/vm/-/vm-6.0.0-beta.6.tgz","fileCount":50,"integrity":"sha512-gggGlWNLJfF9VyTWncjF4o3Jg/7NUPzge83H6EIv60RMpMokCe1lY0GK4ZD+y3WGJMybyKL7r7k0fCjxT+kvbA==","signatures":[{"sig":"MEUCICKRq+HbA0/uKT16raqnKXo6fsYUJrDH2WPH7VW+MIgyAiEA6m1hIdsoul5yR6vXgxedv8JPwhkyQpIKMHb3TNh3Q0g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":285215,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjASORACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo6QQ//cNKCHKoXugA/vjL0UfDlmDRalgiSkIEN5sjo8zF/Y8OfCuDT\r\nFK+Dj3gdzs1Z+9kFgMopBoxOGEnMQCFxsZAXxqX+P5hTMhSOuEt0oFDMYFdU\r\nyqluwzmZhc3Bv1ajXBs+BOiFJuoPFkZkiTyFddTCQmvDDtXo6znQLnBWvvdA\r\ngc7cOWHxcvsIx3V5wq2pfpsqAp3W6UauYExk1qg/hZQklcmjfBVXg2nUl+gT\r\n97k4UkhIqk1RqEx0ffyAM7414OVVbu9KFMWvYKCYW07Za+ntfoGB5r0x3o6Z\r\nYDbkZV1pXnWY/Z1ZScNK/SIcmar5A+Balb14TupwKqDr0Cq8b25pPLQgLdqj\r\nTPgV1ZRefSmc5QXySqJ/FITXNdL3lQgXJ0Lbpi6R10MWmLjAF+QUlaHULlog\r\nKxKmdsVrJPMELt9f2wJ47YCxFd71t8iS2+6GjlDMihhAO1vf9RRFPR5cPR3B\r\ny06SjzTPruFJ14x3MTNX45VtoCXugpS/I+QkU121geElKtspqv0EhyD2z0wN\r\nSSOOFw8QP+E1Cib2Q4JwD+QtuJRS77rPOSzvERAIqYU3lg7ibLZe32YCdv+F\r\nBnuVbPT/VV8blASj6Co2oozs4KnfzxRpdaC7ODMzHrx4n5Eayj2TfAUBFsDy\r\nCt0F9FcYfUzp19etjpB4CmKvv2jHfvQKtn8=\r\n=pux0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=14"},"gitHead":"38f7fe0088ea852ecb0a8a5b4b5bcd00e68b5b25","scripts":{"tsc":"../../config/cli/ts-compile.sh","lint":"../../config/cli/lint.sh","tape":"tape -r ts-node/register --stack-size=1500","test":"echo \"[INFO] Generic test cmd not used. See package.json for more specific test run cmds.\"","build":"../../config/cli/ts-build.sh","clean":"../../config/cli/clean-package.sh","tester":"ts-node ./tests/tester --stack-size=1500","coverage":"c8 --all --reporter=lcov --reporter=text --reporter=text-lcov npm run coverage:test","examples":"ts-node ../../scripts/examples-runner.ts -- vm","lint:fix":"../../config/cli/lint-fix.sh","test:API":"npm run tape -- './tests/api/**/*.spec.ts'","lint:diff":"../../config/cli/lint-diff.sh","profiling":"0x ./benchmarks/run.js profiling","benchmarks":"node --max-old-space-size=4096 ./benchmarks/run.js benchmarks mainnetBlocks:10","docs:build":"typedoc --options typedoc.js","formatTest":"node ./scripts/formatTest","test:state":"npm run tester -- --state","coverage:test":"npm run test:API","test:blockchain":"npm run tester -- --blockchain","test:state:slow":"npm run test:state -- --runSkipped=slow","build:benchmarks":"npm run build && tsc -p tsconfig.benchmarks.json","test:API:browser":"karma start karma.conf.js","test:buildIntegrity":"npm run test:state -- --test='stackOverflow'","test:state:allForks":"echo 'Chainstart Homestead dao TangerineWhistle SpuriousDragon Byzantium Constantinople Petersburg Istanbul MuirGlacier Berlin London ByzantiumToConstantinopleFixAt5 EIP158ToByzantiumAt5 FrontierToHomesteadAt5 HomesteadToDaoAt5 HomesteadToEIP150At5 BerlinToLondonAt5' | xargs -n1 | xargs -I v1 npm run test:state -- --fork=v1 --verify-test-amount-alltests","test:blockchain:allForks":"echo 'Chainstart Homestead dao TangerineWhistle SpuriousDragon Byzantium Constantinople Petersburg Istanbul MuirGlacier Berlin London ByzantiumToConstantinopleFixAt5 EIP158ToByzantiumAt5 FrontierToHomesteadAt5 HomesteadToDaoAt5 HomesteadToEIP150At5 BerlinToLondonAt5' | xargs -n1 | xargs -I v1 npm run tester -- --blockchain --fork=v1 --verify-test-amount-alltests","test:state:selectedForks":"echo 'Homestead TangerineWhistle SpuriousDragon Petersburg Berlin London' | xargs -n1 | xargs -I v1 npm run test:state -- --fork=v1 --verify-test-amount-alltests","test:blockchain:transitionForks":"echo 'ByzantiumToConstantinopleFixAt5 EIP158ToByzantiumAt5 FrontierToHomesteadAt5 HomesteadToDaoAt5 HomesteadToEIP150At5 BerlinToLondonAt5' | xargs -n1 | xargs -I v1 npm run tester -- --blockchain --fork=v1 --verify-test-amount-alltests"},"_npmUser":{"name":"fvictorio","email":"victorio.franco@gmail.com"},"repository":{"url":"git+https://github.com/ethereumjs/ethereumjs-monorepo.git","type":"git"},"_npmVersion":"8.15.1","description":"An Ethereum VM implementation","directories":{},"_nodeVersion":"14.19.3","dependencies":{"debug":"^4.3.3","mcl-wasm":"^0.7.1","rustbn.js":"~0.2.0","@ignored/tx":"4.0.0-beta.6","@ignored/evm":"1.0.0-beta.6","@ignored/rlp":"4.0.0-beta.6","@ignored/trie":"5.0.0-beta.6","@ignored/util":"8.0.0-beta.6","@ignored/block":"4.0.0-beta.6","@ignored/common":"3.0.0-beta.6","async-eventemitter":"^0.2.4","@ignored/blockchain":"6.0.0-beta.6","@ignored/statemanager":"1.0.0-beta.6","ethereum-cryptography":"^1.1.2","@types/async-eventemitter":"^0.2.1","functional-red-black-tree":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"solc":"^0.8.1","level":"^8.0.0","minimist":"^1.2.5","node-dir":"^0.1.17","benchmark":"^2.1.4","memory-level":"^1.0.0","@types/core-js":"^2.5.0","@types/minimist":"^1.2.2","@types/node-dir":"^0.0.34","@types/benchmark":"^1.0.33","@types/lru-cache":"^5.1.0","@ethersproject/abi":"^5.0.12"},"_npmOperationalInternal":{"tmp":"tmp/vm_6.0.0-beta.6_1661019025629_0.8648742999563452","host":"s3://npm-registry-packages"}}},"time":{"created":"2022-08-17T15:12:20.201Z","modified":"2026-06-12T13:34:07.938Z","6.0.0-beta.3":"2022-08-17T15:12:20.459Z","6.0.0-beta.4":"2022-08-20T17:50:21.873Z","6.0.0-beta.5":"2022-08-20T17:59:20.917Z","6.0.0-beta.6":"2022-08-20T18:10:25.828Z"},"bugs":{"url":"https://github.com/ethereumjs/ethereumjs-monorepo/issues?q=is%3Aissue+label%3A%22package%3A+vm%22"},"author":{"name":"mjbecze","email":"mjbecze@gmail.com"},"license":"MPL-2.0","homepage":"https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/vm#readme","keywords":["ethereum","VM"],"repository":{"url":"git+https://github.com/ethereumjs/ethereumjs-monorepo.git","type":"git"},"description":"An Ethereum VM implementation","contributors":[{"name":"Alex Beregszaszi","email":"alex@rtfs.hu"}],"maintainers":[{"email":"john@kanej.me","name":"kanej"},{"email":"email@patriciopalladino.com","name":"alcuadrado"}],"readme":"# @ethereumjs/vm\n\n[![NPM Package][vm-npm-badge]][vm-npm-link]\n[![GitHub Issues][vm-issues-badge]][vm-issues-link]\n[![Actions Status][vm-actions-badge]][vm-actions-link]\n[![Code Coverage][vm-coverage-badge]][vm-coverage-link]\n[![Discord][discord-badge]][discord-link]\n\n| Execution Context for the Ethereum EVM Implementation. |\n| ------------------------------------------------------ |\n\nThis package provides an Ethereum `mainnet` compatible execution context for the\n[@ethereumjs/evm](https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/evm)\nEVM implementation.\n\nNote that up till `v5` this package also was the bundled package for the EVM implementation itself.\n\n## Installation\n\nTo obtain the latest version, simply require the project using `npm`:\n\n```shell\nnpm install @ethereumjs/vm\n```\n\n## Usage\n\n```typescript\nimport { Address } from '@ethereumjs/util'\nimport { Chain, Common, Hardfork } from '@ethereumjs/common'\nimport { Transaction } from '@ethereumjs/tx'\nimport { VM } from '@ethereumjs/vm'\n\nconst common = new Common({ chain: Chain.Mainnet, hardfork: Hardfork.Berlin })\nconst vm = await VM.create({ common })\n\nconst tx = Transaction.fromTxData({\n  gasLimit: BigInt(21000),\n  value: BigInt(1),\n  to: Address.zero(),\n  v: BigInt(37),\n  r: BigInt('62886504200765677832366398998081608852310526822767264927793100349258111544447'),\n  s: BigInt('21948396863567062449199529794141973192314514851405455194940751428901681436138'),\n})\nawait vm.runTx({ tx, skipBalance: true })\n```\n\n## Example\n\nThis projects contain the following examples:\n\n1. [./examples/run-blockchain](./examples/run-blockchain.ts): Loads tests data, including accounts and blocks, and runs all of them in the VM.\n1. [./examples/run-solidity-contract](./examples/run-solidity-contract.ts): Compiles a Solidity contract, and calls constant and non-constant functions.\n\nAll of the examples have their own `README.md` explaining how to run them.\n\n# API\n\n### Docs\n\nFor documentation on `VM` instantiation, exposed API and emitted `events` see generated [API docs](./docs/README.md).\n\n### BigInt Support\n\nStarting with v6 the usage of [BN.js](https://github.com/indutny/bn.js/) for big numbers has been removed from the library and replaced with the usage of the native JS [BigInt](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt) data type (introduced in `ES2020`).\n\nPlease note that number-related API signatures have changed along with this version update and the minimal build target has been updated to `ES2020`.\n\n## Architecture\n\n### VM/EVM Relation\n\nStarting with the `VM` v6 version the inner Ethereum Virtual Machine core previously included in this library has been extracted to an own package [@ethereumjs/evm](https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/evm).\n\nIt is still possible to access all `EVM` functionality through the `evm` property of the initialized `vm` object, e.g.:\n\n```typescript\nvm.evm.runCode() // or\nvm.evm.on('step', function (data) {\n  console.log(`Opcode: ${data.opcode.name}\\tStack: ${data.stack}`)\n})\n```\n\nNote that it now also get's possible to pass in an own or customized `EVM` instance by using the optional `evm` constructor option.\n\n### Execution Environment (EEI) and State\n\nThis package provides a concrete implementation of the [@ethereumjs/evm](https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/evm) EEI interface to instantiate a VM/EVM combination with an Ethereum `mainnet` compatible execution context.\n\nWith `VM` v6 the previously included `StateManager` has been extracted to its own package [@ethereumjs/statemanager](https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/statemanger). The `StateManager` package provides a unified state interface and it is now also possible to provide a modified or custom `StateManager` to the VM via the optional `stateManager` constructor option.\n\n## Setup\n\n### Chain Support\n\nStarting with `v5.1.0` the VM supports running both `Ethash/PoW` and `Clique/PoA` blocks and transactions. Clique support has been added along the work on PR [#1032](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1032) and follow-up PRs and (block) validation checks and the switch of the execution context now happens correctly.\n\n### Ethash/PoW Chains\n\n`@ethereumjs/blockchain` validates the PoW algorithm with `@ethereumjs/ethash` and validates blocks' difficulty to match their canonical difficulty.\n\n### Clique/PoA Chains\n\nThe following is a simple example for a block run on `Goerli`:\n\n```typescript\nimport { VM } from '@ethereumjs/vm'\nimport { Chain, Common } from '@ethereumjs/common'\n\nconst common = new Common({ chain: Chain.Goerli })\nconst hardforkByBlockNumber = true\nconst vm = new VM({ common, hardforkByBlockNumber })\n\nconst serialized = Buffer.from('f901f7a06bfee7294bf4457...', 'hex')\nconst block = Block.fromRLPSerializedBlock(serialized, { hardforkByBlockNumber })\nconst result = await vm.runBlock(block)\n```\n\n### Hardfork Support\n\nFor hardfork support see the [Hardfork Support](../evm#hardfork-support) section from the underlying `@ethereumjs/evm` instance.\n\nAn explicit HF in the `VM` - which is then passed on to the inner `EVM` - can be set with:\n\n```typescript\nimport { Chain, Common, Hardfork } from '@ethereumjs/common'\nimport { VM } from '@ethereumjs/vm'\n\nconst common = new Common({ chain: Chain.Mainnet, hardfork: Hardfork.Berlin })\nconst vm = new VM({ common })\n```\n\n### Custom genesis state support\n\nGenesis state code logic has been reworked substantially along the v6 breaking releases and a lot of the genesis state code moved from both the `@ethereumjs/common` and `@ethereumjs/block` libraries to the `@ethereumjs/blockchain` library, see PR [#1916](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1916) for an overview on the broad set of changes.\n\nFor initializing a custom genesis state you can now use the `genesisState` constructor option in the `Blockchain` library in a similar way this had been done in the `Common` library before.\n\nIf you want to create a new instance of the VM and add your own genesis state, you can do it by passing a `Blockchain` instance with custom genesis state set with the `genesisState` constructor option and passing the flag `activateGenesisState` in `VMOpts`.\n\n```typescript\nimport { Common } from '@ethereumjs/common'\nimport { VM } from '@ethereumjs/vm'\nimport myCustomChain1 from '[PATH_TO_MY_CHAINS]/myCustomChain1.json'\nimport chain1GenesisState from '[PATH_TO_GENESIS_STATES]/chain1GenesisState.json'\n\nconst common = new Common({\n  // TODO: complete example\n})\nconst blockchain = await Blockchain.create({\n  // TODO: complete example\n})\nconst vm = await VM.create({ common, activateGenesisState: true })\n```\n\nGenesis state can be configured to contain both EOAs as well as (system) contracts with initial storage values set.\n\n### EIP Support\n\nIt is possible to individually activate EIP support in the VM by instantiate the `Common` instance passed\nwith the respective EIPs, e.g.:\n\n```typescript\nimport { Chain, Common } from '@ethereumjs/common'\nimport { VM } from '@ethereumjs/vm'\n\nconst common = new Common({ chain: Chain.Mainnet, eips: [2537] })\nconst vm = new VM({ common })\n```\n\nFor a list with supported EIPs see the [@ethereumjs/evm](https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/evm) documentation.\n\n### Tracing Events\n\nOur `TypeScript` VM is implemented as an [AsyncEventEmitter](https://github.com/ahultgren/async-eventemitter) and events are submitted along major execution steps which you can listen to.\n\nYou can subscribe to the following events:\n\n- `beforeBlock`: Emits a `Block` right before running it.\n- `afterBlock`: Emits `AfterBlockEvent` right after running a block.\n- `beforeTx`: Emits a `Transaction` right before running it.\n- `afterTx`: Emits a `AfterTxEvent` right after running a transaction.\n\nPlease note that there are additional EVM-specific events in the [@ethereumjs/evm](https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/evm) package.\n\n#### Asynchronous event handlers\n\nYou can perform asynchronous operations from within an event handler\nand prevent the VM to keep running until they finish.\n\nIn order to do that, your event handler has to accept two arguments.\nThe first one will be the event object, and the second one a function.\nThe VM won't continue until you call this function.\n\nIf an exception is passed to that function, or thrown from within the\nhandler or a function called by it, the exception will bubble into the\nVM and interrupt it, possibly corrupting its state. It's strongly\nrecommended not to do that.\n\n#### Synchronous event handlers\n\nIf you want to perform synchronous operations, you don't need\nto receive a function as the handler's second argument, nor call it.\n\nNote that if your event handler receives multiple arguments, the second\none will be the continuation function, and it must be called.\n\nIf an exception is thrown from withing the handler or a function called\nby it, the exception will bubble into the VM and interrupt it, possibly\ncorrupting its state. It's strongly recommended not to throw from withing\nevent handlers.\n\n## Understanding the VM\n\nIf you want to understand your VM runs we have added a hierarchically structured list of debug loggers for your convenience which can be activated in arbitrary combinations. We also use these loggers internally for development and testing. These loggers use the [debug](https://github.com/visionmedia/debug) library and can be activated on the CL with `DEBUG=[Logger Selection] node [Your Script to Run].js` and produce output like the following:\n\n![EthereumJS VM Debug Logger](./debug.png?raw=true)\n\nThe following loggers are currently available:\n\n| Logger      | Description                                                        |\n| ----------- | ------------------------------------------------------------------ |\n| `vm:block`  | Block operations (run txs, generating receipts, block rewards,...) |\n| `vm:tx`     |  Transaction operations (account updates, checkpointing,...)       |\n| `vm:tx:gas` |  Transaction gas logger                                            |\n| `vm:state`  | StateManager logger                                                |\n\nNote that there are additional EVM-specific loggers in the [@ethereumjs/evm](https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/evm) package.\n\nHere are some examples for useful logger combinations.\n\nRun one specific logger:\n\n```shell\nDEBUG=vm:tx ts-node test.ts\n```\n\nRun all loggers currently available:\n\n```shell\nDEBUG=vm:*,vm:*:* ts-node test.ts\n```\n\nRun only the gas loggers:\n\n```shell\nDEBUG=vm:*:gas ts-node test.ts\n```\n\nExcluding the state logger:\n\n```shell\nDEBUG=vm:*,vm:*:*,-vm:state ts-node test.ts\n```\n\nRun some specific loggers including a logger specifically logging the `SSTORE` executions from the VM (this is from the screenshot above):\n\n```shell\nDEBUG=vm:tx,vm:evm,vm:ops:sstore,vm:*:gas ts-node test.ts\n```\n\n## Internal Structure\n\nThe VM processes state changes at many levels.\n\n- **runBlockchain**\n  - for every block, runBlock\n- **runBlock**\n  - for every tx, runTx\n  - pay miner and uncles\n- **runTx**\n  - check sender balance\n  - check sender nonce\n  - runCall\n  - transfer gas charges\n\nTODO: this section likely needs an update.\n\n## Development\n\nDeveloper documentation - currently mainly with information on testing and debugging - can be found [here](./DEVELOPER.md).\n\n## EthereumJS\n\nSee our organizational [documentation](https://ethereumjs.readthedocs.io) for an introduction to `EthereumJS` as well as information on current standards and best practices. If you want to join for work or carry out improvements on the libraries, please review our [contribution guidelines](https://ethereumjs.readthedocs.io/en/latest/contributing.html) first.\n\n## License\n\n[MPL-2.0](<https://tldrlegal.com/license/mozilla-public-license-2.0-(mpl-2)>)\n\n[discord-badge]: https://img.shields.io/static/v1?logo=discord&label=discord&message=Join&color=blue\n[discord-link]: https://discord.gg/TNwARpR\n[vm-npm-badge]: https://img.shields.io/npm/v/@ethereumjs/vm.svg\n[vm-npm-link]: https://www.npmjs.com/package/@ethereumjs/vm\n[vm-issues-badge]: https://img.shields.io/github/issues/ethereumjs/ethereumjs-monorepo/package:%20vm?label=issues\n[vm-issues-link]: https://github.com/ethereumjs/ethereumjs-monorepo/issues?q=is%3Aopen+is%3Aissue+label%3A\"package%3A+vm\"\n[vm-actions-badge]: https://github.com/ethereumjs/ethereumjs-monorepo/workflows/VM/badge.svg\n[vm-actions-link]: https://github.com/ethereumjs/ethereumjs-monorepo/actions?query=workflow%3A%22VM%22\n[vm-coverage-badge]: https://codecov.io/gh/ethereumjs/ethereumjs-monorepo/branch/master/graph/badge.svg?flag=vm\n[vm-coverage-link]: https://codecov.io/gh/ethereumjs/ethereumjs-monorepo/tree/master/packages/vm\n","readmeFilename":"README.md"}