Please note that this mail was generated by a script. The described changes are computed based on the x86_64 DVD. The full online repo contains too many changes to be listed here. Please check the known defects of this snapshot before upgrading: https://openqa.opensuse.org/tests/overview?distri=opensuse&groupid=1&version=Tumbleweed&build=20170227 When you reply to report some issues, make sure to change the subject. It is not helpful to keep the release announcement subject in a thread while discussing a specific problem. Packages changed: gstreamer (1.10.3 -> 1.10.4) gstreamer-plugins-bad (1.10.3 -> 1.10.4) gstreamer-plugins-base (1.10.3 -> 1.10.4) gstreamer-plugins-good (1.10.3 -> 1.10.4) gstreamer-plugins-ugly (1.10.3 -> 1.10.4) kernel-source (4.10.0 -> 4.10.1) pciutils-ids (20170127 -> 20170215) pcsc-cyberjack (3.99.5final.SP09 -> 3.99.5final.SP10) python-pip python-py python-pyparsing python-rpm-macros (1.0.git.1486997542.e9fcc29 -> 1.0.git.1487869271.c6e9bfc) python-setuptools (33.1.1 -> 34.2.0) python-six === Details === ==== gstreamer ==== Version update (1.10.3 -> 1.10.4) Subpackages: gstreamer-devel gstreamer-utils libgstreamer-1_0-0 libgstreamer-1_0-0-32bit typelib-1_0-Gst-1_0 - Update to version 1.10.4: + Various fixes for crashes, assertions, deadlocks and memory leaks on fuzzed input files and in other situations (CVE-2017-5847, CVE-2017-5848). + More regression fixes for souphttpsrc redirection tracking. + Various bugfixes for regressions and other problems in the V4L2 plugin. + Fix for 5.1, 6.1 and 7.1 channel layouts for Vorbis. + Bugs fixed: bgo#777998, bgo#778365. - Drop gstreamer-parse-dont-translate-bin-name.patch: Fixed upstream. ==== gstreamer-plugins-bad ==== Version update (1.10.3 -> 1.10.4) Subpackages: libgstadaptivedemux-1_0-0 libgstbadaudio-1_0-0 libgstbadbase-1_0-0 libgstbadvideo-1_0-0 libgstbasecamerabinsrc-1_0-0 libgstcodecparsers-1_0-0 libgstgl-1_0-0 libgstmpegts-1_0-0 libgstphotography-1_0-0 libgsturidownloader-1_0-0 libgstwayland-1_0-0 - Update to version 1.10.4 (CVE-2017-5848): + Bugs fixed: bgo#776612, bgo#777841, bgo#777957, bgo#777979, bgo#778297, bgo#778434, bgo#778452, bgo#778828. - Drop gstreamer-plugins-bad-CVE-2017-5848.patch: Fixed upstream. - Drop pkgconfig(libtimidity) BuildRequires: Not needed as plugin is not ported to 1.0 branch, and even dropped entirely in upcomming 1.12.0 release. ==== gstreamer-plugins-base ==== Version update (1.10.3 -> 1.10.4) Subpackages: libgstallocators-1_0-0 libgstapp-1_0-0 libgstaudio-1_0-0 libgstaudio-1_0-0-32bit libgstfft-1_0-0 libgstpbutils-1_0-0 libgstriff-1_0-0 libgstrtp-1_0-0 libgstrtsp-1_0-0 libgstsdp-1_0-0 libgsttag-1_0-0 libgsttag-1_0-0-32bit libgstvideo-1_0-0 libgstvideo-1_0-0-32bit typelib-1_0-GstAudio-1_0 typelib-1_0-GstPbutils-1_0 typelib-1_0-GstTag-1_0 typelib-1_0-GstVideo-1_0 - Update to version 1.10.4: + Bugs fixed: bgo#778432. - Drop aarch64-no-neon.patch: No longer needed. ==== gstreamer-plugins-good ==== Version update (1.10.3 -> 1.10.4) Subpackages: gstreamer-plugins-good-extra - Update to version 1.10.4: + Bugs fixed: bgo#778341, bgo#775702, bgo#776106, bgo#777399, bgo#777940, bgo#778428, bgo#778437, bgo#778453, bgo#778815, bgo#775564. - Drop gstreamer-plugins-good-qtdemux-sanity-check.patch: Fixed upstream. ==== gstreamer-plugins-ugly ==== Version update (1.10.3 -> 1.10.4) - Update to version 1.10.4 (CVE-2017-5847): + Bugs fixed: bgo#777955. - Drop gstreamer-plugins-ugly-CVE-2017-5847.patch: Fixed upstream. ==== kernel-source ==== Version update (4.10.0 -> 4.10.1) Subpackages: kernel-default kernel-default-devel kernel-devel kernel-docs kernel-macros kernel-syms - Linux 4.10.1 (bnc#1012628). - commit 1ecd5af ==== pciutils-ids ==== Version update (20170127 -> 20170215) - Update to 20170215 ==== pcsc-cyberjack ==== Version update (3.99.5final.SP09 -> 3.99.5final.SP10) - update to 3.99.5 Service Pack 10 * Add support for SHUReader and SISReader * Update to the Reiner-SCT repository rev cyberJack@1305 ==== python-pip ==== - update for singlespec - fix alternative priorities - drop cacert.pem and add pip-8.1.2-shipped-requests-cabundle.patch to ensure function without it - add ca-certificates{,-mozilla} dependency to ensure existence of CA bundle - add fdupes - update to version 9.0.1: * Correct the deprecation message when not specifying a --format so that it uses the correct setting name ("format") rather than the incorrect one ("list_format") (:issue:`4058`). * Fix "pip check" to check all available distributions and not just the local ones (:issue:`4083`). * Fix a crash on non ASCII characters from `lsb_release` (:issue:`4062`). * Fix an SyntaxError in an an used module of a vendored dependency (:issue:`4059`). * Fix UNC paths on Windows (:issue:`4064`). - update to version 9.0.0: * **BACKWARD INCOMPATIBLE** Remove the attempted autodetection of requirement names from URLs, URLs must include a name via "#egg=". * **DEPRECATION** "pip install --egg" have been deprecated and will be removed in the future. This "feature" has a long list of drawbacks which break nearly all of pip's other features in subtle and hard-to-diagnose ways. * **DEPRECATION** "--default-vcs" option (:issue:`4052`). * **WARNING** pip 9 cache can break forward compatibility with previous pip versions if your package repository allows chunked responses (:issue:`4078`). * Add a "pip check" command to check installed packages dependencies (:pull:`3750`). * Add option allowing user to abort pip operation if file/directory exists * Add Appveyor CI * Uninstall existing packages when performing an editable installation of the same packages (:issue:`1548`). * "pip show" is less verbose by default. "--verbose" prints multiline fields. (:pull:`3858`). * Add optional column formatting to "pip list" (:issue:`3651`). * Add "--not-required" option to "pip list", which lists packages that are not dependencies of other packages. * Fix builds on systems with symlinked "/tmp" directory for custom builds such as numpy (:pull:`3701`). * Fix regression in "pip freeze": when there is more than one git remote, priority is given to the remote named "origin" (:pull:`3708`, :issue:`3616`). * Fix crash when calling "pip freeze" with invalid requirement installed (:pull:`3704`, :issue:`3681`). * Allow multiple "--requirement" files in "pip freeze" (:pull:`3703`). * Implementation of pep-503 "data-requires-python". When this field is present for a release link, pip will ignore the download when installing to a Python version that doesn't satisfy the requirement. * "pip wheel" now works on editable packages too (it was only working on editable dependencies before); this allows running "pip wheel" on the result of "pip freeze" in presence of editable requirements (:pull:`3695`, :issue:`3291`). * Load credentials from ".netrc" files (:pull:`3715`, :issue:`3569`). * Add "--platform", "--python-version", "--implementation" and "--abi" parameters to "pip download". These allow utilities and advanced users to gather distributions for interpreters other than the one pip is being run on. (:pull:`3760`) * Skip scanning virtual environments, even when venv/bin/python is a dangling symlink. * Added "pip completion" support for the "fish" shell. * Fix problems on Windows on Python 2 when username or hostname contains non-ASCII characters (:issue:`3463`, :pull:`3970`, :pull:`4000`). * Use "git fetch --tags" to fetch tags in addition to everything else that is normally fetched; this is necessary in case a git requirement url points to a tag or commit that is not on a branch (:pull:`3791`) * Normalize package names before using in "pip show" (:issue:`3976`) * Raise when Requires-Python do not match the running version and add "--ignore-requires-python" option as escape hatch (:pull:`3846`). * Report the correct installed version when performing an upgrade in some corner cases (:issue:`2382`) * Add "-i" shorthand for "--index" flag in "pip search" * Do not optionally load C dependencies in requests (:issue:`1840`, :issue:`2930`, :issue:`3024`) * Strip authentication from SVN url prior to passing it to "svn" (:pull:`3697`, :issue:`3209`). * Also install in platlib with "--target" option (:pull:`3694`, :issue:`3682`). * Restore the ability to use inline comments in requirements files passed to "pip freeze" (:issue:`3680`). - Use pypi.io as Source url. - update to 8.1.2: * Fix a regression on systems with uninitialized locale (:issue:`3575`). * Use environment markers to filter packages before determining if a required wheel is supported. Solves (:issue:`3254`). * Make glibc parsing for `manylinux1` support more robust for the variety of glibc versions found in the wild (:issue:`3588`). * Update environment marker support to fully support PEP 508 and legacy environment markers (:issue:`3624`). * Always use debug logging to the ``--log`` file (:issue:`3351`). * Don't attempt to wrap search results for extremely narrow terminal windows (:issue:`3655`). * Fix regression with non-ascii requirement files on Python 2 and add support for encoding headers in requirement files (:issue:`3548`, :pull:`3547`). - update to 8.1.0: * Implement PEP 513, which adds support for the manylinux1 platform tag, allowing carefully compiled binary wheels to be installed on compatible Linux platforms. * Allow wheels which are not specific to a particular Python interpreter but which are specific to a particular platform (:issue:`3202`). * Fixed an issue where ``call_subprocess`` would crash trying to print debug data on child process failure (:issue:`3521`, :pull:`3522`). * Exclude the wheel package from the `pip freeze` output (like pip and setuptools). :issue:`2989`. * Allow installing modules from a subdirectory of a vcs repository in non-editable mode (:issue:`3217`, :pull:`3466`). * Make pip wheel and pip download work with vcs urls with subdirectory option (:pull:`3466`). * Show classifiers in ``pip show``. * Show PEP376 Installer in ``pip show`` (:issue:`3517`). * Unhide completion command (:pull:`1810`). * Show latest version number in ``pip search`` results (:pull:`1415`). * Decode requirement files according to their BOM if present (:pull:`3485`, :issue:`2865`). * Fix and deprecate package name detection from url path (:issue:`3523` and :pull:`3495`). * Correct the behavior where interpreter specific tags (such as cp34) were being used on later versions of the same interprter instead of only for that specific interpreter (:issue:`3472`). * Fix an issue where pip would erroneously install a 64 bit wheel on a 32 bit Python running on a 64 bit OS X machine. * Do not assume that all git repositories have an origin remote. * Correctly display the line to add to a requirements.txt for an URL based dependency when ``--require-hashes`` is enabled. * Make ``install --quiet`` really quiet. See :issue:`3418`. * Fix a bug when removing packages in python 3: disable INI-style parsing of the entry_point.txt file to allow entry point names with colons (:pull:`3434`) * Normalize generated script files path in RECORD files. (:pull:`3448`) * Fix bug introduced in 8.0.0 where subcommand output was not shown, even when the user specified ``-v`` / ``--verbose``. :issue:`3486`. * Enable python -W with respect to PipDeprecationWarning. (:pull:`3455`) * Upgrade distlib to 0.2.2 (fix :issue:`3467`): * Improved support for Jython when quoting executables in output scripts. * Add a `--all` option to `pip freeze` to include usually skipped package (like pip, setuptools and wheel) to the freeze output. :issue:`1610`. * Stop attempting to trust the system CA trust store because it's extremely common for them to be broken, often in incompatible ways. See :pull:`3416`. * Detect CAPaths in addition to CAFiles on platforms that provide them. * Installing argparse or wsgiref will no longer warn or error - pip will allow the installation even though it may be useless (since the installed thing will be shadowed by the standard library). * Upgrading a distutils installed item that is installed outside of a virtual environment, while inside of a virtual environment will no longer warn or error. * Fix a bug where pre-releases were showing up in ``pip list --outdated`` without the ``--pre`` flag. * Switch the SOABI emulation from using RuntimeWarnings to debug logging. * Rollback the removal of the ability to uninstall distutils installed items until a future date. - Update to 0.8.0 * BACKWARD INCOMPATIBLE Drop support for Python 3.2. * BACKWARD INCOMPATIBLE Remove the ability to find any files other than the ones directly linked from the index or find-links pages. * BACKWARD INCOMPATIBLE Remove the ``--download-cache`` which had been deprecated and no-op'd in 6.0. * BACKWARD INCOMPATIBLE Remove the ``--log-explicit-levels`` which had been deprecated in 6.0. * BACKWARD INCOMPATIBLE Change pip wheel --wheel-dir default path from <cwd>/wheelhouse to <cwd>. * Deprecate and no-op the ``--allow-external``, ``--allow-all-external``, and ``--allow-unverified`` functionality that was added as part of PEP 438. With changes made to the repository protocol made in PEP 470, these options are no longer functional. * Allow ``--trusted-host`` within a requirements file. :issue:`2822`. * Allow ``--process-dependency-links`` within a requirements file. :issue:`1274`. * Allow ``--pre`` within a requirements file. :issue:`1273`. * Allow repository URLs with secure transports to count as trusted. (E.g., "git+ssh" is okay.) :issue:`2811`. * Implement a top-level ``pip download`` command and deprecate ``pip install --download``. * Fixed :issue:`3141`, when uninstalling, look for the case of paths containing symlinked directories (:pull:`3154`) * When installing, if building a wheel fails, clear up the build directory before falling back to a source install. :issue:`3047`. * Fix user directory expansion when ``HOME=/``. Workaround for Python bug http://bugs.python.org/issue14768, reported in :issue:`2996`. * Fixed :issue:`3009`, correct reporting of requirements file line numbers (:pull:`3125`) * Fixed :issue:`1062`, Exception(IOError) for ``pip freeze`` and ``pip list`` commands with subversion >= 1.7. (:pull:`3346`) * Provide a spinner showing that progress is happening when installing or building a package via ``setup.py``. This will alleviate concerns that projects with unusually long build times have with pip appearing to stall. * Include the functionality of ``peep`` into pip, allowing hashes to be baked into a requirements file and ensuring that the packages being downloaded match one of those hashes. This is an additional, opt-in security measure that, when used, removes the need to trust the repository. * Fix a bug causing pip to not select a wheel compiled against an OSX SDK later than what Python itself was compiled against when running on a newer version of OSX. * Add a new ``--prefix`` option for ``pip install`` that supports wheels and sdists. (:pull:`3252`) * Fixed :issue:`2042` regarding wheel building with setup.py using a different encoding than the system. * Drop PasteScript specific egg_info hack. (:pull:`3270`) * Allow combination of pip list options --editable with --outdated/--updtodate. (:issue:`933`) * Gives VCS implementations control over saying whether a project is under their control (:pull:`3258`) * Git detection now works when ``setup.py`` is not at the Git repo root and when ``package_dir`` is used, so ``pip freeze`` works in more cases (:pull:`3258`) * Correctly freeze Git develop packages in presence of the &subdirectory option (:pull:`3258`) * The detection of editable packages now relies on the presence of ``.egg-link`` instead of looking for a VCS, so ``pip list -e`` is more reliable (:pull:`3258`) * Add the ``--prefix`` flag to ``pip install`` which allows specifying a root prefix to use instead of ``sys.prefix`` (:pull:`3252`). * Allow duplicate specifications in the case that only the extras differ, and union all specified extras together (:pull:`3198`). * Fix the detection of the user's current platform on OSX when determining the OSX SDK version (:pull:`3232`). * Prevent the automatically built wheels from mistakenly being used across multiple versions of Python when they may not be correctly configured for that by making the wheel specific to a specific version of Python and specific interpreter (:pull:`3225`). * Emulate the SOABI support in wheels from Python 2.x on Python 2.x as closely as we can with the information available within the interpreter (:pull:`3075`). * Don't roundtrip to the network when git is pinned to a specific commit hash and that hash already exists locally (:pull:`3066`). * Prefer wheels built against a newer SDK to wheels built against an older SDK on OSX (:pull:`3163`). * Show entry points for projects installed via wheel (:pull:`3122`). * Improve message when an unexisting path is passed to --find-links option (:issue:`2968`). * pip freeze does not add the VCS branch/tag name in the #egg=... fragment anymore (:pull:`3312`). * Warn on installation of editable if the provided #egg=name part does not match the metadata produced by `setup.py egg_info`. :issue:`3143`. * Add support for .xz files for python versions supporting them (>= 3.3). :issue:`722`. - update to 7.1.2: * Don't raise an error if pip is not installed when checking for the latest pip version. * Check that the wheel cache directory is writable before we attempt to write cached files to them. * Move the pip version check until *after* any installs have been performed, thus removing the extraenous warning when upgrading pip. * Added debug logging when using a cached wheel. * Respect platlib by default on platforms that have it separated from purlib. * Upgrade packaging to 15.3. * Normalize post-release spellings for rev/r prefixes. * Upgrade distlib to 0.2.1. * Updated launchers to decode shebangs using UTF-8. This allows non-ASCII pathnames to be correctly handled. * Ensured that the executable written to shebangs is normcased. * Changed ScriptMaker to work better under Jython. * Upgrade ipaddress to 1.0.13. * Allow constraining versions globally without having to know exactly what will be installed by the pip command. :issue:`2731`. * Accept --no-binary and --only-binary via pip.conf. :issue:`2867`. * Allow ``--allow-all-external`` within a requirements file. * Fixed an issue where ``--user`` could not be used when ``--prefix`` was used in a distutils configuration file. * Fixed an issue where the SOABI tags were not correctly being generated on Python 3.5. * Fixed an issue where we were advising windows users to upgrade by directly executing pip, when that would always fail on Windows. * Allow ``~`` to be expanded within a cache directory in all situations. * Fixed a regression where ``--no-cache-dir`` would raise an exception, fixes :issue:`2855`. * **BACKWARD INCOMPATIBLE** Revert the change (released in v7.0.0) that required quoting in requirements files around specifiers containing environment markers. (:pull:`2841`) * **BACKWARD INCOMPATIBLE** Revert the accidental introduction of support for options interleaved with requirements, version specifiers etc in ``requirements`` files. (:pull:`2841`) * Expand ``~`` in the cache directory when caching wheels, fixes :issue:`2816`. * Use ``python -m pip`` instead of ``pip`` when recommending an upgrade command to Windows users. * Don't build and cache wheels for non-editable installations from VCSs. * Allow ``--allow-all-external`` inside of a requirements.txt file, fixing a regression in 7.0. * **BACKWARD INCOMPATIBLE** Removed the deprecated ``--mirror``, ``--use-mirrors``, and ``-M`` options. * **BACKWARD INCOMPATIBLE** Removed the deprecated ``zip`` and ``unzip`` commands. * **BACKWARD INCOMPATIBLE** Removed the deprecated ``--no-install`` and ``--no-download`` options. * **BACKWARD INCOMPATIBLE** No longer implicitly support an insecure origin origin, and instead require insecure origins be explicitly trusted with the ``--trusted-host`` option. * **BACKWARD INCOMPATIBLE** Removed the deprecated link scraping that attempted to parse HTML comments for a specially formatted comment. * **BACKWARD INCOMPATIBLE** Requirements in requirements files containing markers must now be quoted due to parser changes from (:pull:`2697`) and (:pull:`2725`). For example, use ``"SomeProject; python_version < '2.7'"``, not simply ``SomeProject; python_version < '2.7'`` * Ignores bz2 archives if Python wasn't compiled with bz2 support. Fixes :issue:`497` * Support ``--install-option`` and ``--global-option`` per requirement in requirement files (:pull:`2537`) * Build Wheels prior to installing from sdist, caching them in the pip cache directory to speed up subsequent installs. (:pull:`2618`) * Allow fine grained control over the use of wheels and source builds. (:pull:`2699`) * ``--no-use-wheel`` and ``--use-wheel`` are deprecated in favour of new options ``--no-binary`` and ``--only-binary``. The equivalent of ``--no-use-wheel`` is ``--no-binary=:all:``. (:pull:`2699`) * The use of ``--install-option``, ``--global-option`` or ``--build-option`` disable the use of wheels, and the autobuilding of wheels. (:pull:`2711`) Fixes :issue:`2677` * Improve logging when a requirement marker doesn't match your environment (:pull:`2735`) * Removed the temporary modifications (that began in pip v1.4 when distribute and setuptools merged) that allowed distribute to be considered a conflict to setuptools. ``pip install -U setuptools`` will no longer upgrade "distribute" to "setuptools". Instead, use ``pip install -U distribute`` (:pull:`2767`). * Only display a warning to upgrade pip when the newest version is a final release and it is not a post release of the version we already have installed (:pull:`2766`). * Display a warning when attempting to access a repository that uses HTTPS when we don't have Python compiled with SSL support (:pull:`2761`). * Allowing using extras when installing from a file path without requiring the use of an editable (:pull:`2785`). * Fix an infinite loop when the cache directory is stored on a file system which does not support hard links (:pull:`2796`). * Remove the implicit debug log that was written on every invocation, instead users will need to use ``--log`` if they wish to have one (:pull:`2798`). * No longer ignore dependencies which have been added to the standard library, instead continue to install them. * Fixes :issue:`2502`. Upgrades were failing when no potential links were found for dependencies other than the current installation. (:pull:`2538`) * Use a smoother progress bar when the terminal is capable of handling it, otherwise fallback to the original ASCII based progress bar. * Display much less output when `pip install` succeeds, because on success, users probably don't care about all the nitty gritty details of compiling and installing. When `pip install` fails, display the failed install output once instead of twice, because once is enough. (:pull:`2487`) * Upgrade the bundled copy of requests to 2.6.0, fixing CVE-2015-2296. * Display format of latest package when using ``pip list --outdated``. (:pull:`2475`) * Don't use pywin32 as ctypes should always be available on Windows, using pywin32 prevented uninstallation of pywin32 on Windows. (:pull:`2467`) * Normalize the ``--wheel-dir`` option, expanding out constructs such as ``~`` when used (:pull:`2441`). * Display a warning when an undefined extra has been requested. (:pull:`2142`) * Speed up installing a directory in certain cases by creating a sdist instead of copying the entire directory. (:pull:`2535`) * Don't follow symlinks when uninstalling files (:pull:`2552`) * Upgrade the bundled copy of cachecontrol from 0.11.1 to 0.11.2. Fixes :issue:`2481` (:pull:`2595`) * Attempt to more smartly choose the order of installation to try and install dependencies before the projects that depend on them. (:pull:`2616`) * Skip trying to install libraries which are part of the standard library. (:pull:`2636`, :pull:`2602`) * Support arch specific wheels that are not tied to a specific Python ABI. (:pull:`2561`) * Output warnings and errors to stderr instead of stdout. (:pull:`2543`) * Adjust the cache dir file checks to only check ownership if the effective user is root. (:pull:`2396`) * Install headers into a per project name directory instead of all of them into the root directory when inside of a virtual environment. (:pull:`2421`) - added coreutils are requirement, to work around SLE12 error in Studio - Make tests conditional to avoid dependency loop. - update to 6.0.8: * Fix an issue where the ``--download`` flag would cause pip to no longer use randomized build directories. * Fix an issue where pip did not properly unquote quoted URLs which contain characters like PEP 440's epoch separator (``!``). * Fix an issue where distutils installed projects were not actually uninstalled and deprecate attempting to uninstall them altogether. * Retry deleting directories incase a process like an antivirus is holding the directory open temporarily. * Fix an issue where pip would hide the cursor on Windows but would not reshow it. * Fix a regression where Numpy requires a build path without symlinks to properly build. * Fix a broken log message when running ``pip wheel`` without a requirement. * Don't mask network errors while downloading the file as a hash failure. * Properly create the state file for the pip version check so it only happens once a week. * Fix an issue where switching between Python 3 and Python 2 would evict cached items. * Fix a regression where pip would be unable to successfully uninstall a project without a normalized version. * Continue the regression fix from 6.0.5 which was not a complete fix. * Fix a regression with 6.0.4 under Windows where most commands would raise an exception due to Windows not having the ``os.geteuid()`` function. * Fix an issue where ANSI escape codes would be used on Windows even though the Windows shell does not support them, causing odd characters to appear with the progress bar. * Fix an issue where using -v would cause an exception saying ``TypeError: not all arguments converted during string formatting``. * Fix an issue where using -v with dependency links would cause an exception saying ``TypeError: 'InstallationCandidate' object is not iterable``. * Fix an issue where upgrading distribute would cause an exception saying ``TypeError: expected string or buffer``. * Show a warning and disable the use of the cache directory when the cache directory is not owned by the current use, commonly caused by using ``sudo`` without the ``-H`` flag. * Update PEP 440 support to handle the latest changes to PEP 440, particularly the changes to ``>V`` and ``<V`` so that they no longer imply ``!=V.*``. * Document the default cache directories for each operating system. * Create the cache directory when the pip version check needs to save to it instead of silently logging an error. * Fix a regression where the ``-q`` flag would not properly suppress the display of the progress bars. * Fix an issue where the implicit version check new in pip 6.0 could cause pip to block for up to 75 seconds if PyPI was not accessible. * Make ``--no-index`` imply ``--disable-pip-version-check``. * Fix an issue where the output saying that a package was installed would report the old version instead of the new version during an upgrade. * Fix left over merge conflict markers in the documentation. * Document the backwards incompatible PEP 440 change in the 6.0.0 changelog. * Fix executable file permissions for Wheel files when using the distutils scripts option. * Fix a confusing error message when an exceptions was raised at certain points in pip's execution. * Fix the missing list of versions when a version cannot be found that matches the specifiers. * Add a warning about the possibly problematic use of > when the given specifier doesn't match anything. * Fix an issue where installing from a directory would not copy over certain directories which were being excluded, however some build systems rely on them. * **PROCESS** Version numbers are now simply ``X.Y`` where the leading ``1`` has been dropped. * **BACKWARD INCOMPATIBLE** Dropped support for Python 3.1. * **BACKWARD INCOMPATIBLE** Removed the bundle support which was deprecated in 1.4. (:pull:`1806`) * **BACKWARD INCOMPATIBLE** File lists generated by `pip show -f` are now rooted at the location reported by show, rather than one (unstated) directory lower. (:pull:`1933`) * **BACKWARD INCOMPATIBLE** The ability to install files over the FTP protocol was accidently lost in pip 1.5 and it has now been decided to not restore that ability. * **BACKWARD INCOMPATIBLE** PEP 440 is now fully implemented, this means that in some cases versions will sort differently or version specifiers will be interpreted differently than previously. The common cases should all function similarly to before. * **DEPRECATION** ``pip install --download-cache`` and ``pip wheel --download-cache`` command line flags have been deprecated and the functionality removed. Since pip now automatically configures and uses it's internal HTTP cache which supplants the ``--download-cache`` the existing options have been made non functional but will still be accepted until their removal in pip v8.0. For more information please see https://pip.pypa.io/en/latest/reference/pip_install.html#caching * **DEPRECATION** ``pip install --build`` and ``pip install --no-clean`` are now * NOT* deprecated. This reverses the deprecation that occurred in v1.5.3. See :issue:`906` for discussion. * **DEPRECATION** Implicitly accessing URLs which point to an origin which is not a secure origin, instead requiring an opt-in for each host using the new ``--trusted-host`` flag (``pip install --trusted-host example.com foo``). * Allow the new ``--trusted-host`` flag to also disable TLS verification for a particular hostname. * Added a ``--user`` flag to ``pip freeze`` and ``pip list`` to check the user site directory only. * Fixed :issue:`1873`. Silence byte compile errors when installation succeed. * Added a virtualenv-specific configuration file. (:pull:`1364`) * Added site-wide configuation files. (:pull:`1978`) * Added an automatic check to warn if there is an updated version of pip available (:pull:`2049`). * `wsgiref` and `argparse` (for >py26) are now excluded from `pip list` and `pip freeze` (:pull:`1606`, :pull:`1369`) * Fixed :issue:`1424`. Add ``--client-cert`` option for SSL client certificates. * Fixed :issue:`1484`. `pip show --files` was broken for wheel installs. (:pull:`35`) * Fixed :issue:`1641`. install_lib should take precedence when reading distutils nfig. (:pull:`1642`) * Send `Accept-Encoding: identity` when downloading files in an attempt to convince some servers who double compress the downloaded file to stop doing so. (:pull:`1688`) * Fixed :issue:`1559`. Stop breaking when given pip commands in uppercase (:pull:725`) * Fixed :issue:`1618`. Pip no longer adds duplicate logging consumers, so it won't create duplicate output when being called multiple times. (:pull:`1723`) * Fixed :issue:`1769`. `pip wheel` now returns an error code if any wheels fail to build. * Fixed :issue:`1775`. `pip wheel` wasn't building wheels for dependencies of editable requirements. * Allow the use of ``--no-use-wheel`` within a requirements file. (:pull:`1859`) * Fixed :issue:`1680`. Attempt to locate system TLS certificates to use instead of the included CA Bundle if possible. (:pull:`1866`) * Fixed :issue:`1319`. Allow use of Zip64 extension in Wheels and other zip files. (:pull:`1868`) * Fixed :issue:`1101`. Properly handle an index or --find-links target which has a <base> without a href attribute. (:pull:`1869`) * Fixed :issue:`1885`. Properly handle extras when a project is installed via Wheel. (:pull:`1896`) * Fixed :issue:`1180`. Added support to respect proxies in ``pip search``. It also fixes :issue:`932` and :issue:`1104`. (:pull:`1902`) * Fixed :issue:`798` and :issue:`1060`. `pip install --download` works with vcs lks. (:pull:`1926`) * Fixed :issue:`1456`. Disabled warning about insecure index host when using locaost. Based off of Guy Rozendorn's work in :pull:`1718`. (:pull:`1967`) * Allow the use of OS standard user configuration files instead of ones simply based around ``$HOME``. (:pull:`2021`) * Fixed :issue:`1825`. When installing directly from wheel paths or urls, previous versions were not uninstalled. This also fixes :issue:`804` specifically for the case of wheel archives. (:pull:`1838`) * Fixed :issue:`2075`, detect the location of the ``.egg-info`` directory by looking for any file located inside of it instead of relying on the record file listing a directory. (:pull:`2076`) * Fixed :issue:`1964`, :issue:`1935`, :issue:`676`, Use a randomized and secure default build directory when possible. (:pull:`2122`, CVE-2014-8991) * Fixed :issue:`1433`. Support environment markers in requirements.txt files. (pull:`2134`) * Automatically retry failed HTTP requests by default. (:pull:`1444`, pull:`2147` * Fixed :issue:`1100` - Handle HTML Encoding better using a method that is more similar to how browsers handle it. (:pull:`1874`) * Reduce the verbosity of the pip command by default. (:pull:`2175`, :pull:`2177`, :pull:`2178`) * Fixed :issue:`2031` - Respect sys.executable on OSX when installing from Wheels. * Display the entire URL of the file that is being downloaded when downloading from a non PyPI repository (:pull:`2183`). * Support setuptools style environment markers in a source distribution (:pull:`2153`). * Upgrade requests to 2.3.0 to fix an issue with proxies on Python 3.4.1 (:pull:`1821`). * Fixes :issue:`1632`. Uninstall issues on debianized pypy, specifically issues th setuptools upgrades. (:pull:`1743`) * Update documentation to point at https://bootstrap.pypa.io/get-pip.py for bootstrapping pip. * Update docs to point to https://pip.pypa.io/ * Upgrade the bundled projects (distlib==0.1.8, html5lib==1.0b3, six==1.6.1, colorama==0.3.1, setuptools==3.4.4). * Correct deprecation warning for ``pip install --build`` to only notify when the `--build` value is different than the default. * **DEPRECATION** ``pip install --build`` and ``pip install --no-clean`` are now deprecated. See :issue:`906` for discussion. * Fixed :issue:`1112`. Couldn't download directly from wheel paths/urls, and whenheel downloads did occur using requirement specifiers, dependencies weren't downloaded (:pull:`1527`) * Fixed :issue:`1320`. ``pip wheel`` was not downloading wheels that already exisd (PR :issue:`1524`) * Fixed :issue:`1111`. ``pip install --download`` was failing using local ``--find-links`` (:pull:`1524`) * Workaround for Python bug http://bugs.python.org/issue20053 (:pull:`1544`) * Don't pass a unicode __file__ to setup.py on Python 2.x (:pull:`1583`) * Verify that the Wheel version is compatible with this pip (:pull:`1569`) * Upgraded the vendored ``pkg_resources`` and ``_markerlib`` to setuptools 2.1. * Fixed an error that prevented accessing PyPI when pyopenssl, ndg-httpsclient, and pyasn1 are installed * Fixed an issue that caused trailing comments to be incorrectly included as part of the URL in a requirements file * pip now only requires setuptools (any setuptools, not a certain version) when installing distributions from src (i.e. not from wheel). (:pull:`1434`). * `get-pip.py` now installs setuptools, when it's not already installed (:pull:`1475`) * Don't decode downloaded files that have a ``Content-Encoding`` header. (:pull:`1435`) * Fix to correctly parse wheel filenames with single digit versions. (:pull:`1445`) * If `--allow-unverified` is used assume it also means `--allow-external`. (:pull:`1457`) - Adjust BuildRequires for python-virtualenv - fix bashism in pre script - Package /usr/bin/pip2 - Readd argparse requirement for SLE - Update to version 1.5: * **BACKWARD INCOMPATIBLE** pip no longer supports the --use-mirrors, - M, and --mirrors flags. The mirroring support has been removed. In order to use a mirror specify it as the primary index with -i or - -index-url, or as an additional index with --extra-index-url. (Pull #1098, CVE-2013-5123) * **BACKWARD INCOMPATIBLE** pip no longer will scrape insecure external urls by default nor will it install externally hosted files by default. Users may opt into installing externally hosted or insecure files or urls using - -allow-external PROJECT and --allow-unverified PROJECT. (Pull #1055) * **BACKWARD INCOMPATIBLE** pip no longer respects dependency links by default. Users may opt into respecting them again using --process-dependency-links. * **DEPRECATION** pip install --no-install and pip install - -no-download are now formally deprecated. See Issue #906 for discussion on possible alternatives, or lack thereof, in future releases. * **DEPRECATION** pip zip and pip unzip are now formally deprecated. * pip will now install Mac OSX platform wheels from PyPI. (Pull #1278) * pip now generates the appropriate platform-specific console scripts when installing wheels. (Pull #1251) * Pip now confirms a wheel is supported when installing directly from a path or url. (Pull #1315) * Fixed #1097, --ignore-installed now behaves again as designed, after it was unintentionally broke in v0.8.3 when fixing Issue #14 (Pull #1352). * Fixed a bug where global scripts were being removed when uninstalling --user installed packages (Pull #1353). * Fixed #1163, --user wasn't being respected when installing scripts from wheels (Pull #1176). * Fixed #1150, we now assume '_' means '-' in versions from wheel filenames (Pull #1158). * Fixed #219, error when using --log with a failed install (Pull #1205). * Fixed #1131, logging was buffered and choppy in Python 3. * Fixed #70, --timeout was being ignored (Pull #1202). * Fixed #772, error when setting PIP_EXISTS_ACTION (Pull #1201). * Added colors to the logging output in order to draw attention to important warnings and errors. (Pull #1109) * Added warnings when using an insecure index, find-link, or dependency link. (Pull #1121) * Added support for installing packages from a subdirectory using the subdirectory editable option. ( Pull #1082 ) * Fixed #1192. "TypeError: bad operand type for unary" in some cases when installing wheels using --find-links (Pull #1218). * Fixed #1133 and #317. Archive contents are now written based on system defaults and umask (i.e. permissions are not preserved), except that regular files with any execute permissions have the equivalent of "chmod +x" applied after being written (Pull #1146). * PreviousBuildDirError now returns a non-zero exit code and prevents the previous build dir from being cleaned in all cases (Pull #1162). * Renamed --allow-insecure to --allow-unverified, however the old name will continue to work for a period of time (Pull #1257). * Fixed #1006, error when installing local projects with symlinks in Python 3. (Pull #1311) * The previously hidden --log-file otion, is now shown as a general option. (Pull #1316) - Rename binary from pip-2.7 to pip2.7 to match upstream - Run testsuite - Fix alternative link in buildroot - Fixed missing Requires for python-xml (bnc#842516) - update to 1.4.1: * Fixed issues with installing from pybundle files (Pull #1116). * Fixed error when sysconfig module throws an exception (Pull #1095). * Don't ignore already installed pre-releases (Pull #1076). * Fixes related to upgrading setuptools (Pull #1092). * Fixes so that --download works with wheel archives (Pull #1113). * Fixes related to recognizing and cleaning global build dirs (Pull #1080) - Update to version 1.4: * **BACKWARD INCOMPATIBLE** pip now only installs stable versions by default, and offers a new --pre option to also find pre-release and development versions. (Pull #834) * **BACKWARD INCOMPATIBLE** Dropped support for Python 2.5. The minimum supported Python version for pip 1.4 is Python 2.6. * Added support for installing and building wheel archives. Thanks Daniel Holth, Marcus Smith, Paul Moore, and Michele Lacchia (Pull #845) * Applied security patch to pip's ssl support related to certificate DNS wildcard matching (http://bugs.python.org/issue17980). * To satisfy pip's setuptools requirement, pip now recommends setuptools>=0.8, not distribute. setuptools and distribute are now merged into one project called 'setuptools'. (Pull #1003) * pip will now warn when installing a file that is either hosted externally to the index or cannot be verified with a hash. In the future pip will default to not installing them and will require the flags --allow-external NAME, and - -allow-insecure NAME respectively. (Pull #985) * If an already-downloaded or cached file has a bad hash, re-download it rather than erroring out. (Issue #963). * pip bundle and support for installing from pybundle files is now considered deprecated and will be removed in pip v1.5. * Fixed a number of issues (#413, #709, #634, #602, and #939) related to cleaning up and not reusing build directories. (Pull #865, #948) * Added a User Agent so that pip is identifiable in logs. (Pull #901) * Added ssl and --user support to get-pip.py. Thanks Gabriel de Perthuis. (Pull #895) * Fixed the proxy support, which was broken in pip 1.3.x (Pull #840) * Fixed issue #32 - pip fails when server does not send content-type header. Thanks Hugo Lopes Tavares and Kelsey Hightower (Pull #872). * "Vendorized" distlib as pip.vendor.distlib (https://distlib.readthedocs.org/). * Fixed git VCS backend with git 1.8.3. (Pull #967) - Require setuptools instead of distribute again (merged upstream) - Use update-alternatives for parallel-installability with Python3 - Update to 1.3.1: * Fixed a major backward incompatible change of parsing URLs to externally hosted packages that got accidentily included in 1.3. - Aditional changes from 1.3: * SSL Cert Verification; Make https the default for PyPI access. Thanks James Cleveland, Giovanni Bajo, Marcus Smith and many others (Pull #789). * Added "pip list" for listing installed packages and the latest version available. Thanks Rafael Caricio, Miguel Araujo, Dmitry Gladkov (Pull #752) * Fixed security issues with pip's use of temp build directories. Thanks David (d1b) and Thomas Guttler. (Pull #780) * Improvements to sphinx docs and cli help. (Pull #773) * Fixed issue #707, dealing with OS X temp dir handling, which was causing global NumPy installs to fail. (Pull #768) * Split help output into general vs command-specific option groups. Thanks Georgi Valkov. (Pull #744; Pull #721 contains preceding refactor) * Fixed dependency resolution when installing from archives with uppercase project names. (Pull #724) * Fixed problem where re-installs always occurred when using file:// find-links. (Pulls #683/#702) * "pip install -v" now shows the full download url, not just the archive name. Thanks Marc Abramowitz (Pull #687) * Fix to prevent unnecessary PyPI redirects. Thanks Alex Gronholm (Pull #695) * Fixed issue #670 - install failure under Python 3 when the same version of a package is found under 2 different URLs. Thanks Paul Moore (Pull #671) * Fix git submodule recursive updates. Thanks Roey Berman. (Pulls #674) * Explicitly ignore rel='download' links while looking for html pages. Thanks Maxime R. (Pull #677) * --user/--upgrade install options now work together. Thanks 'eevee' for discovering the problem. (Pull #705) * Added check in install --download to prevent re-downloading if the target file already exists. Thanks Andrey Bulgakov. (Pull #669) * Added support for bare paths (including relative paths) as argument to --find-links. Thanks Paul Moore for draft patch. * Added support for --no-index in requirements files. * Added "pip show" command to get information about an installed package. Fixes #131. Thanks Kelsey Hightower and Rafael Caricio. * Added --root option for "pip install" to specify root directory. Behaves like the same option in distutils but also plays nice with pip's egg-info. Thanks Przemek Wrzos. (Issue #253 / Pull #693) - Update to 1.2.1: * Fixed a regression introduced in 1.2 about raising an exception when not finding any files to uninstall in the current environment. - Changes from 1.2: * **Dropped support for Python 2.4** The minimum supported Python version is now Python 2.5. * Fixed issue #605 - pypi mirror support broken on some DNS responses. * Fixed issue #355 - pip uninstall removes files it didn't install. * Fixed issues #493, #494, #440, and #573 related to improving support for the user installation scheme. * Write failure log to temp file if default location is not writable. * Pull in submodules for git editable checkouts. Fixes #289 and #421. * Use a temporary directory as the default build location outside of a virtualenv. Fixes issues #339 and #381. * Added support for specifying extras with local editables. * Added --egg flag to request egg-style rather than flat installation. Refs issue #3. * Fixed issue #510 - prevent e.g. gmpy2-2.0.tar.gz from matching a request to pip install gmpy; sdist filename must begin with full project name followed by a dash. * Fixed issue #504 - allow package URLS to have querystrings. * Fixed issue #58 - pip freeze now falls back to non-editable format rather than blowing up if it can't determine the origin repository of an editable. * Added a __main__.py file to enable python -m pip on Python versions that support it. * Fixed issue #487 - upgrade from VCS url of project that does exist on index. * Fixed issue #486 - fix upgrade from VCS url of project with no distribution on index. * Fixed issue #427 - clearer error message on a malformed VCS url. * Added support for using any of the built in guaranteed algorithms in hashlib as a checksum hash. * Fixed issue #321 - Raise an exception if current working directory can't be found or accessed. * Fixed issue #82 - Removed special casing of the user directory and use the Python default instead. * Fixed #436 - Only warn about version conflicts if there is actually one. This re-enables using ==dev in requirements files. * Moved tests to be run on Travis CI: http://travis-ci.org/pypa/pip * Added a better help formatter. - Remove %check section: there is no test directory so it won't get executed. - Fix Python 3 build. - Fix building python 3 package on openSUSE 11.4 x86_64 - Add python 3 package - Update to version 1.1: * Fixed issue #326 - don't crash when a package's setup.py emits UTF-8 and then fails. * Added --target option for installing directly to arbitrary directory. * Added support for authentication with Subversion repositories. * Fixed issue #315 - --download now downloads dependencies as well. * Errors from subprocesses will display the current working directory. * Fixed issue #369 - compatibility with Subversion 1.7. * Fixed issue #57 - ignore py2app-generated OS X mpkg zip files in finder. * Fixed issue #182 - log to ~/Library/Logs/ by default on OS X framework installs. * Fixed issue #310 - understand version tags without minor version ("py3") in sdist filenames. * Fixed issue #7 - Pip now supports optionally installing setuptools "extras" dependencies; e.g. "pip install Paste[openid]". * Fixed issue #391 - freeze no longer borks on requirements file * Fixed issue #288 - handle symlinks properly. * Fixed issue #49 - pip install -U no longer reinstalls the same versions of packages. * Removed -E option and PIP_RESPECT_VIRTUALENV; both use a restart-in-venv mechanism that's broken, and neither one is useful since every virtualenv now has pip inside it. * Fixed issue #366 - pip throws IndexError when it calls scraped_rel_links * Fixed issue #22 - pip search should set and return a userful shell status code * Fixed issue #351 and #365 - added global --exists-action command line option to easier script file exists conflicts, e.g. from editable requirements from VCS that have a changed repo URL. - Cleaned up changes file - Run testsuite - Only SLES-11 needs %python_sitelib and not noarch - Don't repackage upstream tarball - Require python-distribute instead of setuptools - Package documentation - Fix non-executable script rpmlint warning - Update to 1.0.2 * Fixed docs issues. * Fixed issue #295 - Reinstall a package when using the install -I option * Fixed issue #283 - Finds a Git tag pointing to same commit as origin/master * Fixed issue #279 - Use absolute path for path to docs in setup.py * Fixed issue #320 - Correctly handle exceptions on Python3. * Fixed issue #314 - Correctly parse --editable lines in requirements files - Updates from 1.0.1 * Start to use git-flow. * Fixed issue #274 - find_command should not raise AttributeError * Fixed issue #273 - respect Content-Disposition header. * Fixed issue #233 - pathext handling on Windows. * Fixed issue #252 - svn+svn protocol. * Fixed issue #44 - multiple CLI searches. * Fixed issue #266 - current working directory when running setup.py clean. - Updates from 1.0 * Added Python 3 support! Huge thanks to Vinay Sajip, Vitaly Babiy, Kelsey Hightower, and Alex Gronholm, among others. * Download progress only shown on a real TTY. * Fixed finding of VCS binaries to not be fooled by same-named directories. * Fixed uninstall of packages from system Python for users of Debian/Ubuntu python-setuptools package (workaround until fixed in Debian and Ubuntu). * Added get-pip.py https://raw.github.com/pypa/pip/master/contrib/get-pip.py - Updates from 0.8.3 * Fixed issue #14 - No uninstall-on-upgrade with URL package. * Fixed issue #163 - Egg name not properly resolved. * Fixed issue #178 - Non-alphabetical installation of requirements. * Fixed issue #199 - Documentation mentions --index instead of --index-url. * Fixed issue #204 - rmtree undefined in mercurial.py. * Fixed bug in Git vcs backend that would break during reinstallation. * Fixed bug in Mercurial vcs backend related to pip freeze and branch/tag resolution. * Fixed bug in version string parsing related to the suffix "-dev". - Regenerated spec file: * added 'Requires: python-setuptools' - Update to 0.8.2: * Avoid redundant unpacking of bundles (from pwaller) * Fixed issue #32, #150, #161 - Fixed checking out the correct tag/branch/commit when updating an editable Git requirement. * Fixed issue #49 - Added ability to install version control requirements without making them editable, e.g.: pip install hg+http://bitbucket.org/ianb/pip/ * Fixed issue #175 - Correctly locate build and source directory on Mac OS X. * Added git+https:// scheme to Git VCS backend. - Update to 0.8.1: - Added global ?user flag as shortcut for ?install-option=??user?. From Ronny Pfannschmidt. - Added support for PyPI mirrors as defined in PEP 381, from Jannis Leidel. - Fixed issue #138 - Git revisions ignored. - Fixed issue #95 - Initial editable install of github package from a tag fails. - Fixed issue #107 - Can?t install if a directory in cwd has the same name as the package you?re installing. - Fixed issue #39 - ?install-option=??prefix=~/.local? ignored with -e. - Aditional changes from 0.8: - Track which build/ directories pip creates, never remove directories it doesn?t create. From Hugo Lopes Tavares. - Pip now accepts file:// index URLs. - Various cleanup to make test-running more consistent and less fragile. - Real Windows support (with passing tests). - pip-2.7 etc. scripts are created (Python-version specific scripts) - contrib/build-standalone script creates a runnable .zip form of pip, from Jannis Leidel - Editable git repos are updated when reinstalled - Fix problem with --editable when multiple .egg-info/ directories are found. - A number of VCS-related fixes for pip freeze, from Hugo Lopes Tavares. - Significant test framework changes, from Hugo Lopes Tavares. - Bzip2 source file. - Fix error in expression so that package builds (was failing on all targets) - Update to 0.7.2; - Building as noarch for openSUSE >= 11.2; - Spec file cleaned with spec-cleaner. ==== python-py ==== - update to 1.4.32 - fix issue70: added ability to copy all stat info in py.path.local.copy. - make TerminalWriter.fullwidth a property. This results in the correct value when the terminal gets resized. - update supported html tags to include recent additions. Thanks Denis Afonso for the PR. - Remove internal code in ``Source.compile`` meant to support earlier Python 3 versions that produced the side effect of leaving ``None`` in ``sys.modules`` when called (see pytest-dev/pytest#2103). Thanks Bruno Oliveira for the PR. - update for singlespec - Update download Url - corrected homepage URL - HTTPS URL for pypi source link - update to version 1.4.31 * fix local().copy(dest, mode=True) to also work with unicode. * pass better error message with svn EEXIST paths - update to version 1.4.30: * fix issue68 an assert with a multiline list comprehension was not reported correctly. Thanks Henrik Heibuerger. - changes from version 1.4.29: * fix issue55: revert a change to the statement finding algorithm which is used by pytest for generating tracebacks. Thanks Daniel Hahler for initial analysis. * fix pytest issue254 for when traceback rendering can?t find valid source code. Thanks Ionel Cristian Maries. - Split documentation into separate package to avoid build loop - update to 1.4.28: - fix issue64 -- dirpath regression when "abs=True" is passed. - fix issue59: point to new repo site - allow a new ensuresyspath="append" mode for py.path.local.pyimport() so that a neccessary import path is appended instead of prepended to sys.path - strike undocumented, untested argument to py.path.local.pypkgpath - speed up py.path.local.dirpath by a factor of 10 - update to version 1.4.26: - avoid calling normpath twice in py.path.local - py.builtin._reraise properly reraises under Python3 now. - fix issue53 - remove module index, thanks jenisys. - allow posix path separators when "fnmatch" is called. Thanks Christian Long for the complete PR. - update to 1.4.25: - fix issue52: vaguely fix py25 compat of py.path.local (it's not officially supported), also fix docs - fix pytest issue 589: when checking if we have a recursion error check for the specific "maximum recursion depth" text of the exception. - update to 1.4.24: - Fix retrieving source when an else: line has an other statement on the same line. - add localpath read_text/write_text/read_bytes/write_bytes methods as shortcuts and clearer bytes/text interfaces for read/write. Adapted from a PR from Paul Moore. - update to 1.4.23: - use newer apipkg version which makes attribute access on alias modules resolve to None rather than an ImportError. This helps with code that uses inspect.getframeinfo() on py34 which causes a complete walk on sys.modules thus triggering the alias module to resolve and blowing up with ImportError. The negative side is that something like "py.test.X" will now result in None instead of "importerror: pytest" if pytest is not installed. But you shouldn't import "py.test" anyway anymore. - adapt one svn test to only check for any exception instead of specific ones because different svn versions cause different errors and we don't care. - Update to 1.4.22 - refactor class-level registry on ForkedFunc child start/finish event to become instance based (i.e. passed into the constructor) - Update to 1.4.21 - ForkedFunc now has class-level register_on_start/on_exit() methods to allow adding information in the boxed process. Thanks Marc Schlaich. - ForkedFunc in the child opens in "auto-flush" mode for stdout/stderr so that when a subprocess dies you can see its output even if it didn't flush itself. - refactor traceback generation in light of pytest issue 364 (shortening tracebacks). you can now set a new traceback style on a per-entry basis such that a caller can force entries to be isplayed as short or long entries. - win32: py.path.local.sysfind(name) will preferrably return files with extensions so that if "X" and "X.bat" or "X.exe" is on the PATH, one of the latter two will be returned. - Removed unnessisary dependency on python-setuptools especially as this causes a conflict with SLE11sp3 - Update to version 1.4.20: + ignore unicode decode errors in xmlescape. Thanks Anatoly Bubenkoff. + on python2 modify traceback.format_exception_only to match python3 behaviour, namely trying to print unicode for Exception instances + use a safer way for serializing exception reports (helps to fix pytest issue413) - Drop %check section, we never ran tests. That would need python-pytest and introduce a cycle - update to 1.4.19: - merge in apipkg fixes - some micro-optimizations in py/_code/code.py for speeding up pytest runs. Thanks Alex Gaynor for initiative. - check PY_COLORS=1 or PY_COLORS=0 to force coloring/not-coloring for py.io.TerminalWriter() independently from capabilities of the output file. Thanks Marc Abramowitz for the PR. - some fixes to unicode handling in assertion handling. Thanks for the PR to Floris Bruynooghe. (This helps to fix pytest issue 319). - depend on setuptools presence, remove distribute_setup - Update to version 1.4.18 + introduce path.ensure_dir() as a synonym for ensure(..., dir=1) + some unicode/python3 related fixes wrt to path manipulations (if you start passing unicode particular in py2 you might still get problems, though) - Changes from 1.4.17 + make py.io.TerminalWriter() prefer colorama if it is available and avoid empty lines when separator-lines are printed by being defensive and reducing the working terminalwidth by 1 + introduce optional "expanduser" argument to py.path.local to that local("~", expanduser=True) gives the home directory of "user". - Changes from 1.4.16 + fix issue35 - define __gt__ ordering between a local path and strings + fix issue36 - make chdir() work even if os.getcwd() fails. + add path.exists/isdir/isfile/islink shortcuts + introduce local path.as_cwd() context manager. + introduce p.write(ensure=1) and p.open(ensure=1) where ensure triggers creation of neccessary parent dirs. - Require python-setuptools instead of distribute (upstreams merged) - update to 1.4.15: - majorly speed up some common calling patterns with LocalPath.listdir()/join/check/stat functions considerably. - fix an edge case with fnmatch where a glob style pattern appeared in an absolute path. - update to 1.4.14: - fix dupfile to work with files that don't carry a mode. - fix getting statementrange/compiling a file ending in a comment line without newline (on python2.5) - for local paths you can pass "mode=True" to a copy() in order to copy permission bits (underlying mechanism is using shutil.copymode) - add paths arguments to py.path.local.sysfind to restrict search to the diretories in the path. - add isdir/isfile/islink to path.stat() objects allowing to perform multiple checks without calling out multiple times - drop py.path.local.__new__ in favour of a simpler __init__ - iniconfig: allow "name:value" settings in config files, no space after "name" required - fix issue 27 - NameError in unlikely untested case of saferepr - Initial python3 support - Update to 1.4.12 version: * fix python2.4 support - for pre-AST interpreters re-introduce old way to find statements in exceptions (closes pytest issue 209) * add tox.ini to distribution * fix issue23 - print *,** args information in tracebacks, thanks Manuel Jacob - Update to version 1.4.9: + fix bug of path.visit() which would not recognize glob-style patterns for the "rec" recursion argument + changed iniconfig parsing to better conform, now the chars ";" and "#" only mark a comment at the stripped start of a line + include recent apipkg-1.2 + change internal terminalwriter.line/reline logic to more nicely support file spinners - Changes from version 1.4.8: + fix issue 13 - correct handling of the tag name object in xmlgen + fix issue 14 - support raw attribute values in xmlgen + fix windows terminalwriter printing/re-line problem + update distribute_setup.py to 0.6.27 - Update to version 1.4.7: * fix issue11 - own test failure with python3.3 / Thanks Benjamin Peterson * help fix pytest issue 102 - Changes from version 1.4.6: * help to fix pytest issue99: unify output of ExceptionInfo.getrepr(style="native") with ...(style="long") * fix issue7: source.getstatementrange() now raises proper error if no valid statement can be found * fix issue8: fix code and tests of svnurl/svnwc to work on subversion 1.7 - note that path.status(updates=1) will not properly work svn-17's status - -xml output is broken. * make source.getstatementrange() more resilent about non-python code frames (as seen from jnja2) * make trackeback recursion detection more resilent about the eval magic of a decorator library * iniconfig: add support for ; as comment starter * properly handle lists in xmlgen on python3 * normalize py.code.getfslineno(obj) to always return a (string, int) tuple defaulting to ("", -1) respectively if no source code can be found for obj. - Changes from version 1.4.5: * improve some unicode handling in terminalwriter and capturing - Spec file cleanup: * BuildRequire python-distribute instead of setuptools * Simplified macro usage * Removed outdated %clean section - Initial version ==== python-pyparsing ==== - update for single-spec - desetuptoolize.patch : switch from setuptools to distutils.core for installation, as this is now a setuptools dependency - ensure egg-info is a directory (distutils would install it as file) - Fix SLE 11 build. - update to version 2.1.10: * Fixed bug in reporting named parse results for ZeroOrMore expressions, thanks Ethan Nash for reporting this! * Fixed behavior of LineStart to be much more predictable. LineStart can now be used to detect if the next parse position is col 1, factoring in potential leading whitespace (which would cause LineStart to fail). Also fixed a bug in col, which is used in LineStart, where '\n's were erroneously considered to be column 1. * Added support for multiline test strings in runTests. * Fixed bug in ParseResults.dump when keys were not strings. Also changed display of string values to show them in quotes, to help distinguish parsed numeric strings from parsed integers that have been converted to Python ints. - update to version 2.1.9: * Added class CloseMatch, a variation on Literal which matches "close" matches, that is, strings with at most 'n' mismatching characters. * Fixed bug in Keyword.setDefaultKeywordChars(), reported by Kobayashi Shinji - nice catch, thanks! * Minor API change in pyparsing_common. Renamed some of the common expressions to PEP8 format (to be consistent with the other pyparsing_common expressions): + signedInteger -> signed_integer + sciReal -> sci_real Also, in trying to stem the API bloat of pyparsing, I've copied some of the global expressions and helper parse actions into pyparsing_common, with the originals to be deprecated and removed in a future release: + commaSeparatedList -> pyparsing_common.comma_separated_list + upcaseTokens -> pyparsing_common.upcaseTokens + downcaseTokens -> pyparsing_common.downcaseTokens * Fixed Python3 compatibility bug when using dict keys() and values() in ParseResults.getName(). * After some prodding, I've reworked the unitTests.py file for pyparsing over the past few releases. It uses some variations on unittest to handle my testing style. The test now: + auto-discovers its test classes (while maintining their order of definition) + suppresses voluminous 'print' output for tests that pass - update to version 2.1.8: * Fixed issue in the optimization to _trim_arity, when the full stacktrace is retrieved to determine if a TypeError is raised in pyparsing or in the caller's parse action. Code was traversing the full stacktrace, and potentially encountering UnicodeDecodeError. * Fixed bug in ParserElement.inlineLiteralsUsing, causing infinite loop with Suppress. * Fixed bug in Each, when merging named results from multiple expressions in a ZeroOrMore or OneOrMore. Also fixed bug when ZeroOrMore expressions were erroneously treated as required expressions in an Each expression. * Added a few more inline doc examples. * Improved use of runTests in several example scripts. - changes from version 2.1.7: * Fixed regression reported by Andrea Censi (surfaced in PyContracts tests) when using ParseSyntaxExceptions (raised when using operator '-') with packrat parsing. * Minor fix to oneOf, to accept all iterables, not just space-delimited strings and lists. (If you have a list or set of strings, it is not necessary to concat them using ' '.join to pass them to oneOf, oneOf will accept the list or set or generator directly.) - changes from version 2.1.6 : * *Major packrat upgrade*, inspired by patch provided by Tal Einat - many, many, thanks to Tal for working on this! Tal's tests show faster parsing performance (2X in some tests), *and* memory reduction from 3GB down to ~100MB! Requires no changes to existing code using packratting. (Uses OrderedDict, available in Python 2.7 and later. For Python 2.6 users, will attempt to import from ordereddict backport. If not present, will implement pure-Python Fifo dict.) * Minor API change - to better distinguish between the flexible numeric types defined in pyparsing_common, I've changed "numeric" (which parsed numbers of different types and returned int for ints, float for floats, etc.) and "number" (which parsed numbers of int or float type, and returned all floats) to "number" and "fnumber" respectively. I hope the "f" prefix of "fnumber" will be a better indicator of its internal conversion of parsed values to floats, while the generic "number" is similar to the flexible number syntax in other languages. Also fixed a bug in pyparsing_common.numeric (now renamed to pyparsing_common.number), integers were parsed and returned as floats instead of being retained as ints. * Fixed bug in upcaseTokens and downcaseTokens introduced in 2.1.5, when the parse action was used in conjunction with results names. Reported by Steven Arcangeli from the dql project, thanks for your patience, Steven! * Major change to docs! After seeing some comments on reddit about general issue with docs of Python modules, and thinking that I'm a little overdue in doing some doc tuneup on pyparsing, I decided to following the suggestions of the redditor and add more inline examples to the pyparsing reference documentation. I hope this addition will clarify some of the more common questions people have, especially when first starting with pyparsing/Python. * Deprecated ParseResults.asXML. I've never been too happy with this method, and it usually forces some unnatural code in the parsers in order to get decent tag names. The amount of guesswork that asXML has to do to try to match names with values should have been a red flag from day one. If you are using asXML, you will need to implement your own ParseResults->XML serialization. Or consider migrating to a more current format such as JSON (which is very easy to do: results_as_json = json.dumps(parse_result.asDict()) Hopefully, when I remove this code in a future version, I'll also be able to simplify some of the craziness in ParseResults, which IIRC was only there to try to make asXML work. * Updated traceParseAction parse action decorator to show the repr of the input and output tokens, instead of the str format, since str has been simplified to just show the token list content. - update to version 2.1.5: * Added ParserElement.split() generator method, similar to re.split(). Includes optional arguments maxsplit (to limit the number of splits), and includeSeparators (to include the separating matched text in the returned output, default=False). * Added a new parse action construction helper tokenMap, which will apply a function and optional arguments to each element in a ParseResults. * Added more expressions to pyparsing_common: + IPv4 and IPv6 addresses (including long, short, and mixed forms of IPv6) + MAC address + ISO8601 date and date time strings (with named fields for year, month, etc.) + UUID (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) + hex integer (returned as int) + fraction (integer '/' integer, returned as float) + mixed integer (integer '-' fraction, or just fraction, returned as float) + stripHTMLTags (parse action to remove tags from HTML source) + parse action helpers convertToDate and convertToDatetime to do custom parse time conversions of parsed ISO8601 strings * runTests now returns a two-tuple: success if all tests succeed, and an output list of each test and its output lines. * Added failureTests argument (default=False) to runTests, so that tests can be run that are expected failures, and runTests' success value will return True only if all tests *fail* as expected. Also, parseAll now defaults to True. * New example numerics.py, shows samples of parsing integer and real numbers using locale-dependent formats - changes from version 2.1.4: * Split out the '==' behavior in ParserElement, now implemented as the ParserElement.matches() method. Using '==' for string test purposes will be removed in a future release. * Expanded capabilities of runTests(). Will now accept embedded comments (default is Python style, leading '#' character, but customizable). Comments will be emitted along with the tests and test output. Useful during test development, to create a test string consisting only of test case description comments separated by blank lines, and then fill in the test cases. Will also highlight ParseFatalExceptions with "(FATAL)". * Added a 'pyparsing_common' class containing common/helpful little expressions such as integer, float, identifier, etc. I used this class as a sort of embedded namespace, to contain these helpers without further adding to pyparsing's namespace bloat. * Minor enhancement to traceParseAction decorator, to retain the parse action's name for the trace output. * Added optional 'fatal' keyword arg to addCondition, to indicate that a condition failure should halt parsing immediately. - changes from version 2.1.3: * _trim_arity fix in 2.1.2 was very version-dependent on Py 3.5.0. Now works for Python 2.x, 3.3, 3.4, 3.5.0, and 3.5.1 (and hopefully beyond). - changes from version 2.1.2: * Fixed bug in _trim_arity when pyparsing code is included in a PyInstaller, reported by maluwa. * Fixed catastrophic regex backtracking in implementation of the quoted string expressions (dblQuotedString, sglQuotedString, and quotedString). Reported on the pyparsing wiki by webpentest, good catch! (Also tuned up some other expressions susceptible to the same backtracking problem, such as cStyleComment, cppStyleComment, etc.) - update to version 2.1.1: * Added support for assigning to ParseResults using slices. * Fixed bug in ParseResults.toDict(), in which dict values were always converted to dicts, even if they were just unkeyed lists of tokens. Reported on SO by Gerald Thibault, thanks Gerald! * Fixed bug in SkipTo when using failOn, reported by robyschek, thanks! * Fixed bug in Each introduced in 2.1.0, reported by AND patch and unit test submitted by robyschek, well done! * Removed use of functools.partial in replaceWith, as this creates an ambiguous signature for the generated parse action, which fails in PyPy. Reported by Evan Hubinger, thanks Evan! * Added default behavior to QuotedString to convert embedded '\t', '\n', etc. characters to their whitespace counterparts. Found during Q&A exchange on SO with Maxim. - update to version 2.1.0: * Modified the internal _trim_arity method to distinguish between TypeError's raised while trying to determine parse action arity and those raised within the parse action itself. This will clear up those confusing "<lambda>() takes exactly 1 argument (0 given)" error messages when there is an actual TypeError in the body of the parse action. Thanks to all who have raised this issue in the past, and most recently to Michael Cohen, who sent in a proposed patch, and got me to finally tackle this problem. * Added compatibility for pickle protocols 2-4 when pickling ParseResults. In Python 2.x, protocol 0 was the default, and protocol 2 did not work. In Python 3.x, protocol 3 is the default, so explicitly naming protocol 0 or 1 was required to pickle ParseResults. With this release, all protocols 0-4 are supported. Thanks for reporting this on StackOverflow, Arne Wolframm, and for providing a nice simple test case! * Added optional 'stopOn' argument to ZeroOrMore and OneOrMore, to simplify breaking on stop tokens that would match the repetition expression. It is a common problem to fail to look ahead when matching repetitive tokens if the sentinel at the end also matches the repetition expression, as when parsing "BEGIN aaa bbb ccc END" with: "BEGIN" + OneOrMore(Word(alphas)) + "END" Since "END" matches the repetition expression "Word(alphas)", it will never get parsed as the terminating sentinel. Up until now, this has to be resolved by the user inserting their own negative lookahead: "BEGIN" + OneOrMore(~Literal("END") + Word(alphas)) + "END" Using stopOn, they can more easily write: "BEGIN" + OneOrMore(Word(alphas), stopOn="END") + "END" The stopOn argument can be a literal string or a pyparsing expression. Inspired by a question by Lamakaha on StackOverflow (and many previous questions with the same negative-lookahead resolution). * Added expression names for many internal and builtin expressions, to reduce name and error message overhead during parsing. * Converted helper lambdas to functions to refactor and add docstring support. * Fixed ParseResults.asDict() to correctly convert nested ParseResults values to dicts. * Cleaned up some examples, fixed typo in fourFn.py identified by aristotle2600 on reddit. * Removed keepOriginalText helper method, which was deprecated ages ago. Superceded by originalTextFor. * Same for the Upcase class, which was long ago deprecated and replaced with the upcaseTokens method. - update to version 2.0.7: * Simplified string representation of Forward class, to avoid memory and performance errors while building ParseException messages. Thanks, Will McGugan, Andrea Censi, and Martijn Vermaat for the bug reports and test code. * Cleaned up additional issues from enhancing the error messages for Or and MatchFirst, handling Unicode values in expressions. Fixes Unicode encoding issues in Python 2, thanks to Evan Hubinger for the bug report. * Fixed implementation of dir() for ParseResults - was leaving out all the defined methods and just adding the custom results names. * Fixed bug in ignore() that was introduced in pyparsing 1.5.3, that would not accept a string literal as the ignore expression. * Added new example parseTabularData.py to illustrate parsing of data formatted in columns, with detection of empty cells. * Updated a number of examples to more current Python and pyparsing forms. - update to version 2.0.6: * Fixed a bug in Each when multiple Optional elements are present. Thanks for reporting this, whereswalden on SO. * Fixed another bug in Each, when Optional elements have results names or parse actions, reported by Max Rothman - thank you, Max! * Added optional parseAll argument to runTests, whether tests should require the entire input string to be parsed or not (similar to parseAll argument to parseString). Plus a little neaten-up of the output on Python 2 (no stray ()'s). * Modified exception messages from MatchFirst and Or expressions. These were formerly misleading as they would only give the first or longest exception mismatch error message. Now the error message includes all the alternatives that were possible matches. Originally proposed by a pyparsing user, but I've lost the email thread - finally figured out a fairly clean way to do this. * Fixed a bug in Or, when a parse action on an alternative raises an exception, other potentially matching alternatives were not always tried. Reported by TheVeryOmni on the pyparsing wiki, thanks! * Fixed a bug to dump() introduced in 2.0.4, where list values were shown in duplicate. - update to version 2.0.5: * (&$(@#&$(@!!!! Some "print" statements snuck into pyparsing v2.0.4, breaking Python 3 compatibility! Fixed. Reported by jenshn, thanks! - changes from Version 2.0.4: * Added ParserElement.addCondition, to simplify adding parse actions that act primarily as filters. If the given condition evaluates False, pyparsing will raise a ParseException. The condition should be a method with the same method signature as a parse action, but should return a boolean. Suggested by Victor Porton, nice idea Victor, thanks! * Slight mod to srange to accept unicode literals for the input string, such as "[?-??-?]" instead of "[\u0430-\u044f\u0410-\u042f]". Thanks to Alexandr Suchkov for the patch! * Enhanced implementation of replaceWith. * Fixed enhanced ParseResults.dump() method when the results consists only of an unnamed array of sub-structure results. Reported by Robin Siebler, thanks for your patience and persistence, Robin! * Fixed bug in fourFn.py example code, where pi and e were defined using CaselessLiteral instead of CaselessKeyword. This was not a problem until adding a new function 'exp', and the leading 'e' of 'exp' was accidentally parsed as the mathematical constant 'e'. Nice catch, Tom Grydeland - thanks! * Adopt new-fangled Python features, like decorators and ternary expressions, per suggestions from Williamzjc - thanks William! (Oh yeah, I'm not supporting Python 2.3 with this code any more...) Plus, some additional code fixes/cleanup - thanks again! * Added ParserElement.runTests, a little test bench for quickly running an expression against a list of sample input strings. Basically, I got tired of writing the same test code over and over, and finally added it as a test point method on ParserElement. * Added withClass helper method, a simplified version of withAttribute for the common but annoying case when defining a filter on a div's class - made difficult because 'class' is a Python reserved word. - update to version 2.0.3: * Fixed escaping behavior in QuotedString. Formerly, only quotation marks (or characters designated as quotation marks in the QuotedString constructor) would be escaped. Now all escaped characters will be escaped, and the escaping backslashes will be removed. * Fixed regression in ParseResults.pop() - pop() was pretty much broken after I added *improvements* in 2.0.2. Reported by Iain Shelvington, thanks Iain! * Fixed bug in And class when initializing using a generator. * Enhanced ParseResults.dump() method to list out nested ParseResults that are unnamed arrays of sub-structures. * Fixed UnboundLocalError under Python 3.4 in oneOf method, reported on Sourceforge by aldanor, thanks! * Fixed bug in ParseResults __init__ method, when returning non-ParseResults types from parse actions that implement __eq__. Raised during discussion on the pyparsing wiki with cyrfer. - fix end of line encoding of every file in examples - update to v2.0.2 - Extended "expr(name)" shortcut (same as "expr.setResultsName(name)") to accept "expr()" as a shortcut for "expr.copy()". - Added "locatedExpr(expr)" helper, to decorate any returned tokens with their location within the input string. Adds the results names locn_start and locn_end to the output parse results. - Added "pprint()" method to ParseResults, to simplify troubleshooting and prettified output. Now instead of importing the pprint module and then writing "pprint.pprint(result)", you can just write "result.pprint()". This method also accepts addtional positional and keyword arguments (such as indent, width, etc.), which get passed through directly to the pprint method (see http://docs.python.org/2/library/pprint.html#pprint.pprint). - Removed deprecation warnings when using '<<' for Forward expression assignment. '<<=' is still preferred, but '<<' will be retained for cases whre '<<=' operator is not suitable (such as in defining lambda expressions). - Expanded argument compatibility for classes and functions that take list arguments, to now accept generators as well. - Extended list-like behavior of ParseResults, adding support for append and extend. NOTE: if you have existing applications using these names as results names, you will have to access them using dict-style syntax: res["append"] and res["extend"] - ParseResults emulates the change in list vs. iterator semantics for methods like keys(), values(), and items(). Under Python 2.x, these methods will return lists, under Python 3.x, these methods will return iterators. - ParseResults now has a method haskeys() which returns True or False depending on whether any results names have been defined. This simplifies testing for the existence of results names under Python 3.x, which returns keys() as an iterator, not a list. - ParseResults now supports both list and dict semantics for pop(). If passed no argument or an integer argument, it will use list semantics and pop tokens from the list of parsed tokens. If passed a non-integer argument (most likely a string), it will use dict semantics and pop the corresponding value from any defined results names. A second default return value argument is supported, just as in dict.pop(). - Fixed bug in markInputline, thanks for reporting this, Matt Grant! - Cleaned up my unit test environment, now runs with Python 2.6 and 3.3. - include examples in -doc package - Update to version 2.0.1: - Removed use of "nonlocal" that prevented using this version of pyparsing with Python 2.6 and 2.7. This will make it easier to install for packages that depend on pyparsing, under Python versions 2.6 and later. Those using older versions of Python will have to manually install pyparsing 1.5.7. - Fixed implementation of <<= operator to return self; reported by Luc J. Bourhis, with patch fix by Mathias Mamsch - thanks, Luc and Mathias! - Changes from version 2.0.0: - Rather than release another combined Python 2.x/3.x release I've decided to start a new major version that is only compatible with Python 3.x (and consequently Python 2.7 as well due to backporting of key features). This version will be the main development path from now on, with little follow-on development on the 1.5.x path. - Operator '<<' is now deprecated, in favor of operator '<<=' for attaching parsing expressions to Forward() expressions. This is being done to address precedence of operations problems with '<<'. Operator '<<' will be removed in a future version of pyparsing. - remove nonsensical tarball - update to 1.5.7: * NOTE: This is the last release of pyparsing that will try to maintain compatibility with Python versions < 2.6. The next release of pyparsing will be version 2.0.0, using new Python syntax that will not be compatible for Python version 2.5 or older. * An awesome new example is included in this release, submitted by Luca DellOlio, for parsing ANTLR grammar definitions, nice work Luca! * Fixed implementation of ParseResults.__str__ to use Pythonic ''.join() instead of repeated string concatenation. This purportedly has been a performance issue under PyPy. * Fixed bug in ParseResults.__dir__ under Python 3, reported by Thomas Kluyver, thank you Thomas! * Added ParserElement.inlineLiteralsUsing static method, to override pyparsing's default behavior of converting string literals to Literal instances, to use other classes (such as Suppress or CaselessLiteral). * Added new operator '<<=', which will eventually replace '<<' for storing the contents of a Forward(). '<<=' does not have the same operator precedence problems that '<<' does. * 'operatorPrecedence' is being renamed 'infixNotation' as a better description of what this helper function creates. 'operatorPrecedence' is deprecated, and will be dropped entirely in a future release. * Added optional arguments lpar and rpar to operatorPrecedence, so that expressions that use it can override the default suppression of the grouping characters. * Added support for using single argument builtin functions as parse actions. Now you can write 'expr.setParseAction(len)' and get back the length of the list of matched tokens. Supported builtins are: sum, len, sorted, reversed, list, tuple, set, any, all, min, and max. A script demonstrating this feature is included in the examples directory. * Fixed a bug in the definition of 'alphas', which was based on the string.uppercase and string.lowercase "constants", which in fact * aren't* constant, but vary with locale settings. This could make parsers locale-sensitive in a subtle way. Thanks to Kef Schecter for his diligence in following through on reporting and monitoring this bugfix! * Fixed a bug in the Py3 version of pyparsing, during exception handling with packrat parsing enabled, reported by Catherine Devlin - thanks Catherine! * Fixed typo in ParseBaseException.__dir__, reported anonymously on the SourceForge bug tracker, thank you Pyparsing User With No Name. * Fixed bug in srange when using '\x###' hex character codes. * Addeed optional 'intExpr' argument to countedArray, so that you can define your own expression that will evaluate to an integer, to be used as the count for the following elements. Allows you to define a countedArray with the count given in hex, for example, by defining intExpr as "Word(hexnums).setParseAction(int(t[0],16))". - Fix license (MIT and GPL-2.0+ and GPL-3.0+) - Don't ship examples twice - Initial support of python3 - Package examples - Spec file cleanup - Add Provides/Obsoletes for python-parsing - Update to version 1.5.6: * Cleanup of parse action normalizing code, to be more version-tolerant, and robust in the face of future Python versions * Removal of exception cacheing, addressing a memory leak condition in Python 3. * Fixed bug when using packrat parsing, where a previously parsed expression would duplicate subsequent tokens * Fixed bug in srange, which accepted escaped hex characters of the form '\0x##', but should be '\x##'. Both forms will be supported for backwards compatibility. * Added the Verilog parser to the provided set of examples, under the MIT license. * Added the excludeChars argument to the Word class, to simplify defining a word composed of all characters in a large range except for one or two. * Added optional overlap parameter to scanString, to return overlapping matches found in the source text. * Updated oneOf internal regular expression generation, with improved parse time performance. * Slight performance improvement in transformString, removing empty strings from the list of string fragments built while scanning the source text, before calling ''.join. Especially useful when using transformString to strip out selected text. * Enhanced form of using the "expr('name')" style of results naming, in lieu of calling setResultsName. If name ends with an '*', then this is equivalent to expr.setResultsName('name',listAllMatches=True). * Fixed up internal list flattener to use iteration instead of recursion, to avoid stack overflow when transforming large files. - Changes from version 1.5.5: * Typo in Python3 version of pyparsing, "builtin" should be "builtins". - Changes from version 1.5.4: * Fixed __builtins__ and file references in Python 3 code, thanks to Greg Watson, saulspatz, sminos, and Mark Summerfield for reporting their Python 3 experiences. - Spec file cleanup: * Regenerated with py2pack, much simpler spec file * Fixed license to MIT, it's not GPLv2+ - Initial package (1.5.3) ==== python-rpm-macros ==== Version update (1.0.git.1486997542.e9fcc29 -> 1.0.git.1487869271.c6e9bfc) - let %python_module expand *all* its arguments, not just the first (so that %{python_module x >= 1.0} works as intended) - copy BuildArch to subpackages - on requires/provides etc., perform macro expansion *after* replacing 'python' name, to allow for tricking the rewriter to not replace - add BuildRoot to make SLE11 happy - check presence of %python_files even on new-style distros - better visibility of the %python_files error ==== python-setuptools ==== Version update (33.1.1 -> 34.2.0) - update to 34.2.0 * dependencies are no longer vendored and setuptools can't bootstrap without them * drop support for python 2.6 and 3.2 * declarative config option for setup.cfg * nspkg.pth files for development * switch to zip format for source dist * ensure extras are honored when building the working set * add support for reading dist-info metadata * support for PEP440 version specifiers - added build-time and run-time dependencies to appdirs and packaging, ensured these packages build without setuptools - drop upstreamed setuptools-certpath.patch - drop unneeded setuptools-5.4.1-create-sitedir.patch - add fdupes - change source file to zip, add unzip dependency - update for multipython build - make sure, that setuptools-certpath.patch is applied unconditionally (fixes traceback in setuptools/ssl_support.py) - update to 28.3.0: * #809: In ``find_packages()``, restore support for excluding a parent package without excluding a child package. * #805: Disable ``-nspkg.pth`` behavior on Python 3.3+ where PEP-420 functionality is adequate. Fixes pip #1924. * #803: Bump certifi to 2016.9.26. * #733: Do not search excluded directories for packages. This introduced a backwards incompatible change in ``find_packages()`` so that ``find_packages(exclude=['foo']) == []``, excluding subpackages of ``foo``. Previously, ``find_packages(exclude=['foo']) == ['foo.bar']``, even though the parent ``foo`` package was excluded. * #795: Bump certifi. * #719: Suppress decoding errors and instead log a warning when metadata cannot be decoded. * #790: In MSVC monkeypatching, explicitly patch each function by name in the target module instead of inferring the module from the function's ``__module__``. Improves compatibility with other packages that might have previously patched distutils functions (i.e. NumPy). * #794: In test command, add installed eggs to PYTHONPATH when invoking tests so that subprocesses will also have the dependencies available. Fixes `tox 330 <https://github.com/tox-dev/tox/issues/330>`_. * #795: Update vendored pyparsing 2.1.9. * #520 and #513: Suppress ValueErrors in fixup_namespace_packages when lookup fails. * Nicer, more consistent interfaces for msvc monkeypatching. * #779 via #781: Fix circular import. * #778: Fix MSVC monkeypatching. * Introduce the (private) ``monkey`` module to encapsulate the distutils monkeypatching behavior. * Now use Warehouse by default for ``upload``, patching ``distutils.config.PyPIRCCommand`` to affect default behavior. Any config in .pypirc should be updated to replace https://pypi.python.org/pypi/ with https://upload.pypi.org/legacy/ Similarly, any passwords stored in the keyring should be updated to use this new value for "system". The ``upload_docs`` command will continue to use the python.org site, but the command is now deprecated. Users are urged to use Read The Docs instead. * #776: Use EXT_SUFFIX for py_limited_api renaming. * #774 and #775: Use LegacyVersion from packaging when detecting numpy versions. * Re-release of 26.1.0 with pytest pinned to allow for automated deployment and thus proper packaging environment variables, fixing issues with missing executable launchers. - fix certificate handling with certifi, add support for SUSE's CA bundle (setuptools-certpath.patch, fixes boo#993968) - remove shebang lines, strip executable bit from README, to silence the easy rpmlint warnings - update to 26.1.1: * Re-release of 26.1.0 with pytest pinned to allow for automated deployement and thus proper packaging environment variables, fixing issues with missing executable launchers. * #763: ``pkg_resources.get_default_cache`` now defers to the `appdirs project <https://pypi.org/project/appdirs>`_ to resolve the cache directory. Adds a vendored dependency on appdirs to pkg_resources. * #748: By default, sdists are now produced in gzipped tarfile format by default on all platforms, adding forward compatibility for the same behavior in Python 3.6 (See Python #27819). * #459 via #736: On Windows with script launchers, sys.argv[0] now reflects the name of the entry point, consistent with the behavior in distlib and pip wrappers. * #752 via #753: When indicating ``py_limited_api`` to Extension, it must be passed as a keyword argument. * Add Extension(py_limited_api=True). When set to a truthy value, that extension gets a filename apropriate for code using Py_LIMITED_API. When used correctly this allows a single compiled extension to work on all future versions of CPython 3. The py_limited_api argument only controls the filename. To be compatible with multiple versions of Python 3, the C extension will also need to set -DPy_LIMITED_API=... and be modified to use only the functions in the limited API. * #739 Fix unquoted libpaths by fixing compatibility between `numpy.distutils` and `distutils._msvccompiler` for numpy < 1.11.2 (Fix issue #728, error also fixed in Numpy). * #731: Bump certifi. * Style updates. See #740, #741, #743, #744, #742, #747. * #735: include license file. * #612 via #730: Add a LICENSE file which needs to be provided by the terms of the MIT license. * #725: revert `library_dir_option` patch (Error is related to `numpy.distutils` and make errors on non Numpy users). * #720 * #723: Improve patch for `library_dir_option`. * #717 * #713 * #707: Fix Python 2 compatibility for MSVC by catching errors properly. * #715: Fix unquoted libpaths by patching `library_dir_option`. * #714 and #704: Revert fix as it breaks other components downstream that can't handle unicode. See #709, #710, and #712. * #704: Fix errors when installing a zip sdist that contained files named with non-ascii characters on Windows would crash the install when it attempted to clean up the build. * #646: MSVC compatibility - catch errors properly in RegistryInfo.lookup. * #702: Prevent UnboundLocalError when initial working_set is empty. * #686: Fix issue in sys.path ordering by pkg_resources when rewrite technique is "raw". * #699: Fix typo in msvc support. * #609: Setuptools will now try to download a distribution from the next possible download location if the first download fails. This means you can now specify multiple links as ``dependency_links`` and all links will be tried until a working download link is encountered. * #688: Fix AttributeError in setup.py when invoked not from the current directory. * Cleanup of setup.py script. * Fixed documentation builders by allowing setup.py to be imported without having bootstrapped the metadata. * More style cleanup. See #677, #678, #679, #681, #685. * #674: Default ``sys.path`` manipulation by easy-install.pth is now "raw", meaning that when writing easy-install.pth during any install operation, the ``sys.path`` will not be rewritten and will no longer give preference to easy_installed packages. To retain the old behavior when using any easy_install operation (including ``setup.py install`` when setuptools is present), set the environment variable: SETUPTOOLS_SYS_PATH_TECHNIQUE=rewrite This project hopes that that few if any environments find it necessary to retain the old behavior, and intends to drop support for it altogether in a future release. Please report any relevant concerns in the ticket for this change. * #398: Fix shebang handling on Windows in script headers where spaces in ``sys.executable`` would produce an improperly-formatted shebang header, introduced in 12.0 with the fix for #188. * #663, #670: More style updates. * #516: Disable ``os.link`` to avoid hard linking in ``sdist.make_distribution``, avoiding errors on systems that support hard links but not on the file system in which the build is occurring. * #667: Update Metadata-Version to 1.2 when ``python_requires`` is supplied. * #631: Add support for ``python_requires`` keyword. * More style updates. See #660, #661, #641. * #659: ``setup.py`` now will fail fast and with a helpful error message when the necessary metadata is missing. * More style updates. See #656, #635, #640, [#644], #650, #652, and #655. * Updated style in much of the codebase to match community expectations. See #632, #633, #634, [#637], #639, #638, #642, #648. * If MSVC++14 is needed ``setuptools.msvc`` now redirect user to Visual C++ Build Tools web page. * #625 and #626: Fixes on ``setuptools.msvc`` mainly for Python 2 and Linux. * Pull Request #174: Add more aggressive support for standalone Microsoft Visual C++ compilers in msvc9compiler patch. Particularly : Windows SDK 6.1 and 7.0 (MSVC++ 9.0), Windows SDK 7.1 (MSVC++ 10.0), Visual C++ Build Tools 2015 (MSVC++14) * Renamed ``setuptools.msvc9_support`` to ``setuptools.msvc``. Re-release of v23.2.0, which was missing the intended commits. * #623: Remove used of deprecated 'U' flag when reading manifests. - Update fix-sle11-test-failure.patch to new line numbers and indentation - Use pypi.io for Source url - update to 23.1.0: * #619: Deprecated ``tag_svn_revision`` distribution option. * #611: Removed ARM executables for CLI and GUI script launchers on Windows. If this was a feature you cared about, please comment in the ticket. * #604: Removed docs building support. The project now relies on documentation hosted at https://setuptools.readthedocs.io/. * #604: Restore repository for upload_docs command to restore publishing of docs during release. * #589: Upload releases to pypi.io using the upload hostname and legacy path. * #589: Releases are now uploaded to pypi.io (Warehouse) even when releases are made on Twine via Travis. * #589: Releases are now uploaded to pypi.io (Warehouse). * #190: On Python 2, if unicode is passed for packages to ``build_py`` command, it will be handled just as with text on Python 3. * #598: Setuptools now lists itself first in the User-Agent for web requests, better following the guidelines in `RFC 7231 <https://tools.ietf.org/html/rfc7231#section-5.5.3>`_. * Minor fixes to changelog and docs. * #261: Exclude directories when resolving globs in package_data. * #539: In the easy_install get_site_dirs, honor all paths found in ``site.getsitepackages``. * #572: In build_ext, now always import ``_CONFIG_VARS`` from ``distutils`` rather than from ``sysconfig`` to allow ``distutils.sysconfig.customize_compiler`` configure the OS X compiler for ``-dynamiclib``. * Removed ez_setup.py from Setuptools sdist. The bootstrap script will be maintained in its own branch and should be generally be retrieved from its canonical location at https://bootstrap.pypa.io/ez_setup.py. * #553: egg_info section is now generated in a deterministic order, matching the order generated by earlier versions of Python. Except on Python 2.6, order is preserved when existing settings are present. * #556: Update to Packaging 16.7, restoring support for deprecated ``python_implmentation`` marker. * #555: Upload command now prompts for a password when uploading to PyPI (or other repository) if no password is present in .pypirc or in the keyring. * #548: Update certify version to 2016.2.28 * #545: Safely handle deletion of non-zip eggs in rotate command. * Issue #544: Fix issue with extra environment marker processing in WorkingSet due to refactor in v20.7.0. * Issue #543: Re-release so that latest release doesn't cause d�j� vu with distribute and setuptools 0.7 in older environments. * Refactored extra enviroment marker processing in WorkingSet. * Issue #533: Fixed intermittent test failures. * Issue #536: In msvc9_support, trap additional exceptions that might occur when importing ``distutils.msvc9compiler`` in mingw environments. * Issue #537: Provide better context when package metadata fails to decode in UTF-8. * Issue #523: Restored support for environment markers, now honoring 'extra' environment markers. * Issue #523: Disabled support for environment markers introduced in v20.5. * Issue #503: Restore support for PEP 345 environment markers by updating to Packaging 16.6. * New release process that relies on `bumpversion <https://github.com/peritus/bumpversion>`_ and Travis CI for continuous deployment. * Project versioning semantics now follow `semver <https://semver.org>`_ precisely. The 'v' prefix on version numbers now also allows version numbers to be referenced in the changelog, e.g. https://pythonhosted.org/setuptools/history.html#v20-6-0. * BB Pull Request #185, #470: Add support for environment markers in requirements in install_requires, setup_requires, tests_require as well as adding a test for the existing extra_requires machinery. * Issue #422: Moved hosting to `Github <https://github.com/pypa/setuptools>`_ from `Bitbucket <https://bitbucket.org/pypa/setuptools>`_. Issues have been migrated, though all issues and comments are attributed to bb-migration. So if you have a particular issue or issues to which you've been subscribed, you will want to "watch" the equivalent issue in Github. The Bitbucket project will be retained for the indefinite future, but Github now hosts the canonical project repository. * Issue #519: Remove import hook when reloading the ``pkg_resources`` module. * BB Pull Request #184: Update documentation in ``pkg_resources`` around new ``Requirement`` implementation. * BB Pull Request #179: ``pkg_resources.Requirement`` objects are now a subclass of ``packaging.requirements.Requirement``, allowing any environment markers and url (if any) to be affiliated with the requirement * BB Pull Request #179: Restore use of RequirementParseError exception unintentionally dropped in 20.2. - update to 20.2.2: * Issue #502: Correct regression in parsing of multiple version specifiers separated by commas and spaces. * Issue #499: Restore compatiblity for legacy versions by bumping to packaging 16.4. * Changelog now includes release dates and links to PEPs. * Pull Request #173: Replace dual PEP 345 _markerlib implementation and PEP 426 implementation of environment marker support from packaging 16.1 and PEP 508. Fixes Issue #122. See also Pull Request #175, Pull Request #168, and Pull Request #164. Additionally: - ``Requirement.parse`` no longer retains the order of extras. - ``parse_requirements`` now requires that all versions be PEP-440 compliant, as revealed in #499. Packages released with invalid local versions should be re-released using the proper local version syntax, e.g. ``mypkg-1.0+myorg.1``. * Update ``upload_docs`` command to also honor keyring for password resolution. * Added support for using passwords from keyring in the upload command. * Issue #118: Once again omit the package metadata (egg-info) from the list of outputs in ``--record``. This version of setuptools can no longer be used to upgrade pip earlier than 6.0. * `Off-project PR <https://github.com/jaraco/setuptools/pull/32>`_: For FreeBSD, also honor root certificates from ca_root_nss. - update to version 19.6.2: * Issue #491: Correct regression incurred in 19.4 where a double-namespace package installed using pip would cause a TypeError. - update to version 19.6.1: * Restore compatibility for PyPy 3 compatibility lost in 19.4.1 addressing Issue #487. * "setuptools.launch" shim now loads scripts in a new namespace, avoiding getting relative imports from the setuptools package on Python 2. - update to version 19.6: * Added a new entry script "setuptools.launch", implementing the shim found in "pip.util.setuptools_build". Use this command to launch distutils-only packages under setuptools in the same way that pip does, causing the setuptools monkeypatching of distutils to be invoked prior to invoking a script. Useful for debugging or otherwise installing a distutils-only package under setuptools when pip isn't available or otherwise does not expose the desired functionality. For example:: $ python -m setuptools.launch setup.py develop * Issue #488: Fix dual manifestation of Extension class in extension packages installed as dependencies when Cython is present. - update to version 19.5: * Issue #486: Correct TypeError when getfilesystemencoding returns None. * Issue #139: Clarified the license as MIT. * Pull Request #169: Removed special handling of command spec in scripts for Jython. - changes from version 19.4.1: * Issue #487: Use direct invocation of "importlib.machinery" in "pkg_resources" to avoid missing detection on relevant platforms. - update to version 19.4: * Issue #341: Correct error in path handling of package data files in "build_py" command when package is empty. * Distribute #323, Issue #141, Issue #207, and Pull Request #167: Another implementation of "pkg_resources.WorkingSet" and "pkg_resources.Distribution" that supports replacing an extant package with a new one, allowing for setup_requires dependencies to supersede installed packages for the session. - update to version 19.3: * Issue #229: Implement new technique for readily incorporating dependencies conditionally from vendored copies or primary locations. Adds a new dependency on six. - update to version 19.2: * Pull Request #163: Add get_command_list method to Distribution. * Pull Request #162: Add missing whitespace to multiline string literals. - update to version 19.1.1: * Issue #476: Cast version to string (using default encoding) to avoid creating Unicode types on Python 2 clients. * Issue #477: In Powershell downloader, use explicit rendering of strings, rather than rely on "repr", which can be incorrect (especially on Python 2). - changes from version 19.1: * Issue #215: The bootstrap script "ez_setup.py" now automatically detects the latest version of setuptools (using PyPI JSON API) rather than hard-coding a particular value. * Issue #475: Fix incorrect usage in _translate_metadata2. - changes from version 19.0: * Issue #442: Use RawConfigParser for parsing .pypirc file. Interpolated values are no longer honored in .pypirc files. - update to version 18.8.1: * Issue #440: Prevent infinite recursion when a SandboxViolation or other UnpickleableException occurs in a sandbox context with setuptools hidden. Fixes regression introduced in Setuptools 12.0. - changes from version 18.8: * Deprecated ``egg_info.get_pkg_info_revision``. * Issue #471: Don't rely on repr for an HTML attribute value in package_index. * Issue #419: Avoid errors in FileMetadata when the metadata directory is broken. * Issue #472: Remove deprecated use of 'U' in mode parameter when opening files. - update to version 18.7.1: * Issue #469: Refactored logic for Issue #419 fix to re-use metadata loading from Provider. - update to version 18.7: * Update dependency on certify. * Pull Request #160: Improve detection of gui script in "easy_install._adjust_header". * Made "test.test_args" a non-data property; alternate fix for the issue reported in Pull Request #155. * Issue #453: In "ez_setup" bootstrap module, unload all "pkg_resources" modules following download. * Pull Request #158: Honor `PEP-488 <https://www.python.org/dev/peps/pep-0488/>`_ when excluding files for namespace packages. * Issue #419 and Pull Request #144: Add experimental support for reading the version info from distutils-installed metadata rather than using the version in the filename. - update to version 18.6.1: * Issue #464: Correct regression in invocation of superclass on old-style class on Python 2. - changes from version 18.6: * Issue #439: When installing entry_point scripts under development, omit the version number of the package, allowing any version of the package to be used. - update to version 18.5: * In preparation for dropping support for Python 3.2, a warning is now logged when pkg_resources is imported on Python 3.2 or earlier Python 3 versions. * `Add support for python_platform_implementation environment marker <https://github.com/jaraco/setuptools/pull/28>`_. * `Fix dictionary mutation during iteration <https://github.com/jaraco/setuptools/pull/29>`_. - Update to 18.4 * Test command now always invokes unittest, even if no test suite is supplied. - update to 18.3.2: * Correct another regression in setuptools.findall where the fix for Python #12885 was lost. - update to 18.3.1: * Issue #425: Correct regression in setuptools.findall. - update to 18.3: * Setuptools now allows disabling of the manipulation of the sys.path during the processing of the easy-install.pth file. To do so, set the environment variable ``SETUPTOOLS_SYS_PATH_TECHNIQUE`` to anything but "rewrite" (consider "raw"). During any install operation with manipulation disabled, setuptools packages will be appended to sys.path naturally. Future versions may change the default behavior to disable manipulation. If so, the default behavior can be retained by setting the variable to "rewrite". * Issue #257: ``easy_install --version`` now shows more detail about the installation location and Python version. * Refactor setuptools.findall in preparation for re-submission back to distutils. - update to 18.2: * Issue #412: More efficient directory search in ``find_packages``. - update to 18.1: * Upgrade to vendored packaging 15.3. - update to 18.0.1: * Issue #401: Fix failure in test suite. * Dropped support for builds with Pyrex. Only Cython is supported. * Issue #288: Detect Cython later in the build process, after ``setup_requires`` dependencies are resolved. * Issue #396: Fixed test failure on OS X. * Pull Request #136: Remove excessive quoting from shebang headers for Jython. - update to 17.1.1: * Backed out unintended changes to pkg_resources, restoring removal of deprecated imp module - update to 17.1: * Issue #380: Add support for range operators on environment marker evaluation. * Issue #378: Do not use internal importlib._bootstrap module. * Issue #390: Disallow console scripts with path separators in the name. Removes unintended functionality and brings behavior into parity with pip. * Pull Request #130: Better error messages for errors in parsed requirements. * Pull Request #133: Removed ``setuptools.tests`` from the installed packages. * Issue #373: Provisionally expose ``pkg_resources._initialize_master_working_set``, allowing for imperative re-initialization of the master working set. - Disable testsuite as this causes build cycle - update to 15.1: * Updated Packaging to 15.1 to address Packaging #28. * Fix ``setuptools.sandbox._execfile()`` with Python 3.1. - Remove fix-type-error.patch . Applied upstream - openSUSE versions up to 12.2 are affected as well from: AssertionError: error: must supply either home or prefix/exec-prefix -- not both raise version check of applying fix-sle11-test-failure.patch accordingly - update to 15.0: * Pull Request #126: DistributionNotFound message now lists the package or packages that required it. E.g.:: pkg_resources.DistributionNotFound: The 'colorama>=0.3.1' distribution was not found and is required by smlib.log. Note that zc.buildout once dependended on the string rendering of this message to determine the package that was not found. This expectation has since been changed, but older versions of buildout may experience problems. See Buildout #242 for details. * Issue #307: Removed PEP-440 warning during parsing of versions in ``pkg_resources.Distribution``. * Issue #364: Replace deprecated usage with recommended usage of ``EntryPoint.load``. * Issue #254: When creating temporary egg cache on Unix, use mode 755 for creating the directory to avoid the subsequent warning if the directory is group writable. * Issue #137: Update ``Distribution.hashcmp`` so that Distributions with None for pyversion or platform can be compared against Distributions defining those attributes. * Issue #360: Removed undesirable behavior from test runs, preventing write tests and installation to system site packages. * Pull Request #125: Add ``__ne__`` to Requirement class. * Various refactoring of easy_install. * Bootstrap script now accepts ``--to-dir`` to customize save directory or allow for re-use of existing repository of setuptools versions. See Pull Request #112 for background. * Issue #285: ``easy_install`` no longer will default to installing packages to the "user site packages" directory if it is itself installed there. Instead, the user must pass ``--user`` in all cases to install packages to the user site packages. This behavior now matches that of "pip install". To configure an environment to always install to the user site packages, consider using the "install-dir" and "scripts-dir" parameters to easy_install through an appropriate distutils config file. * Issue #359: Include pytest.ini in the sdist so invocation of py.test on the sdist honors the pytest configuration. Re-release of 13.0. Intermittent connectivity issues caused the release process to fail and PyPI uploads no longer accept files for 13.0. * Issue #356: Back out Pull Request #119 as it requires Setuptools 10 or later as the source during an upgrade. * Removed build_py class from setup.py. According to 892f439d216e, this functionality was added to support upgrades from old Distribute versions, 0.6.5 and 0.6.6. * Pull Request #119: Restore writing of ``setup_requires`` to metadata (previously added in 8.4 and removed in 9.0). * Documentation is now linked using the rst.linker package. * Fix ``setuptools.command.easy_install.extract_wininst_cfg()`` with Python 2.6 and 2.7. * Issue #354. Added documentation on building setuptools documentation. * Issue #345: Unload all modules under pkg_resources during ``ez_setup.use_setuptools()``. * Issue #336: Removed deprecation from ``ez_setup.use_setuptools``, as it is clearly still used by buildout's bootstrap. ``ez_setup`` remains deprecated for use by individual packages. * Simplified implementation of ``ez_setup.use_setuptools``. * Pull Request #118: Soften warning for non-normalized versions in Distribution. * Issue #339: Correct Attribute reference in ``cant_write_to_target``. * Issue #336: Deprecated ``ez_setup.use_setuptools``. * Issue #335: Fix script header generation on Windows. * Fixed incorrect class attribute in ``install_scripts``. Tests would be nice. * Issue #331: Fixed ``install_scripts`` command on Windows systems corrupting the header. * Restore ``setuptools.command.easy_install.sys_executable`` for pbr compatibility. For the future, tools should construct a CommandSpec explicitly. * Issue #188: Setuptools now support multiple entities in the value for ``build.executable``, such that an executable of "/usr/bin/env my-python" may be specified. This means that systems with a specified executable whose name has spaces in the path must be updated to escape or quote that value. * Deprecated ``easy_install.ScriptWriter.get_writer``, replaced by ``.best()`` with slightly different semantics (no force_windows flag). * Issue #327: Formalize and restore support for any printable character in an entry point name. * Expose ``EntryPoint.resolve`` in place of EntryPoint._load, implementing the simple, non-requiring load. Deprecated all uses of ``EntryPoint._load`` except for calling with no parameters, which is just a shortcut for ``ep.require(); ep.resolve();``. Apps currently invoking ``ep.load(require=False)`` should instead do the following if wanting to avoid the deprecating warning:: getattr(ep, "resolve", lambda: ep.load(require=False))() * Pip #2326: Report deprecation warning at stacklevel 2 for easier diagnosis. * Issue #281: Since Setuptools 6.1 (Issue #268), a ValueError would be raised in certain cases where VersionConflict was raised with two arguments, which occurred in ``pkg_resources.WorkingSet.find``. This release adds support for indicating the dependent packages while maintaining support for a VersionConflict when no dependent package context is known. New unit tests now capture the expected interface. * Interop #3: Upgrade to Packaging 15.0; updates to PEP 440 so that >1.7 does not exclude 1.7.1 but does exclude 1.7.0 and 1.7.0.post1. * Issue #323: Fix regression in entry point name parsing. * Deprecated use of EntryPoint.load(require=False). Passing a boolean to a function to select behavior is an anti-pattern. Instead use ``Entrypoint._load()``. * Substantial refactoring of all unit tests. Tests are now much leaner and re-use a lot of fixtures and contexts for better clarity of purpose. * Issue #320: Added a compatibility implementation of ``sdist._default_revctrl`` so that systems relying on that interface do not fail (namely, Ubuntu 12.04 and similar Debian releases). * Issue #319: Fixed issue installing pure distutils packages. * Issue #313: Removed built-in support for subversion. Projects wishing to retain support for subversion will need to use a third party library. The extant implementation is being ported to `setuptools_svn <https://pypi.python.org/pypi/setuptools_svn>`_. * Issue #315: Updated setuptools to hide its own loaded modules during installation of another package. This change will enable setuptools to upgrade (or downgrade) itself even when its own metadata and implementation change. * Prefer vendored packaging library `as recommended <https://github.com/jaraco/setuptools/commit/170657b68f4b92e7e1bf82f5e19a831f... 44af67#commitcomment-9109448>`_. * Issue #312: Restored presence of pkg_resources API tests (doctest) to sdist. * Issue #314: Disabled support for ``setup_requires`` metadata to avoid issue where Setuptools was unable to upgrade over earlier versions. * Pull Request #106: Now write ``setup_requires`` metadata. * Issue #311: Decoupled pkg_resources from setuptools once again. ``pkg_resources`` is now a package instead of a module. * Issue #306: Suppress warnings about Version format except in select scenarios (such as installation). * Pull Request #85: Search egg-base when adding egg-info to manifest. * Upgrade ``packaging`` to 14.5, giving preference to "rc" as designator for release candidates over "c". * PEP-440 warnings are now raised as their own class, ``pkg_resources.PEP440Warning``, instead of RuntimeWarning. * Disabled warnings on empty versions. * Upgrade ``packaging`` to 14.4, fixing an error where there is a different result for if 2.0.5 is contained within >2.0dev and >2.0.dev even though normalization rules should have made them equal. * Issue #296: Add warning when a version is parsed as legacy. This warning will make it easier for developers to recognize deprecated version numbers. * Issue #296: Restored support for ``__hash__`` on parse_version results. * Issue #296: Restored support for ``__getitem__`` and sort operations on parse_version result. * Issue #296: Restore support for iteration over parse_version result, but deprecated that usage with a warning. Fixes failure with buildout. * Implement `PEP 440 <http://legacy.python.org/dev/peps/pep-0440/>`_ within pkg_resources and setuptools. This change deprecates some version numbers such that they will no longer be installable without using the ``===`` escape hatch. See `the changes to test_resources <https://bitbucket.org/pypa/setuptools/commits/dcd552da643c4448056de84c73d56d... d70769d5#chg-setuptools/tests/test_resources.py>`_ for specific examples of version numbers and specifiers that are no longer supported. Setuptools now "vendors" the `packaging <https://github.com/pypa/packaging>`_ library. * Issue #80, Issue #209: Eggs that are downloaded for ``setup_requires``, ``test_requires``, etc. are now placed in a ``./.eggs`` directory instead of directly in the current directory. This choice of location means the files can be readily managed (removed, ignored). Additionally, later phases or invocations of setuptools will not detect the package as already installed and ignore it for permanent install (See #209). This change is indicated as backward-incompatible as installations that depend on the installation in the current directory will need to account for the new location. Systems that ignore ``*.egg`` will probably need to be adapted to ignore ``.eggs``. The files will need to be manually moved or will be retrieved again. Most use cases will require no attention. * Issue #268: When resolving package versions, a VersionConflict now reports which package previously required the conflicting version. * Issue #262: Fixed regression in pip install due to egg-info directories being omitted. Re-opens Issue #118. * Issue #259: Fixed regression with namespace package handling on ``single version, externally managed`` installs. * Issue #100: When building a distribution, Setuptools will no longer match default files using platform-dependent case sensitivity, but rather will only match the files if their case matches exactly. As a result, on Windows and other case-insensitive file systems, files with names such as 'readme.txt' or 'README.TXT' will be omitted from the distribution and a warning will be issued indicating that 'README.txt' was not found. Other filenames affected are: - README.rst - README - setup.cfg - setup.py (or the script name) - test/test*.py Any users producing distributions with filenames that match those above case-insensitively, but not case-sensitively, should rename those files in their repository for better portability. * Pull Request #72: When using ``single_version_externally_managed``, the exclusion list now includes Python 3.2 ``__pycache__`` entries. * Pull Request #76 and Pull Request #78: lines in top_level.txt are now ordered deterministically. * Issue #118: The egg-info directory is now no longer included in the list of outputs. * Issue #258: Setuptools now patches distutils msvc9compiler to recognize the specially-packaged compiler package for easy extension module support on Python 2.6, 2.7, and 3.2. * Issue #237: ``pkg_resources`` now uses explicit detection of Python 2 vs. Python 3, supporting environments where builtins have been patched to make Python 3 look more like Python 2. * Issue #240: Based on real-world performance measures against 5.4, zip manifests are now cached in all circumstances. The ``PKG_RESOURCES_CACHE_ZIP_MANIFESTS`` environment variable is no longer relevant. The observed "memory increase" referenced in the 5.4 release notes and detailed in Issue #154 was likely not an increase over the status quo, but rather only an increase over not storing the zip info at all. * Issue #242: Use absolute imports in svn_utils to avoid issues if the installing package adds an xml module to the path. * Issue #239: Fix typo in 5.5 such that fix did not take. * Issue #239: Setuptools now includes the setup_requires directive on Distribution objects and validates the syntax just like install_requires and tests_require directives. * Issue #236: Corrected regression in execfile implementation for Python 2.6. - Enable testsuite run during build. Added BuildRequires needed for that - Refresh setuptools-5.4.1-create-sitedir.patch - Add fix-type-error.patch: Fix error during test run - Add fix-sle11-test-failure.patch: Fix error during test run on SLE11SP3 - bump to 5.4.1 Changes between 5.4.1 and 3.6 * Python #7776: (ssl_support) Correct usage of host for validation when tunneling for HTTPS. * Issue #154: pkg_resources will now cache the zip manifests rather than re-processing the same file from disk multiple times, but only if the environment variable PKG_RESOURCES_CACHE_ZIP_MANIFESTS is set. Clients that package many modules in the same zip file will see some improvement in startup time by enabling this feature. This feature is not enabled by default because it causes a substantial increase in memory usage. * Issue #185: Make svn tagging work on the new style SVN metadata. Thanks cazabon! * Prune revision control directories (e.g .svn) from base path as well as sub-directories. * Added a Developer Guide to the official documentation. * Some code refactoring and cleanup was done with no intended behavioral changes. * During install_egg_info, the generated lines for namespace package .pth files are now processed even during a dry run. * Issue #202: Implemented more robust cache invalidation for the ZipImporter, building on the work in Issue #168. Special thanks to Jurko Gospodnetic and PJE. * Issue #220: Restored script templates. * Renamed script templates to end with .tmpl now that they no longer need to be processed by 2to3. Fixes spurious syntax errors during build/install. * Issue #218: Re-release of 3.8.1 to signal that it supersedes 4.x. * Incidentally, script templates were updated not to include the triple-quote escaping. * Issue #213: Use legacy StringIO behavior for compatibility under pbr. * Issue #218: Setuptools 3.8.1 superseded 4.0.1, and 4.x was removed from the available versions to install. * Issue #210: setup.py develop now copies scripts in binary mode rather than text mode, matching the behavior of the install command. * Extend Issue #197 workaround to include all Python 3 versions prior to * Issue #193: Improved handling of Unicode filenames when building manifests. - drop not applying patch setuptools-0.6c9-create-sitedir.patch - introduce applying patch with the same effect setuptools-5.4.1-create-sitedir.patch - Update to version 3.6 * Issue #203: Honor proxy settings for Powershell downloader in the bootstrap routine. - Update to version 3.5.2 * Issue #168: More robust handling of replaced zip files and stale caches. Fixes ZipImportError complaining about a 'bad local header'. - Update to version 3.5.1 * Issue #199: Restored ``install._install`` for compatibility with earlier NumPy versions. - Update to version 3.5 * Issue #195: Follow symbolic links in find_packages (restoring behavior broken in 3.4). * Issue #197: On Python 3.1, PKG-INFO is now saved in a UTF-8 encoding instead of ``sys.getpreferredencoding`` to match the behavior on Python 2.6-3.4. * Issue #192: Preferred bootstrap location is now https://bootstrap.pypa.io/ez_setup.py (mirrored from former location). - Update to version 3.4.4 * Issue #184: Correct failure where find_package over-matched packages when directory traversal isn't short-circuited. - Update to version 3.4.3 * Issue #183: Really fix test command with Python 3.1. - Update to version 3.4.2 * Issue #183: Fix additional regression in test command on Python 3.1. - Update to version 3.4.1 * Issue #180: Fix regression in test command not caught by py.test-run tests. - Update to version 3.4 * Issue #176: Add parameter to the test command to support a custom test runner: --test-runner or -r. * Issue #177: Now assume most common invocation to install command on platforms/environments without stack support (issuing a warning). Setuptools now installs naturally on IronPython. Behavior on CPython should be unchanged. - Remove %check, which now depends on pytest and thus introduces a dependency loop (setuptools->pytest->py->setuptools) - Update to version 3.3: * Add ``include`` parameter to ``setuptools.find_packages()``. - Changes from version 3.2: * Pull Request #39: Add support for C++ targets from Cython ``.pyx`` files. * Issue #162: Update dependency on certifi to 1.0.1. * Issue #164: Update dependency on wincertstore to 0.2. - Update to version 2.1: * Issue #129: Suppress inspection of '*.whl' files when searching for files in a zip-imported file. * Issue #131: Fix RuntimeError when constructing an egg fetcher. - Changes from version 2.0.2: * Fix NameError during installation with Python implementations (e.g. Jython) not containing parser module. * Fix NameError in sdist:re_finder. - Changes from version 2.0.1: * Issue #124: Fixed error in list detection in upload_docs. - Changes from version 2.0: * Issue #121: Exempt lib2to3 pickled grammars from DirectorySandbox. * Issue #41: Dropped support for Python 2.4 and Python 2.5. Clients requiring setuptools for those versions of Python should use setuptools 1.x. * Removed setuptools.command.easy_install.HAS_USER_SITE. Clients expecting this boolean variable should use site.ENABLE_USER_SITE instead. * Removed pkg_resources.ImpWrapper. Clients that expected this class should use pkgutil.ImpImporter instead. - Changes from version 1.4.2: * Issue #116: Correct TypeError when reading a local package index on Python 3. - Changes from version 1.4.1: * Issue #114: Use sys.getfilesystemencoding for decoding config in bdist_wininst distributions. * Issue #105 and Issue #113: Establish a more robust technique for determining the terminal encoding - Changes from version 1.4: * Issue #27: easy_install will now use credentials from .pypirc if present for connecting to the package index. * Pull Request #21: Omit unwanted newlines in package_index._encode_auth when the username/password pair length indicates wrapping. - Changes from version 1.3.2: * Issue #99: Fix filename encoding issues in SVN support. - Changes from version 1.3.1: * Remove exuberant warning in SVN support when SVN is not used. - Changes from version 1.3: * Address security vulnerability in SSL match_hostname check as reported in Python #17997. * Prefer backports.ssl_match_hostname <https://pypi.python.org/pypi/backports.ssl_match_hostname>_ for backport implementation if present. * Correct NameError in ssl_support module (socket.error). - Changes from version 1.2: * Issue #26: Add support for SVN 1.7. Special thanks to Philip Thiem for the contribution. * Issue #93: Wheels are now distributed with every release. Note that as reported in Issue #108, as of Pip 1.4, scripts aren't installed properly from wheels. Therefore, if using Pip to install setuptools from a wheel, the easy_install command will not be available. * Setuptools "natural" launcher support, introduced in 1.0, is now officially supported. - Changes from version 1.1.7: * Fixed behavior of NameError handling in 'script template (dev).py' (script launcher for 'develop' installs). * ez_setup.py now ensures partial downloads are cleaned up following a failed download. * Distribute #363 and Issue #55: Skip an sdist test that fails on locales other than UTF-8. - New dependency on python-xml - Fix update-alternatives usage - New upstream version * Fixed behavior of NameError handling in 'script template (dev).py' (script launcher for 'develop' installs). * ez_setup.py now ensures partial downloads are cleaned up following a failed download. * Distribute #363 and Issue #55: Skip an sdist test that fails on locales other than UTF-8. - Update to version 1.1.6: + Distribute #349: sandbox.execfile now opens the target file in binary mode, thus honoring a BOM in the file when compiled. - Changes from version 1.1.5: + Issue #69: Second attempt at fix (logic was reversed). - Changes from version 1.1.4: + Issue #77: Fix error in upload command (Python 2.4). - Changes from version 1.1.3: + Fix NameError in previous patch. - Changes from version 1.1.2: + Issue #69: Correct issue where 404 errors are returned for URLs with fragments in them (such as #egg=). - Changes from version 1.1.1: + Issue #75: Add --insecure option to ez_setup.py to accommodate environments where a trusted SSL connection cannot be validated. + Issue #76: Fix AttributeError in upload command with Python 2.4. - Changes from version 1.1: + Issue #71 (Distribute #333): EasyInstall now puts less emphasis on the condition when a host is blocked via --allow-hosts. + Issue #72: Restored Python 2.4 compatibility in ez_setup.py. - Changes from version 1.0: + Issue #60: On Windows, Setuptools supports deferring to another launcher, such as Vinay Sajip's pylauncher <https://bitbucket.org/pypa/pylauncher>_ (included with Python 3.3) to launch console and GUI scripts and not install its own launcher executables. This experimental functionality is currently only enabled if the SETUPTOOLS_LAUNCHER environment variable is set to "natural". In the future, this behavior may become default, but only after it has matured and seen substantial adoption. The SETUPTOOLS_LAUNCHER also accepts "executable" to force the default behavior of creating launcher executables. + Issue #63: Bootstrap script (ez_setup.py) now prefers Powershell, curl, or wget for retrieving the Setuptools tarball for improved security of the install. The script will still fall back to a simple urlopen on platforms that do not have these tools. + Issue #65: Deprecated the Features functionality. + Issue #52: In VerifyingHTTPSConn, handle a tunnelled (proxied) connection. + Backward-Incompatible Changes: This release includes a couple of backward-incompatible changes, but most if not all users will find 1.0 a drop-in replacement for 0.9. - Issue #50: Normalized API of environment marker support. Specifically, removed line number and filename from SyntaxErrors when returned from pkg_resources.invalid_marker. Any clients depending on the specific string representation of exceptions returned by that function may need to be updated to account for this change. - Issue #50: SyntaxErrors generated by pkg_resources.invalid_marker are normalized for cross-implementation consistency. - Removed --ignore-conflicts-at-my-risk and --delete-conflicting options to easy_install. These options have been deprecated since 0.6a11. - Unify changes format - Re-add Requires: python. Not needed for recent releases, but a lot of SLE packages fail without it. - Update to version 0.9.8: + Issue #53: Fix NameErrors in _vcs_split_rev_from_url. - Changes from version 0.9.7: + Issue #49: Correct AttributeError on PyPy where a hashlib.HASH object does not have a .name attribute. + Issue #34: Documentation now refers to bootstrap script in code repository referenced by bookmark. + Add underscore-separated keys to environment markers (markerlib). - Changes from version 0.9.6: + Issue #44: Test failure on Python 2.4 when MD5 hash doesn't have a .name attribute. - Changes from version 0.9.5: + Python #17980: Fix security vulnerability in SSL certificate validation. - Changes from version 0.9.4: + Issue #43: Fix issue (introduced in 0.9.1) with version resolution when upgrading over other releases of Setuptools. - Changes from version 0.9.3: + Issue #42: Fix new AttributeError introduced in last fix. - Changes from version 0.9.2: + Issue #42: Fix regression where blank checksums would trigger an AttributeError. - Changes from version 0.9.1: + Distribute #386: Allow other positional and keyword arguments to os.open. + Corrected dependency on certifi mis-referenced in 0.9. - Changes from version 0.9: + package_index now validates hashes other than MD5 in download links. - Changes from version 0.8: + Code base now runs on Python 2.4 - Python 3.3 without Python 2to3 conversion. - Use update-alternatives to be parallel-installable with python3-setuptools - Update to version 0.7.4: + Issue #20: Fix comparison of parsed SVN version on Python 3. - Changes from version 0.7.3: + Issue #1: Disable installation of Windows-specific files on non-Windows systems. + Use new sysconfig module with Python 2.7 or >=3.2. - Changes from version 0.7.2: + Issue #14: Use markerlib when the parser module is not available. + Issue #10: ez_setup.py now uses HTTPS to download setuptools from PyPI. - Changes from version 0.7.1: + Fix NameError (Issue #3) again - broken in bad merge. - Changes from version 0.7: + Merged Setuptools and Distribute. See docs/merge.txt for details. + Index URL now defaults to HTTPS. + Added experimental environment marker support. Now clients may designate a PEP-426 environment marker for "extra" dependencies. Setuptools uses this feature in setup.py for optional SSL and certificate validation support on older platforms. Based on Distutils-SIG discussions, the syntax is somewhat tentative. There should probably be a PEP with a firmer spec before the feature should be considered suitable for use. + Added support for SSL certificate validation when installing packages from an HTTPS service. - Use upstream URL, SDPX style licenses - Provide/obsolete python-distribute, which merged into setuptools-0.7.x - re-generated spec file with py2pack based on old spec file: + now builds on Fedora and Mandriva - update to dev snapshot 0.6c12 - RPM version is set to 0.6c11.99.r84273 so that version 0.6c12 will be an upgrade when it comes - this should fix "AttributeError:?'NoneType'?object?has?no?attribute?'clone'" errors with python 2.7 - Removed obsolete python-setuptools-distutils-log.diff from sources. - update to version 0.6c11 + Fix "bdist_wininst upload" trying to upload same file twice - additional changes from 0.6c10 + Fix for the Python 2.6.3 build_ext API change + Ensure C libraries (as opposed to extensions) are also built when doing bdist_egg + Support for SVN 1.6 - removed obsolete python-setuptools-distutils-log patch - improved noarch selection macro - added noarch for suse > 11.1 - fixed spec compatibility with older versions - update to 0.6c9 + python 2.6 compatibility fixes - added patch to create install path if it doesn't exist - removed python-devel from requires ==== python-six ==== - update for multipython build - Restore buildarch for SLE_11 to fix build - Run tests in -doc package to avoid dependency loops * python-setuptools -> python-six -> python-py -> python-setuptools * python-setuptools -> python-six -> python-pytest -> python-setuptools - Actually run the tests. They weren't previously being run. - Update to 1.10.0: - Issue #122: Improve the performance of `six.int2byte` on Python 3. - Pull request #55 and issue #99: Don't add the `winreg` module to `six.moves` on non-Windows platforms. - Pull request #60 and issue #108: Add `six.moves.getcwd` and `six.moves.getcwdu`. - Pull request #64: Add `create_unbound_method` to create unbound methods. - Delete the system egg-info during pre phase: older versions of the package installed it as a directory, the latest update creates a file, and rpm has known issues with replacing this. - Make tests conditional to avoid dependency loop. - don't build/package documentation here: it breaks due to cyclic requirements between six and Sphinx, move doc in its own package - update to version 1.9.0 - Issue #106: Support the `flush` parameter to `six.print_`. - Pull request #48 and issue #15: Add the `python_2_unicode_compatible` decorator. - Pull request #57 and issue #50: Add several compatibility methods for unittest assertions that were renamed between Python 2 and 3. - Issue #105 and pull request #58: Ensure `six.wraps` respects the * updated* and *assigned* arguments. - Issue #102: Add `raise_from` to abstract out Python 3's raise from syntax. - Issue #97: Optimize `six.iterbytes` on Python 2. - Issue #98: Fix `six.moves` race condition in multi-threaded code. - Pull request #51: Add `six.view(keys|values|itmes)`, which provide dictionary views on Python 2.7+. - update to version 1.8.0: * Issue #90: Add six.moves.shlex_quote. * Issue #59: Add six.moves.intern. * Add six.urllib.parse.uses_(fragment|netloc|params|query|relative). * Issue #88: Fix add_metaclass when the class has __slots__ containing "__weakref__" or "__dict__". * Issue #89: Make six use absolute imports. * Issue #85: Always accept *updated* and *assigned* arguments for wraps(). * Issue #86: In reraise(), instantiate the exception if the second argument is None. * Pull request #45: Add six.moves.email_mime_nonmultipart. * Issue #81: Add six.urllib.request.splittag mapping. * Issue #80: Add six.urllib.request.splituser mapping. - update to 1.7.3: - Issue #77: Fix import six on Python 3.4 with a custom loader. - Issue #74: six.moves.xmlrpc_server should map to SimpleXMLRPCServer on Python 2 as documented not xmlrpclib. - update to 1.7.2: - Issue #72: Fix installing on Python 2. - Issue #71: Make the six.moves meta path importer handle reloading of the six module gracefully. - Pull request #30: Implement six.moves with a PEP 302 meta path hook. - Pull request #32: Add six.wraps, which is like functools.wraps but always sets the __wrapped__ attribute. - Pull request #35: Improve add_metaclass, so that it doesn't end up inserting another class into the hierarchy. - Pull request #34: Add import mappings for dummy_thread. - Pull request #33: Add import mappings for UserDict and UserList. - Pull request #31: Select the implementations of dictionary iterator routines at import time for a 20% speed boost. - update to 1.6.1: - Raise an AttributeError for six.moves.X when X is a module not available in the current interpreter. - Raise an AttributeError for every attribute of unimportable modules. - Issue #56: Make the fake modules six.moves puts into sys.modules appear not to have a __path__ unless they are loaded. - Pull request #28: Add support for SplitResult. - Issue #55: Add move mapping for xmlrpc.server. - Pull request #29: Add move for urllib.parse.splitquery. - Include in SLE 12 (FATE #315990) - update to 1.5.2: - Issue #53: Make the fake modules six.moves puts into sys.modules appear not to have a __name__ unless they are loaded. Changes of older releases, see CHANGES files in the Bitbucket repo at https://bitbucket.org/gutworth/six/src/758cacd651f3ee8c9eb2253ca3905a1d46f88... - Bring back argparse requirement for SP3 - update to 1.4.1: - Issue #31: Add six.moves mapping for UserString. - Pull request #12: Add six.add_metaclass, a decorator for adding a metaclass to a class. - Add six.moves.zip_longest and six.moves.filterfalse, which correspond respectively to itertools.izip_longest and itertools.ifilterfalse on Python 2 and itertools.zip_longest and itertools.filterfalse on Python 3. - Issue #25: Add the unichr function, which returns a string for a Unicode codepoint. - Issue #26: Add byte2int function, which complements int2byte. - Issue #23: Allow multiple base classes to be passed to with_metaclass. - Issue #24: Add six.moves.range alias. This exactly the same as the current xrange alias. - Pull request #5: Create six.moves.urllib, which contains abstractions for a bunch of things which are in urllib in Python 3 and spread out across urllib, urllib2, and urlparse in Python 2. - Run testsuite - Build and package HTML documentation - update to 1.3.0: - In six.iter(items/keys/values/lists), passed keyword arguments through to the underlying method. - Add six.iterlists(). - Fix Jython detection. - Removed openSUSE 11.4 spec file workarounds - Update to 1.2.0: * Issue #13: Make iterkeys/itervalues/iteritems return iterators on Python 3 instead of iterables. * Issue #11: Fix maxsize support on Jython. * Add six.next() as an alias for six.advance_iterator(). * Use the builtin next() function for advance_iterator() where is available (2.6+), not just Python 3. * Add the Iterator class for writing portable iterators. - Initial spec file -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org