6

I get a error when i change the version to 0.8 , but works fine with 0.6, how i see the most recent version? , i tried downloaded from npm install @chainlink/contracts --save, but only works with mock mode.

This is my repo: https://github.com/irwingtello/lottery

Compiling contracts... Solc version: 0.8.9 Optimizer: Enabled Runs: 200 EVM Version: Istanbul CompilerError: solc returned the following errors:

ParserError: Source "C:/Users/irwin/.brownie/packages/smartcontractkit/chainlink-brownie-contracts@1.1.1/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol" not found: File not found. --> contracts/Lottery.sol:4:1: | 4 | import "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol"; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

ERROR: Unable to load project

Irwing Tello
  • 179
  • 1
  • 8
  • Im getting the same with Brownie compile - doesn't like the reference to 0.8 but switching back to 0.6 is fine.... – LDJ Nov 03 '21 at 13:20
  • Hey @LDJ, check this discussion on github: https://github.com/smartcontractkit/full-blockchain-solidity-course-py/discussions/306 Its relationed about this repo from NPM packages: https://github.com/smartcontractkit/chainlink-brownie-contracts "As of 1.2.0 and onward all the releases of this package are going to match the @chainlink/contracts NPM tags So it will look "backwards", but we are starting with 0.2.1" – Irwing Tello Nov 03 '21 at 19:15

3 Answers3

6

"As of 1.2.0 and onward all the releases of this package are going to match the @chainlink/contracts NPM tags So it will look backwards, but we are starting with 0.2.1"

Change: @chainlink=smartcontractkit/chainlink-brownie-contracts@1.1.1 To: @chainlink=smartcontractkit/chainlink-brownie-contracts@0.2.1

https://github.com/smartcontractkit/chainlink-brownie-contracts/tree/v0.2.1

mrvol
  • 2,575
  • 18
  • 21
Irwing Tello
  • 179
  • 1
  • 8
0

STEP 1: change the @chainlink/contacts version from @chainlink=smartcontractkit/chainlink-brownie-contracts@1.1.1 to @chainlink=smartcontractkit/chainlink-brownie-contracts@0.2.1 in the config file of your project

STEP 2: compile your project using brownie compile

STEP 3: go to https://github.com/StarBlockDAO/SBox-VRF-Random/commit/dbbe6a7933cef13dc905965ceb6d1cfe57818fc2 and get the VRFCoordinatorV2Interface.sol and save it to your v.08/interfaces directory

STEP 4: compile your project using brownie compile

Martin Maati
  • 121
  • 1
  • 5
0

More elegant solution.

1.yarn add @chainlink/contracts
yarn add @openzeppelin/contracts #I use it for the SafeMath

  1. import"node_modules/@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol"; import"node_modules/@openzeppelin/contracts/utils/math/SafeMath.sol";
Vlad Tagunkov
  • 359
  • 1
  • 3