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

Add missing methods to transaction interface #5732

Conversation

daniellehrner
Copy link
Contributor

PR description

Missing methods which exist in the transaction class, but not the interface were added. This required the creation of a AccessListEntry interface in org.hyperledger.besu.datatypes and it's use in all the places that have used the class directly before.

Fixed Issue(s)

fixes #5731

@github-actions
Copy link

github-actions bot commented Jul 30, 2023

  • I thought about documentation and added the doc-change-required label to this PR if updates are required.
  • I thought about the changelog and included a changelog update if required.
  • If my PR includes database changes (e.g. KeyValueSegmentIdentifier) I have thought about compatibility and performed forwards and backwards compatibility tests

daniellehrner and others added 14 commits August 4, 2023 16:41
…tEntry interface to add it to the transaction interface

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
…tion.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
…tion.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
…erledger#5727)

* Make smart contract permissioning features work with london fork

Override the transactionSimulator's default TransactionValidationParams with one that allows for exceeding the account balance (which effectively zeros the baseFee).
This mimics the way that eth_estimateGas and eth_call are implemented.
Similar change to hyperledger#5277

Update ATs to use londonBlock (existing genesis allocs necessitate zeroBaseFee as well)

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

* changelog
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

---------

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
…edger#5726)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Update Reference Tests to 12.3
* fix decoding error
* add ignored field
* update module

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
…dger#5711)

This way it is possible for the caller to have more data about the selection
process.

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
* ensure we are on a single tuweni version
* factor out an unneeded concatenate

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
* add type

* update changelog

---------

Signed-off-by: George Tebrean <george@web3labs.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Execution-spec-tests migrated from DataGas to BlobGas and checks for its
inclusion in tests now. Add needed support.

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
…module

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
…action

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
@daniellehrner daniellehrner force-pushed the feat/issue-5731/update-transaction-interface branch from e4094b8 to 312769b Compare August 4, 2023 14:41
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Copy link
Contributor

@garyschulte garyschulte left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚢

Signed-off-by: garyschulte <garyschulte@gmail.com>
Signed-off-by: garyschulte <garyschulte@gmail.com>
@garyschulte
Copy link
Contributor

garyschulte commented Aug 21, 2023

Took the liberty of pushing a commit to rename dataGas to blobGas in the Transaction interface. I would have just commented, but I had already resolved the merge conflict from the upstream PR that renamed dataGas to blobGas and the github UI did not offer a way to change the Transaction interface since it wasn't part of the merge conflict.

Copy link
Contributor

@shemnon shemnon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

APIs are forever, and I am hesitant to add fields that can be derived from other fields in an effort to keep the API surface as small as possible. That was the point of the separate datatypes module. Unless there is a compelling "This use case requires X" I would rather keep those derived data methods out of the interface.

4844 and access list fields are good, as there are no other ways to get at that data.

*
* @param out the output to write the transaction to
*/
void writeTo(final RLPOutput out);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One of my goals is to remove the RLP dependency from the datatypes module.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've replaced it with a new generic method Bytes encoded();: see here

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After diving into what it would take to remove it I'm thinking it should come back.

Because the CREATE operation depends on the RLP definitions to get the contract addresses the EVM module will still require the RLP, it's not just coming into EVM as a tag-along of datatypes. So removing RLP from datatypes is not really needed, as some of the RLP dependencies once it is determined they should stay are best handled where they are at design-wise.

For performance we will want to use a passed in RLPOutput object as well.

…d through other means. Added new method encoded to return the encoded tx in Bytes instead of RLPOutput

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
@daniellehrner
Copy link
Contributor Author

@shemnon I've adressed the changes, could you please review again?

Copy link
Contributor

@shemnon shemnon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Optional: - move bytes encoded() to void writeTo(final RLPOutput out);

@daniellehrner daniellehrner merged commit 19c989a into hyperledger:main Aug 22, 2023
8 checks passed
@daniellehrner daniellehrner deleted the feat/issue-5731/update-transaction-interface branch August 22, 2023 22:19
garyschulte added a commit to garyschulte/besu that referenced this pull request Aug 28, 2023
* added missing methods to transaction interface, created new AccessListEntry interface to add it to the transaction interface

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* CHANGELOG.md entry

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* added missing javadoc entry

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Update datatypes/src/main/java/org/hyperledger/besu/datatypes/Transaction.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Update datatypes/src/main/java/org/hyperledger/besu/datatypes/Transaction.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Make smart contract permissioning features work with london fork (hyperledger#5727)

* Make smart contract permissioning features work with london fork

Override the transactionSimulator's default TransactionValidationParams with one that allows for exceeding the account balance (which effectively zeros the baseFee).
This mimics the way that eth_estimateGas and eth_call are implemented.
Similar change to hyperledger#5277

Update ATs to use londonBlock (existing genesis allocs necessitate zeroBaseFee as well)

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

* changelog
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

---------

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Correctly cache the TransactionValidator instance on creation (hyperledger#5726)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Reference tests 12.3 (hyperledger#5733)

Update Reference Tests to 12.3
* fix decoding error
* add ignored field
* update module

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Return all not selected transactions, not only invalid ones. (hyperledger#5711)

This way it is possible for the caller to have more data about the selection
process.

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Address import performance issues (hyperledger#5734)

* ensure we are on a single tuweni version
* factor out an unneeded concatenate

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Add type to PendingTransactionDetail (hyperledger#5729)

* add type

* update changelog

---------

Signed-off-by: George Tebrean <george@web3labs.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Migrate to blobGas in execution-spec-tests (hyperledger#5745)

Execution-spec-tests migrated from DataGas to BlobGas and checks for its
inclusion in tests now. Add needed support.

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* remove AccessListEntry interface and move its class to the datatypes module

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* add missing cost methods to interface, add method to get RLP of transaction

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* updating hash with updated reference tests

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* added missing javadocs

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* fixed compiler errors in integration tests

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* retro blobGas name change into Transaction interface

Signed-off-by: garyschulte <garyschulte@gmail.com>

* removed methods from transaction interface which values can be derived through other means. Added new method encoded to return the encoded tx in Bytes instead of RLPOutput

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

---------

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: George Tebrean <george@web3labs.com>
Signed-off-by: garyschulte <garyschulte@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: Simon Dudley <simon.dudley@consensys.net>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Co-authored-by: George Tebrean <99179176+gtebrean@users.noreply.github.com>
Co-authored-by: garyschulte <garyschulte@gmail.com>
garyschulte added a commit to garyschulte/besu that referenced this pull request Aug 28, 2023
* added missing methods to transaction interface, created new AccessListEntry interface to add it to the transaction interface

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* CHANGELOG.md entry

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* added missing javadoc entry

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Update datatypes/src/main/java/org/hyperledger/besu/datatypes/Transaction.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Update datatypes/src/main/java/org/hyperledger/besu/datatypes/Transaction.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Make smart contract permissioning features work with london fork (hyperledger#5727)

* Make smart contract permissioning features work with london fork

Override the transactionSimulator's default TransactionValidationParams with one that allows for exceeding the account balance (which effectively zeros the baseFee).
This mimics the way that eth_estimateGas and eth_call are implemented.
Similar change to hyperledger#5277

Update ATs to use londonBlock (existing genesis allocs necessitate zeroBaseFee as well)

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

* changelog
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

---------

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Correctly cache the TransactionValidator instance on creation (hyperledger#5726)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Reference tests 12.3 (hyperledger#5733)

Update Reference Tests to 12.3
* fix decoding error
* add ignored field
* update module

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Return all not selected transactions, not only invalid ones. (hyperledger#5711)

This way it is possible for the caller to have more data about the selection
process.

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Address import performance issues (hyperledger#5734)

* ensure we are on a single tuweni version
* factor out an unneeded concatenate

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Add type to PendingTransactionDetail (hyperledger#5729)

* add type

* update changelog

---------

Signed-off-by: George Tebrean <george@web3labs.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Migrate to blobGas in execution-spec-tests (hyperledger#5745)

Execution-spec-tests migrated from DataGas to BlobGas and checks for its
inclusion in tests now. Add needed support.

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* remove AccessListEntry interface and move its class to the datatypes module

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* add missing cost methods to interface, add method to get RLP of transaction

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* updating hash with updated reference tests

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* added missing javadocs

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* fixed compiler errors in integration tests

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* retro blobGas name change into Transaction interface

Signed-off-by: garyschulte <garyschulte@gmail.com>

* removed methods from transaction interface which values can be derived through other means. Added new method encoded to return the encoded tx in Bytes instead of RLPOutput

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

---------

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: George Tebrean <george@web3labs.com>
Signed-off-by: garyschulte <garyschulte@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: Simon Dudley <simon.dudley@consensys.net>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Co-authored-by: George Tebrean <99179176+gtebrean@users.noreply.github.com>
Co-authored-by: garyschulte <garyschulte@gmail.com>
garyschulte added a commit to garyschulte/besu that referenced this pull request Aug 28, 2023
* added missing methods to transaction interface, created new AccessListEntry interface to add it to the transaction interface

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* CHANGELOG.md entry

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* added missing javadoc entry

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Update datatypes/src/main/java/org/hyperledger/besu/datatypes/Transaction.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Update datatypes/src/main/java/org/hyperledger/besu/datatypes/Transaction.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Make smart contract permissioning features work with london fork (hyperledger#5727)

* Make smart contract permissioning features work with london fork

Override the transactionSimulator's default TransactionValidationParams with one that allows for exceeding the account balance (which effectively zeros the baseFee).
This mimics the way that eth_estimateGas and eth_call are implemented.
Similar change to hyperledger#5277

Update ATs to use londonBlock (existing genesis allocs necessitate zeroBaseFee as well)

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

* changelog
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

---------

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Correctly cache the TransactionValidator instance on creation (hyperledger#5726)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Reference tests 12.3 (hyperledger#5733)

Update Reference Tests to 12.3
* fix decoding error
* add ignored field
* update module

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Return all not selected transactions, not only invalid ones. (hyperledger#5711)

This way it is possible for the caller to have more data about the selection
process.

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Address import performance issues (hyperledger#5734)

* ensure we are on a single tuweni version
* factor out an unneeded concatenate

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Add type to PendingTransactionDetail (hyperledger#5729)

* add type

* update changelog

---------

Signed-off-by: George Tebrean <george@web3labs.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Migrate to blobGas in execution-spec-tests (hyperledger#5745)

Execution-spec-tests migrated from DataGas to BlobGas and checks for its
inclusion in tests now. Add needed support.

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* remove AccessListEntry interface and move its class to the datatypes module

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* add missing cost methods to interface, add method to get RLP of transaction

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* updating hash with updated reference tests

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* added missing javadocs

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* fixed compiler errors in integration tests

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* retro blobGas name change into Transaction interface

Signed-off-by: garyschulte <garyschulte@gmail.com>

* removed methods from transaction interface which values can be derived through other means. Added new method encoded to return the encoded tx in Bytes instead of RLPOutput

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

---------

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: George Tebrean <george@web3labs.com>
Signed-off-by: garyschulte <garyschulte@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: Simon Dudley <simon.dudley@consensys.net>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Co-authored-by: George Tebrean <99179176+gtebrean@users.noreply.github.com>
Co-authored-by: garyschulte <garyschulte@gmail.com>
Signed-off-by: garyschulte <garyschulte@gmail.com>
eum602 pushed a commit to lacchain/besu that referenced this pull request Nov 3, 2023
* added missing methods to transaction interface, created new AccessListEntry interface to add it to the transaction interface

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* CHANGELOG.md entry

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* added missing javadoc entry

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Update datatypes/src/main/java/org/hyperledger/besu/datatypes/Transaction.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Update datatypes/src/main/java/org/hyperledger/besu/datatypes/Transaction.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Make smart contract permissioning features work with london fork (hyperledger#5727)

* Make smart contract permissioning features work with london fork

Override the transactionSimulator's default TransactionValidationParams with one that allows for exceeding the account balance (which effectively zeros the baseFee).
This mimics the way that eth_estimateGas and eth_call are implemented.
Similar change to hyperledger#5277

Update ATs to use londonBlock (existing genesis allocs necessitate zeroBaseFee as well)

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

* changelog
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

---------

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Correctly cache the TransactionValidator instance on creation (hyperledger#5726)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Reference tests 12.3 (hyperledger#5733)

Update Reference Tests to 12.3
* fix decoding error
* add ignored field
* update module

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Return all not selected transactions, not only invalid ones. (hyperledger#5711)

This way it is possible for the caller to have more data about the selection
process.

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Address import performance issues (hyperledger#5734)

* ensure we are on a single tuweni version
* factor out an unneeded concatenate

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Add type to PendingTransactionDetail (hyperledger#5729)

* add type

* update changelog

---------

Signed-off-by: George Tebrean <george@web3labs.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Migrate to blobGas in execution-spec-tests (hyperledger#5745)

Execution-spec-tests migrated from DataGas to BlobGas and checks for its
inclusion in tests now. Add needed support.

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* remove AccessListEntry interface and move its class to the datatypes module

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* add missing cost methods to interface, add method to get RLP of transaction

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* updating hash with updated reference tests

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* added missing javadocs

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* fixed compiler errors in integration tests

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* retro blobGas name change into Transaction interface

Signed-off-by: garyschulte <garyschulte@gmail.com>

* removed methods from transaction interface which values can be derived through other means. Added new method encoded to return the encoded tx in Bytes instead of RLPOutput

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

---------

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: George Tebrean <george@web3labs.com>
Signed-off-by: garyschulte <garyschulte@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: Simon Dudley <simon.dudley@consensys.net>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Co-authored-by: George Tebrean <99179176+gtebrean@users.noreply.github.com>
Co-authored-by: garyschulte <garyschulte@gmail.com>
NickSneo pushed a commit to NickSneo/besu that referenced this pull request Nov 12, 2023
* added missing methods to transaction interface, created new AccessListEntry interface to add it to the transaction interface

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* CHANGELOG.md entry

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* added missing javadoc entry

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Update datatypes/src/main/java/org/hyperledger/besu/datatypes/Transaction.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Update datatypes/src/main/java/org/hyperledger/besu/datatypes/Transaction.java

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Make smart contract permissioning features work with london fork (hyperledger#5727)

* Make smart contract permissioning features work with london fork

Override the transactionSimulator's default TransactionValidationParams with one that allows for exceeding the account balance (which effectively zeros the baseFee).
This mimics the way that eth_estimateGas and eth_call are implemented.
Similar change to hyperledger#5277

Update ATs to use londonBlock (existing genesis allocs necessitate zeroBaseFee as well)

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

* changelog
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

---------

Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Correctly cache the TransactionValidator instance on creation (hyperledger#5726)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Reference tests 12.3 (hyperledger#5733)

Update Reference Tests to 12.3
* fix decoding error
* add ignored field
* update module

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Return all not selected transactions, not only invalid ones. (hyperledger#5711)

This way it is possible for the caller to have more data about the selection
process.

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Address import performance issues (hyperledger#5734)

* ensure we are on a single tuweni version
* factor out an unneeded concatenate

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Add type to PendingTransactionDetail (hyperledger#5729)

* add type

* update changelog

---------

Signed-off-by: George Tebrean <george@web3labs.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* Migrate to blobGas in execution-spec-tests (hyperledger#5745)

Execution-spec-tests migrated from DataGas to BlobGas and checks for its
inclusion in tests now. Add needed support.

Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* remove AccessListEntry interface and move its class to the datatypes module

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* add missing cost methods to interface, add method to get RLP of transaction

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* updating hash with updated reference tests

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* added missing javadocs

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* fixed compiler errors in integration tests

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

* retro blobGas name change into Transaction interface

Signed-off-by: garyschulte <garyschulte@gmail.com>

* removed methods from transaction interface which values can be derived through other means. Added new method encoded to return the encoded tx in Bytes instead of RLPOutput

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>

---------

Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Signed-off-by: George Tebrean <george@web3labs.com>
Signed-off-by: garyschulte <garyschulte@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: Simon Dudley <simon.dudley@consensys.net>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Co-authored-by: George Tebrean <99179176+gtebrean@users.noreply.github.com>
Co-authored-by: garyschulte <garyschulte@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add missing methods to Transaction interface
7 participants