Skip to content

Commit

Permalink
feat: Deprecate Base Sepolia (#28)
Browse files Browse the repository at this point in the history
* Deprecate base

* Fix tests

* Update SDK v2.1.1
  • Loading branch information
ytham authored Oct 21, 2024
1 parent b406ae6 commit efebedc
Show file tree
Hide file tree
Showing 16 changed files with 781 additions and 1,257 deletions.
2 changes: 0 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,6 @@ jobs:
run: |
export PROVIDER_URI_MAINNET=${{ secrets.PROVIDER_URI_MAINNET }}
export PROVIDER_URI_SEPOLIA=${{ secrets.PROVIDER_URI_SEPOLIA }}
export PROVIDER_URI_BASE=${{ secrets.PROVIDER_URI_BASE }}
export PROVIDER_URI_GNOSIS=${{ secrets.PROVIDER_URI_GNOSIS }}
RUST_BACKTRACE=1 forge test -vvv
Expand Down Expand Up @@ -88,6 +87,5 @@ jobs:
run: |
export PROVIDER_URI_MAINNET=${{ secrets.PROVIDER_URI_MAINNET }}
export PROVIDER_URI_SEPOLIA=${{ secrets.PROVIDER_URI_SEPOLIA }}
export PROVIDER_URI_BASE=${{ secrets.PROVIDER_URI_BASE }}
export PROVIDER_URI_GNOSIS=${{ secrets.PROVIDER_URI_GNOSIS }}
RUST_BACKTRACE=1 forge test -vvv
45 changes: 5 additions & 40 deletions build/axiom-std-cli-build.js
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,7 @@ var require_prove = __commonJS({
var client_1 = require("@axiom-crypto/client");
var utils_3 = require("@axiom-crypto/client/axiom/utils");
var address_1 = require("@axiom-crypto/client/lib/address");
var prove = async (compiledJson, inputs, rpcUrl, sourceChainId, callbackTarget, callbackExtraData, refundAddress, maxFeePerGas, callbackGasLimit, caller, targetChainId, bridgeId, broadcaster, blockhashOracle, targetRpcUrl) => {
var prove = async (compiledJson, inputs, rpcUrl, sourceChainId, callbackTarget, callbackExtraData, refundAddress, maxFeePerGas, callbackGasLimit, caller) => {
const { restoreConsole, getCaptures } = (0, utils_2.redirectConsole)();
const decoder = new TextDecoder();
const rpcUrlOrCache = (0, utils_1.getRpcUrl)(rpcUrl);
Expand Down Expand Up @@ -248,44 +248,10 @@ var require_prove = __commonJS({
dataQuery
};
let axiomV2QueryAddress;
if (blockhashOracle) {
if (broadcaster) {
throw new Error("Cannot use both broadcaster and blockhash oracle");
}
if (!targetChainId) {
throw new Error("`targetChainId` is required for blockhash oracle bridge type");
}
if (sourceChainId == "1" && targetChainId == "8453") {
axiomV2QueryAddress = (0, address_1.getAxiomV2QueryBlockhashOracleAddress)({ sourceChainId, targetChainId });
} else {
axiomV2QueryAddress = "0xdEaDBEefDeaDbEefDeAdbeefDeAdbEEfAAaaAAaA";
}
} else if (broadcaster) {
if (!targetChainId) {
throw new Error("`targetChainId` is required for broadcaster bridge type");
}
if (!bridgeId) {
throw new Error("`bridgeId` is required for broadcaster bridge type");
}
if (false) {
axiomV2QueryAddress = (0, address_1.getAxiomV2QueryBroadcasterAddress)({ sourceChainId, targetChainId, bridgeId });
} else {
axiomV2QueryAddress = "0xdEaDBEefDeaDbEefDeAdbeefDeAdbEEfAAaaAAaA";
}
if (sourceChainId in ["1", "11155111"]) {
axiomV2QueryAddress = (0, address_1.getAxiomV2QueryAddress)(sourceChainId);
} else {
if (sourceChainId in ["1", "11155111", "8453", "84532"]) {
axiomV2QueryAddress = (0, address_1.getAxiomV2QueryAddress)(sourceChainId);
} else {
axiomV2QueryAddress = "0xdEaDBEefDeaDbEefDeAdbeefDeAdbEEfAAaaAAaA";
}
}
let target;
if (blockhashOracle || broadcaster) {
const targetRpcUrlOrCache = (0, utils_1.getRpcUrl)(targetRpcUrl);
target = {
chainId: targetChainId,
rpcUrl: targetRpcUrlOrCache
};
axiomV2QueryAddress = "0xdEaDBEefDeaDbEefDeAdbeefDeAdbEEfAAaaAAaA";
}
let build = await (0, client_1.buildSendQuery)({
chainId: sourceChainId,
Expand All @@ -297,7 +263,6 @@ var require_prove = __commonJS({
target: callbackTarget,
extraData: callbackExtraData
},
target,
caller,
mock: false,
options: {
Expand Down Expand Up @@ -339,5 +304,5 @@ var prove_1 = require_prove();
var program = new commander_1.Command("axiom-std");
program.name("axiom-std").usage("axiom-std CLI");
program.command("read-circuit").description("Read and compile a circuit").argument("<circuit-path>", "path to the typescript circuit file").argument("<rpc-url>", "JSON-RPC provider to use").option("-q, --override-query-schema <suffix>", "query schema").action(compile_1.compile);
program.command("prove").description("Prove a circuit and generate query results").argument("<compiled-json>", "compiled json string").argument("<inputs>", "inputs to the circuit").argument("<rpc-url>", "JSON-RPC provider to use for the source chain").argument("<source-chain-id>", "source chain id").argument("<callback-target>", "callback target").argument("<callback-extra-data>", "callback extra data").argument("<refund-address>", "refund address").argument("<max-fee-per-gas>", "max fee per gas").argument("<callback-gas-limit>", "callback gas limit").argument("<caller>", "caller").option("-t, --target-chain-id <target-chain-id>", "target chain id").option("-b, --bridge-id <bridge-id>", "bridge id", parseInt).option("-br, --broadcaster", "Use crosschain broadcaster").option("-bo, --blockhash-oracle", "Use crosschain blockhash oracle").option("-tr, --target-rpc-url <target-rpc-url>", "JSON-RPC provider to use for the target chain").action(prove_1.prove);
program.command("prove").description("Prove a circuit and generate query results").argument("<compiled-json>", "compiled json string").argument("<inputs>", "inputs to the circuit").argument("<rpc-url>", "JSON-RPC provider to use for the source chain").argument("<source-chain-id>", "source chain id").argument("<callback-target>", "callback target").argument("<callback-extra-data>", "callback extra data").argument("<refund-address>", "refund address").argument("<max-fee-per-gas>", "max fee per gas").argument("<callback-gas-limit>", "callback gas limit").argument("<caller>", "caller").action(prove_1.prove);
program.parseAsync(process.argv);
5 changes: 0 additions & 5 deletions cli/axiom-std-cli.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,6 @@ program.command("prove")
.argument("<max-fee-per-gas>", "max fee per gas")
.argument("<callback-gas-limit>", "callback gas limit")
.argument("<caller>", "caller")
.option("-t, --target-chain-id <target-chain-id>", "target chain id")
.option("-b, --bridge-id <bridge-id>", "bridge id", parseInt)
.option("-br, --broadcaster", "Use crosschain broadcaster")
.option("-bo, --blockhash-oracle", "Use crosschain blockhash oracle")
.option("-tr, --target-rpc-url <target-rpc-url>", "JSON-RPC provider to use for the target chain")
.action(prove);

program.parseAsync(process.argv);
48 changes: 3 additions & 45 deletions cli/prove.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@ import { buildSendQuery } from "@axiom-crypto/client";
import { argsArrToObj } from '@axiom-crypto/client/axiom/utils';
import {
getAxiomV2QueryAddress,
getAxiomV2QueryBroadcasterAddress,
getAxiomV2QueryBlockhashOracleAddress
} from '@axiom-crypto/client/lib/address';

export const prove = async (
Expand All @@ -21,11 +19,6 @@ export const prove = async (
maxFeePerGas: string,
callbackGasLimit: string,
caller: string,
targetChainId?: string,
bridgeId?: number,
broadcaster?: boolean,
blockhashOracle?: boolean,
targetRpcUrl?: string,
) => {
const { restoreConsole, getCaptures } = redirectConsole();
const decoder = new TextDecoder();
Expand Down Expand Up @@ -64,46 +57,12 @@ export const prove = async (
}

let axiomV2QueryAddress;
if (blockhashOracle) {
if (broadcaster) {
throw new Error("Cannot use both broadcaster and blockhash oracle");
}
if (!targetChainId) {
throw new Error("`targetChainId` is required for blockhash oracle bridge type");
}
if (sourceChainId == "1" && targetChainId == "8453") {
axiomV2QueryAddress = getAxiomV2QueryBlockhashOracleAddress({sourceChainId, targetChainId});
} else {
axiomV2QueryAddress = "0xdEaDBEefDeaDbEefDeAdbeefDeAdbEEfAAaaAAaA";
}
} else if (broadcaster) {
if (!targetChainId) {
throw new Error("`targetChainId` is required for broadcaster bridge type");
}
if (!bridgeId) {
throw new Error("`bridgeId` is required for broadcaster bridge type");
}
if (false) {
axiomV2QueryAddress = getAxiomV2QueryBroadcasterAddress({sourceChainId, targetChainId: targetChainId!, bridgeId: bridgeId!});
} else {
axiomV2QueryAddress = "0xdEaDBEefDeaDbEefDeAdbeefDeAdbEEfAAaaAAaA";
}
if (sourceChainId in ["1", "11155111"]) {
axiomV2QueryAddress = getAxiomV2QueryAddress(sourceChainId);
} else {
if (sourceChainId in ["1", "11155111", "8453", "84532"]) {
axiomV2QueryAddress = getAxiomV2QueryAddress(sourceChainId);
} else {
axiomV2QueryAddress = "0xdEaDBEefDeaDbEefDeAdbeefDeAdbEEfAAaaAAaA";
}
axiomV2QueryAddress = "0xdEaDBEefDeaDbEefDeAdbeefDeAdbEEfAAaaAAaA";
}

let target;
if (blockhashOracle || broadcaster) {
const targetRpcUrlOrCache = getRpcUrl(targetRpcUrl);
target = {
chainId: targetChainId!,
rpcUrl: targetRpcUrlOrCache,
};
}
let build = await buildSendQuery({
chainId: sourceChainId,
rpcUrl: rpcUrlOrCache,
Expand All @@ -114,7 +73,6 @@ export const prove = async (
target: callbackTarget,
extraData: callbackExtraData,
},
target,
caller: caller,
mock: false,
options: {
Expand Down
2 changes: 0 additions & 2 deletions env.example
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
# Make a copy of this file and rename to `.env`
PROVIDER_URI_SEPOLIA=
PROVIDER_URI_MAINNET=
PROVIDER_URI_BASE_SEPOLIA=
PROVIDER_URI_BASE=
PROVIDER_URI_GNOSIS=
20 changes: 9 additions & 11 deletions foundry.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,15 @@ ast = true
[rpc_endpoints]
sepolia = "${PROVIDER_URI_SEPOLIA}"
mainnet = "${PROVIDER_URI_MAINNET}"
base-sepolia = "${PROVIDER_URI_BASE_SEPOLIA}"
base = "${PROVIDER_URI_BASE}"
gnosis = "${PROVIDER_URI_GNOSIS}"

[fmt]
bracket_spacing = true
int_types = "long"
line_length = 120
multiline_func_header = "attributes_first"
number_underscore = "thousands"
quote_style = "double"
single_line_statement_blocks = "multi"
tab_width = 4
wrap_comments = false
bracket_spacing = true
int_types = "long"
line_length = 120
multiline_func_header = "attributes_first"
number_underscore = "thousands"
quote_style = "double"
single_line_statement_blocks = "multi"
tab_width = 4
wrap_comments = false
22 changes: 11 additions & 11 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "axiom-std",
"version": "0.1.10",
"version": "0.1.11",
"description": "",
"main": "index.js",
"scripts": {
Expand All @@ -11,8 +11,8 @@
"author": "Intrinsic Technologies",
"license": "MIT",
"dependencies": {
"@axiom-crypto/circuit": "2.1.0",
"@axiom-crypto/client": "2.1.0",
"@axiom-crypto/circuit": "2.1.1",
"@axiom-crypto/client": "2.1.1",
"commander": "^11.1.0",
"dotenv": "^16.4.5",
"viem": "^2.17.4"
Expand Down
Loading

0 comments on commit efebedc

Please sign in to comment.