Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Elena Gesheva
    @elenadimitrova
    The parentSkillId required in addDomain is the id of the parent local skill for the root domain. Since for now we only allow one level of subdomains (and equally one level of local skills) below the root, that parentSkillId will in fact always be the root local skill for domainId 1
    Joseph Schiarizzi
    @jschiarizzi
    @gichiba I've got a thing going locally and having a hard time touching your Rinkeby deployment with it. I'm pretty confused with your loaders API. As far as I see there isn't any Rinkeby connection in the hackathon starter unless I'm missing it? The blog post said there would be, could I have some help?
    Griffin Ichiba Hotchkiss
    @gichiba
    Hey @jschiarizzi yeah, so it was my mistake to include that component in the post; the hackathonStarter unfortunately wasn't updated. Would it be helpful to schedule a time here in this channel that you can get some solid support and get all your questions answered in one go (rather than the asynchronous help that's been happening the last few days)?
    Kevin Lu
    @KevinLiLu
    Is there a way to get a colony's token name and symbol? I know the current JS API does not support this yet, but would I be able to load the token's address as a Token.sol contract to call the functions (assuming the contract deployed at the token's address is Token.sol?
    Christian Maniewski
    @chmanie
    @KevinLiLu I am adding these functions at this very moment. In the meantime, depending on your environment you can try to load the contract like this:
     const Token = await colonyClient.adapter.getContract({ contractName: ‘Token’ });
    const symbol = await Token.callConstant(‘symbol’, []);
    Christian Maniewski
    @chmanie
    @KevinLiLu we just released version 1.5 of ColonyJS which supports getTokenInfo: https://docs.colony.io/colonyjs/api-tokenclient/#gettokeninfocall
    Kevin Lu
    @KevinLiLu
    @chmanie how do I get a TokenClient object? ColonyClient has getToken which gives the address.
    Christian Maniewski
    @chmanie
    First make sure that you use at least v1.4.1 of ColonyJS
    Then in colonyClient you have a token and an authority property
    which are the respective tokenClients and authorityClients
    @KevinLiLu also to get back to your skillId question, the way you’re doing it is exactly what needs to be done
    Christian Maniewski
    @chmanie
    I will add the instance properties to the docs
    Kevin Lu
    @KevinLiLu
    :thumbsup:

    I tried migrating to @colony/colony-js-contract-loader-network, but now i'm getting this error:

    [0] Error: Cannot find module '../contracts/static/Authority.json'
    [0]     at Function.Module._resolveFilename (module.js:542:15)
    [0]     at Function.Module._load (module.js:472:25)
    [0]     at Module.require (module.js:585:17)
    [0]     at require (internal/module.js:11:18)
    [0]     at /Users/kelu/Colony/ColonyExplorer/metropolis/node_modules/@colony/colony-js-contract-loader-network/src/NetworkLoader.js:24:25
    [0]     at Array.forEach (<anonymous>)
    [0]     at Object.<anonymous> (/Users/kelu/Colony/ColonyExplorer/metropolis/node_modules/@colony/colony-js-contract-loader-network/src/NetworkLoader.js:23:18)
    [0]     at Module._compile (module.js:641:30)
    [0]     at Module._extensions..js (module.js:652:10)
    [0]     at Object.require.extensions.(anonymous function) [as .js] (/Users/kelu/Colony/ColonyExplorer/metropolis/node_modules/babel-register/lib/node.js:152:7)

    I'm using these dependencies:

        "@colony/colony-js-adapter-ethers": "^1.5.0",
        "@colony/colony-js-client": "^1.5.0",
        "@colony/colony-js-contract-loader-network": "^1.0.1",

    Any thoughts?

    Christian Maniewski
    @chmanie
    Oohh
    Yep, just another case of forgetting to build before pushing to npm ;)
    Sorry about that
    Christian Maniewski
    @chmanie
    @KevinLiLu v1.0.2 published. It should work with that
    "@colony/colony-js-contract-loader-network": "^1.0.2”
    Kevin Lu
    @KevinLiLu

    :thumbsup: Let me test it out! One more thing, I looped through each colony and called getToken() on each colony's token property, and most of them are giving me a call exception:

    [0] 0x0795Ef57326355ca6418575FB56C03368F5b8Ac8
    [0] { name: 'Colony Network Token', symbol: 'CLNY', decimals: 18 }
    [0] 0xB73EEbf7204894D7304d1De980bdd04C7ECb3AB3
    [0] call exception (address="0x06012c8cf97BEaD5deAe237070F9587f8E7A266d", method="name()", value=[])
    [0] 0x3cCD37D11A7D057733bAd6AaD44597822D51B1B9
    [0] call exception (address="0x06012c8cf97BEaD5deAe237070F9587f8E7A266d", method="name()", value=[])
    [0] 0x1217650382EE6a970b7a8B3AAc9295FDb4C75BdC
    [0] call exception (address="0x06012c8cf97BEaD5deAe237070F9587f8E7A266d", method="name()", value=[])
    [0] 0x0858759903c0b41969eD45768356De53Ec3F32aa
    [0] call exception (address="0x06012c8cf97BEaD5deAe237070F9587f8E7A266d", method="name()", value=[])
    [0] 0x60CA06Bfe36A2DEd283Bd9B57311825022b860a7
    [0] call exception (address="0x06012c8cf97BEaD5deAe237070F9587f8E7A266d", method="name()", value=[])
    [0] 0x083d6883213F76D06165C6b2FD5ca2d41DA08a52
    [0] call exception (address="0x06012c8cf97BEaD5deAe237070F9587f8E7A266d", method="name()", value=[])
    [0] 0x77BCB961B87e6A0Dc7D0f1D2a265b32dA79827a1
    [0] call exception (address="0x06012c8cf97BEaD5deAe237070F9587f8E7A266d", method="name()", value=[])
    [0] 0x239e0ec7FB2A41de5A9a4d4a2BcB28FFAba977Df
    [0] call exception (address="0x06012c8cf97BEaD5deAe237070F9587f8E7A266d", method="name()", value=[])
    [0] 0x44DfF5E3E01d9875F2Aa7bD60069A4Ab296e1624
    [0] call exception (address="0x06012c8cf97BEaD5deAe237070F9587f8E7A266d", method="name()", value=[])
    [0] 0x19300A7fdfb2dD949fE7a357Bb6bf6Df8097bE30
    [0] { name: ' ', symbol: ' ', decimals: 18 }

    Is this intended? Do people need to mint their token first or something?

    Christian Maniewski
    @chmanie
    You mean getTokenInfo()?
    Kevin Lu
    @KevinLiLu
    Sorry, yep getTokenInfo()
    Christian Maniewski
    @chmanie
    This is definitely not intentional
    Are these colonies deployed on your local test net?
    Kevin Lu
    @KevinLiLu
    Connected to rinkeby
    Christian Maniewski
    @chmanie
    Interesting
    Kevin Lu
    @KevinLiLu
    via NetworkLoader
    It's weird that the 11th colony is giving me data back (though empty string)
    Christian Maniewski
    @chmanie
    I am getting the same data when checking via MEW
    People can submit a token address when creating a colony. If that particular contract doesn’t define these values, we’re getting errors. At least that’s what I'm suspecting right now
    Christian Maniewski
    @chmanie
    name, symbol and decimals are purely optional in ERC20 contracts
    Kevin Lu
    @KevinLiLu
    I see. The ColonyJS API ColonyNetworkClient.createToken and ColonyNetworkClient.createColony requires these fields right? So people who use ColonyJS to create tokens/colonies will have such fields with values?
    Christian Maniewski
    @chmanie
    Yes, that’s correct
    Only people who decide to bring their own token might not have those
    Kevin Lu
    @KevinLiLu
    Sorry one last thing: I'm getting this error Invalid contract definition: bytecode is missing or invalid when I try to create a new token. I am using ethers adapter with NetworkLoader (rinkeby) and I've created a wallet with my private key specified. I am able to use the same ColonyNetworkClient object to make read calls, but createToken does not seem to work... Any idea?
    Christian Maniewski
    @chmanie
    Urgh I thought we fixed that
    Apparently not. Give me a couple of minutes
    Christian Maniewski
    @chmanie
    Thanks for hanging in there
    Kevin Lu
    @KevinLiLu
    Np np, thanks for the help!
    Christian Maniewski
    @chmanie
    OK, I made all the changes necessary.
    @KevinLiLu v1.0.3 of the @colony/colony-js-contract-loader-network and v1.5.1 of @colony/colony-js-client should solve your token deployment problems.
    Please wait unti both are published on npm, then you can try again
    Christian Maniewski
    @chmanie
    All published
    Kevin Lu
    @KevinLiLu
    Giving it a try now
    Kevin Lu
    @KevinLiLu
    And it works! Thanks @chmanie
    0xEF06f8ddc27fcb483e7304c3052Cc68b83Fce986
    { name: 'Kevin\'s Token', symbol: 'KEVIN', decimals: 18 }
    Christian Maniewski
    @chmanie
    Yes! Congrats to your first token!
    Kevin Lu
    @KevinLiLu
    @chmanie I was thinking more about the EIP-20 regarding optional token fields (name, symbol, decimals). An user may set one or some combination of the fields instead of leaving them all blank. Is this a valid scenario? If someone just sets the name for example, will getTokenInfo handle this and just return an object with the name?
    Christian Maniewski
    @chmanie
    Yes, we are thinking about this as well. One option is to catch the errors that are being thrown (because of an invalid ABI) and then set the corresponding values to null
    Kevin Lu
    @KevinLiLu
    Yeah that seems like the right fix