Drop abandoned experimental features and experimental pragmas
- Dominant language
- C++
- Stars
- 25.7k
- Forks
- 6.2k
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 21
Description
We have a few experimental features that are no longer being developed and became essentially technical debt. We also have some old experimental pragmas that no longer have a purpose. We should remove them all.
No deprecation needed since it was all experimental.
Features to remove:
- [x] LSP
- The development effectively ceased before it became stable and there are no plans to revive it.
- [x] Generic Solidity prototype (`pragma experimental solidity`)
- The development moved to [solcore](https://github.com/argotorg/solcore). When the new prototype is finished, it will be reimplemented from scratch.
- [x] EOF
- Wait for #16229 to be merged first.
- But keep the experimental `DUPN`/`SWAPN` support as we'll want to reuse that for EIP-8024.
Pragmas to remove:
- [ ] `pragma experimental ABIEncoderV2`
- Replaced by `pragma abicoder` in 0.7.5. It was scheduled for deprecation in 0.8.0, but since it's experimental deprecation was not actually necessary.
We will treat `pragma experimental SMTChecker` as an exception and wait with removal for 0.9.0 (#15874). It's technically experimental, but the feature is prominent enough that we can give it a deprecation period.
Contributor guide
Assessment
This issue has not been assessed yet.