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

Remove the ability to cancel for recipients #710

Merged
merged 8 commits into from
Oct 18, 2023

Conversation

andreivladbrg
Copy link
Member

Addresses #709 and #701

Depends on #705

Given that the only hook that the sender could've implemented was onStreamCanceled, I managed to remove it

refactor: remove recipient from cancel event
test: update tests accordingly
test: update precompiles bytecode
feat: remove sender's hook
test: update tests accordingly
docs: refine explanatory comments
refactor: reorder parameters in events
PaulRBerg
PaulRBerg previously approved these changes Oct 18, 2023
Copy link
Member

@PaulRBerg PaulRBerg left a comment

Choose a reason for hiding this comment

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

looks good, left a few comments below that I have addressed in my commit. Feel free to re-review and then we can merge this.

src/interfaces/ISablierV2Lockup.sol Show resolved Hide resolved
src/interfaces/ISablierV2Lockup.sol Show resolved Hide resolved
@andreivladbrg
Copy link
Member Author

I've seen that you removed indexed from stream id in the cancel event. Would it have been better to keep the id as indexed and not add it to recipient?

@PaulRBerg
Copy link
Member

Yes I've removed it because I've realized that it does not make sense to have indexed stream ids for cancel events.

Cancelations are singular events. Filtering by a stream id will yield only one particular event.

@andreivladbrg
Copy link
Member Author

Cancelations are singular events

Fair enough.

PR looks good on my side, can you approve it?

Copy link
Member

@PaulRBerg PaulRBerg left a comment

Choose a reason for hiding this comment

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

yep looks good.

@andreivladbrg
Copy link
Member Author

I see that the fork tests keep on failing:

Locally never faced this issue, it may be from foundry or the key from secrets, would you mind updating it @PaulRBerg ?

@PaulRBerg
Copy link
Member

Done, should work now

@andreivladbrg andreivladbrg merged commit edf3609 into main Oct 18, 2023
9 checks passed
@PaulRBerg PaulRBerg deleted the feat/disable-sender-to-cancel branch October 18, 2023 13:02
andreivladbrg added a commit that referenced this pull request Oct 20, 2023
* docs: delete wikis

* test: polish precompiles tests

build: add branch for solady in ".gitmodules"

* docs: polish deployments section

* docs: polish security program

* docs: polish license section

* chore: remove Codecov token

* refactor: update gas snapshot

* build: change version to 1.0.0-rc.0

chore: update "repository" in "package.json"

* refactor: stringify create2 salts

* refactor: rename deployer to broadcaster

feat: use $ETH_FROM as broadcaster

* chore: fix rpc url for gnosis chain

* docs: refine license section

* test: update createSelectFork

* chore: use solhint-community

build: add "solhint-community" node.js dep
build: remove "solhint" node.js

* build: bump solady

* build: release v1.0.0

* test: remove duplicate bounds

* docs: mention audits in the bug bounty

* chore: say token streaming

* test: rename "basic" to "concrete"

* test: order imports correctly

* perf: use vars.sablierAddress

Closes #607

* perf: define "vars.asset" as "address"

Closes #608

* fix: data URI scheme

test: update hard-coded values
test: use LibString to remove data URI prefix

Closes #616

* test: update Precompiles bytecodes

* docs: roll v1.0.1

docs: add CHANGELOG

* docs: update recommended install branch

* chore: add missing modifier in test_SetFlashFee test

* Add Contribution info in README.md

* test: convert 'flashFee' integration tests to unit tests

* test: convert 'setFlashFee' integration tests to unit tests

* test: add 'Comptroller' setup for concrete unit test

* test: update 'flashFee' unit-test to inherit from Comptroller

* test: update 'setFlashFee' unit-test to inherit from Comptroller

* style: run prettier on README

* test: deploy correctly precompiled comptroller

* feat: deploy core 2

* test: change default profile value

* Fix error when importing @prb/math packages when installed via npm (#648)

* fix: address #646

* chore: update remapping in slither config

---------

Co-authored-by: Paul Razvan Berg <[email protected]>

* test: fix string parameter

* docs: roll v1.0.2

* docs: update recommended remapping

* docs: add "Architecture" in README

closes #551

* perf: dry "isCold" and "isWarm"

Closes #610

* docs: fix nitpicks

Closes #611

* test: use "given" keyword in branching trees (#656)

* refactor: using Given keyword in branching Trees (#641)

* Using Given keyword on the branching trees

(cherry picked from commit d365705)

* test: use "it" for test nodes

---------

Co-authored-by: Paul Razvan Berg <[email protected]>

test: rename to "givenCallerAdmin"

test: use given keyword in the integration branching trees

test: use given keyword for modifiers for fuzz tests

test: use given keyword in test contracts and brancing trees

test: refactor test function names to use Given and When

test: refactor test function names to use Given and When

refactor: reverting in dev comments

refactor: rename test function names to cleaner form

test: polish branching trees

test: improve "mapSymbol" tree
test: improve "safeAssetDecimals" tree
test: improve "safeAssetSymbol" tree

* refactor: givenWithdrawableAmountNotZero modifier name

* test: use "when" for time-related branches

* test: address feedback in tree wording branch

* test: polish branching trees

* fix: remove duplicated branch in createWithMilestones.tree

---------

Co-authored-by: Shub <[email protected]>
Co-authored-by: andreivladbrg <[email protected]>
Co-authored-by: Alexander González <[email protected]>

* docs: mention audits

* docs: add Discord badge

* test: update comment

* fix: fix incorrect spec in isStream.tree (#677)

* test: use "given" instead of "when" (#678)

* test: use "given" instead of "when"

* test: correct "given" branches

---------

Co-authored-by: andreivladbrg <[email protected]>

* ci: cache testing contracts (#681)

* Fix Github workflow build cache

* ci: add "out" dir in github cache

* Update .github/workflows/ci.yml

* Update .github/workflows/ci.yml

* Update .github/workflows/ci-deep.yml

---------

Co-authored-by: Lumyo <[email protected]>
Co-authored-by: Paul Razvan Berg <[email protected]>

* feat: add transferrable bool field for stream NFT

* feat: override _beforeTokenTransfer for Stream NFT and test cases

* test: Add test for NFT transfer functionality

* test: add more testing and resolve #669

* perf: dry "_beforeTokenTransfer"

refactor: remove "canStreamTransfer"
refactor: remove double "r" in "transferrable"
refactor: simplify implementation
test: allow non-transferable streams in invariant tests
test: dry tests for "isTransferable"
test: improve function and test names

* test: add a new branch to burn.tree

* test: polish burn tests

* test: update precompiles

* feat: implement _afterTokenTransfer to emit an event

* test: expect MetadataUpdate event to be emitted

* test: update Precompiles bytecode

* test: transferFrom function

* chore: add commented parameters in ERC721 hooks

* docs: improve writing in NatSpec

test: fix typos

* build: upgrade solidity version to 0.8.21 (#688)

* build: upgrade solidity version to 0.8.21

* build: bump the pragma back to >=0.8.19

* build: show unproved and unsupported SMTChecker

* refactor: update gas snapshot

---------

Co-authored-by: Paul Razvan Berg <[email protected]>

* refactor: change the streamed amount to total amount in NFT SVG (#692)

* refactor: change the streamed card from NFT SVG with total

build: update shell scripts accordingly
test: update tests accordingly

* chore: say "total amount" in comments for total card

* refactor: change the "Total" from NFT SVG with "Amount"

build: update shell script accordingly
test: update tests accordingly

* chore: fix typo in shell script

* refactor: dry-fy withdraw function

refactor: dry-fy renounce function

* build: remove OZ from peer dependencies

* docs: roll 1.1.0 (#693)

* docs: roll 1.1.0

* docs: update changelog

---------

Co-authored-by: Paul Razvan Berg <[email protected]>

* chore: fix typo in DataTypes

* docs: correct github hyperlink

docs: order change logs chronologically

* docs: update changelog

* build: switch to "solhint"

chore: disable Solhint rules

* refactor: capitalize immutable variables  (#700)

* refactor: capitalize immutable variables in NoDelegateCall

build: remove "immutable-vars-naming" from solhint file

* test: make asset and holder immutable in fork tests

test: capitalize constans in fork tests

* docs: polish background description

* chore: remove "cbor_metadata"

* perf: optimize withdraw function

* Remove the ability to cancel for recipients (#710)

* feat: remove ability to cancel for recipient

feat: remove sender's hook
test: update tests accordingly

* feat: emit asset in cancel and withdraw events

refactor: remove recipient from cancel event
test: update tests accordingly
test: update precompiles bytecode

* chore: update gas snapshot

* test: update Precompiles bytecode

* docs: include recipient disable to cancel in changelog

* refactor: add "recipient" in cancel event

docs: refine explanatory comments
refactor: reorder parameters in events

* test: update Precompiles bytecode

* chore: add explantory comment

---------

Co-authored-by: Paul Razvan Berg <[email protected]>

* test: add DeployOptimized utils contracts (#712)

* test: add DeployOptimized utils contracts

test: move and rename functions from Base_Test

* docs: fix typo in comments

* test: rename deploy optimized functions

---------

Co-authored-by: Paul Razvan Berg <[email protected]>

* style: fix Prettier formatting issue

---------

Co-authored-by: Paul Razvan Berg <[email protected]>
Co-authored-by: andreivladbrg <[email protected]>
Co-authored-by: Anton Cheng <[email protected]>
Co-authored-by: Prince Allwin <[email protected]>
Co-authored-by: PraneshASP <[email protected]>
Co-authored-by: Andrei Vlad Birgaoanu <[email protected]>
Co-authored-by: Shub <[email protected]>
Co-authored-by: Alexander González <[email protected]>
Co-authored-by: Lumyo <[email protected]>
andreivladbrg added a commit that referenced this pull request Dec 15, 2023
* feat: remove ability to cancel for recipient

feat: remove sender's hook
test: update tests accordingly

* feat: emit asset in cancel and withdraw events

refactor: remove recipient from cancel event
test: update tests accordingly
test: update precompiles bytecode

* chore: update gas snapshot

* test: update Precompiles bytecode

* docs: include recipient disable to cancel in changelog

* refactor: add "recipient" in cancel event

docs: refine explanatory comments
refactor: reorder parameters in events

* test: update Precompiles bytecode

* chore: add explantory comment

---------

Co-authored-by: Paul Razvan Berg <[email protected]>
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.

2 participants