Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add solang milestone 2 #915

Merged
merged 1 commit into from
Jul 14, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions deliveries/Solang-developer-experience-improvements-2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Milestone Delivery :mailbox:


**The [invoice form :pencil:](https://docs.google.com/forms/d/e/1FAIpQLSfmNYaoCgrxyhzgoKQ0ynQvnNRoTmgApz9NrMp-hd8mhIiO0A/viewform) has been filled out correctly for this milestone and the delivery is according to the official [milestone delivery guidelines](https://github.com/w3f/Grants-Program/blob/master/docs/Support%20Docs/milestone-deliverables-guidelines.md).**

* **Application Document:** https://github.com/w3f/Grants-Program/blob/master/applications/Solang_developer_experience_improvements.md
* **Milestone Number:** 2

**Context**
This milestone improves Solidity development experience on Substrate based chains, by providing a way to read compiler configurations from a `solang.toml` file, as well as providing a command `solang new` responsible for creating a solang project directory with an example contract as well as an example configuration file.


**Deliverables**


| Number | Deliverable | Link | Notes |
| ------------- | ------------- | ------------- |------------- |
| 0a. | License | https://github.com/hyperledger/solang/blob/main/LICENSE | Apache-2.0 |
| 0b. | Documentation | https://solang.readthedocs.io/en/latest/running.html#compiler-usage https://solang.readthedocs.io/en/latest/running.html#starting-a-new-project| In Solang's documentation, one can find the flags `contract-authors`, `version` and `config-file`. `solang new` can be found at the second link.|
| 0c. | Testing |https://github.com/hyperledger/solang/blob/main/src/bin/cli/test.rs https://github.com/hyperledger/solang/blob/main/tests/cli.rs| The provided tests cover the newly added functionalities: `solang new` as well as unit tests for reading the configurations from `solang.toml` |
| **0d.** | Docker | There will be no independent DockerFiler for this milestone, because Solang has its own DockerFile, which can be used to test the mentioned functionalities.|
| 0e. | Article |https://forum.polkadot.network/t/introducing-solang-improvements/3361 |
| 1. | Implement [Solang projects](https://github.com/hyperledger/solang/milestone/6) | https://github.com/hyperledger/solang/pull/1316 https://github.com/hyperledger/solang/pull/1347 https://github.com/hyperledger/solang/pull/1392 | Regarding the substrate target configuration, I added a comment on the milestone describing why it should be left as is. I took a week of researching this issue, then spoke with the maintainers and agreed that this was the best option for the users. |


**Repositories**
(Apache-2.0)
| Component | Repo | Language |
| -----: | ----------- | ------- |
| All components | https://github.com/hyperledger/solang | Rust/Solidity |