107 Commits

Author SHA1 Message Date
Fabio Di Fabio
8b5b40d21e Merge branch 'main' into zkbesu
# Conflicts:
#	.github/workflows/acceptance-tests.yml
#	.github/workflows/codeql.yml
#	.github/workflows/integration-tests.yml
#	.github/workflows/pre-review.yml
#	.github/workflows/reference-tests.yml
#	build.gradle
2025-03-18 11:23:20 +01:00
Simon Dudley
789542f76d Pull in Consensys/tuweni v2.7.0 (#8330)
This replaces io.tmio/tuweni with the Consensys fork.

Also Includes:
- reduce check argument args allocations - https://github.com/Consensys/tuweni/pull/10
which should reduce Integer and int[] and therefore gc pressure

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
2025-03-17 19:42:25 +10:00
Fabio Di Fabio
1bb7624325 Merge branch 'main' into zkbesu
# Conflicts:
#	.github/workflows/draft-release.yml
2025-01-15 11:24:31 +01:00
Sally MacFarlane
b797f2e346 log4j conf: replace status (deprecated) with level (#8087)
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
2025-01-14 02:36:43 +00:00
Fabio Di Fabio
85c771628e Merge branch 'main' into zkbesu 2024-10-31 13:56:29 +01:00
Sally MacFarlane
c318b6a5ff [TESTING] Remove dependency on test containers (#7790)
* removed dep for testcontainers

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
2024-10-29 13:33:46 +10:00
Fabio Di Fabio
ce902dba43 Merge branch 'main' into zkbesu
# Conflicts:
#	.github/workflows/BesuContainerVerify.sh
#	.github/workflows/splitList.sh
#	.github/workflows/splitTestsByTime.sh
#	gradle.properties
2024-10-16 11:41:19 +02:00
FlorianHuc
e720d8f670 add info related to tx validity (#7773)
* add info related to tx validity

Signed-off-by: FlorianHuc <florian.huc@gmail.com>

---------

Signed-off-by: FlorianHuc <florian.huc@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2024-10-15 19:10:49 +00:00
Justin Florentine
3e7e4d88fd Sonar cloud build failure (#7739)
* don't try to import to an existing db
* deprecated task
* testutil subproject hit a sonar bug
---------

Signed-off-by: Justin Florentine <justin+github@florentine.us>
2024-10-07 22:29:38 +00:00
Fabio Di Fabio
2aa3848950 Enable logging during unit tests (#7672)
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
2024-09-24 09:49:17 +00:00
Sally MacFarlane
9d689b9401 remove integration tests related to privacy (#7645)
* remove integration tests related to privacy

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
2024-09-21 20:45:09 +00:00
Gabriel-Trintinalia
578104e222 Fix Snap Server Account Range tests (#7552)
Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
2024-09-18 05:20:14 +00:00
Matilda-Clerke
da98fa5541 Reintroduce engine get client version v1 with commit in manifest (#7548)
* Include Commit-Hash in manifests
* Add commit method in BesuInfo
* Use 8 character hash in EngineGetClientVersionV1 and revert calculateVersion back to original spec

Signed-off-by: Matilda Clerke <matilda.clerke@consensys.net>
Co-authored-by: garyschulte <garyschulte@gmail.com>
2024-08-30 18:13:53 +00:00
Danno Ferrin
965e757d81 EOF Reference Test Fixes (#7306)
Fix a number of issues found in reference tests and evmone tests.

- Be tolerant of more nulls in json
- Support ContainerKind in reference tests
- re-order EXTCALL oeprands
- correct return value for REVERT in EXT*CALL
- re-order EOFCREATE code validation

Signed-off-by: Danno Ferrin <danno@numisight.com>
2024-07-12 14:43:44 +00:00
Danno Ferrin
85d286aa85 EIP-7692 "Mega" EOF Implementation (#7169)
A complete and up to date implementation of EIP-7692 EOF v.1. For genesis 
file activation use "PragueEOFTime", for references tests it activates as 
part of Prague.

Signed-off-by: Danno Ferrin <danno@numisight.com>
2024-06-12 21:09:18 +00:00
Usman Saleem
42e9139265 build: Add default constructor and javadoc for metrics, nat, pki, plugins, services, testutil, util (#7071)
Signed-off-by: Usman Saleem <usman@usmans.info>
2024-05-08 04:39:10 +00:00
goodactive
32dae8ff87 chore: remove repetitive word (#6971)
Signed-off-by: goodactive <goodactive@qq.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2024-04-22 02:51:26 +00:00
Danno Ferrin
001080a72b Upgrade spotless to 1.22.0 (#6898)
Upgrade spotless to 1.22.0 and reformat.
This is required for Java21 support.

Signed-off-by: Danno Ferrin <danno@numisight.com>
Co-authored-by: Danno Ferrin <danno@numisight.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2024-04-09 04:12:56 +00:00
Fabio Di Fabio
4cc6b744cf Transaction simulation service (#6686)
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
2024-03-13 15:54:38 +00:00
Fabio Di Fabio
e0bedff962 Database metadata refactor (#6555)
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
2024-02-26 13:58:54 +01:00
Fabio Di Fabio
d918baa4ae Upgrade com.fasterxml.jackson dependencies (#6378)
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
2024-01-12 11:27:59 +10:00
Fabio Di Fabio
8319fae725 Time limited block creation (#6044)
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2023-11-08 21:27:31 +01:00
Danno Ferrin
0b83ab5011 Tests for GraphQL Cancun fields (#5975)
* Tests for GraphQL Cancun fields

Add tests for GraphQL fields added to support cancun.
Also, re-work test case inclusion code and update tests impacted by
adding a new block to the chain.

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>

* unneeded deltas in genesis file

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>

---------

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2023-10-06 14:48:30 +10:00
Antoine Toulme
901661cb4f Update tuweni2.4.2 (#5684)
* Revert "Revert "Update Tuweni to 2.4.1 (#5513)" (#5585)"

This reverts commit 6111e1bbc3.

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* update Tuweni to 2.4.2

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

---------

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>
2023-07-11 22:26:32 -07:00
Sally MacFarlane
db173ebd98 services - migrate to junit 5 (#5613)
* services to junit5

* removed some junit4 engine imports

* updated some plugins test since these extend from testutil KV storage

* one more form of EPL v2

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
2023-06-21 09:12:51 +10:00
Sally MacFarlane
6111e1bbc3 Revert "Update Tuweni to 2.4.1 (#5513)" (#5585)
This reverts commit b96418143c.

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
2023-06-13 13:12:23 +10:00
Fabio Di Fabio
c3ab8e017d Improve log of p2p messages (#5542)
* Improve log of p2p messages

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* [skip ci] Update ethereum/p2p/src/main/java/org/hyperledger/besu/ethereum/p2p/rlpx/wire/AbstractMessageData.java

Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Use a more flexible way to trim logged data

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

* Sanitize user input before printing it in logs

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>

---------

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2023-06-09 14:38:41 +10:00
Antoine Toulme
b96418143c Update Tuweni to 2.4.1 (#5513)
* update to 2.4.1

* update use of DNS daemon with Vertx

* fix issue with Bytes.repeat

* update antlr version

* fix dns tests

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

---------

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2023-06-09 12:31:20 +10:00
Danno Ferrin
cc2150d537 GraphQL Support for withdrawals (#5496)
Add support for withdrawals in GraphQL, including needed changes to
testing infrastructure for shanghai-era blocks.
Also align existing adapters with graphql schema optionality.

Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
2023-05-30 21:38:21 +10:00
Danno Ferrin
835769deaf Update Reference Tests to 11.3 (#4996)
* Do not check state on failed TXes
* Exclude EIPTests from test set
* Include withdrawals in block for blockchain reference test cases
* remove outdated test exclusions.

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Jason Frame <jason.frame@consensys.net>
Co-authored-by: Jason Frame <jason.frame@consensys.net>
2023-01-25 10:35:29 +01:00
Gabriel-Trintinalia
c4dbc58a5e Add implementation for eth_createAccessList RPC method (#4942)
* Implement method EthCreateAccessList

Signed-off-by: Gabriel Trintinalia <gabriel.trintinalia@gmail.com>

* Add test resource file

Signed-off-by: Gabriel Trintinalia <gabriel.trintinalia@gmail.com>

* Change changelog

Signed-off-by: Gabriel Trintinalia <gabriel.trintinalia@gmail.com>

* fix javadoc

Signed-off-by: Gabriel Trintinalia <gabriel.trintinalia@gmail.com>

* Invert logic and rename methods to improve readability

Signed-off-by: Gabriel Trintinalia <gabriel.trintinalia@gmail.com>

* Introduce abstract class to improve readability

Signed-off-by: Gabriel Trintinalia <gabriel.trintinalia@gmail.com>

* Add copyright

Signed-off-by: Gabriel Trintinalia <gabriel.trintinalia@gmail.com>

* Update evm/src/main/java/org/hyperledger/besu/evm/frame/MessageFrame.java

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* Update testutil/src/main/java/org/hyperledger/besu/testutil/BlockTestUtil.java

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* Update testutil/src/main/java/org/hyperledger/besu/testutil/BlockTestUtil.java

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

Signed-off-by: Gabriel Trintinalia <gabriel.trintinalia@gmail.com>
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2023-01-23 09:16:37 +10:00
Usman Saleem
9eb32836b7 Fix javadocs to allow build to pass in JDK 17 (#4834)
- Added missing javadocs so that javadoc doclint passes against JDK 17 (invoke by Besu gradle build).
- Exclude following packages from javadoc lint:
org.hyperledger.besu.privacy.contracts.generated
org.hyperledger.besu.tests.acceptance.*
- Temporarily exclude ethereum and evm submodule for doc lint checks.
- Run the javadoc task using GitHub actions (use Java 17) to report any javadoc errors during the PR builds
- Updating plugin-api build.gradle with new hash as javadoc comments caused it to change

Signed-off-by: Usman Saleem <usman@usmans.info>
2023-01-18 22:51:00 +10:00
Gabriel-Trintinalia
9c5150b3b9 Update tessera image version to latest (#4702) 2022-11-21 11:10:02 +11:00
matkt
da9b10767a Snapsync persist state (#4381)
This PR avoids restarting the download of the world state from scratch when restarting Besu

Signed-off-by: Karim TAAM <karim.t2am@gmail.com>
2022-11-01 14:18:15 +01:00
Miguel Angel Rojo
2bcd2a7eec Flexible Privacy Groups feature - Support to Tessera's EC encryptor (#4282)
modified flexibleutil so it works with dynamic byte arrays, some logs to remove
    smart contracts adapted, changed bytecodes
    solidity contracts changed so they use bytes instead of bytes32
    modified flexibleutil to support ec keys
    flexible privacy tests adapted

Signed-off-by: Miguel Rojo <miguelangel.rojofernandez@mastercard.com>
Signed-off-by: Miguel Angel Rojo <miguelangel.rojofernandez@mastercard.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
2022-10-07 13:22:58 +10:00
Sally MacFarlane
770b6b8354 tessera 22.1.7 (#4316)
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
2022-09-04 23:12:13 -07:00
Sally MacFarlane
4622cf6820 update Tessera version and ubuntu for xl-machine-executor (#4305)
* latest ubuntu for xl-machine-ex

* tessera docker image version

Signed-off-by: Sally MacFarlane <sally.macfarlane@consensys.net>
2022-08-25 09:46:01 +10:00
Sally MacFarlane
13b777f61a Reinstate Tessera tests with a fixed version (#4303)
* Revert "ignore the tests that use tessera enclave via docker (#4297)"

This reverts commit 98e214cedc.

Signed-off-by: Sally MacFarlane <sally.macfarlane@consensys.net>

* lock version of tessera and make public

Signed-off-by: Sally MacFarlane <sally.macfarlane@consensys.net>

Signed-off-by: Sally MacFarlane <sally.macfarlane@consensys.net>
2022-08-24 08:13:47 +10:00
Miguel Angel Rojo
95d9626b0e Enclave public key length constraint removed for private transactions (#4086)
* removed constraint with the length of the privacy public key

* refactor to include tessera ec encryptor

* added EC snippet to the tessera json config, still need to replace base64string from web3j

* acceptance tests working after modifying the web3j library to allow secp256r1 keys

* using NACL encryptor by default

* using web3j v4.9.4 and web3j-quorum v4.9.0

Signed-off-by: Miguel Rojo <miguelangel.rojofernandez@mastercard.com>

Co-authored-by: Antony Denyer <git@antonydenyer.co.uk>
2022-08-08 20:49:58 +10:00
Danno Ferrin
755771d22c Dependency Version Updates for 22.7.0-RC1 (#4004)
Update dependency versions.

Dependencies skipped because they require compatibility work
 * vertx
 * JMH
 * Prometheus
 * RocksDB
 * Web3j
 * Gradle

Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
2022-06-23 11:03:07 -03:00
Sally MacFarlane
00851d042c Not null annotations (#3708)
* NotNull -> Nonnull

Signed-off-by: Sally MacFarlane <sally.macfarlane@consensys.net>
2022-04-07 21:03:50 +10:00
Diego López León
ed1329cf84 Introduce SLF4J for logging (#3285)
* Bump SLF4J version

Signed-off-by: Diego López León <dieguitoll@gmail.com>

* Replace log4j2 API with SLF4j API

Signed-off-by: Diego López León <dieguitoll@gmail.com>

* Replace usage of LogManager#getFormatterLogger

This is for keeping compatibility with SLF4J. If neccesary, a specific formatter can be created for the RlpBlockImporter class

Signed-off-by: Diego López León <dieguitoll@gmail.com>

* Unset the default logging value for the retesteth

This is because it's not possible to resolve the root logger level into a Log4J2 field

Signed-off-by: Diego López León <dieguitoll@gmail.com>

* Prevent creation of Logger context outside SLF4J

org.hyperledger.besu.cli.BesuCommand#setAllLevels was taken from
https://github.com/apache/logging-log4j2/blob/rel%2F2.17.1/log4j-core/src/main/java/org/apache/logging/log4j/core/config/Configurator.java#L309

Signed-off-by: Diego López León <dieguitoll@gmail.com>

* Add FATAL level deprecation message

Signed-off-by: Diego López León <dieguitoll@gmail.com>

* [Sonar] Fix java:S2139

Exceptions should be either logged or rethrown but not both

Signed-off-by: Diego López León <dieguitoll@gmail.com>

* [Sonar] Fix java:S3457

Printf-style format strings should be used correctly

Signed-off-by: Diego López León <dieguitoll@gmail.com>

* Add changelog

Signed-off-by: Diego López León <dieguitoll@gmail.com>
2022-01-25 20:14:54 -03:00
Sally MacFarlane
1b172ae64c Remove orion gradle dependency (#3275)
* remove orion dependencies
* add direct dependencies

Signed-off-by: Sally MacFarlane <sally.macfarlane@consensys.net>
2022-01-13 20:49:23 +10:00
Mohit Saxena
cada1c5c3f Deleting Orion classes (#3257)
Signed-off-by: Mohit Saxena <mohit.saxena@knoldus.com>

Co-authored-by: Sally MacFarlane <sally.macfarlane@consensys.net>
2022-01-11 10:25:13 +10:00
Jiri Peinlich
e07d804e0e Removing the orion acceptance tests (#3086)
* Not executing Orion acceptance tests

Signed-off-by: Jiri Peinlich <jiri.peinlich@gmail.com>

* Removing ORION from enclave lists for tests

Signed-off-by: Jiri Peinlich <jiri.peinlich@gmail.com>
2021-11-22 10:09:38 +10:00
Jason Frame
0e0d67dbe5 Bft block period transition (#2902)
Allow block period to be configured using transitions for IBFT2 and QBFT

Signed-off-by: Jason Frame <jasonwframe@gmail.com>
2021-10-19 15:31:25 +10:00
Antoine Toulme
11f5cfb022 Upgrade to Apache Tuweni 2.0 (#2376)
* Upgrade to Apache Tuweni 2.0

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Remove intermediate repository

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Remove all occurrences of toBytes

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Migrate to tuweni-bytes

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* add changelog

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* correct reference tests

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Initial API changes

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* more changes

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Change APIs for VM ops

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Use constant UInt256.ONE

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* Optimize a bit address <> word transformation

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>

* spotless

Signed-off-by: Antoine Toulme <antoine@lunar-ocean.com>
2021-07-17 00:15:27 +02:00
Antony Denyer
69223b8e75 Adds unrestricted privacy (#2324)
* Unrestricted Privacy: implement unrestricted privacy

- put data on chain
- wire up methods for sendRaw with restriction
- unrestricted pre-compile for processing transactions at Address.precompiled(PRIVACY - 4)
- store private state of unrestricted transactions
- route priv endpoints to unrestricted state resolution
- Implement unrestricted websocket endpoint
- Tidy up web3j transaction manager naming
- Parameterize tests for different privacy restrictions
- Implement our own PrivateTransactionManager
- remove chainId from sendRawTransaction calls
- Add check for member being a participant when creating privacy group
- refactor private marker transaction naming
- mark privacy-unrestricted-enabled as beta
- Remove create privacy group from unrestricted
- Unrestricted privacy acceptance tests will use a generated group id.
- rename enclavePublicKey to privacyUserId
- Ignore some tests for unrestricted privacy
- privacyGroupId has no significant meaning in unrestricted tests
- Change config label to be inline with previous conventions
- command tests to be added when made stable
Signed-off-by: Antony Denyer <git@antonydenyer.co.uk>
Signed-off-by: Stefan Pingel <stefan.pingel@consensys.net>
Co-authored-by: Stefan Pingel <stefan.pingel@consensys.net>
2021-06-29 16:22:08 +10:00
matkt
87e8770c50 Update eth call post 1559 (#2445)
Signed-off-by: Karim TAAM <karim.t2am@gmail.com>
2021-06-22 01:50:34 +10:00
mark-terry
3e86423457 Tessera Orion-mode privacy ATs (#2166)
* Refactored privacy ATs to use both Orion and Tessera.

Signed-off-by: Mark Terry <mark.terry@consensys.net>
2021-06-02 10:34:28 +10:00