-
Notifications
You must be signed in to change notification settings - Fork 11.9k
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
Added ERC223 feature #266
Added ERC223 feature #266
Conversation
2. Allows users to send their tokens anywhere with one function `transfer`. No difference between is the receiver a contract or not. No need to learn how token contract is working for regular user to send tokens. | ||
3. Allows contract developers to handle incoming token transactions. | ||
4. ERC223 `transfer` to contract consumes 2 times less gas than ERC20 `approve` and `transferFrom` at receiver contract. | ||
5. Allows to deposit tokens intor contract with a single transaction. Prevents extra blockchain bloating. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
intor
to into
Fixed typo according to review from DavidKnott. More info: OpenZeppelin/openzeppelin-contracts#266 (comment)
@ProphetDaniel This looks like it'll be a great addition! Could you explain how having 2 |
@DavidKnott this transfer functions would have different signatures. Function calls in the Ethereum Virtual Machine are specified by the first four bytes of data sent with a transaction. These 4-byte signatures are defined as the first four bytes of the Keccak hash (SHA3) of the canonical representation of the function signature. |
Thank you for answering him @Dexaran! |
We have a more complex implementation we did at https://github.com/aragon/erc23 that has the |
@izqui , Indeed tokenPayable modifier is very interesting. Can you make a PR to this feature branch? |
Another point to be considered is the cost for the added complexity the tokenPayable modifyer adds. Anyway I think it a good practice to implement first the basic ERC223 token standard. And later on the more complex implementation that adds features like the tokenPayable modifyer. |
@izqui I like your It looks like your |
@ProphetDaniel this still needs rebasing to be mergeable. |
@ProphetDaniel still needs to be rebased correctly. Remember not to do a |
Closing as stale. Furthermore, our implementation shouldn't be a clone of the reference implementation, but written from scratch. |
Please reopen this @frangio . ERC223 tokens are necessary for storing tokens in my contract. I am building my token around the ERC223 for payment solutions and anti fraud using smart contracts between 2 people. I think people would like a safe way to use tokens such as these ones. |
Hi @kylerschin. We appreciate your input. This PR was closed for different reasons. Please refer to #346, we'd love to have your opinion over there. |
It is quite amusing this specific actitude @frangio.
@kylerschin, I tested this implementation with truffle tests and LETH wallet. More tests can be added though. One of the important questions is if it will work flawlessly with ERC20 wallets that could be awaiting ERC20 events for example. I took special care with that for the event triggering strategy. A great real life token wallet with which I have also tested is Inzhoop LETH. |
Fixed typo according to review from DavidKnott. More info: OpenZeppelin/openzeppelin-contracts#266 (comment)
Fixed typo according to review from DavidKnott. More info: OpenZeppelin/openzeppelin-contracts#266 (comment)
Fixed typo according to review from DavidKnott. More info: OpenZeppelin/openzeppelin-contracts#266 (comment)
Fixed typo according to review from DavidKnott. More info: OpenZeppelin/openzeppelin-contracts#266 (comment)
No description provided.