Skip to main content

Extracts function selectors and arguments from EVM bytecode

Project description

EVMole

try it online npm Crates.io PyPI Go

EVMole is a powerful library that extracts information from Ethereum Virtual Machine (EVM) bytecode, including function selectors, arguments, state mutability, storage layout, and CBOR metadata, even for unverified contracts.

Key Features

  • Multi-language support: Available as JavaScript, Rust, Python, and Go libraries.
  • High accuracy and performance: Outperforms existing tools.
  • Broad compatibility: Tested with both Solidity and Vyper compiled contracts.
  • Lightweight: Clean codebase with minimal external dependencies.
  • Unverified contract analysis: Extracts information even from unverified bytecode.
  • CBOR metadata: Extracts string-keyed values from a terminal, length-suffixed CBOR map without assuming a particular compiler.

Usage

JavaScript

API documentation and usage examples (node, vite, webpack, parcel, esbuild)

$ npm i evmole
import { contractInfo } from 'evmole'

const code = '0x6080604052348015600e575f80fd5b50600436106030575f3560e01c80632125b65b146034578063b69ef8a8146044575b5f80fd5b6044603f3660046046565b505050565b005b5f805f606084860312156057575f80fd5b833563ffffffff811681146069575f80fd5b925060208401356001600160a01b03811681146083575f80fd5b915060408401356001600160e01b0381168114609d575f80fd5b80915050925092509256'

console.log( contractInfo(code, {selectors:true, arguments:true, stateMutability:true}) )
// {
//   functions: [
//     {
//       selector: '2125b65b',
//       bytecodeOffset: 52,
//       arguments: 'uint32,address,uint224',
//       stateMutability: 'pure'
//     },
//     ...

Rust

Documentation is available on docs.rs

let code = hex::decode("6080604052348015600e575f80fd5b50600436106030575f3560e01c80632125b65b146034578063b69ef8a8146044575b5f80fd5b6044603f3660046046565b505050565b005b5f805f606084860312156057575f80fd5b833563ffffffff811681146069575f80fd5b925060208401356001600160a01b03811681146083575f80fd5b915060408401356001600160e01b0381168114609d575f80fd5b80915050925092509256").unwrap();

println!("{:?}", evmole::contract_info(
    evmole::ContractInfoArgs::new(&code)
        .with_selectors()
        .with_arguments()
        .with_state_mutability()
    )
);
// Contract {
//     functions: Some([
//         Function {
//             selector: [33, 37, 182, 91],
//             bytecode_offset: 52,
//             arguments: Some([Uint(32), Address, Uint(224)]),
//             state_mutability: Some(Pure)
//         },
//         ...

Python

API documentation

$ pip install evmole --upgrade
from evmole import contract_info

code = '0x6080604052348015600e575f80fd5b50600436106030575f3560e01c80632125b65b146034578063b69ef8a8146044575b5f80fd5b6044603f3660046046565b505050565b005b5f805f606084860312156057575f80fd5b833563ffffffff811681146069575f80fd5b925060208401356001600160a01b03811681146083575f80fd5b915060408401356001600160e01b0381168114609d575f80fd5b80915050925092509256'

print( contract_info(code, selectors=True, arguments=True, state_mutability=True) )
# Contract(
#     functions=[
#     Function(
#             selector=2125b65b,
#             bytecode_offset=52,
#             arguments=uint32,address,uint224,
#             state_mutability=pure),
#     ...

Go

API documentation

$ go get github.com/cdump/evmole/go
package main

import (
    "context"
    "encoding/hex"
    "fmt"

    "github.com/cdump/evmole/go"
)

func main() {
    code, _ := hex.DecodeString("6080604052348015600e575f80fd5b50600436106030575f3560e01c80632125b65b146034578063b69ef8a8146044575b5f80fd5b6044603f3660046046565b505050565b005b5f805f606084860312156057575f80fd5b833563ffffffff811681146069575f80fd5b925060208401356001600160a01b03811681146083575f80fd5b915060408401356001600160e01b0381168114609d575f80fd5b80915050925092509256")

    info, _ := evmole.ContractInfo(context.Background(), code, evmole.Options{
        Selectors:       true,
        Arguments:       true,
        StateMutability: true,
    })

    for _, fn := range info.Functions {
        fmt.Printf("%s: %s @ %d\n", fn.Selector, *fn.Arguments, fn.BytecodeOffset)
    }
    // 2125b65b: uint32,address,uint224 @ 52
    // b69ef8a8:  @ 68
}

Foundry

Foundry's cast uses the Rust implementation of EVMole

$ cast selectors $(cast code 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2)
0x06fdde03                           view
0x095ea7b3  address,uint256          nonpayable
0x18160ddd                           view
0x23b872dd  address,address,uint256  nonpayable
...

$ cast selectors --resolve $(cast code 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2)
0x06fdde03                           view        name()
0x095ea7b3  address,uint256          nonpayable  approve(address,uint256)
0x18160ddd                           view        totalSupply()
0x23b872dd  address,address,uint256  nonpayable  transferFrom(address,address,uint256)
...

Benchmark

function selectors

FP/FN - False Positive/False Negative errors; smaller is better

Dataset evmole rs · js · py · go whatsabi sevm evmhound heimdall
largest1k
1000
addresses

24427
functions
FP addrs 1 🥈 0 🥇 0 🥇 75 18
FN addrs 0 🥇 0 🥇 0 🥇 40 103
FP funcs 192 🥈 0 🥇 0 🥇 720 600
FN funcs 0 🥇 0 🥇 0 🥇 191 114
Time 18ms · 0.2s · 22ms · 69ms 2.3s 30s(*) 56ms 371s(*)
random50k
50000
addresses

1171102
functions
FP addrs 1 🥇 43 1 693 3
FN addrs 9 🥇 11 10 2903 4669
FP funcs 3 🥇 51 3 10798 29
FN funcs 10 🥇 12 11 3538 4943
Time 0.5s · 3.1s · 0.6s · 3.1s 30s 440s(*) 1.6s 8684s(*)
vyper
780
addresses

21244
functions
FP addrs 0 🥇 30 0 19 0
FN addrs 0 🥇 780 0 300 780
FP funcs 0 🥇 30 0 19 0
FN funcs 0 🥇 21244 0 8273 21244
Time 9ms · 99ms · 11ms · 42ms 2.0s 34s(*) 26ms 28s(*)

function arguments

Errors - when at least 1 argument is incorrect: (uint256,string)(uint256,bytes)

Dataset evmole rs · js · py · go heimdall
largest1k
24427
functions
Errors 14.0% 🥇
3410
31.1%
7603
Time 0.6s · 1.3s · 0.7s · 1.8s 370s(*)
random50k
1171102
functions
Errors 4.5% 🥇
52664
19.4%
227077
Time 16s · 31s · 20s · 48s 8579s(*)
vyper
21244
functions
Errors 46.7% 🥇
9914
100.0%
21244
Time 0.5s · 1.1s · 0.6s · 1.8s 29s(*)

function state mutability

Errors - Results are not equal (treating view and pure as equivalent to nonpayable)

Errors strict - Results are strictly unequal (nonpayableview). Some ABIs mark pure/view functions as nonpayable, so not all strict errors indicate real issues.

Dataset evmole rs · js · py · go whatsabi sevm heimdall
largest1k
24427
functions
Errors 0.0% 🥇
0
68.1%
16623
2.1%
501
25.7%
6268
Errors strict 18.6% 🥇
4549
79.4%
19393
59.0%
14417
54.8%
13386
Time 10s · 9.7s · 9.7s · 25s 2.5s 27s(*) 371s(*)
random50k
1160861
functions
Errors 0.0% 🥇
44
30.2%
351060
0.3%
3370
11.5%
133471
Errors strict 6.8% 🥇
78359
58.2%
675111
55.7%
646831
27.6%
320264
Time 201s · 184s · 200s · 427s 51s 2261s(*) 8334s(*)
vyper
21166
functions
Errors 0.5% 🥇
110
100.0%
21166
76.3%
16150
100.0%
21166
Errors strict 4.0% 🥇
850
100.0%
21166
90.2%
19092
100.0%
21166
Time 11s · 8.7s · 10s · 22s 1.8s 35s(*) 29s(*)

Control Flow Graph

False Negatives - Valid blocks possibly incorrectly marked unreachable by CFG analysis. Lower count usually indicates better precision.

evmole rs · js · py · go ethersolve evm-cfg sevm heimdall-rs evm-cfg-builder
Basic Blocks 97.2% 🥇
663214
93.8%
640383
63.0%
430011
41.4%
282599
31.9%
217924
21.7%
148166
False Negatives 2.8% 🥇
19227
6.2%
42058
37.0%
252430
58.6%
399842
68.1%
464517
78.3%
534275
Time 15s · 20s · 13s · 42s 643s 49s 28s 206s 158s

dataset largest1k, 1000 contracts, 682,441 blocks

notes

See benchmark/README.md for the methodology and commands to reproduce these results

versions: evmole v0.8.3; whatsabi v0.25.0; sevm v0.7.4; evm-hound-rs v0.1.4; heimdall-rs v0.8.6

(*): sevm and heimdall-rs are full decompilers, not limited to extracting function selectors

How it works

EVMole uses symbolic execution with a custom EVM implementation to trace how CALLDATA flows through the bytecode:

This approach is more accurate than static pattern matching because it follows the actual execution paths the EVM would take, correctly handling complex dispatchers, proxy patterns, and compiler-specific optimizations from both Solidity and Vyper.

Talks

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

evmole-0.8.5.tar.gz (87.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

evmole-0.8.5-cp314-cp314-win_amd64.whl (422.9 kB view details)

Uploaded CPython 3.14Windows x86-64

evmole-0.8.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (497.5 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

evmole-0.8.5-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (889.2 kB view details)

Uploaded CPython 3.14macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

evmole-0.8.5-cp313-cp313-win_amd64.whl (422.8 kB view details)

Uploaded CPython 3.13Windows x86-64

evmole-0.8.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (497.9 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

evmole-0.8.5-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (889.8 kB view details)

Uploaded CPython 3.13macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

evmole-0.8.5-cp312-cp312-win_amd64.whl (422.7 kB view details)

Uploaded CPython 3.12Windows x86-64

evmole-0.8.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (497.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

evmole-0.8.5-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (889.6 kB view details)

Uploaded CPython 3.12macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

evmole-0.8.5-cp311-cp311-win_amd64.whl (424.1 kB view details)

Uploaded CPython 3.11Windows x86-64

evmole-0.8.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (496.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

evmole-0.8.5-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (890.0 kB view details)

Uploaded CPython 3.11macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

evmole-0.8.5-cp310-cp310-win_amd64.whl (423.9 kB view details)

Uploaded CPython 3.10Windows x86-64

evmole-0.8.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (497.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

evmole-0.8.5-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (890.1 kB view details)

Uploaded CPython 3.10macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

Details for the file evmole-0.8.5.tar.gz.

File metadata

  • Download URL: evmole-0.8.5.tar.gz
  • Upload date:
  • Size: 87.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for evmole-0.8.5.tar.gz
Algorithm Hash digest
SHA256 1a81e724f0dc0039e6ed4c243366618d2945a9a673d8796e793a4da7f6e78f1f
MD5 a5194615190d55b78311399cdafe3ca8
BLAKE2b-256 9d31f8ebaf5be2196efab8c3fe8899096c68b82ea5b3d4d45baf2a6e6ba7ec0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5.tar.gz:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: evmole-0.8.5-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 422.9 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for evmole-0.8.5-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 01b22135bc8d155fc792033614c95a6914202943af00c1e611e18fe0ddb1267f
MD5 501a55ada38bb1ea067b76eeeed0ed15
BLAKE2b-256 dd9de999db089e379ce655aaf9cf7a21dd337459857da9f7237cf24078d4511b

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp314-cp314-win_amd64.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for evmole-0.8.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a428ca9a21b31efb3342be53cc98bb0186f5ba7246debce59e1694a35bd64a68
MD5 860f9b4cbf14459861caccc360ed1ef9
BLAKE2b-256 9e0b0f0f6a57e19a811dc8429aac068b311ec69364fb69468bfe105632973d3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for evmole-0.8.5-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 c48d024fcd681b8f5440052d5fc5d52aaeaf97adaf7fef7e68ef0c8e1dcbc0fb
MD5 216252f595c393905f8816a66c9f3ac1
BLAKE2b-256 7b7df63b909fe37710e7c100478aafdb0cb6c44a853758896db65eb05b060864

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: evmole-0.8.5-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 422.8 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for evmole-0.8.5-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 277224400cb748f4bbdc2216447c9d3c1509800bc33727d0d286f108ac788efe
MD5 8720fe59f07777bb8b7bf8b46bebb82f
BLAKE2b-256 1771adb07601984ec0c000a8a25055d161cd49ce85fce4ad2ebd90b3e65f1d9e

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp313-cp313-win_amd64.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for evmole-0.8.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 767d5681036bbc9bba9166f50717c8c853752451ec732adc9f7de9e07ef1ccf8
MD5 8b638799aee4ad2e7da3517dcd8f7db9
BLAKE2b-256 e3a0830457807263e6602c88310c25f471b85d82081838e5ec861120fe3ca04a

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for evmole-0.8.5-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 9864222a49b87f063283feedf5b4c78db22482f54179d9ff8128fb5b2d7608d7
MD5 1d44ad59eac11bede1d80437b38e9ce6
BLAKE2b-256 f4a630bfff98db933d2a167931a4aff064eb2bf2b58697030115eb314394a60a

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: evmole-0.8.5-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 422.7 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for evmole-0.8.5-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 3b7083f215aff7e0a55c78b687f928ed88ac5973f01ea0b6684596de8034062c
MD5 3ff69129bc9d8e6036653c8031f2c3ac
BLAKE2b-256 9a9ca5be3fbd08a249bc948e1df29934a0af306cce190890b12a470ea7d6053a

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp312-cp312-win_amd64.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for evmole-0.8.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fdedd67620ba5759a5033fc47ec609562a46caf5e09841b6ad354a9c818cdd27
MD5 be56c08b37c96c1371c3536b5eed1f89
BLAKE2b-256 d88581a42e2309bbd03b84a5ad21e74253b893ee1773df91e82ba43321925c24

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for evmole-0.8.5-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 033d0293eccbccf0981f9093f3de0eacd1de2e8c25039d51ba3405ec2868830c
MD5 0122bef4847ed88d005a312a860ae3a1
BLAKE2b-256 993e7b350409833a1b4938d596b7ad9363fe959a0ca258016c2ea96984059463

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: evmole-0.8.5-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 424.1 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for evmole-0.8.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 93e9008850ca8469b914d67f21242787235a66bd7874e9f5cdbf166947a8859d
MD5 1d5deff4d8853ba8b42ccdfa4a11224c
BLAKE2b-256 457f6de98f994548b31da15833008e79d2a139835631effaffe78ca5074ac97b

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp311-cp311-win_amd64.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for evmole-0.8.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9085471510541933aef88d8d643aa15fb05699524ab9c8a3261233f14528274e
MD5 3cf33958656926aa9fb63cdba8a64e24
BLAKE2b-256 6610a0a17b06af3d0d3e6f26120521134e1dbfbf7875379032074249dca097cd

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for evmole-0.8.5-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 658f85445e8cac8398d677e715f2b46c949b7a35bc845a1de7e7189b53bbd770
MD5 e532c0ebe2264cc097060441c2951088
BLAKE2b-256 ac6c24a524e3f45c9c7ce5d3590597dfc8b27bcc4b17558d01c46b28b68d2cb5

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: evmole-0.8.5-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 423.9 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for evmole-0.8.5-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 de82d091efdc10250e35db2fa92471b8b296f837c4247032448968c93f3a13ce
MD5 9d24aab1b0a5d635556e946ed8e1ea4c
BLAKE2b-256 cef8b273fabbeab58cae4e1460bd897ea783b1d810d296c98401c2014959c56c

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp310-cp310-win_amd64.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for evmole-0.8.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5f36bfe96e39ab1c5b44eff8ef3a832419ce7fc6a3931d6724a86122b8f58490
MD5 6a0cdcedb5caaccf646ab0397de36071
BLAKE2b-256 888b8f87f96da214013c227659f4bb12db0a0dcde3ee6e7ae68b625023f2d08c

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file evmole-0.8.5-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for evmole-0.8.5-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 eb09c8b34c55548c423c5bddb354ed97c1bc1730b0f2d955e8dce88080d4e9ec
MD5 af2ff500dba810241c6dc383f99e83b9
BLAKE2b-256 4d2082170260acaae19b79c18f8af9a8d25d074a6f3fe2d895567c8f53653054

See more details on using hashes here.

Provenance

The following attestation bundles were made for evmole-0.8.5-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: build.yml on cdump/evmole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page