Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given.
You can contribute in many ways:
Report bugs at https://github.com/vintasoftware/entity-embed/issues
Before reporting a bug, please double-check the requirements of Entity Embed: https://github.com/vintasoftware/entity-embed/blob/main/README.md#requirements
If you think you really found a bug, please create a GitHub issue and use the "Bug report" template.
Look through the GitHub issues for bugs. Anything tagged with "bug" and "help wanted" is open to whoever wants to implement it. Please comment on the issue saying you're working in a solution.
Look through the GitHub issues for features. Anything tagged with "enhancement" and "help wanted" is open to whoever wants to implement it. Please comment on the issue saying you're working in a solution.
entity-embed could always use more documentation, whether as part of the official entity-embed docs, in docstrings, or even on the web in blog posts, articles, and such.
If you have a suggestion, concern, or want to propose a feature, please create a GitHub issue and use the "New feature" template.
Ready to contribute? Please read our Code of Conduct: https://github.com/vintasoftware/entity-embed/blob/main/CODE_OF_CONDUCT.md
Now, here's how to set up entity-embed for local development.
Fork the entity-embed repo on GitHub.
Clone your fork locally:
$ git clone git@github.com:your_name_here/entity-embed.git
Install your local copy into a virtualenv. Assuming you have virtualenvwrapper installed, this is how you set up your fork for local development:
$ mkvirtualenv entity-embed $ cd entity-embed/ $ python setup.py develop
If you're using Conda instead of virtualenv, you must install PyTorch beforehand to have CUDA support:
$ conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c conda-forge
Install dev requirements (either on virtualenv or Conda):
$ pip install -r requirements-dev.txt
Create a branch for local development:
$ git checkout -b name-of-your-bugfix-or-feature
Now you can make your changes locally.
When you're done making changes, check that your changes pass flake8 and the tests, including testing other Python versions with tox:
$ flake8 entity-embed tests $ pytest $ tox
Commit your changes and push your branch to GitHub:
$ git add . $ git commit -m "Your detailed description of your changes." $ git push origin name-of-your-bugfix-or-feature
Submit a Pull Request through the GitHub website.
Before you submit a Pull Request, check that it meets these guidelines:
- The Pull Request should include tests.
- If the Pull Request adds functionality, the docs should be updated.
- The CI should pass.