Mercurial > hg
graph
-
show: fix formatting of multiple commandsWed, 12 Apr 2017 20:28:44 -0700, by Gregory Szorc
-
pycompat: import correct cookie module on Python 3Wed, 12 Apr 2017 18:42:20 -0700, by Gregory Szorc
-
chg: respect environment variables for pagerWed, 12 Apr 2017 16:50:23 -0700, by Jun Wu
-
hgweb: add a link to followlines in descending directionMon, 10 Apr 2017 17:36:40 +0200, by Denis Laxalde
-
hgweb: handle a "descend" query parameter in filelog commandMon, 10 Apr 2017 16:23:41 +0200, by Denis Laxalde
-
revset: add a 'descend' argument to followlines to return descendantsMon, 16 Jan 2017 09:24:47 +0100, by Denis Laxalde
-
context: add a blockdescendants functionMon, 10 Apr 2017 15:11:36 +0200, by Denis Laxalde
-
url: support auth.cookiesfile for adding cookies to HTTP requestsThu, 09 Mar 2017 22:40:52 -0800, by Gregory Szorc
-
httpconnection: allow a global auth.cookiefile config entryThu, 09 Mar 2017 22:35:10 -0800, by Gregory Szorc
-
util: make cookielib module availableThu, 09 Mar 2017 21:35:21 -0800, by Gregory Szorc
-
crecord: avoid setting non-existing SIGTSTP signal on windows (issue5512)Thu, 06 Apr 2017 11:28:25 +0200, by Pierre-Yves David
-
crecord: ensure we reinstall the SIGTSTP handlerThu, 06 Apr 2017 11:25:13 +0200, by Pierre-Yves David
-
crecord: avoid setting non-existing signal SIGWINCH on windowsThu, 06 Apr 2017 11:25:33 +0200, by Pierre-Yves David
-
crecord: ensure we reinstall the SIGWINCH handlerSun, 26 Mar 2017 15:06:09 +0200, by Pierre-Yves David
-
crecord: extract most of 'main' into a sub functionSun, 26 Mar 2017 15:05:12 +0200, by Pierre-Yves David
-
templater: add shorthand for building a dict like {"key": key}Mon, 03 Apr 2017 23:13:49 +0900, by Yuya Nishihara
-
templater: find keyword name more thoroughly on filtering errorSat, 08 Apr 2017 23:33:32 +0900, by Yuya Nishihara
-
templater: add dict() constructorMon, 03 Apr 2017 22:54:06 +0900, by Yuya Nishihara
-
templatekw: add public function to wrap a dict by _hybrid objectWed, 05 Apr 2017 22:28:09 +0900, by Yuya Nishihara
-
templatekw: add public function to wrap a list by _hybrid objectWed, 05 Apr 2017 22:25:36 +0900, by Yuya Nishihara
-
templatekw: add default implementation of _hybrid.genWed, 12 Apr 2017 21:10:47 +0900, by Yuya Nishihara
-
parser: preserve order of keyword argumentsSun, 09 Apr 2017 11:58:27 +0900, by Yuya Nishihara
-
parser: extend buildargsdict() to support arbitrary number of **kwargsMon, 03 Apr 2017 22:07:09 +0900, by Yuya Nishihara
-
parser: verify excessive number of args excluding kwargs in buildargsdict()Sat, 08 Apr 2017 20:07:37 +0900, by Yuya Nishihara
-
obsolescence: add test case B-7 for obsolescence markers exchangeMon, 10 Apr 2017 16:50:23 +0200, by Pierre-Yves David
-
obsolescence: add test case B-6 for obsolescence markers exchangeMon, 10 Apr 2017 16:49:38 +0200, by Pierre-Yves David
-
obsolescence: add test case B-5 for obsolescence markers exchangeMon, 10 Apr 2017 16:49:10 +0200, by Pierre-Yves David
-
obsolescence: add test case B-4 for obsolescence markers exchangeMon, 10 Apr 2017 16:47:16 +0200, by Pierre-Yves David
-
obsolescence: add test case B-3 for obsolescence markers exchangeMon, 10 Apr 2017 16:46:53 +0200, by Pierre-Yves David
-
obsolescence: add test case B-2 for obsolescence markers exchangeMon, 10 Apr 2017 16:46:31 +0200, by Pierre-Yves David
-
obsolescence: add test case B-1 for obsolescence markers exchangeMon, 10 Apr 2017 16:46:03 +0200, by Pierre-Yves David
-
obsolescence: add test case A-7 for obsolescence markers exchangeMon, 10 Apr 2017 16:44:39 +0200, by Pierre-Yves David
-
obsolescence: add test case A-6 for obsolescence markers exchangeMon, 10 Apr 2017 16:44:19 +0200, by Pierre-Yves David
-
obsolescence: add test case A-5 for obsolescence markers exchangeMon, 10 Apr 2017 16:43:49 +0200, by Pierre-Yves David
-
obsolescence: add test case A-4 for obsolescence markers exchangeMon, 10 Apr 2017 16:43:26 +0200, by Pierre-Yves David
-
obsolescence: add test case A-3 for obsolescence markers exchangeMon, 10 Apr 2017 16:42:49 +0200, by Pierre-Yves David
-
obsolescence: add test case A-2 for obsolescence markers exchangeMon, 10 Apr 2017 16:41:46 +0200, by Pierre-Yves David
-
obsolescence: add test case A-1 for obsolescence markers exchangeMon, 10 Apr 2017 16:41:21 +0200, by Pierre-Yves David
-
obsolescence: add setup script for obsolescence markers exchange testsMon, 10 Apr 2017 16:40:40 +0200, by Pierre-Yves David
-
upgrade: simplify the "origin" dispatch in dry runTue, 11 Apr 2017 00:03:11 +0200, by Pierre-Yves David
-
upgrade: use 'improvement' object for action tooMon, 10 Apr 2017 23:11:45 +0200, by Pierre-Yves David
-
upgrade: implement equality for 'improvement' objectMon, 10 Apr 2017 23:10:03 +0200, by Pierre-Yves David
-
upgrade: simplify some of the initial dispatch for dry runMon, 10 Apr 2017 22:15:17 +0200, by Pierre-Yves David
-
upgrade: simplify 'determineactions'Fri, 07 Apr 2017 18:39:27 +0200, by Pierre-Yves David
-
upgrade: filter optimizations outside of 'determineactions'Tue, 11 Apr 2017 23:46:16 +0200, by Pierre-Yves David
-
upgrade: directly iterate over optimisationsFri, 07 Apr 2017 18:46:27 +0200, by Pierre-Yves David
-
upgrade: simplify optimisations validationMon, 10 Apr 2017 21:01:06 +0200, by Pierre-Yves David
-
upgrade: split finding deficiencies from finding optimisationsMon, 10 Apr 2017 21:00:52 +0200, by Pierre-Yves David
-
upgrade: update the copyright statementTue, 11 Apr 2017 22:07:40 +0200, by Pierre-Yves David
-
upgrade: update the header commentTue, 11 Apr 2017 22:07:15 +0200, by Pierre-Yves David
-
upgrade: import 'localrepo' globallyTue, 11 Apr 2017 22:01:13 +0200, by Pierre-Yves David
-
largefiles: set the extension as enabled locally after a share requiring itTue, 11 Apr 2017 20:54:50 -0400, by Matt Harbison
-
windows: add context manager support to mixedfilemodewrapperTue, 11 Apr 2017 21:38:11 -0400, by Matt Harbison
-
chg: always wait for pagerTue, 11 Apr 2017 18:31:40 -0700, by Jun Wu
-
bundle2: move 'seek' and 'tell' methods off the unpackermixin classSun, 09 Apr 2017 19:09:07 +0200, by Pierre-Yves David
-
shelve: rename nodestoprune to nodestoremoveMon, 10 Apr 2017 15:32:09 -0700, by Kostia Balytskyi
-
templater: port pad() to take keyword argumentsMon, 03 Apr 2017 22:23:52 +0900, by Yuya Nishihara
-
templater: add support for keyword argumentsMon, 03 Apr 2017 21:22:39 +0900, by Yuya Nishihara
-
templater: add parsing rule for key-value pairMon, 03 Apr 2017 20:55:55 +0900, by Yuya Nishihara
-
templater: adjust binding strengths to make room for key-value operatorMon, 03 Apr 2017 20:44:05 +0900, by Yuya Nishihara
-
templater: sort token table by binding strengthMon, 03 Apr 2017 20:37:25 +0900, by Yuya Nishihara
-
templater: make _hybrid provide more list/dict-like methodsTue, 04 Apr 2017 22:31:59 +0900, by Yuya Nishihara
-
templater: hide private variable of _hybridTue, 04 Apr 2017 22:20:06 +0900, by Yuya Nishihara
-
templater: remove __iter__() from _hybrid, resolve it explicitlyTue, 04 Apr 2017 22:19:02 +0900, by Yuya Nishihara
-
templater: rewrite doc of _hybrid class as docstringSun, 24 Apr 2016 19:15:34 +0900, by Yuya Nishihara
-
sortdict: fix .pop() to return a valueSun, 09 Apr 2017 11:57:09 +0900, by Yuya Nishihara
-
checkcode: only match pushd/popd as wordMon, 10 Apr 2017 17:05:54 +0200, by Pierre-Yves David
-
treemanifest: add walksubtrees apiMon, 10 Apr 2017 13:07:47 -0700, by Durham Goode
-
merge with stableTue, 11 Apr 2017 23:12:14 +0900, by Yuya Nishihara
-
upgrade: drop the prefix to the '_finishdatamigration' functionMon, 10 Apr 2017 18:06:22 +0200, by Pierre-Yves David
-
upgrade: drop the prefix to the '_filterstorefile' functionMon, 10 Apr 2017 18:06:12 +0200, by Pierre-Yves David
-
upgrade: drop the prefix to the 'determineactions' functionMon, 10 Apr 2017 18:05:57 +0200, by Pierre-Yves David
-
upgrade: drop the prefix to the 'findimprovements' functionMon, 10 Apr 2017 18:05:42 +0200, by Pierre-Yves David
-
upgrade: drop the prefix to the 'supporteddestrequirements' functionMon, 10 Apr 2017 18:04:50 +0200, by Pierre-Yves David
-
upgrade: drop the prefix to the 'allowednewrequirements' functionMon, 10 Apr 2017 18:03:11 +0200, by Pierre-Yves David
-
upgrade: drop the prefix to the 'improvement' classMon, 10 Apr 2017 18:01:29 +0200, by Pierre-Yves David
-
upgrade: drop the prefix to the 'supportremovedrequirements' functionMon, 10 Apr 2017 18:00:27 +0200, by Pierre-Yves David
-
upgrade: drop the prefix to the 'blocksourcerequirements' functionMon, 10 Apr 2017 17:56:29 +0200, by Pierre-Yves David
-
upgrade: drop the prefix to the 'requiredsourcerequirements' functionMon, 10 Apr 2017 17:55:47 +0200, by Pierre-Yves David
-
upgrade: extract code in its own moduleFri, 07 Apr 2017 18:53:17 +0200, by Pierre-Yves David
-
bundle2: move the 'close' method off the unpackermixinSun, 09 Apr 2017 19:08:24 +0200, by Pierre-Yves David
-
bundle2: clarify the docstring of unpackermixin methodsSun, 09 Apr 2017 18:12:54 +0200, by Pierre-Yves David
-
bundle2: add documention to 'part.addparams'Sun, 09 Apr 2017 18:16:09 +0200, by Pierre-Yves David
-
test-patchbomb: disable sendmail tests on WindowsMon, 10 Apr 2017 21:12:54 -0400, by Matt Harbison
-
show: fix corrupt json output with no bookmarksFri, 07 Apr 2017 10:46:32 -0700, by Ryan McElroy
-
show: tweak plain abort language for clarityFri, 07 Apr 2017 10:26:13 -0700, by Ryan McElroy
-
tests: print Unix style paths in *.py testsSun, 09 Apr 2017 22:19:27 -0400, by Matt Harbison
-
revlog: make "size" diverge from "rawsize"Sun, 09 Apr 2017 12:53:31 -0700, by Jun Wu
-
test-flagprocessor: add a case about hg statusFri, 07 Apr 2017 10:56:53 -0700, by Jun Wu
-
test-http-proxy: add the Windows variant of "connection refused"Sat, 08 Apr 2017 15:06:45 -0400, by Matt Harbison
-
test-fileset: eliminate a duplicate test that was conditionalized for outputSat, 08 Apr 2017 15:01:49 -0400, by Matt Harbison
-
test-fileset: glob away hash differencesSat, 08 Apr 2017 14:55:44 -0400, by Matt Harbison
-
test-bundle: glob away a URL protocol separatorSat, 08 Apr 2017 14:46:39 -0400, by Matt Harbison
-
templatekw: clarify the result of {latesttag} when no tag existsSun, 09 Apr 2017 00:10:54 -0400, by Matt Harbison
-
hgweb: position the "followlines" box close to latest cursor positionThu, 06 Apr 2017 19:24:04 +0200, by Denis Laxalde
-
hgweb: add a floating tooltip to invite on followlines actionThu, 06 Apr 2017 19:15:09 +0200, by Denis Laxalde
-
zstd: vendor python-zstandard 0.8.1Sat, 08 Apr 2017 14:33:20 -0700, by Gregory Szorc
-
fsmonitor: match watchman and filesystem encodingWed, 08 Mar 2017 09:03:42 -0500, by Olivier Trempe
-
pull: abort pull --update if config requires destination (issue5528)Fri, 07 Apr 2017 06:31:50 -0700, by Ryan McElroy
-
tests: move update requiredest test to own test fileFri, 07 Apr 2017 05:41:03 -0700, by Ryan McElroy
-
py3: add pycompat.unicode and add it to importerFri, 07 Apr 2017 23:35:51 +0530, by Pulkit Goyal
-
py3: add a bytes version of urllib.parse.urlencode() to pycompat.pyFri, 07 Apr 2017 16:00:44 +0530, by Pulkit Goyal
-
py3: replace str() with bytes()Fri, 07 Apr 2017 13:46:35 +0530, by Pulkit Goyal
-
metadataonlyctx: replace "changeset()[0]" to "manifestnode()"Fri, 07 Apr 2017 11:02:43 -0700, by Jun Wu
-
test-check-pylint: match its outputFri, 07 Apr 2017 11:09:54 -0700, by Jun Wu
-
test-flagprocessor: remove unnecessary grepsThu, 06 Apr 2017 19:01:51 -0700, by Jun Wu
-
bundlerepo: use raw revision in revdiff()Mon, 03 Apr 2017 09:31:39 -0700, by Jun Wu
-
bundlerepo: fix raw handling in revision()Thu, 06 Apr 2017 17:45:47 -0700, by Jun Wu
-
bundlerepo: build revlog index with flagsThu, 06 Apr 2017 18:06:42 -0700, by Jun Wu
-
bundlerepo: make baserevision return raw textThu, 06 Apr 2017 17:43:29 -0700, by Jun Wu
-
test-flagprocessor: add tests about bundlerepoThu, 06 Apr 2017 17:24:36 -0700, by Jun Wu
-
test-flagprocessor: use changegroup3 in bundle2Thu, 06 Apr 2017 17:23:20 -0700, by Jun Wu
-
bundle: allow bundle command to use changegroup3 in testsThu, 06 Apr 2017 17:01:58 -0700, by Jun Wu
-
tests: add per-line output conditionals for WindowsWed, 05 Apr 2017 23:44:22 -0400, by Matt Harbison
-
run-tests: support per-line conditional output in testsWed, 05 Apr 2017 23:17:27 -0400, by Matt Harbison
-
test-run-tests: pad the failure test to preserve the run orderWed, 05 Apr 2017 22:59:44 -0400, by Matt Harbison
-
run-tests: prevent a (glob) declaration from reordering (?) linesWed, 05 Apr 2017 22:00:33 -0400, by Matt Harbison
-
py3: use pycompat.byteskwargs() to convert opts to bytesFri, 07 Apr 2017 13:45:33 +0530, by Pulkit Goyal
-
test-check-code: do not use xargsThu, 06 Apr 2017 22:10:46 -0700, by Jun Wu
-
check-code: use "-" to specify a list of files from stdinThu, 06 Apr 2017 22:08:23 -0700, by Jun Wu
-
perf: add historical portability for util.timerThu, 06 Apr 2017 14:41:42 +0200, by Philippe Pepiot
-
diff: add --binary option for git mode diffsWed, 05 Apr 2017 15:31:08 -0700, by Alexander Fomin
-
patch: make diff in git mode respect --text option (issue5510)Wed, 05 Apr 2017 15:15:06 -0700, by Alexander Fomin
-
py3: have registrar process docstrings in bytesWed, 05 Apr 2017 00:34:58 +0900, by Yuya Nishihara
-
localrepo: fix deprecation version for 'repo._link'Tue, 04 Apr 2017 16:49:12 +0200, by Pierre-Yves David
-
localrepo: fix deprecation version for 'repo.join'Tue, 04 Apr 2017 16:48:58 +0200, by Pierre-Yves David
-
tests: make zstd-related output optionalMon, 03 Apr 2017 19:45:09 -0400, by Augie Fackler
-
check-code: update test IP address enforcement checksMon, 03 Apr 2017 18:58:00 -0400, by Augie Fackler
-
tests: fix missing (glob) annotations in test-push-http.tMon, 03 Apr 2017 18:56:44 -0400, by Augie Fackler
-
tests: fix missing (glob) annotations in test-push-http-bundle1.tMon, 03 Apr 2017 18:56:29 -0400, by Augie Fackler
-
tests: fix missing (glob) annotations in test-https.tMon, 03 Apr 2017 18:56:08 -0400, by Augie Fackler
-
tests: fix missing (glob) annotations in test-bundle2-exchange.tMon, 03 Apr 2017 18:55:55 -0400, by Augie Fackler
-
util: fix %-formatting on docstring by moving a closing parenthesisMon, 03 Apr 2017 19:03:34 -0400, by Augie Fackler
-
revset: stop supporting plain list as input set (API)Sun, 02 Apr 2017 22:16:03 +0900, by Yuya Nishihara
-
revset: stop supporting predicate that returns plain list (API)Sun, 02 Apr 2017 22:01:32 +0900, by Yuya Nishihara
-
mdiff: add a hunkinrange helper functionSat, 01 Apr 2017 12:24:59 +0200, by Denis Laxalde
-
templater: provide loop counter as "index" keywordFri, 22 Apr 2016 21:46:33 +0900, by Yuya Nishihara
-
templater: rename variable "i" to "v" in runmap()Fri, 22 Apr 2016 21:45:06 +0900, by Yuya Nishihara
-
formatter: reorder code that builds template mappingSun, 02 Apr 2017 22:43:18 +0900, by Yuya Nishihara
-
revlog: avoid applying delta chain on cache hitSun, 02 Apr 2017 18:40:13 -0700, by Jun Wu
-
revlog: indent block to make review easierSun, 02 Apr 2017 18:29:24 -0700, by Jun Wu
-
revlog: avoid calculating "flags" twice in revision()Sun, 02 Apr 2017 18:25:12 -0700, by Jun Wu
-
revlog: use raw revision for rawsizeSun, 02 Apr 2017 18:57:03 -0700, by Jun Wu
-
revsetlang: enable optimization of 'x + y' expressionSat, 14 May 2016 20:51:57 +0900, by Yuya Nishihara
-
repair: use rawvfs when copying extra store files stableSat, 08 Apr 2017 11:36:39 -0700, by Gregory Szorc
-
tests: add test demonstrating buggy path handling stableSat, 08 Apr 2017 11:35:29 -0700, by Gregory Szorc
-
repair: iterate store files deterministically stableSat, 08 Apr 2017 11:35:00 -0700, by Gregory Szorc
-
zstd: vendor python-zstandard 0.8.0Sat, 01 Apr 2017 15:24:03 -0700, by Gregory Szorc
-
commands: update help for "unbundle"Sat, 01 Apr 2017 13:43:52 -0700, by Gregory Szorc
-
commands: update help for "bundle"Sat, 01 Apr 2017 13:43:43 -0700, by Gregory Szorc
-
help: document bundle specificationsSat, 01 Apr 2017 13:42:06 -0700, by Gregory Szorc
-
util: document bundle compressionSat, 01 Apr 2017 13:29:01 -0700, by Gregory Szorc
-
tests: store ETag when using --headeronlySat, 01 Apr 2017 00:21:52 -0700, by Gregory Szorc
-
hgweb: extract path traversal checking into standalone functionFri, 31 Mar 2017 21:47:26 -0700, by Gregory Szorc
-
hgweb: use context manager for file I/OFri, 31 Mar 2017 22:30:38 -0700, by Gregory Szorc
-
tags: rename "head" to "node" where we don't careMon, 03 Apr 2017 10:01:38 -0700, by Martin von Zweigbergk
-
manifest: update comment to be about bytearrayMon, 03 Apr 2017 08:45:24 -0700, by Martin von Zweigbergk
-
check-code: fix "covert" typoMon, 03 Apr 2017 11:30:51 -0700, by Martin von Zweigbergk
-
hgweb: rename linerangelog.js as followlines.jsMon, 03 Apr 2017 10:02:55 +0200, by Denis Laxalde
-
hgweb: rely on a specific class to change cursor type in followlines UIMon, 03 Apr 2017 09:58:36 +0200, by Denis Laxalde
-
hgweb: use a function expression for the install listener of followlines UIMon, 03 Apr 2017 09:40:25 +0200, by Denis Laxalde
-
formatter: use templatefilters.json()Sun, 02 Apr 2017 12:02:17 +0900, by Yuya Nishihara
-
templatefilters: use list comprehension in json()Sun, 02 Apr 2017 11:54:24 +0900, by Yuya Nishihara
-
templatefilters: unroll handling of None/False/TrueSun, 02 Apr 2017 11:51:25 +0900, by Yuya Nishihara
-
templatefilters: drop callable support from json()Sun, 02 Apr 2017 11:46:49 +0900, by Yuya Nishihara
-
ui: use bytes IO and convert EOL manually in ui.editor()Wed, 29 Mar 2017 21:43:38 +0900, by Yuya Nishihara
-
util: add helper to convert between LF and native EOLWed, 29 Mar 2017 21:40:15 +0900, by Yuya Nishihara
-
util: extract pure tolf/tocrlf() functions from eol extensionWed, 29 Mar 2017 21:28:54 +0900, by Yuya Nishihara
-
pycompat: provide bytes os.linesepWed, 29 Mar 2017 21:23:28 +0900, by Yuya Nishihara
-
pycompat: introduce identity function as a compat stubWed, 29 Mar 2017 21:13:55 +0900, by Yuya Nishihara
-
test-blackbox: glob away quoting differences on WindowsSun, 02 Apr 2017 02:29:51 -0400, by Matt Harbison
-
test-subrepo: update output for WindowsSun, 02 Apr 2017 02:24:09 -0400, by Matt Harbison
-
test-serve: disable unfixable tests on WindowsSun, 02 Apr 2017 01:51:07 -0400, by Matt Harbison
-
test-serve: kill daemons before deleting the access and error logsSun, 02 Apr 2017 01:28:05 -0400, by Matt Harbison
-
test-serve: make the 'listening at *' lines optionalSun, 02 Apr 2017 00:56:52 -0400, by Matt Harbison
-
test-http: update output for WindowsSat, 01 Apr 2017 18:30:51 -0400, by Matt Harbison
-
tests: quote paths in shell script hooksSat, 01 Apr 2017 15:23:26 -0400, by Matt Harbison
-
tests: add globs for WindowsSat, 01 Apr 2017 14:48:39 -0400, by Matt Harbison
-
show: new extension for displaying various repository dataFri, 24 Mar 2017 19:19:00 -0700, by Gregory Szorc
-
test-revlog-raw: remove duplicated optionSun, 02 Apr 2017 18:13:03 -0700, by Jun Wu
-
test-revlog-raw: fix "genbits" implementationSun, 02 Apr 2017 18:12:47 -0700, by Jun Wu
-
verify: fix length checkWed, 29 Mar 2017 14:49:14 -0700, by Jun Wu
-
verify: document corner casesWed, 29 Mar 2017 14:45:01 -0700, by Jun Wu
-
hgweb: expose a followlines UI in filerevision viewWed, 29 Mar 2017 22:26:16 +0200, by Denis Laxalde
-
shelve: move ui.quiet manipulations to configoverrideWed, 29 Mar 2017 05:31:31 -0700, by Kostia Balytskyi
-
revlog: add a fast path for revision(raw=False)Thu, 30 Mar 2017 21:21:15 -0700, by Jun Wu
-
revlog: make _addrevision only accept rawtextThu, 30 Mar 2017 18:38:03 -0700, by Jun Wu
-
revlog: use raw revisions in cloneThu, 30 Mar 2017 18:24:23 -0700, by Jun Wu
-
revlog: use raw revisions in revdiffThu, 30 Mar 2017 18:23:27 -0700, by Jun Wu
-
revlog: use raw content when building deltaThu, 30 Mar 2017 17:58:03 -0700, by Jun Wu