-
Notifications
You must be signed in to change notification settings - Fork 74
refactor: add "Lockup" prefix #271
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
Conversation
8e791d2 to
56ecf6c
Compare
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.
The constructor is not tested in SablierV2(MAX_FEE and comptroller).
we can adjust the ISablierV2 to fit the new common functions between all contracts. Interfaces can be updated even retroactively.
If we plan on doing this, it would be better to rename the actual ISablierV2 to something like ISablierV2Administrative, to be able to inherit it in the future common "ISablierV2" interface, and implicitly in the payroll as well.
if you don't like the name of the LockupCreateAmounts struct (as I don't now), don't worry, I have refactored it in a later PR (see TODO).
Yes, I don't like it either. It is also redundant to have a LockupAmounts in the LockupLinearStream and LockupProStream structs.
5eff3b9 to
d30a8c5
Compare
|
The constructor of
I'm not against this but finding a good name won't be easy - in fact, this is why I used
I added that struct as part of my painstaking effort to get rid of StackTooDeep in #220 - so it is not redundant, not at all. The amounts struct also provides type encapsulation - i.e. grouping of similar struct fields under the same "roof". |
I was just referring to the names. |
|
Oh, I see, thanks for clarifying! There's a reason why I used the We may end up never needing another |
|
@andreivladbrg let me know if the PR is good to be merged now. I have addressed all of your comments, except for those related to the names of the scripts and CI workflows, which I have fixed in #284 (re-fixing them here would tigger a cascade of git conflicts). |
|
@andreivladbrg, just so you know, I tested all the values initialized at construction time in PR #284. |
refactor: add separators in "Events" library refactor: be more specific in event names refactor: separate lockup-specific features from sablier v2 configs test: separate "sablierV2" test contract in "sablierV2" and "lockup" test: remove "Test" suffix from file names test: rename all test contracts to have "Something_Test" format test: rename "sablier-v2" directory to "lockup"
chore: do not git ignore all html files refactor: override "ERC721" and "IERC721Metadata" in "tokenURI" test: add tests for "tokenURI"
ci: store artifacts for SablierV2Lockup ci: update contract names in artifact storage list
that is, in the "_cancel" and the "_cancelMultiple" tests
Implements #261.
As discussed and agreed in #232, this PR adds the
Lockupprefix to all relevant entities - contracts, structs, and events.I ended up separating the lockup streaming logic from the administrative functions of the protocol because of one simple reason - it's a nice developer experience for the
ISablierV2Lockupinterface to contain only those functions that can be called by end users (as opposed to also containing such functions assetComptrollerwhich are admin-protected).Later on - if and when we implement the payroll contract - we can adjust the
ISablierV2to fit the new common functions between all contracts. Interfaces can be updated even retroactively.Update - if you don't like the name of the
LockupCreateAmountsstruct (as I don't now), don't worry, I have refactored it in a later PR (see #284).