Contributing to the Odoo Community Association (OCA)

Public Channel / Odoo Experience 2015

Share on Social Networks

Share Link

Use permanent link to share in social media

Share with a friend

Please login to send this presentation by email!

Embed in your website

Select page to start with

20.

1. Contributing to the Odoo Community Association (OCA) © Gary Larson

2. 2 / www.camptocamp.com / Come and talk with us at the OCA Booth © Gary Larson

11. 11 / www.camptocamp.com / Our Continuous Integration tools © Gary Larson

13. 13 / www.camptocamp.com / Code Reviews © Gary Larson

18. 18 / www.camptocamp.com / Becoming a member © Gary Larson

4. 4 / www.camptocamp.com / How can you get involved? ■ Follow us ■ Test and review and use our modules ■ Submit code and documentation ■ Become a member

8. 8 / www.camptocamp.com / The CLA ■ Gives some rights to the association over your contributions ■ The OCA is committed to open source by its by - laws ○ The association is allowed to relicense your contributions, but only to an OSI approved license ■ We have some CLA forms on the OCA booth

14. 14 / www.camptocamp.com / Reviewing a PR (1/3) ■ Check travis status ○ If red, figure out why (failure unrelated to the PR, flake8 issue, broken test...) ■ Read the information available to understand what the PR does ○ Commit message, README file... ○ If not clear ask the submitter for more information

6. 6 / www.camptocamp.com / Participate ■ Test the modules ○ You can use http://runbot.odoo - community.org/ ■ Create a github account, and use it to report issues ■ Test and review pull requests ○ The runbot makes this easy

16. 16 / www.camptocamp.com / Reviewing a PR (3/3) ■ Check the OCA coding conventions ■ Watch for issues for which we have no checks for now ○ Programming errors, bad API usage ○ Obscure code ○ Missing translations ○ ... ■ When happy, say :+1:

3. 3 / www.camptocamp.com / What is the OCA ? ■ A not for profit organization ■ http://odoo - community.org/ ■ Serves as umbrella for 105 github projects ○ https://github.com/OCA/ ○ Each hosting several Odoo addons ○ Development shared across 67 teams

7. 7 / www.camptocamp.com / Propose documentation and code ■ You'll need to sign the Contributor License Agreement (CLA) ■ Make Pull Requests on the projects ○ Watch for the output of the CI tools ○ Wait for reviews, and discuss with the reviewers, improve your code ■ Try to keep a good submitted PR / reviewed PR ratio ○ Just submitting code and never doing reviews is abusing the ecosystem

15. 15 / www.camptocamp.com / Reviewing a PR (2/3) ■ Connect on runbot and try to use the module ○ Comment on usability issues on the PR ○ Include screen shots (easy to do on github) ○ Check for corner cases you can think of ■ If you are able to do this, check the code ○ Watch for untested places in the code ○ Think of other modules you know, and how this one will interact with them

9. 9 / www.camptocamp.com / Coding conventions ■ Our coding conventions are documented in OCA/maintainer - tools ○ In the CONTRIBUTING.md file ○ There's a direct link from the OCA web site ■ Built on Odoo's official recommendations ○ With some added requirements ○ With some relaxed requirements

19. 19 / www.camptocamp.com / Becoming a member ■ It is not required to be a member of the association to be a contributor ■ Still, it is nice to support the association ○ Membership is for individuals only (no for - profit companies) ○ Your membership fees help cover for the runbot server costs, code sprint organisation costs... ○ https://odoo - community.org/shop

5. 5 / www.camptocamp.com / Follow us ■ The web site ■ The blog https://odoo - community.org/blog/news - 1 ■ Twitter @OdooCommunity ■ The contributors mailing list ■ https://odoo - community.org/groups/15

12. 12 / www.camptocamp.com / Our Continuous Integration tools ■ Each PR is processed by TravisCI ○ Syntactatic / formatting checks with flake8 and pylint ○ Install the addons ○ Run tests using the odoo server facilities ■ For most repositories, PRs are also processed by the OCA runbot ○ This can be used to test the addons interactively ■ Demo: https://github.com/OCA/partner - contact/pull/126

17. 17 / www.camptocamp.com / Proposing a new project ■ You feel something is missing in the OCA landscape ○ Did you really check everywhere? ○ Ask on the contributors mailing list ○ Ask on Odoo community mailing list too ○ Gather people wanting to work on the topic ○ https://odoo - community.org/page/suggest - a - project

10. 10 / www.camptocamp.com / Github cheat sheet: making a PR $ git clone git@github.com/OCA/hr $ cd hr $ git remote add work git@github.com/ account /hr $ git checkout - b 8.0 - fix - stuff origin/8.0 # write code and tests, run tests until green $ git add - p $ git commit $ git push work Then browse to https://github.com/OCA/hr and click on the submit PR button

Views

  • 2396 Total Views
  • 302 Website Views
  • 2094 Embeded Views

Actions

  • 0 Social Shares
  • 0 Likes
  • 0 Dislikes
  • 0 Comments

Share count

  • 0 Facebook
  • 0 Twitter
  • 0 LinkedIn
  • 0 Google+

Embeds 5

  • 7950 odoo-community.org
  • 2 www.odoo.com
  • 6 www.odoo-community.org
  • 8 translate.googleusercontent.com
  • 3 test.odoo-community.org