view tests/printenv.py @ 10301:56b50194617f

templates: rename `Last change' column in hgwebdir repository list. This patch changes column headers in the templates that previously said `Last change' to `Last modified'. Neither code nor functionality are changed other than that. For some time now, I have been annoyed by the fact the `Last change' column didn't list the age of the youngest changeset in the repository, or at least tip. It just occurred to me that this is because the wording is slightly misleading; what the column in fact lists is when the repository was last *modified*, that is, when changesets was last added or removed from it. The word `change' can be understood as referring to the changeset itself. Using `changed' would be ever so slightly less amigous. However, the standard nomenclature in this case is `modification date' and `Last modified', which is incidentally entirely unambigous. Hence, `Last modified' is the wording used.
author Dan Villiom Podlaski Christiansen <danchr@gmail.com>
date Sun, 24 Jan 2010 20:51:53 +0100
parents 08a0f04b56bd
children bb35840e965c
line wrap: on
line source

# simple script to be used in hooks
# copy it to the current directory when the test starts:
#
#     cp "$TESTDIR"/printenv.py .
#
# put something like this in the repo .hg/hgrc:
#
#     [hooks]
#     changegroup = python ../printenv.py <hookname> [exit] [output]
#
#   - <hookname> is a mandatory argument (e.g. "changegroup")
#   - [exit] is the exit code of the hook (default: 0)
#   - [output] is the name of the output file (default: use sys.stdout)
#              the file will be opened in append mode.
#
import os
import sys

try:
    import msvcrt
    msvcrt.setmode(sys.stdin.fileno(), os.O_BINARY)
    msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)
    msvcrt.setmode(sys.stderr.fileno(), os.O_BINARY)
except ImportError:
    pass

exitcode = 0
out = sys.stdout

name = sys.argv[1]
if len(sys.argv) > 2:
    exitcode = int(sys.argv[2])
    if len(sys.argv) > 3:
        out = open(sys.argv[3], "ab")

# variables with empty values may not exist on all platforms, filter
# them now for portability sake.
env = [k for k, v in os.environ.iteritems()
       if k.startswith("HG_") and v]
env.sort()

# edit the variable part of the variable
url = os.environ.get("HG_URL", "")
if url.startswith("file:"):
    os.environ["HG_URL"] = "file:"
elif url.startswith("remote:http"):
    os.environ["HG_URL"] = "remote:http"

out.write("%s hook: " % name)
for v in env:
    out.write("%s=%s " %
              (v, os.environ[v].replace(os.environ["HGTMP"], '$HGTMP')))
out.write("\n")
out.close()

sys.exit(exitcode)