Skip to content

Commit bd069ac

Browse files
committed
Merge branch 'develop' into master
2 parents 56a5aa0 + 0279f6b commit bd069ac

File tree

522 files changed

+22988
-35893
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

522 files changed

+22988
-35893
lines changed

.circleci/config.yml

Lines changed: 7 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,6 @@ step_setup_global_packages: &step_setup_global_packages
2828
name: "Set up global packages"
2929
command: |
3030
npm install
31-
step_pull_solc_docker: &step_pull_solc_docker
32-
run:
33-
name: "Pull solc docker images"
34-
command: |
35-
docker pull ethereum/solc:0.5.4
36-
docker pull ethereum/solc:0.6.12
3731
step_setup_slither: &step_setup_slither
3832
run:
3933
name: "Setup slither analyser https://github.com/crytic/slither"
@@ -46,16 +40,13 @@ step_setup_solc_select: &step_setup_solc_select
4640
command: |
4741
sudo pip3 install solc-select
4842
solc-select install 0.5.4
49-
solc-select install 0.6.12
43+
solc-select install 0.8.3
5044
jobs:
5145
unit-test:
5246
<<: *job_common
5347
steps:
5448
- checkout
5549
- <<: *step_restore_cache
56-
- setup_remote_docker:
57-
version: 19.03.13
58-
- <<: *step_pull_solc_docker
5950
- <<: *step_setup_global_packages
6051
- run:
6152
name: "Lint JavaScript"
@@ -66,9 +57,6 @@ jobs:
6657
- run:
6758
name: "Compiling external library contracts"
6859
command: npm run compile:lib
69-
- run:
70-
name: "Compiling legacy contracts"
71-
command: npm run compile:legacy
7260
- run:
7361
name: "Compiling contracts"
7462
command: npm run compile
@@ -85,11 +73,14 @@ jobs:
8573
- run:
8674
name: "Running unit tests"
8775
command: npm run ganache >/dev/null 2>&1 & npm run test
88-
# Save coverage artifacts
76+
# Save test artifacts
8977
- store_artifacts:
9078
path: gas-usage-report.log
9179
destination: reports/gas-usage-report.log
9280
- run: npx codechecks
81+
- run:
82+
name: "Running integration tests"
83+
command: npm run mainnet-fork >/dev/null 2>&1 & npm run test:integration
9384
- run:
9485
name: "Running coverage"
9586
command: |
@@ -106,28 +97,20 @@ jobs:
10697
steps:
10798
- checkout
10899
- <<: *step_restore_cache
109-
- setup_remote_docker:
110-
version: 19.03.13
111-
- <<: *step_pull_solc_docker
112100
- <<: *step_setup_global_packages
113101
- <<: *step_setup_slither
114102
- <<: *step_setup_solc_select
115-
- run:
116-
name: "Check TokenPriceRegistry tokens for ERC20 compliance"
117-
command: |
118-
export PATH=/home/circleci/.solc-select:$PATH
119-
npm run validate:erc20
120103
- run:
121104
name: "Run slither on infrastructure contracts based on solc 0.5"
122105
command: |
123106
export PATH=/home/circleci/.solc-select:$PATH
124107
npm run security:slither:infrastructure_0.5
125108
when: always
126109
- run:
127-
name: "Run slither on infrastructure contracts based on solc 0.6"
110+
name: "Run slither on infrastructure contracts based on solc 0.8"
128111
command: |
129112
export PATH=/home/circleci/.solc-select:$PATH
130-
npm run security:slither:infrastructure_0.6
113+
npm run security:slither:infrastructure
131114
when: always
132115
- run:
133116
name: "Run slither on wallet modules contracts"

.eslintignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,5 @@ contracts/*
55
contracts-test/*
66
coverage/*
77
lib/*
8-
scripts/coverage.js
8+
scripts/coverage.js
9+
tmp

.gitignore

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
node_modules
22
build
3-
build-legacy
43
tmp
54
bin
65
.outputParameter
@@ -30,8 +29,6 @@ flat
3029
.env
3130
utils/config/*.json
3231
!utils/config/development.json
33-
!utils/config/kovan.json
34-
!utils/config/kovan-fork.json
3532
ganache-accounts.json
3633

3734
## solidity-coverage

.solcover.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
module.exports = {
22
client: require('ganache-cli'),
3+
measureStatementCoverage: false,
4+
measureFunctionCoverage: false,
35
skipFiles: [
46
"../contracts-test",
5-
"../contracts-legacy",
6-
"../lib"
7+
"../lib_0.5",
8+
"../lib_0.7"
79
],
810
providerOptions: {
911
port: 8555,

.solhint.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,6 @@
99
"max-line-length": ["error", 150],
1010
"func-param-name-mixedcase": "error",
1111
"modifier-name-mixedcase": "error",
12-
"reason-string": ["warn", { "maxLength":32 }]
12+
"reason-string": ["error", { "maxLength":32 }]
1313
}
1414
}

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Argent Wallet Smart Contracts
22

3-
The Argent wallet is an Ethereum Smart Contract based mobile wallet. The wallet's user keeps an Ethereum account (Externally Owned Account) secretly on his mobile device. This account is set as the owner of the Smart Contract. User's funds (ETH and ERC20 tokens) are stored on the Smart Contract. With that model, logic can be added to the wallet to improve both the user experience and the wallet security. For instance, the wallet is guarded, recoverable, lockable, protected by a daily limit and upgradable.
3+
The Argent wallet is an Ethereum Smart Contract based mobile wallet. The wallet's user keeps an Ethereum account (Externally Owned Account) secretly on his mobile device. This account is set as the owner of the Smart Contract. User's funds (ETH and ERC20 tokens) are stored on the Smart Contract. With that model, logic can be added to the wallet to improve both the user experience and the wallet security. For instance, the wallet is guarded, recoverable, lockable, and upgradable.
44

55
See full specifications [here](specifications/specifications.pdf)
66

320 KB
Binary file not shown.

0 commit comments

Comments
 (0)