Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New release/v0.9.3 #1291

Merged
merged 20 commits into from
Nov 5, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
083c58f
fix: Replace Teleportation rpcs with Tenderly rpcs (#1189)
wsdt Sep 7, 2023
5b06982
making getBalance more robust (#1196)
jemeza Sep 12, 2023
6a02fbf
Gateway : Cleanup Dead Code / Lazy loading of containers with (#1212)
sk-enya Sep 15, 2023
09dcfd7
Fix/loading indicator dao proposals (#1218)
sk-enya Sep 15, 2023
a64bce6
Feat/unsupported network modal (#1188)
alvaro-ricotta Sep 19, 2023
c48ebfc
remplace seconds by days on earn calculation (#1221)
alvaro-ricotta Sep 19, 2023
dc15f37
Feat/reinitialized network switcher (#1206)
alvaro-ricotta Sep 20, 2023
9944a82
feat: Airdrop gas via Light Bridge (#1180)
wsdt Sep 22, 2023
a9cc398
Gateway : Block Explorer links in footer. (#1222)
sk-enya Sep 23, 2023
e0add4d
cleanup infura and added tenderly rpc url (#1226)
sk-enya Sep 24, 2023
b0cd6bb
decouple gateway from rollup (#1245)
InoMurko Sep 29, 2023
2b7f6ae
Bump mikefarah/yq from 4.35.1 to 4.35.2 (#1249)
dependabot[bot] Oct 2, 2023
375c4e3
Inomurko/update packages (#1248)
InoMurko Oct 2, 2023
d250bac
feat: Add documentation for Teleportation contract parameters (#1211)
wsdt Oct 2, 2023
93bcfdb
Bump postcss from 8.4.21 to 8.4.31 (#1255)
dependabot[bot] Oct 8, 2023
5533712
Bump @types/chai-as-promised from 7.1.5 to 7.1.6 (#1257)
dependabot[bot] Oct 9, 2023
d06ddb5
Create SECURITY.md for Teleportation (#1253)
wsdt Oct 9, 2023
c0ed184
"updated web3 library using in fraud detector" (#1271)
jemeza Oct 22, 2023
bd33538
Turing replica state (#1286)
InoMurko Oct 30, 2023
49f2831
proxyd updates (#1285)
InoMurko Oct 31, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
23 changes: 16 additions & 7 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
version: 2.1

parameters:
ci_builder_image:
type: string
default: us-docker.pkg.dev/${GCP_PROJECT_ID}/${GCP_ARTIFACT_REPOSITORY}/images/ci-builder:latest

executors:
intergration-tests-executor:
resource_class: xlarge
Expand All @@ -8,6 +13,7 @@ executors:
docker_layer_caching: true
environment:
DOCKER_BUILDKIT: 1
COMPOSE_DOCKER_CLI_BUILD: 1

commands:
check-changed:
Expand Down Expand Up @@ -71,12 +77,16 @@ commands:
patterns: common-ts,contracts,core-utils,data-transport-layer,message-relayer,regenesis-surgery,sdk,integration-tests,l2geth,packages/boba/account-abstraction,packages/boba/bobalink,packages/boba/bundler,packages/boba/bundler_sdk,packages/boba/bundler_utils,packages/boba/contracts,packages/boba/gas-price-oracle,packages/boba/register,packages/boba/teleportation,ops,ops_boba
- run:
name: Build the project
command: yarn && yarn build
command: yarn && yarn install && yarn build
working_directory: ./

- run:
name: Build the core services
command: docker-compose build
command: |
# docker context create buildx-build
# docker buildx create --use buildx-build
# docker buildx bake -f docker-compose.yml --load
docker-compose build
working_directory: ops

- run:
Expand Down Expand Up @@ -110,7 +120,7 @@ commands:
name: Start background logging
working_directory: ops
background: true
command: docker-compose -f <<parameters.docker_compose_file>> -f <<parameters.docker_compose_side_file>> logs --follow
command: docker-compose -f <<parameters.docker_compose_file>> -f <<parameters.docker_compose_side_file>> logs --follow || true
- run:
name: Wait for sequencer
command: bash scripts/wait-for-sequencer.sh
Expand Down Expand Up @@ -159,15 +169,14 @@ jobs:
type: string
default: this-package-does-not-exist
docker:
- image: ethereumoptimism/ci-builder:latest
- image: cimg/postgres:14.1
- image: <<pipeline.parameters.ci_builder_image>>
steps:
- checkout
- check-changed:
patterns: go/proxyd
- run:
name: Lint
command: golangci-lint run -E goimports,sqlclosecheck,bodyclose,asciicheck,misspell,errorlint -e "errors.As" -e "errors.Is" ./...
command: make lint
working_directory: <<parameters.working_directory>>
- store_test_results:
path: /test-results
Expand Down Expand Up @@ -223,7 +232,7 @@ workflows:
main:
jobs:
- integration-tests
- integration-tests-avalanche
#- integration-tests-avalanche
- integration-tests-bnb
- go-lint-test-build:
name: proxyd-tests
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/boba-publish-develop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ jobs:
with:
node-version: 16
- name: yq - portable yaml processor
uses: mikefarah/[email protected].1
uses: mikefarah/[email protected].2

- name: Get yarn cache directory path
id: yarn-cache-dir-path
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/boba-publish-master.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ jobs:
with:
node-version: 16
- name: yq - portable yaml processor
uses: mikefarah/[email protected].1
uses: mikefarah/[email protected].2

- name: Get yarn cache directory path
id: yarn-cache-dir-path
Expand Down
4 changes: 2 additions & 2 deletions boba_community/boba-relayer/package.json
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{
"name": "@boba/boba-relayer",
"name": "@bobanetwork/boba-relayer",
"version": "1.0.0",
"scripts": {
"start": "node ./src/index.js",
"postinstall": "patch-package"
},
"license": "MIT",
"dependencies": {
"@eth-optimism/sdk": "1.0.1",
"@bobanetwork/sdk": "1.0.7",
"dotenv": "^16.0.0",
"ethers": "^5.5.4",
"node-fetch": "2.6.0",
Expand Down
2 changes: 1 addition & 1 deletion boba_community/boba-relayer/src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ const {
CrossChainMessenger,
MessageStatus,
CONTRACT_ADDRESSES,
} = require('@eth-optimism/sdk')
} = require('@bobanetwork/sdk')

const main = async () => {
const env = process.env
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
FROM python:3.8-slim
RUN pip3 install --no-cache-dir web3==5.31.4
RUN pip3 install --no-cache-dir web3==6.11.1
COPY boba_community/fraud-detector/fraud-detector.py /
COPY boba_community/fraud-detector/packages/jsonrpclib /jsonrpclib
COPY /packages/contracts/artifacts/contracts/L1/rollup/StateCommitmentChain.sol/StateCommitmentChain.json /contracts/StateCommitmentChain.json
Expand Down
14 changes: 7 additions & 7 deletions boba_community/fraud-detector/fraud-detector.py
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ def status(*args):
while True:
try:
rpc[1] = Web3(Web3.HTTPProvider(os.environ['L1_NODE_WEB3_URL']))
assert (rpc[1].isConnected())
assert (rpc[1].is_connected())
break
except:
logger.info ("Waiting for L1...")
Expand All @@ -99,7 +99,7 @@ def status(*args):
while True:
try:
rpc[2] = Web3(Web3.HTTPProvider(os.environ['L2_NODE_WEB3_URL']))
assert (rpc[2].isConnected())
assert (rpc[2].is_connected())
break
except:
logger.info ("Waiting for L2...")
Expand All @@ -111,7 +111,7 @@ def status(*args):
while True:
try:
rpc[3] = Web3(Web3.HTTPProvider(os.environ['VERIFIER_WEB3_URL']))
assert (rpc[3].isConnected())
assert (rpc[3].is_connected())
break
except:
logger.info ("Waiting for verifier...")
Expand Down Expand Up @@ -181,17 +181,17 @@ def doEvent(event, force_L2):
match = "**** SCC/VERIFIER MISMATCH ****"

if l2SR:
l2SR_str = Web3.toHex(l2SR)
l2SR_str = Web3.utils.toHex(l2SR)
else:
l2SR_str = " -- "
log_str = "{} {} {} {} {} {}".format(rCount, event.blockNumber, Web3.toHex(sr), l2SR_str, Web3.toHex(vfSR), match)
log_str = "{} {} {} {} {} {}".format(rCount, event.blockNumber, Web3.utils.toHex(sr), l2SR_str, Web3.utils.toHex(vfSR), match)
matchedLock.acquire()
if match != "":
Matched['is_ok'] = False
logger.warning(log_str)
else:
Matched['Block'] = rCount
Matched['Root'] = Web3.toHex(sr)
Matched['Root'] = Web3.utils.toHex(sr)
Matched['Time'] = time.time()
logger.info(log_str)
matchedLock.release()
Expand Down Expand Up @@ -238,7 +238,7 @@ def fpLoop():

logger.info("#SCC-IDX L1-Block SCC-STATEROOT L2-STATEROOT VERIFIER-STATEROOT MISMATCH")

topic_sig = Web3.toHex(Web3.keccak(text="StateBatchAppended(uint256,bytes32,uint256,uint256,bytes)"))
topic_sig = Web3.utils.toHex(Web3.keccak(text="StateBatchAppended(uint256,bytes32,uint256,uint256,bytes)"))

while startBlock < l1_tip:
toBlock = min(startBlock+batch_size, l1_tip) - 1
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { Wallet, providers } from 'ethers'
import { getContractFactory } from '@eth-optimism/contracts'
import { getContractFactory } from '@bobanetwork/core_contracts'

/* eslint-disable */
require('dotenv').config()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { getContractFactory } from '@eth-optimism/contracts'
import { getContractFactory } from '@bobanetwork/core_contracts'
import { DeployFunction, DeploymentSubmission } from 'hardhat-deploy/dist/types'
import { Contract, ContractFactory, utils } from 'ethers'

Expand Down
2 changes: 1 addition & 1 deletion boba_community/hc-kyc/test/kyc.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import {
Wallet,
utils,
} from 'ethers'
import { getContractFactory } from '@eth-optimism/contracts'
import { getContractFactory } from '@bobanetwork/core_contracts'
import { ethers } from 'hardhat'
import chai, { expect } from 'chai'
import { solidity } from 'ethereum-waffle'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// SPDX-License-Identifier: MIT
pragma solidity >0.7.5;

import "@boba/contracts/contracts/standards/L1StandardERC721.sol";
import "@bobanetwork/contracts/contracts/standards/L1StandardERC721.sol";
import "base64-sol/base64.sol";

/**
Expand Down
2 changes: 1 addition & 1 deletion boba_community/hc-monsters/scripts/deploy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import {Contract, ContractFactory, providers, utils, Wallet} from "ethers";
import TuringHelperJson from "../artifacts/contracts/TuringHelper.sol/HybridComputeHelper.json";
import {getContractFactory} from "@eth-optimism/contracts";
const cfg = hre.network.config
import L2GovernanceERC20Json from '@boba/contracts/artifacts/contracts/standards/L2GovernanceERC20.sol/L2GovernanceERC20.json'
import L2GovernanceERC20Json from '@bobanetwork/contracts/artifacts/contracts/standards/L2GovernanceERC20.sol/L2GovernanceERC20.json'

async function main() {
const local_provider = new providers.JsonRpcProvider(cfg['url'])
Expand Down
8 changes: 4 additions & 4 deletions boba_community/hc-monsters/test/NFTMonsterV2.ts
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
import { Contract, ContractFactory, providers, Wallet, utils } from 'ethers'
import { getContractFactory } from '@eth-optimism/contracts'
import { getContractFactory } from '@bobanetwork/core_contracts'
import { ethers } from 'hardhat'
import chai, { expect } from 'chai'
import { solidity } from 'ethereum-waffle'
chai.use(solidity)
import hre from 'hardhat'
import L1StandardERC721Json from '@boba/contracts/artifacts/contracts/standards/L1StandardERC721.sol/L1StandardERC721.json'
import L1StandardERC721Json from '@bobanetwork/contracts/artifacts/contracts/standards/L1StandardERC721.sol/L1StandardERC721.json'
import ERC721Json from '../artifacts/contracts/NFTMonsterV2.sol/NFTMonsterV2.json'
import L2BridgeMessengerMockJson from '../artifacts/contracts/L2BridgeMockMessenger.sol/L2BridgeMockMessenger.json'
import TuringHelperJson from '../artifacts/contracts/TuringHelper.sol/TuringHelper.json'
import L2GovernanceERC20Json from '@boba/contracts/artifacts/contracts/standards/L2GovernanceERC20.sol/L2GovernanceERC20.json'
import L2NFTBridgeJson from '@boba/contracts/artifacts/contracts/ERC721Bridges/L2NFTBridge.sol/L2NFTBridge.json'
import L2GovernanceERC20Json from '@bobanetwork/contracts/artifacts/contracts/standards/L2GovernanceERC20.sol/L2GovernanceERC20.json'
import L2NFTBridgeJson from '@bobanetwork/contracts/artifacts/contracts/ERC721Bridges/L2NFTBridge.sol/L2NFTBridge.json'

const cfg = hre.network.config

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "@boba/hcb-dapp-contracts",
"name": "@bobanetwork/hcb-dapp-contracts",
"version": "0.1.0",
"description": "Contracts for HybridCompute UX DApp",
"main": "index.js",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import {
Wallet,
utils,
} from 'ethers'
import { getContractFactory } from '@eth-optimism/contracts'
import { getContractFactory } from '@bobanetwork/core_contracts'
import { ethers, upgrades } from 'hardhat'
import chai, { expect } from 'chai'
import { solidity } from 'ethereum-waffle'
Expand Down
12 changes: 6 additions & 6 deletions boba_documentation/developer/price-feeds.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ A quick note on fees and subscription: Currently the feed is free to use for the
To get the latest price data call method **`latestRoundData(base, quote)`**. To get the price data from a certain past round (historical price) call method **`getRoundData(base, quote, roundId)`**. The `roundId` supplied here is phaseId plus aggregator roundId, for reference query the latest `roundId`. The answer returned will be of the form of decimals specified on the contract call method **`decimals(base, quote)`**. For example,

```javascript
import "@boba/contracts/oracle/FeedRegistry.sol"
import "@bobanetwork/contracts/oracle/FeedRegistry.sol"

contract MyContract {

Expand Down Expand Up @@ -138,7 +138,7 @@ A complete list of publicly available Witnet data feeds on Boba can be found in
Witnet price feeds can be integrated into your own Boba Mainnet contracts in two different ways:

1. [Integrate through proxy](https://docs.witnet.io/smart-contracts/witnet-data-feeds/using-witnet-data-feeds#reading-multiple-currency-pairs-from-the-router) Recommended for testing and upgradability.
This is the preferred way to consume the Witnet-powered price feeds. Through using the ***Price Feeds Router***.
This is the preferred way to consume the Witnet-powered price feeds. Through using the ***Price Feeds Router***.

2. [Integrate directly](https://docs.witnet.io/smart-contracts/witnet-data-feeds/using-witnet-data-feeds#reading-last-price-and-timestamp-from-a-price-feed-contract-serving-a-specific-pair) Optimized for gas cost and decentralization

Expand Down Expand Up @@ -168,7 +168,7 @@ contract MyContract {
IWitnetPriceRouter immutable public router;

/**
* IMPORTANT: pass the WitnetPriceRouter address depending on
* IMPORTANT: pass the WitnetPriceRouter address depending on
* the network you are using! Please find available addresses here:
* https://docs.witnet.io/smart-contracts/price-feeds/contract-addresses
*/
Expand All @@ -186,7 +186,7 @@ contract MyContract {
(_price,,) = router.valueFor(bytes4(0x3d15f701));
}

/// Returns the BTC / ETH price (6 decimals), derived from the ETH/USD and
/// Returns the BTC / ETH price (6 decimals), derived from the ETH/USD and
/// the BTC/USD pairs that were ultimately provided by the Witnet oracle.
function getBtcEthPrice() public view returns (int256 _price) {
return (1000000 * getBtcUsdPrice()) / getEthUsdPrice();
Expand All @@ -210,9 +210,9 @@ print("> lastTimestamp:", valueFor[1])
print("> latestUpdateStatus:", valueFor[2])
```

For more information about Witnet please refer to:
For more information about Witnet please refer to:

[website](https://witnet.io/) | [docs](https://docs.witnet.io/) | [github](https://github.com/witnet) | [twitter](https://twitter.com/witnet_io) | [telegram](https://t.me/witnetio) | [discord](https://discord.gg/witnet)
[website](https://witnet.io/) | [docs](https://docs.witnet.io/) | [github](https://github.com/witnet) | [twitter](https://twitter.com/witnet_io) | [telegram](https://t.me/witnetio) | [discord](https://discord.gg/witnet)

## 3. Turing

Expand Down
6 changes: 3 additions & 3 deletions boba_documentation/developer/xdomain-tx-status.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Internally in all the services and also in the `gateway`, the status of transact
CrossChainMessenger,
MessageStatus,
MessageDirection,
} from '@eth-optimism/sdk'
} from '@bobanetwork/sdk'

const messenger = new CrossChainMessenger({
l1SignerOrProvider: l1Wallet,
Expand Down Expand Up @@ -62,7 +62,7 @@ Internally in all the services and also in the `gateway`, the status of transact

## Using the Boba Transaction API

The system is [documented here](../../ops_boba/api/watcher-api/README.md). For example, to get L2 transactions between two blocks, use `get.l2.transactions`:
The system is [documented here](../../ops_boba/api/watcher-api/README.md). For example, to get L2 transactions between two blocks, use `get.l2.transactions`:

### get.l2.transactions

Expand Down Expand Up @@ -117,4 +117,4 @@ The system is [documented here](../../ops_boba/api/watcher-api/README.md). For e
}
}
]
```
```
6 changes: 3 additions & 3 deletions boba_examples/nft_bridging/src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ const chalk = require('chalk')
require('dotenv').config()

const SampleERC721Json = require('../artifacts/contracts/SampleERC721.sol/SampleERC721.json')
const L1StandardERC721Json = require('@boba/contracts/artifacts/contracts/standards/L1StandardERC721.sol/L1StandardERC721.json')
const L1NFTBridgeJson = require('@boba/contracts/artifacts/contracts/ERC721Bridges/L1NFTBridge.sol/L1NFTBridge.json')
const L2NFTBridgeJson = require('@boba/contracts/artifacts/contracts/ERC721Bridges/L2NFTBridge.sol/L2NFTBridge.json')
const L1StandardERC721Json = require('@bobanetwork/contracts/artifacts/contracts/standards/L1StandardERC721.sol/L1StandardERC721.json')
const L1NFTBridgeJson = require('@bobanetwork/contracts/artifacts/contracts/ERC721Bridges/L1NFTBridge.sol/L1NFTBridge.json')
const L2NFTBridgeJson = require('@bobanetwork/contracts/artifacts/contracts/ERC721Bridges/L2NFTBridge.sol/L2NFTBridge.json')

const { bridgeToL1 } = require('./bridgeToL1')
const { bridgeBackToL2 } = require('./bridgeBackToL2')
Expand Down
6 changes: 3 additions & 3 deletions boba_examples/nft_bridging/src/quickStart-goerli.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ const chalk = require('chalk')
require('dotenv').config()

const SampleERC721Json = require('../quickStart-Goerli/SampleERC721.json')
const L1StandardERC721Json = require('@boba/contracts/artifacts/contracts/standards/L1StandardERC721.sol/L1StandardERC721.json')
const L1NFTBridgeJson = require('@boba/contracts/artifacts/contracts/ERC721Bridges/L1NFTBridge.sol/L1NFTBridge.json')
const L2NFTBridgeJson = require('@boba/contracts/artifacts/contracts/ERC721Bridges/L2NFTBridge.sol/L2NFTBridge.json')
const L1StandardERC721Json = require('@bobanetwork/contracts/artifacts/contracts/standards/L1StandardERC721.sol/L1StandardERC721.json')
const L1NFTBridgeJson = require('@bobanetwork/contracts/artifacts/contracts/ERC721Bridges/L1NFTBridge.sol/L1NFTBridge.json')
const L2NFTBridgeJson = require('@bobanetwork/contracts/artifacts/contracts/ERC721Bridges/L2NFTBridge.sol/L2NFTBridge.json')

const { bridgeToL1 } = require('./bridgeToL1')
const { bridgeBackToL2 } = require('./bridgeBackToL2')
Expand Down
2 changes: 1 addition & 1 deletion boba_examples/turing-complex-types/scripts/deploy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import {Contract, ContractFactory, providers, utils, Wallet} from "ethers";
import TuringHelperJson from "../artifacts/contracts/TuringHelper.sol/TuringHelper.json";
import {getContractFactory} from "@eth-optimism/contracts";
const cfg = hre.network.config
import L2GovernanceERC20Json from '@boba/contracts/artifacts/contracts/standards/L2GovernanceERC20.sol/L2GovernanceERC20.json'
import L2GovernanceERC20Json from '@bobanetwork/contracts/artifacts/contracts/standards/L2GovernanceERC20.sol/L2GovernanceERC20.json'

async function main() {
const local_provider = new providers.JsonRpcProvider(cfg['url'])
Expand Down
Loading
Loading