Mercurial > evolve
annotate README @ 5479:da039e9be459 stable
rewind: compatibility with cmdutil.revert() without parents argument
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Fri, 21 Aug 2020 21:37:37 +0800 |
parents | 85640f1feced |
children | d1f6cf85bfec |
rev | line source |
---|---|
560
4580ff7157ae
fix readme header
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
556
diff
changeset
|
1 ============================= |
33 | 2 Mutable History For Mercurial |
3 ============================= | |
4 | |
2095
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
5 Evolve Extension |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
6 ================= |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
7 |
2094
e906723ab99f
README: rework the intro
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2075
diff
changeset
|
8 This package supplies the ``evolve`` extension for Mercurial, |
e906723ab99f
README: rework the intro
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2075
diff
changeset
|
9 |
e906723ab99f
README: rework the intro
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2075
diff
changeset
|
10 **The full implementation of the changeset evolution concept is still in |
2099
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
11 progress.** Please subscribe to the `evolve-testers mailing list |
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
12 <https://www.mercurial-scm.org/mailman/listinfo/evolve-testers>`_ to stay up to |
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
13 date with changes. |
2094
e906723ab99f
README: rework the intro
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2075
diff
changeset
|
14 |
2102
e243e1d9464c
README: timeless typo fixes
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2099
diff
changeset
|
15 This extension: |
33 | 16 |
4877
77e5c733200a
py3: remove smartquotes from README
Ian Moody <moz-ian@perix.co.uk>
parents:
4818
diff
changeset
|
17 * enables the "changeset evolution" feature of Mercurial core, |
2097
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
18 |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
19 * provides a set of commands to mutate your history, |
2094
e906723ab99f
README: rework the intro
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2075
diff
changeset
|
20 |
2097
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
21 * issues several warning messages when troubles from some mutable appears in |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
22 your repository, |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
23 |
2102
e243e1d9464c
README: timeless typo fixes
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2099
diff
changeset
|
24 * provides an ``hg evolve`` command to deal with such "troubles", |
2099
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
25 |
2102
e243e1d9464c
README: timeless typo fixes
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2099
diff
changeset
|
26 * improves performance of obsolescence marker exchanges and discovery during |
2099
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
27 push and pull. |
293
232990fbecb5
[doc] update readme
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
267
diff
changeset
|
28 |
2097
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
29 Documentation |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
30 ------------- |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
31 |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
32 We recommend reading the documentation first. An online version is |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
33 available here: |
33 | 34 |
2097
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
35 https://www.mercurial-scm.org/doc/evolution/ |
33 | 36 |
2097
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
37 How to Install |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
38 ============== |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
39 |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
40 Using Pip |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
41 --------- |
2095
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
42 |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
43 You can install the latest evolution version usin pip:: |
324
ff070b9e22ef
readme: explain "instalation process"
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
293
diff
changeset
|
44 |
2095
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
45 $ pip install --user hg-evolve |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
46 |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
47 Then just enable it in you hgrc:: |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
48 |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
49 $ hg config --edit # adds the two line below: |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
50 [extensions] |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
51 evolve = |
33 | 52 |
2097
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
53 From Source |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
54 ----------- |
739
dcda64966616
README: polish the language so it reads better
Greg Ward <greg@gerg.ca>
parents:
738
diff
changeset
|
55 |
2095
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
56 To install a local version from source:: |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
57 |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
58 $ hg clone https://www.mercurial-scm.org/repo/evolve/ |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
59 $ cd evolve |
2113
fed5369058a4
README: remove mention of make
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2102
diff
changeset
|
60 $ pip install --user . |
2020
143c8e4dc22d
topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
1824
diff
changeset
|
61 |
2095
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
62 Then just enable it in you hgrc:: |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
63 |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
64 $ hg config --edit # adds the two line below: |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
65 [extensions] |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
66 evolve = |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
67 |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
68 Documentation lives in ``doc/``. |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
69 |
2114
51ee2c721b32
README: tries to improve the title about server only
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2113
diff
changeset
|
70 Server Only Setup |
51ee2c721b32
README: tries to improve the title about server only
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2113
diff
changeset
|
71 ================= |
2020
143c8e4dc22d
topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
1824
diff
changeset
|
72 |
2099
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
73 It is possible to enable a smaller subset of the extensions aimed at server |
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
74 serving repository. It skips the additions of the new commands and local UI |
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
75 messages that might add performance overheads. To use the server only |
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
76 extension, install the package and use:: |
2095
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
77 |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
78 $ hg config --edit # adds the two line below: |
2020
143c8e4dc22d
topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
1824
diff
changeset
|
79 [extensions] |
2099
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
80 evolve.serveronly = |
2020
143c8e4dc22d
topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
1824
diff
changeset
|
81 |
4046
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
82 Extension Purpose |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
83 ================= |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
84 |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
85 The goal of this extension is to provide an appropriate place for code and |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
86 concept related to changeset evolution to mature. In this extension we allow |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
87 for hackier code, unlocking quick experimentation and faster iterations. |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
88 |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
89 In addition, the evolve extensions support a wider set of Mercurial version, |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
90 allowing us to reach a larger user base for feedback. The Evolve extension is |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
91 not tight to the Mercurial release cycle and can release new feature and bug |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
92 fix at a higher rate if necessary. |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
93 |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
94 Once a concept is ready enough, its implementation is moved into Mercurial |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
95 core. The maturation period helped us to get a clearer picture of what was |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
96 needed. During the upstreaming process, we can use this clearer picture to |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
97 clean up the code and upgrade it to an appropriate quality for Mercurial core. |
2020
143c8e4dc22d
topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
1824
diff
changeset
|
98 |
4818
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
99 Python 3 support |
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
100 ================ |
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
101 |
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
102 Mercurial announced beta support for Python 3 starting with its 5.0 release. |
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
103 Since 9.1.0, ``evolve`` has beta support for Python 3.6+. |
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
104 |
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
105 Support will stay in beta while Mercurial's support for Python 3 remains in |
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
106 beta and until it is a bit more battle-tested. |
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
107 |
2097
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
108 How to Contribute |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
109 ================= |
238
b5d9841defc8
more read me update
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
237
diff
changeset
|
110 |
3766
6352dc395ebf
evolve: update the readme with more information about contribution
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3071
diff
changeset
|
111 Discussion happens on the #hg-evolve IRC on freenode_. |
6352dc395ebf
evolve: update the readme with more information about contribution
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3071
diff
changeset
|
112 |
6352dc395ebf
evolve: update the readme with more information about contribution
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3071
diff
changeset
|
113 .. _freenode: https://freenode.net/ |
6352dc395ebf
evolve: update the readme with more information about contribution
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3071
diff
changeset
|
114 |
2099
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
115 Bugs are to be reported on the mercurial's bug tracker (component: `evolution`_): |
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
116 |
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
117 .. _evolution: https://bz.mercurial-scm.org/buglist.cgi?component=evolution&query_format=advanced&resolution=--- |
1182
15492cea54e9
readme: add a reference to the bugtracker in the contribute section
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
1175
diff
changeset
|
118 |
4922
dacbd20b2f72
readme: update contribution guide
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4877
diff
changeset
|
119 The recommended way is to create Merge Request on |
5138
b8b234123fe6
readme: update heptapod link
Anton Shestakov <av6@dwimlabs.net>
parents:
5116
diff
changeset
|
120 https://foss.heptapod.net/mercurial/evolve. To do so, create an account and |
4922
dacbd20b2f72
readme: update contribution guide
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4877
diff
changeset
|
121 request access. You'll then be able to create topic based merge request. |
dacbd20b2f72
readme: update contribution guide
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4877
diff
changeset
|
122 |
dacbd20b2f72
readme: update contribution guide
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4877
diff
changeset
|
123 Alternatively, you can use the patchbomb extension to send email to `mercurial |
dacbd20b2f72
readme: update contribution guide
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4877
diff
changeset
|
124 devel <https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel>`_. |
dacbd20b2f72
readme: update contribution guide
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4877
diff
changeset
|
125 Please make sure to use the evolve-ext flag when doing so. You can use a |
dacbd20b2f72
readme: update contribution guide
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4877
diff
changeset
|
126 command like this:: |
1000
8043ae3612e4
readme: mention patchbomb usage and patch description guidelines on wiki
Faheem Mitha <faheem@faheem.info>
parents:
987
diff
changeset
|
127 |
2097
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
128 $ hg email --to mercurial-devel@mercurial-scm.org --flag evolve-ext --rev '<your patches>' |
1000
8043ae3612e4
readme: mention patchbomb usage and patch description guidelines on wiki
Faheem Mitha <faheem@faheem.info>
parents:
987
diff
changeset
|
129 |
3766
6352dc395ebf
evolve: update the readme with more information about contribution
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3071
diff
changeset
|
130 |
2099
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
131 For guidelines on the patch description, see the `official Mercurial guideline`_. |
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
132 |
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
133 .. _`official Mercurial guideline`: https://mercurial-scm.org/wiki/ContributingChanges#Patch_descriptions |
1000
8043ae3612e4
readme: mention patchbomb usage and patch description guidelines on wiki
Faheem Mitha <faheem@faheem.info>
parents:
987
diff
changeset
|
134 |
8043ae3612e4
readme: mention patchbomb usage and patch description guidelines on wiki
Faheem Mitha <faheem@faheem.info>
parents:
987
diff
changeset
|
135 Please don't forget to update and run the tests when you fix a bug or |
1526
c2a772ade409
README: update instructions for running tests.
Greg Ward <greg@gerg.ca>
parents:
1519
diff
changeset
|
136 add a feature. To run the tests, you need a working copy of Mercurial, |
2097
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
137 say in $HGSRC:: |
926
14d91c36f88b
README: document how to run the tests
Greg Ward <greg@gerg.ca>
parents:
924
diff
changeset
|
138 |
2097
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
139 $ cd tests |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
140 $ python $HGSRC/tests/run-tests.py |
1526
c2a772ade409
README: update instructions for running tests.
Greg Ward <greg@gerg.ca>
parents:
1519
diff
changeset
|
141 |
5195
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
142 When certain blocks of code need to cope with API changes in core Mercurial, |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
143 they should have comments in the ``hg <= x.y (commit hash)`` format. For |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
144 example, if a function needs another code path because of changes introduced in |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
145 02802fa87b74 that was first included in Mercurial 5.3, then the comment should |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
146 be:: |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
147 |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
148 # hg <= 5.2 (02802fa87b74) |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
149 |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
150 See also tests/test-check-compat-strings.t. |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
151 |
2537
4a467331ec79
readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2535
diff
changeset
|
152 Branch policy |
4a467331ec79
readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2535
diff
changeset
|
153 ------------- |
4a467331ec79
readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2535
diff
changeset
|
154 |
5194
f478ac0a818f
readme: copywrite the section about branch policy, wrap long lines
Anton Shestakov <av6@dwimlabs.net>
parents:
5138
diff
changeset
|
155 The evolve tests are highly impacted by changes in core. To deal with this, we |
f478ac0a818f
readme: copywrite the section about branch policy, wrap long lines
Anton Shestakov <av6@dwimlabs.net>
parents:
5138
diff
changeset
|
156 use named branches. |
2537
4a467331ec79
readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2535
diff
changeset
|
157 |
5194
f478ac0a818f
readme: copywrite the section about branch policy, wrap long lines
Anton Shestakov <av6@dwimlabs.net>
parents:
5138
diff
changeset
|
158 There are two main branches: "stable" and "default". Tests on these branches |
f478ac0a818f
readme: copywrite the section about branch policy, wrap long lines
Anton Shestakov <av6@dwimlabs.net>
parents:
5138
diff
changeset
|
159 are supposed to pass with the corresponding "default" and "stable" branch from |
f478ac0a818f
readme: copywrite the section about branch policy, wrap long lines
Anton Shestakov <av6@dwimlabs.net>
parents:
5138
diff
changeset
|
160 core Mercurial. The documentation is built from the tip of stable. |
2537
4a467331ec79
readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2535
diff
changeset
|
161 |
5194
f478ac0a818f
readme: copywrite the section about branch policy, wrap long lines
Anton Shestakov <av6@dwimlabs.net>
parents:
5138
diff
changeset
|
162 In addition, we have compatibility branches to check tests on older versions of |
2537
4a467331ec79
readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2535
diff
changeset
|
163 Mercurial. They are the "mercurial-x.y" branches. They are used to apply |
5194
f478ac0a818f
readme: copywrite the section about branch policy, wrap long lines
Anton Shestakov <av6@dwimlabs.net>
parents:
5138
diff
changeset
|
164 expected test changes only, no code changes should happen there. |
4042
75e4c451b753
readme: document the tag we use on output change
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3766
diff
changeset
|
165 |
5194
f478ac0a818f
readme: copywrite the section about branch policy, wrap long lines
Anton Shestakov <av6@dwimlabs.net>
parents:
5138
diff
changeset
|
166 Test output changes from a changeset in core should add the following line to |
f478ac0a818f
readme: copywrite the section about branch policy, wrap long lines
Anton Shestakov <av6@dwimlabs.net>
parents:
5138
diff
changeset
|
167 their patch description: |
4042
75e4c451b753
readme: document the tag we use on output change
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3766
diff
changeset
|
168 |
75e4c451b753
readme: document the tag we use on output change
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3766
diff
changeset
|
169 CORE-TEST-OUTPUT-UPDATE: <CORE-NODE-ID> |
4814
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
170 |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
171 |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
172 Format-source config |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
173 ==================== |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
174 |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
175 Format source helps smooth out the pain of merging after auto-formatting. |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
176 Follow the instructions for install here: |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
177 |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
178 .. _`format-source`: https://bitbucket.org/octobus/format-source |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
179 |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
180 Then update both your global and repo config files:: |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
181 |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
182 $ hg config -l # add the lines below |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
183 [extensions] |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
184 formatsource = |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
185 |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
186 [format-source] |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
187 byteify-strings = python3 ~/workspace/octobus/mercurial-devel/contrib/byteify-strings.py --dictiter --treat-as-kwargs kwargs opts commitopts TROUBLES --allow-attr-methods |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
188 byteify-strings:mode.input = file |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
189 byteify-strings:mode.output = pipe |
5116
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
190 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
191 Release Checklist |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
192 ================= |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
193 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
194 * make sure the tests are happy on all supported versions, |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
195 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
196 You can use the `contrib/merge-test-compat.sh` to merge with the test |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
197 compatibility branches. |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
198 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
199 * make sure there is no code difference between the compat branches and stable |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
200 (no diff within `hgext3rd/`), |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
201 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
202 * update the `testedwith` variable for all extensions (remove '.dev'): |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
203 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
204 - hgext3rd/evolve/metadata.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
205 - hgext3rd/topic/__init__.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
206 - hgext3rd/pullbundle.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
207 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
208 * make sure the changelog is up to date, |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
209 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
210 * add a date to the changelog entry for the target version, |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
211 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
212 * update the `__version__` field of all relevant extensions: |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
213 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
214 - hgext3rd/evolve/metadata.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
215 - hgext3rd/topic/__init__.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
216 - hgext3rd/pullbundle.py (if touched) |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
217 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
218 * create a new Debian entry: |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
219 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
220 - debchange --newversion x.y.z-1 "new upstream release" |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
221 - debchange --release |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
222 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
223 * sanity check install and sdist targets of setup.py: |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
224 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
225 - python setup.py install --home=$(mktemp -d) |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
226 - python setup.py sdist |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
227 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
228 * tag the commit, |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
229 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
230 * push and publish the tag, |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
231 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
232 * upload the tarball to PyPI, |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
233 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
234 * make an announcement on evolve-testers@mercurial-scm.org (possibly on |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
235 mercurial@mercurial-scm.org too), |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
236 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
237 * bump versions of all extensions and add '.dev' (see existing commits as an |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
238 example): |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
239 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
240 - hgext3rd/evolve/metadata.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
241 - hgext3rd/topic/__init__.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
242 - hgext3rd/pullbundle.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
243 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
244 The version we use on the stable branch during development should be |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
245 `x.y.z+1.dev`. The version of the default branch should be `x.y+1.0.dev`. |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
246 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
247 * merge stable into default. |