Foundry-ZKsync zksolc Support Policy #915
dutterbutter
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
To provide clarity and a consistent user experience, we are introducing a formal policy for zksolc version support within
Foundry-ZKsync
. This policy is designed to address issues related to backward compatibility, unexpected behaviour, and user confusion when using unsupported or deprecated versions of zksolc alongsidefoundry-zksync
.Background
Historically,
Foundry-ZKsync
has informally supported only the latest release of zksolc. While this approach ensures that users benefit from the most recent features and fixes, it can lead to breaking changes for earlier versions. For instance, changes in compiler outputs or fields across zksolc versions have highlighted the potential for breaking changes. Such instances underscore the importance of a clear and structured version support policy.Policy Overview
Supported Versions
v1.5.6
serves as a baseline since it maintains structural compatibility.v1.5.7
and upcoming versions, which include post-compile-time linkage support.v1.5.9
is explicitly not supported due to a change whereAssemblyCreate
was introduced as anErrorType
rather than aWarningType
, leading to potential compatibility and usability issues. Users are strongly advised to usev1.5.11
or later, which resolves this behaviour.Deprecation Policy
v1.5.6
and later) unless compelling reasons necessitate deprecation (e.g., critical security vulnerabilities or obsolete functionality).v1.5.5 and below
orzksolc = 1.5.9
) will not be supported. Compilation will fail if these versions are explicitly specified.Behaviour for Unsupported Versions
zksolc = 1.5.5
) directly in their configuration, compilation will fail with a clear error message.zksolc = "path/to/zksolc-v1.5.5"
), Foundry will emit a warning rather than failing outright. This allows users to make informed decisions while minimizing disruptions.By defining this policy, we aim to enhance the stability and predictability of
Foundry-ZKsync
development while accommodating the evolving needs of the ecosystem. Feedback and contributions from the community are welcome as we implement and refine this policy.Relevant links:
Beta Was this translation helpful? Give feedback.
All reactions