Skip to content

Commit d7a2fce

Browse files
author
github-action-benchmark
committed
add Benchmark (cargo) benchmark result for 678ba9d
1 parent 17dc4bc commit d7a2fce

1 file changed

Lines changed: 337 additions & 1 deletion

File tree

data.js

Lines changed: 337 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
window.BENCHMARK_DATA = {
2-
"lastUpdate": 1784630511536,
2+
"lastUpdate": 1784661516489,
33
"repoUrl": "https://github.com/dojoengine/katana",
44
"entries": {
55
"Benchmark": [
@@ -37262,6 +37262,342 @@ window.BENCHMARK_DATA = {
3726237262
"unit": "ns/iter"
3726337263
}
3726437264
]
37265+
},
37266+
{
37267+
"commit": {
37268+
"author": {
37269+
"email": "evergreenkary@gmail.com",
37270+
"name": "Ammar Arif",
37271+
"username": "kariy"
37272+
},
37273+
"committer": {
37274+
"email": "noreply@github.com",
37275+
"name": "GitHub",
37276+
"username": "web-flow"
37277+
},
37278+
"distinct": true,
37279+
"id": "678ba9d7c10ab79af2ede488586d00aa15085927",
37280+
"message": "feat(starknet): honor `HTTP(S)_PROXY` env vars in outbound JSON-RPC clients (#643)\n\nAdds a reqwest-backed implementation of jsonrpsee's `ClientT` trait\n(`katana_starknet::http::HttpClient`) and makes it the default transport\nfor `StarknetRpcClient` and the RPC server's `PaymasterProxy`, so all\noutbound JSON-RPC connections (forking, full-node sync, messaging, TEE,\nbootstrap, paymaster forwarding) honor the standard proxy environment\nvariables like the rest of katana's reqwest/alloy clients already do.\n\n## Proxy environment variables\n\n`HTTPS_PROXY` is the de-facto standard way to route a process's outbound\ntraffic through a forward proxy — needed in environments without direct\negress, e.g. corporate networks or sandboxed/TEE VMs. Katana now reads:\n\n| Variable | Effect |\n| --- | --- |\n| `HTTPS_PROXY` | Proxy for `https://` targets. The client opens an HTTP\n`CONNECT` tunnel through the proxy and runs TLS end-to-end inside it, so\nthe proxy never sees plaintext. |\n| `HTTP_PROXY` | Proxy for plain `http://` targets (requests are\nforwarded in absolute-form). |\n| `NO_PROXY` | Comma-separated hosts/domains/CIDRs that must connect\ndirectly. |\n\nLowercase variants (`https_proxy`, …) are also recognized. Values are\nread when a client is constructed, i.e. at node startup. Example:\n\n```sh\nHTTPS_PROXY=http://proxy.internal:3128 katana --forking.provider https://api.cartridge.gg/x/starknet/mainnet\n```\n\n**Loopback bypass:** targets on `localhost`/`127.0.0.1`/`::1` always\nconnect directly, even with a proxy configured — local sidecars\n(paymaster, VRF) and dev/test flows keep working without users having to\nmaintain a `NO_PROXY` entry.\n\n**Not covered:** SOCKS proxies and OS-level proxy settings (macOS System\nSettings / Windows registry); only the environment variables are read.\nSee `docs/proxy.md` for the full write-up.\n\n## Why a new transport\n\njsonrpsee's hyper-based `HttpClient` hardcodes its connector and has no\nproxy support, so the jsonrpsee-built clients were the only ones in\nkatana that ignored these variables. The new transport mirrors\njsonrpsee's wire format, request-id checking, and error-variant\nsemantics, so `StarknetApiError` mapping and retry classification are\nunchanged; the WebSocket client and localhost-only helpers stay on\njsonrpsee.\n\nCovered by 9 new tests, including proxy routing through a mock forward\nproxy (asserting absolute-form forwarding) and loopback bypass.\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-authored-by: Claude Fable 5 <noreply@anthropic.com>",
37281+
"timestamp": "2026-07-21T14:44:16-04:00",
37282+
"tree_id": "f45511b30e3bbcc23ac822376ca184b8858f67c5",
37283+
"url": "https://github.com/dojoengine/katana/commit/678ba9d7c10ab79af2ede488586d00aa15085927"
37284+
},
37285+
"date": 1784661514742,
37286+
"tool": "cargo",
37287+
"benches": [
37288+
{
37289+
"name": "CompiledClass(fixture)/compress",
37290+
"value": 2650651,
37291+
"range": "± 136671",
37292+
"unit": "ns/iter"
37293+
},
37294+
{
37295+
"name": "CompiledClass(fixture)/decompress",
37296+
"value": 2816910,
37297+
"range": "± 18206",
37298+
"unit": "ns/iter"
37299+
},
37300+
{
37301+
"name": "ExecutionCheckpoint/compress",
37302+
"value": 32,
37303+
"range": "± 5",
37304+
"unit": "ns/iter"
37305+
},
37306+
{
37307+
"name": "ExecutionCheckpoint/decompress",
37308+
"value": 24,
37309+
"range": "± 8",
37310+
"unit": "ns/iter"
37311+
},
37312+
{
37313+
"name": "PruningCheckpoint/compress",
37314+
"value": 33,
37315+
"range": "± 5",
37316+
"unit": "ns/iter"
37317+
},
37318+
{
37319+
"name": "PruningCheckpoint/decompress",
37320+
"value": 23,
37321+
"range": "± 9",
37322+
"unit": "ns/iter"
37323+
},
37324+
{
37325+
"name": "VersionedHeader/compress",
37326+
"value": 638,
37327+
"range": "± 45",
37328+
"unit": "ns/iter"
37329+
},
37330+
{
37331+
"name": "VersionedHeader/decompress",
37332+
"value": 823,
37333+
"range": "± 21",
37334+
"unit": "ns/iter"
37335+
},
37336+
{
37337+
"name": "StoredBlockBodyIndices/compress",
37338+
"value": 76,
37339+
"range": "± 6",
37340+
"unit": "ns/iter"
37341+
},
37342+
{
37343+
"name": "StoredBlockBodyIndices/decompress",
37344+
"value": 34,
37345+
"range": "± 8",
37346+
"unit": "ns/iter"
37347+
},
37348+
{
37349+
"name": "StorageEntry/compress",
37350+
"value": 136,
37351+
"range": "± 1",
37352+
"unit": "ns/iter"
37353+
},
37354+
{
37355+
"name": "StorageEntry/decompress",
37356+
"value": 138,
37357+
"range": "± 3",
37358+
"unit": "ns/iter"
37359+
},
37360+
{
37361+
"name": "ContractNonceChange/compress",
37362+
"value": 138,
37363+
"range": "± 1",
37364+
"unit": "ns/iter"
37365+
},
37366+
{
37367+
"name": "ContractNonceChange/decompress",
37368+
"value": 236,
37369+
"range": "± 3",
37370+
"unit": "ns/iter"
37371+
},
37372+
{
37373+
"name": "ContractClassChange/compress",
37374+
"value": 182,
37375+
"range": "± 3",
37376+
"unit": "ns/iter"
37377+
},
37378+
{
37379+
"name": "ContractClassChange/decompress",
37380+
"value": 251,
37381+
"range": "± 4",
37382+
"unit": "ns/iter"
37383+
},
37384+
{
37385+
"name": "ContractStorageEntry/compress",
37386+
"value": 148,
37387+
"range": "± 3",
37388+
"unit": "ns/iter"
37389+
},
37390+
{
37391+
"name": "ContractStorageEntry/decompress",
37392+
"value": 311,
37393+
"range": "± 4",
37394+
"unit": "ns/iter"
37395+
},
37396+
{
37397+
"name": "GenericContractInfo/compress",
37398+
"value": 130,
37399+
"range": "± 7",
37400+
"unit": "ns/iter"
37401+
},
37402+
{
37403+
"name": "GenericContractInfo/decompress",
37404+
"value": 101,
37405+
"range": "± 5",
37406+
"unit": "ns/iter"
37407+
},
37408+
{
37409+
"name": "Felt/compress",
37410+
"value": 68,
37411+
"range": "± 6",
37412+
"unit": "ns/iter"
37413+
},
37414+
{
37415+
"name": "Felt/decompress",
37416+
"value": 51,
37417+
"range": "± 6",
37418+
"unit": "ns/iter"
37419+
},
37420+
{
37421+
"name": "BlockHash/compress",
37422+
"value": 68,
37423+
"range": "± 7",
37424+
"unit": "ns/iter"
37425+
},
37426+
{
37427+
"name": "BlockHash/decompress",
37428+
"value": 52,
37429+
"range": "± 5",
37430+
"unit": "ns/iter"
37431+
},
37432+
{
37433+
"name": "TxHash/compress",
37434+
"value": 68,
37435+
"range": "± 1",
37436+
"unit": "ns/iter"
37437+
},
37438+
{
37439+
"name": "TxHash/decompress",
37440+
"value": 52,
37441+
"range": "± 4",
37442+
"unit": "ns/iter"
37443+
},
37444+
{
37445+
"name": "ClassHash/compress",
37446+
"value": 68,
37447+
"range": "± 2",
37448+
"unit": "ns/iter"
37449+
},
37450+
{
37451+
"name": "ClassHash/decompress",
37452+
"value": 51,
37453+
"range": "± 3",
37454+
"unit": "ns/iter"
37455+
},
37456+
{
37457+
"name": "CompiledClassHash/compress",
37458+
"value": 68,
37459+
"range": "± 6",
37460+
"unit": "ns/iter"
37461+
},
37462+
{
37463+
"name": "CompiledClassHash/decompress",
37464+
"value": 52,
37465+
"range": "± 4",
37466+
"unit": "ns/iter"
37467+
},
37468+
{
37469+
"name": "BlockNumber/compress",
37470+
"value": 30,
37471+
"range": "± 2",
37472+
"unit": "ns/iter"
37473+
},
37474+
{
37475+
"name": "BlockNumber/decompress",
37476+
"value": 24,
37477+
"range": "± 0",
37478+
"unit": "ns/iter"
37479+
},
37480+
{
37481+
"name": "TxNumber/compress",
37482+
"value": 30,
37483+
"range": "± 2",
37484+
"unit": "ns/iter"
37485+
},
37486+
{
37487+
"name": "TxNumber/decompress",
37488+
"value": 24,
37489+
"range": "± 0",
37490+
"unit": "ns/iter"
37491+
},
37492+
{
37493+
"name": "FinalityStatus/compress",
37494+
"value": 1,
37495+
"range": "± 0",
37496+
"unit": "ns/iter"
37497+
},
37498+
{
37499+
"name": "FinalityStatus/decompress",
37500+
"value": 10,
37501+
"range": "± 2",
37502+
"unit": "ns/iter"
37503+
},
37504+
{
37505+
"name": "TypedTransactionExecutionInfo/compress",
37506+
"value": 17772,
37507+
"range": "± 121",
37508+
"unit": "ns/iter"
37509+
},
37510+
{
37511+
"name": "TypedTransactionExecutionInfo/decompress",
37512+
"value": 3604,
37513+
"range": "± 89",
37514+
"unit": "ns/iter"
37515+
},
37516+
{
37517+
"name": "VersionedContractClass/compress",
37518+
"value": 435,
37519+
"range": "± 131",
37520+
"unit": "ns/iter"
37521+
},
37522+
{
37523+
"name": "VersionedContractClass/decompress",
37524+
"value": 786,
37525+
"range": "± 8",
37526+
"unit": "ns/iter"
37527+
},
37528+
{
37529+
"name": "MigratedCompiledClassHash/compress",
37530+
"value": 136,
37531+
"range": "± 8",
37532+
"unit": "ns/iter"
37533+
},
37534+
{
37535+
"name": "MigratedCompiledClassHash/decompress",
37536+
"value": 141,
37537+
"range": "± 4",
37538+
"unit": "ns/iter"
37539+
},
37540+
{
37541+
"name": "ContractInfoChangeList/compress",
37542+
"value": 1421,
37543+
"range": "± 24",
37544+
"unit": "ns/iter"
37545+
},
37546+
{
37547+
"name": "ContractInfoChangeList/decompress",
37548+
"value": 2168,
37549+
"range": "± 386",
37550+
"unit": "ns/iter"
37551+
},
37552+
{
37553+
"name": "BlockChangeList/compress",
37554+
"value": 627,
37555+
"range": "± 103",
37556+
"unit": "ns/iter"
37557+
},
37558+
{
37559+
"name": "BlockChangeList/decompress",
37560+
"value": 871,
37561+
"range": "± 155",
37562+
"unit": "ns/iter"
37563+
},
37564+
{
37565+
"name": "ReceiptEnvelope/compress",
37566+
"value": 28317,
37567+
"range": "± 725",
37568+
"unit": "ns/iter"
37569+
},
37570+
{
37571+
"name": "ReceiptEnvelope/decompress",
37572+
"value": 6027,
37573+
"range": "± 269",
37574+
"unit": "ns/iter"
37575+
},
37576+
{
37577+
"name": "TrieDatabaseValue/compress",
37578+
"value": 165,
37579+
"range": "± 2",
37580+
"unit": "ns/iter"
37581+
},
37582+
{
37583+
"name": "TrieDatabaseValue/decompress",
37584+
"value": 234,
37585+
"range": "± 1",
37586+
"unit": "ns/iter"
37587+
},
37588+
{
37589+
"name": "TrieHistoryEntry/compress",
37590+
"value": 288,
37591+
"range": "± 2",
37592+
"unit": "ns/iter"
37593+
},
37594+
{
37595+
"name": "TrieHistoryEntry/decompress",
37596+
"value": 261,
37597+
"range": "± 10",
37598+
"unit": "ns/iter"
37599+
}
37600+
]
3726537601
}
3726637602
]
3726737603
}

0 commit comments

Comments
 (0)