Skip to content

Embark 0.9.1

Choose a tag to compare

@iurimatias iurimatias released this 01 Sep 11:53
· 6037 commits to master since this release

New to Embark?


If you are new to Embark, see the Readme.

To Update to 0.9.0


npm update -g embark-framework

To use serpent contracts, you need to add app/contracts/*.se to Gruntfile.coffee or embark.yml. run embark demo to see the differences.

In this release


Serpent support

You can now develop contracts using serpent with Embark. First you will need to install serpent, and then tell Embark to look for the serpent files in the directory of your choice (i.e add app/contracts/*.se to Gruntfile.coffee or embark.yml)

The JS binding for the contract will be generated just like with Solidity Contacts.

# app/contracts/subcurrency.se
def init():
    self.storage[msg.sender] = 1000000

def balance_query(k):
    return(self.storage[addr])

def send(to, value):
    fromvalue = self.storage[msg.sender]
    if fromvalue >= value:
        self.storage[from] = fromvalue - value
        self.storage[to] += value

Will automatically be available in Javascript as:

subcurrency.balance_query(web3.eth.accounts[0]);
subcurrency.send("0x123", 1000);

Misc improvements

  • Add deploy: field

e.g

development:
  DataSource:
    deploy: false # don't deploy this contract
    args:
  MyDataSource:
    args:
    instanceOf: DataSource
  • Contracts syntax errors will now display on the console
  • Fixed a bug where a previously deployed contract wouldn't redeploy if the data directory was deleted.
  • other misc technical improvements and changes

Thanks

Special thanks to Chris Hitchcott, Gerbrand van Dieijen, Harlan T Wood, Joris Bontje, linagee, Péter Szilágyi and Ryan Casey for contributions to this release.