Guidelines or Requirements?
The following document is a draft of recommended best practices in producing code, and is intended to be interpreted largely in the spirit of guidelines, but will call out what are requirements with keywords.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.