pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/devel



Module Name:    pkgsrc
Committed By:   wiz
Date:           Tue May 21 20:55:02 UTC 2019

Modified Files:
        pkgsrc/devel/mercurial: Makefile
        pkgsrc/devel/py-mercurial: Makefile PLIST distinfo
Added Files:
        pkgsrc/devel/py-mercurial: version.mk
Removed Files:
        pkgsrc/devel/py-mercurial: Makefile.version

Log Message:
mercurial: update to 5.0

Still building with python-2.7 only, but this version has beta support
for python 3.x.

Mercurial 5.0 release

This is an overview of the 5.0 release.

1. New Features

    ui.relative-paths option for getting relative path output from most commands. This is enabled when ui.tweakdefaults is enabled.

    expectsize() revset errors out if revset has unexpected number of elements.

    config() template function for getting a config value.

    {negrev} template keyword shows the negative revision number. This is convenient because it is usually shorter than the positive number, but note that it is less stable.

    hg uncommit now has an --allow-dirty-working-copy option.

    hg shelve now has --keep option, which shelves but also leaves the working directory unchanged.

    hg diff will now include specified files in subrepos.

    hg recover now has a --no-verify option

1.1. Python 3 Support (Beta)

Mercurial 5.0 has beta level support for running on Python 3.5, 3.6, and 3.7. The Mercurial distribution itself and all extensions bundled with it should work on these Python versions.

To use Mercurial with Python 3, invoke setup.py with a Python 3 interpreter or set the PYTHON variable to a Python 3 interpreter when invoking the Makefile. e.g. python3.7 setup.py install or make 
install-home PYTHON=python3.7.

3rd party extensions will likely need to be ported to support running on Python 3 and attempts to run many existing extensions with a Python 3 powered Mercurial will result in extension loading 
failures. See the Python3 page for more.

While the Mercurial test suite has a >99% pass rate when running with Python 3.5, 3.6, and 3.7, we anticipate that there are still many Python 3 bugs lingering in Mercurial. Please report Python 3 
issues using the instructions at BugTracker.

If you package Mercurial or distribute it to users, we do not recommend making Python 3 the default at this time.

Python 3 is not yet very well tested on Windows and there are likely several more lingering issues on Windows compared to Linux, macOS, and other UNIX-like platforms.

1.2. Updated Windows Installers

Windows installer packaging has been transitioned away from ad-hoc processes employed on individual contributors' personal machines to occurring in reproducible infrastructure driven by code in the 
Mercurial repository itself. This transition should enable Windows packaging and releasing to be more reliable and reproducible.

As part of this transition, there are changes to the Windows installers.

1.2.1. Inno Setup .exe Installer Changes

    Python has been upgraded from 2.7.15 to 2.7.16
    add_path.exe has been removed and the Inno installer now updates PATH via a Pascal script that is part of the installer
    The dulwich package has been upgraded from version 0.18.3 to 0.19.11
    The keyring package has been upgraded to version 18.0.1
    The pygments package has been upgraded to version 2.3.1
    The urllib3 package is now included
    The MSVC Runtime DLLs (msvcm90.dll, msvcp90.dll, and msvcr90.dll) have been upgraded from version 9.0.21022.8 to 9.0.30729.9518
    Various tcl/tk Python packages are now included (making the Python distribution more complete)
    The pywin32 package is no longer included (pywin32 has not been required by Mercurial for years)
    Known issue: the distutils package is broken
    (x86 only) Python .pyd and .dll extension modules and support libraries are now installed as standalone files instead of bundled in the library.zip file. This behavior is now consistent with 
64-bit installers.

2. New Experimental Features

3. Other Notable Features

4. Other Improvements

    Improved color scheme for histedit's curses interface, making it more consistent with the curses hunk selector.

5. Bug Fixes

    Histedit's curse interface has improved support for non ascii characters.

6. Backwards Compatibility Changes

    color: change color of grep.rev label (BC)
    commit: if interactive, look elsewhere for whitespace settings (BC)

    diff: make sure we output stat even when --git is not passed (issue4037) (BC)
    uncommit: abort if an explicitly given file cannot be uncommitted (BC)
    The Windows Inno installers no longer ship the pywin32 package. This package was being bundled for historical reasons. Mercurial stopped using pywin32 several years ago and the disappearance of 
this package should not have any meaningful impact.
    The 32-bit Windows Inno installers no longer distribute w9xpopen.exe. This should only impact people running Mercurial on Windows 95, 98, or ME.
    The Windows MSI installers no longer include the Python sphinx package and its various dependencies.
    The Windows MSI installers no longer include the pywin32 Python package.
    The Windows MSI installers no longer include the enum and future Python packages.

7. Internal API Changes

    add: pass around uipathfn and use instead of m.rel() (API)
    addremove: pass around uipathfn and use instead of m.uipath() (API)
    branchmap: drop branchcache.setdefault() (API)
    branchmap: remove the dict interface from the branchcache class (API)
    forget: pass around uipathfn and use instead of m.rel() (API)
    largefiles: use uipathfn instead of match.{rel,uipath}() (API)
    match: delete unused abs() (API)
    match: delete unused rel() (API)
    match: delete unused root and cwd arguments from {always,never,exact}() (API)
    match: delete unused root and cwd arguments to constructors (API)
    match: delete unused uipath() and _uipathrelative (API)
    match: remove unused "exact" argument (API)
    memctx: rename constructor argument "copied" to "copysource" (API)
    patch: accept second matcher that applies only to copy sources (API)
    patch: let caller pass in root-filtering matcher (API)
    patch: pass in context objects into diffhunks() (API)
    patch: replace "prefix" and "relroot" arguments by "pathfn" (API)
    remove: pass around uipathfn and use instead of m.rel() (API)
    revset: leverage getintrange() helper in relation-subscript operation (API)
    scmutil: delete now-unused origpath() (API)
    scmutil: remove special handling of pats==("",) in matchandpats() (API)
    subrepo: adjust subrepo prefix before calling subrepo.add() (API)
    subrepo: adjust subrepo prefix before calling subrepo.addremove() (API)
    subrepo: adjust subrepo prefix before calling subrepo.archive() (API)
    subrepo: adjust subrepo prefix before calling subrepo.diff() (API)
    subrepo: adjust subrepo prefix before calling subrepo.forget() (API)
    subrepo: adjust subrepo prefix before calling subrepo.removefiles() (API)
    subrepo: avoid calculating subrepo prefix twice for cat() (API)
    templatekw: move getrenamedfn() to scmutil (API)


To generate a diff of this commit:
cvs rdiff -u -r1.105 -r1.106 pkgsrc/devel/mercurial/Makefile
cvs rdiff -u -r1.28 -r1.29 pkgsrc/devel/py-mercurial/Makefile
cvs rdiff -u -r1.71 -r0 pkgsrc/devel/py-mercurial/Makefile.version
cvs rdiff -u -r1.22 -r1.23 pkgsrc/devel/py-mercurial/PLIST
cvs rdiff -u -r1.74 -r1.75 pkgsrc/devel/py-mercurial/distinfo
cvs rdiff -u -r0 -r1.1 pkgsrc/devel/py-mercurial/version.mk

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/devel/mercurial/Makefile
diff -u pkgsrc/devel/mercurial/Makefile:1.105 pkgsrc/devel/mercurial/Makefile:1.106
--- pkgsrc/devel/mercurial/Makefile:1.105       Thu Apr 25 07:32:48 2019
+++ pkgsrc/devel/mercurial/Makefile     Tue May 21 20:55:02 2019
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.105 2019/04/25 07:32:48 maya Exp $
+# $NetBSD: Makefile,v 1.106 2019/05/21 20:55:02 wiz Exp $
 
-PKGREVISION= 1
-.include "../../devel/py-mercurial/Makefile.version"
+.include "../../devel/py-mercurial/version.mk"
 
 PKGNAME=       mercurial-${VERSION}
 CATEGORIES=    devel scm

Index: pkgsrc/devel/py-mercurial/Makefile
diff -u pkgsrc/devel/py-mercurial/Makefile:1.28 pkgsrc/devel/py-mercurial/Makefile:1.29
--- pkgsrc/devel/py-mercurial/Makefile:1.28     Tue Mar 19 12:12:22 2019
+++ pkgsrc/devel/py-mercurial/Makefile  Tue May 21 20:55:02 2019
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.28 2019/03/19 12:12:22 wiz Exp $
+# $NetBSD: Makefile,v 1.29 2019/05/21 20:55:02 wiz Exp $
 
 DISTNAME=      mercurial-${VERSION}
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME}
@@ -21,10 +21,13 @@ USE_TOOLS+= gmake msgfmt
 INSTALLATION_DIRS=     bin ${PKGMANDIR}/man1 ${PKGMANDIR}/man5
 INSTALLATION_DIRS+=    share/doc/mercurial
 
-.include "Makefile.version"
+.include "version.mk"
 
 # Known test failures:
-# none
+# test-logtoprocess
+# https://bz.mercurial-scm.org/show_bug.cgi?id=6143
+# 21 timeouts:
+# https://bz.mercurial-scm.org/show_bug.cgi?id=6144
 do-test:
        cd ${WRKSRC} && make tests PYTHON=${PYTHONBIN} TESTFLAGS=${_MAKE_JOBS:Q}
 

Index: pkgsrc/devel/py-mercurial/PLIST
diff -u pkgsrc/devel/py-mercurial/PLIST:1.22 pkgsrc/devel/py-mercurial/PLIST:1.23
--- pkgsrc/devel/py-mercurial/PLIST:1.22        Thu Feb 14 09:53:06 2019
+++ pkgsrc/devel/py-mercurial/PLIST     Tue May 21 20:55:02 2019
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.22 2019/02/14 09:53:06 wiz Exp $
+@comment $NetBSD: PLIST,v 1.23 2019/05/21 20:55:02 wiz Exp $
 bin/hg
 ${PYSITELIB}/hgdemandimport/__init__.py
 ${PYSITELIB}/hgdemandimport/__init__.pyc
@@ -1229,6 +1229,9 @@ ${PYSITELIB}/mercurial/utils/__init__.py
 ${PYSITELIB}/mercurial/utils/cborutil.py
 ${PYSITELIB}/mercurial/utils/cborutil.pyc
 ${PYSITELIB}/mercurial/utils/cborutil.pyo
+${PYSITELIB}/mercurial/utils/compression.py
+${PYSITELIB}/mercurial/utils/compression.pyc
+${PYSITELIB}/mercurial/utils/compression.pyo
 ${PYSITELIB}/mercurial/utils/dateutil.py
 ${PYSITELIB}/mercurial/utils/dateutil.pyc
 ${PYSITELIB}/mercurial/utils/dateutil.pyo
@@ -1238,6 +1241,9 @@ ${PYSITELIB}/mercurial/utils/interfaceut
 ${PYSITELIB}/mercurial/utils/procutil.py
 ${PYSITELIB}/mercurial/utils/procutil.pyc
 ${PYSITELIB}/mercurial/utils/procutil.pyo
+${PYSITELIB}/mercurial/utils/repoviewutil.py
+${PYSITELIB}/mercurial/utils/repoviewutil.pyc
+${PYSITELIB}/mercurial/utils/repoviewutil.pyo
 ${PYSITELIB}/mercurial/utils/storageutil.py
 ${PYSITELIB}/mercurial/utils/storageutil.pyc
 ${PYSITELIB}/mercurial/utils/storageutil.pyo

Index: pkgsrc/devel/py-mercurial/distinfo
diff -u pkgsrc/devel/py-mercurial/distinfo:1.74 pkgsrc/devel/py-mercurial/distinfo:1.75
--- pkgsrc/devel/py-mercurial/distinfo:1.74     Tue Mar 26 06:20:17 2019
+++ pkgsrc/devel/py-mercurial/distinfo  Tue May 21 20:55:02 2019
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.74 2019/03/26 06:20:17 wiz Exp $
+$NetBSD: distinfo,v 1.75 2019/05/21 20:55:02 wiz Exp $
 
-SHA1 (mercurial-4.9.1.tar.gz) = 2919b255c97f1355b08f9f5fe13031c6ebfca315
-RMD160 (mercurial-4.9.1.tar.gz) = 4be4ff74ee183936b52774dfeeb9ab02df70e25b
-SHA512 (mercurial-4.9.1.tar.gz) = 2265ab501e24a2d229ef29404ca35d318faf620db163ec33225348d53139f7b6cb121e935ce444ec697ced69697f43df57dd7199ad20c1ca6f0275d9744ce391
-Size (mercurial-4.9.1.tar.gz) = 7076867 bytes
+SHA1 (mercurial-5.0.tar.gz) = 5591b1323167c4b25f992e727370379ae9a73f9a
+RMD160 (mercurial-5.0.tar.gz) = afc314b7db88e392b10a032fcae53a7a6f5209c9
+SHA512 (mercurial-5.0.tar.gz) = fa193bdf3957bbd6625c41aa210292bf1fca7125e05977467b3dc85420cea1e952b89cd861613564ec05f9e93ff51bad652f5b875beb2e3b0d28e524c8b64bad
+Size (mercurial-5.0.tar.gz) = 7197243 bytes

Added files:

Index: pkgsrc/devel/py-mercurial/version.mk
diff -u /dev/null pkgsrc/devel/py-mercurial/version.mk:1.1
--- /dev/null   Tue May 21 20:55:02 2019
+++ pkgsrc/devel/py-mercurial/version.mk        Tue May 21 20:55:02 2019
@@ -0,0 +1,7 @@
+# $NetBSD: version.mk,v 1.1 2019/05/21 20:55:02 wiz Exp $
+
+VERSION=       5.0
+
+PYTHON_VERSIONS_INCOMPATIBLE=  36 37 # 5.0 has "beta" support for python 3
+# see https://www.mercurial-scm.org/wiki/Python3
+# set HGPYTHON3=1 in the environment during install



Home | Main Index | Thread Index | Old Index