hg
author Matt Harbison <matt_harbison@yahoo.com>
Mon, 07 Dec 2020 21:44:00 -0500
changeset 46078 31ecf715efe2
parent 46059 7740d5102760
child 46819 d4ba4d51f85f
permissions -rwxr-xr-x
tests: conditionalize the progress timestamp for Windows It looks like for py2 on Windows, the start date is 1970. It matches the other platforms for py3, so I'm just going to match the tests and move on, given that py2 is on the way out. Differential Revision: https://phab.mercurial-scm.org/D9541

#!/usr/bin/env python3
#
# mercurial - scalable distributed SCM
#
# Copyright 2005-2007 Matt Mackall <mpm@selenic.com>
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
from __future__ import absolute_import

import os
import sys

libdir = '@LIBDIR@'

if libdir != '@' 'LIBDIR' '@':
    if not os.path.isabs(libdir):
        libdir = os.path.join(
            os.path.dirname(os.path.realpath(__file__)), libdir
        )
        libdir = os.path.abspath(libdir)
    sys.path.insert(0, libdir)

# Make `pip install --user ...` packages available to the official Windows
# build.  Most py2 packaging installs directly into the system python
# environment, so no changes are necessary for other platforms.  The Windows
# py2 package uses py2exe, which lacks a `site` module.  Hardcode it according
# to the documentation.
if getattr(sys, 'frozen', None) == 'console_exe':
    vi = sys.version_info
    sys.path.append(
        os.path.join(
            os.environ['APPDATA'],
            'Python',
            'Python%d%d' % (vi[0], vi[1]),
            'site-packages',
        )
    )

from hgdemandimport import tracing

with tracing.log('hg script'):
    # enable importing on demand to reduce startup time
    try:
        if sys.version_info[0] < 3 or sys.version_info >= (3, 6):
            import hgdemandimport

            hgdemandimport.enable()
    except ImportError:
        sys.stderr.write(
            "abort: couldn't find mercurial libraries in [%s]\n"
            % ' '.join(sys.path)
        )
        sys.stderr.write("(check your install and PYTHONPATH)\n")
        sys.exit(-1)

    from mercurial import dispatch

    dispatch.run()