Pulkit Goyal <7895pulkit@gmail.com> [Mon, 16 Oct 2017 22:46:37 +0530] rev 34813
releasenotes: show a warning if fuzzywuzzy is not present
Differential Revision: https://phab.mercurial-scm.org/D1121
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 16 Oct 2017 22:46:11 +0530] rev 34812
releasenotes: move import of fuzzywuzzy to import level
This will help us in determining easily that whether fuzzywuzzy is loaded or not
loaded in any of the function.
Differential Revision: https://phab.mercurial-scm.org/D1120
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 15 Oct 2017 20:31:44 +0530] rev 34811
releasenotes: don't abort is there is a bad formatted entry for releasenotes
While producing releasenotes for (4.3::), releasenotes aborts with error because
of some bad formatting of releasenotes in some commits. Instead of aborting,
this adds warning message which will help us in skipping them and telling user
about it.
Differential Revision: https://phab.mercurial-scm.org/D1097
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 15 Oct 2017 20:29:16 +0530] rev 34810
releasenotes: make the import of fuzzywuzzy optional
If fuzzywuzzy is note present, we will not be having the capability to merge
existing releasenotes with the new releasenotes on the similarity basis.
The merging will still work good for exact same releasenotes entries.
Differential Revision: https://phab.mercurial-scm.org/D1096
Augie Fackler <augie@google.com> [Mon, 16 Oct 2017 22:51:58 -0400] rev 34809
webcommands: replace str(ctx) etc with pycompat.bytestr(ctx) etc
hgweb can now serve the graph view in Python 3.
Differential Revision: https://phab.mercurial-scm.org/D1138
Augie Fackler <augie@google.com> [Mon, 16 Oct 2017 22:50:39 -0400] rev 34808
templater: don't blow up when trying to build an abort message
__name__ is unicode, but we need bytes. For now, we'll make the
(mostly-safe) assumption that template filter names will be ascii.
Differential Revision: https://phab.mercurial-scm.org/D1137
Augie Fackler <augie@google.com> [Mon, 16 Oct 2017 22:44:06 -0400] rev 34807
webutil: use pycompat.bytestr() instead of str()
Stops us from choking the templater on Python 3. With this patch
applied, much of hgweb works correctly in Python 3. The notable
exception is the graph page, which chokes because it gets node IDs as
str instead of bytes.
Differential Revision: https://phab.mercurial-scm.org/D1135
Augie Fackler <augie@google.com> [Mon, 16 Oct 2017 22:43:19 -0400] rev 34806
hgweb: correct an earlier error of mine - `start` should be bytes
Gets hgweb very close to working with Python 3.
Differential Revision: https://phab.mercurial-scm.org/D1134
Boris Feld <boris.feld@octobus.net> [Mon, 16 Oct 2017 18:58:16 +0200] rev 34805
config: simplify aliasing commands.update.check
experimental.updatecheck was renamed into commands.update.check, use the
config system to provides the fallback on the old config name instead of
adding more code.
Differential Revision: https://phab.mercurial-scm.org/D1117
Jun Wu <quark@fb.com> [Wed, 04 Oct 2017 18:51:21 -0700] rev 34804
run-tests: set HGPLAIN=1 when bisecting
Otherwise a customized template may break the regex matching the bisect
output.
Differential Revision: https://phab.mercurial-scm.org/D949
Jun Wu <quark@fb.com> [Wed, 04 Oct 2017 18:50:18 -0700] rev 34803
run-tests: extract Popen logic to a single method
This removes 3 lines in total LOC and makes the upcoming changes easier.
Differential Revision: https://phab.mercurial-scm.org/D948
Jun Wu <quark@fb.com> [Wed, 04 Oct 2017 18:42:24 -0700] rev 34802
run-tests: move bisect logic to a separate method
This removes 8 space indentation and makes upcoming changes easier.
Differential Revision: https://phab.mercurial-scm.org/D947
Augie Fackler <augie@google.com> [Wed, 04 Oct 2017 11:00:04 -0400] rev 34801
mpatch: switch alignment of wrapped line from tab to spaces with clang-format
I may be a weird person for liking this style, but our C style is
historically nominally the Linux Kernel style, and when you configure
clang-format to be kernel-ish, this is what you get. If we want to
change it, we can do so by tweaking the formatter rules in the future.
Differential Revision: https://phab.mercurial-scm.org/D1132
Augie Fackler <augie@google.com> [Wed, 04 Oct 2017 10:56:33 -0400] rev 34800
mpatch: reformat function prototypes with clang-format
Differential Revision: https://phab.mercurial-scm.org/D1131
Augie Fackler <augie@google.com> [Mon, 16 Oct 2017 11:43:41 -0400] rev 34799
contrib: remove check-code rule about indentation
We're moving towards a clang-format world, and clang-format is able to
wrap argument lists with spaces reliably, while still enforcing tabs
globally. Let's let clang-format do its job, and not do as much
C-style enforcement with regular expressions.
Differential Revision: https://phab.mercurial-scm.org/D1130
Augie Fackler <raf@durin42.com> [Sat, 24 Jan 2015 17:04:25 -0500] rev 34798
clang-format: configuration for the clang-format source formatter
Differential Revision: https://phab.mercurial-scm.org/D1129
Ryan McElroy <rmcelroy@fb.com> [Fri, 06 Oct 2017 06:48:43 -0700] rev 34797
merge: allow user to halt merge on merge-tool failures
Depends on D932.
Call the new _onfilemergefailure function when a merge tool reports failure
via a return code.
Differential Revision: https://phab.mercurial-scm.org/D951
Ryan McElroy <rmcelroy@fb.com> [Fri, 06 Oct 2017 06:48:43 -0700] rev 34796
filemerge: introduce functions to halt merge flow
Depends on D931.
This patch introduces functions and a config option that will allow a user
to halt the merge if there are failures during a file merge. These functions
will be used in the next patch.
Differential Revision: https://phab.mercurial-scm.org/D932
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 15 Oct 2017 19:29:56 +0530] rev 34795
amend: add a flag `-n/--note` to store note with amend
This patch utilises the functionality added in previous patches and adds a flag
to amend command in hgext/amend to add a note to the amend. Since the note is
stored in the obsmarker metadata, this will only be useful when obsmarker
creation is enabled, otherwise this is no-op.
Not adding releasenotes part as we yet don't have a functionality in core to
show the note.
Differential Revision: https://phab.mercurial-scm.org/D1095
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 15 Oct 2017 15:32:03 +0530] rev 34794
cmdutil: pass metadata from amend() to cleanupnodes
`commit --amend` and amend command in core and extensions rely on
cmdutil.amend() for amending a commit. So the logic to add a note to amend must
reside here. This patch assumes that note will be passed in opts dictionary to
the function and it will be passed to cleanupnodes and then createmarkers to
store the note in the obsmarker metadata.
After this patch, note can be stored on an amend changeset by passing notes as a
part of opts to cmdutil.amend().
Differential Revision: https://phab.mercurial-scm.org/D1094
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 15 Oct 2017 14:34:24 +0530] rev 34793
scmutil: add capability to cleanupnodes to take obsmarker metadata
This patch adds a metadata argument to cleanupnodes() which will be dict and can
be passed to obsmarker.createmarkers() and can be stored on the obsmarker.
In cases when obsolescence is not enabled, the metadata argument is useless.
This is a step towards storing a note in amend.
Differential Revision: https://phab.mercurial-scm.org/D1093
Saurabh Singh <singhsrb@fb.com> [Mon, 16 Oct 2017 13:06:33 -0700] rev 34792
test-hgweb-annotate-whitespace: make test compatible with chg
D946 fixed a bunch of tests which had the same root cause. Please see
that for details. This seems to be one of the newer tests which fails because
of the same reason.
Test Plan:
Ran the test 'test-hgweb-annotate-whitespace.t' with and without the
'--chg' option.
Differential Revision: https://phab.mercurial-scm.org/D1124
Saurabh Singh <singhsrb@fb.com> [Mon, 16 Oct 2017 17:41:37 -0700] rev 34791
test-pager: make the test compatible with chg
D911 tried to make this test compatible with chg but instead resulted
in the test being flaky for chg. For now, disabling this test for chg because
it seems difficult to fix the test. This will allow for the continuous build
setup for chg.
Test Plan:
Ran the test 'test-pager.t' with and without the '--chg' option.
Differential Revision: https://phab.mercurial-scm.org/D1128
Saurabh Singh <singhsrb@fb.com> [Mon, 16 Oct 2017 17:06:32 -0700] rev 34790
test-obsolete-bounds-checking: make the test compatible with chg
This test fails when run with chg because the error message starts
with "ProgrammingError" instead of "mercurial.error.ProgrammingError".
Therefore, globing the "mercurial.error." to ensure that the test is compatible
with chg.
Test Plan:
Ran the test 'test-obsolete-bounds-checking.t' with and without the
'--chg' option.
Differential Revision: https://phab.mercurial-scm.org/D1127
Saurabh Singh <singhsrb@fb.com> [Mon, 16 Oct 2017 17:14:21 -0700] rev 34789
test-dispatch: make the test compatible with chg
The test is broken when run with chg because it prints a different
error message when chg is running. This commit fixes the test by special casing
for chg.
Test Plan:
Ran the test 'test-dispatch.t' with and without '--chg' option.
Differential Revision: https://phab.mercurial-scm.org/D1126
Saurabh Singh <singhsrb@fb.com> [Mon, 16 Oct 2017 12:15:00 -0700] rev 34788
histedit: remove the nonexistant config 'histeditng'
D942 removed the experimental config 'histeditng'. This is a leftover
which should have been removed in that commit. Therefore, this commit completes
the cleanup.
Test Plan:
Ran all the tests.
Differential Revision: https://phab.mercurial-scm.org/D1123
Phil Cohen <phillco@fb.com> [Sun, 15 Oct 2017 20:36:29 -0700] rev 34787
context: add workingfilectx.markcopied
With in-memory merge, copy information needs to be stored in-memory, not in the
dirstate.
To make this transition easy, move the existing dirstate-based approach to
workingfilectx; that way, other implementations can choose to store it
somewhere else.
Differential Revision: https://phab.mercurial-scm.org/D1106
Phil Cohen <phillco@fb.com> [Sun, 15 Oct 2017 20:36:29 -0700] rev 34786
merge: don't use workers in in-memory mode
The worker processes can't share memory, so workers should not be used.
Differential Revision: https://phab.mercurial-scm.org/D1105
Phil Cohen <phillco@fb.com> [Sun, 15 Oct 2017 20:36:29 -0700] rev 34785
filemerge: add a missing flushall()
Differential Revision: https://phab.mercurial-scm.org/D1060
Phil Cohen <phillco@fb.com> [Fri, 13 Oct 2017 12:34:22 -0700] rev 34784
filemerge: store backups in the overlayworkingctx if using imm
Differential Revision: https://phab.mercurial-scm.org/D1059
Phil Cohen <phillco@fb.com> [Fri, 13 Oct 2017 12:34:22 -0700] rev 34783
context: add overlayfilectx.cmp()
Differential Revision: https://phab.mercurial-scm.org/D1058
Phil Cohen <phillco@fb.com> [Mon, 16 Oct 2017 13:10:55 -0700] rev 34782
filemerge: use arbitraryfilectx for backups
With in-memory merge, backup files might be overlayworkingfilectxs stored
in memory. But they could also be real files if the user's backup directory is
outside the working dir.
Rather than have two code paths everywhere, let's use arbitraryfilectx so they
can be consistent.
Differential Revision: https://phab.mercurial-scm.org/D1057
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 20 Sep 2017 04:47:43 +0530] rev 34781
registrar: add support for storing the type of command in func object
This patch adds support for storing the type of command which is going to run in
the func object. For this it does the following:
1) Add three possible values as attributes to the registrar.command class
2) Add a new argument to registrar.command._doregister function
3) Add a new attribute cmdtype to the func object
The type of command will be helpful in deciding what level of access on hidden
commits it can has.
Differential Revision: https://phab.mercurial-scm.org/D736
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 16 Oct 2017 22:19:02 +0530] rev 34780
releasenotes: fix documentation of similaritycheck()
The function document says that it returns true when the fragment can be merged,
but if you see the function just above it which is similar(), it writes already
exists thing if return value from similaritycheck() is False which is just
opposite of the doc. This patch fixes that.
Differential Revision: https://phab.mercurial-scm.org/D1119
Boris Feld <boris.feld@octobus.net> [Sat, 14 Oct 2017 01:15:01 +0200] rev 34779
configitems: register acl config section
Boris Feld <boris.feld@octobus.net> [Sat, 14 Oct 2017 00:34:46 +0200] rev 34778
configitems: register the 'extdata.*.diffargs' config
Boris Feld <boris.feld@octobus.net> [Sat, 14 Oct 2017 00:33:57 +0200] rev 34777
configitems: register the 'exdiff.opts.*' config
Boris Feld <boris.feld@octobus.net> [Sat, 14 Oct 2017 00:30:14 +0200] rev 34776
configitems: register the 'hostsecurity.*:verifycertsfile' config
Boris Feld <boris.feld@octobus.net> [Sat, 14 Oct 2017 00:29:31 +0200] rev 34775
configitems: register the 'hostsecurity.*:fingerprints' config
Boris Feld <boris.feld@octobus.net> [Sat, 14 Oct 2017 00:28:48 +0200] rev 34774
configitems: register the 'hostsecurity.*:ciphers' config
Boris Feld <boris.feld@octobus.net> [Sat, 14 Oct 2017 00:28:13 +0200] rev 34773
configitems: register the 'hostsecurity.*:minimumprotocol' config
Boris Feld <boris.feld@octobus.net> [Sat, 14 Oct 2017 00:16:12 +0200] rev 34772
configitems: register the test 'fakepatchtime.fakenow' config
Boris Feld <boris.feld@octobus.net> [Sat, 14 Oct 2017 00:15:37 +0200] rev 34771
configitems: register the test 'fakedirstatewritetime.fakenow' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 23:26:16 +0200] rev 34770
configitems: register the 'gpg' arbitraty key section
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 23:23:48 +0200] rev 34769
configitems: register the 'extdata' section
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 23:33:31 +0200] rev 34768
configitems: fix registration of extensions config
The new 'itemregister' class should be used when loading the extension config.
This was and oversight when itemregister was introduced.
Boris Feld <boris.feld@octobus.net> [Wed, 11 Oct 2017 23:33:59 +0200] rev 34767
configitems: register the test config in 'test-push-race.t'
Boris Feld <boris.feld@octobus.net> [Wed, 11 Oct 2017 04:33:00 +0200] rev 34766
configitems: register the test 'ui.ioerrors' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 23:53:06 +0200] rev 34765
configitems: register the test 'failafterfinalize.fail' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 23:46:37 +0200] rev 34764
configitems: register the test 'logtoprocess.foo' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 23:10:49 +0200] rev 34763
configitems: register the test 'failpush.reason' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 23:07:12 +0200] rev 34762
configitems: register the 'patchbomb.reply-to' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 23:07:01 +0200] rev 34761
configitems: register the 'patchbomb.cc' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 23:06:40 +0200] rev 34760
configitems: register the 'patchbomb.bcc' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 23:03:46 +0200] rev 34759
configitems: register the 'web.staticurl' config
Boris Feld <boris.feld@octobus.net> [Thu, 12 Oct 2017 00:38:18 +0200] rev 34758
configitems: register the 'experimental.uncommitondirtywdir' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 22:28:03 +0200] rev 34757
configitems: register the 'largefiles.usercache' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 22:26:58 +0200] rev 34756
configitems: register the 'largefiles.patterns' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 22:26:03 +0200] rev 34755
configitems: register the 'largefiles.minsize' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 21:50:43 +0200] rev 34754
configitem: register the 'notify.changegroup' config
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 21:50:32 +0200] rev 34753
configitem: register the 'notify.outgoing' config
Boris Feld <boris.feld@octobus.net> [Thu, 12 Oct 2017 00:57:49 +0200] rev 34752
configitem: register the 'notify.incoming' config
Boris Feld <boris.feld@octobus.net> [Thu, 12 Oct 2017 00:44:45 +0200] rev 34751
configitems: register the 'hgweb-paths' section
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 21:32:29 +0200] rev 34750
contrib-perf: register the 'parentscount' config item
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 21:31:24 +0200] rev 34749
contrib-perf: update the config registration
There are various issue with the previous code, all hidden by the try-except
clause. These are fixed now.
Boris Feld <boris.feld@octobus.net> [Thu, 12 Oct 2017 00:20:41 +0200] rev 34748
configitems: register the 'hostfingerprints' section
Boris Feld <boris.feld@octobus.net> [Thu, 12 Oct 2017 00:19:12 +0200] rev 34747
configitems: register the 'hostsecurity.minimumprotocol' config
Boris Feld <boris.feld@octobus.net> [Wed, 11 Oct 2017 22:53:17 +0200] rev 34746
configitems: register the 'progress.format' config
Boris Feld <boris.feld@octobus.net> [Wed, 11 Oct 2017 22:51:23 +0200] rev 34745
configitems: register the 'blackbox.maxfiles' config
Augie Fackler <augie@google.com> [Sun, 15 Oct 2017 00:43:01 -0400] rev 34744
hgweb: fix decodevaluefromheaders to always return a bytes value
That's more in line with what we want, and we know it's ASCII data
since that's all HTTP technically allows in headers anyway.
Differential Revision: https://phab.mercurial-scm.org/D1112
Augie Fackler <augie@google.com> [Sun, 15 Oct 2017 00:42:25 -0400] rev 34743
hgweb: more "headers are native strs" cleanup
I'll fix the decodevaluefromheaders function in an upcoming change.
Differential Revision: https://phab.mercurial-scm.org/D1111
Augie Fackler <augie@google.com> [Sun, 15 Oct 2017 00:41:34 -0400] rev 34742
hgweb: when unpacking args from request form, convert to bytes
We assume http-originated values are ASCII, which should be safe based
on the RFC.
Differential Revision: https://phab.mercurial-scm.org/D1110
Augie Fackler <augie@google.com> [Sun, 15 Oct 2017 00:39:53 -0400] rev 34741
wireproto: more strkwargs cleanup
Differential Revision: https://phab.mercurial-scm.org/D1109
Augie Fackler <augie@google.com> [Sun, 15 Oct 2017 00:38:33 -0400] rev 34740
hgweb: more "http headers are native strs" cleanup
Differential Revision: https://phab.mercurial-scm.org/D1108
Augie Fackler <augie@google.com> [Sun, 15 Oct 2017 00:05:43 -0400] rev 34739
wireproto: bounce kwargs to/from bytes/str as needed
Differential Revision: https://phab.mercurial-scm.org/D1107
Boris Feld <boris.feld@octobus.net> [Mon, 16 Oct 2017 15:12:50 +0200] rev 34738
configitems: fixup default value of annotate config option
It turned out that configbool is used for most of them so the registered
default value was wrong.
Denis Laxalde <denis@laxalde.org> [Mon, 16 Oct 2017 15:35:08 +0200] rev 34737
transaction-summary: use a revset to filter obsoletes in reportnewcs()
Thanks to Yuya Nishihara for suggesting.
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 15 Oct 2017 20:32:10 +0530] rev 34736
releasenotes: add pager support when printing to the ui
Differential Revision: https://phab.mercurial-scm.org/D1098
Boris Feld <boris.feld@octobus.net> [Fri, 13 Oct 2017 22:08:55 +0200] rev 34735
configitems: fixup default value of diff config option
It turned out that configbool is used for most of them so the registered
default value was wrong.
Boris Feld <boris.feld@octobus.net> [Sun, 08 Oct 2017 21:42:32 +0200] rev 34734
devel-warn: add 'warn-' to 'devel.empty-changegroup' config
Rename 'devel.empty-changegroup' to 'devel.warn-empty- changegroup' in order
to clarify it controls a warning message.
No alias is installed since the previous configuration option was not
documented.
Augie Fackler <augie@google.com> [Sun, 15 Oct 2017 00:05:00 -0400] rev 34733
peer: ensure command names are always ascii bytestrs
Differential Revision: https://phab.mercurial-scm.org/D1104
Augie Fackler <augie@google.com> [Sun, 15 Oct 2017 00:03:31 -0400] rev 34732
httppeer: always produce native str header keys and values
Differential Revision: https://phab.mercurial-scm.org/D1103
Augie Fackler <augie@google.com> [Sun, 15 Oct 2017 00:40:07 -0400] rev 34731
wireproto: use %d to encode int, not %s
Differential Revision: https://phab.mercurial-scm.org/D1102
Augie Fackler <augie@google.com> [Sun, 15 Oct 2017 00:06:06 -0400] rev 34730
wireproto: use a proper exception instead of `assert False`
Differential Revision: https://phab.mercurial-scm.org/D1101
Augie Fackler <augie@google.com> [Sun, 15 Oct 2017 00:39:29 -0400] rev 34729
wireproto: use listcomp instead of map()
The latter returns a generator object on Python 3, which breaks
various parts of hg that expected a list.
Differential Revision: https://phab.mercurial-scm.org/D1100
Augie Fackler <augie@google.com> [Sun, 15 Oct 2017 00:37:24 -0400] rev 34728
dagutil: use a listcomp instead of a map()
In Python 3, the map() returns a generator object instead of a list,
and some parts of hg depend on this being consumable more than once or
sortable in place.
Differential Revision: https://phab.mercurial-scm.org/D1099
Augie Fackler <augie@google.com> [Sat, 14 Oct 2017 12:03:42 -0400] rev 34727
peer: when collecting method names for batch calls, bytes-ify __name__
This will explode violently if we have a non-ascii command name. That
shouldn't ever happen in core, and seems unlikely even in third-party
code. Regardless, it'll explode violently, so we can revisit things in
the future if we need to change the encoding here.
Differential Revision: https://phab.mercurial-scm.org/D1092
Augie Fackler <augie@google.com> [Sat, 14 Oct 2017 12:02:15 -0400] rev 34726
python3: replace im_{self,func} with __{self,func}__ globally
These new names are portable back to Python 2.6.
Differential Revision: https://phab.mercurial-scm.org/D1091
Augie Fackler <augie@google.com> [Sat, 14 Oct 2017 12:00:35 -0400] rev 34725
httppeer: extract content-type from headers using native str
Differential Revision: https://phab.mercurial-scm.org/D1090
Augie Fackler <augie@google.com> [Sat, 14 Oct 2017 11:59:51 -0400] rev 34724
httppeer: convert request url back to bytes before inspecting it
Differential Revision: https://phab.mercurial-scm.org/D1089
Augie Fackler <augie@google.com> [Sat, 14 Oct 2017 11:30:17 -0400] rev 34723
templater: explode if we try to emit a str
Without this if branch, we infinitely recurse in _flatten, which is
very confusing. Something in an hgweb template is trying to write out
a string instead of a bytes on Python 3, and this at least makes it
crash politely.
Differential Revision: https://phab.mercurial-scm.org/D1088
Augie Fackler <augie@google.com> [Sat, 14 Oct 2017 11:20:31 -0400] rev 34722
hgweb: fill in content-type and content-length as native strings
This lets me actually get a capabilities response from hgweb over
http.
Differential Revision: https://phab.mercurial-scm.org/D1087
Augie Fackler <augie@google.com> [Sat, 14 Oct 2017 10:47:29 -0400] rev 34721
hgweb: mimetype guessing needs a unicode path
Differential Revision: https://phab.mercurial-scm.org/D1086
Augie Fackler <augie@google.com> [Sat, 14 Oct 2017 15:37:33 -0400] rev 34720
hgweb: set sent_headers attr as early as practical
While doing Python 3 porting work, I've seen exceptions happen in
parts of hgweb we normally assume are robust. It won't hurt anything
to set this attribute significantly earlier, so let's do so and save
confusing during the porting process.
Differential Revision: https://phab.mercurial-scm.org/D1085
Augie Fackler <augie@google.com> [Thu, 05 Oct 2017 14:53:52 -0400] rev 34719
hgweb: detect Python 3-era libraries and use modern attribute names
Differential Revision: https://phab.mercurial-scm.org/D1084
Augie Fackler <augie@google.com> [Sat, 14 Oct 2017 15:53:36 -0400] rev 34718
server: indent block that's about to get conditionalized
Differential Revision: https://phab.mercurial-scm.org/D1083