openSUSE Commits
Threads by month
- ----- 2024 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
July 2019
- 2 participants
- 2045 discussions
Hello community,
here is the log from the commit of package python-pysmbc for openSUSE:Factory checked in at 2019-07-30 13:05:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pysmbc (Old)
and /work/SRC/openSUSE:Factory/.python-pysmbc.new.4126 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pysmbc"
Tue Jul 30 13:05:06 2019 rev:2 rq:717615 version:1.0.16
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pysmbc/python-pysmbc.changes 2017-09-26 21:14:52.918520294 +0200
+++ /work/SRC/openSUSE:Factory/.python-pysmbc.new.4126/python-pysmbc.changes 2019-07-30 13:05:08.174391965 +0200
@@ -1,0 +2,6 @@
+Mon Jul 22 14:55:40 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 1.0.16:
+ * no changelog
+
+-------------------------------------------------------------------
Old:
----
pysmbc-1.0.15.8.tar.bz2
New:
----
pysmbc-1.0.16.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pysmbc.spec ++++++
--- /var/tmp/diff_new_pack.f5QhXs/_old 2019-07-30 13:05:09.202391694 +0200
+++ /var/tmp/diff_new_pack.f5QhXs/_new 2019-07-30 13:05:09.206391693 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-pysmbc
#
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -12,7 +12,7 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
@@ -21,12 +21,12 @@
# Tests don't work in rpmbuild sandbox
%bcond_with test
Name: python-pysmbc
-Version: 1.0.15.8
+Version: 1.0.16
Release: 0
Summary: Python bindings for samba clients (libsmbclient)
-License: GPL-2.0+
+License: GPL-2.0-or-later
Group: Development/Languages/Python
-Url: http://cyberelk.net/tim/software/pysmbc/
+URL: http://cyberelk.net/tim/software/pysmbc/
Source: https://files.pythonhosted.org/packages/source/p/pysmbc/pysmbc-%{version}.t…
BuildRequires: %{python_module devel}
BuildRequires: %{python_module setuptools}
@@ -45,7 +45,6 @@
Obsoletes: python3-smbc < %{version}
Provides: python3-smbc = %{version}
%endif
-
%python_subpackages
%description
@@ -63,7 +62,7 @@
%python_install
%{python_expand chmod a+x %{buildroot}%{$python_sitearch}/smbc/xattr.py
-sed -i "s|^#!/usr/bin/python$|#!%__$python|" %{buildroot}%{$python_sitearch}/smbc/xattr.py
+sed -i "s|^#!%{_bindir}/python$|#!%__$python|" %{buildroot}%{$python_sitearch}/smbc/xattr.py
$python -m compileall -d %{$python_sitearch} %{buildroot}%{$python_sitearch}/smbc/
$python -O -m compileall -d %{$python_sitelib} %{buildroot}%{$python_sitearch}/smbc/
%fdupes %{buildroot}%{$python_sitearch}
@@ -78,8 +77,8 @@
%endif
%files %{python_files}
-%defattr(-,root,root,-)
-%doc COPYING NEWS
+%license COPYING
+%doc NEWS
%{python_sitearch}/*
%changelog
++++++ pysmbc-1.0.15.8.tar.bz2 -> pysmbc-1.0.16.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pysmbc-1.0.15.8/PKG-INFO new/pysmbc-1.0.16/PKG-INFO
--- old/pysmbc-1.0.15.8/PKG-INFO 2017-08-08 17:59:26.000000000 +0200
+++ new/pysmbc-1.0.16/PKG-INFO 2019-04-06 12:05:05.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: pysmbc
-Version: 1.0.15.8
+Version: 1.0.16
Summary: Python bindings for libsmbclient
Home-page: http://cyberelk.net/tim/software/pysmbc/
Author: ['Tim Waugh <twaugh(a)redhat.com>', 'Tsukasa Hamano <hamano(a)osstech.co.jp>', 'Roberto Polli <rpolli(a)babel.it>']
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pysmbc-1.0.15.8/README.md new/pysmbc-1.0.16/README.md
--- old/pysmbc-1.0.15.8/README.md 1970-01-01 01:00:00.000000000 +0100
+++ new/pysmbc-1.0.16/README.md 2019-04-06 12:03:48.000000000 +0200
@@ -0,0 +1,56 @@
+SMB bindings for Python
+-----------------------
+
+[![PyPI](https://img.shields.io/pypi/v/pysmbc.svg)](https://pypi.python.org/pypi/pysmbc/)
+[![Build Status](https://travis-ci.org/hamano/pysmbc.svg?branch=master)](https://tra…
+[![GitHub license](https://img.shields.io/github/license/hamano/pysmbc.svg)]()
+
+These Python bindings are intended to wrap the libsmbclient API.
+
+
+Prerequisites
+------
+
+Currently libsmbclient 3.2.x or later is required. Ubuntu Example:
+~~~
+# sudo apt install pkg-config libopencv-dev smbclient libsmbclient libsmbclient-dev
+~~~
+
+Build
+------
+~~~
+# make
+~~~
+
+
+Test
+------
+
+To run Python tests in tests/ you need python-nose
+See nose documentation http://readthedocs.org/docs/nose
+
+To run all the tests execute
+
+~~~
+# nosetests
+~~~
+
+To run just one test, use
+
+~~~
+# nosetests file.py
+~~~
+
+To selectively run test methods, printing output to console
+
+~~~
+# nosetests -vs test_context.py:test_Workgroup
+~~~
+
+NOTE: to run your tests, you need
+
+ * a running samba server
+ * one shared folder with
+ * rw permissions
+ * guest ok = no
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pysmbc-1.0.15.8/pysmbc.egg-info/PKG-INFO new/pysmbc-1.0.16/pysmbc.egg-info/PKG-INFO
--- old/pysmbc-1.0.15.8/pysmbc.egg-info/PKG-INFO 1970-01-01 01:00:00.000000000 +0100
+++ new/pysmbc-1.0.16/pysmbc.egg-info/PKG-INFO 2019-04-06 12:05:05.000000000 +0200
@@ -0,0 +1,45 @@
+Metadata-Version: 1.1
+Name: pysmbc
+Version: 1.0.16
+Summary: Python bindings for libsmbclient
+Home-page: http://cyberelk.net/tim/software/pysmbc/
+Author: ['Tim Waugh <twaugh(a)redhat.com>', 'Tsukasa Hamano <hamano(a)osstech.co.jp>', 'Roberto Polli <rpolli(a)babel.it>']
+Author-email: UNKNOWN
+License: GPLv2+
+Download-URL: http://cyberelk.net/tim/data/pysmbc/
+Description: This is a set of Python bindings for the libsmbclient library
+ from the samba project.
+
+ >>> # Directory listing example:
+ >>> import smbc
+ >>> ctx = smbc.Context (auth_fn=my_auth_callback_fn)
+ >>> entries = ctx.opendir ("smb://SERVER").getdents ()
+ >>> for entry in entries:
+ ... print entry
+ <smbc.Dirent object "music" (File share) at 0x7fbd7c42b3a0>
+ <smbc.Dirent object "IPC$" (IPC share) at 0x7fbd7c42b148>
+ <smbc.Dirent object "Charlie" (Printer share) at 0x7fbd7c42b3c8>
+ >>> d = ctx.open ("smb://SERVER/music")
+
+ >>> # Write file example:
+ >>> import smbc
+ >>> import os
+ >>> ctx = smbc.Context (auth_fn=my_auth_callback_fn)
+ >>> file = ctx.open ("smb://SERVER/music/file.txt", os.O_CREAT | os.O_WRONLY)
+ >>> file.write ("hello")
+
+ >>> # Read file example:
+ >>> import smbc
+ >>> ctx = smbc.Context (auth_fn=my_auth_callback_fn)
+ >>> file = ctx.open ("smb://SERVER/music/file.txt")
+ >>> print file.read()
+ hello
+
+
+Platform: UNKNOWN
+Classifier: Intended Audience :: Developers
+Classifier: Topic :: Software Development :: Libraries :: Python Modules
+Classifier: License :: OSI Approved :: GNU General Public License (GPL)
+Classifier: Development Status :: 5 - Production/Stable
+Classifier: Operating System :: Unix
+Classifier: Programming Language :: C
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pysmbc-1.0.15.8/pysmbc.egg-info/SOURCES.txt new/pysmbc-1.0.16/pysmbc.egg-info/SOURCES.txt
--- old/pysmbc-1.0.15.8/pysmbc.egg-info/SOURCES.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/pysmbc-1.0.16/pysmbc.egg-info/SOURCES.txt 2019-04-06 12:05:05.000000000 +0200
@@ -0,0 +1,29 @@
+COPYING
+MANIFEST.in
+Makefile
+NEWS
+README.md
+TODO
+setup.py
+pysmbc.egg-info/PKG-INFO
+pysmbc.egg-info/SOURCES.txt
+pysmbc.egg-info/dependency_links.txt
+pysmbc.egg-info/top_level.txt
+smbc/__init__.py
+smbc/context.c
+smbc/context.h
+smbc/dir.c
+smbc/dir.h
+smbc/file.c
+smbc/file.h
+smbc/smbcdirent.c
+smbc/smbcdirent.h
+smbc/smbcmodule.c
+smbc/smbcmodule.h
+smbc/xattr.py
+tests/settings.py
+tests/test_acl.py
+tests/test_auth.py
+tests/test_context.py
+tests/test_dir.py
+tests/test_file.py
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pysmbc-1.0.15.8/pysmbc.egg-info/dependency_links.txt new/pysmbc-1.0.16/pysmbc.egg-info/dependency_links.txt
--- old/pysmbc-1.0.15.8/pysmbc.egg-info/dependency_links.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/pysmbc-1.0.16/pysmbc.egg-info/dependency_links.txt 2019-04-06 12:05:05.000000000 +0200
@@ -0,0 +1 @@
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pysmbc-1.0.15.8/pysmbc.egg-info/top_level.txt new/pysmbc-1.0.16/pysmbc.egg-info/top_level.txt
--- old/pysmbc-1.0.15.8/pysmbc.egg-info/top_level.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/pysmbc-1.0.16/pysmbc.egg-info/top_level.txt 2019-04-06 12:05:05.000000000 +0200
@@ -0,0 +1,2 @@
+_smbc
+smbc
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pysmbc-1.0.15.8/setup.cfg new/pysmbc-1.0.16/setup.cfg
--- old/pysmbc-1.0.15.8/setup.cfg 1970-01-01 01:00:00.000000000 +0100
+++ new/pysmbc-1.0.16/setup.cfg 2019-04-06 12:05:05.000000000 +0200
@@ -0,0 +1,4 @@
+[egg_info]
+tag_build =
+tag_date = 0
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pysmbc-1.0.15.8/setup.py new/pysmbc-1.0.16/setup.py
--- old/pysmbc-1.0.15.8/setup.py 2017-08-08 17:59:13.000000000 +0200
+++ new/pysmbc-1.0.16/setup.py 2019-04-06 12:04:29.000000000 +0200
@@ -5,6 +5,7 @@
## Authors:
## Tim Waugh <twaugh(a)redhat.com>
## Tsukasa Hamano <hamano(a)osstech.co.jp>
+## Laurent Coustet <laurent.coustet(a)clarisys.fr>
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
@@ -50,43 +51,50 @@
"""
-from distutils.core import setup, Extension
import subprocess
+from setuptools import setup, Extension
-def pkgconfig_I (pkg):
+def pkgconfig_I(pkg):
dirs = []
- c = subprocess.Popen (["pkg-config", "--cflags", pkg],
- stdout=subprocess.PIPE)
+ c = subprocess.Popen(["pkg-config", "--cflags", pkg], stdout=subprocess.PIPE)
(stdout, stderr) = c.communicate ()
- for p in stdout.decode ('ascii').split ():
- if p.startswith ("-I"):
- dirs.append (p[2:])
+ for p in stdout.decode('ascii').split():
+ if p.startswith("-I"):
+ dirs.append(p[2:])
return dirs
-
-setup (name="pysmbc",
- version="1.0.15.8",
- description="Python bindings for libsmbclient",
- long_description=__doc__,
- author=["Tim Waugh <twaugh(a)redhat.com>",
- "Tsukasa Hamano <hamano(a)osstech.co.jp>",
- "Roberto Polli <rpolli(a)babel.it>" ],
- url="http://cyberelk.net/tim/software/pysmbc/",
- download_url="http://cyberelk.net/tim/data/pysmbc/",
- classifiers=[
+
+setup(
+ name="pysmbc",
+ version="1.0.16",
+ description="Python bindings for libsmbclient",
+ long_description=__doc__,
+ author=[
+ "Tim Waugh <twaugh(a)redhat.com>",
+ "Tsukasa Hamano <hamano(a)osstech.co.jp>",
+ "Roberto Polli <rpolli(a)babel.it>",
+ ],
+ url="http://cyberelk.net/tim/software/pysmbc/",
+ download_url="http://cyberelk.net/tim/data/pysmbc/",
+ license="GPLv2+",
+ packages=["smbc"],
+ classifiers=[
"Intended Audience :: Developers",
"Topic :: Software Development :: Libraries :: Python Modules",
"License :: OSI Approved :: GNU General Public License (GPL)",
"Development Status :: 5 - Production/Stable",
"Operating System :: Unix",
"Programming Language :: C",
+ ],
+ ext_modules=[
+ Extension("_smbc", [
+ "smbc/smbcmodule.c",
+ "smbc/context.c",
+ "smbc/dir.c",
+ "smbc/file.c",
+ "smbc/smbcdirent.c"
],
- license="GPLv2+",
- packages=["smbc"],
- ext_modules=[Extension("_smbc",
- ["smbc/smbcmodule.c",
- "smbc/context.c",
- "smbc/dir.c",
- "smbc/file.c",
- "smbc/smbcdirent.c"],
- libraries=["smbclient"],
- include_dirs=pkgconfig_I("smbclient"))])
+ libraries=["smbclient"],
+ include_dirs=pkgconfig_I("smbclient")
+ )
+ ],
+)
1
0
Hello community,
here is the log from the commit of package python-readthedocs-sphinx-ext for openSUSE:Factory checked in at 2019-07-30 13:04:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-readthedocs-sphinx-ext (Old)
and /work/SRC/openSUSE:Factory/.python-readthedocs-sphinx-ext.new.4126 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-readthedocs-sphinx-ext"
Tue Jul 30 13:04:59 2019 rev:2 rq:717585 version:1.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-readthedocs-sphinx-ext/python-readthedocs-sphinx-ext.changes 2019-05-27 08:38:47.671061405 +0200
+++ /work/SRC/openSUSE:Factory/.python-readthedocs-sphinx-ext.new.4126/python-readthedocs-sphinx-ext.changes 2019-07-30 13:05:01.110393828 +0200
@@ -1,0 +2,6 @@
+Mon Jul 22 13:04:39 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 1.0:
+ * no upstream changelog
+
+-------------------------------------------------------------------
Old:
----
LICENSE
readthedocs-sphinx-ext-0.5.17.tar.gz
New:
----
readthedocs-sphinx-ext-1.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-readthedocs-sphinx-ext.spec ++++++
--- /var/tmp/diff_new_pack.ehfeeE/_old 2019-07-30 13:05:02.222393535 +0200
+++ /var/tmp/diff_new_pack.ehfeeE/_new 2019-07-30 13:05:02.226393534 +0200
@@ -18,15 +18,13 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-readthedocs-sphinx-ext
-Version: 0.5.17
+Version: 1.0.0
Release: 0
Summary: Sphinx extension for Read the Docs overrides
License: MIT
Group: Development/Languages/Python
URL: http://github.com/rtfd/readthedocs-sphinx-ext
Source: https://files.pythonhosted.org/packages/source/r/readthedocs-sphinx-ext/rea…
-# https://github.com/rtfd/readthedocs-sphinx-ext/pull/65
-Source1: https://raw.githubusercontent.com/rtfd/readthedocs-sphinx-ext/master/LICENSE
BuildRequires: %{python_module Sphinx}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module requests}
@@ -45,7 +43,6 @@
%prep
%setup -q -n readthedocs-sphinx-ext-%{version}
-cp %{SOURCE1} .
%build
%python_build
++++++ readthedocs-sphinx-ext-0.5.17.tar.gz -> readthedocs-sphinx-ext-1.0.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/LICENSE new/readthedocs-sphinx-ext-1.0.0/LICENSE
--- old/readthedocs-sphinx-ext-0.5.17/LICENSE 1970-01-01 01:00:00.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/LICENSE 2019-06-12 00:28:26.000000000 +0200
@@ -0,0 +1,23 @@
+Copyright (c) 2010-2019 Read the Docs, Inc & contributors
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation
+files (the "Software"), to deal in the Software without
+restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/MANIFEST.in new/readthedocs-sphinx-ext-1.0.0/MANIFEST.in
--- old/readthedocs-sphinx-ext-0.5.17/MANIFEST.in 2019-02-21 21:50:58.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/MANIFEST.in 2019-06-26 00:42:12.000000000 +0200
@@ -5,3 +5,4 @@
recursive-include tests *.py
recursive-include tests *.rst
include *.rst
+include LICENSE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/PKG-INFO new/readthedocs-sphinx-ext-1.0.0/PKG-INFO
--- old/readthedocs-sphinx-ext-0.5.17/PKG-INFO 2019-02-21 23:34:29.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/PKG-INFO 2019-07-16 21:49:55.000000000 +0200
@@ -1,8 +1,8 @@
Metadata-Version: 1.0
Name: readthedocs-sphinx-ext
-Version: 0.5.17
+Version: 1.0.0
Summary: Sphinx extension for Read the Docs overrides
-Home-page: http://github.com/rtfd/readthedocs-sphinx-ext
+Home-page: http://github.com/readthedocs/readthedocs-sphinx-ext
Author: Read the Docs, Inc
Author-email: dev(a)readthedocs.com
License: MIT
@@ -12,8 +12,8 @@
.. image:: https://img.shields.io/pypi/v/readthedocs-sphinx-ext.svg
:target: https://pypi.python.org/pypi/readthedocs-sphinx-ext
:alt: Pypi Version
- .. image:: https://travis-ci.org/rtfd/readthedocs-sphinx-ext.svg?branch=master
- :target: https://travis-ci.org/rtfd/readthedocs-sphinx-ext
+ .. image:: https://travis-ci.org/readthedocs/readthedocs-sphinx-ext.svg?branch=master
+ :target: https://travis-ci.org/readthedocs/readthedocs-sphinx-ext
:alt: Build Status
This module adds extensions that make Sphinx easier to use.
@@ -31,7 +31,7 @@
#. Increment the version in ``setup.py``
#. Tag the release in git: ``git tag $NEW_VERSION``.
- #. Push the tag to GitHub: ``git push --tags origin``
+ #. Push the tag to GitHub: ``git push --tags origin master``
#. Upload the package to PyPI:
.. code:: bash
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/README.rst new/readthedocs-sphinx-ext-1.0.0/README.rst
--- old/readthedocs-sphinx-ext-0.5.17/README.rst 2019-02-21 21:48:39.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/README.rst 2019-07-16 21:28:46.000000000 +0200
@@ -4,8 +4,8 @@
.. image:: https://img.shields.io/pypi/v/readthedocs-sphinx-ext.svg
:target: https://pypi.python.org/pypi/readthedocs-sphinx-ext
:alt: Pypi Version
-.. image:: https://travis-ci.org/rtfd/readthedocs-sphinx-ext.svg?branch=master
- :target: https://travis-ci.org/rtfd/readthedocs-sphinx-ext
+.. image:: https://travis-ci.org/readthedocs/readthedocs-sphinx-ext.svg?branch=master
+ :target: https://travis-ci.org/readthedocs/readthedocs-sphinx-ext
:alt: Build Status
This module adds extensions that make Sphinx easier to use.
@@ -23,7 +23,7 @@
#. Increment the version in ``setup.py``
#. Tag the release in git: ``git tag $NEW_VERSION``.
-#. Push the tag to GitHub: ``git push --tags origin``
+#. Push the tag to GitHub: ``git push --tags origin master``
#. Upload the package to PyPI:
.. code:: bash
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/readthedocs_ext/_templates/readthedocs-insert.html.tmpl new/readthedocs-sphinx-ext-1.0.0/readthedocs_ext/_templates/readthedocs-insert.html.tmpl
--- old/readthedocs-sphinx-ext-0.5.17/readthedocs_ext/_templates/readthedocs-insert.html.tmpl 2018-06-06 19:41:18.000000000 +0200
+++ new/readthedocs-sphinx-ext-1.0.0/readthedocs_ext/_templates/readthedocs-insert.html.tmpl 2019-06-26 00:42:12.000000000 +0200
@@ -22,9 +22,9 @@
<!-- Add page-specific data, which must exist in the page js, not global -->
<script type="text/javascript">
-READTHEDOCS_DATA['page'] = '{{ pagename }}'
+READTHEDOCS_DATA['page'] = {{ pagename|tojson }}
{%- if page_source_suffix %}
-READTHEDOCS_DATA['source_suffix'] = '{{ page_source_suffix }}'
+READTHEDOCS_DATA['source_suffix'] = {{ page_source_suffix|tojson }}
{%- endif %}
</script>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/readthedocs_ext/external_version_warning.py new/readthedocs-sphinx-ext-1.0.0/readthedocs_ext/external_version_warning.py
--- old/readthedocs-sphinx-ext-0.5.17/readthedocs_ext/external_version_warning.py 1970-01-01 01:00:00.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/readthedocs_ext/external_version_warning.py 2019-07-16 21:28:46.000000000 +0200
@@ -0,0 +1,27 @@
+from docutils import nodes
+
+try:
+ # Avaliable from Sphinx 1.6
+ from sphinx.util.logging import getLogger
+except ImportError:
+ from logging import getLogger
+
+log = getLogger(__name__)
+
+
+def process_external_version_warning_banner(app, doctree, fromdocname):
+ """
+ Add warning banner for external versions in every page.
+
+ If the version type is external this will show a warning banner
+ at the top of each page of the documentation.
+ """
+ for document in doctree.traverse(nodes.document):
+ text = 'This Documentation was created from pull/merge request.'
+ prose = nodes.paragraph(text, text)
+ warning = nodes.warning(prose, prose)
+ document.insert(0, warning)
+
+
+def setup(app):
+ app.connect('doctree-resolved', process_external_version_warning_banner)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/readthedocs_ext/readthedocs.py new/readthedocs-sphinx-ext-1.0.0/readthedocs_ext/readthedocs.py
--- old/readthedocs-sphinx-ext-0.5.17/readthedocs_ext/readthedocs.py 2019-02-21 21:49:22.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/readthedocs_ext/readthedocs.py 2019-07-16 21:28:59.000000000 +0200
@@ -15,6 +15,7 @@
StandaloneHTMLBuilder)
from sphinx.util.console import bold
+
from .embed import EmbedDirective
from .mixins import BuilderMixin
@@ -27,10 +28,20 @@
log = getLogger(__name__)
DEFAULT_STATIC_URL = 'https://assets.readthedocs.org/static/'
+ONLINE_BUILDERS = [
+ 'readthedocs', 'readthedocsdirhtml', 'readthedocssinglehtml'
+]
+# Only run JSON output once during HTML build
+# This saves resources and keeps filepaths correct,
+# because singlehtml filepaths are different
+JSON_BUILDERS = [
+ 'html', 'dirhtml',
+ 'readthedocs', 'readthedocsdirhtml'
+]
# Whitelist keys that we want to output
# to the json artifacts.
-KEYS = [
+JSON_KEYS = [
'body',
'title',
'sourcename',
@@ -65,15 +76,12 @@
"""
STATIC_URL = context.get('STATIC_URL', DEFAULT_STATIC_URL)
- online_builders = [
- 'readthedocs', 'readthedocsdirhtml', 'readthedocssinglehtml'
- ]
if app.builder.name == 'readthedocssinglehtmllocalmedia':
if 'html_theme' in context and context['html_theme'] == 'sphinx_rtd_theme':
theme_css = '_static/css/theme.css'
else:
theme_css = '_static/css/badge_only.css'
- elif app.builder.name in online_builders:
+ elif app.builder.name in ONLINE_BUILDERS:
if 'html_theme' in context and context['html_theme'] == 'sphinx_rtd_theme':
theme_css = '%scss/sphinx_rtd_theme.css' % STATIC_URL
else:
@@ -102,7 +110,10 @@
# This is monkey patched on the signal because we can't know what the user
# has done with their `app.builder.templates` before now.
- if not hasattr(app.builder.templates.render, '_patched'):
+ if (
+ app.builder.name in ONLINE_BUILDERS and not
+ hasattr(app.builder.templates.render, '_patched')
+ ):
# Janky monkey patch of template rendering to add our content
old_render = app.builder.templates.render
@@ -148,6 +159,8 @@
This way we can skip generating this in other build step.
"""
+ if app.builder.name not in JSON_BUILDERS:
+ return
try:
# We need to get the output directory where the docs are built
# _build/json.
@@ -161,7 +174,7 @@
with open(outjson, 'w+') as json_file:
to_context = {
key: context.get(key, '')
- for key in KEYS
+ for key in JSON_KEYS
}
json.dump(to_context, json_file, indent=4)
except TypeError:
@@ -172,12 +185,73 @@
log.exception(
'Fail to save JSON output for page {page}'.format(page=outjson)
)
- except Exception as e:
+ except Exception:
log.exception(
'Failure in JSON search dump for page {page}'.format(page=outjson)
)
+def dump_sphinx_data(app, exception):
+ """
+ Dump data that is only in memory during Sphinx build.
+ This is mostly used for search indexing.
+
+ This includes:
+
+ * `paths`: A mapping of HTML Filename -> RST file
+ * `pages`: A mapping of HTML Filename -> Sphinx Page name
+ * `titles`: A mapping of HTML Filename -> Page Title
+ * `types`: A mapping of Sphinx Domain type slugs -> human-readable name for that type
+
+ """
+ if app.builder.name not in JSON_BUILDERS or exception:
+ return
+ try:
+ types = {}
+ titles = {}
+ paths = {}
+ pages = {}
+
+ for domain_name, domain_obj in app.env.domains.items():
+ for type_name, type_obj in domain_obj.object_types.items():
+ key = "{}:{}".format(domain_name, type_name)
+ types[key] = str(type_obj.lname)
+
+ for page, title in app.env.titles.items():
+ page_uri = app.builder.get_target_uri(page)
+ titles[page_uri] = title.astext()
+ paths[page_uri] = app.env.doc2path(page, base=None)
+ pages[page_uri] = page
+
+ to_dump = {
+ 'types': types,
+ 'titles': titles,
+ 'paths': paths,
+ 'pages': pages,
+ }
+
+ # We need to get the output directory where the docs are built
+ # _build/json.
+ build_json = os.path.abspath(
+ os.path.join(app.outdir, '..', 'json')
+ )
+ outjson = os.path.join(build_json, 'readthedocs-sphinx-domain-names.json')
+ with open(outjson, 'w+') as json_file:
+ json.dump(to_dump, json_file, indent=4)
+ except TypeError:
+ log.exception(
+ 'Fail to encode JSON for object names'
+ )
+ except IOError:
+ log.exception(
+ 'Fail to save JSON for object names'
+ )
+ except Exception:
+ log.exception(
+ 'Failure in JSON search dump for object names'
+ )
+
+
class HtmlBuilderMixin(BuilderMixin):
static_readthedocs_files = [
@@ -271,6 +345,7 @@
app.connect('builder-inited', finalize_media)
app.connect('html-page-context', update_body)
app.connect('html-page-context', generate_json_artifacts)
+ app.connect('build-finished', dump_sphinx_data)
# Embed
app.add_directive('readthedocs-embed', EmbedDirective)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/readthedocs_sphinx_ext.egg-info/PKG-INFO new/readthedocs-sphinx-ext-1.0.0/readthedocs_sphinx_ext.egg-info/PKG-INFO
--- old/readthedocs-sphinx-ext-0.5.17/readthedocs_sphinx_ext.egg-info/PKG-INFO 2019-02-21 23:34:29.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/readthedocs_sphinx_ext.egg-info/PKG-INFO 2019-07-16 21:49:54.000000000 +0200
@@ -1,8 +1,8 @@
Metadata-Version: 1.0
Name: readthedocs-sphinx-ext
-Version: 0.5.17
+Version: 1.0.0
Summary: Sphinx extension for Read the Docs overrides
-Home-page: http://github.com/rtfd/readthedocs-sphinx-ext
+Home-page: http://github.com/readthedocs/readthedocs-sphinx-ext
Author: Read the Docs, Inc
Author-email: dev(a)readthedocs.com
License: MIT
@@ -12,8 +12,8 @@
.. image:: https://img.shields.io/pypi/v/readthedocs-sphinx-ext.svg
:target: https://pypi.python.org/pypi/readthedocs-sphinx-ext
:alt: Pypi Version
- .. image:: https://travis-ci.org/rtfd/readthedocs-sphinx-ext.svg?branch=master
- :target: https://travis-ci.org/rtfd/readthedocs-sphinx-ext
+ .. image:: https://travis-ci.org/readthedocs/readthedocs-sphinx-ext.svg?branch=master
+ :target: https://travis-ci.org/readthedocs/readthedocs-sphinx-ext
:alt: Build Status
This module adds extensions that make Sphinx easier to use.
@@ -31,7 +31,7 @@
#. Increment the version in ``setup.py``
#. Tag the release in git: ``git tag $NEW_VERSION``.
- #. Push the tag to GitHub: ``git push --tags origin``
+ #. Push the tag to GitHub: ``git push --tags origin master``
#. Upload the package to PyPI:
.. code:: bash
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/readthedocs_sphinx_ext.egg-info/SOURCES.txt new/readthedocs-sphinx-ext-1.0.0/readthedocs_sphinx_ext.egg-info/SOURCES.txt
--- old/readthedocs-sphinx-ext-0.5.17/readthedocs_sphinx_ext.egg-info/SOURCES.txt 2019-02-21 23:34:29.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/readthedocs_sphinx_ext.egg-info/SOURCES.txt 2019-07-16 21:49:54.000000000 +0200
@@ -1,9 +1,11 @@
+LICENSE
MANIFEST.in
README.rst
setup.cfg
setup.py
./readthedocs_ext/__init__.py
./readthedocs_ext/embed.py
+./readthedocs_ext/external_version_warning.py
./readthedocs_ext/mixins.py
./readthedocs_ext/readthedocs.py
./readthedocs_ext/template-meta.py
@@ -24,6 +26,7 @@
tests/test_mixins.py
tests/util.py
tests/pyexample/conf.py
+tests/pyexample/escape' this js.rst
tests/pyexample/index.rst
tests/pyexample-json/conf.py
tests/pyexample-json/index.rst
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/readthedocs_sphinx_ext.egg-info/requires.txt new/readthedocs-sphinx-ext-1.0.0/readthedocs_sphinx_ext.egg-info/requires.txt
--- old/readthedocs-sphinx-ext-0.5.17/readthedocs_sphinx_ext.egg-info/requires.txt 2019-02-21 23:34:29.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/readthedocs_sphinx_ext.egg-info/requires.txt 2019-07-16 21:49:54.000000000 +0200
@@ -1 +1,2 @@
requests
+Jinja2>=2.9
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/setup.py new/readthedocs-sphinx-ext-1.0.0/setup.py
--- old/readthedocs-sphinx-ext-0.5.17/setup.py 2019-02-21 23:33:07.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/setup.py 2019-07-16 21:49:45.000000000 +0200
@@ -2,7 +2,7 @@
try:
from setuptools import setup, find_packages
extra_setup = dict(
- install_requires=['requests'],
+ install_requires=['requests', 'Jinja2>=2.9'],
)
except ImportError:
from distutils.core import setup
@@ -10,10 +10,10 @@
setup(
name='readthedocs-sphinx-ext',
- version='0.5.17',
+ version='1.0.0',
author='Read the Docs, Inc',
author_email='dev(a)readthedocs.com',
- url='http://github.com/rtfd/readthedocs-sphinx-ext',
+ url='http://github.com/readthedocs/readthedocs-sphinx-ext',
license='MIT',
description='Sphinx extension for Read the Docs overrides',
package_dir={'': '.'},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/tests/pyexample/conf.py new/readthedocs-sphinx-ext-1.0.0/tests/pyexample/conf.py
--- old/readthedocs-sphinx-ext-0.5.17/tests/pyexample/conf.py 2018-01-09 19:33:14.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/tests/pyexample/conf.py 2019-07-16 21:28:46.000000000 +0200
@@ -11,8 +11,8 @@
source_suffix = '.rst'
master_doc = 'index'
project = u'pyexample'
-copyright = u'2015, rtfd'
-author = u'rtfd'
+copyright = u'2015, readthedocs'
+author = u'readthedocs'
version = '0.1'
release = '0.1'
language = None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' "old/readthedocs-sphinx-ext-0.5.17/tests/pyexample/escape' this js.rst" "new/readthedocs-sphinx-ext-1.0.0/tests/pyexample/escape' this js.rst"
--- "old/readthedocs-sphinx-ext-0.5.17/tests/pyexample/escape' this js.rst" 1970-01-01 01:00:00.000000000 +0100
+++ "new/readthedocs-sphinx-ext-1.0.0/tests/pyexample/escape' this js.rst" 2019-06-26 00:42:12.000000000 +0200
@@ -0,0 +1,4 @@
+Escape JS
+#########
+
+This file name should be escaped before it's included in a `<scrip>` tag.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/tests/pyexample-json/conf.py new/readthedocs-sphinx-ext-1.0.0/tests/pyexample-json/conf.py
--- old/readthedocs-sphinx-ext-0.5.17/tests/pyexample-json/conf.py 2018-12-13 22:54:51.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/tests/pyexample-json/conf.py 2019-07-16 21:28:46.000000000 +0200
@@ -11,8 +11,8 @@
source_suffix = '.rst'
master_doc = 'index'
project = u'pyexample'
-copyright = u'2015, rtfd'
-author = u'rtfd'
+copyright = u'2015, readthedocs'
+author = u'readthedocs'
version = '0.1'
release = '0.1'
language = None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/readthedocs-sphinx-ext-0.5.17/tests/test_integration.py new/readthedocs-sphinx-ext-1.0.0/tests/test_integration.py
--- old/readthedocs-sphinx-ext-0.5.17/tests/test_integration.py 2018-12-13 23:54:58.000000000 +0100
+++ new/readthedocs-sphinx-ext-1.0.0/tests/test_integration.py 2019-07-16 21:28:46.000000000 +0200
@@ -71,3 +71,25 @@
'toc', 'sourcename', 'page_source_suffix',
],
)
+
+ def test_generate_json_domain_artifacts(self):
+ self._run_test(
+ 'pyexample-json',
+ '_build/json/readthedocs-sphinx-domain-names.json',
+ [
+ # types
+ '"js:class": "class"',
+ # pages
+ '"index.html": "index"',
+ # paths
+ '"index.html": "index.rst"',
+ # titles
+ '"index.html": "Welcome to pyexample',
+ ],
+ )
+
+ def test_escape_js_vars(self):
+ with build_output('pyexample', '_build/readthedocs/escape\' this js.html',
+ builder='readthedocs') as data:
+ self.assertNotIn('escape \' this js', data)
+ self.assertIn('escape\\u0027 this js', data)
1
0
Hello community,
here is the log from the commit of package python-soupsieve for openSUSE:Factory checked in at 2019-07-30 13:04:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-soupsieve (Old)
and /work/SRC/openSUSE:Factory/.python-soupsieve.new.4126 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-soupsieve"
Tue Jul 30 13:04:54 2019 rev:5 rq:717581 version:1.9.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-soupsieve/python-soupsieve.changes 2019-05-22 10:54:35.607151662 +0200
+++ /work/SRC/openSUSE:Factory/.python-soupsieve.new.4126/python-soupsieve.changes 2019-07-30 13:04:55.662395156 +0200
@@ -1,0 +2,8 @@
+Mon Jul 22 12:54:14 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 1.9.2:
+ * FIX: Shortcut last descendant calculation if possible for performance.
+ * FIX: Fix issue where Doctype strings can be mistaken for a normal text node in some cases.
+ * FIX: A top level tag is not a :root tag if it has sibling text nodes or tag nodes. This is an issue that mostly manifests when using html.parser as the parser will allow multiple root nodes.
+
+-------------------------------------------------------------------
Old:
----
soupsieve-1.9.1.tar.gz
New:
----
soupsieve-1.9.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-soupsieve.spec ++++++
--- /var/tmp/diff_new_pack.lzneg2/_old 2019-07-30 13:04:56.442394989 +0200
+++ /var/tmp/diff_new_pack.lzneg2/_new 2019-07-30 13:04:56.442394989 +0200
@@ -26,12 +26,12 @@
%bcond_with test
%endif
Name: python-soupsieve%{psuffix}
-Version: 1.9.1
+Version: 1.9.2
Release: 0
Summary: A modern CSS selector implementation for BeautifulSoup
License: MIT
Group: Development/Libraries/Python
-URL: http://facelessuser.github.io/soupsieve/
+URL: https://github.com/facelessuser/soupsieve
Source: https://files.pythonhosted.org/packages/source/s/soupsieve/soupsieve-%{vers…
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
@@ -58,13 +58,12 @@
%install
%if !%{with test}
%python_install
-%python_expand rm -rf %{buildroot}%{$python_sitelib}/tests
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%endif
%check
%if %{with test}
-%python_expand PYTHONPATH=%{buildroot}%{$python_sitelib} py.test-%{$python_bin_suffix} -v tests
+%pytest tests
%endif
%if !%{with test}
++++++ soupsieve-1.9.1.tar.gz -> soupsieve-1.9.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/soupsieve-1.9.1/PKG-INFO new/soupsieve-1.9.2/PKG-INFO
--- old/soupsieve-1.9.1/PKG-INFO 2019-04-13 23:14:18.000000000 +0200
+++ new/soupsieve-1.9.2/PKG-INFO 2019-06-23 23:55:59.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: soupsieve
-Version: 1.9.1
+Version: 1.9.2
Summary: A modern CSS selector implementation for Beautiful Soup.
Home-page: https://github.com/facelessuser/soupsieve
Author: Isaac Muse
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/soupsieve-1.9.1/docs/src/markdown/about/changelog.md new/soupsieve-1.9.2/docs/src/markdown/about/changelog.md
--- old/soupsieve-1.9.1/docs/src/markdown/about/changelog.md 2019-04-13 23:13:06.000000000 +0200
+++ new/soupsieve-1.9.2/docs/src/markdown/about/changelog.md 2019-06-23 23:54:37.000000000 +0200
@@ -1,5 +1,11 @@
# Changelog
+## 1.9.2
+
+- **FIX**: Shortcut last descendant calculation if possible for performance.
+- **FIX**: Fix issue where `Doctype` strings can be mistaken for a normal text node in some cases.
+- **FIX**: A top level tag is not a `:root` tag if it has sibling text nodes or tag nodes. This is an issue that mostly manifests when using `html.parser` as the parser will allow multiple root nodes.
+
## 1.9.1
- **FIX**: `:root`, `:contains()`, `:default`, `:indeterminate`, `:lang()`, and `:dir()` will properly account for HTML
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/soupsieve-1.9.1/docs/src/markdown/api.md new/soupsieve-1.9.2/docs/src/markdown/api.md
--- old/soupsieve-1.9.1/docs/src/markdown/api.md 2019-04-13 23:13:06.000000000 +0200
+++ new/soupsieve-1.9.2/docs/src/markdown/api.md 2019-06-23 23:54:37.000000000 +0200
@@ -31,11 +31,8 @@
special. The `type` attribute's value is always case insensitive. This is generally how most browsers treat `type`. If
you need `type` to be sensitive, you can use the `s` flag: `#!css [type="submit" s]`.
-As far as the API is concerned, Soup Sieve mimics Beautiful Soup's original API at the time of writing this, which is
-why the names `select` and `select_one` are used. As of today, Beautiful Soup has agreed to include Soup Sieve as the
-official select library which is slated for the 4.7.0 release.
-
-Soup Sieve will always be available as an external API as well for more controlled tag selection if needed.
+While Soup Sieve access is exposed through Beautiful Soup's API, Soup Sieve's API can always be imported and accessed
+directly for more controlled tag selection if needed.
## Flags
@@ -62,19 +59,6 @@
SoupSieve(pattern='p:has(#id) > span.some-class:contains(text)', namespaces=None, custom=None, flags=1)
```
-### `soupsieve.REVERSE`
-
-When calling `filter`, `select`, `iselect`, or `select_one`, searches will be preformed in reverse order, causing the
-elements to be returned/yielded in reverse order.
-
-```pycon3
->>> import soupsieve as sv
->>> sv.select('p', soup)
-[<p class="a">Cat</p>, <p class="b">Dog</p>, <p class='c"'>Mouse</p>]
->>> sv.select('p', soup, flags=sv.REVERSE)
-[<p class='c"'>Mouse</p>, <p class="b">Dog</p>, <p class="a">Cat</p>]
-```
-
## `soupsieve.select_one()`
```py3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/soupsieve-1.9.1/soupsieve/__meta__.py new/soupsieve-1.9.2/soupsieve/__meta__.py
--- old/soupsieve-1.9.1/soupsieve/__meta__.py 2019-04-13 23:13:06.000000000 +0200
+++ new/soupsieve-1.9.2/soupsieve/__meta__.py 2019-06-23 23:54:37.000000000 +0200
@@ -186,5 +186,5 @@
return Version(major, minor, micro, release, pre, post, dev)
-__version_info__ = Version(1, 9, 1, "final")
+__version_info__ = Version(1, 9, 2, "final")
__version__ = __version_info__._get_canonical()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/soupsieve-1.9.1/soupsieve/css_match.py new/soupsieve-1.9.2/soupsieve/css_match.py
--- old/soupsieve-1.9.1/soupsieve/css_match.py 2019-04-13 23:13:06.000000000 +0200
+++ new/soupsieve-1.9.2/soupsieve/css_match.py 2019-06-23 23:54:37.000000000 +0200
@@ -113,11 +113,11 @@
return isinstance(obj, bs4.Declaration)
@staticmethod
- def is_cdata(obj): # pragma: no cover
+ def is_cdata(obj):
"""Is CDATA."""
import bs4
- return isinstance(obj, bs4.Declaration)
+ return isinstance(obj, bs4.CData)
@staticmethod
def is_processing_instruction(obj): # pragma: no cover
@@ -138,7 +138,7 @@
"""Is special string."""
import bs4
- return isinstance(obj, (bs4.Comment, bs4.Declaration, bs4.CData, bs4.ProcessingInstruction))
+ return isinstance(obj, (bs4.Comment, bs4.Declaration, bs4.CData, bs4.ProcessingInstruction, bs4.Doctype))
@classmethod
def is_content_string(cls, obj):
@@ -217,10 +217,13 @@
is_tag = self.is_tag(child)
if no_iframe and is_tag and self.is_iframe(child):
- last_child = child
- while self.is_tag(last_child) and last_child.contents:
- last_child = last_child.contents[-1]
- next_good = last_child.next_element
+ if child.next_sibling is not None:
+ next_good = child.next_sibling
+ else:
+ last_child = child
+ while self.is_tag(last_child) and last_child.contents:
+ last_child = last_child.contents[-1]
+ next_good = last_child.next_element
yield child
if next_good is None:
break
@@ -251,20 +254,20 @@
return el.prefix
@classmethod
- def get_next_tag(cls, el):
+ def get_next(cls, el, tags=True):
"""Get next sibling tag."""
sibling = el.next_sibling
- while not cls.is_tag(sibling) and sibling is not None:
+ while tags and not cls.is_tag(sibling) and sibling is not None:
sibling = sibling.next_sibling
return sibling
@classmethod
- def get_previous_tag(cls, el):
+ def get_previous(cls, el, tags=True):
"""Get previous sibling tag."""
sibling = el.previous_sibling
- while not cls.is_tag(sibling) and sibling is not None:
+ while tags and not cls.is_tag(sibling) and sibling is not None:
sibling = sibling.previous_sibling
return sibling
@@ -660,12 +663,12 @@
if parent:
found = self.match_selectors(parent, relation)
elif relation[0].rel_type == REL_SIBLING:
- sibling = self.get_previous_tag(el)
+ sibling = self.get_previous(el)
while not found and sibling:
found = self.match_selectors(sibling, relation)
- sibling = self.get_previous_tag(sibling)
+ sibling = self.get_previous(sibling)
elif relation[0].rel_type == REL_CLOSE_SIBLING:
- sibling = self.get_previous_tag(el)
+ sibling = self.get_previous(el)
if sibling and self.is_tag(sibling):
found = self.match_selectors(sibling, relation)
return found
@@ -690,12 +693,12 @@
elif relation[0].rel_type == REL_HAS_CLOSE_PARENT:
found = self.match_future_child(el, relation)
elif relation[0].rel_type == REL_HAS_SIBLING:
- sibling = self.get_next_tag(el)
+ sibling = self.get_next(el)
while not found and sibling:
found = self.match_selectors(sibling, relation)
- sibling = self.get_next_tag(sibling)
+ sibling = self.get_next(sibling)
elif relation[0].rel_type == REL_HAS_CLOSE_SIBLING:
- sibling = self.get_next_tag(el)
+ sibling = self.get_next(el)
if sibling and self.is_tag(sibling):
found = self.match_selectors(sibling, relation)
return found
@@ -736,7 +739,28 @@
def match_root(self, el):
"""Match element as root."""
- return self.is_root(el)
+ is_root = self.is_root(el)
+ if is_root:
+ sibling = self.get_previous(el, tags=False)
+ while is_root and sibling is not None:
+ if (
+ self.is_tag(sibling) or (self.is_content_string(sibling) and sibling.strip()) or
+ self.is_cdata(sibling)
+ ):
+ is_root = False
+ else:
+ sibling = self.get_previous(sibling, tags=False)
+ if is_root:
+ sibling = self.get_next(el, tags=False)
+ while is_root and sibling is not None:
+ if (
+ self.is_tag(sibling) or (self.is_content_string(sibling) and sibling.strip()) or
+ self.is_cdata(sibling)
+ ):
+ is_root = False
+ else:
+ sibling = self.get_next(sibling, tags=False)
+ return is_root
def match_scope(self, el):
"""Match element as scope."""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/soupsieve-1.9.1/soupsieve.egg-info/PKG-INFO new/soupsieve-1.9.2/soupsieve.egg-info/PKG-INFO
--- old/soupsieve-1.9.1/soupsieve.egg-info/PKG-INFO 2019-04-13 23:14:18.000000000 +0200
+++ new/soupsieve-1.9.2/soupsieve.egg-info/PKG-INFO 2019-06-23 23:55:59.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: soupsieve
-Version: 1.9.1
+Version: 1.9.2
Summary: A modern CSS selector implementation for Beautiful Soup.
Home-page: https://github.com/facelessuser/soupsieve
Author: Isaac Muse
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/soupsieve-1.9.1/tests/test_level3/test_root.py new/soupsieve-1.9.2/tests/test_level3/test_root.py
--- old/soupsieve-1.9.1/tests/test_level3/test_root.py 2019-04-13 23:13:06.000000000 +0200
+++ new/soupsieve-1.9.2/tests/test_level3/test_root.py 2019-06-23 23:54:37.000000000 +0200
@@ -118,6 +118,82 @@
ids.append(el['id'])
self.assertEqual(sorted(ids), sorted(['div2']))
+ def test_no_root_double_tag(self):
+ """Test when there is no root due to double root tags."""
+
+ markup = """
+ <div id="1"></div>
+ <div id="2"></div>
+ """
+
+ soup = self.soup(markup, 'html.parser')
+ self.assertEqual(soup.select(':root'), [])
+
+ def test_no_root_text(self):
+ """Test when there is no root due to HTML text."""
+
+ markup = """
+ text
+ <div id="1"></div>
+ """
+
+ soup = self.soup(markup, 'html.parser')
+ self.assertEqual(soup.select(':root'), [])
+
+ def test_no_root_cdata(self):
+ """Test when there is no root due to CDATA and tag."""
+
+ markup = """
+ <![CDATA[test]]>
+ <div id="1"></div>
+ """
+
+ soup = self.soup(markup, 'html.parser')
+ self.assertEqual(soup.select(':root'), [])
+
+ def test_root_whitespace(self):
+ """Test when there is root and white space."""
+
+ markup = """
+
+ <div id="1"></div>
+ """
+
+ ids = []
+ soup = self.soup(markup, 'html.parser')
+ for el in soup.select(':root'):
+ ids.append(el['id'])
+ self.assertEqual(sorted(ids), sorted(['1']))
+
+ def test_root_preprocess(self):
+ """Test when there is root and pre-processing statement."""
+
+ markup = """
+ <?php ?>
+ <div id="1"></div>
+ """
+
+ ids = []
+ soup = self.soup(markup, 'html.parser')
+ for el in soup.select(':root'):
+ ids.append(el['id'])
+ self.assertEqual(sorted(ids), sorted(['1']))
+
+ def test_root_doctype(self):
+ """Test when there is root and doc type."""
+
+ markup = """
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd">
+ <div id="1"></div>
+ """
+
+ ids = []
+ soup = self.soup(markup, 'html.parser')
+ for el in soup.select(':root'):
+ ids.append(el['id'])
+ self.assertEqual(sorted(ids), sorted(['1']))
+
class TestRootQuirks(TestRoot):
"""Test root selectors with quirks."""
1
0
Hello community,
here is the log from the commit of package python-stestr for openSUSE:Factory checked in at 2019-07-30 13:04:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-stestr (Old)
and /work/SRC/openSUSE:Factory/.python-stestr.new.4126 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-stestr"
Tue Jul 30 13:04:48 2019 rev:10 rq:717577 version:2.4.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-stestr/python-stestr.changes 2019-03-29 20:35:45.594521189 +0100
+++ /work/SRC/openSUSE:Factory/.python-stestr.new.4126/python-stestr.changes 2019-07-30 13:04:49.526396465 +0200
@@ -1,0 +2,8 @@
+Mon Jul 22 12:47:43 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 2.4.0:
+ * Discover python executable when discover is not used
+ * various bugfixes
+- Remove merged patch pyyaml5.patch
+
+-------------------------------------------------------------------
Old:
----
pyyaml5.patch
stestr-2.3.1.tar.gz
New:
----
stestr-2.4.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-stestr.spec ++++++
--- /var/tmp/diff_new_pack.LZFgEN/_old 2019-07-30 13:04:50.162396329 +0200
+++ /var/tmp/diff_new_pack.LZFgEN/_new 2019-07-30 13:04:50.166396328 +0200
@@ -18,14 +18,13 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-stestr
-Version: 2.3.1
+Version: 2.4.0
Release: 0
Summary: A test runner runner similar to testrepository
License: Apache-2.0
Group: Development/Languages/Python
URL: https://github.com/mtreinish/stestr
Source: https://files.pythonhosted.org/packages/source/s/stestr/stestr-%{version}.t…
-Patch0: pyyaml5.patch
BuildRequires: %{python_module PyYAML >= 3.10.0}
BuildRequires: %{python_module SQLAlchemy}
BuildRequires: %{python_module cliff >= 2.8.0}
@@ -75,7 +74,6 @@
%prep
%setup -q -n stestr-%{version}
-%patch0 -p1
# do not test sql
rm stestr/tests/repository/test_sql.py
++++++ stestr-2.3.1.tar.gz -> stestr-2.4.0.tar.gz ++++++
++++ 2143 lines of diff (skipped)
1
0
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 <tchvatal(a)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-%{vers…
-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/Py… \
+ --destination $AGENT_TOOLSDIRECTORY/Python/2.7.15
+
+ azcopy --recursive \
+ --source https://vstsagenttools.blob.core.windows.net/tools/hostedtoolcache/linux/Py… \
+ --destination $AGENT_TOOLSDIRECTORY/Python/3.5.5
+
+ azcopy --recursive \
+ --source https://vstsagenttools.blob.core.windows.net/tools/hostedtoolcache/linux/Py… \
+ --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 dan(a)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 =
1
0
Hello community,
here is the log from the commit of package python-wrapt for openSUSE:Factory checked in at 2019-07-30 13:04:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-wrapt (Old)
and /work/SRC/openSUSE:Factory/.python-wrapt.new.4126 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-wrapt"
Tue Jul 30 13:04:35 2019 rev:8 rq:717552 version:1.11.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-wrapt/python-wrapt.changes 2019-03-12 09:46:46.239617527 +0100
+++ /work/SRC/openSUSE:Factory/.python-wrapt.new.4126/python-wrapt.changes 2019-07-30 13:04:38.402398839 +0200
@@ -1,0 +2,6 @@
+Mon Jul 22 11:37:01 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 1.11.2:
+ * Fix possible crash when garbage collection kicks in when invoking a destructor of wrapped object.
+
+-------------------------------------------------------------------
Old:
----
1.11.1.tar.gz
New:
----
1.11.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-wrapt.spec ++++++
--- /var/tmp/diff_new_pack.W8mdS9/_old 2019-07-30 13:04:38.962398719 +0200
+++ /var/tmp/diff_new_pack.W8mdS9/_new 2019-07-30 13:04:38.962398719 +0200
@@ -19,7 +19,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-wrapt
-Version: 1.11.1
+Version: 1.11.2
Release: 0
Summary: A Python module for decorators, wrappers and monkey patching
License: BSD-2-Clause
++++++ 1.11.1.tar.gz -> 1.11.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/appveyor.yml new/wrapt-1.11.2/appveyor.yml
--- old/wrapt-1.11.1/appveyor.yml 2019-01-19 06:37:04.000000000 +0100
+++ new/wrapt-1.11.2/appveyor.yml 2019-06-18 03:10:12.000000000 +0200
@@ -3,9 +3,6 @@
- PYTHON: "C:\\Python27-x64"
TOX_ENV: "py27-install-extensions,py27-disable-extensions,py27-without-extensions"
- - PYTHON: "C:\\Python34-x64"
- TOX_ENV: "py34-install-extensions,py34-disable-extensions,py34-without-extensions"
-
- PYTHON: "C:\\Python35-x64"
TOX_ENV: "py35-install-extensions,py35-disable-extensions,py35-without-extensions"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/docs/changes.rst new/wrapt-1.11.2/docs/changes.rst
--- old/wrapt-1.11.1/docs/changes.rst 2019-01-19 06:37:04.000000000 +0100
+++ new/wrapt-1.11.2/docs/changes.rst 2019-06-18 03:10:12.000000000 +0200
@@ -1,6 +1,14 @@
Release Notes
=============
+Version 1.11.2
+---------------
+
+**Bugs Fixed**
+
+* Fix possible crash when garbage collection kicks in when invoking a
+ destructor of wrapped object.
+
Version 1.11.1
---------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/docs/conf.py new/wrapt-1.11.2/docs/conf.py
--- old/wrapt-1.11.1/docs/conf.py 2019-01-19 06:37:04.000000000 +0100
+++ new/wrapt-1.11.2/docs/conf.py 2019-06-18 03:10:12.000000000 +0200
@@ -50,7 +50,7 @@
# The short X.Y version.
version = '1.11'
# The full version, including alpha/beta/rc tags.
-release = '1.11.1'
+release = '1.11.2'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/setup.py new/wrapt-1.11.2/setup.py
--- old/wrapt-1.11.1/setup.py 2019-01-19 06:37:04.000000000 +0100
+++ new/wrapt-1.11.2/setup.py 2019-06-18 03:10:12.000000000 +0200
@@ -11,7 +11,7 @@
if sys.platform == 'win32':
build_ext_errors = (CCompilerError, DistutilsExecError,
- DistutilsPlatformError, IOError, OSError)
+ DistutilsPlatformError, IOError, OSError, ValueError)
else:
build_ext_errors = (CCompilerError, DistutilsExecError,
DistutilsPlatformError)
@@ -48,7 +48,7 @@
setup_kwargs = dict(
name='wrapt',
- version='1.11.1',
+ version='1.11.2',
description='Module for decorators, wrappers and monkey patching.',
long_description=open('README.rst').read(),
author='Graham Dumpleton',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/src/wrapt/__init__.py new/wrapt-1.11.2/src/wrapt/__init__.py
--- old/wrapt-1.11.1/src/wrapt/__init__.py 2019-01-19 06:37:04.000000000 +0100
+++ new/wrapt-1.11.2/src/wrapt/__init__.py 2019-06-18 03:10:12.000000000 +0200
@@ -1,4 +1,4 @@
-__version_info__ = ('1', '11', '1')
+__version_info__ = ('1', '11', '2')
__version__ = '.'.join(__version_info__)
from .wrappers import (ObjectProxy, CallableObjectProxy, FunctionWrapper,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/src/wrapt/_wrappers.c new/wrapt-1.11.2/src/wrapt/_wrappers.c
--- old/wrapt-1.11.1/src/wrapt/_wrappers.c 2019-01-19 06:37:04.000000000 +0100
+++ new/wrapt-1.11.2/src/wrapt/_wrappers.c 2019-06-18 03:10:12.000000000 +0200
@@ -2007,6 +2007,8 @@
static void WraptPartialCallableObjectProxy_dealloc(
WraptPartialCallableObjectProxyObject *self)
{
+ PyObject_GC_UnTrack(self);
+
WraptPartialCallableObjectProxy_clear(self);
WraptObjectProxy_dealloc((WraptObjectProxyObject *)self);
@@ -2263,6 +2265,8 @@
static void WraptFunctionWrapperBase_dealloc(WraptFunctionWrapperObject *self)
{
+ PyObject_GC_UnTrack(self);
+
WraptFunctionWrapperBase_clear(self);
WraptObjectProxy_dealloc((WraptObjectProxyObject *)self);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/wrapt-1.11.1/src/wrapt/decorators.py new/wrapt-1.11.2/src/wrapt/decorators.py
--- old/wrapt-1.11.1/src/wrapt/decorators.py 2019-01-19 06:37:04.000000000 +0100
+++ new/wrapt-1.11.2/src/wrapt/decorators.py 2019-06-18 03:10:12.000000000 +0200
@@ -393,9 +393,12 @@
# We first return our magic function wrapper here so we can
# determine in what context the decorator factory was used. In
- # other words, it is itself a universal decorator.
+ # other words, it is itself a universal decorator. The decorator
+ # function is used as the adapter so that linters see a signature
+ # corresponding to the decorator and not the wrapper it is being
+ # applied to.
- return _build(wrapper, _wrapper)
+ return _build(wrapper, _wrapper, adapter=decorator)
else:
# The wrapper still has not been provided, so we are just
1
0
Hello community,
here is the log from the commit of package python-zipp for openSUSE:Factory checked in at 2019-07-30 13:04:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-zipp (Old)
and /work/SRC/openSUSE:Factory/.python-zipp.new.4126 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-zipp"
Tue Jul 30 13:04:30 2019 rev:6 rq:717548 version:0.5.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-zipp/python-zipp.changes 2019-06-13 22:38:02.320289841 +0200
+++ /work/SRC/openSUSE:Factory/.python-zipp.new.4126/python-zipp.changes 2019-07-30 13:04:31.958400214 +0200
@@ -1,0 +2,6 @@
+Mon Jul 22 11:23:27 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 0.5.2:
+ * #7: Parent of a directory now actually returns the parent.
+
+-------------------------------------------------------------------
Old:
----
zipp-0.5.1.tar.gz
New:
----
zipp-0.5.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-zipp.spec ++++++
--- /var/tmp/diff_new_pack.ZEenRl/_old 2019-07-30 13:04:33.122399965 +0200
+++ /var/tmp/diff_new_pack.ZEenRl/_new 2019-07-30 13:04:33.122399965 +0200
@@ -26,7 +26,7 @@
%bcond_with test
%endif
Name: python-zipp%{psuffix}
-Version: 0.5.1
+Version: 0.5.2
Release: 0
Summary: Pathlib-compatible object wrapper for zip files
License: MIT
++++++ zipp-0.5.1.tar.gz -> zipp-0.5.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zipp-0.5.1/CHANGES.rst new/zipp-0.5.2/CHANGES.rst
--- old/zipp-0.5.1/CHANGES.rst 2019-05-16 17:34:53.000000000 +0200
+++ new/zipp-0.5.2/CHANGES.rst 2019-07-07 23:13:42.000000000 +0200
@@ -1,3 +1,8 @@
+v0.5.2
+======
+
+#7: Parent of a directory now actually returns the parent.
+
v0.5.1
======
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zipp-0.5.1/PKG-INFO new/zipp-0.5.2/PKG-INFO
--- old/zipp-0.5.1/PKG-INFO 2019-05-16 17:35:17.000000000 +0200
+++ new/zipp-0.5.2/PKG-INFO 2019-07-07 23:14:00.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: zipp
-Version: 0.5.1
+Version: 0.5.2
Summary: Backport of pathlib-compatible object wrapper for zip files
Home-page: https://github.com/jaraco/zipp
Author: Jason R. Coombs
@@ -35,5 +35,5 @@
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Requires-Python: >=2.7
-Provides-Extra: testing
Provides-Extra: docs
+Provides-Extra: testing
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zipp-0.5.1/appveyor.yml new/zipp-0.5.2/appveyor.yml
--- old/zipp-0.5.1/appveyor.yml 2019-05-16 17:34:53.000000000 +0200
+++ new/zipp-0.5.2/appveyor.yml 2019-07-07 23:13:42.000000000 +0200
@@ -18,7 +18,7 @@
- '%LOCALAPPDATA%\pip\Cache'
test_script:
- - "python -m pip install tox tox-venv"
+ - "python -m pip install -U tox tox-venv virtualenv"
- "tox"
version: '{build}'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zipp-0.5.1/test_zipp.py new/zipp-0.5.2/test_zipp.py
--- old/zipp-0.5.1/test_zipp.py 2019-05-16 17:34:53.000000000 +0200
+++ new/zipp-0.5.2/test_zipp.py 2019-07-07 23:13:42.000000000 +0200
@@ -170,3 +170,14 @@
root = zipp.Path(zipfile_abcde)
assert (root / 'a').parent.at == ''
assert (root / 'a' / 'b').parent.at == 'a/'
+
+ def test_dir_parent(self):
+ for zipfile_abcde in self.zipfile_abcde():
+ root = zipp.Path(zipfile_abcde)
+ assert (root / 'b').parent.at == ''
+ assert (root / 'b/').parent.at == ''
+
+ def test_missing_dir_parent(self):
+ for zipfile_abcde in self.zipfile_abcde():
+ root = zipp.Path(zipfile_abcde)
+ assert (root / 'missing dir/').parent.at == ''
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zipp-0.5.1/tox.ini new/zipp-0.5.2/tox.ini
--- old/zipp-0.5.1/tox.ini 2019-05-16 17:34:53.000000000 +0200
+++ new/zipp-0.5.2/tox.ini 2019-07-07 23:13:42.000000000 +0200
@@ -24,8 +24,7 @@
skip_install = True
deps =
pep517>=0.5
- # workaround for https://github.com/pypa/twine/issues/423
- git+https://github.com/pypa/twine
+ twine>=1.13
path.py
commands =
python -c "import path; path.Path('dist').rmtree_p()"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zipp-0.5.1/zipp.egg-info/PKG-INFO new/zipp-0.5.2/zipp.egg-info/PKG-INFO
--- old/zipp-0.5.1/zipp.egg-info/PKG-INFO 2019-05-16 17:35:16.000000000 +0200
+++ new/zipp-0.5.2/zipp.egg-info/PKG-INFO 2019-07-07 23:14:00.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: zipp
-Version: 0.5.1
+Version: 0.5.2
Summary: Backport of pathlib-compatible object wrapper for zip files
Home-page: https://github.com/jaraco/zipp
Author: Jason R. Coombs
@@ -35,5 +35,5 @@
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Requires-Python: >=2.7
-Provides-Extra: testing
Provides-Extra: docs
+Provides-Extra: testing
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/zipp-0.5.1/zipp.py new/zipp-0.5.2/zipp.py
--- old/zipp-0.5.1/zipp.py 2019-05-16 17:34:53.000000000 +0200
+++ new/zipp-0.5.2/zipp.py 2019-07-07 23:13:42.000000000 +0200
@@ -159,7 +159,7 @@
@property
def parent(self):
- parent_at = posixpath.dirname(self.at)
+ parent_at = posixpath.dirname(self.at.rstrip('/'))
if parent_at:
parent_at += '/'
return self._next(parent_at)
1
0
Hello community,
here is the log from the commit of package python-pytest-benchmark for openSUSE:Factory checked in at 2019-07-30 13:04:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pytest-benchmark (Old)
and /work/SRC/openSUSE:Factory/.python-pytest-benchmark.new.4126 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pytest-benchmark"
Tue Jul 30 13:04:24 2019 rev:4 rq:717475 version:3.2.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pytest-benchmark/python-pytest-benchmark.changes 2019-05-16 21:56:00.714889525 +0200
+++ /work/SRC/openSUSE:Factory/.python-pytest-benchmark.new.4126/python-pytest-benchmark.changes 2019-07-30 13:04:25.614401567 +0200
@@ -1,0 +2,7 @@
+Mon Jul 22 08:30:20 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Disable tests for now, the output from pytest changed quite a
+ bit and upstream needs to adapt it for pytest5. The plugin
+ actually works, it just fails its own testsuite...
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pytest-benchmark.spec ++++++
--- /var/tmp/diff_new_pack.ZEdOGz/_old 2019-07-30 13:04:26.226401437 +0200
+++ /var/tmp/diff_new_pack.ZEdOGz/_new 2019-07-30 13:04:26.230401435 +0200
@@ -78,7 +78,7 @@
%check
export PYTHONDONTWRITEBYTECODE=1
-%pytest tests
+#%%pytest tests
%post
%{python_install_alternative pytest-benchmark py.test-benchmark}
1
0
Hello community,
here is the log from the commit of package python-pip for openSUSE:Factory checked in at 2019-07-30 13:04:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pip (Old)
and /work/SRC/openSUSE:Factory/.python-pip.new.4126 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pip"
Tue Jul 30 13:04:18 2019 rev:43 rq:717473 version:19.1.1+git.1557777841.63878672
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pip/python-pip.changes 2019-05-17 23:40:44.737992490 +0200
+++ /work/SRC/openSUSE:Factory/.python-pip.new.4126/python-pip.changes 2019-07-30 13:04:19.662402838 +0200
@@ -1,0 +2,6 @@
+Mon Jul 22 08:24:11 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Add patch to build with pytest5, also sent upstream:
+ * pytest5.patch
+
+-------------------------------------------------------------------
New:
----
pytest5.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pip.spec ++++++
--- /var/tmp/diff_new_pack.DnCDRK/_old 2019-07-30 13:04:20.198402723 +0200
+++ /var/tmp/diff_new_pack.DnCDRK/_new 2019-07-30 13:04:20.198402723 +0200
@@ -34,6 +34,7 @@
URL: http://www.pip-installer.org
Source: pip-%{version}.tar.xz
Patch0: pip-shipped-requests-cabundle.patch
+Patch1: pytest5.patch
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
@@ -71,6 +72,7 @@
%prep
%setup -q -n pip-%{version}
%patch0 -p1
+%patch1 -p1
# remove shebangs verbosely (if only sed would offer a verbose mode...)
for f in $(find src -name \*.py -exec grep -l '^#!%{_bindir}/env' {} \;); do
sed -i 's|^#!%{_bindir}/env .*$||g' $f
++++++ pytest5.patch ++++++
Index: pip-19.1.1+git.1557777841.63878672/tests/unit/test_wheel.py
===================================================================
--- pip-19.1.1+git.1557777841.63878672.orig/tests/unit/test_wheel.py
+++ pip-19.1.1+git.1557777841.63878672/tests/unit/test_wheel.py
@@ -378,7 +378,7 @@ def test_check_compatibility():
# test raises with correct error
with pytest.raises(UnsupportedWheel) as e:
wheel.check_compatibility(higher_v, name)
- assert 'is not compatible' in str(e)
+ assert 'is not compatible' in str(e.value)
# Should only log.warning - minor version is greater
higher_v = (vc[0], vc[1] + 1)
1
0
Hello community,
here is the log from the commit of package python-pytest-travis-fold for openSUSE:Factory checked in at 2019-07-30 13:04:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pytest-travis-fold (Old)
and /work/SRC/openSUSE:Factory/.python-pytest-travis-fold.new.4126 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pytest-travis-fold"
Tue Jul 30 13:04:12 2019 rev:3 rq:717472 version:1.3.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pytest-travis-fold/python-pytest-travis-fold.changes 2019-03-26 15:44:50.644120157 +0100
+++ /work/SRC/openSUSE:Factory/.python-pytest-travis-fold.new.4126/python-pytest-travis-fold.changes 2019-07-30 13:04:13.586404133 +0200
@@ -1,0 +2,11 @@
+Mon Jul 22 08:20:26 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Skip failing test with pytest5 (different regexp match) as there
+ are no really active upstream commits
+
+-------------------------------------------------------------------
+Thu Jul 18 09:30:03 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Fix pytest call
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pytest-travis-fold.spec ++++++
--- /var/tmp/diff_new_pack.80rr0E/_old 2019-07-30 13:04:14.050404035 +0200
+++ /var/tmp/diff_new_pack.80rr0E/_new 2019-07-30 13:04:14.050404035 +0200
@@ -23,18 +23,17 @@
Summary: Pytest plugin to fold captured output sections in Travis CI build log
License: MIT
Group: Development/Languages/Python
-Url: https://github.com/abusalimov/pytest-travis-fold
+URL: https://github.com/abusalimov/pytest-travis-fold
Source: https://github.com/abusalimov/pytest-travis-fold/archive/v1.3.0.tar.gz#/pyt…
BuildRequires: %{python_module setuptools}
+BuildRequires: fdupes
BuildRequires: python-rpm-macros
+Requires: python-pytest >= 2.6.0
+BuildArch: noarch
# SECTION test requirements
BuildRequires: %{python_module pytest >= 2.6.0}
BuildRequires: %{python_module pytest-runner}
# /SECTION
-BuildRequires: fdupes
-Requires: python-pytest >= 2.6.0
-BuildArch: noarch
-
%python_subpackages
%description
@@ -54,7 +53,9 @@
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
-%python_exec setup.py pytest
+# test_travis_fixture_registered wrongly compares in new releases
+# upstream has no commits since 2014, just skip it
+%pytest -k 'not test_travis_fixture_registered'
%files %{python_files}
%doc README.rst
1
0