Thu, 21 Jul 2022 01:10:22 -0500
Update pidgin for the purple_account_manager_get_(in)active deprecations
Testing Done:
Compiled and made sure the menus still functioned as expected.
Reviewed at https://reviews.imfreedom.org/r/1536/
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
1 | Title: Code Contributions |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
2 | Slug: code-contributions |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
3 | |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
4 | ## Code Contributions |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
5 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
6 | ### Introduction |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
7 | |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
8 | All of the Pidgin related projects use [Review |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
9 | Board](https://reviewboard.org/) for handling contributions at |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
10 | [reviews.imfreedom.org](https://reviews.imfreedom.org). |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
11 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
12 | ### First Time Setup |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
13 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
14 | There are a few things you'll need to set up to be able to submit a code |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
15 | review to these projects. This includes installing |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
16 | [RBTools](https://www.reviewboard.org/downloads/rbtools/) |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
17 | as well as some additional |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
18 | [Mercurial](https://www.mercurial-scm.org/) |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
19 | configuration. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
20 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
21 | #### Install RBTools |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
22 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
23 | The recommended way to install RBTools is via pip and can be done with the |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
24 | following command. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
25 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
26 | ```sh |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
27 | pip3 install -U "RBTools>=1.0.3" |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
28 | ``` |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
29 | Once RBTools is installed you need to make sure that `rbt` is available on your |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
30 | `$PATH`. To do this, you may need to add `$HOME/.local/bin` to your `$PATH`. |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
31 | The exact procedure to do this is dependent on your setup and outside of the |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
32 | scope of this document. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
33 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
34 | #### Mercurial Configuration |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
35 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
36 | This configuration for Mercurial is to make your life as a contributor easier. |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
37 | There a few different ways to configure Mercurial, but these instructions will |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
38 | update your user specific configuration in `$HOME/.hgrc`. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
39 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
40 | The first thing we need to do is to install the evolve extension. This |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
41 | extension makes rewriting history safe and we use it extensively in our |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
42 | repositories. You can install it with a simple `pip3 install -U hg-evolve`. We |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
43 | will enable it below with some other bundled extensions, but you can find more |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
44 | information about it |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
45 | [here](https://www.mercurial-scm.org/wiki/EvolveExtension). |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
46 | |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
47 | When working with Mercurial repositories it is very important to make sure that |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
48 | your username is set properly as it is added to every commit you make. To set |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
49 | your username you must add it to the `[ui]` section in your `$HOME/.hgrc` like |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
50 | the following example. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
51 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
52 | ```ini |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
53 | [ui] |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
54 | username = Full Name <email@example.com> |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
55 | ``` |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
56 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
57 | Next we need to make sure that the ***evolve*** and ***rebase*** extensions are |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
58 | loaded. To do so add the lines in the following example. You do not need to put |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
59 | anything after the `=` as this will tell Mercurial to look for them in the |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
60 | default places for extensions. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
61 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
62 | ```ini |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
63 | [extensions] |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
64 | evolve = |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
65 | rebase = |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
66 | ``` |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
67 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
68 | Next we're going to create a ***revsetalias***. This will be used to make it |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
69 | easier to look at your history and submit your review request. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
70 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
71 | ```ini |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
72 | [revsetalias] |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
73 | wip = only(.,default) |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
74 | ``` |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
75 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
76 | This alias will show us just the commits that are on our working branch and not |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
77 | on the default branch. The default branch is where all accepted code |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
78 | contributions go. Optionally, you can add the `wip` command alias below which |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
79 | will show you the revision history of what you are working on. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
80 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
81 | ```ini |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
82 | [alias] |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
83 | wip = log --graph --rev wip |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
84 | ``` |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
85 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
86 | There are quite a few other useful configuration changes you can make, and a |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
87 | few examples can be found below. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
88 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
89 | ```ini |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
90 | [ui] |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
91 | # update a large number of settings for a better user experience, highly |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
92 | # recommended!! |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
93 | tweakdefaults = true |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
94 | |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
95 | [alias] |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
96 | # make hg log show the graph as well as commit phase |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
97 | lg = log --graph --template phases |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
98 | ``` |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
99 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
100 | Below is all of the above configuration settings to make it easier to |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
101 | copy/paste. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
102 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
103 | ```ini |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
104 | [ui] |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
105 | username = Full Name <email@example.com> |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
106 | # update a large number of settings for a better user experience, highly |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
107 | # recommended!! |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
108 | tweakdefaults = true |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
109 | |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
110 | [extensions] |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
111 | evolve = |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
112 | rebase = |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
113 | |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
114 | [alias] |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
115 | # make hg log show the graph as well as commit phase |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
116 | lg = log --graph --template phases |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
117 | |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
118 | # show everything between the upstream and your wip |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
119 | wip = log --graph --rev wip |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
120 | |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
121 | [revsetalias] |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
122 | wip = only(.,default) |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
123 | ``` |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
124 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
125 | #### Log in to Review Board |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
126 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
127 | To be able to submit a review request you need to have an account on our |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
128 | JetBrains Hub instance at [hub.imfreedom.org](https://hub.imfreedom.org). You |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
129 | can create an account here in a number of ways and even turn on two factor |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
130 | authentication. But please note that if you turn on two factor authentication |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
131 | you will need to create an [application |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
132 | password](https://www.jetbrains.com/help/hub/application-passwords.html) to be |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
133 | able to login to Review Board. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
134 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
135 | Once you have that account you can use it to login our Review Board instance at |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
136 | [reviews.imfreedom.org](https://reviews.imfreedom.org). Please note, you will |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
137 | have to login via the web interface before being able to use RBTools. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
138 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
139 | Once you have an account and have logged into our Review Board site, you can |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
140 | begin using RBTools. In your shell, navigate to a Mercurial clone of one of the |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
141 | Pidgin or purple-related projects, then run the `rbt login` command. You should |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
142 | only need to do this once, unless you change your password or have run the `rbt |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
143 | logout` command. |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
144 | |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
145 | ### Creating a New Review Request |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
146 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
147 | Before starting a new review request, you should make sure that your |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
148 | local copy of the repository is up to date. To do so, make sure you are |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
149 | on the ***default*** branch via |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
150 | `hg update default`. Once you are on the |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
151 | ***default*** branch, you can update your copy with |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
152 | `hg pull --update`. Now that you're starting with the most |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
153 | recent code, you can proceed with your contributions. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
154 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
155 | While it's not mandatory, it is highly recommended that you work on your |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
156 | contributions via a branch. If you don't go this path, you will have |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
157 | issues after your review request is merged. This branch name can be |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
158 | whatever you like as it will not end up in the main repositories, and |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
159 | you can delete it from your local repository after it is merged. See |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
160 | [cleanup](#cleanup) for more information. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
161 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
162 | You can create the branch with the following command: |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
163 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
164 | ```sh |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
165 | hg branch my-new-branch-name |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
166 | ``` |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
167 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
168 | Now that you have a branch started, you can go ahead and work like you normally |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
169 | would, committing your code at logical times, etc. Once you have some work |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
170 | committed and you are ready to create a new review request, you can type `rbt |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
171 | post wip` and you should be good to go. This will create a new review request |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
172 | using all of the committed work in your repository and will output something |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
173 | like below. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
174 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
175 | ```sh |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
176 | Review request #403 posted. |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
177 | |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
178 | https://reviews.imfreedom.org/r/403/ |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
179 | https://reviews.imfreedom.org/r/403/diff/ |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
180 | ``` |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
181 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
182 | At this point, your review request has been posted, but it is not yet |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
183 | published. This means no one can review it yet. To do that, you need to go to |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
184 | the URL that was output from your `rbt post` command and verify that everything |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
185 | looks correct. If this review request fixes any bugs, please make sure to enter |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
186 | their numbers in the bugs field on the right. Also, be sure to review the |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
187 | actual diff yourself to make sure it includes what you intended it to and |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
188 | nothing extra. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
189 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
190 | Once you are happy with the review request, you can hit the publish button |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
191 | which will make the review request public and alert the reviewers of its |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
192 | creation. Optionally you can pass `--open` to `rbt post` in the future to |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
193 | automatically open the draft review in your web browser. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
194 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
195 | `rbt post` has a ton of options, so be sure to check them out with `rbt post |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
196 | --help`. There are even options to automatically fill out the bugs fixed fields |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
197 | among other things. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
198 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
199 | ### Updating an Existing Review Request |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
200 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
201 | Typically with a code review, you're going to need to make some updates. |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
202 | However there's also a good chance that your original branching point has |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
203 | changed as other contributions are accepted. To deal with this you'll need to |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
204 | rebase your branch on top of the new changes. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
205 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
206 | Rebasing, as the name suggests is the act of replaying your previous |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
207 | commits on top of a new base revision. Mercurial makes this pretty easy. |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
208 | First, make sure you are on your branch with |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
209 | `hg up my-branch-name`. Now you can preview the rebase with |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
210 | `hg rebase -d default --keepbranches --dry-run`. We prefer |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
211 | doing a dry-run just to make sure there aren't any major surprises. You |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
212 | may run into some conflicts, but those will have to be fixed regardless. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
213 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
214 | If everything looks good, you can run the actual rebase with `hg rebase -d |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
215 | default --keepbranches`. Again if you run into any conflicts, you will have to |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
216 | resolve them and they will cause the dry-run to fail. Once you have fixed the |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
217 | merge conflicts, you'll then need to mark the files as resolved with `hg |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
218 | resolve --mark filename`. When you have resolved all of the conflicted files |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
219 | you can continue the rebase with `hg rebase --continue`. You may run into |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
220 | multiple conflicts, so just repeat until you're done. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
221 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
222 | After rebasing you can start addressing the comments in your review and commit |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
223 | them. Once they are committed, you can update your existing review request |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
224 | with `rbt post --update`. If for some reason `rbt` can not figure out the |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
225 | proper review request to update, you can pass the number in via `rbt post |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
226 | --review-request-id #`. Note that when using `--review-request-id` you no |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
227 | longer need to specify `--update`. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
228 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
229 | Just like an initial `rbt post`, the updated version will be in a draft state |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
230 | until you publish it. So again, you'll need to visit the URL that was output, |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
231 | verify everything, and click the publish button. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
232 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
233 | ### Landing a Review Request |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
234 | |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
235 | This will typically only be done by the Pidgin developers with push access. If |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
236 | you want to test a patch from a review request, please see the [patch](#path) |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
237 | section below. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
238 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
239 | It is ***HIGHLY*** recommended that you use a separate clone of the repository |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
240 | in question when you want to land review requests. This makes it much easier |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
241 | to avoid accidentally pushing development work to the canonical repository |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
242 | which makes everyone's life easier. Also, the mainline repositories now auto |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
243 | publish, so if you do not selectively push commits, all of your draft commits |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
244 | will be published. You can name this additional clone whatever you like, but |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
245 | using something like `pidgin-clean` is a fairly common practice. This makes it |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
246 | easy for you to know that this clone is only meant for landing review requests, |
|
41424
5afbe5b72c49
fix typos in code contributions guide
ivanhoe <ivanhoe@fiscari.de>
parents:
41164
diff
changeset
|
247 | and other administrative work like updating the ChangeLog and COPYRIGHT files. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
248 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
249 | When you are ready to land a review request you need to make sure you are on |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
250 | the proper branch. In most cases this will be the branch named ***default*** |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
251 | and can be verified by running the command `hg branch`. Next you need to make |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
252 | sure that your local copy is up to date. You can do this by running `hg pull |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
253 | --update`. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
254 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
255 | Please note, if you run `hg pull` and then immediately run `hg pull --update` |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
256 | you will ***not*** update to the most recent commit as this new invocation of |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
257 | `hg pull` has not actually pulled in any new commits. To properly update, |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
258 | you'll need to run `hg update` instead. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
259 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
260 | Once your local copy is up to date you can land the review request with `rbt |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
261 | land --no-push --review-request-id #` where `#` is the number of the review |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
262 | request you are landing. The `--no-push` argument is to disable pushing this |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
263 | commit immediately. Most of our configuration already enables this flag for |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
264 | you, but if you're in doubt, please use the `--no-push` argument. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
265 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
266 | Once the review request has been landed, make sure to verify that the revision |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
267 | history looks correct, run a test build as well as the unit tests, and if |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
268 | everything looks good, you can continue with the housekeeping before we finally |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
269 | push the new commits. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
270 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
271 | The housekeeping we need to do entails a few things. If this is a big new |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
272 | feature or bug fix, we should be documenting this in the ChangeLog file for the |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
273 | repository. Please follow the existing convention of mentioning the contributor |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
274 | as well as the issues addressed and the review request number. Likewise, if |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
275 | this is someone's first contribution you will need to add them to the COPYRIGHT |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
276 | file in the repository as well. If you had to update either of these files, |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
277 | review your changes and commit them directly. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
278 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
279 | Now that any updates to ChangeLog and COPYRIGHT are completed, we can actually |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
280 | start pushing the changes back to the canonical repository. Currently not all |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
281 | of the canonical repositories are publishing repositories so we'll need to |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
282 | manually mark the commits as public. This is easily accomplished with `hg phase |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
283 | --public`. ***Note***, if you are not using a separate clone of the canonical |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
284 | repository you will need to specify a revision to avoid publishing every commit |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
285 | in your repository. If you run into issues or have more questions about phases |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
286 | see the [official documentation](https://www.mercurial-scm.org/wiki/Phases). |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
287 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
288 | Now that the changes have been made public, we can finally push to the |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
289 | canonical repository with `hg push`. Once that is done, you'll also need to go |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
290 | and mark the review request as ***Submitted*** in the Review Board web |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
291 | interface. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
292 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
293 | ### Testing Patches Locally |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
294 | |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
295 | If you want to test a patch locally for any reason, you first need to make sure |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
296 | that you are on the target branch for the review request which is listed on the |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
297 | review request page. In most cases this will be the ***default*** branch. |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
298 | Regardless you'll need to run `hg up branch-name` before applying the patch. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
299 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
300 | Now that you are on the correct branch, you can apply the patch with |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
301 | `rbt patch #` where `#` is the id of the review request you want to test. This |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
302 | will apply the patch from the review request to your working copy without |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
303 | committing it. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
304 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
305 | Once you're done with your testing you can remove the changes with `hg revert |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
306 | --no-backup --all`. This will return your repository to exactly what it was |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
307 | before the patch was applied. The `--no-backup` argument says to not save the |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
308 | changes that you are reverting and the `--all` argument tells Mercurial to |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
309 | revert all files. |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
310 | |
|
41424
5afbe5b72c49
fix typos in code contributions guide
ivanhoe <ivanhoe@fiscari.de>
parents:
41164
diff
changeset
|
311 | ### Cleaning up a Landed or Discarded Review Request |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
312 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
313 | Whether or not your pull request has been accepted, you probably want to clean |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
314 | it up from your local repository. To do so, you need to update to a branch |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
315 | other than the branch you built it on. In the following example, we're going to |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
316 | remove the branch named ***my-new-branch-name*** that we used to create a |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
317 | review request. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
318 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
319 | ```sh |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
320 | hg up default |
|
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
321 | hg prune -r 'branch(my-new-branch-name)' |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
322 | ``` |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
323 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
324 | Now, all commits that were on the ***my-new-branch-name*** branch will have |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
325 | their contents removed but internally Mercurial keeps track that these revisions |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
326 | have been deleted. |
|
40716
7a4e48594a24
Update all of the development documentation
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
327 | |
|
41164
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
328 | You can repeat this for any other branches you need to clean up, and you're |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
329 | done! |
|
d861b10105fb
Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents:
40972
diff
changeset
|
330 |