What happened to the TokenVesting contract?

I see it was removed from the repo:

and there’s discussion about adding features:

It seems the old functionality was nuked and the improvement discussion died on the vine

1 Like

Hi @NoahMarconi,

Welcome to the community :wave:

As you saw, TokenVesting was removed and there hasn’t been discussion for over a year on this, also see: Is TokenVesting in OpenZeppelin Contracts production-ready?

Depending on your use case, you could use TokenTimelock

When creating token time locks or vesting you should consider prevention strategies for: Bypassing Smart Contract Timelocks

Hi @NoahMarconi,

Just wanted to check if you had any more questions.

Thanks, no additional questions just wanted to put it out there that a curated version from OZ would be useful for vesting.

We forked off the old version for the OpenGrants.com repo and had our edits audited. I think Dan https://github.com/dan13ram/ has the with his post audit changes.

It’s one of those things (vesting) that comes up a lot.

1 Like

Hi @NoahMarconi,

Thanks for sharing.

Would you mind also adding a link to the open issue to the version you had audited for anyone looking for a Token Vesting contract: https://github.com/OpenZeppelin/openzeppelin-contracts/issues/1214

1 Like

I’ve read all the topics mentioned in this one in relation to TokenVesting, as well as the GitHub issue, but I’m still none the wiser as to the plan for it, or whether it’s recommended to (not) use, especially as it’s now removed from the npm package.

So, if my use case requires vesting, is it still OK to use TokenVesting albeit with the caveats mentioned on the Drafts page (in which case, how do I get it through npm?)?

Or is it better to just use a series of TokenTimelock contracts to effectuate a similar vesting process?