cobra
cobra copied to clipboard
Improve contributing documentation & add recording
Task Title
Task: Improve contributing documentation & add recording
Task Description
This task bundles material to be merged within the contribution guidelines. Let's use the first milestone of March to also get these guidelines more clear and extensive, so everyone can get started well.
Rapidly storing loose notes for this from the work done yesterday and today here.
1. How to make an issue on GitHub
2. How to create a branch
3. How to pull a branch and make changes to it
4. How to apply best practices (run black formatter, check for spelling mistakes, … )
5. Push the branch.
6. If the issue is resolved how to create a pull request and assign someone
7. How to make changes again if necessary.
8. How to merge and delete the branch if everything has been approved
- new reordering Patrick made of the above in his powerpoint
- adds to it:
1. ==>templates!, issue number #xxx in commit messages!
1b. milestone planning & the issues dashboard
2. branches ==> issue branches from dev! + gitflow workflow ([https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow](https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.atlassian.com%2Fgit%2Ftutorials%2Fcomparing-workflows%2Fgitflow-workflow&data=05%7C01%7CSander.VandenHautte%40pythonpredictions.com%7C5f8b42515fe74402609e08db1fe69441%7C88cb0952ee764b6ea6c4f7da82b4c15a%7C0%7C0%7C638138847409499390%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=GLzBsb1H0ATsl%2FjT60AxIXFDQwOgZ1omYFyiLNKm7Dc%3D&reserved=0))
5. pushing ==> Black linter & CI/CD (github actions): development_CI.yaml - runs Pylint and pytest whenever we push to develop.
5b. Contributing guidelines ([https://github.com/PythonPredictions/cobra/wiki/Contributing-guidelines-&-workflows](https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FPythonPredictions%2Fcobra%2Fwiki%2FContributing-guidelines-%26-workflows&data=05%7C01%7CSander.VandenHautte%40pythonpredictions.com%7C5f8b42515fe74402609e08db1fe69441%7C88cb0952ee764b6ea6c4f7da82b4c15a%7C0%7C0%7C638138847409499390%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=Al3MAg22kpf0qaQMD%2Bxu%2FuZ%2BD2BlEVlB7Ea70tOzmjM%3D&reserved=0))
o Cobra development style suggestions
5c. Unit testing & mocking (pip install pytest-mock)
o how to work with the branches and unit tests in Pycharm
9. Working on the tutorials / documentation
10. The Cobra sharepoint folder, its structure and additional helpful material like Geerts paper.
=> Every Cobra developer should have studied the DFT presentation about Cobra.
11. Releasing: merging with main, version number increase respecting semantic versioning ([https://semver.org/](https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsemver.org%2F&data=05%7C01%7CSander.VandenHautte%40pythonpredictions.com%7C5f8b42515fe74402609e08db1fe69441%7C88cb0952ee764b6ea6c4f7da82b4c15a%7C0%7C0%7C638138847409499390%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=OuQnprz5No7oJm8kQSFXgUSws%2By%2BlCcSq2Xpv%2Bu5VVg%3D&reserved=0)), publishing the new package version ([https://docs.github.com/en/actions/guides/building-and-testing-python#publishing-to-package-registries](https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.github.com%2Fen%2Factions%2Fguides%2Fbuilding-and-testing-python%23publishing-to-package-registries&data=05%7C01%7CSander.VandenHautte%40pythonpredictions.com%7C5f8b42515fe74402609e08db1fe69441%7C88cb0952ee764b6ea6c4f7da82b4c15a%7C0%7C0%7C638138847409499390%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=tucoot3wu2%2F1kccDF5y0JDQ6LW6xZBPhK5CIDS6fuow%3D&reserved=0) + Our PyPI account is python-admin (see our internal company wiki for access: https://tobius365.sharepoint.com/sites/Tobania.DataWiki/SitePages/Cobra.aspx)). Or manual release: [https://packaging.python.org/tutorials/packaging-projects/](https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpackaging.python.org%2Ftutorials%2Fpackaging-projects%2F&data=05%7C01%7CSander.VandenHautte%40pythonpredictions.com%7C5f8b42515fe74402609e08db1fe69441%7C88cb0952ee764b6ea6c4f7da82b4c15a%7C0%7C0%7C638138847409499390%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=v8VEf0%2B0W59dF8qIBzGSi09mwa9ezXnfXuYW06N217Q%3D&reserved=0).
12. hotfixes
pycharm & vscode configuration for integration of git, github, testing.
above procedure + created video => merge into [https://github.com/PythonPredictions/cobra/wiki/Contributing-guidelines-&-workflows](https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FPythonPredictions%2Fcobra%2Fwiki%2FContributing-guidelines-%26-workflows&data=05%7C01%7CSander.VandenHautte%40pythonpredictions.com%7C5f8b42515fe74402609e08db1fe69441%7C88cb0952ee764b6ea6c4f7da82b4c15a%7C0%7C0%7C638138847409655630%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=KJfXvUqcmx8MsjczP3XEk20ffiv4d7y1sHOKZSTGtCc%3D&reserved=0)