Commit Graph

99 Commits

Author SHA1 Message Date
Eduard S
9684e7ae47 Update importers of eth, use variable length feeIdxCoordinator 2020-10-14 16:07:18 +02:00
Eduard S
250f1aa119 Merge pull request #194 from hermeznetwork/feature/txsel-noncesorting0
Add TxSel Nonce sort. Fix surplus from refactors
2020-10-14 11:45:46 +02:00
arnaucube
1a2f769b5d Add TxSel Nonce sort. Fix surplus from refactors
- Add TxSel Nonce sort
- Fix surplus from refactors
- StateDB reuse computation of ToIdx across Synchronizer, TxSelector,
BatchBuilder
2020-10-14 11:38:40 +02:00
arnau
c145147e6e Merge pull request #179 from hermeznetwork/feature/api-exits
Impl exit edpoint and refactor pagination
2020-10-14 11:16:03 +02:00
Arnau B
fe7d38843e Impls exit endpoints and change pagination to cursor 2020-10-14 10:06:28 +02:00
arnaucube
431df55120 Add transakcio set type define, add set load [...]
Add transakcio set type definition, add set loading, move transakcio to
package, adapt branch to last master updates (fix compile due new common
types & git conflicts).
Update tests to pass the test, pending to adapt to new Transakcio
interface.
2020-10-09 20:00:43 +02:00
arnaucube
b40bccfc00 Add Transakcio block&batch txs generationfrom code 2020-10-09 12:49:12 +02:00
arnaucube
182e3d36f5 Add GeneratePoolL2Txs for a parsed set 2020-10-09 12:49:12 +02:00
arnaucube
06ae1897d8 Add Transakcio new parser for the new lang spec 2020-10-09 12:49:12 +02:00
arnau
f142e23c45 Merge pull request #187 from hermeznetwork/feature/ethclient15-sc
Update ethclient rollup iteration 2
2020-10-09 12:17:06 +02:00
Arnau B
5097939b12 Avoid using pointers in common 2020-10-08 16:42:16 +02:00
Eduard S
cbc46db6da Update test ethclient, rename rollup var 2020-10-08 16:37:43 +02:00
Eduard S
b14495cfcc Replace all []*Foo by []Foo in sql db return values
- Implement SlicePtrsToSlice and use it in all `meddler.QueryAll` sql db functions to always return []Foo instead of []*Foo
2020-10-07 17:03:39 +02:00
Eduard S
0277210c39 Extend ethclient test, implement new TxID spec
- Implement new TxID spec that distinguishes L1UserTx and L1CoordinatorTx
- Replace some type []*Foo by []Foo
- Fix HistoryDB & L2DB bug: in case of error, a rollback was applied and the returned error was nil
- Reorder inserts in historydb.NewHistoryDB() to follow foreign key dependencies
- Add initial synchronizer test with test.Client (for now, only tested l1UserTxs, blocks, addToken)
- Update L1UserTx event in test.Client
2020-10-07 16:41:51 +02:00
a_bennassar
3d7b71e1fd Merge pull request #182 from hermeznetwork/feature/ethclient14-sc
Update ethclient contracts & rollup iteration 1
2020-10-07 11:59:11 +02:00
Eduard S
1a85f15d27 Fix conflicts and update dependencies of ethclient 2020-10-06 18:16:59 +02:00
Eduard S
650911cda3 Add methods to get ERC20 constants 2020-10-06 11:39:41 +02:00
a_bennassar
49366e3fa4 Feature/null refactor (#173)
* WIP: rebase

* Make nullable fields use pointers
2020-10-06 10:34:49 +02:00
Eduard S
0fc4930652 Update test ethclient and coordinator 2020-10-01 11:34:59 +02:00
arnaucube
9bb4a4ec1b Add TxID calculation & New{Layer}Tx Type
Add TxID calculation & New{Layer}Tx Type

New{Layer}Tx methods that compute the `TxID` & `TxType` values from the
transaction values:
- NewL1Tx
- NewL2Tx
- NewPoolL2Tx

Add TxID Scanner & Valuer for database/sql

HistoryDB & L2DB & API packages tests will need to be addapted to the
TestTransaction generation once is done.
2020-09-30 15:37:13 +02:00
a_bennassar
c6f70f3177 Feature/merge history l2 tables (#156)
* WIP rebase

* Combine both SQL DBs

* API and DB refactor
2020-09-29 18:27:07 +02:00
laisolizq
7a3407a561 Update ethclient wdelayer & add auction events 2020-09-28 17:01:03 +02:00
ToniRamirezM
ac677694fe Helper methods for Synchronizer and TX refactor 2020-09-23 17:05:38 +02:00
Eduard S
b86d21902b Merge pull request #142 from hermeznetwork/feature/api-boilerplate
Add GET histroy-transactions endpoint
2020-09-22 15:39:13 +02:00
Arnau B
85fe885265 Add GET histroy-transactions endpoint 2020-09-22 13:21:28 +02:00
Eduard S
05b273cc00 Merge pull request #128 from hermeznetwork/feature/l1txbytes
Update common.L1Tx parsers, add test checks
2020-09-21 15:40:49 +02:00
arnaucube
3013fbacb6 Change endianness to BigEndian :(
Change endianness to BigEndian (ಥ﹏ಥ), spec has been updated to achieve
compatibility with js & smart contracts & circuits implementations.
2020-09-21 15:10:01 +02:00
Eduard S
35a558f6c9 Merge pull request #135 from hermeznetwork/feature/synchronizer-sc
Smart Contracts Data Synchronization
2020-09-21 14:40:10 +02:00
Eduard S
9f83fcf520 Review synchronizer, rearange some stuff, add notes and TODOs. 2020-09-21 14:33:07 +02:00
Arnau B
94e1f11a98 Implement L2DB 2020-09-18 10:17:51 +02:00
Eduard S
5ad447c47c Merge pull request #136 from hermeznetwork/feature/ethclient4-sc
Update ethclient
2020-09-17 12:22:24 +02:00
Eduard S
63be61f527 Update test.Client, replace some big.Int by int/int64 in eth, fix lints 2020-09-17 12:17:04 +02:00
a_bennassar
8a21cd1b5c Add HistoryDB SQL triggers (#125) 2020-09-17 11:57:42 +02:00
a_bennassar
05d183d07b Merge pull request #127 from hermeznetwork/feature/txsel-txsselection-v0
TxSelector GetL2TxSelection & GetL1L2TxSelection integrated with dbs
2020-09-16 13:54:53 +02:00
arnaucube
41715e47ba TxSel integrated with L2DB, Add L1CoordTx creation
- GetL2TxSelection & GetL1L2TxSelection integrated with dbs
- Create L1CoordinatorTx of type CreateAccountDeposit when a L2
requires it (and the AccountCreationAuth exists)
2020-09-16 12:40:56 +02:00
Eduard S
852cd762d3 Add reverts, forge in test ethClient, update auction 2020-09-15 12:47:27 +02:00
Eduard S
56fe0fb05f Implement basic auction funcs in test.Client 2020-09-10 12:56:34 +02:00
Eduard S
bcd93fee36 Implement initial version of test.Client 2020-09-08 10:32:10 +02:00
Eduard S
003c353f05 Add ethclient full skeleton 2020-09-07 17:29:55 +02:00
arnaucube
fdaf2c9ce2 Update log package with fields & file log
Update log package with fields & file log, and update constants in the
repository code to be MixedCase.

resolves #91, resolves #92, resolves #95
2020-09-02 10:56:48 +02:00
arnaucube
c523b4af70 Add mock EthClient for testing 2020-09-01 11:19:07 +02:00
arnaucube
cbbcb65c8c Add lint checks: gofmt, goimports, golint
- gofmt - Gofmt checks whether code was gofmt-ed. By default this tool runs
  with -s option to check for code simplification
- goimports - Goimports does everything that gofmt does. Additionally it checks
  unused imports
- golint - Golint differs from gofmt. Gofmt reformats Go source code, whereas
  golint prints out style mistakes
    - checks the uncommented exported functions & types

Update the code to fix the lint checks.
2020-08-31 12:32:05 +02:00
arnaucube
fd1e9c25ee Add linter checks to GHA & Fix code to pass lints
Add linter checks to GHA & Fix code to pass lints.
The linters added are:
- whitespace: Tool for detection of leading and trailing whitespace
- gosec: Inspects source code for security problems
- gci: Gci control golang package import order and make it always deterministic
- misspell: Finds commonly misspelled English words in comments
- gomnd: An analyzer to detect magic numbers

The file utils/utils.go is excluded from the checks of gomnd, as uses magic numbers through the code
2020-08-28 09:58:39 +02:00
arnaucube
26dbb16618 Add Coordinator goroutines & channels processes
Add Coordinator goroutines & channels processes
- Add Coordinator goroutines & channels
- Add Coordinator test to debug batches
- Add MakeCheckpoint call after BatchBuilder BuildBatch process
- Update ethClient BlockByNumber to return hermez/common.Block instead of go-ethereum/core/types.Block
2020-08-27 10:56:08 +02:00
arnaucube
be95de18fc Add StateDB txprocessor tests using txtest generators
Add StateDB tx processor tests using tx test generators:
- update statedb/ tx processors
- add statedb tx processors tests
2020-08-25 19:28:33 +02:00
arnaucube
e98b511436 Update tx testing generation:
Update tx testing generation:
- add new batch lexic to tx-test language
- add coordinatorL1Txs generation to tx-test
- add SetTest0 code to generate test L1&L2 transactions
2020-08-25 19:08:07 +02:00
arnaucube
a28c81f4ae Add TxCompressedData & V2 with some extra parsers for common 2020-08-21 15:35:31 +02:00
arnaucube
8eb42c011c Add tx L1&L2 test generation & keys for TestingFramework
Add test-lang Fee & ForceExit option
2020-08-20 11:57:44 +02:00
arnaucube
e2d4599690 Add tx generation lang interpreter 2020-08-19 15:58:20 +02:00