AccessControlEnumerableUpgradeable.sol no longer using EnumerableSetUpgradeable

Hello team!
One of my contracts is using EnumerableSetUpgradable.
I'm testing now some upgrades to my node packages. I see some files changed locations, which is fine, but this one surprised me.
Since commit caabf85badf2c53861924028632288ea4877c8ae AccessControlEnumerableUpgradeable no longer uses EnumerableSetUpgradable.

That means EnumerableSetUpgradable is no longer maintained?
I can update my contracts to EnumrableSet, no big problem, but I want to be sure is the right step.


Hey @Manuel_Rico_Molina

Yes, all good with this, the recommendation is to use EnumerableSet from @openzeppelin/contracts since OpenZeppelin Contracts version 5.0. Released in October last year (2023).

From the changelog:

  • Upgradeable contracts no longer transpile interfaces and libraries. (#4628)

The reason behind this change is that the upgradeable variants of the contracts mainly affect things related to how storage is organized, so both the upgradeable and regular versions of libraries and interfaces don't require an upgradeable version because they're stateless.

:warning: IMPORTANT: If you already have an on-chain deployment. DO NOT UPGRADE since v5 is a major change. See Backwards Compatibility in the docs

Thank you very much!