-
Notifications
You must be signed in to change notification settings - Fork 133
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix: tentative CJS build + ethers v6 (#1280)
* chore(deps): bump ethers (#1242) * fix(deps): patch tests and package.json files after the ethers bump Co-authored-by: Dennis von der Bey <[email protected]>
- Loading branch information
1 parent
977662a
commit cbe778e
Showing
61 changed files
with
8,352 additions
and
4,994 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -15,7 +15,7 @@ jobs: | |
GH_TOKEN: ${{secrets.GH_TOKEN}} | ||
GH_USER: ${{secrets.GH_USER}} | ||
GH_EMAIL: ${{secrets.GH_EMAIL}} | ||
runs-on: ubuntu-18.04 | ||
runs-on: ubuntu-latest | ||
services: | ||
postgres: | ||
image: postgres:15.1 | ||
|
@@ -32,11 +32,11 @@ jobs: | |
token: ${{secrets.GH_TOKEN}} | ||
- uses: pnpm/action-setup@v2 | ||
with: | ||
version: 7 | ||
version: 8 | ||
- name: Use Node.js | ||
uses: actions/setup-node@v3 | ||
with: | ||
node-version: 14 | ||
node-version: 16 | ||
cache: 'pnpm' | ||
|
||
- run: pnpm install --force | ||
|
@@ -56,7 +56,7 @@ jobs: | |
|
||
- name: setup git coordinates | ||
run: | | ||
git remote set-url origin https://uport-project:$[email protected]/uport-project/veramo.git | ||
git remote set-url origin https://${{secrets.GH_USER}}:${{secrets.GH_TOKEN}}@github.com/decentralized-identity/veramo.git | ||
git config user.name $GH_USER | ||
git config user.email $GH_EMAIL | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,7 +6,7 @@ on: | |
- 'main' | ||
jobs: | ||
merge-branch: | ||
runs-on: ubuntu-18.04 | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: everlytic/[email protected] | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,34 +1,35 @@ | ||
import { Web3Provider, ExternalProvider } from '@ethersproject/providers' | ||
import { Wallet } from '@ethersproject/wallet' | ||
import { BrowserProvider, Eip1193Provider, Wallet } from 'ethers' | ||
|
||
export function createEthersProvider(): Web3Provider { | ||
export function createEthersProvider(): BrowserProvider { | ||
const privateKeyHex = '0x1da6847600b0ee25e9ad9a52abbd786dd2502fa4005dd5af9310b7cc7a3b25db' | ||
const wallet = new Wallet(privateKeyHex) | ||
const mockProvider = new MockWeb3Provider(wallet) | ||
const provider = new Web3Provider(mockProvider) | ||
const provider = new BrowserProvider(mockProvider) | ||
return provider | ||
} | ||
|
||
class MockWeb3Provider implements Eip1193Provider { | ||
constructor(private wallet: Wallet) {} | ||
|
||
class MockWeb3Provider implements ExternalProvider { | ||
constructor(private wallet: Wallet){ | ||
|
||
} | ||
async request(request: { method: string; params?: any[] }): Promise<any> { | ||
|
||
switch(request.method) { | ||
case 'personal_sign': | ||
//@ts-ignore | ||
return this.wallet.signMessage(request.params[1]) | ||
break | ||
case 'eth_signTypedData_v4': | ||
//@ts-ignore | ||
case 'eth_signTypedData_v4': | ||
// @ts-ignore | ||
const {domain, types, message} = JSON.parse(request.params[1]) | ||
delete(types.EIP712Domain) | ||
return this.wallet._signTypedData(domain, types, message) | ||
return this.wallet.signTypedData(domain, types, message) | ||
case 'eth_accounts': | ||
return [await this.wallet.getAddress()] | ||
case 'eth_chainId': | ||
return "1337" | ||
break | ||
default: | ||
throw Error(`not_available: method ${request.method}`) | ||
} | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,70 +1,64 @@ | ||
import { Web3Provider } from '@ethersproject/providers' | ||
import { Contract, ContractFactory } from '@ethersproject/contracts' | ||
// @ts-ignore | ||
import DidRegistryContract from 'ethr-did-registry' | ||
import ganache from 'ganache' | ||
import { Contract, ContractFactory, JsonRpcApiProvider } from 'ethers' | ||
import { EthereumDIDRegistry } from 'ethr-did-resolver' | ||
import { GanacheProvider } from '@ethers-ext/provider-ganache' | ||
|
||
/** | ||
* Creates a Web3Provider that connects to a local ganache instance with a bunch of known keys and an ERC1056 contract. | ||
* | ||
* This provider can only be used in a single test suite, because of some concurrency issues with ganache. | ||
*/ | ||
export async function createGanacheProvider(): Promise<{ provider: Web3Provider; registry: string }> { | ||
const provider = new Web3Provider( | ||
ganache.provider({ | ||
logging: { quiet: true }, | ||
accounts: [ | ||
{ | ||
secretKey: '0x278a5de700e29faae8e40e366ec5012b5ec63d36ec77e8a2417154cc1d25383f', | ||
// address: '0xf3beac30c498d9e26865f34fcaa57dbb935b0d74', | ||
// publicKey: '03fdd57adec3d438ea237fe46b33ee1e016eda6b585c3e27ea66686c2ea5358479' | ||
balance: '0x1000000000000000000000', | ||
}, | ||
{ | ||
secretKey: '0x0000000000000000000000000000000000000000000000000000000000000001', | ||
// address: '0x7e5f4552091a69125d5dfcb7b8c2659029395bdf', | ||
// publicKey: '0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798' | ||
balance: '0x1000000000000000000000', | ||
}, | ||
{ | ||
secretKey: '0x0000000000000000000000000000000000000000000000000000000000000002', | ||
// address: '0x2b5ad5c4795c026514f8317c7a215e218dccd6cf', | ||
// publicKey: '02c6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5' | ||
balance: '0x1000000000000000000000', | ||
}, | ||
{ | ||
secretKey: '0x0000000000000000000000000000000000000000000000000000000000000003', | ||
// address: '0x6813eb9362372eef6200f3b1dbc3f819671cba69', | ||
// publicKey: '02f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9' | ||
balance: '0x1000000000000000000000', | ||
}, | ||
{ | ||
secretKey: '0x0000000000000000000000000000000000000000000000000000000000000004', | ||
// address: '0x1eff47bc3a10a45d4b230b5d10e37751fe6aa718', | ||
// publicKey: '02e493dbf1c10d80f3581e4904930b1404cc6c13900ee0758474fa94abe8c4cd13' | ||
balance: '0x1000000000000000000000', | ||
}, | ||
{ | ||
secretKey: '0x0000000000000000000000000000000000000000000000000000000000000005', | ||
// address: '0xe1ab8145f7e55dc933d51a18c793f901a3a0b276' | ||
// publicKey: '022f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4' | ||
balance: '0x1000000000000000000000', | ||
}, | ||
{ | ||
secretKey: '0x0000000000000000000000000000000000000000000000000000000000000006', | ||
balance: `0x1000000000000000000000`, | ||
}, | ||
], | ||
}) as any | ||
) | ||
export async function createGanacheProvider(): Promise<{ provider: JsonRpcApiProvider; registry: string }> { | ||
const provider = new GanacheProvider({ | ||
logging: { quiet: true }, | ||
accounts: [ | ||
{ | ||
secretKey: '0x278a5de700e29faae8e40e366ec5012b5ec63d36ec77e8a2417154cc1d25383f', | ||
// address: '0xf3beac30c498d9e26865f34fcaa57dbb935b0d74', | ||
// publicKey: '03fdd57adec3d438ea237fe46b33ee1e016eda6b585c3e27ea66686c2ea5358479' | ||
balance: '0x1000000000000000000000', | ||
}, | ||
{ | ||
secretKey: '0x0000000000000000000000000000000000000000000000000000000000000001', | ||
// address: '0x7e5f4552091a69125d5dfcb7b8c2659029395bdf', | ||
// publicKey: '0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798' | ||
balance: '0x1000000000000000000000', | ||
}, | ||
{ | ||
secretKey: '0x0000000000000000000000000000000000000000000000000000000000000002', | ||
// address: '0x2b5ad5c4795c026514f8317c7a215e218dccd6cf', | ||
// publicKey: '02c6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5' | ||
balance: '0x1000000000000000000000', | ||
}, | ||
{ | ||
secretKey: '0x0000000000000000000000000000000000000000000000000000000000000003', | ||
// address: '0x6813eb9362372eef6200f3b1dbc3f819671cba69', | ||
// publicKey: '02f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9' | ||
balance: '0x1000000000000000000000', | ||
}, | ||
{ | ||
secretKey: '0x0000000000000000000000000000000000000000000000000000000000000004', | ||
// address: '0x1eff47bc3a10a45d4b230b5d10e37751fe6aa718', | ||
// publicKey: '02e493dbf1c10d80f3581e4904930b1404cc6c13900ee0758474fa94abe8c4cd13' | ||
balance: '0x1000000000000000000000', | ||
}, | ||
{ | ||
secretKey: '0x0000000000000000000000000000000000000000000000000000000000000005', | ||
// address: '0xe1ab8145f7e55dc933d51a18c793f901a3a0b276' | ||
// publicKey: '022f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4' | ||
balance: '0x1000000000000000000000', | ||
}, | ||
{ | ||
secretKey: '0x0000000000000000000000000000000000000000000000000000000000000006', | ||
balance: `0x1000000000000000000000`, | ||
}, | ||
], | ||
} as any) | ||
await provider.ready | ||
const factory = ContractFactory.fromSolidity(DidRegistryContract).connect(provider.getSigner(0)) | ||
const factory = ContractFactory.fromSolidity(EthereumDIDRegistry).connect(await provider.getSigner(0)) | ||
|
||
let registryContract: Contract = await factory.deploy() | ||
registryContract = await registryContract.deployed() | ||
registryContract = await registryContract.waitForDeployment() | ||
|
||
await registryContract.deployTransaction.wait() | ||
|
||
const registry = registryContract.address | ||
const registry = await registryContract.getAddress() | ||
return { provider, registry } | ||
} |
Oops, something went wrong.