New Release of the Enigma Protocol

We just completed a synchronized merge to the master branches of our three main repositories: contract (PR#124), core (PR#201) and p2p (PR#196). This automatically pushes new docker images that the discovery-cli use, as well as a new release of the EnigmaJS client library (version 0.0.8).

How to upgrade:
You need to do three things:

  • Pull the new docker images via discovery pull
  • Upgrade your discovery-cli install: npm install -g @enigmampc/discovery-cli@0.0.25
  • Inside your project folder (where you first ran discovery init), install the new EnigmaJS npm package via npm install enigma-js@0.0.8

Should you upgrade?:
While there should not be perceptible changes from your dApp developer point of view and what you interact with, we highly recommend that you upgrade to run on the most similar version of the Enigma version to what will be our public release. Expect upgrades like this with a manageable frequency (about once a month or less) that we encourage you to act on them.

What you should NOT do:
You either run all steps described above, or run none. Running only one will introduce breaking changes.


The initial merge introduced two errors that we’re aware of, that have since been fixed, and the package versions have been bumped up. The post above has been updated with the correct versions.

Upgrade again, if you have encountered any of the following errors:

$ discovery migrate
Deploying Secret Contract "simple_addition.wasm"...
(node:11542) UnhandledPromiseRejectionWarning: Error: PreCode expected to be a Buffer, instead got string
    at (...)enigma-test/node_modules/enigma-js/lib/enigma-js.node.min.js:1:716382


$ discovery migrate
(node:40153) UnhandledPromiseRejectionWarning: Error: Error: Cannot find module 'core-js/stable'
    at ((...)@enigmampc/discovery-cli/node_modules/truffle-migrate/index.js:92:13)
    at processTicksAndRejections (internal/process/task_queues.js:86:5)
1 Like