Mercurial > evolve
annotate README.rst @ 6891:2cb062b8050c stable
tests: don't put file lists inside dist/ directory
Makes it easier to use `twine check dist/*` or anything that expects dist/ to
only contain dist files.
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Mon, 09 Sep 2024 18:46:03 +0400 |
parents | 9c70bdc92cdb |
children |
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 |
5415
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
6 ================ |
2095
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
7 |
5415
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
8 This package supplies the evolve extension for Mercurial, |
2094
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 |
5416
e2fb20dd0df7
readme: link to ChangesetEvolution, reword a couple of list items
Anton Shestakov <av6@dwimlabs.net>
parents:
5415
diff
changeset
|
17 * enables the "`changeset evolution`_" feature of core 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
|
18 |
5416
e2fb20dd0df7
readme: link to ChangesetEvolution, reword a couple of list items
Anton Shestakov <av6@dwimlabs.net>
parents:
5415
diff
changeset
|
19 * provides a set of commands to rewrite history in a distributed way, |
e2fb20dd0df7
readme: link to ChangesetEvolution, reword a couple of list items
Anton Shestakov <av6@dwimlabs.net>
parents:
5415
diff
changeset
|
20 |
e2fb20dd0df7
readme: link to ChangesetEvolution, reword a couple of list items
Anton Shestakov <av6@dwimlabs.net>
parents:
5415
diff
changeset
|
21 * issues various warning messages when "troubles" from changeset evolution |
e2fb20dd0df7
readme: link to ChangesetEvolution, reword a couple of list items
Anton Shestakov <av6@dwimlabs.net>
parents:
5415
diff
changeset
|
22 appear in your repository, |
2094
e906723ab99f
README: rework the intro
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2075
diff
changeset
|
23 |
5416
e2fb20dd0df7
readme: link to ChangesetEvolution, reword a couple of list items
Anton Shestakov <av6@dwimlabs.net>
parents:
5415
diff
changeset
|
24 * provides an ``hg evolve`` command to deal with such troubles, |
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
|
25 |
5416
e2fb20dd0df7
readme: link to ChangesetEvolution, reword a couple of list items
Anton Shestakov <av6@dwimlabs.net>
parents:
5415
diff
changeset
|
26 * improves performance of obsolescence marker exchange and discovery during |
e2fb20dd0df7
readme: link to ChangesetEvolution, reword a couple of list items
Anton Shestakov <av6@dwimlabs.net>
parents:
5415
diff
changeset
|
27 push and pull. |
2099
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
28 |
6840
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
29 .. _`changeset evolution`: https://wiki.mercurial-scm.org/ChangesetEvolution |
293
232990fbecb5
[doc] update readme
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
267
diff
changeset
|
30 |
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
|
31 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
|
32 ------------- |
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 |
5415
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
34 We recommend reading the documentation first. An online version is available |
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
35 here: |
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 https://www.mercurial-scm.org/doc/evolution/ |
33 | 38 |
5417
bf56062dac5e
readme: mention docs/ in the documentation section
Anton Shestakov <av6@dwimlabs.net>
parents:
5416
diff
changeset
|
39 Source of the documentation can be found in ``docs/``. |
bf56062dac5e
readme: mention docs/ in the documentation section
Anton Shestakov <av6@dwimlabs.net>
parents:
5416
diff
changeset
|
40 |
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
|
41 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
|
42 ============== |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
43 |
c99e926d465a
README: more change to have a pretty rendering on pypi
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2095
diff
changeset
|
44 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
|
45 --------- |
2095
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
46 |
5415
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
47 You can install the latest released version using pip:: |
324
ff070b9e22ef
readme: explain "instalation process"
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
293
diff
changeset
|
48 |
2095
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
49 $ pip install --user hg-evolve |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
50 |
6840
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
51 Note: some distributions have adopted PEP 668 and made using ``pip install |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
52 --user`` more difficult than it should be. One of the cleanest ways around this |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
53 issue is to install both Mercurial and this extension in a separate virtual |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
54 environment. If you don't want to manage the virtual environment manually, you |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
55 can use Pipx. |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
56 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
57 Using Pipx |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
58 ---------- |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
59 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
60 Its documentation explains that "pipx is made specifically for application |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
61 installation", and the idea is that for every application it can create and |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
62 maintain a separate virtual environment and make all executables available on a |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
63 single path (e.g. ~/.local/bin/ on Linux, check ``pipx ensurepath``). |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
64 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
65 To create a virtual environment for hg and install evolve:: |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
66 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
67 $ pipx install mercurial |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
68 $ pipx inject mercurial hg-evolve |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
69 # or pipx runpip mercurial install hg-evolve |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
70 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
71 Note: it's recommended to use ``inject`` command to install evolve, but |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
72 sometimes ``runpip`` could be used. On some setups ``inject`` might require |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
73 specifying the full path to the extension in the configuration file, while |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
74 ``runpip`` might not. |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
75 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
76 Using Your Package Manager |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
77 -------------------------- |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
78 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
79 Sometimes your distribution's package manager might have the newest (or recent |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
80 enough) version of the extension. For example, both `Debian`_ and `Ubuntu`_ |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
81 currently have a package called ``mercurial-evolve``. Similarly, other |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
82 distributions might have it packaged, possibly under a slightly different name. |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
83 Try searching your package manager's database or see `this Repology page`_. |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
84 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
85 .. _`Debian`: https://packages.debian.org/search?keywords=mercurial-evolve&searchon=names&exact=1&suite=all§ion=all |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
86 .. _`Ubuntu`: https://packages.ubuntu.com/search?keywords=mercurial-evolve&searchon=names&exact=1&suite=all§ion=all |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
87 .. _`this Repology page`: https://repology.org/project/mercurial-evolve/related |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
88 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
89 From Source |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
90 ----------- |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
91 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
92 To obtain a local version from source:: |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
93 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
94 $ hg clone https://repo.mercurial-scm.org/evolve |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
95 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
96 There's no need to compile anything or run ``make``. |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
97 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
98 This method keeps the extension in its own repo, and you can use it by |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
99 specifying the full path to the ``hgext3rd/evolve/``. |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
100 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
101 Alternatively, you can install it:: |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
102 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
103 $ cd evolve |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
104 # optionally `hg update <target revision>` |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
105 $ pip install --user . |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
106 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
107 This should avoid the need to specify the full path to the extension. |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
108 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
109 Enabling the Extension |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
110 ---------------------- |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
111 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
112 After installing the extension, you need to enable it before you can use it. |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
113 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
114 To do that, edit your hgrc:: |
2095
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
115 |
5415
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
116 $ hg config --edit # add these two lines: |
2095
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
117 [extensions] |
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
118 evolve = |
33 | 119 |
6840
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
120 If you didn't install the extension or Mercurial can't find it on one of the |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
121 default paths, you need to specify the full path to ``hgext3rd/evolve/``:: |
5418
bc12eb8f41cb
readme: it's possible to use evolve without installing
Anton Shestakov <av6@dwimlabs.net>
parents:
5417
diff
changeset
|
122 |
bc12eb8f41cb
readme: it's possible to use evolve without installing
Anton Shestakov <av6@dwimlabs.net>
parents:
5417
diff
changeset
|
123 [extensions] |
bc12eb8f41cb
readme: it's possible to use evolve without installing
Anton Shestakov <av6@dwimlabs.net>
parents:
5417
diff
changeset
|
124 evolve = ~/evolve/hgext3rd/evolve |
2095
1c6bb9c117fc
README: rework install instruction
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2094
diff
changeset
|
125 |
6840
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
126 Similarly, if you want to enable topic extension, do this:: |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
127 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
128 $ hg config --edit |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
129 [extensions] |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
130 topic = |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
131 # or |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
132 topic = ~/evolve/hgext3rd/topic |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
133 |
6091
91cbb952676e
readme: add potential pitfalls during installation
Anton Shestakov <av6@dwimlabs.net>
parents:
6090
diff
changeset
|
134 Pitfalls |
91cbb952676e
readme: add potential pitfalls during installation
Anton Shestakov <av6@dwimlabs.net>
parents:
6090
diff
changeset
|
135 -------- |
91cbb952676e
readme: add potential pitfalls during installation
Anton Shestakov <av6@dwimlabs.net>
parents:
6090
diff
changeset
|
136 |
91cbb952676e
readme: add potential pitfalls during installation
Anton Shestakov <av6@dwimlabs.net>
parents:
6090
diff
changeset
|
137 If you get ``"failed to import extension evolve: No module named 'evolve'"`` |
91cbb952676e
readme: add potential pitfalls during installation
Anton Shestakov <av6@dwimlabs.net>
parents:
6090
diff
changeset
|
138 error, there are a couple of things to check: |
91cbb952676e
readme: add potential pitfalls during installation
Anton Shestakov <av6@dwimlabs.net>
parents:
6090
diff
changeset
|
139 |
6840
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
140 * make sure you gave pip/pipx the correct package name (it's ``hg-evolve``), |
6091
91cbb952676e
readme: add potential pitfalls during installation
Anton Shestakov <av6@dwimlabs.net>
parents:
6090
diff
changeset
|
141 |
91cbb952676e
readme: add potential pitfalls during installation
Anton Shestakov <av6@dwimlabs.net>
parents:
6090
diff
changeset
|
142 * make sure evolve is installed for the same version of Python that you use for |
6840
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
143 running Mercurial (``hg debuginstall | grep Python``), |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
144 |
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
145 * try specifying the full path to the ``hgext3rd/evolve/`` directory. |
6091
91cbb952676e
readme: add potential pitfalls during installation
Anton Shestakov <av6@dwimlabs.net>
parents:
6090
diff
changeset
|
146 |
4046
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
147 Extension Purpose |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
148 ================= |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
149 |
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
150 The goal of this extension is to provide an appropriate place for code and |
5423
ba213f62fd50
readme: improve the extension purpose section
Anton Shestakov <av6@dwimlabs.net>
parents:
5422
diff
changeset
|
151 concepts related to `changeset evolution`_ to mature. In this extension we |
ba213f62fd50
readme: improve the extension purpose section
Anton Shestakov <av6@dwimlabs.net>
parents:
5422
diff
changeset
|
152 allow hackier code, unlocking quick experimentation and faster iterations. |
4046
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
153 |
5423
ba213f62fd50
readme: improve the extension purpose section
Anton Shestakov <av6@dwimlabs.net>
parents:
5422
diff
changeset
|
154 In addition, evolve extension supports a wide range of Mercurial versions, |
ba213f62fd50
readme: improve the extension purpose section
Anton Shestakov <av6@dwimlabs.net>
parents:
5422
diff
changeset
|
155 allowing us to reach a larger user base for feedback. The extension is not tied |
ba213f62fd50
readme: improve the extension purpose section
Anton Shestakov <av6@dwimlabs.net>
parents:
5422
diff
changeset
|
156 to the Mercurial release cycle and can release new features and bug fixes at a |
ba213f62fd50
readme: improve the extension purpose section
Anton Shestakov <av6@dwimlabs.net>
parents:
5422
diff
changeset
|
157 higher rate if necessary. |
4046
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
158 |
5423
ba213f62fd50
readme: improve the extension purpose section
Anton Shestakov <av6@dwimlabs.net>
parents:
5422
diff
changeset
|
159 Once a concept is deemed ready, its implementation is moved into core |
ba213f62fd50
readme: improve the extension purpose section
Anton Shestakov <av6@dwimlabs.net>
parents:
5422
diff
changeset
|
160 Mercurial. The maturation period helped us to get a clearer picture of what was |
4046
669b32100eca
readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4042
diff
changeset
|
161 needed. During the upstreaming process, we can use this clearer picture to |
5423
ba213f62fd50
readme: improve the extension purpose section
Anton Shestakov <av6@dwimlabs.net>
parents:
5422
diff
changeset
|
162 clean up the code and upgrade it to an appropriate quality for core Mercurial. |
2020
143c8e4dc22d
topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
1824
diff
changeset
|
163 |
5415
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
164 Python 3 Support |
4818
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
165 ================ |
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
166 |
5420
5a7a5de347b5
readme: update py3 support section
Anton Shestakov <av6@dwimlabs.net>
parents:
5419
diff
changeset
|
167 Mercurial announced official `support for Python 3`_ starting with its 5.2 |
5a7a5de347b5
readme: update py3 support section
Anton Shestakov <av6@dwimlabs.net>
parents:
5419
diff
changeset
|
168 release. Since 9.3.0, evolve has official support for Python 3.6+. |
4818
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
169 |
6840
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
170 .. _`support for Python 3`: https://wiki.mercurial-scm.org/Python3 |
4818
bce578f9012f
python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net>
parents:
4814
diff
changeset
|
171 |
6265
8b3cb6cae4a2
readme: add a section for python 2 support as well
Anton Shestakov <av6@dwimlabs.net>
parents:
6092
diff
changeset
|
172 Python 2 Support |
8b3cb6cae4a2
readme: add a section for python 2 support as well
Anton Shestakov <av6@dwimlabs.net>
parents:
6092
diff
changeset
|
173 ================ |
8b3cb6cae4a2
readme: add a section for python 2 support as well
Anton Shestakov <av6@dwimlabs.net>
parents:
6092
diff
changeset
|
174 |
8b3cb6cae4a2
readme: add a section for python 2 support as well
Anton Shestakov <av6@dwimlabs.net>
parents:
6092
diff
changeset
|
175 Python 2 is supported by evolve. However, Mercurial 6.2 release dropped support |
8b3cb6cae4a2
readme: add a section for python 2 support as well
Anton Shestakov <av6@dwimlabs.net>
parents:
6092
diff
changeset
|
176 for it, so evolve can work on Python 2 only on earlier versions. |
8b3cb6cae4a2
readme: add a section for python 2 support as well
Anton Shestakov <av6@dwimlabs.net>
parents:
6092
diff
changeset
|
177 |
8b3cb6cae4a2
readme: add a section for python 2 support as well
Anton Shestakov <av6@dwimlabs.net>
parents:
6092
diff
changeset
|
178 Debian packages that are built using Heptapod CI only install files for Python |
8b3cb6cae4a2
readme: add a section for python 2 support as well
Anton Shestakov <av6@dwimlabs.net>
parents:
6092
diff
changeset
|
179 3, because they target current Debian stable. |
8b3cb6cae4a2
readme: add a section for python 2 support as well
Anton Shestakov <av6@dwimlabs.net>
parents:
6092
diff
changeset
|
180 |
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
|
181 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
|
182 ================= |
238
b5d9841defc8
more read me update
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
237
diff
changeset
|
183 |
6092
92f1a6e7c139
readme: add #mercurial too, since it's relevant
Anton Shestakov <av6@dwimlabs.net>
parents:
6091
diff
changeset
|
184 Discussion happens in #hg-evolve and #mercurial on libera_ IRC network. |
3766
6352dc395ebf
evolve: update the readme with more information about contribution
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3071
diff
changeset
|
185 |
5955
2068ff9ad72a
readme: move the support channel on libera
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
5600
diff
changeset
|
186 .. _libera: https://libera.chat/ |
3766
6352dc395ebf
evolve: update the readme with more information about contribution
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3071
diff
changeset
|
187 |
5415
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
188 Bugs are to be reported on the Mercurial's bug tracker (component: |
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
189 `evolution`_). |
2099
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
190 |
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
191 .. _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
|
192 |
5421
f287f6b082f8
readme: improve wording in the contributing section
Anton Shestakov <av6@dwimlabs.net>
parents:
5420
diff
changeset
|
193 The recommended way to submit a patch is to create a Merge Request on |
5138
b8b234123fe6
readme: update heptapod link
Anton Shestakov <av6@dwimlabs.net>
parents:
5116
diff
changeset
|
194 https://foss.heptapod.net/mercurial/evolve. To do so, create an account and |
5421
f287f6b082f8
readme: improve wording in the contributing section
Anton Shestakov <av6@dwimlabs.net>
parents:
5420
diff
changeset
|
195 request access. You'll then be able to create a topic-based merge request. |
4922
dacbd20b2f72
readme: update contribution guide
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4877
diff
changeset
|
196 |
dacbd20b2f72
readme: update contribution guide
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4877
diff
changeset
|
197 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
|
198 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
|
199 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
|
200 command like this:: |
1000
8043ae3612e4
readme: mention patchbomb usage and patch description guidelines on wiki
Faheem Mitha <faheem@faheem.info>
parents:
987
diff
changeset
|
201 |
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
|
202 $ 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
|
203 |
2099
47017b3086d4
README: more update to prepare for pypi upload
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
2097
diff
changeset
|
204 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
|
205 |
6840
9c70bdc92cdb
docs: update installation instructions due to PEP 668
Anton Shestakov <av6@dwimlabs.net>
parents:
6558
diff
changeset
|
206 .. _`official Mercurial guideline`: https://wiki.mercurial-scm.org/ContributingChanges#Patch_descriptions |
1000
8043ae3612e4
readme: mention patchbomb usage and patch description guidelines on wiki
Faheem Mitha <faheem@faheem.info>
parents:
987
diff
changeset
|
207 |
5415
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
208 Please don't forget to update and run the tests when you fix a bug or add a |
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
209 feature. To run the tests, you need a working copy of Mercurial, say in |
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
210 $HGSRC:: |
926
14d91c36f88b
README: document how to run the tests
Greg Ward <greg@gerg.ca>
parents:
924
diff
changeset
|
211 |
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
|
212 $ 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
|
213 $ python $HGSRC/tests/run-tests.py |
1526
c2a772ade409
README: update instructions for running tests.
Greg Ward <greg@gerg.ca>
parents:
1519
diff
changeset
|
214 |
5195
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
215 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
|
216 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
|
217 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
|
218 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
|
219 be:: |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
220 |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
221 # hg <= 5.2 (02802fa87b74) |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
222 |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
223 See also tests/test-check-compat-strings.t. |
85640f1feced
readme: mention compat string format
Anton Shestakov <av6@dwimlabs.net>
parents:
5194
diff
changeset
|
224 |
2537
4a467331ec79
readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2535
diff
changeset
|
225 Branch policy |
4a467331ec79
readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2535
diff
changeset
|
226 ------------- |
4a467331ec79
readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2535
diff
changeset
|
227 |
5421
f287f6b082f8
readme: improve wording in the contributing section
Anton Shestakov <av6@dwimlabs.net>
parents:
5420
diff
changeset
|
228 The evolve tests are highly impacted by changes in core Mercurial. To deal with |
f287f6b082f8
readme: improve wording in the contributing section
Anton Shestakov <av6@dwimlabs.net>
parents:
5420
diff
changeset
|
229 this, we use named branches. |
2537
4a467331ec79
readme: clarify the branch policy
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2535
diff
changeset
|
230 |
5194
f478ac0a818f
readme: copywrite the section about branch policy, wrap long lines
Anton Shestakov <av6@dwimlabs.net>
parents:
5138
diff
changeset
|
231 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
|
232 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
|
233 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
|
234 |
5194
f478ac0a818f
readme: copywrite the section about branch policy, wrap long lines
Anton Shestakov <av6@dwimlabs.net>
parents:
5138
diff
changeset
|
235 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
|
236 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
|
237 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
|
238 |
5194
f478ac0a818f
readme: copywrite the section about branch policy, wrap long lines
Anton Shestakov <av6@dwimlabs.net>
parents:
5138
diff
changeset
|
239 Test output changes from a changeset in core should add the following line to |
5415
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
240 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
|
241 |
5415
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
242 CORE-TEST-OUTPUT-UPDATE: <changeset hash> |
4814
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
243 |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
244 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
|
245 ==================== |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
246 |
5598
d1f6cf85bfec
readme: fix syntax of format-source link
Sietse Brouwer <sbbrouwer@gmail.com>
parents:
5195
diff
changeset
|
247 Format-source helps smooth out the pain of merging after auto-formatting. |
d1f6cf85bfec
readme: fix syntax of format-source link
Sietse Brouwer <sbbrouwer@gmail.com>
parents:
5195
diff
changeset
|
248 Follow the installation instructions at the `format-source`_ repo. |
4814
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
249 |
5414
15b7c822cc46
readme: update link to format-source
Anton Shestakov <av6@dwimlabs.net>
parents:
5398
diff
changeset
|
250 .. _`format-source`: https://foss.heptapod.net/mercurial/format-source |
4814
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
251 |
5422
39cd95b6f566
readme: shorter path to byteify-strings.py and not editing per-user config
Anton Shestakov <av6@dwimlabs.net>
parents:
5421
diff
changeset
|
252 Then update your per-repo config file:: |
4814
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
253 |
5415
3be5dba88c49
readme: various small fixes to formatting and spelling
Anton Shestakov <av6@dwimlabs.net>
parents:
5414
diff
changeset
|
254 $ hg config --local --edit # add these lines: |
4814
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
255 [extensions] |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
256 formatsource = |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
257 |
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
258 [format-source] |
5422
39cd95b6f566
readme: shorter path to byteify-strings.py and not editing per-user config
Anton Shestakov <av6@dwimlabs.net>
parents:
5421
diff
changeset
|
259 byteify-strings = python3 ~/hg/contrib/byteify-strings.py --dictiter --treat-as-kwargs kwargs opts commitopts TROUBLES --allow-attr-methods |
4814
48b30ff742cb
python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net>
parents:
4046
diff
changeset
|
260 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
|
261 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
|
262 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
263 Release Checklist |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
264 ================= |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
265 |
6090
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
266 * use contrib/merge-test-compat.sh to merge with the test compatibility |
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
267 branches, |
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
268 |
5116
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
269 * 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
|
270 |
6090
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
271 * make sure there is no code difference between the compatibility branches and |
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
272 stable (no diff within hgext3rd/), |
5116
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
273 |
6407
6b128ae8e2ad
docs: let's try to make development versions compatible with PEP-440
Anton Shestakov <av6@dwimlabs.net>
parents:
6265
diff
changeset
|
274 * update the ``testedwith`` variable for all extensions (remove '.dev0'): |
5116
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
275 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
276 - hgext3rd/evolve/metadata.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
277 - hgext3rd/topic/__init__.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
278 - hgext3rd/pullbundle.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
279 |
6090
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
280 * make sure CHANGELOG is up-to-date, |
5116
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
281 |
6090
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
282 * add a date to the CHANGELOG entry for the target version, |
5116
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
283 |
6090
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
284 * update the ``__version__`` field of all relevant extensions: |
5116
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
285 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
286 - hgext3rd/evolve/metadata.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
287 - hgext3rd/topic/__init__.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
288 - hgext3rd/pullbundle.py (if touched) |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
289 |
6090
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
290 * create a new Debian changelog entry: |
5116
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
291 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
292 - 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
|
293 - debchange --release |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
294 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
295 * 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
|
296 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
297 - 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
|
298 - python setup.py sdist |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
299 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
300 * tag the commit, |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
301 |
6090
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
302 * move ``@`` bookmark to the new tag, |
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
303 |
5116
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
304 * push and publish the tag, |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
305 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
306 * upload the tarball to PyPI, |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
307 |
6435
8a7db813bd07
docs: add building a .deb package to release checklist
Anton Shestakov <av6@dwimlabs.net>
parents:
6407
diff
changeset
|
308 * build .deb on Heptapod CI for the tagged commit, |
8a7db813bd07
docs: add building a .deb package to release checklist
Anton Shestakov <av6@dwimlabs.net>
parents:
6407
diff
changeset
|
309 |
6090
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
310 * make an announcement on evolve-testers@mercurial-scm.org and |
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
311 mercurial@mercurial-scm.org, |
5116
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
312 |
6407
6b128ae8e2ad
docs: let's try to make development versions compatible with PEP-440
Anton Shestakov <av6@dwimlabs.net>
parents:
6265
diff
changeset
|
313 * bump versions of all extensions and add ``.dev0`` (see existing commits as an |
5116
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
314 example): |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
315 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
316 - hgext3rd/evolve/metadata.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
317 - hgext3rd/topic/__init__.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
318 - hgext3rd/pullbundle.py |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
319 |
6090
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
320 Version bump rules: |
66d146b88c45
readme: update release checklist (mostly formatting)
Anton Shestakov <av6@dwimlabs.net>
parents:
5955
diff
changeset
|
321 |
6407
6b128ae8e2ad
docs: let's try to make development versions compatible with PEP-440
Anton Shestakov <av6@dwimlabs.net>
parents:
6265
diff
changeset
|
322 - stable branch x.y.z+1.dev0 |
6b128ae8e2ad
docs: let's try to make development versions compatible with PEP-440
Anton Shestakov <av6@dwimlabs.net>
parents:
6265
diff
changeset
|
323 - default branch x.y+1.0.dev0 |
5116
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
324 |
2392fe0e745a
packaging: create a release check list
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4922
diff
changeset
|
325 * merge stable into default. |