1.1.4 • Published 1 day ago

@chainlink/evm-gauntlet-functions v1.1.4

Weekly downloads
-
License
-
Repository
-
Last release
1 day ago

Chainlink Functions package

This package is an contains the comands necessary for interacting with the Chainlink Functions contracts

Handling contract updates

Whenever a contract is changed, the ABI and build must be updated this Gauntlet package.

Prerequisites:

First, ensure that Foundry is installed

In your local environment set the following environment variable to tell Foundry to use the Functions profile:

export FOUNDRY_PROFILE=functions

To update an ABI:

  1. From the @chainlink repository go to /contracts.
  2. Run forge build
  3. In the folder ./contracts/foundry-artifacts/<contract name>/<contract name>.json there will be artifacts. Find the relevant contracts and copy the ABI.

To regenerate the FunctionsContracts.build.json file:

  1. From the @chainlink repository go to /contracts.
  2. In foundry.toml the [profile.functions] temporarily update test to point only to the
test = 'src/v0.8/functions/tests/v1_X/testhelpers/FunctionsClientUpgradeHelper.sol'
  1. Run:
forge build --build-info --build-info-path=./info
  1. You will notice a new folder in ./contracts/info. Verify that it looks as expected, then copy the contents into FunctionsContracts.build.json

*If using Linux, remove the .Linux.gcc suffix from the end of the field "solcLongVersion"

Using a local build

There are scenarios such as when testing new code or deploying to a staging DON that you may want to make changes and use them through the Gauntlet package.

The proper way to do this would be: 1. Make experimental changes 2. Bump the version here in gauntlet-evm's @chainlink/evm-gauntlet-functions package.json 3. Run yarn build from the gauntlet-evm respository 4. Now in the gauntlet repository link local package version using npm link [path togauntlet-evm's@chainlink/evm-gauntlet-functionspackage.json] 5. Change gauntlet's package.json to depend on the local version that was bumped to in gauntlet-evm's @chainlink/evm-gauntlet-functions package.json 6. Run yarn install from the gauntlet repository 7. Run yarn build from the gauntlet repository 8. To verify, the gauntlet repository's node_modules should have @chainlink/evm-gauntlet-functions with the version that you set locally and running npm ls -g should show the local package version 9. Now that the packages are linked any hot changes to gauntlet-evm can be reloaded by running yarn build in gauntlet-evm and then again in gauntlet

1.1.4

1 day ago

1.1.3

7 days ago

1.1.2

29 days ago

1.1.1

1 month ago

1.1.0

1 month ago

1.0.0

1 month ago

0.16.2

2 months ago

0.16.0

3 months ago

0.16.1

3 months ago

0.15.0

3 months ago

0.14.1

4 months ago

0.14.0

5 months ago

0.13.0

6 months ago

0.12.0

6 months ago

0.11.0

7 months ago

0.10.0

7 months ago

0.9.4

8 months ago

0.9.3

8 months ago

0.9.2

8 months ago

0.9.1

8 months ago

0.9.0

8 months ago

0.8.4

8 months ago

0.8.2

8 months ago

0.8.1

9 months ago

0.8.0

9 months ago

0.7.1

9 months ago

0.7.0

9 months ago

0.6.0

9 months ago

0.5.0

9 months ago

0.4.0

9 months ago

0.3.2

9 months ago

0.3.1

9 months ago

0.3.0

9 months ago

0.0.0

9 months ago