Embark 1.0.2
New to Embark?
If you are new to Embark, see the Readme.
To Update to 1.0.0
npm update -g embark-framework
If updating an existing project, change the version in package.json as well and 'grunt-embark' to '0.5.1', followed by npm install.
run embark demo to see the differences.
In this release
New Testing Framework
Embark now uses EtherSim for its testing. It's still in early stages and there are a lot of limitations, but expect steady good improvements over the next releases.
# test/simple_storage_spec.js
var assert = require('assert');
var Embark = require('embark-framework');
var EmbarkSpec = Embark.initTests();
describe("SimpleStorage", function(done) {
before(function(done) {
EmbarkSpec.deployAll(done);
});
it("should set constructor value", function(done) {
SimpleStorage.storedData(function(err, result) {
assert.equal(result.toNumber(), 100);
done();
});
});
it("set storage value", function(done) {
SimpleStorage.set(150, function() {
SimpleStorage.get(function(err, result) {
assert.equal(result.toNumber(), 150);
done();
});
});
});
})notes:
- the test folder is now
test/instead ofspec/ - by default embark now uses mochajs instead of jasmine. however, just like before, you can use any testing framework you wish.
- you can run the specs with
embark specormocha test/ --no-timeouts
Simulator
It's now also possible to run:
embark simulator
As an alternative to embark blockchain for development purposes.
Have in mind that, this is still in early stages so some bugs are expected. At the moment it's great for quickly developing and testing out simple contracts though.
Bundled Solidity compiler
Thanks to @d11e9 solc package Embark now compiles solidity contracts internally without need for external dependencies.
Less Dependencies
Embark no longer requires cpp-ethereum, python and EtherTDD.py. This makes the installation process much much faster and easier.
Misc Improvements
- support boostraping enodes in chain config
- chain files can be defined per environment/chain
- display grunt stacktrace
Thanks
Special thanks to FredericHeem, Aakil Fernandes, Gerbrand van Dieijen, VoR220, Harlan T Wood, Joris Bontje, Ryan Casey and Martin Becze for contributions to this release.