Releases: DA0-DA0/dao-contracts
v2.0.2
This releases:
- Streaming vesting payments by @JakeHartnell in
cw-vesting
. Native assets vested in this contract may be staked and staking rewards will accrue for the receiver of the vesting payment. - One transaction migrations from version one to version two by @Art3miX in
dao-migrator
. - Token distribution proportional to DAO voting power by @bekauz in
cw-fund-distributor
.
It also releases an audited-but-in-beta ranked choice voting module in dao-proposal-condorcet
by @blue-note and @0xekez. We expect to substantially modify the API of this contract before moving it out of beta.
The new code IDs on juno-1
mainnet:
cw20_stake.wasm 1900
cw20_stake_external_rewards.wasm 1901
cw20_stake_reward_distributor.wasm 1902
cw_admin_factory.wasm 1903
cw_fund_distributor.wasm 1904
cw_payroll_factory.wasm 1905
cw_token_swap.wasm 1906
cw_vesting.wasm 1907
dao_core.wasm 1908
dao_migrator.wasm 1909
dao_pre_propose_approval_single.wasm 1910
dao_pre_propose_approver.wasm 1911
dao_pre_propose_multiple.wasm 1912
dao_pre_propose_single.wasm 1913
dao_proposal_condorcet.wasm 1914
dao_proposal_multiple.wasm 1915
dao_proposal_single.wasm 1916
dao_voting_cw20_staked.wasm 1917
dao_voting_cw4.wasm 1918
dao_voting_cw721_staked.wasm 1919
dao_voting_native_staked.wasm 1920
Compiled by running just workspace-optimize
on the v2.0.2
tag.
New Contributors
Full Changelog: v2.0.1...v2.0.2
v2.0.0
This releases DAO DAO version two. It follows v2.0.0-beta
and v2.0.0-alpha
and inherits all of the changes therein. This tag has completed an audit by Oak Security, the release of which is forthcoming.
Breaking changes
- 1673241 all of the contracts in
staking/
now have a two-step ownership transfer process using cw-ownable. - 5b6f080 duplicate item keys during DAO instantiation will now cause an error.
- 0ef1a2a
dao-voting-staking-denom-staked
has been removed. - 4ef0e21 members may only execute a proposal if they were a DAO member at the time of the proposal's creation.
ProposalModuleStatus
,ProposalCreationPolicy
,PauseInfoResponse
, andPreProposeInfo
are now snake case in the contract API.
Mainnet Code IDs
These contracts have been deployed on the Juno mainnet using the CosmWasm cw-plus 0.16 release for auxiliary contracts. Contracts have been compiled using workspace-optimizer version 0.12.10
.
cw20_stake 1645
cw20_stake_external_rewards 1646
cw20_stake_reward_distributor 1647
cw_admin_factory 1648
cw_token_swap 1649
dao_core 1650
dao_pre_propose_approval_single 1651
dao_pre_propose_approver 1652
dao_pre_propose_multiple 1653
dao_pre_propose_single 1654
dao_proposal_multiple 1655
dao_proposal_single 1656
dao_voting_cw20_staked 1657
dao_voting_cw4 1658
dao_voting_cw721_staked 1659
dao_voting_native_staked 1660
The corresponding v0.16
cw-plus code IDs:
cw20_base 1664
cw4_group 1668
And the corresponding v0.16
cw-nfts code IDs:
cw721_base 1671
New Contributors since version one
- @cypherape made their first contribution in #309
- @Buckram123 made their first contribution in #411
- @bekauz made their first contribution in #433
- @ismellike made their first contribution in #479
- @CLHRAE made their first contribution in #489
- @NinoLipartiia made their first contribution in #477
Full Changelog: v1.0.0...v2.0.0
v2.0.0-beta
This release is the successor of v2.0.0-alpha
. All contract and package versions have bumped from 0.2.0
to 2.0.0-beta
.
Highlights
- DAOs may now require approval from a subDAO to create a proposal. - @JakeHartnell and @0xekez in f6dd78d
- Votes may now be cast up to the expiration of a proposal allowing vote tallies to reflect voters who vote after a proposal's outcome has been determined. - @NinoLipartiia & @bekauz in a6e01ea
- Voters may now attach an optional rationale to their votes. - @0xekez in b02a740
Bug fixes
- Fixed an out-of-gas issue in
dao-voting-cw721-staked
. - @0xekez in 38b9552, writeup - Fixed an integer overflow bug in
cw20-stake
. - @0xekez in a4f0874, writeup
Breaking changes
- The
addr
field ofdao-core
'sSetItem { key, addr }
message has been renamed tovalue
and the message is nowSetItem { key, value }
.
Testnet deployment
The v2.0.0-beta
contracts have been deployed to Juno's uni-5
testnet with the following code IDs:
cw20_stake.wasm 3454
cw_admin_factory.wasm 3455
cw_token_swap.wasm 3456
dao_core.wasm 3457
dao_pre_propose_approval_single.wasm 3458
dao_pre_propose_approver.wasm 3459
dao_pre_propose_multiple.wasm 3460
dao_pre_propose_single.wasm 3461
dao_proposal_multiple.wasm 3462
dao_proposal_single.wasm 3463
dao_voting_cw20_staked.wasm 3464
dao_voting_cw4.wasm 3465
dao_voting_cw721_staked.wasm 3466
dao_voting_native_staked.wasm 3467
dao_voting_staking_denom_staked.wasm 3468
stake_cw20_external_rewards.wasm 3469
stake_cw20_reward_distributor.wasm 3470
On the v0.16.0
release:
cw20_base.wasm 3471
cw4_group.wasm 3472
v2.0.0-alpha
In many ways, this release represents the completion of the vision for version one. We've seen our designs work well in their first deployment and as such this release has few breaking changes. v2.0.0 serves mostly to refine our approach and build governance systems with it.
This release was built by ten unique contributors over many time zones, degrees of psudoanonimity, and late nights. Great work everyone!
Highlights
- Multiple choice voting (A, B, ..., or C) by @blue-note.
- NFT voting where voting power is determined by staked NFTs by @cypherape.
- Integration of @de-husk's amazing integration testing library, Cosm-Orc, by @de-husk.
- Proposal closing on execution failure by @Buckram123.
- Explicit support for subDAO management in the core module by @onewhiskeypls.
- Native token proposal deposits and pay-to-propose support by @0xekez.
- Support for determining voting power based on staked native tokens (ex. ION) by @Callum-A.
Bug fixes
- Proposal deposits are returned to the core module when deposit refunds are not enabled instead of being left in the proposal module. Thank you @onewhiskeypls for discovering and reporting this!
Breaking changes
cwd-core
queries now usestart_after
instead ofstart_at
in paginated queries.cwd-proposal-single
'sQueryMsg::Vote { .. }
is nowQueryMsg::GetVote { .. }
.
Testnet code IDs
On the uni-5 Juno testnet.
cw20_base.wasm 870
cw20_stake.wasm 871
cw4_group.wasm 872
cw_admin_factory.wasm 873
cw_token_swap.wasm 874
cwd_core.wasm 875
cwd_pre_propose_multiple.wasm 876
cwd_pre_propose_single.wasm 877
cwd_proposal_multiple.wasm 878
cwd_proposal_single.wasm 879
cwd_voting_cw20_staked.wasm 880
cwd_voting_cw4.wasm 881
cwd_voting_cw721_staked.wasm 882
cwd_voting_native_staked.wasm 883
cwd_voting_staking_denom_staked.wasm 884
stake_cw20_external_rewards.wasm 885
stake_cw20_reward_distributor.wasm 886
New Contributors
- @cypherape made their first contribution in #309
- @Buckram123 made their first contribution in #411
- @bekauz made their first contribution in #433
- @ismellike made their first contribution in #479
- @CLHRAE made their first contribution in #489
Full Changelog: v1.0.0...v2.0.0
v1.0.0
This releases DAO DAO v1. The v1 contracts are governance Lego blocks. They are designed to be modular, secure, and upgradable allowing for safe, and highly customizable voting configurations. You can read more about their design here.
The v1 contracts have completed two audits. The first by security DAO and the second by Oak Security.
These contracts have been uploaded to the Juno mainnet and have the following code IDs:
cw-proposal-single: 427
cw-core: 432
cw4-voting: 429
cw20-stake: 430
cw20-staked-balances-voting: 431
cw20_base: 435
cw4_group: 434
The cw20_base
and cw4_groups
contracts are part of the cw-plus repo. For the above code IDs we are using commit 14f4e922fac9e2097a8efa99e5b71d04747e340a
.
Instructions for verifying contracts that are deployed based on this release can be found here.
This release corresponds to the v2.0.0 release of the @dao-dao/types package which contains a types and convenience functions for querying these contracts.
These contracts have also been uploaded to the juno testnet with the following code IDs:
cw-proposal-single: 453
cw-core: 452
cw4-voting: 450
cw20-stake: 449
cw20-staked-balances-voting: 451
cw20_base: 77
cw4_group: 78
New Contributors
Full Changelog: v0.3.0...v1.0.0
v0.3.0
Many improvements and bug fixes for the legacy contracts.
What's Changed
- Make admin optional stake cw20 by @ben2x4 in #163
- cw3-flex-multisig fixes by @Callum-A in #162
- Add
start_height
field to proposal queries by @ezekiiel in #165 - updates rust optimizer in deploy local script by @gavindoughtie in #167
- feat: adds Apple Silicon support, updates junod to v2.1.0 in deploy_local by @bmorphism in #168
- Remove cw-distribution by @Callum-A in #174
- Vt only signers execute by @verminator23 in #166
- Reject proposals when they cannot pass by @Callum-A in #181
- Automatically add cw20s to balance list by @Callum-A in #183
- Remove usage of Addr in contract messages. by @ezekiiel in #186
- Instantiate DAO with existing staking contract by @Callum-A in #189
- Update local deploy script by @the-frey in #201
- fix local deploy script by @janitachalam in #211
- Hooks in staking contract by @ben2x4 in #180
- Fix threshold for no for non v1 side contracts by @Callum-A in #220
- External staking rewards by @ben2x4 in #182
- fix empty attribute bug in external staking contract by @ben2x4 in #245
Full Changelog: v0.2.5...v0.3.0
v0.2.5 (Beta)
These contracts have not been audited yet. Use at your own risk.
What's Changed since v0.2.0
- Stake cw20 delegate voting power by @ben2x4 in #127
- Vote delegation by @JakeHartnell in #129
- Query staking changelog by @ben2x4 in #130
- Get change log height is optional by @ben2x4 in #135
- Add code for muilti-sig contract to have empty bracket by @entrancedjames in #137
- Add optional img url to dao by @entrancedjames in #138
- Add proposer field to Proposal by @Callum-A in #140
- auto-compound staking by @ben2x4 in #139
- Add a security disclosure policy by @elsehow in #143
- Remove changelog from staking contract by @ben2x4 in #145
- Add cw2 info to stake-cw20 by @orkunkl in #144
- feat: allow admin to update unstaking duration for stake cw20 by @verminator23 in #142
- Contributors' guide and code of conduct by @elsehow in #150
- Update spacing in poem by @elsehow in #151
- Prep for launch by @JakeHartnell in #149
- Fix LICENSE link by @maurolacy in #152
- Don't allow creation of claims if >= 100 are outstanding by @ezekiiel in #148
- Use latest staking contract version in gov staking contract by @ezekiiel in #153
- Add UpdateStakingContract method and tests by @JakeHartnell in #154
- Implement PauseDAO, closes #146 by @JakeHartnell in #155
- Remove stake_cw20_gov by @JakeHartnell in #156
New Contributors
- @Callum-A made their first contribution in #140
- @verminator23 made their first contribution in #142
- @maurolacy made their first contribution in #152
Full Changelog: v0.2.0...v0.2.5