Skip to main content


If you want to contribute to this repository, consider posting a bug report, feature request or a pull request.

You can also join our Discord server and ping us in #smartcontracts-dev.

Creating a Pull Request

Please base your work on the develop branch.

Before creating the Pull Request ensure that:

  • all the tests pass:

    go test -tags rocksdb,builtin_static ./...
  • there are no linting violations (instructions on how to setup linting below):

    golangci-lint run

Lint Setup

  1. Install golintci:

  2. Dev setup:


    // required:
    "go.lintTool": "golangci-lint",
    // recommended:
    "go.lintOnSave": "package"
    "go.lintFlags": ["--fix"],
    "editor.formatOnSave": true,


    • Install golintci plugin

      Install golintci plugin

    • Configure path for golangci

      Configure path for golangci

    • Add a golangci file watcher with custom command (I recommend using --fix)

      Add a golangci file watcher with custom command

    Other editors: please look into the golangci official documentation.

  3. Ignoring false positives:


    for specific rules: