BREAKING
// FIXME: better description
- Something with all events not sitting on the ColonyClient anymore
Changes
Maintenance
- Upgraded all dependencies and dev-dependencies
- Especially Typescript to v4.5.5 and typechain to v7.0.0
- Moved directories around and rewrote build script
- All the colonyNetwork ABIs are now bundled for each of its versions
Release Highlights
This colonyJS
release adds to abi
s to the codebase, VestingSimple
and WrappedToken
which are used to aid in instantiating previously deployed contracts and (manually) interacting with them
Release Highlights
This colonyJS release adds support for version 3
of the Coin Machine extension
New Clients
CoinMachine
version3
client
Fixes
- Extension Addons are now applied in proper chronological order (useful when doing overwrites)
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
Fixes
- #501 Ship both
lib
andlib-esm
version of the package
Fixes
- #496
deployToken
anddeployTokenAuthority
accept transaction overrides
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
version 7 clientCoinMachine
extension, version 2 clientVotingReputation
extension, version 2 clientOneTxPayment
extension, version 2 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)
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.
Features
- Support for Burgundy Glider, Colony's version 4 (
@colony/colony-js-client
,@colony/colony-js-contract-loader-network
)
Maintenance
- Removed the redundant
ArchitectureSubdomain
role (@colony/colony-js-client
)
Bug Fixes
- Various bugs related to the rewards payouts flow (
@colony/colony-js-client
)
No release notes
No release notes
No release notes
No release notes
Bug fixes
- Fix the call to
makePaymentFundedFromDomain
(@colony/colony-js-client
)
Features
- Add support for
eth_call
for Senders in order to simulate sending the transaction and receive a result or parsed revert error (@colony/colony-js-client
,@colony/colony-js-contract-client
,@colony/colony-js-adapter
,@colony/colony-js-adapter-ethers
) - Add
reason
property to transaction receipts (@colony/colony-js-contract-client
) - Add support for
makePaymentFundedFromDomain
(@colony/colony-js-client
)
Bug fixes
- Add custom Infura provider which retries queries when bad responses are received, which happens occasionally (
@colony/colony-js-client
)
Bug fixes
- Supply an optional
network
property to HTTP loaders (@colony/colony-js-contract-loader-http
)
Maintenance
- Added
v3
(auburn-glider
) contracts toNetworkLoader
(@colony/colony-js-contract-loader-network
)
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
)
Bug fixes
- Do not supply a nonce value for outgoing transactions when using a MetaMask wallet (
@colony/colony-js-client
)
New Features
- Add
getColonyClient
method (@colony/colony-js-client
) - Add
mainnet
option togetNetworkClient
(@colony/colony-js-client
) - Add
mainnet
support to network loader (@colony/colony-js-contract-loader-network
) - Add version 2 deployment to network loader (
@colony/colony-js-contract-loader-network
)
Bug Fixes
- Fix
DomainAuth
sender to account fordefaultValues
(@colony/colony-js-client
) - Fix
makeExecuteTaskRoleChange
input to useaddress
(@colony/colony-js-client
) - Patch
lookupRegisteredENSDomain
for testnets. Domains were previously being returned ending in.eth
on networks where the deployed ENS uses the.test
TLD (@colony/colony-js-client
) - Fix
getLogs
method to correctly format topic filters (@colony/colony-js-contract-client
)
Maintenance
-
Update
getReputation
method for use withmainnet
andgoerli
(@colony/colony-js-client
) -
Add
ColonyRoleSet
event, which replaces the existing role set events as the output of any methods which previously used them. The existing events remain in the client for the purpose of parsing logs which were created by previous versions of the contract (@colony/colony-js-client
) -
Improve thrown error for
DomainAuth
sender methods when the current address does not have permission (@colony/colony-js-client
) -
Remove
rinkeby
deployments from network loader, as they are no longer supported (@colony/colony-js-contract-loader-network
) -
Remove unused network support from
getNetworkClient
(@colony/colony-js-client
) -
Updated caller methods in
TokenClient
(@colony/colony-js-client
)- Updated
approve
- Changed
user
input parameter toaddress
- Changed
- Updated
burn
- Changed
user
input parameter toaddress
- Changed
- Updated
mint
- Changed
user
input parameter toaddress
- Changed
- Updated
-
Updated sender methods in
TokenClient
(@colony/colony-js-client
)- Updated
getAllowance
- Changed
user
input parameter toaddress
- Changed
- Updated
Bug Fixes
- Fix fetching and waiting for transaction receipts (
@colony/colony-js-adapter-ethers
)
This release implements significant changes and additions that enables support for the colonyNetwork glider-rc.1 release. Please do not hesitate to reach out to us on Discourse or Gitter if you are having any issues updating to this release.
Also, please note that colonyJS is currently using ethers
version 3.0.27
.
New Features
- Added
goerli
as agetNetworkClient
option (@colony/colony-js-client
) - Added
goerli
to network loader (@colony/colony-js-contract-loader-network
)
Types
- Added
[number]
param type (@colony/colony-js-contract-client
) - Renamed
tokenAddress
param type toanyAddress
to better reflect its uses (@colony/colony-js-contract-client
)
Maintenance
-
Updated constants (
@colony/colony-js-client
)- Added
COLONY_ROLE_ADMINISTRATION
- Added
COLONY_ROLE_ARBITRATION
- Added
COLONY_ROLE_ARCHITECTURE
- Added
COLONY_ROLE_ARCHITECTURE_SUBDOMAIN
- Added
COLONY_ROLE_FUNDING
- Added
COLONY_ROLE_RECOVERY
- Added
COLONY_ROLE_ROOT
- Added
COLONY_ROLES
- Added
ETHER_ADDRESS
- Added
FUNDING_POT_TYPE_DOMAIN
- Added
FUNDING_POT_TYPE_PAYMENT
- Added
FUNDING_POT_TYPE_TASK
- Added
FUNDING_POT_TYPE_UNASSIGNED
- Added
FUNDING_POT_TYPES
- Added
TASK_RATING_NONE
- Added
TASK_RATING_UNSATISFACTORY
- Added
TASK_RATING_SATISFACTORY
- Added
TASK_RATING_EXCELLENT
- Added
TASK_RATINGS
- Added
TASK_ROLE_EVALUATOR
- Added
TASK_ROLE_MANAGER
- Added
TASK_ROLE_WORKER
- Added
TASK_ROLES
- Removed
FOUNDER_ROLE
FOUNDER_ROLE
has been deprecated in favor of the new colony roles. When using thesetFounderRole
method provided by theOldRoles.sol
extension contract, the following colony roles will be applied:COLONY_ROLE_ROOT
COLONY_ROLE_ARCHITECTURE
COLONY_ROLE_FUNDING
COLONY_ROLE_ADMINISTRATION
- Removed
ADMIN_ROLE
ADMIN_ROLE
has been deprecated in favor of the new colony roles. When using thesetAdminRole
method provided by theOldRoles.sol
extension contract, the following colony roles will be applied:COLONY_ROLE_ARCHITECTURE
COLONY_ROLE_FUNDING
COLONY_ROLE_ADMINISTRATION
- Removed
AUTHORITY_ROLES
AUTHORITY_ROLES
has been replaced byCOLONY_ROLES
- Removed
MANAGER_ROLE
MANAGER_ROLE
has been replaced withTASK_ROLE_MANAGER
- Removed
EVALUATOR_ROLE
EVALUATOR_ROLE
has been replaced withTASK_ROLE_EVALUATOR
- Removed
WORKER_ROLE
WORKER_ROLE
has been replaced withTASK_ROLE_WORKER
- Removed
ACTIVE_TASK_STATUS
ACTIVE_TASK_STATUS
has been replaced withTASK_STATUS_ACTIVE
- Removed
CANCELLED_TASK_STATUS
CANCELLED_TASK_STATUS
has been replaced withTASK_STATUS_CANCELLED
- Removed
FINALIZED_TASK_STATUS
FINALIZED_TASK_STATUS
has been replaced withTASK_STATUS_FINALIZED
- Updated
TASK_ROLES
TASK_ROLES
has been updated to use the following reformatted constants:TASK_ROLE_MANAGER
TASK_ROLE_EVALUATOR
TASK_ROLE_WORKER
- Added
-
Updated caller methods in
ColonyClient
(@colony/colony-js-client
)- Added
getAuthorityAddress
- Added
getColonyNetworkAddress
- Added
getExtensionAddress
- Added
getFundingPotPayout
- Added
getOwnerAddress
- Added
getPayment
- Added
getPaymentCount
- Added
getTaskWorkRatingSecretsInfo
- Added
getTokenAddress
- Added
hasColonyRole
- Added
verifyReputationProof
- Removed
getAuthority
getAuthorityAddress
has replacedgetAuthority
.
- Removed
getTaskWorkRatings
getTaskWorkRatingSecretsInfo
has replacedgetTaskWorkRatings
.
- Removed
getToken
getTokenAddress
has replacedgetToken
.
- Removed
getTotalTaskPayout
getFundingPotPayout
has replacedgetTotalTaskPayout
.
- Removed
hasUserRole
hasColonyRole
has replacedhasUserRole
.hasColonyRole
usesaddress
instead ofuser
as an input parameter and addsdomainId
.
- Updated
getDomain
- Changed
localSkillId
output parameter toskillId
.
- Changed
- Updated
getFundingPot
- Changed
associatedType
output parameter totype
. - Changed
associatedTypeId
output parameter totypeId
. - Added
payoutsWeCannotMake
output parameter.
- Changed
- Updated
getRewardPayoutInfo
- Updated output parameters based on the new
RewardPayoutCycle
struct.
- Updated output parameters based on the new
- Updated
getTask
- Removed
payoutsWeCannotMake
output parameter.
- Removed
- Added
-
Updated sender methods in
ColonyClient
(@colony/colony-js-client
)- Added
addExtension
- Added
addNetworkColonyVersion
(MetaColony) - Added
addPayment
- Added
addTask
- Added
claimPayment
- Added
claimTaskPayout
- Added
claimRewardPayout
- Added
deprecateGlobalSkill
(MetaColony) - Added
finalizePayment
- Added
removeExtension
- Added
setAdministrationRole
- Added
setArchitectureRole
- Added
setFundingRole
- Added
setPaymentDomain
- Added
setPaymentPayout
- Added
setPaymentRecipient
- Added
setPaymentSkill
- Added
setRootRole
- Removed
claimPayout
- See
claimPayment
andclaimTaskPayout
for more information.
- See
- Removed
createTask
addTask
has replacedcreateTask
for consistency.
- Removed
removeAdminRole
(SeesetAdminRole
) - Updated
addGlobalSkill
- Removed
parentSkillId
as an input parameter. Global skills no longer exist within a skills tree and always use0
for theparentSkillId
.
- Removed
- Updated
bootstrapColony
- Changed
users
input parameter toaddresses
.
- Changed
- Updated
makePayment
- Changed
worker
input parameter torecipient
.
- Changed
- Updated
removeRecoveryRole
- Changed
user
input parameter toaddress
.
- Changed
- Updated
setRecoveryRole
- Changed
user
input parameter toaddress
.
- Changed
- Updated
setAdminRole
setAdminRole
is now connected to theOldRoles
extension contract.- Changed
user
input parameter toaddress
. - Added
setTo
input parameter.
- Updated
setFounderRole
setAdminRole
is now connected to theOldRoles
extension contract.- Changed
user
input parameter toaddress
.
- Updated
setTaskEvaluatorRole
- Changed
user
input parameter toaddress
.
- Changed
- Updated
setTaskManagerRole
- Changed
user
input parameter toaddress
.
- Changed
- Updated
setTaskWorkerRole
- Changed
user
input parameter toaddress
.
- Changed
- Updated
startNextRewardPayout
- Added
key
input parameter. - Added
value
input parameter. - Added
branchMask
input parameter. - Added
siblings
input parameter.
- Added
- Added
-
Updated events in
ColonyClient
(@colony/colony-js-client
)- Added
ColonyAdministrationRoleSet
- Added
ColonyArchitectureRoleSet
- Added
ColonyFundingRoleSet
- Added
ColonyRootRoleSet
- Added
ColonyVersionAdded
- Added
PaymentAdded
- Added
PayoutClaimed
- Removed
ColonyAdminRoleRemoved
ColonyAdministrationRoleSet
has replacedColonyAdminRoleRemoved
.ColonyAdministrationRoleSet
changesuser
parameter toaddress
.ColonyAdministrationRoleSet
addssetTo
parameter.
- Removed
ColonyAdminRoleSet
ColonyAdministrationRoleSet
has replacedColonyAdminRoleRemoved
.ColonyAdministrationRoleSet
changesuser
parameter toaddress
.ColonyAdministrationRoleSet
addssetTo
parameter.
- Removed
ColonyFounderRoleSet
ColonyRootRoleSet
has replacedColonyFounderRoleSet
.ColonyRootRoleSet
changesuser
parameter toaddress
.ColonyRootRoleSet
addssetTo
parameter.
- Removed
TaskPayoutClaimed
PayoutClaimed
has replacedTaskPayoutClaimed
.
- Updated
ColonyBootstrapped
- Changed
users
parameter toaddresses
.
- Changed
- Updated
ColonyInitialised
- Added
token
parameter.
- Added
- Added
-
Updated caller methods in
ColonyNetworkClient
(@colony/colony-js-client
)- Added
calculateMinerWeight
- Added
getENSRegistrarAddress
- Added
getMiningResolverAddress
- Added
getReplacementReputationUpdateLogEntry
- Added
getReputationMiningCycle
- Added
getReputationMiningSkillId
- Added
getReputationRootHash
- Added
getReputationRootHashNodeCount
- Added
getTokenLockingAddress
- Removed
getRootGlobalSkillId
getReputationMiningSkillId
has replacedgetRootGlobalSkillId
.
- Removed
getTokenLocking
getTokenLockingAddress
has replacedgetTokenLocking
.getTokenLockingAddress
changeslockingAddress
parameter toaddress
.
- Updated
getSkill
- Added
parents
output parameter. - Added
children
output parameter.
- Added
- Added
-
Updated sender methods in
ColonyNetworkClient
(@colony/colony-js-client
)- Added
appendReputationUpdateLog
- Added
deprecateSkill
- Added
initialiseReputationMining
- Added
registerColonyLabel
- Added
setMiningResolver
- Added
setReplacementReputationUpdateLogEntry
- Added
setReputationRootHash
- Added
startNextMiningCycle
- Updated
addSkill
- Removed
globalSkill
input parameter.
- Removed
- Updated
removeRecoveryRole
- Changed
user
input parameter toaddress
.
- Changed
- Updated
setRecoveryRole
- Changed
user
input parameter toaddress
.
- Changed
- Added
-
Updated events in
ColonyNetworkClient
(@colony/colony-js-client
)- Added
ColonyVersionAdded
- Added
-
Updated caller methods in
TokenClient
(@colony/colony-js-client
)- Added
isLocked
- Added
-
Updated sender methods in
TokenClient
(@colony/colony-js-client
)- Added
createTokenAuthority
- Added
unlock
- Updated
createToken
- Require
name
anddecimals
input parameters.
- Require
- Added
Bug Fixes
- Fix transaction retrieval after sending in
EthersWrappedWallet
(@colony/colony-js-client
)
Types
- Add missing event definitions to
ColonyClient
(@colony/colony-js-client
)ColonyAdminRoleSet
ColonyFounderRoleSet
Bug Fixes
- Fix
ethers
wallet being passed togetNetworkClient
(@colony/colony-js-client
) - Fix
address
depth when usingEthersWrappedWallet
(@colony/colony-js-client
) - Fix
gasLimit
based on estimate inEthersWrappedWallet
(@colony/colony-js-client
) - Fix
amount
type forsend
inEthersWrappedWallet
(@colony/colony-js-client
)
New Features
- Add
getNetworkClient
method (@colony/colony-js-client
) - Add
getFundingPot
andgetFundingPotCount
(@colony/colony-js-client
) - Add temporary
makePayment
method (@colony/colony-js-client
) - Add versioned contracts for
rinkeby-v3
(@colony/colony-js-contract-loader-network
)
Maintenance
- Update
TokenClient
to useDSToken
contract (@colony/colony-js-client
) - Update
getPotBalance
togetFundingPotBalance
(@colony/colony-js-client
) - Update
PotAdded
toFundingPotAdded
(@colony/colony-js-client
)
Bug fixes
- Use BigNumber for token amount in
TaskPayoutSet
andTaskPayoutClaimed
(@colony/colony-js-client
)
New Features
- Add
[address]
and[bigNumber]
param type and validation (@colony/colony-js-contract-client
) - Add
ContractData
toContractClient
classes (@colony/colony-js-contract-client
) - Add
ColonyClient
methods and events (@colony/colony-js-client
)ColonyBootstrapped
bootstrapColony
getNetworkFee
setNetworkFee
setNetworkFeeInverse
setRewardInverse
- Extend
ColonyClient
with MetaColony methods and events (@colony/colony-js-client
)- Add
addMetaColonySender
to add whenIMetaColony
contract - Update
getMetaColonyClient
to queryIMetaColony
contract
- Add
- Add
TokenLockingClient
and methods and events (@colony/colony-js-client
)TokenLocked
UserTokenDeposited
UserTokenUnlocked
UserTokenWithdrawn
deposit
getTotalLockCount
getUserLock
lockToken
incrementLockCounterTo
unlockTokenForUser
withdraw
Maintenance
- Update
token
totokenClient
(@colony/colony-js-client
) - Remove methods from
ColonyClient
(@colony/colony-js-client
)ColonyTokenSet
assignWorkRating
initialise
getTransactionCount
setToken
- Update methods in
ColonyClient
(@colony/colony-js-client
)- Update
getGlobalRewardPayoutCount
togetTotalLockCount
- Update
getUserRewardPayoutCount
togetUserLock
- Update
waiveRewardPayouts
toincrementLockCounterTo
- Update
Bug fixes
- The
ColonyFounderRoleSet
event is now named correctly (@colony/colony-js-client
) - Initialize
MetaColonyClient
andColonyClient
before returning them (@colony/colony-js-client
)
New features
- Add
getAccounts
method toTrufflepigLoader
(@colony/colony-js-contract-loader-http
) - Add event log parsing with
ContractEvent.parseLogs
(@colony/colony-js-contract-client
) - Add historical log fetching with
ContractClient.getLogs
, and optionally also parsing with.getEvents
(@colony/colony-js-contract-client
)
Bug fixes
- Define
ColonyClient.addDomain
as aMultisigSender
(@colony/colony-js-client
) - Define
ColonyClient.cancelTask
as aMultisigSender
(@colony/colony-js-client
)
Maintenance
- Removed
engines -> yarn
requirement
Maintenance
- Add
ColonyClient
events:ColonyAdminRoleRemoved
ColonyAdminRoleSet
ColonyFounderRoleSet
ColonyFundsClaimed
ColonyFundsMovedBetweenFundingPots
ColonyInitialised
ColonyRewardInverseSet
ColonyUpgraded
RewardPayoutClaimed
- Add
ColonyNetworkClient
events:ColonyNetworkInitialised
ColonyVersionAdded
MetaColonyCreated
MiningCycleResolverSet
NetworkFeeInverseSet
ReputationMiningCycleComplete
ReputationMiningInitialised
ReputationRootHashSet
TokenLockingAddressSet
- Add recovery methods to
ColonyNetworkClient
/ColonyClient
:approveExitRecovery
enterRecoveryMode
exitRecoveryMode
getRecoveryRolesCount
isInRecoveryMode
removeRecoveryRole
setRecoveryRole
setStorageSlotRecovery
- Add
hasUserRole
caller toColonyClient
- Remove
AuthorityClient
as it is no longer needed. - Rename
OWNER
role toFOUNDER
.
Bug fixes
- Improved handling of invalid UTF8 hex strings
Bug fixes
- Update
contractName
forAuthorityClient
fromAuthority
toColonyAuthority
(@colony/colony-js-client
) - Add
MetaColonyClient
and move corresponding methods over fromColonyClient
(@colony/colony-js-client
) - Fix expected
Buffer
type when converting the output for param typeipfsHash
(@colony/colony-js-client
) - Add the event
TaskPayoutClaimed
to theclaimPayout
method (@colony/colony-js-client
) - Add missing
Transfer
event to themintTokens
method (@colony/colony-js-client
)
Bug fixes
- Add
colonyName
andorbitDBPath
parameters toColonyClient.registerColonyLabel
(@colony/colony-js-client
)
Bug fixes
- Set a default gas limit for
ColonyNetworkClient.registerUserLabel
(@colony/colony-js-client
) - Make the
SendOptions
flow type properties all optional (e.g.gasLimit
) (@colony/colony-js-client
,@colony/colony-js-contract-client
) - Do not convert basic string inputs to hex (
@colony/colony-js-client
)
Bug fixes
- Fix the function called by
ColonyNetworkClient.lookupRegisteredENSDomain
(@colony/colony-js-client
)
Bug fixes
- Events from the colony token are now not supported if the
ColonyClient
was instantiated without aTokenClient
.
Breaking changes
- The
createToken
method now works as a regularSender
, i.e.networkClient.createToken({ name, symbol })
is nownetworkClient.createToken.send({ name, symbol }, options)
.
Bug fixes
- The return value of
ColonyClient.getTaskRole
has been changed fromrated
torateFail
, properly reflecting the contract. - The parameters of the
Transfer
event inTokenClient
now reflect the contract properly. - Added support for
Mint
andTransfer
events inColonyClient
.
Bug fixes
- Ensure that the
SkillAdded
event is parsed correctly when logged in transactions fromColonyClient
(@colony/colony-js-client
/@colony/colony-js-contract-client
)
Maintenance
- Export additional flow types:
{ ContractClientConstructorArgs, ContractResponse, MultisigOperationConstructorArgs, SendOptions } (
@colony/colony-js-client/
@colony/colony-js-contract-client)
- Add support for
ColonyNetworkENS
-based functionality inColonyNetworkClient
(@colony/colony-js-client
)
Maintenance
- Fixes to Flow types, handling of types (
@colony/colony-js-contract-client
)
Bug fixes
- EtherscanLoader now removes anything other than
contractAddress
passed as a query to.load()
(@colony/colony-js-contract-loader-http
) - Parse the result (ABI) of Etherscan responses as JSON, as the Etherscan API has changed (
@colony/colony-js-contract-loader-http
)
New features
- Add
getReputation
methods toColonyClient
andColonyNetworkClient
(currently only availble for Rinkeby) (@colony/colony-js-client
)
Bug fixes
- Increase the default gas limit for colony creation.
- Define
ColonyClient.setTaskSkill
as aMultisigSender
(@colony/colony-js-client
)
Documentation
- Improve documentation for
ColonyClient.setTaskManagerPayout
(@colony/colony-js-client
)
Maintenance
- General updates for interacting with ColonyNetwork contracts.
Enhancements
- All events logged during method calls are now parsed according to their specifications on the
ContractClient
, without specifying event handlers (@colony/colony-js-adapter-ethers
,@colony/colony-js-contract-client
,@colony/colony-js-client
) - Event data in method responses is now provided in a flat format (where property names might collide) and in a format nested under the event name; e.g.
{ taskId: 1, potId: 2 }
becomes{ taskId: 1, potId: 2, TaskAdded: { taskId: 1 }, PotAdded: { potId: 2 } }
. - Event property names are now more specific (e.g.
taskId
rather thanid
) (@colony/colony-js-client
)
Documentation
- The documentation has been updated to include more information about contract events, and the event data available in method calls.
Released Thu, 05 Jul 2018 13:07:42 GMT
Features
Adapter.getTransactionReceipt
now waits for an in-progress transaction to be mined before attempting to get the receipt (@colony/colony-js-adapter-ethers
,@colony/colony-js-client
)Adapter.getTransactionReceipt
andAdapter.waitForTransaction
now accept a timeout argument (default: 5 minutes) (@colony/colony-js-adapter-ethers
)
Bug fixes
- Partial empty hex strings (e.g.
0x0
) are now padded to full-length, which resolves an issue withEthersAdapter
(@colony/colony-js-contract-client
) - The
isEmptyHexString
utility function now evaluates the input type (@colony/colony-js-utils
)
Maintenance
- Add extra validation for
ColonyClient.createTask
; the given domain ID for the task is now confirmed to exist before proceeding (@colony/colony-js-client
) - Default values for methods are now specified separately from the parameters; this simplfies the parameter conversion (
@colony/colony-js-contract-client
) - Add a
DomainAdded
event, which is emitted when callingColonyClient.addDomain
(@colony/colony-js-client
) - Add a
PotAdded
event, which is emitted when callingColonyClient.addDomain
andColonyClient.createTask
(@colony/colony-js-client
) - Add the
TaskDeliverableSubmitted
andTaskWorkRatingRevealed
events, which are available to listen on viaColonyClient.events
(@colony/colony-js-client
)
Bug fixes
- Remove the
address
property of theWallet
interface, because it is not universal (@colony/colony-js-adapter
) - Clarify that the
getAddress
method of theWallet
interface is asynchronous - Use the
getAddress
method to get the current address when signing multisig operations (@colony/colony-js-contract-client
) - Add a
hexString
type to fix the type conversion of the secret created bygenerateSecret
(@colony/colony-js-contract-client
,@colony/colony-js-client
)
Released Tue, 21 June 2018 15:36:06 GMT
Bug fixes
getTokenInfo
won't throw anymore if one of the propertiessymbol
,name
ordecimals
is not implemented on the token contract. Instead it will just reportnull
for the values which are not defined (@colony/colony-js-client
)- Fix a bug where
authority.getUserRole
would only reportnull
for every role by converting the output values from hex numbers first (@colony/colony-js-client
)
Documentation
- Clarified the naming of parameters involving token addresses (
@colony/colony-js-contract-client
,@colony/colony-js-client
)
Bug fixes
- Actually wait for transaction receipt in Token contract deployment. This fixes issues with real-life environments like testnets or mainnet (
@colony/colony-js-client
)
Released Tue, 19 June 2018 12:01:38 GMT
New features
- Add
getTokenInfo
caller toTokenClient
to get the token'sname
,symbol
anddecimals
(@colony/colony-js-contract-client
,@colony/colony-js-client
)
Enhancements
- Wait for in-progress transactions when getting the transaction receipt (
@colony/colony-js-contract-client
,@colony/colony-js-adapter-ethers
) - Made the default timeout for sending transactions dependent on the network: 1 hour for mainnet, 5 minutes otherwise (
@colony/colony-js-contract-client
)
Bug fixes
- Enabled the
networkId
to be passed from the contract loading query through to the loader transform function; reintroduced support for specifying thenetworkId
intruffleTransform
(@colony/colony-js-contract-loader
)
New features
- Added new
ContractEvent
events subscription toContractClient
, allowing for simple events subscription (@colony/colony-js-contract-client
) - Added new task lifecycle events to
ColonyClient
, using new event subscriptions (@colony/colony-js-contract-client
) - Added support for sending multisig operations for tasks with one signature alone (when no other signatures are required) (
@colony/colony-js-client
) - Added support for per-task nonce values for multisig operations; multisig operations can now be run in parallel (for different tasks) (
@colony/colony-js-client
) - Added
TokenClient
, a means of interacting with a colony's token contract (@colony/colony-js-client
) - Added
AuthorityClient
, a means of interacting with a colony's authority contract (@colony/colony-js-client
) - Get
token
andauthority
when initializing aColonyClient
(@colony/colony-js-client
)
Enhancements
- Refactored contract parameter validation and conversion to allow for events subscriptions (
@colony/colony-js-contract-client
) - Refactored the contracts interface and
EthersContract
to allow for events subscription with optional transaction hashes (@colony/colony-js-adapter
,@colony/colony-js-adapter-ethers
) - Ignore parameters that aren't in the spec when validating parameters (
@colony/colony-js-contract-client
)
Documentation
- Specify which users can call
addGlobalSkill
,addDomain
,setTaskRoleUser
,setTaskDomain
andsetTaskSkill
(@colony/colony-js-client
)
New features
Added colony-js-contract-loader-fs
: load contracts from the local file-system in node.
Documentation
- Updated 'Getting Started', removed 'Quickstart' and reordered sections
Enhancements
- Validation errors in contract methods now contain the method name (
@colony/colony-js-contract-client
) - Add a
release
command for the project, streamlined prepublish hooks, simplified and improved babel config
Bug fixes
- Fixed a bug where methods with default values were not validated properly (
@colony/colony-js-contract-client
) - Fixed a bug where timestamps were not converted correctly (
@colony/colony-js-contract-client
)
Enhancements
- New
ipfsHash
parameter type, to more easily store/retrieve IPFS hashes from the contracts (@colony/colony-js-contract-client
) - Implement the
ipfsHash
type inColonyClient
:getTask
,createTask
,submitTaskDeliverable
,setTaskBrief
(@colony/colony-js-client
) - Add a
date
parameter type and implement it inColonyClient
:getTask
,getTaskWorkRatings
,setTaskDueDate
(@colony/colony-js-client
) - Add a default value (1) for
ColonyClient.createTask
(@colony/colony-js-client
)
Bug fixes
- Ensure that the returned values in
ColonyClient.getTask
were handled properly (@colony/colony-js-client
) - Clean 'empty' hex strings for IPFS hash output validation (
@colony/colony-js-contract-client
)
Documentation
- Updated the Quickstart and Get Started documentation; these guides now show how to use an
ethers
wallet, userequire
statements overimport
, and provide some additional information about prerequisites.
Bug fixes
- Define the
defaultGasLimit
property of Senders as a number as opposed to aBigNumber
(@colony/colony-js-contract-client
)
Enhancements
- The nonce value is now carried through when serializing and restoring MultisigOperations (
@colony/colony-js-contract-client)
Maintenance
- Update
ethers
to3.0.17
(@colony/colony-js-adapter-ethers)
- Use
fixed
mode inlerna.json
(see here)
Bug fixes
- Fix
ROLES
values to reflect contracts (@colony/colony-js-client
) - Fixed a bug where
MultisigOperation
s erroneously had required signees reset upon restoring an operation (@colony/colony-js-contract-client)
- Bumped versions of packages/interdependencies
Bug fixes
- Fixed the documentation site link in the
README
- Fixed a bug where string input values were not converted properly (
@colony/colony-js-contract-client
)
Documentation
- General documentation updates
- Added automatic documentation generation for
@colony/colony-js-client
(yarn build:docs
, also runs on precommit hook)
New features
- Added method
ColonyNetworkClient.getMetaColonyClient
- Added Caller
ColonyClient.getDomain
- Added
bignumber
parameter type for contract methods - Added
role
parameter type for contract methods - Added declarative parameter type mapping for contract methods, and
addParamType
method
Enhancements
- Better handling for empty values from contracts; e.g. addresses reported as '0x000...0' are cleaned as
null
- Failed validation reasons are now added to error messages
- Updated
ColonyNetworkClient
/ColonyClient
to matchcolonyNetwork
- Upon starting or restoring a
MultisigOperation
, the operation is refreshed to get the latest values - Removed separate error/success contract event handling
Bug fixes
- Fixed a bug where the isBigNumber utility function didn't look for the correct property in ethers-ified BigNumbers
- Add
babel-runtime dependency
Released Tue, 22 May 2018 17:19:06 GMT
- First release.