farcasterxyz / contracts

Implementation of the Farcaster contracts
https://www.farcaster.xyz/
MIT License
340 stars 122 forks source link

chore: upgrade solidity to 0.8.21, keep evm_version at paris #284

Closed varunsrin closed 1 year ago

varunsrin commented 1 year ago

Motivation

Upgrade to the newer solidity version so we can take advantage of new features like importing events. Pin the evm version to paris, since shanghai's push0 isn't supported by many l2s.

Change Summary

Merge Checklist


PR-Codex overview

Focus of the PR:

Update Solidity version to 0.8.21 and make necessary imports and pragma changes.

Detailed summary:

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

github-actions[bot] commented 1 year ago

Coverage after merging varunsrin/upgrade-solidity into main will be

98.13%

Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
src
   Bundler.sol100%100%100%100%
   FnameResolver.sol96.30%75%100%100%122
   IdRegistry.sol100%100%100%100%
   KeyRegistry.sol100%100%100%100%
   StorageRent.sol98.90%98.48%100%98.96%530, 532
src/lib
   TransferHelper.sol0%0%0%0%15, 15, 15, 25–26, 26, 26
horsefacts commented 1 year ago

LGTM. A cleanup pass PR to use some of these features would be useful. In addition to event imports, I think there are a few places we can use named mappings as well.