Contribute: Difference between revisions

From QEMU
(added headline with short introduction of page, improved hints on "todos" in students section)
m (→‎Project Infrastructure: Update Tuesdays call schedule)
 
(125 intermediate revisions by 35 users not shown)
Line 1: Line 1:
On [[Documentation/GettingStartedDevelopers|this helper page]] there is a list of rather simple steps (even if that is not the only way) describing how you can enable yourselves to join this project. Below you will find the project specific organizational and technical aspects that will allow you to hook into the ongoing development.
== Project Infrastructure ==
* [http://git.qemu.org Mainline qemu.git] source repository (for developer repositories see the {{src|path=MAINTAINERS}} file).
* [[Contribute/MailingLists|Mailing lists]]: savannah.nongnu.org
* IRC: #qemu on [http://www.oftc.net/ irc.oftc.net]
* [https://www.qemu.org/contribute/report-a-bug/ Bug tracker]: [https://gitlab.com/qemu-project/qemu/-/issues GitLab Issues]
* [[Testing#Continuous_Integration|Continuous Integration]]: [https://gitlab.com/qemu-project/qemu/-/pipelines GitLab CI], [http://patchew.org/QEMU/ Patchew] and [https://travis-ci.org/qemu/qemu Travis]
* [[Main_Page|Wiki]]: this website
* Phone call: Scheduled for Tuesdays on as-needed basis for agenda topics raised on mailing list. Contact [mailto:quintela@redhat.com Juan Quintela] for dial-in details.  To find the time in your location, use:
date -d 'TZ="America/New_York" Tuesday 09:00 am'
* If you need to find out or change who's responsible for a particular bit of our infrastructure [[AdminContacts]] has this information.
* [[ToDo]] lists


== Revision Control ==
== Info for new Contributors ==
* [[Contribute/DevelopmentProcess|The Development Process]]
* [https://www.qemu.org/contribute/report-a-bug/ How to report a bug]
* [[Documentation/GettingStartedDevelopers|Getting started for developers]]
* [https://qemu.org/contribute/submit-a-patch/ How to submit a patch]
* [https://qemu.org/contribute/trivial-patches/ How to submit a trivial patch]
* [[Contribute/BiteSizedTasks|Bite Sized Tasks]]: Introductory task list for new contributors
* [[Contribute/FAQ|Contributor FAQ]]


QEMU uses [http://www.gitscm.org git] for revision control.  A number of repositories is hosted on http://git.qemu.org.
See also Jeff Cody's presentation [https://www.youtube.com/watch?v=yjBid6iF4LE "New to QEMU: A Developer's Guide to Contributing"] on YouTube for some information about how to get started.


== Submitting patches ==
== Student Outreach ==


All contributions to QEMU are sent in patch form to the qemu-devel [[MailingLists|mailing list]].
The QEMU project participates in both the [[:Category:GSoC|Google Summer of Code]] and the [[:Category:Outreachy|Outreachy]] programs. See the respective pages for details of project ideas and deadlines for submissions.


Send patches inline so they are easy to reply to with review comments.  Do not put patches in attachments.
== Development ==
The [[planning]] pages is where you can find important dates for the next release.


Patch emails must include a Signed-off-by: line.  For more information see [http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/SubmittingPatches;h=689e2371095cc5dfea9927120009341f369159aa;hb=f6f94e2ab1b33f0082ac22d71f66385a60d8157f#l297 SubmittingPatches 1.12].
The [[features]] page provides a description of in-progress features.


Make sure to follow the coding style:
== Subpages ==
* [http://git.qemu.org/qemu.git/plain/CODING_STYLE QEMU Coding Style]
* [http://git.qemu.org/qemu.git/plain/HACKING QEMU Coding Guidelines]


Split up longer patches into a patch series of logical code changes.  Each change should compile and execute successfully.
Here are all the sub-pages for contribute


== Students ==
{{Special:PrefixIndex/Contribute/}}
 
QEMU is participating in Google's Summer of Code 2010 program.
 
Some reports on the processed topics (partially or fully) can be found here:
* [[Google Summer of Code 2010/QMP|QMP]] - about syncing QEMU monitor and QEMU Machine Protocol (QMP) features
* [[Google Summer of Code 2010/VNC|VNC]] - about improvements in speed and features of QEMU supported VNC protocols
 
For more information on GSoC-2010 and especially lots more of probably still open topics for improvement please see [[Google_Summer_of_Code_2010|this page]].
 
== Features ==
* [[Features/0.13|Proposed 0.13 Features]]
* [[Features/0.13/HelperNetworking|0.13/HelperNetworking]]
* [[Features/CPUModels|CPUModels]]
* [[Features/DriveRefactoring|DriveRefactoring]]
* [[Features/GtkDisplayState|GtkDisplayState]]
* [[Features/HelperNetworking|HelperNetworking]]
* [[Features/NetDeviceFailover|NetDeviceFailover]]
* [[Features/PCIMemoryAPI|PCIMemoryAPI]]
* [[Features/PVCrashDetection|PVCrashDetection]]
* [[Features/Qcow2DataIntegrity|Qcow2DataIntegrity]]
* [[Features/RamAPI|RamAPI]]
* [[Features/Usability|Usability]]
* [[Features/VirtioBlkBoot|VirtioBlkBoot]]
* [[Features/FaultTolerance|FaultTolerance]]
* [[Features/ResetAPI|ResetAPI]]
 
* [[Features |/Features ]]
* [[Features/0.13 |0.13 ]]
* [[Features/AHCI |AHCI ]]
* [[Features/QED|QED]]
* [[Features/QDevCleanup |QDevCleanup ]]
* [[Features/QMP2 |QMP2 ]]
* [[Features/QMP_0.14 |QMP_0.14 ]]
* [[Features/SnapshottingImprovements |SnapshottingImprovements ]]
* [[Features/TCI |TCG Interpreter ]]
* [[Features/Tracing |Tracing ]]
* [[Features/Tracing/Roadmap |Tracing/Roadmap ]]
* [[Features/Tracing/UseCases |Tracing/UseCases ]]
* [[Features/Usability |Usability ]]
* [[Features/Sheepdog |Sheepdog ]]
* [[Features/PRePCleanup|PReP cleanup]]
* [[Features/40p|40p]]
* [[Features/BeBox|BeBox]]
* [[Features/Z80|Z80]]
* [[Features/HPPA|HPPA]]
 
== GIT repo ==
* [http://git.qemu.org/ QEMU.org GIT repo]
* [http://repo.or.cz/w/qemu.git repo.or.cz]
* [http://repo.or.cz/w/qemu/aliguori.git Anthony Liguori's QEMU tree]
* [http://repo.or.cz/w/qemu/aliguori-queue.git Anthony Liguori's QEMU queue]
* [http://git.kernel.org/?p=linux/kernel/git/mst/qemu.git;a=summary Qemu patches by Michael S. Tsirkin. Warning: constantly rebased. pci subsystem]
* [http://repo.or.cz/w/qemu/kevin.git kwolf Random patches. block device]
 
== Developers ==
 
* [[User:Agraf |Alexander Graf ]]
* [[User:AnthonyLiguori |Anthony Liguori ]]
* [[User:Wmat |Bill Traynor  ]]
* [[User:Blueswirl |Blueswirl ]]
* [[User:edgar |Edgar E. Iglesias ]]
* [[User:Joro |Joro ]]
* [[User:LuizCapitulino |Luiz Capitulino ]]
* [[User:Mariusmm |Màrius Montón ]]
* [[User:Miguel |Miguel Di Ciurcio Filho ]]
* [[User:NataliaPortillo |Natalia Portillo ]]
* [[User:Paolo_Bonzini |Paolo Bonzini ]]
* [[User:Pbrook |Paul Brook ]]
* [[User:Rowa |Robert Warnke ]]
* [[User:Stefan_Weil |Stefan Weil ]]
* [[User:Stefanha |Stefan Hajnoczi ]]

Latest revision as of 11:51, 25 January 2022

Project Infrastructure

date -d 'TZ="America/New_York" Tuesday 09:00 am'
  • If you need to find out or change who's responsible for a particular bit of our infrastructure AdminContacts has this information.
  • ToDo lists

Info for new Contributors

See also Jeff Cody's presentation "New to QEMU: A Developer's Guide to Contributing" on YouTube for some information about how to get started.

Student Outreach

The QEMU project participates in both the Google Summer of Code and the Outreachy programs. See the respective pages for details of project ideas and deadlines for submissions.

Development

The planning pages is where you can find important dates for the next release.

The features page provides a description of in-progress features.

Subpages

Here are all the sub-pages for contribute