Releases: JoinColony/colonyJS
Five is here!
It's been a long time coming, but it finally happened. Version 5 of ColonyJS is ready and it's the biggest release after the TypeScript rewrite (v2).
Because...
🎉 ethers v5.x support is here!! 🎉
As we rely heavily on it, it took a while to sort out all the correct exports and new typings, but it should be stable now and working fine!
Also, most notably now all of the contract clients are properly typed and versioned, the support for creating motions is vastly improved and a lot permission-proof convenience functions were added to the relevant contract clients.
This - as an example - enables the possibility to call getExtensionClient
with the desired extension name on any Colony and get a properly typed extension of that kind if it's installed.
Furthermore:
- Node 16 is now required
- Upgraded all dependencies, including TypeChain to version 10 and the
ethers-v5
target to version 8. - Extracted contract ABIs are now stored inside the repo, to make it easier to upgrade TypeChain and the resulting changes.
- It's easier now to extract the ABIs as well as build the ethers contract types with the provided scripts
- Added
...Event
contract clients to be able to fetch events from past Colony and Extension versions - Vastly improved the TypeDoc documentation
- Added a simple integration "smoke" test
- Improved es and cjs package exports and reduced npm package size by a lot
- Lots of things have been renamed and moved around under the hood to improve maintainability
- Constants and certain exports have been renamed for clarity
- Loads of other tiny fixes and improvements
Full Changelog: v4.1.2...v5.0.0
v4.1.2
v4.1.1
v4.1.0
Release Highlights
This colonyJS release adds support for the Whitelist extension by adding it's own client and integrating it in the release mapping, versioning, and clients exports.
New Clients
Whitelist
extension, version1
clientVotingReputation
version3
clientColony
version8
client (Also includes version9
, but that is still experimental)
Fixes:
compile-declarations
build script- correctly import the colony
v7
factory estimateSetUserRolesWithProofs
roles
v4.0.2
v4.0.1
v4.0.0
Release Highlights
This colonyJS release adds support for Extension Clients Versioning allowing for extensions themselves to be separated from the colony client all whilst having their own versions and upgrade paths.
The version work independently of the colony contract clients as long as the extension's version is supported by the current colony contract version, will work as expected.
As with the colony clients, the extensions have support for add-on methods that will help in cases where the method calls need permissioning proofs, in order to make development live easier.
As an example for this, you can look up createDomainMotionWithProofs
, stakeMotionWithProofs
, escalateMotionWithProofs
and claimRewardWithProofs
from the VotingReputation extension.
New Clients
Colony
version7
clientCoinMachine
extension, version2
clientVotingReputation
extension, version2
clientOneTxPayment
extension, version2
client
Fixes:
- #483 Fixed to the
setUserRolesWithProofs
helper -- by @alicjakujawa - #485
getReputation
helper now has acustomRootHash
prop -- by @ArmandoGraterol
Maintenance:
- #482 Automatically create versioned extension client files/folders based on the latest version(s)
v3.0.0
This release update the colony-js library to be able to use the latest lwss
release of colonyNetwork.
Alongside the above, we have a couple of minor fixes and improvements:
- updated the way typechain generates the interfaces and factories
- v5 client now has access to all historic events
- minor fixes to the v2 colony client
- fixed the
getColonyRoles
helper function
🎊 The TypeScript release 🎊
Please welcome our biggest release yet! After months of effort and a total rewrite of colonyJS we are proud to announce the next version: v2.0.0!
It almost doesn't make any sense to post a changelog as virtually everything has changed.
Expect the following features:
- Everything is TypeScript now 🎉
- Versioned Colony clients (for all of the versions colonies can have)
- Just one package:
npm install @colony/colony-js
and you're done! - All of the clients are just extended ethers contracts now
- Automatically generated documentation available under https://joincolony.github.io/colonyJS
- Convenient helper and utility functions
We hope you'll enjoy using it in your project when building with Colony.
v1.13.2
New Features
- Add
verbose
option toContractClient
(@colony/colony-js-contract-client
) - Add
verbose
option togetColonyClient
method (@colony/colony-js-client
) - Add
verbose
option togetNetworkClient
method (@colony/colony-js-client
)
Bug Fixes
- Fix parameters in
makeExecuteTaskRoleChange
(@colony/colony-js-client
)