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

Upgrade all the things #407

Merged
merged 83 commits into from
Feb 22, 2024
Merged

Upgrade all the things #407

merged 83 commits into from
Feb 22, 2024

Conversation

ryangoree
Copy link
Member

@ryangoree ryangoree commented Feb 12, 2024

Warning

This PR touches nearly every file in the repo, so you're better off just looking at the code in the branch vs crashing your window trying to load "Files changed".

This PR upgrades every dependency to the latest and refactors all of the packages to use the same patterns from the Hyperdrive frontend monorepo.

Package Changes

@council/contract-stub -> removed

The contract stub package contained tools for stubbing ethers-v5 typechain classes. We now use evm-client for stubbing.

@council/cli -> @delvtech/council-cli

The CLI was refactored to use clide-js. This is a package I'm currently maintaining built from what I learned building the old Council CLI. The result is a much cleaner code base that will be easier to read and maintain, more accurate help menus, a CLI that's installable from NPM (the old CLI used modules that couldn't be packaged up for install), and support for the latest ESM-only packages.

@council/deploy -> removed

Most of this code lives on in the CLI.

@council/sdk -> @delvtech/council-core, @delvtech/council-viem, @delvtech/council-ethers

The council-sdk, which was built on ethers-v5 has been refactored to use evm-client. This refactor removes the concept of DataSources, but keeps Models as the primary API, now powered by an evm-client Network instance and a factory function that can create evm-client Contract instances.

@council/typechain -> @delvtech/council-artifacts

The ethers-v5 typechain package has been replace with a more general artifacts package that includes named exports for each contract's ABI and bytecode.

@council/prettier-config -> removed

We're just using a single top-level prettier for the monorepo now and letting eslint handle everything else.

@ryangoree ryangoree merged commit 721387a into main Feb 22, 2024
8 checks passed
@ryangoree ryangoree deleted the ryan-upgrade-all-the-things branch February 22, 2024 18:32
ryangoree added a commit to element-foundation/council-kit that referenced this pull request Mar 21, 2024
* Add Airdrop UI (delvtech#400)

Co-authored-by: Ryan Goree <[email protected]>
Co-authored-by: Chakravarthy7102 <[email protected]>

* Remove custom bigint utils (delvtech#401)

* Add ArcadeDAO logo (delvtech#403)

* Update Gyroscope link (delvtech#404)

* Remove "COMING SOON" under Gyroscope (delvtech#405)

* Add terms and privacy links (delvtech#406)

* Upgrade all the things (delvtech#407)

* Edit top level config

* Update tsconfig

* Update prettier config

* Update eslint config

* checkpoint

* Update SDK configs

* Change typechain to artifacts

* Rename typechain folder

* Streamline artifacts

* Move artifacts script

* Remove I interface prefix and redundant interfaces

* Refactor prettier, add package back

* Update evm packages

* Refactor Models progress

* Update LockingVault model

* Update GSCVault model

* Update CachedContract id field to namespace

* Checkpoint

* Client improvements

* Badass evm-client

* Fix util type

* Fix NamedEventInput type

* Fix types

* Fix comment

* Update viem client

* Add calldatas to spellcheck

* Use arg types from evm-client

* Reorg evm-client, more fixes

* Wrap up clients

* Huge milestone force commit

* Add council-viem implementations

* Add council-ethers and reafactors

* Reset all app changes

* Update packages

* Redo CLI

* Remove single letter options, upgrade clide, fix all the things

* Package progress

* Package export management

* Checkpoint

* Update artifacts script

* Remove local evm-client package

* Fix option values passed to forked commands.

* Re-org src dir

* Fix wagmi and query client providers

* Update react-tooltip usage

* Fix import

* Bump evm-client version to fix type resolutions in next.js

* Milestone

* Details page working

* Milestone

* Progress

* Vaults page progress

* Progress

* Progress

* Progress

* Progress

* Progress

* Progress

* Progress

* Progress

* Progress

* Progress

* Fix ethers sdk

* Progress

* Progress

* Fix getBulkEnsRecords

* Fix examples

* Fix type errors

* Add test for `getVotingPowerBreakdown`

* Remove nonexistent file from tsconfig

* streamline pr workflow

* Add paths to landing page deploy workflow

* Fix file casing

* Remove color class from landiing H1

* Remove unnecessary casting to unknown

* Fix skeletons

* Update packages

* Disable council-viem integration test and move into src

* Fix voting UI and nav buttons

* Remove prop

* Remove parcel

* Update packages and sdk-starter

* Bump all deps

* Add changesets and release workflow (delvtech#410)

* Update pages workflow and nvm

* Add changesets

* Fix pages workflow

* Set all package versions to 0.0.0

* Fix changeset dep

* Init changesets

* Add changeset

* Fix typo

* chore: version packages (delvtech#411)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

* Add missing `publishConfig` setting to artifacts package.json (delvtech#412)

* Add publishConfig to artifacts package.json

* Add changeset

* chore: version packages (delvtech#413)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

* [CLI] Add hardhat to peer deps and handle errors (delvtech#414)

* Add hardhat to peer deps

* Change command name

* Remove hardhat from artifacts

* Handle run errors

* Handle missing hardhat

* Add changesets

* chore: version packages (delvtech#415)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

* Add prebuild script for WalletConnect domain verification (delvtech#416)

* Ensure env variables are picked up when used in production

* Bump version, add walletconnect.txt

* Add prebuild script for walletconnect domain verification

* Remove walletconnect.txt

* nit formatting

* Add changeset

* Handle no .env file

* chore: version packages (delvtech#417)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

* Bump rainbowkit, wagmi, viem (delvtech#418)

* Remove Voting Power column on GSC voting activity table (delvtech#419)

* Remove VP col on GSC voting activity table

* Remove non-null assertion

* Update tailwind config

* Add redirect for / -> /proposals

* Add logo

* Update proposals page copy

* Vaults page copy

* Update Voters page copy

* Don't support goerli

* Fix build

* Add meta tags:

* Add favicon

* Add favicon to head

* Add terms of service and privacy policy

* refactor hook -> getter

* Remove localhost chain id case

* Add EGP-16: GSC-5 proposal details (#15)

* Fix navigation import paths

* Hotfix for `ReadProposal._getExecutedEvents`

---------

Co-authored-by: Chakravarthy7102 <[email protected]>
Co-authored-by: Danny Delott <[email protected]>
@ryangoree ryangoree mentioned this pull request Jun 24, 2024
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

Successfully merging this pull request may close these issues.

2 participants