Hello community, here is the log from the commit of package python-psutil for openSUSE:Factory checked in at 2018-01-07 17:21:00 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-psutil (Old) and /work/SRC/openSUSE:Factory/.python-psutil.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-psutil" Sun Jan 7 17:21:00 2018 rev:41 rq:561485 version:5.4.3 Changes: -------- --- /work/SRC/openSUSE:Factory/python-psutil/python-psutil.changes 2017-12-10 18:17:05.248216426 +0100 +++ /work/SRC/openSUSE:Factory/.python-psutil.new/python-psutil.changes 2018-01-07 17:21:01.486255362 +0100 @@ -1,0 +2,12 @@ +Wed Jan 3 22:40:21 UTC 2018 - [email protected] + +- specfile: + * update copyright year + +- update to version 5.4.3: + * Enhancements + + 775: disk_partitions() on Windows return mount points. + * Bug fixes + + 1193: pids() may return False on OSX. + +------------------------------------------------------------------- Old: ---- psutil-5.4.2.tar.gz New: ---- psutil-5.4.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-psutil.spec ++++++ --- /var/tmp/diff_new_pack.j6p2Vu/_old 2018-01-07 17:21:02.826192555 +0100 +++ /var/tmp/diff_new_pack.j6p2Vu/_new 2018-01-07 17:21:02.826192555 +0100 @@ -1,7 +1,7 @@ # # spec file for package python-psutil # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,7 +20,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-psutil -Version: 5.4.2 +Version: 5.4.3 Release: 0 Summary: A process utilities module for Python License: BSD-3-Clause ++++++ psutil-5.4.2.tar.gz -> psutil-5.4.3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-5.4.2/CREDITS new/psutil-5.4.3/CREDITS --- old/psutil-5.4.2/CREDITS 2017-11-24 14:07:10.000000000 +0100 +++ new/psutil-5.4.3/CREDITS 2017-12-30 10:22:01.000000000 +0100 @@ -414,8 +414,8 @@ I: 823 N: Jake Omann -E: https://github.com/jhomann -I: 816 +E: https://github.com/jomann09 +I: 816, 775 N: Jeremy Humble W: https://github.com/jhumble diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-5.4.2/HISTORY.rst new/psutil-5.4.3/HISTORY.rst --- old/psutil-5.4.2/HISTORY.rst 2017-12-07 12:57:23.000000000 +0100 +++ new/psutil-5.4.3/HISTORY.rst 2018-01-01 21:21:36.000000000 +0100 @@ -1,5 +1,18 @@ *Bug tracker at https://github.com/giampaolo/psutil/issues* +5.4.3 +===== + +*2018-01-01* + +**Enhancements** + +- 775_: disk_partitions() on Windows return mount points. + +**Bug fixes** + +- 1193_: pids() may return False on OSX. + 5.4.2 ===== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-5.4.2/Makefile new/psutil-5.4.3/Makefile --- old/psutil-5.4.2/Makefile 2017-12-07 13:02:25.000000000 +0100 +++ new/psutil-5.4.3/Makefile 2018-01-01 21:32:25.000000000 +0100 @@ -217,6 +217,10 @@ pre-release: ## Check if we're ready to produce a new release. rm -rf dist ${MAKE} install + ${MAKE} generate-manifest + git diff MANIFEST.in > /dev/null # ...otherwise 'git diff-index HEAD' will complain + ${MAKE} win-download-wheels + ${MAKE} sdist $(PYTHON) -c \ "from psutil import __version__ as ver; \ doc = open('docs/index.rst').read(); \ @@ -224,11 +228,7 @@ assert ver in doc, '%r not in docs/index.rst' % ver; \ assert ver in history, '%r not in HISTORY.rst' % ver; \ assert 'XXXX' not in history, 'XXXX in HISTORY.rst';" - ${MAKE} generate-manifest - git diff MANIFEST.in > /dev/null # ...otherwise 'git diff-index HEAD' will complain - $(PYTHON) -c "import subprocess, sys; out = subprocess.check_output('git diff-index HEAD --', shell=True).strip(); sys.exit('there are uncommitted changes:\n%s' % out) if out else sys.exit(0);" - ${MAKE} win-download-wheels - ${MAKE} sdist + $(PYTHON) -c "import subprocess, sys; out = subprocess.check_output('git diff --quiet && git diff --cached --quiet', shell=True).strip(); sys.exit('there are uncommitted changes:\n%s' % out) if out else 0 ;" release: ## Create a release (down/uploads tar.gz, wheels, git tag release). ${MAKE} pre-release diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-5.4.2/PKG-INFO new/psutil-5.4.3/PKG-INFO --- old/psutil-5.4.2/PKG-INFO 2017-12-07 13:03:12.000000000 +0100 +++ new/psutil-5.4.3/PKG-INFO 2018-01-01 21:33:10.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: psutil -Version: 5.4.2 +Version: 5.4.3 Summary: Cross-platform lib for process and system monitoring in Python. Home-page: https://github.com/giampaolo/psutil Author: Giampaolo Rodola diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-5.4.2/docs/index.rst new/psutil-5.4.3/docs/index.rst --- old/psutil-5.4.2/docs/index.rst 2017-12-07 12:59:24.000000000 +0100 +++ new/psutil-5.4.3/docs/index.rst 2018-01-01 21:22:27.000000000 +0100 @@ -917,8 +917,8 @@ ``callback`` is a function which gets called when one of the processes being waited on is terminated and a :class:`Process` instance is passed as callback argument). - This tunction will return as soon as all processes terminate or when - *timeout* occurs, if specified. + This function will return as soon as all processes terminate or when + *timeout* (seconds) occurs. Differently from :meth:`Process.wait` it will not raise :class:`TimeoutExpired` if timeout occurs. A typical use case may be: @@ -1941,14 +1941,15 @@ .. method:: wait(timeout=None) - Wait for process termination and if the process is a children of the - current one also return the exit code, else ``None``. On Windows there's + Wait for process termination and if the process is a child of the current + one also return the exit code, else ``None``. On Windows there's no such limitation (exit code is always returned). If the process is already terminated immediately return ``None`` instead of raising - :class:`NoSuchProcess`. If *timeout* is specified and process is still - alive raise :class:`TimeoutExpired` exception. It can also be used in a - non-blocking fashion by specifying ``timeout=0`` in which case it will - either return immediately or raise :class:`TimeoutExpired`. + :class:`NoSuchProcess`. + *timeout* is expressed in seconds. If specified and the process is still + alive raise :class:`TimeoutExpired` exception. + ``timeout=0`` can be used in non-blocking apps: it will either return + immediately or raise :class:`TimeoutExpired`. To wait for multiple processes use :func:`psutil.wait_procs()`. >>> import psutil @@ -2589,8 +2590,12 @@ Timeline ======== +- 2018-01-01: + `5.4.3 <https://pypi.python.org/pypi?name=psutil&version=5.4.3&:action=files>`__ - + `what's new <https://github.com/giampaolo/psutil/blob/master/HISTORY.rst#542>`__ - + `diff <https://github.com/giampaolo/psutil/compare/release-5.4.2...release-5.4.3#files_bucket>`__ - 2017-12-07: - `5.4.1 <https://pypi.python.org/pypi?name=psutil&version=5.4.2&:action=files>`__ - + `5.4.2 <https://pypi.python.org/pypi?name=psutil&version=5.4.2&:action=files>`__ - `what's new <https://github.com/giampaolo/psutil/blob/master/HISTORY.rst#542>`__ - `diff <https://github.com/giampaolo/psutil/compare/release-5.4.1...release-5.4.2#files_bucket>`__ - 2017-11-08: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-5.4.2/psutil/__init__.py new/psutil-5.4.3/psutil/__init__.py --- old/psutil-5.4.2/psutil/__init__.py 2017-12-07 12:56:04.000000000 +0100 +++ new/psutil-5.4.3/psutil/__init__.py 2017-12-09 12:29:06.000000000 +0100 @@ -219,7 +219,7 @@ ] __all__.extend(_psplatform.__extra__all__) __author__ = "Giampaolo Rodola'" -__version__ = "5.4.2" +__version__ = "5.4.3" version_info = tuple([int(num) for num in __version__.split('.')]) AF_LINK = _psplatform.AF_LINK POWER_TIME_UNLIMITED = _common.POWER_TIME_UNLIMITED diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-5.4.2/psutil/_psosx.py new/psutil-5.4.3/psutil/_psosx.py --- old/psutil-5.4.2/psutil/_psosx.py 2017-12-04 13:50:52.000000000 +0100 +++ new/psutil-5.4.3/psutil/_psosx.py 2017-12-09 12:29:06.000000000 +0100 @@ -309,12 +309,11 @@ # https://travis-ci.org/giampaolo/psutil/jobs/309619941 try: Process(0).create_time() + ls.append(0) except NoSuchProcess: - return False + pass except AccessDenied: ls.append(0) - else: - ls.append(0) return ls diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-5.4.2/psutil/_psutil_windows.c new/psutil-5.4.3/psutil/_psutil_windows.c --- old/psutil-5.4.2/psutil/_psutil_windows.c 2017-11-24 14:07:15.000000000 +0100 +++ new/psutil-5.4.3/psutil/_psutil_windows.c 2017-12-30 10:22:01.000000000 +0100 @@ -2489,6 +2489,7 @@ #define _ARRAYSIZE(a) (sizeof(a)/sizeof(a[0])) #endif + /* * Return disk partitions as a list of tuples such as * (drive_letter, drive_letter, type, "") @@ -2498,11 +2499,15 @@ DWORD num_bytes; char drive_strings[255]; char *drive_letter = drive_strings; + char mp_buf[MAX_PATH]; + char mp_path[MAX_PATH]; int all; int type; int ret; unsigned int old_mode = 0; char opts[20]; + HANDLE mp_h; + BOOL mp_flag= TRUE; LPTSTR fs_type[MAX_PATH + 1] = { 0 }; DWORD pflags = 0; PyObject *py_all; @@ -2573,6 +2578,40 @@ strcat_s(opts, _countof(opts), "rw"); if (pflags & FILE_VOLUME_IS_COMPRESSED) strcat_s(opts, _countof(opts), ",compressed"); + + // Check for mount points on this volume and add/get info + // (checks first to know if we can even have mount points) + if (pflags & FILE_SUPPORTS_REPARSE_POINTS) { + + mp_h = FindFirstVolumeMountPoint(drive_letter, mp_buf, MAX_PATH); + if (mp_h != INVALID_HANDLE_VALUE) { + while (mp_flag) { + + // Append full mount path with drive letter + strcpy_s(mp_path, _countof(mp_path), drive_letter); + strcat_s(mp_path, _countof(mp_path), mp_buf); + + py_tuple = Py_BuildValue( + "(ssss)", + drive_letter, + mp_path, + fs_type, // Typically NTFS + opts); + + if (!py_tuple || PyList_Append(py_retlist, py_tuple) == -1) { + FindVolumeMountPointClose(mp_h); + goto error; + } + + Py_DECREF(py_tuple); + + // Continue looking for more mount points + mp_flag = FindNextVolumeMountPoint(mp_h, mp_buf, MAX_PATH); + } + FindVolumeMountPointClose(mp_h); + } + + } } if (strlen(opts) > 0) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-5.4.2/psutil/tests/test_process.py new/psutil-5.4.3/psutil/tests/test_process.py --- old/psutil-5.4.2/psutil/tests/test_process.py 2017-12-05 09:57:29.000000000 +0100 +++ new/psutil-5.4.3/psutil/tests/test_process.py 2017-12-30 10:22:01.000000000 +0100 @@ -9,6 +9,7 @@ import collections import errno import getpass +import itertools import os import signal import socket @@ -910,8 +911,6 @@ p.cpu_affinity(set(all_cpus)) p.cpu_affinity(tuple(all_cpus)) - # TODO: temporary, see: https://github.com/MacPython/psutil/issues/1 - @unittest.skipIf(LINUX, "temporary") @unittest.skipIf(not HAS_CPU_AFFINITY, 'not supported') def test_cpu_affinity_errs(self): sproc = get_test_subprocess() @@ -922,6 +921,24 @@ self.assertRaises(TypeError, p.cpu_affinity, [0, "1"]) self.assertRaises(ValueError, p.cpu_affinity, [0, -1]) + @unittest.skipIf(not HAS_CPU_AFFINITY, 'not supported') + def test_cpu_affinity_all_combinations(self): + p = psutil.Process() + initial = p.cpu_affinity() + assert initial, initial + self.addCleanup(p.cpu_affinity, initial) + + # All possible CPU set combinations. + combos = [] + for l in range(0, len(initial) + 1): + for subset in itertools.combinations(initial, l): + if subset: + combos.append(list(subset)) + + for combo in combos: + p.cpu_affinity(combo) + self.assertEqual(p.cpu_affinity(), combo) + # TODO: #595 @unittest.skipIf(BSD, "broken on BSD") # can't find any process file on Appveyor diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/psutil-5.4.2/psutil.egg-info/PKG-INFO new/psutil-5.4.3/psutil.egg-info/PKG-INFO --- old/psutil-5.4.2/psutil.egg-info/PKG-INFO 2017-12-07 13:03:12.000000000 +0100 +++ new/psutil-5.4.3/psutil.egg-info/PKG-INFO 2018-01-01 21:33:10.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: psutil -Version: 5.4.2 +Version: 5.4.3 Summary: Cross-platform lib for process and system monitoring in Python. Home-page: https://github.com/giampaolo/psutil Author: Giampaolo Rodola
