Workers Auto Approve
Implement compilation with the official solc docker images
Create a plugin that uses a docker image of solc (the Solidity team provides them through dockerhub) to compile contracts.
If a user installs this plugin, the compilation process should automatically (without changing their workflow) use the docker-based compilers, and no unncessary solc-js binaries should be downloaded.
Desired implementation description:
1. The plugin should override the internalTask [TASK_COMPILE_RUN_COMPILER](https://github.com/nomiclabs/buidler/blob/3f7e9e49821cb0ed87722d382ac01d58a1fad6c7/src/builtin-tasks/task-names.ts#L10). You can read its definition [here](https://github.com/nomiclabs/buidler/blob/3f7e9e49821cb0ed87722d382ac01d58a1fad6c7/src/builtin-tasks/compile.ts#L56). This is part of [PR #190](https://github.com/nomiclabs/buidler/pull/190) which will be merged soon.
2. The overriden task receives the standard JSON input of solc, and returns the standard output JSON. You can read more about them [here](https://solidity.readthedocs.io/en/v0.5.5/using-the-compiler.html#compiler-input-and-output-json-description).
3. The plugin should throw a [BuidlerPluginError](https://github.com/nomiclabs/buidler/blob/cf5d15e65485afc3dc8e92cb8a19317529fe00f4/src/plugins.ts#L1) if docker is not running.
4. The plugin should pull the docker with the right version of solc if necessary. The version is specified in the config.
5. The plugin should throw a [BuidlerPluginError](https://github.com/nomiclabs/buidler/blob/cf5d15e65485afc3dc8e92cb8a19317529fe00f4/src/plugins.ts#L1) if the version is invalid.
6. The plugin should throw a [BuidlerPluginError](https://github.com/nomiclabs/buidler/blob/cf5d15e65485afc3dc8e92cb8a19317529fe00f4/src/plugins.ts#L1) if it can't pull the docker image.
7. The plugin should have unit and/or integration tests. We can provide guidance on how to test each part.
8. The plugin must be based in the [Buidler plugin boilerplate](https://github.com/nomiclabs/buidler-ts-plugin-boilerplate).
Setup your profile
Tell us a little about you:
No results found for
Type to search skills..
Required [[totalcharacter]] / 240
Are you currently looking for work?
[[ option.string ]]
Setup your profile
Our tools are based on the principles of earn (💰), learn (📖), and meet (💬).
Select the ones you are interested in. You can change it later in your settings.
I'm also an organization manager looking for a great community.
Enable your organization profile
Gitcoin products can help grow community around your brand. Create your tribe, events, and incentivize your community with bounties. Announce new and upcoming events using townsquare. Find top-quality hackers and fund them to work with you on a grant.
These are the organizations you own. If you don't see your organization here please be sure that information is public on your GitHub profile. Gitcoin will sync this information for you.
Select the products you are interested in:
Out of the box you will receive Tribes Lite for your organization. Please provide us with a contact email: