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

Avoid compiling Test/Script toplevel contracts w/ zksolc #663

Open
Karrq opened this issue Oct 28, 2024 · 1 comment
Open

Avoid compiling Test/Script toplevel contracts w/ zksolc #663

Karrq opened this issue Oct 28, 2024 · 1 comment
Labels
needs more info ℹ️ Item requires more detail needs triage ♟️ Issue needs to be picked up or assigned p2 🟡 Indicates moderately high priority item

Comments

@Karrq
Copy link
Contributor

Karrq commented Oct 28, 2024

The bytecode size limitation is a very painful point for projects to migrate to zksync.

In many cases, this limitation is hit by test or scripts, not the actual contracts themselves.

Considering the current architecture, these contracts are never deployed on the EraVM, therefore they shouldn’t need to be compiled for EraVM

@Karrq Karrq added question❓ Further information is requested p2 🟡 Indicates moderately high priority item needs triage ♟️ Issue needs to be picked up or assigned needs more info ℹ️ Item requires more detail and removed question❓ Further information is requested labels Oct 28, 2024
@elfedy
Copy link
Contributor

elfedy commented Dec 4, 2024

The main challenge with this is that the compiler operates in terms of files and not contracts, so when tests/script source files also include contracts, we would need to parse the file, and remove the test contract in place, keeping the rest.
The ROI is probably there though as the UX improvement would be quite big. Maybe a good first iteration of this is enabling the test/script skipping via a flag.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs more info ℹ️ Item requires more detail needs triage ♟️ Issue needs to be picked up or assigned p2 🟡 Indicates moderately high priority item
Projects
None yet
Development

No branches or pull requests

2 participants