From 14858c416b17b60541a99ed1670b3ca31c455878 Mon Sep 17 00:00:00 2001 From: takunomi-build-bot Date: Sun, 13 Apr 2025 18:46:58 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=A4=96=20Repository=20layout=20updated=20?= =?UTF-8?q?to=20latest=20version?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This commit was automatically generated by [a script](https://gitfub.space/Jmaa/repo-manager) --- CONVENTIONS.md | 34 +++++++++++++++++++++++++++++----- 1 file changed, 29 insertions(+), 5 deletions(-) diff --git a/CONVENTIONS.md b/CONVENTIONS.md index bf8acd8..7fc9a32 100644 --- a/CONVENTIONS.md +++ b/CONVENTIONS.md @@ -1,8 +1,32 @@ -When writing code, you MUST follow these principles: +# Conventions -- No trailing whitespace. -- Use types everywhere possible. +When contributing code to this project, you MUST follow the requirements +specified here. + +## Code Conventions + +When contributing code to this project, you MUST follow these principles: + +- Code should be easy to read and understand. +- Keep the code as simple as possible. Avoid unnecessary complexity. +- Use meaningful names for variables, functions, etc. Names should reveal intent. +- Functions should be small and do one thing well. They should not exceed a few lines. +- Function names should describe the action being performed. - Only use comments when necessary, as they can become outdated. Instead, strive to make the code self-explanatory. - When comments are used, they should add useful information that is not readily apparent from the code itself. -- Dictionaries that do not change during the runtime of the program must be - placed in top-level scope. +- Properly handle errors and exceptions to ensure the software's robustness. +- Use exceptions rather than error codes for handling errors. +- Consider security implications of the code. Implement security best practices to protect against vulnerabilities and attacks. +- Documentation should document semantics, not syntax. +- Prefer importing modules, not individual items from modules. +- Do not use f-strings in logging statements. +- Loop variables and walrus-expression-variables should be deleted when + unneeded to keep scope clean, and to avoid accidental use. + +## Testing + +When contributing test to this project, you MUST follow these principles: + +- Do not use any testing libraries other than `pytest`. +- Mocking is the root of all evil. Writing your own stubs is much more + preferable.