Thank you for your interest in contributing to the Dialog2Graph project! We welcome contributions from the community to help improve and expand Dialog2Graph tool.
- Create a branch for your work. Preferable branch prefixes are
feat,fix,exp. - Switch to your branch
git checkout <your_branch_name>- Set up the development environment (it is activated automatically)
poetry install --with docs,lint,testsTo delete all the virtual environments, run
poetry env remove --allWe use poetry as a dependency management tool. poetry.lock contains all dependencies for the current project. In order to update versions specified in the poetry.lock, run
poetry update-
Experiment with the graphs (see the following section for a detail) or add new features to Dialog2Graph tool
-
Check linting and try to reformat your code running
poetry run poe lint poetry run poe format
-
Create a pull request
Tips:
- choose a proper name for your pull request,
- add clear description of new features and fixes
All conducted experiments should be stored in the ./experiments folder, each experiment saved in the separate folder and named standardly, exp<YYYY>_<MM>_<DD>_<hypothesis>.
To make new experiment with automatic folder creation run
poetry new <experiment_name>or, alternatively, if you've already created the folder, run
poetry initNote: no images are allowed to put into folder. Please, consider using external links for attaching or using image files
- Follow PEP 8 style guide for Python code
- Write clear and concise comments
- Include docstrings for functions and classes
- Write unit tests for new features or bug fixes
- Name of your PR (keep it simple yet meaningful)
- Short description (provide list of changes)
When having any doubts, you can simply create a draft PR and request a review before merging your request.
If you encounter any bugs or have feature requests, please, open an issue on the GitHub. Provide as much detail as possible, including:
- A clear and descriptive title
- Steps to reproduce the issue
- Expected behavior
- Actual behavior
- Graph visulisation if possible
We are currently working on supporting various types of graphs.
Supported graph types:
- chain
- single cycle
- multi-cycle graph
- complex graph with cycles
Currently unsupported graph types:
- single node cycle