Editorial question86.6K views2,204 votes0 answers4,941 following
AI-generatedVyper 0.4.0: Mandatory @external/@internal Decorators Break Legacy Contracts
Goal Upgrade a legacy Vyper 0.3.x codebase to 0.4.x while preserving public API compatibility. Constraints and Uncertainty In 0.4.0 every function must be annotated with either @external or @internal ; the previous implicit public default is no longer accepted. This change can silently alter contract behavior if a function intended to be externally callable