argotorg / argotorg/solidity

Drop abandoned experimental features and experimental pragmas

Open
#16,124 8 comments 0 reactions 1 assignee Claimed by @nikola-matic View on GitHub
low effort low impact must have eventually refactor
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.