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

Meta Issue: 4.4 #2836

Closed
1 task done
Amxx opened this issue Aug 24, 2021 · 9 comments
Closed
1 task done

Meta Issue: 4.4 #2836

Amxx opened this issue Aug 24, 2021 · 9 comments

Comments

@Amxx Amxx changed the title Meta Issue: Next version Meta Issue: 4.4 Aug 24, 2021
@k06a
Copy link
Contributor

k06a commented Sep 2, 2021

Do you consider index recovery from #2815 or non-ordered merkle tree proof validation?

@sabotagebeats
Copy link

@Amxx let me know if i can help with #2701 and #2762

@Amxx
Copy link
Collaborator Author

Amxx commented Sep 11, 2021

@Amxx let me know if i can help with #2701 and #2762

You can track the work in progress on this branch: https://github.com/Amxx/openzeppelin-contracts/tree/feature/paymentsplitter/contracts/finance

I understand your desire to see this issue address, but we want to make sure we do it right. In particular, there are a lot of challenges to work around, and difficult choices to make.

In particular, we would like

  • A single contract supporting multiple assets tokens.
  • The ability to reallocate payment shares dynamically, with moving of shares only affecting future payments.

Both feature are easilisy implementable alone, but the combination feels insolvable.

@sabotagebeats
Copy link

sabotagebeats commented Sep 11, 2021

In particular, we would like

  • A single contract supporting multiple assets tokens.

This one seems pretty easy, the code I added in the comment does this. If there is a registration array, multiple tokens could be rescued in one call by looping the array.

  • The ability to reallocate payment shares dynamically, with moving of shares only affecting future payments.

This can be accomplished if the reallocation calls release on all ether in the contract, and rescue all tokens, before the reallocation occurs. The addresses of the tokens to be released must be added in a array somewhere I'm the contract. There's not a way for the contract to be able to pull all the tokens balances that it holds that I know of, without calling balances on the original contracts, which it won't know about unless they're added to a registry array. Unless you know a better way?

Additionally need to be careful too because then the recipients are trusting the reallocation role holder, so it would be best to use a gnosis safe multisig to hold that role and control reallocation

@frangio frangio pinned this issue Sep 13, 2021
@frangio
Copy link
Contributor

frangio commented Oct 21, 2021

The first release candidate has been released. It will be at least 3 weeks before the final release is published. We will be announcing more details about the timeline later.

@whitecow
Copy link

Any update on release date?

@Amxx
Copy link
Collaborator Author

Amxx commented Nov 12, 2021

@whitecow 4.4 release candidate is currently available. Actual release should be out in 1 to 2 weeks

@frangio
Copy link
Contributor

frangio commented Nov 16, 2021

A new release candidate is available with a few bug fixes.

A release candidate for the upgradeable contracts is available as well.

@frangio
Copy link
Contributor

frangio commented Nov 25, 2021

This release is out now! Short announcement in the forum.

This release was a little slow because it was the first time we formalized a longer Open Review Period and were trying to get the bug bounty set up on time. Thanks for the patience. Things will be faster next time!

@frangio frangio closed this as completed Nov 25, 2021
@frangio frangio unpinned this issue Nov 25, 2021
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

No branches or pull requests

5 participants