Beside all the QA and CI tools providing code analysis and safety nets, the Nuxeo strategy about code quality relies on continuous improvement. It is not viable, nor wanted (for stability purpose), to update the whole code once or regularly regarding a specific subject. When editing a class, one must improve its quality in the mean time:
- first, update the header and format the code,
- then, clean up the code (dead parts, unused imports, potential NPE, field overwrite, deprecated usage, synchronize POM...),
- finally, do the work for which you opened that class.
Keep in mind that quality development rule: don't increase the debt, reduce the debt.
This chapter lists some rules that must be strictly followed when contributing to Nuxeo source code.
- Copyright and license headers
- Maven Coding Rules
- Java Code Style
- Catching Exceptions
- Secure Coding
- GWT compilation tuning
- Rules for Distributions
- XML or XML-like files code style
- Writing tests working with dates
- What is Needed to Design a REST API
- README Template
- User Interface Guidelines
- Field, Variable and Parameter Value Enforcement
- Temporary Files
- Data and Configuration Changes between Nuxeo Versions