Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-Fabric for openSUSE:Factory 
checked in at 2023-10-19 22:50:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-Fabric (Old)
 and      /work/SRC/openSUSE:Factory/.python-Fabric.new.1945 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-Fabric"

Thu Oct 19 22:50:22 2023 rev:44 rq:1118991 version:3.2.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-Fabric/python-Fabric.changes      
2023-07-03 17:43:03.808816802 +0200
+++ /work/SRC/openSUSE:Factory/.python-Fabric.new.1945/python-Fabric.changes    
2023-10-19 22:52:37.769987513 +0200
@@ -1,0 +2,48 @@
+Thu Oct 19 08:51:37 UTC 2023 - Ondřej Súkup <mimi...@gmail.com>
+
+- Update to 3.2.2
+- add fix-test-deps.patch to remove vendored dependencies
+ *[Bug]: fabric.runners.Remote failed to properly deregister its SIGWINCH 
signal
+    handler on shutdown; in rare situations this could cause tracebacks when
+    the Python process receives SIGWINCH while no remote session is active.
+    This has been fixed.
+ * [Bug] #2204: The signal handling functionality added in Fabric 2.6 caused
+    unrecoverable tracebacks when invoked from inside a thread (such as
+    the use of fabric.group.ThreadingGroup) under certain interpreter versions.
+    This has been fixed by simply refusing to register signal handlers when not
+    in the main thread. Thanks to Francesco Giordano and others for the 
reports.
+ * [Bug]: Neglected to actually add deprecated to our runtime dependency
+    specification (it was still in our development dependencies). This has 
been fixed.
+ * [Feature]: Enhanced fabric.testing in ways large and small:
+    Backwards-compatibly merged the functionality of MockSFTP into MockRemote 
(may be
+    opted-into by instantiating the latter with enable_sftp=True) so you can 
mock
+    out both SSH and SFTP functionality in the same test, which was previously 
impossible.
+    It also means you can use this in a Pytest autouse fixture to prevent any 
tests
+    from accidentally hitting the network!
+    A new pytest fixture, remote_with_sftp, has been added which leverages the 
previous
+    bullet point (an all-in-one fixture suitable for, eg, preventing any 
incidental
+    ssh/sftp attempts during test execution).
+    A pile of documentation and test enhancements (yes, testing our testing 
helpers is a thing).
+ * [Support]: Added a new runtime dependency on the Deprecated library.
+ * [Support]: Language update: applied s/sanity/safety/g to the codebase
+    (with the few actual API members using the term now marked deprecated & 
new ones added
+    in the meantime, mostly in fabric.testing).
+ * [Feature]: Add a new CLI flag to fab, fab --list-agent-keys, which will 
attempt
+    to connect to your local SSH agent and print a key list, similarly to 
ssh-add -l.
+    This is mostly useful for expectations-checking Fabric and Paramiko’s 
agent
+    functionality, or for situations where you might not have ssh-add handy.
+ * [Feature]: Implement opt-in support for Paramiko 3.2’s AuthStrategy 
machinery, as follows:
+    Added a new module and class, fabric.auth.OpenSSHAuthStrategy, which 
leverages
+    aforementioned new Paramiko functionality to marry loaded SSH config files 
with
+    Fabric-level and runtime-level parameters, arriving at what should
+    be OpenSSH-client-compatible authentication behavior. See its API docs for 
details.
+    Added new configuration settings:
+      authentication.strategy_class, which defaults to None,
+        but can be set to OpenSSHAuthStrategy to opt-in to the new behavior.
+      authentication.identities, which defaults to the empty list, and can
+        be a list of private key paths for use by the new strategy class.
+ * [Bug] #2263: Explicitly add our dependency on decorator to setup.py instead 
of using
+    Invoke’s old, now removed, vendored copy of same. This allows Fabric to 
happily use
+    Invoke 2.1 and above
+
+-------------------------------------------------------------------

Old:
----
  fabric-3.0.1.tar.gz

New:
----
  fabric-3.2.2.tar.gz
  fix-test-deps.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-Fabric.spec ++++++
--- /var/tmp/diff_new_pack.5VpOnY/_old  2023-10-19 22:52:38.198003037 +0200
+++ /var/tmp/diff_new_pack.5VpOnY/_new  2023-10-19 22:52:38.202003182 +0200
@@ -18,7 +18,7 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-Fabric
-Version:        3.0.1
+Version:        3.2.2
 Release:        0
 Summary:        A Pythonic tool for remote execution and deployment
 License:        BSD-2-Clause
@@ -26,16 +26,21 @@
 Source:         
https://files.pythonhosted.org/packages/source/f/fabric/fabric-%{version}.tar.gz
 # PATCH-FIX-UPSTREAM gh#fabric/fabric#2209
 Patch0:         fix-executable.patch
+# PATCH-FIX-OPENSUSE fix-test-deps.patch - remove usage of icecream and 
vendored libs
+Patch1:         fix-test-deps.patch
+BuildRequires:  %{python_module Deprecated}
 BuildRequires:  %{python_module decorator}
 BuildRequires:  %{python_module invoke >= 2.0}
-BuildRequires:  %{python_module paramiko >= 2.4}
+BuildRequires:  %{python_module lexicon}
+BuildRequires:  %{python_module paramiko >= 3.2}
 BuildRequires:  %{python_module pytest-relaxed}
 BuildRequires:  %{python_module setuptools}
 BuildRequires:  fdupes
 BuildRequires:  python-rpm-macros
+Requires:       python-Deprecated
 Requires:       python-decorator
 Requires:       python-invoke >= 2.0
-Requires:       python-paramiko >= 2.4
+Requires:       python-paramiko >= 3.2
 Requires(post): update-alternatives
 Requires(postun):update-alternatives
 Conflicts:      python-Fabric3

++++++ fabric-3.0.1.tar.gz -> fabric-3.2.2.tar.gz ++++++
++++ 1895 lines of diff (skipped)

++++++ fix-test-deps.patch ++++++
Index: fabric-3.2.2/tests/conftest.py
===================================================================
--- fabric-3.2.2.orig/tests/conftest.py
+++ fabric-3.2.2/tests/conftest.py
@@ -4,15 +4,9 @@ from unittest.mock import patch
 
 from pytest import fixture
 
-# Set up icecream globally for convenience.
-from icecream import install as install_icecream
-
 from fabric.testing.fixtures import client, remote, sftp, sftp_objs, transfer
 
 
-install_icecream()
-
-
 # TODO: does this want to end up in the public fixtures module too?
 @fixture(autouse=True)
 def no_user_ssh_config():
Index: fabric-3.2.2/tests/_util.py
===================================================================
--- fabric-3.2.2.orig/tests/_util.py
+++ fabric-3.2.2/tests/_util.py
@@ -3,7 +3,7 @@ import os
 import re
 import sys
 
-from invoke.vendor.lexicon import Lexicon
+from lexicon import Lexicon
 from pytest_relaxed import trap
 
 from fabric.main import make_program
Index: fabric-3.2.2/tests/auth.py
===================================================================
--- fabric-3.2.2.orig/tests/auth.py
+++ fabric-3.2.2/tests/auth.py
@@ -2,7 +2,7 @@ from getpass import getpass
 from pathlib import Path
 from unittest.mock import Mock, patch
 
-from invoke.vendor.lexicon import Lexicon
+from lexicon import Lexicon
 from pytest import raises, fixture
 from paramiko import (
     AgentKey,
Index: fabric-3.2.2/tests/config.py
===================================================================
--- fabric-3.2.2.orig/tests/config.py
+++ fabric-3.2.2/tests/config.py
@@ -3,7 +3,7 @@ from os.path import join, expanduser
 
 from paramiko.config import SSHConfig
 from invoke import Local
-from invoke.vendor.lexicon import Lexicon
+from lexicon import Lexicon
 
 from fabric import Config, Remote, RemoteShell
 from fabric.util import get_local_user
Index: fabric-3.2.2/tests/connection.py
===================================================================
--- fabric-3.2.2.orig/tests/connection.py
+++ fabric-3.2.2/tests/connection.py
@@ -13,7 +13,7 @@ from paramiko import SSHConfig
 import pytest  # for mark, internal raises
 from pytest import skip, param
 from pytest_relaxed import raises
-from invoke.vendor.lexicon import Lexicon
+from lexicon import Lexicon
 
 from invoke.config import Config as InvokeConfig
 from invoke.exceptions import ThreadException

Reply via email to