2

I've run into an issue. I have a contract with a hierarchy of libraries (some lower level libraries import higher level libraries). All libraries are ultimately imported by our main contract. Previously, I could deploy the libraries and contract without issue (ie. metamask would pop-up after each library is deployed, allowing me to confirm the next library's transaction). Starting yesterday, metamask will only pop-up for the first two libraries. After the second library's transaction has succeeded, Remix just sits and does nothing (metamask does not open and does not have any transactions in que).

All libraries compile fine. I checked the transactions on etherscan and both library transactions were successful. I tried deploying each library one-by-one, and all of them succeeded. As far as I know, I can't deploy my main contract without first deploying all of the libraries. I'm not sure what the issue is. Any help?

  • Please include a screenshot of the JavaScript console in order to understand if there are some problems. (Depending on your browser, you can open it in the settings menu, programmer tools or something like it) – Rick Park Sep 18 '18 at 21:49
  • No errors or warnings in the console. It just gives me a pending message for each library, then outputs an etherscan link and transaction information. Same as always. It just stops after the second library, as if it's still waiting for the transaction to complete. – Benjaminius Sep 18 '18 at 22:13
  • I do not mean remix console, but JavaScript tools for programmer console of the browser. Are you talking of what console? – Rick Park Sep 18 '18 at 22:15
0

The currently available version 0.7.0 of Remix, previously available as alpha version and online by some days only, introduce some new features for libraries management,

It should be now possible to have a single copy of the library on the blockchain (vm, testrpc, test net or whatever) servicing many contracts, any of them referring to the same library address.

Before than this, any contract including a library first deployed his own copy of the library and used it.

This feature has not been largely validated at the moment and can, eventually and possibly, generate problems.

In those eventual cases, it is very useful to trace the JavaScript console of the browser in order to find eventual errors (always written in red!) when deploying, to be possibly reported to the developing team in order to have some advices.

In the meanwhile you can work using the old version (0.6.4) installing it by npm at the node prompt

npm install -g remix-ide@0.6.4

then

remix-ide

then following the instruction on the screen.

If all is ok this way, the problem is the new feature to be understood/fixed

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.