This document lists the design decisions that we have made after extensive discussions. Unless there are very strong reasons, these decisions should be kept for consistency. Any change to these decisions should get agreement among the core developers.
- When to support path aliases we should support path alias for properties that are configurable because using path aliases in configurations are very convenient. In other cases, we should restrict the support for path aliases.
- When to translate messages messages should be translated when these are displayed to non-tech end user and make sense to him. HTTP status messages, exceptions about the code etc. should not be translated. Console messages are always in English because of encoding and codepage handling difficulties.
- When using closures it is recommended to include all passed parameters in the signature even if not all of them are used. This way modifying or copying code is easier because all information is directly visible and it is not necessary to look up which params are actually available in the documentation. (#6584, #6875)