Contributing¶
This project aims to share the latest advancements in PIDS research and must therefore be actively maintained. We need your help for this task!
Helpful contributions could be:
- Adding a new PIDS
- Fix a bug
- Adding new methods (e.g. encoders, decoders, featurization)
- Update current PIDSs (e.g. some systems may not reflect perfectly their original implementation)
- Optimizing pieces of code (e.g. you spot a slow operation and found a better alternative)
Pro tips¶
We provide some tips for those willing to contribute to PIDSMaker.
- Use dev container in VSCode: all interactions with PIDSMaker are made via the
pids
container. For a nicer dev experience, we highly recommend opening your VSCode window directly into the container for debuging purposes. More details here. - Avoid concurrent runs from scratch: if you launch 2 runs simultaneously, each with the same
build_graphs
config and same dataset, the files generated by each run will write concurrently in the same folder, leading to potentially invisible conflicts. To avoid this, you should launch the first run and wait for it to complete the first tasks to not overlap with concurrent runs. Once concurrent tasks are completed, you can run as many parallel runs as long as they start from a task with different arguments. Another way is to launch each run using--restart_from_scratch
to ensure no overlap.
Contribution guidelines¶
Before opening your PR, ensure to perform the following steps.
Format all files¶
pre-commit run --all-files
Run tests¶
See guidelines.
Build documentation¶
See guidelines.