Merge lp:~mbp/bzr/doc into lp:bzr

Proposed by Martin Pool
Status: Merged
Approved by: John A Meinel
Approved revision: no longer in the source branch.
Merged at revision: not available
Proposed branch: lp:~mbp/bzr/doc
Merge into: lp:bzr
Diff against target: 183 lines (+117/-59)
1 file modified
doc/developers/contribution-quickstart.txt (+117/-59)
To merge this branch: bzr merge lp:~mbp/bzr/doc
Reviewer Review Type Date Requested Status
John A Meinel Approve
Parth Malwankar Approve
Review via email: mp+19682@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Martin Pool (mbp) wrote :

This tries to replace and update http://wiki.bazaar.canonical.com/BzrGivingBack and http://doc.bazaar.canonical.com/developers/contribution-quickstart.html with some clearer information and a somewhat more friendly (I feel) tone.

Revision history for this message
Parth Malwankar (parthm) wrote :

Looks useful to me.

review: Approve
Revision history for this message
John A Meinel (jameinel) wrote :

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Martin Pool wrote:
> Martin Pool has proposed merging lp:~mbp/bzr/doc into lp:bzr.
>
> Requested reviews:
> bzr-core (bzr-core)
> Related bugs:
> #473099 Incorrect markup in centralized workflow tutorial
> https://bugs.launchpad.net/bugs/473099
> #512385 Broken link to "quick start card" in online user guide
> https://bugs.launchpad.net/bugs/512385
>
>
> This tries to replace and update http://wiki.bazaar.canonical.com/BzrGivingBack and http://doc.bazaar.canonical.com/developers/contribution-quickstart.html with some clearer information and a somewhat more friendly (I feel) tone.
>

Looks good to me.

 merge: approve

Only bit would be:
+ [/home/mbp/bzr]
+ push_location = lp:~mbp/bzr/
+ push_location:policy = appendpath
+ public_branch = http://bazaar.launchpad.net/~mbp/bzr/
+ public_branch:policy = appendpath

You may want to s/mbp/USER/

Also, it may not be clear that it is

[/home/LOCAL_USER/bzr]
and
push_location = lp:~LP_USER/bzr/

or something like that.

John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkt+3lUACgkQJdeBCYSNAANtgwCcCa++GsiiIfmgS4unbte+wV8Z
zi4An15X0JddQLwLbbgSoRMwFs/mQUvw
=jVFX
-----END PGP SIGNATURE-----

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'doc/developers/contribution-quickstart.txt'
2--- doc/developers/contribution-quickstart.txt 2010-02-19 04:00:31 +0000
3+++ doc/developers/contribution-quickstart.txt 2010-02-23 02:35:25 +0000
4@@ -1,62 +1,120 @@
5-Bazaar Contribution in Five Minutes
6-===================================
7-
8-Contributing to Bazaar requires attention to quality. To ensure
9-high-quality commits, the "Bazaar process" involves you in our
10-code review and improvement activities.
11-
12-In brief, a contribution should include:
13-
14-1. A brief rationale, including expected audience and use cases,
15- for inclusion in Bazaar.
16-
17-2. A branch registered as a branch on Launchpad, and submitted as
18- a merge proposal.
19-
20-3. The branch should include:
21-
22- a. implementation of the feature,
23-
24- b. user documentation (if the feature is visible in the user
25- interface) and/or developer documentation (if new or
26- changed APIs are provided), and
27-
28- c. tests to ensure the specification is correctly
29- implemented.
30-
31-For more information, see the `Bazaar Developer Guide <HACKING.html>`_.
32-
33-If you are not an experienced Bazaar contributor, why not ask for
34-mentoring? When you submit your merge proposal on Launchpad, simply say
35-"I'd like to be mentored, please" in your submission. Or ask for help
36-with your contribution on the IRC channel, mailing list, or on Launchpad
37-(https://answers.launchpad.net/bzr).
38-
39-* `Giving back <http://wiki.bazaar.canonical.com/BzrGivingBack>`_: How to get
40- your changes to Bazaar integrated into a release.
41-
42-
43-Current Bazaar Mentors
44-----------------------
45-
46-See the roster at http://bazaar-vcs.org/PatchPilot, although other
47-developers may help too!
48-
49-
50-Bazaar Mentors FAQ
51-------------------
52-
53-1. Why is this "Bazaar process" in HACKING.txt so complicated?
54-
55- Answer: If we knew *that*, we'd simplify it! We are working
56- on streamlining many aspects, but quality comes first.
57-
58-1. What sort of things can a mentor help with?
59-
60- Anything that's getting in your way, time permitting. This includes
61- guiding you through the ``bzrlib`` API, explaining how to use our test
62- infrastructure, discussing possible designs for your bug fix or
63- feature, and so on.
64+Contributing to Bazaar
65+======================
66+
67+Talk to us
68+----------
69+
70+If you want to fix or improve something in Bazaar, we want to help you.
71+You can ask at any time for help, on the list, on irc, or through a merge
72+proposal on Launchpad.
73+
74+In particular, the rostered
75+`Patch Pilot <http://wiki.bazaar.canonical.com/PatchPilot>`_
76+is an experienced developer who will help you get your changes in, through
77+code review, advice, debugging, writing tests, or whatever it takes.
78+
79+* `Bazaar mailing list <http://lists.ubuntu.com/mailman/listinfo/bazaar>`_
80+
81+* IRC in channel ``#bzr`` on ``irc.ubuntu.com``
82+
83+
84+Starting
85+--------
86+
87+Before starting on a change it's a good idea to either file a bug, find a
88+relevant existing bug, or send a proposal to the list. If there is a bug
89+you should set it to "In Progress" and if you wish assign it to yourself.
90+
91+You might like to start with a bug tagged `easy
92+<https://bugs.edge.launchpad.net/bzr/+bugs?field.tag=easy>`_.
93+
94+Making a branch
95+---------------
96+
97+First, get a local copy of Bazaar::
98+
99+ $ cd $HOME
100+ $ bzr init-repo bzr
101+ $ cd bzr
102+ $ bzr branch lp:bzr bzr.dev
103+
104+Now make your own branch; we recommend you include the bug number and also
105+a brief description::
106+
107+ $ bzr branch bzr.dev 123456-status-speed
108+
109+and go ahead and commit in there. Normally you should fix only one bug or
110+closely-related cluster of bugs per branch, to make reviews and merges
111+flow more smoothly.
112+
113+For bugs that exist in older supported branches of bzr like 2.0 or 2.1,
114+you might want to fix the bug there so it can go into a bugfix release,
115+ie ::
116+
117+ $ bzr branch lp:bzr/2.1 bzr.2.1
118+ $ bzr branch bzr.2.1 123458-2.1-status
119+
120+You probably want this configuration in ``~/.bazaar/locations.conf``::
121+
122+ [/home/USER/bzr]
123+ push_location = lp:~LAUNCHPAD_USER/bzr/
124+ push_location:policy = appendpath
125+ public_branch = http://bazaar.launchpad.net/~LAUNCHPAD_USER/bzr/
126+ public_branch:policy = appendpath
127+
128+with your local and Launchpad usernames inserted.
129+
130+
131+Writing tests
132+-------------
133+
134+We value test coverage and generally all changes should have or update a
135+test. There is a powerful test framework but it can be hard to find the
136+right place to put your test. Don't hesitate to ask, or to propose a
137+merge that does not yet have tests.
138+
139+Normally for command-line code you should look in
140+``bzrlib.tests.blackbox`` and for library code in ``bzrlib.tests``. For
141+functions on an interface for which there are multiple implementations,
142+like `Transport`, look in ``bzrlib.tests.per_transport``.
143+
144+It's a good idea to search the tests for something related to the thing
145+you're changing and you may find a test you can modify or adapt.
146+
147+To run the tests::
148+
149+ $ ./bzr selftest
150+
151+Normally the tests will skip if some library dependencies are not present.
152+On Ubuntu, you can install them with this command (you must have some
153+repositories enabled in Software Sources)::
154+
155+ $ sudo apt-get build-dep bzr
156+
157+To build the binary extensions::
158+
159+ $ make
160+
161+For more information: `Testing Guide <testing.html>`_.
162+
163+
164+Proposing a merge
165+-----------------
166+
167+
168+Then propose a merge into bzr; for bzr 2.2 and later you can use the ``bzr
169+propose-merge`` command. In the comment for your merge proposal please
170+explain what you're trying to do and why. For `example
171+<https://code.launchpad.net/~ian-clatworthy/bzr/whats-new-in-2.1/+merge/19677>`_:
172+
173+ As discussed on the mailing list, this patch adds a What's New document
174+ summarising the changes since 2.0.
175+
176+If you make additional changes to your branch you don't need to resubmit;
177+they'll automatically show up in the merge proposal.
178+
179+* `Launchpad Code Review Help <http://help.launchpad.net/Code/Review>`_.
180+
181
182 ..
183 vim: ft=rst tw=74 ai