Contribuire al Qt Project

576 views

Published on

Grazie al nuovo Qt Project, è possibile finalmente contribuire in modo semplice bugfix, nuove feature, nuovi moduli e diventare persino maintainer! Scopri come funziona il nuovo processo di sviluppo

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
576
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Contribuire al Qt Project

  1. 1. How to Contribute to the Qt-Project http://qt-project.org
  2. 2. Agenda What is the Qt-Project (qt-project.org) Therere many ways to contribute to Qt! Join the Qt-Project Example simple contribution How to submit a patch with gerrit Whats next? Contributing & Reviewing
  3. 3. What is the Qt-Project Before... Process differed if you were a Nokia employee or not Non-employees had to use Gitorious Merge Request System. Non-Nokia developers saw the process as: 1) Upload to Gitorious 2) Create Merge Request 3) While (1) {} Only Nokia engineers could approve changes
  4. 4. What is the Qt-Project Solutions... Same workflow for everyone Powerful code review tool Mailing list with all relevant developers No Nokia legal scans in the Qt Project QA results available to all
  5. 5. What is the Qt-Project
  6. 6. What is the Qt-Project Approvers Approvers are contributors who can:  Approve contributions.  Reject contributions. Decisions guided by Spirit and Technical fit.  Is it the Qt Way?  Have I run the test?  Have I done the right thing? Peer-Review is enforced (you cant approve your own code)
  7. 7. What is the Qt-Project Maintainers Maintainers are the people responsible for a particular module, port or component  They must know whats going on  They must ensure every contributions is reviewed  They get the privilege of setting direction. My module is ready for beta cycle?
  8. 8. What is the Qt-Project Chief Maintainer The Chief maintainer is a maintainer (of QtBase) Only one for the entire Qt Project Final decider in case of no consensus
  9. 9. Therere many ways to Contribute Documentation• Demo & Examples• Wiki Articles• Keeping wiki pages up-to-date• Blogs http://developer.qt.nokia.com/wiki/Category:Snippets• Books• Translations http://planetqt.org/
  10. 10. Therere many ways to Contribute Do community work• Report bugs• Request new features • Participate on online discussion in Qt (mailing list/forums) #qt #qtwebkit • Helping newcomers #qt-components #qt-mobility out with the setup #qtlabs #qt-creator • Join Qt channels on #qt-project #qt-qml IRC
  11. 11. Therere many ways to Contribute Write Qt Code • Fix bugs • Write tests • Review Qt Code • Write Qt code
  12. 12. Join the Qt-Project Go to the http://qt-project.org! Register an account (valid for gerrit & jira) at:  https://bugreports.qt.nokia.com Gerrit - Code Review  https://codereview.qt-project.org Checkout the source code:  git clone git://gitorious.org/qt/qt.git
  13. 13. Qt-Project WorkflowContinuous Integration Systemis used for building and testing.● Fetches reviewed changes● Runs build & test for the changes● Transfers the changes passed further to the public tip.
  14. 14. Example: A Simple Contribution Playing QPicture from threads QPicture internally uses a QBuffer d->pictb  This buffer is used for read during play().  This causes problems during concurrent access to QPicture play(). Replace QBuffer of Private class with QbyteArray In this way we can call play() concurrently
  15. 15. How to submit a patch with gerrit http://developer.qt.nokia.com/videos/watch/gerrit_contributing_and_reviewing_a_change Clone Repository git clone ssh://<username>@codereview.qt-project.org/qt/qtbase.git Gerrit Commit Hook scp -p <username>@codereview.qt-project.org:hooks/commit-msg .git/hooks Doing changes & commit vim src/foo.cc git add src/foo.cc git commit -m “My Change” git push ssh://<username>@codereview.qt-project.org:29418 /qt/qtbase HEAD:refs/for/master
  16. 16. Add Approvers
  17. 17. Gerrit Code Review
  18. 18. Code Review
  19. 19. Reviews
  20. 20. Publish & Merge
  21. 21. Contributing & Reviewing
  22. 22. Contribute! http://qt-project.org Documentation (Blogs, Wiki, Examples) Do community work(Bug Report, Participate in mailing list/forums) Write Qt Code (Fix Bugs, Write tests, Write Qt, Review)
  23. 23. Questions? How to Contribute To the Qt-Project http://qt-project.org 23
  24. 24. THANKS ! Develer S.r.l. Via Mugellese 1/A 50013 Campi Bisenzio Firenze - ItalyContactsMail: info@develer.comPhone: +39-055-3984627Fax: +39 178 6003614http://www.develer.com

×