Hello community, here is the log from the commit of package python-vistir for openSUSE:Factory checked in at 2019-07-30 13:04:43 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-vistir (Old) and /work/SRC/openSUSE:Factory/.python-vistir.new.4126 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-vistir" Tue Jul 30 13:04:43 2019 rev:5 rq:717560 version:0.4.3 Changes: -------- --- /work/SRC/openSUSE:Factory/python-vistir/python-vistir.changes 2019-05-27 08:31:08.535240390 +0200 +++ /work/SRC/openSUSE:Factory/.python-vistir.new.4126/python-vistir.changes 2019-07-30 13:04:43.630397723 +0200 @@ -1,0 +2,8 @@ +Mon Jul 22 11:46:16 UTC 2019 - Tomáš Chvátal <tchva...@suse.com> + +- Update to 0.4.3: + * Added compatibility shim for TimeoutError exception handling. #92 + * Exceptions are no longer suppressed after being handled during vistir.misc.run. #95 + * The signal handler for VistirSpinner will no longer cause deadlocks when CTRL_BREAK_EVENTS occur on windows. #96 + +------------------------------------------------------------------- Old: ---- vistir-0.4.2.tar.gz New: ---- vistir-0.4.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-vistir.spec ++++++ --- /var/tmp/diff_new_pack.V8zYfF/_old 2019-07-30 13:04:44.394397560 +0200 +++ /var/tmp/diff_new_pack.V8zYfF/_new 2019-07-30 13:04:44.398397559 +0200 @@ -18,17 +18,16 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-vistir -Version: 0.4.2 +Version: 0.4.3 Release: 0 Summary: Utilities for filesystems, paths, projects, subprocesses, and more License: ISC Group: Development/Languages/Python URL: https://github.com/sarugaku/vistir Source: https://github.com/sarugaku/vistir/archive/%{version}.tar.gz#/vistir-%{version}.tar.gz -BuildRequires: %{python_module setuptools >= 38.2.5} +BuildRequires: %{python_module setuptools >= 40.8.0} BuildRequires: fdupes BuildRequires: python-rpm-macros -# https://github.com/sarugaku/vistir/issues/67 Requires: python-colorama >= 0.3.4 Requires: python-requests Requires: python-six ++++++ vistir-0.4.2.tar.gz -> vistir-0.4.3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/.azure-pipelines/templates/reinstall-pythons.yml new/vistir-0.4.3/.azure-pipelines/templates/reinstall-pythons.yml --- old/vistir-0.4.2/.azure-pipelines/templates/reinstall-pythons.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/vistir-0.4.3/.azure-pipelines/templates/reinstall-pythons.yml 2019-07-09 06:53:52.000000000 +0200 @@ -0,0 +1,34 @@ +steps: + - script: | + # When you paste this, please make sure the indentation is preserved + # Fail out if any setups fail + set -e + + # Delete old Pythons + rm -rf $AGENT_TOOLSDIRECTORY/Python/2.7.16 + rm -rf $AGENT_TOOLSDIRECTORY/Python/3.5.7 + rm -rf $AGENT_TOOLSDIRECTORY/Python/3.7.3 + [ -e $AGENT_TOOLSDIRECTORY/Python/3.7.2 ] && [ -e $AGENT_TOOLSDIRECTORY/Python/3.5.5 ] && [ -e $AGENT_TOOLSDIRECTORY/Python/2.7.15 ] && exit 0 + # Download new Pythons + azcopy --recursive \ + --source https://vstsagenttools.blob.core.windows.net/tools/hostedtoolcache/linux/Python/2.7.15 \ + --destination $AGENT_TOOLSDIRECTORY/Python/2.7.15 + + azcopy --recursive \ + --source https://vstsagenttools.blob.core.windows.net/tools/hostedtoolcache/linux/Python/3.5.5 \ + --destination $AGENT_TOOLSDIRECTORY/Python/3.5.5 + + azcopy --recursive \ + --source https://vstsagenttools.blob.core.windows.net/tools/hostedtoolcache/linux/Python/3.7.2 \ + --destination $AGENT_TOOLSDIRECTORY/Python/3.7.2 + + # Install new Pythons + original_directory=$PWD + setups=$(find $AGENT_TOOLSDIRECTORY/Python -name setup.sh) + for setup in $setups; do + chmod +x $setup; + cd $(dirname $setup); + ./$(basename $setup); + cd $original_directory; + done; + displayName: 'Workaround: roll back Python versions' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/.azure-pipelines/templates/run-tests.yml new/vistir-0.4.3/.azure-pipelines/templates/run-tests.yml --- old/vistir-0.4.2/.azure-pipelines/templates/run-tests.yml 2019-05-20 00:48:24.000000000 +0200 +++ new/vistir-0.4.3/.azure-pipelines/templates/run-tests.yml 2019-07-09 06:53:52.000000000 +0200 @@ -1,4 +1,7 @@ steps: + - ${{ if eq(parameters.vmImage, 'ubuntu-16.04') }}: + - template: ./reinstall-pythons.yml + - task: UsePythonVersion@0 inputs: versionSpec: $(python.version) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/.github/FUNDING.yml new/vistir-0.4.3/.github/FUNDING.yml --- old/vistir-0.4.2/.github/FUNDING.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/vistir-0.4.3/.github/FUNDING.yml 2019-07-09 06:53:52.000000000 +0200 @@ -0,0 +1,8 @@ +# These are supported funding model platforms + +github: [techalchemy] +patreon: # Replace with a single Patreon username +open_collective: # Replace with a single Open Collective username +ko_fi: # Replace with a single Ko-fi username +tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel +custom: # Replace with a single custom sponsorship URL diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/.gitignore new/vistir-0.4.3/.gitignore --- old/vistir-0.4.2/.gitignore 2019-05-20 00:48:24.000000000 +0200 +++ new/vistir-0.4.3/.gitignore 2019-07-09 06:53:52.000000000 +0200 @@ -38,6 +38,7 @@ # Unit test / coverage reports htmlcov/ +junit/ .tox/ .coverage .coverage.* @@ -57,6 +58,9 @@ local_settings.py db.sqlite3 +# javascript +node_modules/ + # Flask stuff: instance/ .webassets-cache @@ -107,3 +111,7 @@ # pycharm .idea + +# Random caches +pip-wheel-metadata/ +XDG_CACHE_HOME/ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/CHANGELOG.rst new/vistir-0.4.3/CHANGELOG.rst --- old/vistir-0.4.2/CHANGELOG.rst 2019-05-20 00:48:24.000000000 +0200 +++ new/vistir-0.4.3/CHANGELOG.rst 2019-07-09 06:53:52.000000000 +0200 @@ -1,3 +1,16 @@ +0.4.3 (2019-07-09) +================== + +Bug Fixes +--------- + +- Added compatibility shim for ``TimeoutError`` exception handling. `#92 <https://github.com/sarugaku/vistir/issues/92>`_ + +- Exceptions are no longer suppressed after being handled during ``vistir.misc.run``. `#95 <https://github.com/sarugaku/vistir/issues/95>`_ + +- The signal handler for ``VistirSpinner`` will no longer cause deadlocks when ``CTRL_BREAK_EVENTS`` occur on windows. `#96 <https://github.com/sarugaku/vistir/issues/96>`_ + + 0.4.2 (2019-05-19) ================== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/CODE_OF_CONDUCT.md new/vistir-0.4.3/CODE_OF_CONDUCT.md --- old/vistir-0.4.2/CODE_OF_CONDUCT.md 1970-01-01 01:00:00.000000000 +0100 +++ new/vistir-0.4.3/CODE_OF_CONDUCT.md 2019-07-09 06:53:52.000000000 +0200 @@ -0,0 +1,76 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, sex characteristics, gender identity and expression, +level of experience, education, socio-economic status, nationality, personal +appearance, race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or + advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +## Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project e-mail +address, posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at d...@danryan.co. All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, +available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html + +[homepage]: https://www.contributor-covenant.org + +For answers to common questions about this code of conduct, see +https://www.contributor-covenant.org/faq diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/MANIFEST.in new/vistir-0.4.3/MANIFEST.in --- old/vistir-0.4.2/MANIFEST.in 2019-05-20 00:48:24.000000000 +0200 +++ new/vistir-0.4.3/MANIFEST.in 2019-07-09 06:53:52.000000000 +0200 @@ -1,5 +1,6 @@ include LICENSE* README* include CHANGELOG.rst +include CODE_OF_CONDUCT.md include pyproject.toml exclude .editorconfig @@ -11,7 +12,6 @@ exclude appveyor.yml exclude Pipfile* -recursive-exclude .azure-pipelines *.yml recursive-include docs Makefile *.rst *.py *.bat recursive-exclude docs requirements*.txt @@ -20,3 +20,4 @@ prune news prune tasks prune tests +prune .azure-pipelines diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/Pipfile.lock new/vistir-0.4.3/Pipfile.lock --- old/vistir-0.4.2/Pipfile.lock 2019-05-20 00:48:24.000000000 +0200 +++ new/vistir-0.4.3/Pipfile.lock 2019-07-09 06:53:52.000000000 +0200 @@ -52,11 +52,11 @@ }, "aspy.yaml": { "hashes": [ - "sha256:ae249074803e8b957c83fdd82a99160d0d6d26dff9ba81ba608b42eebd7d8cd3", - "sha256:c7390d79f58eb9157406966201abf26da0d56c07e0ff0deadc39c8f4dbc13482" + "sha256:463372c043f70160a9ec950c3f1e4c3a82db5fca01d334b6bc89c7164d744bdc", + "sha256:e7c742382eff2caed61f87a39d13f99109088e5e93f04d76eb8d4b28aa143f45" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==1.2.0" + "version": "==1.3.0" }, "atomicwrites": { "hashes": [ @@ -75,17 +75,18 @@ }, "babel": { "hashes": [ - "sha256:6778d85147d5d85345c14a26aada5e478ab04e39b078b0745ee6870c2b5cf669", - "sha256:8cba50f48c529ca3fa18cf81fa9403be176d374ac4d60738b839122dfaaa3d23" + "sha256:af92e6106cb7c55286b25b38ad7695f8b4efb36a90ba483d7f7a6628c46158ab", + "sha256:e86135ae101e31e2c8ec20a4e0c5220f4eed12487d5cf3f78be7e98d3a57fc28" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==2.6.0" + "version": "==2.7.0" }, "backports.functools-lru-cache": { "hashes": [ "sha256:9d98697f088eb1b0fa451391f91afb5e3ebde16bbdb272819fd091151fda4f1a", "sha256:f0b0e4eba956de51238e17573b7087e852dfe9854afd2e9c873f73fc0ca0a6dd" ], + "markers": "python_version == '2.7'", "version": "==1.5" }, "backports.shutil-get-terminal-size": { @@ -93,7 +94,7 @@ "sha256:0975ba55054c15e346944b38956a4c9cbee9009391e41b86c68990effb8c1f64", "sha256:713e7a8228ae80341c70586d1cc0a8caa5207346927e23d09dcbcaf18eadec80" ], - "markers": "python_version < '3.3'", + "markers": "python_version == '2.7'", "version": "==1.0.0" }, "backports.weakref": { @@ -101,7 +102,7 @@ "sha256:81bc9b51c0abc58edc76aefbbc68c62a787918ffe943a37947e162c3f8e19e82", "sha256:bc4170a29915f8b22c9e7c4939701859650f2eb84184aee80da329ac0b9825c2" ], - "markers": "python_version < '3.3'", + "markers": "python_version == '2.7'", "version": "==1.0.post1" }, "black": { @@ -122,10 +123,10 @@ }, "certifi": { "hashes": [ - "sha256:59b7658e26ca9c7339e00f8f4636cdfe59d34fa37b9b04f6f9e9926b3cece1a5", - "sha256:b26104d6835d1f5e49452a26eb2ff87fe7090b89dfcaee5ea2212697e1e1d7ae" + "sha256:046832c04d4e752f37383b628bc601a7ea7211496b4638f6514d0e5b9acc4939", + "sha256:945e3ba63a0b9f577b1395204e13c3a231f9bc0223888be653286534e5873695" ], - "version": "==2019.3.9" + "version": "==2019.6.16" }, "cffi": { "hashes": [ @@ -162,11 +163,11 @@ }, "cfgv": { "hashes": [ - "sha256:6e9f2feea5e84bc71e56abd703140d7a2c250fc5ba38b8702fd6a68ed4e3b2ef", - "sha256:e7f186d4a36c099a9e20b04ac3108bd8bb9b9257e692ce18c8c3764d5cb12172" + "sha256:32edbe09de6f4521224b87822103a8c16a614d31a894735f7a5b3bcf0eb3c37e", + "sha256:3bd31385cd2bebddbba8012200aaf15aa208539f1b33973759b4d02fc2148da5" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==1.6.0" + "version": "==2.0.0" }, "chardet": { "hashes": [ @@ -175,14 +176,6 @@ ], "version": "==3.0.4" }, - "click": { - "hashes": [ - "sha256:2335065e6395b9e67ca716de5f7526736bfa6ceead690adf616d925bdc622b13", - "sha256:5b94b49521f6456670fdb30cd82a4eca9412788a93fa6dd6df72c94d5a8ff2d7" - ], - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==7.0" - }, "cmarkgfm": { "hashes": [ "sha256:0186dccca79483e3405217993b83b914ba4559fe9a8396efc4eea56561b74061", @@ -225,11 +218,11 @@ }, "configparser": { "hashes": [ - "sha256:27594cf4fc279f321974061ac69164aaebd2749af962ac8686b20503ac0bcf2d", - "sha256:9d51fe0a382f05b6b117c5e601fc219fede4a8c71703324af3f7d883aef476a3" + "sha256:8be81d89d6e7b4c0d4e44bcc525845f6da25821de80cb5e06e7e0238a2899e32", + "sha256:da60d0014fd8c55eb48c1c5354352e363e2d30bbf7057e5e171a468390184c75" ], - "markers": "python_version == '2.7'", - "version": "==3.7.3" + "markers": "python_version < '3.2'", + "version": "==3.7.4" }, "contextlib2": { "hashes": [ @@ -316,7 +309,7 @@ "sha256:6bd0f6ad48ec2aa117d3d141940d484deccda84d4fcd884f5c3d93c23ecd8c79", "sha256:8ad8c4783bf61ded74527bffb48ed9b54166685e4230386a9ed9b1279e2df5b1" ], - "markers": "python_version < '3.4'", + "markers": "python_version == '2.7'", "version": "==1.1.6" }, "execnet": { @@ -366,14 +359,22 @@ "markers": "python_version < '3.2'", "version": "==3.2.3.post2" }, + "futures": { + "hashes": [ + "sha256:9ec02aa7d674acb8618afb127e27fde7fc68994c0437ad759fa094a574adb265", + "sha256:ec0a6cb848cc212002b9828c3e34c675e0c9ff6741dc445cab6fdd4e1085d1f1" + ], + "markers": "python_version < '3.2'", + "version": "==3.2.0" + }, "hypothesis": { "hashes": [ - "sha256:782520620cd42ed4f0a76ea95e05d0c4726387b5e0b0e787b5c16ca86d66f9c5", - "sha256:a9708beea61b45ee11de99aa61e06fe6d559aeccabe5017f9080522449727f18", - "sha256:c761288bb04b1c2c32fbc06981e22ba5b020bcc272aa39e749c77156301b5b13" + "sha256:51d159a6456f537decd811c6e62ce623966cc4748d5da0536b92eaca7006ff46", + "sha256:a2daa11895e1b93a0d11efd15bbc95b56309233a39e0ab6981df207199ed6a04", + "sha256:fd90a319f409f34a173156ca704d6c0c6c0bb30a2e43dbf26aced2c75569e5d5" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==4.23.4" + "version": "==4.24.3" }, "hypothesis-fspaths": { "hashes": [ @@ -383,11 +384,11 @@ }, "identify": { "hashes": [ - "sha256:432c548d6138cb57a3d8f62f079a025a29b8ae34a50dd3b496bbf661818f2bc0", - "sha256:d4401d60bf1938aa3074a352a5cc9044107edf11a6fedd3a1db172c141619b81" + "sha256:0a11379b46d06529795442742a043dc2fa14cd8c995ae81d1febbc5f1c014c87", + "sha256:43a5d24ffdb07bc7e21faf68b08e9f526a1f41f0056073f480291539ef961dfd" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==1.4.3" + "version": "==1.4.5" }, "idna": { "hashes": [ @@ -404,20 +405,21 @@ "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==1.1.0" }, - "importlab": { + "importlib-metadata": { "hashes": [ - "sha256:ab3a0bf77a326de577e3c7f643ec304f83fed93cb1056638560d832413d6e736" + "sha256:6dfd58dfe281e8d240937776065dd3624ad5469c835248219bd16cf2e12dbeb7", + "sha256:cb6ee23b46173539939964df59d3d72c3e0c1b5d54b84f1d8a7e912fe43612db" ], - "markers": "python_version >= '2.7.0'", - "version": "==0.5" + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", + "version": "==0.18" }, - "importlib-metadata": { + "importlib-resources": { "hashes": [ - "sha256:6a0080fdc87c8225e004b00b55bd1eab153a32ef5a11e17c14de81edbb8ed1a7", - "sha256:c0bdce522d5b215c710f237cfc1f58ace432affd3052176bbb719f53e2465256" + "sha256:6e2783b2538bd5a14678284a3962b0660c715e5a0f10243fd5e00a4b5974f50b", + "sha256:d3279fd0f6f847cced9f7acc19bd3e5df54d34f93a2e7bb5f238f81545787078" ], - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==0.11" + "markers": "python_version < '3.7'", + "version": "==1.0.2" }, "invoke": { "hashes": [ @@ -429,11 +431,11 @@ }, "isort": { "hashes": [ - "sha256:49293e2ff590cc8d48bc1f51970548b5b102bf038439ca1af77f352164725628", - "sha256:ba69a4be8474be11720636bc2f0cf66f7054d417d4c1dbc1dfe504bb8e739541" + "sha256:c40744b6bc5162bbb39c1257fe298b7a393861d50978b565f3ccd9cb9de0182a", + "sha256:f57abacd059dc3bd666258d1efb0377510a89777fda3e3274e3c01f7c03ae22d" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==4.3.19" + "version": "==4.3.20" }, "jinja2": { "hashes": [ @@ -609,19 +611,19 @@ }, "pluggy": { "hashes": [ - "sha256:25a1bc1d148c9a640211872b4ff859878d422bccb59c9965e04eed468a0aa180", - "sha256:964cedd2b27c492fbf0b7f58b3284a09cf7f99b0f715941fb24a439b3af1bd1a" + "sha256:0825a152ac059776623854c1543d65a4ad408eb3d33ee114dff91e57ec6ae6fc", + "sha256:b9817417e95936bf75d85d3f8767f7df6cdde751fc40aed3bb3074cbcb77757c" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==0.11.0" + "version": "==0.12.0" }, "pre-commit": { "hashes": [ - "sha256:6ca409d1f22d444af427fb023a33ca8b69625d508a50e1b7eaabd59247c93043", - "sha256:94dd519597f5bff06a4b0df194a79c524b78f4b1534c1ce63241a9d4fb23b926" + "sha256:92e406d556190503630fd801958379861c94884693a032ba66629d0351fdccd4", + "sha256:cccc39051bc2457b0c0f7152a411f8e05e3ba2fe1a5613e4ee0833c1c1985ce3" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==1.16.1" + "version": "==1.17.0" }, "py": { "hashes": [ @@ -655,10 +657,11 @@ }, "pygments": { "hashes": [ - "sha256:5ffada19f6203563680669ee7f53b64dabbeb100eb51b61996085e99c03b284a", - "sha256:e8218dd399a61674745138520d0d4cf2621d7e032439341bc3f647bff125818d" + "sha256:71e430bc85c88a430f000ac1d9b331d2407f681d6f6aec95e8bcfbc3df5b0127", + "sha256:881c4c157e45f30af185c1ffe8d549d48ac9127433f2c380c24b84572ad66297" ], - "version": "==2.3.1" + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", + "version": "==2.4.2" }, "pyparsing": { "hashes": [ @@ -670,11 +673,11 @@ }, "pytest": { "hashes": [ - "sha256:1a8aa4fa958f8f451ac5441f3ac130d9fc86ea38780dd2715e6d5c5882700b24", - "sha256:b8bf138592384bd4e87338cb0f256bf5f615398a649d4bd83915f0e4047a5ca6" + "sha256:4a784f1d4f2ef198fe9b7aef793e9fa1a3b2f84e822d9b3a64a181293a572d45", + "sha256:926855726d8ae8371803f7b2e6ec0a69953d9c6311fa7c3b6c1b929ff92d27da" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==4.5.0" + "version": "==4.6.3" }, "pytest-cov": { "hashes": [ @@ -700,11 +703,11 @@ }, "pytest-xdist": { "hashes": [ - "sha256:b0bb4b0293ee8657b9eb3ff334a3b6aac4db74fd4a86b81e1982c879237a47eb", - "sha256:f83a485293e81fd57c8a5a85a3f12473a532c5ca7dec518857cbb72766bb526c" + "sha256:3489d91516d7847db5eaecff7a2e623dba68984835dbe6cedb05ae126c4fb17f", + "sha256:501795cb99e567746f30fe78850533d4cd500c93794128e6ab9988e92a17b1f8" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==1.28.0" + "version": "==1.29.0" }, "pytype": { "hashes": [ @@ -722,19 +725,19 @@ }, "pyyaml": { "hashes": [ - "sha256:1adecc22f88d38052fb787d959f003811ca858b799590a5eaa70e63dca50308c", - "sha256:436bc774ecf7c103814098159fbb84c2715d25980175292c648f2da143909f95", - "sha256:460a5a4248763f6f37ea225d19d5c205677d8d525f6a83357ca622ed541830c2", - "sha256:5a22a9c84653debfbf198d02fe592c176ea548cccce47553f35f466e15cf2fd4", - "sha256:7a5d3f26b89d688db27822343dfa25c599627bc92093e788956372285c6298ad", - "sha256:9372b04a02080752d9e6f990179a4ab840227c6e2ce15b95e1278456664cf2ba", - "sha256:a5dcbebee834eaddf3fa7366316b880ff4062e4bcc9787b78c7fbb4a26ff2dd1", - "sha256:aee5bab92a176e7cd034e57f46e9df9a9862a71f8f37cad167c6fc74c65f5b4e", - "sha256:c51f642898c0bacd335fc119da60baae0824f2cde95b0330b56c0553439f0673", - "sha256:c68ea4d3ba1705da1e0d85da6684ac657912679a649e8868bd850d2c299cce13", - "sha256:e23d0cc5299223dcc37885dae624f382297717e459ea24053709675a976a3e19" + "sha256:57acc1d8533cbe51f6662a55434f0dbecfa2b9eaf115bede8f6fd00115a0c0d3", + "sha256:588c94b3d16b76cfed8e0be54932e5729cc185caffaa5a451e7ad2f7ed8b4043", + "sha256:68c8dd247f29f9a0d09375c9c6b8fdc64b60810ebf07ba4cdd64ceee3a58c7b7", + "sha256:70d9818f1c9cd5c48bb87804f2efc8692f1023dac7f1a1a5c61d454043c1d265", + "sha256:86a93cccd50f8c125286e637328ff4eef108400dd7089b46a7be3445eecfa391", + "sha256:a0f329125a926876f647c9fa0ef32801587a12328b4a3c741270464e3e4fa778", + "sha256:a3c252ab0fa1bb0d5a3f6449a4826732f3eb6c0270925548cac342bc9b22c225", + "sha256:b4bb4d3f5e232425e25dda21c070ce05168a786ac9eda43768ab7f3ac2770955", + "sha256:cd0618c5ba5bda5f4039b9398bb7fb6a317bb8298218c3de25c47c4740e4b95e", + "sha256:ceacb9e5f8474dcf45b940578591c7f3d960e82f926c707788a570b51ba59190", + "sha256:fe6a88094b64132c4bb3b631412e90032e8cfe9745a58370462240b8cb7553cd" ], - "version": "==5.1" + "version": "==5.1.1" }, "readme-renderer": { "extras": [ @@ -748,11 +751,11 @@ }, "requests": { "hashes": [ - "sha256:502a824f31acdacb3a35b6690b5fbf0bc41d63a24a45c4004352b0242707598e", - "sha256:7bf2a778576d825600030a110f3c0e3e8edc51dfaafe1c146e39a2027784957b" + "sha256:11e007a8a2aa0323f5a921e9e6a2d7e4e67d9877e85773fba9ba6419025cbeb4", + "sha256:9cf5292fcd0f598c671cfc1e0d7d1a7f13bb8085e9a590f48c010551dc6c4b31" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==2.21.0" + "version": "==2.22.0" }, "requests-toolbelt": { "hashes": [ @@ -779,20 +782,20 @@ }, "scandir": { "hashes": [ - "sha256:04b8adb105f2ed313a7c2ef0f1cf7aff4871aa7a1883fa4d8c44b5551ab052d6", - "sha256:1444134990356c81d12f30e4b311379acfbbcd03e0bab591de2696a3b126d58e", - "sha256:1b5c314e39f596875e5a95dd81af03730b338c277c54a454226978d5ba95dbb6", - "sha256:346619f72eb0ddc4cf355ceffd225fa52506c92a2ff05318cfabd02a144e7c4e", - "sha256:44975e209c4827fc18a3486f257154d34ec6eaec0f90fef0cca1caa482db7064", - "sha256:61859fd7e40b8c71e609c202db5b0c1dbec0d5c7f1449dec2245575bdc866792", - "sha256:a5e232a0bf188362fa00123cc0bb842d363a292de7126126df5527b6a369586a", - "sha256:c14701409f311e7a9b7ec8e337f0815baf7ac95776cc78b419a1e6d49889a383", - "sha256:c7708f29d843fc2764310732e41f0ce27feadde453261859ec0fca7865dfc41b", - "sha256:c9009c527929f6e25604aec39b0a43c3f831d2947d89d6caaab22f057b7055c8", - "sha256:f5c71e29b4e2af7ccdc03a020c626ede51da471173b4a6ad1e904f2b2e04b4bd" + "sha256:2586c94e907d99617887daed6c1d102b5ca28f1085f90446554abf1faf73123e", + "sha256:2ae41f43797ca0c11591c0c35f2f5875fa99f8797cb1a1fd440497ec0ae4b022", + "sha256:2b8e3888b11abb2217a32af0766bc06b65cc4a928d8727828ee68af5a967fa6f", + "sha256:2c712840c2e2ee8dfaf36034080108d30060d759c7b73a01a52251cc8989f11f", + "sha256:4d4631f6062e658e9007ab3149a9b914f3548cb38bfb021c64f39a025ce578ae", + "sha256:67f15b6f83e6507fdc6fca22fedf6ef8b334b399ca27c6b568cbfaa82a364173", + "sha256:7d2d7a06a252764061a020407b997dd036f7bd6a175a5ba2b345f0a357f0b3f4", + "sha256:8c5922863e44ffc00c5c693190648daa6d15e7c1207ed02d6f46a8dcc2869d32", + "sha256:92c85ac42f41ffdc35b6da57ed991575bdbe69db895507af88b9f499b701c188", + "sha256:b24086f2375c4a094a6b51e78b4cf7ca16c721dcee2eddd7aa6494b42d6d519d", + "sha256:cb925555f43060a1745d0a321cca94bcea927c50114b623d73179189a4e100ac" ], "markers": "python_version < '3.5'", - "version": "==1.9.0" + "version": "==1.10.0" }, "six": { "hashes": [ @@ -811,11 +814,11 @@ }, "sphinx": { "hashes": [ - "sha256:423280646fb37944dd3c85c58fb92a20d745793a9f6c511f59da82fa97cd404b", - "sha256:de930f42600a4fef993587633984cc5027dedba2464bcf00ddace26b40f8d9ce" + "sha256:9f3e17c64b34afc653d7c5ec95766e03043cc6d80b0de224f59b6b6e19d37c3c", + "sha256:c7658aab75c920288a8cf6f09f244c6cfdae30d82d803ac1634d9f223a80ca08" ], - "markers": "python_version >= '3.5'", - "version": "==2.0.1" + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", + "version": "==1.8.5" }, "sphinx-rtd-theme": { "hashes": [ @@ -873,11 +876,11 @@ }, "sphinxcontrib-websupport": { "hashes": [ - "sha256:68ca7ff70785cbe1e7bccc71a48b5b6d965d79ca50629606c7861a21b206d9dd", - "sha256:9de47f375baf1ea07cdb3436ff39d7a9c76042c10a769c52353ec46e4e8fc3b9" + "sha256:1501befb0fdf1d1c29a800fdbf4ef5dc5369377300ddbdd16d2cd40e54c6eefc", + "sha256:e02f717baf02d0b6c3dd62cf81232ffca4c9d5c331e03766982e3ff9f1d2bc3f" ], - "markers": "python_version<='3.4'", - "version": "==1.1.0" + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", + "version": "==1.1.2" }, "toml": { "hashes": [ @@ -889,11 +892,11 @@ }, "tqdm": { "hashes": [ - "sha256:d385c95361699e5cf7622485d9b9eae2d4864b21cd5a2374a9c381ffed701021", - "sha256:e22977e3ebe961f72362f6ddfb9197cc531c9737aaf5f607ef09740c849ecd05" + "sha256:0a860bf2683fdbb4812fe539a6c22ea3f1777843ea985cb8c3807db448a0f7ab", + "sha256:e288416eecd4df19d12407d0c913cbf77aa8009d7fddb18f632aded3bdbdda6b" ], "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==4.31.1" + "version": "==4.32.1" }, "twine": { "hashes": [ @@ -939,19 +942,19 @@ }, "urllib3": { "hashes": [ - "sha256:2393a695cd12afedd0dcb26fe5d50d0cf248e5a66f75dbd89a3d4eb333a61af4", - "sha256:a637e5fae88995b256e3409dc4d52c2e2e0ba32c42a6365fee8bbd2238de3cfb" + "sha256:b246607a25ac80bedac05c6f282e3cdaf3afb65420fd024ac94435cabe6e18d1", + "sha256:dbe59173209418ae49d485b87d1681aefa36252ee85884c31346debd19463232" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' and python_version < '4'", - "version": "==1.24.3" + "version": "==1.25.3" }, "virtualenv": { "hashes": [ - "sha256:15ee248d13e4001a691d9583948ad3947bcb8a289775102e4c4aa98a8b7a6d73", - "sha256:bfc98bb9b42a3029ee41b96dc00a34c2f254cbf7716bec824477b2c82741a5c4" + "sha256:b7335cddd9260a3dd214b73a2521ffc09647bde3e9457fcca31dc3be3999d04a", + "sha256:d28ca64c0f3f125f59cabf13e0a150e1c68e5eea60983cc4395d88c584495783" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==16.5.0" + "version": "==16.6.1" }, "vistir": { "editable": true, @@ -992,20 +995,20 @@ }, "zipp": { "hashes": [ - "sha256:46dfd547d9ccbf8bdc26ecea52818046bb28509f12bb6a0de1cd66ab06e9a9be", - "sha256:d7ac25f895fb65bff937b381353c14eb1fa23d35f40abd72a5342cd57eb57fd1" + "sha256:8c1019c6aad13642199fbe458275ad6a84907634cc9f0989877ccc4a2840139d", + "sha256:ca943a7e809cc12257001ccfb99e3563da9af99d52f261725e96dfe0f9275bc3" ], "markers": "python_version >= '2.7'", - "version": "==0.5.0" + "version": "==0.5.1" } }, "develop": { "certifi": { "hashes": [ - "sha256:59b7658e26ca9c7339e00f8f4636cdfe59d34fa37b9b04f6f9e9926b3cece1a5", - "sha256:b26104d6835d1f5e49452a26eb2ff87fe7090b89dfcaee5ea2212697e1e1d7ae" + "sha256:046832c04d4e752f37383b628bc601a7ea7211496b4638f6514d0e5b9acc4939", + "sha256:945e3ba63a0b9f577b1395204e13c3a231f9bc0223888be653286534e5873695" ], - "version": "==2019.3.9" + "version": "==2019.6.16" }, "chardet": { "hashes": [ @@ -1150,11 +1153,11 @@ }, "requests": { "hashes": [ - "sha256:502a824f31acdacb3a35b6690b5fbf0bc41d63a24a45c4004352b0242707598e", - "sha256:7bf2a778576d825600030a110f3c0e3e8edc51dfaafe1c146e39a2027784957b" + "sha256:11e007a8a2aa0323f5a921e9e6a2d7e4e67d9877e85773fba9ba6419025cbeb4", + "sha256:9cf5292fcd0f598c671cfc1e0d7d1a7f13bb8085e9a590f48c010551dc6c4b31" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==2.21.0" + "version": "==2.22.0" }, "toml": { "hashes": [ @@ -1174,11 +1177,11 @@ }, "urllib3": { "hashes": [ - "sha256:2393a695cd12afedd0dcb26fe5d50d0cf248e5a66f75dbd89a3d4eb333a61af4", - "sha256:a637e5fae88995b256e3409dc4d52c2e2e0ba32c42a6365fee8bbd2238de3cfb" + "sha256:b246607a25ac80bedac05c6f282e3cdaf3afb65420fd024ac94435cabe6e18d1", + "sha256:dbe59173209418ae49d485b87d1681aefa36252ee85884c31346debd19463232" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' and python_version < '4'", - "version": "==1.24.3" + "version": "==1.25.3" }, "wheel": { "hashes": [ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/azure-pipelines.yml new/vistir-0.4.3/azure-pipelines.yml --- old/vistir-0.4.2/azure-pipelines.yml 2019-05-20 00:48:24.000000000 +0200 +++ new/vistir-0.4.3/azure-pipelines.yml 2019-07-09 06:53:52.000000000 +0200 @@ -43,6 +43,7 @@ maxParallel: 4 steps: - template: .azure-pipelines/templates/run-tests.yml + - template: .azure-pipelines/templates/run-coverage.yml - job: TestMacOS pool: @@ -69,4 +70,4 @@ pool: vmImage: ubuntu-16.04 steps: - - template: .azure-pipelines/templates/build-package.yml \ No newline at end of file + - template: .azure-pipelines/templates/build-package.yml diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/src/vistir/__init__.py new/vistir-0.4.3/src/vistir/__init__.py --- old/vistir-0.4.2/src/vistir/__init__.py 2019-05-20 00:48:24.000000000 +0200 +++ new/vistir-0.4.3/src/vistir/__init__.py 2019-07-09 06:53:52.000000000 +0200 @@ -36,7 +36,7 @@ from .path import create_tracked_tempdir, create_tracked_tempfile, mkdir_p, rmtree from .spin import create_spinner -__version__ = "0.4.2" +__version__ = "0.4.3" __all__ = [ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/src/vistir/compat.py new/vistir-0.4.3/src/vistir/compat.py --- old/vistir-0.4.2/src/vistir/compat.py 2019-05-20 00:48:24.000000000 +0200 +++ new/vistir-0.4.3/src/vistir/compat.py 2019-07-09 06:53:52.000000000 +0200 @@ -87,10 +87,19 @@ self.errno = errno.EACCES super(PermissionError, self).__init__(*args, **kwargs) + class TimeoutError(OSError): + """Timeout expired.""" + + def __init__(self, *args, **kwargs): + self.errno = errno.ETIMEDOUT + super(TimeoutError, self).__init__(*args, **kwargs) + class IsADirectoryError(OSError): """The command does not work on directories""" - pass + def __init__(self, *args, **kwargs): + self.errno = errno.EISDIR + super(IsADirectoryError, self).__init__(*args, **kwargs) class FileExistsError(OSError): def __init__(self, *args, **kwargs): @@ -105,6 +114,7 @@ PermissionError, IsADirectoryError, FileExistsError, + TimeoutError, ) from io import StringIO diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/src/vistir/misc.py new/vistir-0.4.3/src/vistir/misc.py --- old/vistir-0.4.2/src/vistir/misc.py 2019-05-20 00:48:24.000000000 +0200 +++ new/vistir-0.4.3/src/vistir/misc.py 2019-07-09 06:53:52.000000000 +0200 @@ -20,6 +20,7 @@ Iterable, Path, StringIO, + TimeoutError, fs_str, is_bytes, partialmethod, @@ -194,11 +195,22 @@ stderr_line = stream_contents["stderr"] if not (stdout_line or stderr_line): break + last_changed = 0 + display_line = "" for stream_name in stream_contents.keys(): if stream_contents[stream_name] and stream_name in stream_results: line = stream_contents[stream_name] stream_results[stream_name].append(line) - display_line = fs_str("{0}".format(line)) + display_line = ( + fs_str("{0}".format(line)) + if stream_name == "stderr" + else display_line + ) + if display_line and last_changed > 10: + last_changed = 0 + display_line = "" + elif display_line: + last_changed += 1 if len(display_line) > maxlen: display_line = "{0}...".format(display_line[:maxlen]) if verbose: @@ -256,18 +268,15 @@ c = _spawn_subprocess( cmd, env=env, block=block, cwd=cwd, combine_stderr=combine_stderr ) - except Exception as exc: + except Exception as exc: # pragma: no cover import traceback - formatted_tb = "".join( - traceback.format_exception(*sys.exc_info()) - ) # pragma: no cover - sys.stderr.write( # pragma: no cover - "Error while executing command %s:" - % to_native_string(" ".join(cmd._parts)) # pragma: no cover - ) # pragma: no cover - sys.stderr.write(formatted_tb) # pragma: no cover - raise exc # pragma: no cover + formatted_tb = "".join(traceback.format_exception(*sys.exc_info())) + sys.stderr.write( + "Error while executing command %s:" % to_native_string(" ".join(cmd._parts)) + ) + sys.stderr.write(formatted_tb) + raise exc if not block: c.stdin.close() spinner_orig_text = "" @@ -290,9 +299,10 @@ else: try: c.out, c.err = c.communicate() - except (SystemExit, TimeoutError): + except (SystemExit, KeyboardInterrupt, TimeoutError): # pragma: no cover c.terminate() c.out, c.err = c.communicate() + raise if not block: c.wait() c.out = to_text("{0}".format(c.out)) if c.out else fs_str("") @@ -371,7 +381,7 @@ spinner=sp, combine_stderr=combine_stderr, start_text=start_text, - write_to_stdout=True, + write_to_stdout=write_to_stdout, ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/src/vistir/spin.py new/vistir-0.4.3/src/vistir/spin.py --- old/vistir-0.4.2/src/vistir/spin.py 2019-05-20 00:48:24.000000000 +0200 +++ new/vistir-0.4.3/src/vistir/spin.py 2019-07-09 06:53:52.000000000 +0200 @@ -41,7 +41,6 @@ """ spinner.fail() spinner.stop() - sys.exit(0) else: # pragma: no cover @@ -55,7 +54,6 @@ """ spinner.red.fail("✘") spinner.stop() - sys.exit(0) CLEAR_LINE = chr(27) + "[K" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vistir-0.4.2/tox.ini new/vistir-0.4.3/tox.ini --- old/vistir-0.4.2/tox.ini 2019-05-20 00:48:24.000000000 +0200 +++ new/vistir-0.4.3/tox.ini 2019-07-09 06:53:52.000000000 +0200 @@ -8,17 +8,18 @@ LC_ALL = en_US.UTF-8 deps = -e .[spinner,tests] - coverage + coverage<5 commands = coverage run --parallel-mode -m pytest --timeout 300 [] install_command = python -m pip install {opts} {packages} usedevelop = True [testenv:coverage-report] -deps = coverage +deps = coverage<5 skip_install = true commands = coverage combine - coverage report + # coverage report + coverage html [testenv:docs] deps =