Sat Apr 6 06:32:56 2024 UTC (50d)
py-scons: update to 4.7.0.

NEW FUNCTIONALITY

    Method unlink_files was added to the TestCmd class that unlinks a list of files
    from a specified directory. An attempt to unlink a file is made only when the
    file exists; otherwise, the file is ignored.

CHANGED/ENHANCED EXISTING FUNCTIONALITY

    Add an optional argument list string to configure's CheckFunc method so
    that the generated function argument list matches the function's
    prototype when including a header file. Fixes GH Issue #4320
    Now supports pre-release Python 3.13
    Support for Python versions without support for the threading package has been removed
    Dropped three unused warning classes: DeprecatedSourceCodeWarning,
    TaskmasterNeedsExecuteWarning, DeprecatedMissingSConscriptWarning.
    Two warning classes that are actually used were added to manpage section on
    enabling warnings (cache-cleanup-error, future-reserved-variable).

FIXES

    Fix of the --debug=sconscript option to return exist statements when using return
    statement with stop flag enabled
    MSVS: prevent overwriting the SCons environment variable SCONS_HOME with the OS
    environment value of SCONS_HOME in the msvs tool.
    MSVC: Fix the detection of Visual Studio 2015 Express ('14.0Exp') by adding a
    registry key definition and updating the installation root-relative registry value
    at runtime for the location of the VC folder.
    MSVS: Fix the msvs project generation test for MSVS 6.0 to use the correct name of
    the generated project file.
    MSVS: Fix the msvs project generation test scripts so that "false positive" tests
    results are not possible when the initial build is successful and the command-line
    build of the project file fails.
    On Windows platform, when collecting command output (Configure checks),
    make sure decoding of bytes doesn't fail.
    Documentation indicated that both Pseudo() and env.Pseudo() were usable,
    but Pseudo() did not work; is now enabled.
    Improve handling of file data that SCons itself processes - as in
    scanners - try harder to decode non-UTF-8 text.
    PyPackageDir no longer fails if passed a module name which cannot be found,
    now returns None.
    Add locking around creation of CacheDir config file. Fixes issue #4489.

IMPROVEMENTS

    Use of NotImplemented instead of NotImplementedError for special methods
    of _ListVariable class
    The NewParallel scheduler is now the default, the tm_v2 flag is removed,
    and the old scheduler is opt-in under --experimental=legacy_sched. Additionally,
    the new scheduler is now used for -j1 builds as well.
    NOTE: This should significantly improve SCons performance for larger parallel builds
    (Larger -j values)
    CacheDir writes no longer happen within the taskmaster critical section, and therefore
    can run in parallel with both other CacheDir writes and the taskmaster DAG walk.
    The NewParallel scheduler now only adds threads as new work requiring execution
    is discovered, up to the limit set by -j. This should reduce resource utilization
    when the achievable parallelism in the DAG is less than the -j limit.
    Dumping an environment with json formatting will now explicitly specify if a given
    value cannot be serialized.

PACKAGING

    Remove unnecessary dependencies on pypi packages from setup.cfg
    SCons documentation build can now be controlled through SKIP_DOC
    variable - rather than just true/false can now specify
    skip none, skip all, skip pdf docs, skip api docs.

DOCUMENTATION

    Fixed the Scanner examples in the User Guide to be runnable and added
    some more explanation. Clarified discussion of the scanner function in
    the Scanner Objects section of the manpage.
    The manpage entry for Pseudo was clarified.
    The manpage entry for SharedLibrary was clarified.
    Update API docs for Warnings framework; add two warns to manpage
    enable/disable control.
    More consistent use of &Python; in the manpage. A few links added.
    A warning about overwriting env['ENV'] and one about Configure
    checks possibly not running in in no-exec mode also added.
    Clarify how SCons finds the project top directory, and what that is used for.
    Clarify MergeFlags usage of a dict argument.

DEVELOPMENT

    Fix sphinx config to handle SCons versions with post such as: 4.6.0.post1
    Created SCons.Util.sctyping to contain complex type information, allowing
    for repo-wide type hinting without causing cyclical dependencies.


(wiz)
diff -r1.7 -r1.8 pkgsrc/devel/scons4/Makefile
diff -r1.2 -r1.3 pkgsrc/devel/scons4/PLIST
diff -r1.3 -r1.4 pkgsrc/devel/scons4/distinfo

cvs diff -r1.7 -r1.8 pkgsrc/devel/scons4/Makefile (expand / switch to unified diff)

--- pkgsrc/devel/scons4/Makefile 2024/01/02 08:43:10 1.7
+++ pkgsrc/devel/scons4/Makefile 2024/04/06 06:32:56 1.8
@@ -1,16 +1,16 @@ @@ -1,16 +1,16 @@
1# $NetBSD: Makefile,v 1.7 2024/01/02 08:43:10 wiz Exp $ 1# $NetBSD: Makefile,v 1.8 2024/04/06 06:32:56 wiz Exp $
2 2
3DISTNAME= SCons-4.6.0.post1 3DISTNAME= SCons-4.7.0
4PKGNAME= ${PYPKGPREFIX}-${DISTNAME:tl} 4PKGNAME= ${PYPKGPREFIX}-${DISTNAME:tl}
5CATEGORIES= devel python 5CATEGORIES= devel python
6MASTER_SITES= ${MASTER_SITE_PYPI:=S/SCons/} 6MASTER_SITES= ${MASTER_SITE_PYPI:=S/SCons/}
7EXTRACT_USING= bsdtar 7EXTRACT_USING= bsdtar
8 8
9MAINTAINER= gdt@NetBSD.org 9MAINTAINER= gdt@NetBSD.org
10HOMEPAGE= https://www.scons.org/ 10HOMEPAGE= https://www.scons.org/
11COMMENT= Python-based, open-source build system 11COMMENT= Python-based, open-source build system
12LICENSE= mit 12LICENSE= mit
13 13
14TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools-[0-9]*:../../devel/py-setuptools 14TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools-[0-9]*:../../devel/py-setuptools
15TOOL_DEPENDS+= ${PYPKGPREFIX}-wheel-[0-9]*:../../devel/py-wheel 15TOOL_DEPENDS+= ${PYPKGPREFIX}-wheel-[0-9]*:../../devel/py-wheel
16 16

cvs diff -r1.2 -r1.3 pkgsrc/devel/scons4/PLIST (expand / switch to unified diff)

--- pkgsrc/devel/scons4/PLIST 2023/12/30 10:47:36 1.2
+++ pkgsrc/devel/scons4/PLIST 2024/04/06 06:32:56 1.3
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1@comment $NetBSD: PLIST,v 1.2 2023/12/30 10:47:36 wiz Exp $ 1@comment $NetBSD: PLIST,v 1.3 2024/04/06 06:32:56 wiz Exp $
2bin/scons-${PYVERSSUFFIX} 2bin/scons-${PYVERSSUFFIX}
3bin/scons-configure-cache-${PYVERSSUFFIX} 3bin/scons-configure-cache-${PYVERSSUFFIX}
4bin/sconsign-${PYVERSSUFFIX} 4bin/sconsign-${PYVERSSUFFIX}
5${PYSITELIB}/${WHEEL_INFODIR}/LICENSE 5${PYSITELIB}/${WHEEL_INFODIR}/LICENSE
6${PYSITELIB}/${WHEEL_INFODIR}/METADATA 6${PYSITELIB}/${WHEEL_INFODIR}/METADATA
7${PYSITELIB}/${WHEEL_INFODIR}/RECORD 7${PYSITELIB}/${WHEEL_INFODIR}/RECORD
8${PYSITELIB}/${WHEEL_INFODIR}/WHEEL 8${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
9${PYSITELIB}/${WHEEL_INFODIR}/entry_points.txt 9${PYSITELIB}/${WHEEL_INFODIR}/entry_points.txt
10${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt 10${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt
11${PYSITELIB}/SCons/Action.py 11${PYSITELIB}/SCons/Action.py
12${PYSITELIB}/SCons/Action.pyc 12${PYSITELIB}/SCons/Action.pyc
13${PYSITELIB}/SCons/Action.pyo 13${PYSITELIB}/SCons/Action.pyo
14${PYSITELIB}/SCons/Builder.py 14${PYSITELIB}/SCons/Builder.py
@@ -1947,26 +1947,29 @@ ${PYSITELIB}/SCons/Util/__init__.pyc @@ -1947,26 +1947,29 @@ ${PYSITELIB}/SCons/Util/__init__.pyc
1947${PYSITELIB}/SCons/Util/__init__.pyo 1947${PYSITELIB}/SCons/Util/__init__.pyo
1948${PYSITELIB}/SCons/Util/envs.py 1948${PYSITELIB}/SCons/Util/envs.py
1949${PYSITELIB}/SCons/Util/envs.pyc 1949${PYSITELIB}/SCons/Util/envs.pyc
1950${PYSITELIB}/SCons/Util/envs.pyo 1950${PYSITELIB}/SCons/Util/envs.pyo
1951${PYSITELIB}/SCons/Util/filelock.py 1951${PYSITELIB}/SCons/Util/filelock.py
1952${PYSITELIB}/SCons/Util/filelock.pyc 1952${PYSITELIB}/SCons/Util/filelock.pyc
1953${PYSITELIB}/SCons/Util/filelock.pyo 1953${PYSITELIB}/SCons/Util/filelock.pyo
1954${PYSITELIB}/SCons/Util/hashes.py 1954${PYSITELIB}/SCons/Util/hashes.py
1955${PYSITELIB}/SCons/Util/hashes.pyc 1955${PYSITELIB}/SCons/Util/hashes.pyc
1956${PYSITELIB}/SCons/Util/hashes.pyo 1956${PYSITELIB}/SCons/Util/hashes.pyo
1957${PYSITELIB}/SCons/Util/sctypes.py 1957${PYSITELIB}/SCons/Util/sctypes.py
1958${PYSITELIB}/SCons/Util/sctypes.pyc 1958${PYSITELIB}/SCons/Util/sctypes.pyc
1959${PYSITELIB}/SCons/Util/sctypes.pyo 1959${PYSITELIB}/SCons/Util/sctypes.pyo
 1960${PYSITELIB}/SCons/Util/sctyping.py
 1961${PYSITELIB}/SCons/Util/sctyping.pyc
 1962${PYSITELIB}/SCons/Util/sctyping.pyo
1960${PYSITELIB}/SCons/Util/stats.py 1963${PYSITELIB}/SCons/Util/stats.py
1961${PYSITELIB}/SCons/Util/stats.pyc 1964${PYSITELIB}/SCons/Util/stats.pyc
1962${PYSITELIB}/SCons/Util/stats.pyo 1965${PYSITELIB}/SCons/Util/stats.pyo
1963${PYSITELIB}/SCons/Utilities/ConfigureCache.py 1966${PYSITELIB}/SCons/Utilities/ConfigureCache.py
1964${PYSITELIB}/SCons/Utilities/ConfigureCache.pyc 1967${PYSITELIB}/SCons/Utilities/ConfigureCache.pyc
1965${PYSITELIB}/SCons/Utilities/ConfigureCache.pyo 1968${PYSITELIB}/SCons/Utilities/ConfigureCache.pyo
1966${PYSITELIB}/SCons/Utilities/__init__.py 1969${PYSITELIB}/SCons/Utilities/__init__.py
1967${PYSITELIB}/SCons/Utilities/__init__.pyc 1970${PYSITELIB}/SCons/Utilities/__init__.pyc
1968${PYSITELIB}/SCons/Utilities/__init__.pyo 1971${PYSITELIB}/SCons/Utilities/__init__.pyo
1969${PYSITELIB}/SCons/Utilities/sconsign.py 1972${PYSITELIB}/SCons/Utilities/sconsign.py
1970${PYSITELIB}/SCons/Utilities/sconsign.pyc 1973${PYSITELIB}/SCons/Utilities/sconsign.pyc
1971${PYSITELIB}/SCons/Utilities/sconsign.pyo 1974${PYSITELIB}/SCons/Utilities/sconsign.pyo
1972${PYSITELIB}/SCons/Variables/BoolVariable.py 1975${PYSITELIB}/SCons/Variables/BoolVariable.py

cvs diff -r1.3 -r1.4 pkgsrc/devel/scons4/distinfo (expand / switch to unified diff)

--- pkgsrc/devel/scons4/distinfo 2024/01/02 08:43:10 1.3
+++ pkgsrc/devel/scons4/distinfo 2024/04/06 06:32:56 1.4
@@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
1$NetBSD: distinfo,v 1.3 2024/01/02 08:43:10 wiz Exp $ 1$NetBSD: distinfo,v 1.4 2024/04/06 06:32:56 wiz Exp $
2 2
3BLAKE2s (SCons-4.6.0.post1.tar.gz) = af2d1211e1dde6fd02bcabaf775c6c7a7df312bd8241a02c5570333bf11f624f 3BLAKE2s (SCons-4.7.0.tar.gz) = ed80366b527710b811653fd84e923a7298189562405d43996a18d10433e84cb5
4SHA512 (SCons-4.6.0.post1.tar.gz) = 1829e5ed0fc7ab4b4d921717e81171c13c2c1f9d77988bc35a3986c6e474664bae5d3b70a2b9758439c992a6b4ad2b507bc37beeb9c14d2654ee9b43171e98af 4SHA512 (SCons-4.7.0.tar.gz) = 4d607114eb4ed91a33bb86f07af8d60f89d55402752ca524ad79a5af8bd73cbc0d4e3490894200c71fe5fb62fb35558a3f9edbd1b03f134592c52de7ab146730
5Size (SCons-4.6.0.post1.tar.gz) = 3217478 bytes 5Size (SCons-4.7.0.tar.gz) = 3220727 bytes
6SHA1 (patch-SCons_Platform_____init____.py) = 944c044beea35d47f144a6a4ab8fe77e28aaf706 6SHA1 (patch-SCons_Platform_____init____.py) = 944c044beea35d47f144a6a4ab8fe77e28aaf706