Mercurial > hg
annotate mercurial/templates/map-cmdline.show @ 36809:3c15b84ab66c
hgweb: teach WSGI parser about query strings
Currently, req.form uses cgi.parse() to populate form data. Depending
on the request, form data can come from POST multipart/form-data,
application/x-www-form-urlencoded, or the URL query string.
Putting all these things into one data structure makes it difficult
to reason about how exactly parameters got to the request. It can
lead to wonkiness such as pulling parameters from both the URL and
POST data.
This commit teaches our WSGI request parser about argument data
in query strings. We populate fields containing the query string
data and only the query string data so it can't be confused with
POST data.
Differential Revision: https://phab.mercurial-scm.org/D2737
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Thu, 08 Mar 2018 11:21:46 -0800 |
parents | eb24f1d1b50b |
children | a9de1d28681c |
rev | line source |
---|---|
32059
0ea1d9a750da
show: add basic labels to work template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32058
diff
changeset
|
1 # TODO there are a few deficiencies in this file: |
0ea1d9a750da
show: add basic labels to work template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32058
diff
changeset
|
2 # * The "namespace" of the labels needs to be worked out. We currently |
0ea1d9a750da
show: add basic labels to work template
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32058
diff
changeset
|
3 # piggyback on existing values so color works. |
34877
eb24f1d1b50b
show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents:
34714
diff
changeset
|
4 |
eb24f1d1b50b
show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents:
34714
diff
changeset
|
5 %include map-cmdline.default |
34714
f4aeb952ab77
templater: load template fragments from [templates] section in map file
Yuya Nishihara <yuya@tcha.org>
parents:
34190
diff
changeset
|
6 |
f4aeb952ab77
templater: load template fragments from [templates] section in map file
Yuya Nishihara <yuya@tcha.org>
parents:
34190
diff
changeset
|
7 [templates] |
34190
4441c1113eb2
show: pass the minimum length for nodes as a template keyword
Gregory Szorc <gregory.szorc@gmail.com>
parents:
33197
diff
changeset
|
8 showbookmarks = '{if(active, "*", " ")} {pad(bookmark, longestbookmarklen + 4)}{shortest(node, nodelen)}\n' |
33046
11f768258dcc
show: construct changeset templater during dispatch
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32059
diff
changeset
|
9 |
33050
0a507da7d8ea
show: show all namespaces in "work" view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
33046
diff
changeset
|
10 showwork = '{cset_shortnode}{namespaces % cset_namespace} {cset_shortdesc}' |
33197
c5a07a3abe7d
show: implement "stack" view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
33050
diff
changeset
|
11 showstack = '{showwork}' |
33046
11f768258dcc
show: construct changeset templater during dispatch
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32059
diff
changeset
|
12 |
34877
eb24f1d1b50b
show: use labelcset() template alias for work (and stack) views
Denis Laxalde <denis@laxalde.org>
parents:
34714
diff
changeset
|
13 cset_shortnode = '{labelcset(shortest(node, nodelen))}' |
33050
0a507da7d8ea
show: show all namespaces in "work" view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
33046
diff
changeset
|
14 |
0a507da7d8ea
show: show all namespaces in "work" view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
33046
diff
changeset
|
15 # Treat branch and tags specially so we don't display "default" or "tip" |
0a507da7d8ea
show: show all namespaces in "work" view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
33046
diff
changeset
|
16 cset_namespace = '{ifeq(namespace, "branches", names_branches, ifeq(namespace, "tags", names_tags, names_others))}' |
0a507da7d8ea
show: show all namespaces in "work" view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
33046
diff
changeset
|
17 names_branches = '{ifeq(branch, "default", "", " ({label('log.{colorname}', branch)})")}' |
0a507da7d8ea
show: show all namespaces in "work" view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
33046
diff
changeset
|
18 names_tags = '{if(names % "{ifeq(name, 'tip', '', name)}", " ({label('log.{colorname}', join(names % "{ifeq(name, 'tip', '', name)}", ' '))})")}' |
0a507da7d8ea
show: show all namespaces in "work" view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
33046
diff
changeset
|
19 names_others = '{if(names, " ({label('log.{colorname}', join(names, ' '))})")}' |
0a507da7d8ea
show: show all namespaces in "work" view
Gregory Szorc <gregory.szorc@gmail.com>
parents:
33046
diff
changeset
|
20 |
33046
11f768258dcc
show: construct changeset templater during dispatch
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32059
diff
changeset
|
21 cset_shortdesc = '{label("log.description", desc|firstline)}' |