Skip to content

Aragon Connect 0.2.0

Compare
Choose a tag to compare
@bpierre bpierre released this 16 Jun 19:05
· 203 commits to master since this release
fb9a498

This is the second version of Aragon Connect. It includes, among other things: support for ENS, connector subscriptions, 🤘 Radspec descriptions for human-readable transactions, and pagination filters.

Contributors for this release: @0xGabi, @ajsantander, @bpierre, @Evalir and @macor161 💕

Subscriptions 🔄

Aragon Connect now supports subscriptions!

Here is an example using them to receive a continuously updated list of votes.

const voting = new Voting('0x…', 'https://api.thegraph.com/…')

voting.onVotes(votes => {
  console.log("Updated votes:", votes)
})

Pull requests

  • Implements low-level subscriptions in thegraph connectors (#21)
  • Implements high level subscriptions on orgs (#23)
  • Implements high level subscriptions on the voting connector (#24)
  • Implements high level subscriptions on the tokens connector (#25)

ENS support 🌐

ENS names can now get passed to connect().

const org = await connect('myorg.aragonid.eth')

Pull request

  • ENS support (#36)

Filters (pagination) 🔍

Some app connectors now support filtering parameters, starting with the pagination.

Use the first and skip parameters to fetch a slice from a list:

const votes = await voting.votes({ first: 2, skip: 1 })

Pull request

  • Implements pagination in thegraph connectors (#20)

Radspec descriptions 🤘

Radspec is now integrated into Aragon Connect, making it possible to display human-readable descriptions of a actions.

This is how you can use it:

const org = await connect('org.aragonid.eth')
const apps = await org.apps()
const voting = apps.find(app => app.appName === 'voting.aragonpm.eth')
const intent = await org.appIntent('0x…', 'vote', [1, true, true])

const transactions = await intent.transactions(wallet.address)

for (const transaction of transactions) {

  console.log('Signing transaction:')
  console.log(transaction.description)

  await ethers.sendTransaction(transaction.toEthers())

  console.log('Done.')
}

Pull request

  • Radspec descriptions (#27)

Other changes

  • Polish and review of the entire codebase (#26)
  • Review subgraphs (#28)