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 EIP: ETH transfers emit a log #8575

Open
wants to merge 7 commits into
base: master
Choose a base branch
from
Open

Add EIP: ETH transfers emit a log #8575

wants to merge 7 commits into from

Conversation

vbuterin
Copy link
Contributor

All ETH-transferring calls emit a log.

All ETH-transferring calls emit a log.
@vbuterin vbuterin requested a review from eth-bot as a code owner May 17, 2024 12:10
@github-actions github-actions bot added c-new Creates a brand new proposal s-draft This EIP is a Draft t-core labels May 17, 2024
@eth-bot
Copy link
Collaborator

eth-bot commented May 17, 2024

File EIPS/eip-7708.md

Requires 1 more reviewers from @axic, @g11tech, @gcolvin, @lightclient, @SamWilsn

@eth-bot eth-bot added e-consensus Waiting on editor consensus e-review Waiting on editor to review labels May 17, 2024
@eth-bot eth-bot changed the title New EIP: ETH-transferring calls emit a log Add EIP: ETH-transferring calls emit a log May 17, 2024
@github-actions github-actions bot added the w-ci Waiting on CI to pass label May 17, 2024
Copy link

The commit 136f035 (as a parent of 3668b6f) contains errors.
Please inspect the Run Summary for details.

@github-actions github-actions bot removed the w-ci Waiting on CI to pass label May 17, 2024
@eth-bot eth-bot changed the title Add EIP: ETH-transferring calls emit a log Add EIP: ETH transfers emit a log May 17, 2024
EIPS/eip-9999.md Outdated Show resolved Hide resolved
EIPS/eip-9999.md Outdated
title: ETH transfers emit a log
description: All ETH transfers emit a log
author: Vitalik Buterin (@vbuterin), Peter Davies (@petertdavies)
discussions-to: https://ethereum-magicians.org/t/eip-all-value-transferring-calls-create-a-log/20034
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
discussions-to: https://ethereum-magicians.org/t/eip-all-value-transferring-calls-create-a-log/20034
discussions-to: https://ethereum-magicians.org/t/eip-7708-eth-transfers-emit-a-log/20034

Copy link

@Hawthorne001 Hawthorne001 left a comment

Choose a reason for hiding this comment

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

tests

@finewhitechic
Copy link

All ETH-transferring calls emit a log.

I want to make a transfer with my tokens. To borrow usd. I'm not sure what to do or how to go by doing it???

@Hawthorne001
Copy link

import azure.functions as func
from elasticsearch import Elasticsearch

Client initialization

client = Elasticsearch(
cloud_id="deployment-name:ABCD...",
api_key=...
)

def main(request: func.HttpRequest) -> func.HttpResponse:
# Use the client
client.search(index=..., query={"match_all": {}})

from elasticsearch import Elasticsearch

Client initialization

client = Elasticsearch(
cloud_id="deployment-name:ABCD...",
api_key=...
)

def main(request):
# Use the client
client.search(index=..., query={"match_all": {}})

C:\Projects\Code\WanPathFileShareSystem-v2-QA\MyWorkDrive.Solutions.Client\WanPath.WopiAuth.Account.LoginWopi.btnStep2_Click(Object sender, EventArgs e) in C:\Projects\Code\WanPathFileShareSystem-v2-QA\MyWorkDrive.Solutions.Client\WanPath.WopiAuth\Account\LoginWopi.aline 1:4
---> 1 C:\Projects\Code\WanPathFileShareSystem-v2-QA\MyWorkDrive.Solutions.Client\WanPath.WopiAuth\Account\LoginWopi.aspx.cs

   2 WanPath.WopiAuth.Account.LoginWopi.btnStep2_Click(Object sender, EventArgs e) in C:\Projects\Code\WanPathFileShareSystem-v2-QA\MyWorkDrive.Solutions.Client\WanPath.line 

vbuterin and others added 2 commits May 20, 2024 14:34
Co-authored-by: Andrew B Coathup <28278242+abcoathup@users.noreply.github.com>
EIPS/eip-7708.md Outdated Show resolved Hide resolved
@holic
Copy link

holic commented May 30, 2024

my kingdom for a log on CREATE as well

@cstoneham
Copy link

There's nothing I desire more than this.

@karalabe
Copy link
Member

karalabe commented May 31, 2024

Would emitting these new logs be free or incur the default log emit costs? Asking because if it costs something, then gas accounting can get a bit funky in certain places (e.g. if I want to emit a log with the total fees paid, which depend on emitting the log itself, before emitting the log itself :P)

@charlieflipside
Copy link

charlieflipside commented May 31, 2024

All ETH-transferring calls emit a log.

Would emphasize non-traditional transfers need (possibly duplicative) logs as well to ensure the UX assumptions of transfers holds. Adding ETH transfer logs without these special cases handled will result in ethereum data providers to be inundated with faulty assumptions from their users (most specifically, net transfers != ETH balance at a block height)

ETH Gas payments should also emit event that corresponds with a transfer to 0x0000...0000
emit gas_paid(user, amt)
emit transfer(from user, to 0x0000...0000)

ETH beacon chain rewards should emit
emit beacon_mint (receiver, amt)
emit transfer(from 0x000...0000, to user)

contract self destructs should emit 2 transfers
emit self_destruct (contract, to, amt)
emit transfer(from contract, to 0x000...0000)
emit transfer(from 0x000....0000, to receiver)

Data providers currently use traces to identify ETH transfers, so logs would be a small quality of life improvement if done well, but could actually cause more headaches if special cases (like self destruct bypassing contract payable() status) are not handled.

@karalabe
I think they'd have to be free, generated as a byproduct of the state change; see above gas_paid() log note. EIP-1559 becomes relevant as well to differentiate burn %.

@fergmolina
Copy link

agree with @charlieflipside . it should include fees payments and block rewards. My only concern here is that this change is going to almost duplicate the amount of logs per day: Dune Dashboard - EIP-7708

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c-new Creates a brand new proposal e-consensus Waiting on editor consensus e-review Waiting on editor to review s-draft This EIP is a Draft t-core
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

10 participants