annotate relnotes/next @ 45016:c2df0bca0dfa

perf: make `hg perfwrite` more flexible The more flexible command was used recently while finding a solution for a buffering bug (eventually fixed in f9734b2d59cc (the changeset description uses a different benchmark)). In comparison to the previous version, the new version is much more flexible. While using it, the focus was on testing small writes. For this reason, by default it calls ui.write() 100 times with a single byte plus one newline byte, for 100 lines. To get the previous behavior, run `hg perfwrite --nlines=100000 --nitems=1 --item='Testing write performance' --batch-line`.
author Manuel Jacob <me@manueljacob.de>
date Fri, 05 Jun 2020 01:54:13 +0200
parents f330d6117a5b
children 72feaeb510b3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
42298
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
1 == New Features ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
2
44427
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44423
diff changeset
3
44401
9dab3fa64325 copy: add experimental support for marking committed copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44399
diff changeset
4 == New Experimental Features ==
44377
8561ad49915d revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents: 44335
diff changeset
5
44964
f330d6117a5b relnotes: advertize the possibility to use rust
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44952
diff changeset
6 * The core of some hg operations have been (and are being)
f330d6117a5b relnotes: advertize the possibility to use rust
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44952
diff changeset
7 implemented in rust, for speed. `hg status` on a repository with
f330d6117a5b relnotes: advertize the possibility to use rust
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44952
diff changeset
8 300k tracked files goes from 1.8s to 0.6s for instance.
f330d6117a5b relnotes: advertize the possibility to use rust
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44952
diff changeset
9 This has currently been tested only on linux, and does not build on
f330d6117a5b relnotes: advertize the possibility to use rust
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44952
diff changeset
10 windows. See rust/README.rst in the mercurial repository for
f330d6117a5b relnotes: advertize the possibility to use rust
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44952
diff changeset
11 instructions to opt into this.
44439
edc8504bc26b exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44429
diff changeset
12
42298
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
13 == Backwards Compatibility Changes ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
14
44946
61cdc8137d53 relnotes: note that we now require modern SSL/TLS features in Python
Manuel Jacob <me@manueljacob.de>
parents: 44915
diff changeset
15 * Mercurial now requires at least Python 2.7.9 or a Python version that
44952
95c832849955 setup: require that Python has TLS 1.1 or TLS 1.2
Manuel Jacob <me@manueljacob.de>
parents: 44946
diff changeset
16 backported modern SSL/TLS features (as defined in PEP 466), and that Python
95c832849955 setup: require that Python has TLS 1.1 or TLS 1.2
Manuel Jacob <me@manueljacob.de>
parents: 44946
diff changeset
17 was compiled against a OpenSSL version supporting TLS 1.1 or TLS 1.2
95c832849955 setup: require that Python has TLS 1.1 or TLS 1.2
Manuel Jacob <me@manueljacob.de>
parents: 44946
diff changeset
18 (likely this requires the OpenSSL version to be at least 1.0.1).
44946
61cdc8137d53 relnotes: note that we now require modern SSL/TLS features in Python
Manuel Jacob <me@manueljacob.de>
parents: 44915
diff changeset
19
45016
c2df0bca0dfa perf: make `hg perfwrite` more flexible
Manuel Jacob <me@manueljacob.de>
parents: 44964
diff changeset
20 * The `hg perfwrite` command from contrib/perf.py was made more flexible and
c2df0bca0dfa perf: make `hg perfwrite` more flexible
Manuel Jacob <me@manueljacob.de>
parents: 44964
diff changeset
21 changed its default behavior. To get the previous behavior, run `hg perfwrite
c2df0bca0dfa perf: make `hg perfwrite` more flexible
Manuel Jacob <me@manueljacob.de>
parents: 44964
diff changeset
22 --nlines=100000 --nitems=1 --item='Testing write performance' --batch-line`.
c2df0bca0dfa perf: make `hg perfwrite` more flexible
Manuel Jacob <me@manueljacob.de>
parents: 44964
diff changeset
23
44427
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44423
diff changeset
24
42298
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
25 == Internal API Changes ==
0ed293a3f00e releasenotes: add a file in which to record release notes
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff changeset
26
44912
ba5688e3b3bd relnotes: add API change note per request in D8502
Augie Fackler <augie@google.com>
parents: 44781
diff changeset
27 * logcmdutil.diffordiffstat() now takes contexts instead of nodes.
ba5688e3b3bd relnotes: add API change note per request in D8502
Augie Fackler <augie@google.com>
parents: 44781
diff changeset
28
44915
b7808443ed6a mergestate: split out merge state handling code from main merge module
Augie Fackler <augie@google.com>
parents: 44912
diff changeset
29 * The `mergestate` class along with some related methods and constants have
b7808443ed6a mergestate: split out merge state handling code from main merge module
Augie Fackler <augie@google.com>
parents: 44912
diff changeset
30 moved from `mercurial.merge` to a new `mercurial.mergestate` module.
b7808443ed6a mergestate: split out merge state handling code from main merge module
Augie Fackler <augie@google.com>
parents: 44912
diff changeset
31