Some checks failed
Deploy Quartz site to GitHub Pages / build (push) Has been cancelled
1.3 KiB
1.3 KiB
Markdown
Use Obsidian-flavored Markdown. Use fenced code blocks for code snippets, indicating the language when appropriate. Avoid extra new lines, prefer fewer new lines and compact formatting.
Coding
The rest of this document describes coding conventions to follow when writing code.
General
- Do not create comments nor docstrings when updating code unless asked.
- Do not create a summary .md file unless asked.
- Do not create a README.md file unless asked.
- When installing a new dependency, prefer to use the latest version.
Python
- Avoid exceptions if possible
- When exceptions are necessary, use specific exception types, provide meaningful messages, and handle them appropriately.
- Exceptions try/except blocks should be as narrow as possible, try extra hard to avoid catching exceptions you did not intend to catch.
- Use type hints for all functions and methods.
Python unit testing:
- Use pytest framework, version 9 or higher.
- Prefer parametrized tests for functions that need to be tested with multiple sets of inputs and expected outputs.
- Use the new `with pytest.test(...)´ for that purpose:
import pytest
def test_parametrized(subtests: pytest.Subtests) -> None:
# ... setup code ...
parameters = [...]
for ... in parameters:
with subtests.test(x=...):
assert ...
# ... tear down ...