Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-scp for openSUSE:Factory 
checked in at 2021-09-12 20:09:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-scp (Old)
 and      /work/SRC/openSUSE:Factory/.python-scp.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-scp"

Sun Sep 12 20:09:42 2021 rev:8 rq:918512 version:0.14.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-scp/python-scp.changes    2021-09-07 
21:22:11.949359366 +0200
+++ /work/SRC/openSUSE:Factory/.python-scp.new.1899/python-scp.changes  
2021-09-12 20:09:50.688104444 +0200
@@ -1,0 +2,16 @@
+Sat Sep 11 22:23:23 UTC 2021 - Martin Hauke <[email protected]>
+
+- Run unittests
+- Get tarball from github.com instead pythonhosted.org
+
+-------------------------------------------------------------------
+Sat Sep 11 12:35:33 UTC 2021 - Martin Hauke <[email protected]>
+
+- Update to 0.14.1
+  * Don't fail if 'pathlib' doesn't import (Python 2)
+  * Accept 'unicode' objects as paths (Python 2)
+- Update to 0.14.0
+  * Accept iterables other than list and tuple in get() and put()
+  * Accept pathlib.Path objects
+
+-------------------------------------------------------------------

Old:
----
  scp-0.13.6.tar.gz

New:
----
  scp-0.14.1.tar.gz

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

Other differences:
------------------
++++++ python-scp.spec ++++++
--- /var/tmp/diff_new_pack.fngzrP/_old  2021-09-12 20:09:51.156104975 +0200
+++ /var/tmp/diff_new_pack.fngzrP/_new  2021-09-12 20:09:51.160104979 +0200
@@ -19,16 +19,18 @@
 
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 Name:           python-scp
-Version:        0.13.6
+Version:        0.14.1
 Release:        0
 Summary:        SSH scp module for paramiko
 License:        LGPL-2.1-or-later
 Group:          Development/Languages/Python
 URL:            https://github.com/jbardin/scp.py
-Source:         
https://files.pythonhosted.org/packages/source/s/scp/scp-%{version}.tar.gz
+Source:         
https://github.com/jbardin/scp.py/archive/refs/tags/v%{version}.tar.gz#/scp-%{version}.tar.gz
 BuildRequires:  %{python_module paramiko}
 BuildRequires:  %{python_module setuptools}
 BuildRequires:  fdupes
+BuildRequires:  openssh-clients
+BuildRequires:  openssh-server
 BuildRequires:  python-rpm-macros
 Requires:       python-paramiko
 BuildArch:      noarch
@@ -40,7 +42,7 @@
 and has only been tested with this implementation.
 
 %prep
-%setup -q -n scp-%{version}
+%setup -q -n scp.py-%{version}
 
 %build
 %python_build
@@ -50,8 +52,9 @@
 %python_expand %fdupes %{buildroot}%{$python_sitelib}
 
 %check
-# tests require running ssh server
-#%%python_exec -m unittest discover
+export SCPPY_PORT=10022
+./.ci/setup_ssh.sh
+%pyunittest -v
 
 %files %{python_files}
 %license LICENSE.txt

++++++ scp-0.13.6.tar.gz -> scp-0.14.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/.ci/setup_ssh.sh 
new/scp.py-0.14.1/.ci/setup_ssh.sh
--- old/scp-0.13.6/.ci/setup_ssh.sh     1970-01-01 01:00:00.000000000 +0100
+++ new/scp.py-0.14.1/.ci/setup_ssh.sh  2021-09-10 19:13:50.000000000 +0200
@@ -0,0 +1,57 @@
+#!/bin/sh
+
+set -e
+
+# Sets up an SSH server
+rm -Rf /tmp/ssh_server
+mkdir /tmp/ssh_server
+cd /tmp/ssh_server
+
+# Server config file
+cat >config <<'EOF'
+Port 10022
+ListenAddress 127.0.0.1
+
+Protocol 2
+HostKey /tmp/ssh_server/key_rsa
+HostKey /tmp/ssh_server/key_dsa
+UsePrivilegeSeparation no
+
+# Authentication
+LoginGraceTime 10
+PermitRootLogin no
+StrictModes no
+UsePAM no
+
+RSAAuthentication yes
+PubkeyAuthentication yes
+AuthorizedKeysFile /tmp/ssh_server/client/id_rsa.pub
+
+PrintMotd yes
+EOF
+
+# Server keys
+ssh-keygen -f key_rsa -N '' -t rsa
+ssh-keygen -f key_dsa -N '' -t dsa
+
+# Client keys
+umask 077
+mkdir client || true
+ssh-keygen -f client/id_rsa -N '' -t rsa
+umask 022
+
+# Starts the server
+/usr/sbin/sshd -f config -h key_rsa -h key_dsa -p 10022
+
+# Sets up the client
+umask 077
+mkdir ~/.ssh || true
+cp client/id_rsa ~/.ssh/id_rsa
+umask 022
+rm -f ~/.ssh/known_hosts
+# ssh-keyscan is bugged, don't use it
+# ssh-keyscan -v -p 10022 -t rsa 127.0.0.1 >> ~/.ssh/known_hosts
+ssh -o StrictHostKeyChecking=no \
+    -o PasswordAuthentication=no \
+    -p 10022 127.0.0.1 exit
+cat ~/.ssh/known_hosts
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/.github/workflows/test.yml 
new/scp.py-0.14.1/.github/workflows/test.yml
--- old/scp-0.13.6/.github/workflows/test.yml   1970-01-01 01:00:00.000000000 
+0100
+++ new/scp.py-0.14.1/.github/workflows/test.yml        2021-09-10 
19:13:50.000000000 +0200
@@ -0,0 +1,33 @@
+name: Test
+
+on:
+  - push
+  - pull_request
+
+jobs:
+  build:
+    strategy:
+      matrix:
+        python-version:
+          - "2.7"
+          - "3.5"
+          - "3.7"
+          - "3.8"
+          - "3.9"
+    runs-on: ubuntu-latest
+    steps:
+    - uses: actions/checkout@v2
+    - uses: actions/setup-python@v2
+      with:
+        python-version: ${{ matrix.python-version }}
+    - run: pip install readme_renderer
+    - name: Set up SSH
+      run: .ci/setup_ssh.sh
+    - name: Install SSH
+      run: |
+        sudo apt-get update -qq
+        sudo apt-get install -qq openssh-client openssh-server
+    - run: pip install -e .
+    - run: SCPPY_PORT=10022 python test.py
+    - run: python setup.py check -r -s
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/CHANGELOG.md 
new/scp.py-0.14.1/CHANGELOG.md
--- old/scp-0.13.6/CHANGELOG.md 2021-07-09 18:00:30.000000000 +0200
+++ new/scp.py-0.14.1/CHANGELOG.md      2021-09-10 19:13:50.000000000 +0200
@@ -1,5 +1,15 @@
 # Changelog
 
+## 0.14.1 (2021-09-10)
+
+- Don't fail if 'pathlib' doesn't import (Python 2)
+- Accept 'unicode' objects as paths (Python 2)
+
+## 0.14.0 (2021-09-07)
+
+- Accept iterables other than list and tuple in `get()` and `put()`
+- Accept `pathlib.Path` objects
+
 ## 0.13.6 (2021-07-09)
 
 - Fix put when the source directory has a trailing slash. It will now work 
similarly to rsync, copying the contents of the directory.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/PKG-INFO new/scp.py-0.14.1/PKG-INFO
--- old/scp-0.13.6/PKG-INFO     2021-07-09 18:01:56.993384600 +0200
+++ new/scp.py-0.14.1/PKG-INFO  1970-01-01 01:00:00.000000000 +0100
@@ -1,151 +0,0 @@
-Metadata-Version: 1.1
-Name: scp
-Version: 0.13.6
-Summary: scp module for paramiko
-Home-page: https://github.com/jbardin/scp.py
-Author: James Bardin
-Author-email: [email protected]
-License: LGPL-2.1-or-later
-Description: Pure python scp module
-        ======================
-        
-        The scp.py module uses a paramiko transport to send and recieve files 
via the
-        scp1 protocol. This is the protocol as referenced from the openssh scp 
program,
-        and has only been tested with this implementation.
-        
-        
-        Example
-        -------
-        
-        ..  code-block:: python
-        
-            from paramiko import SSHClient
-            from scp import SCPClient
-        
-            ssh = SSHClient()
-            ssh.load_system_host_keys()
-            ssh.connect('example.com')
-        
-            # SCPCLient takes a paramiko transport as an argument
-            scp = SCPClient(ssh.get_transport())
-        
-            scp.put('test.txt', 'test2.txt')
-            scp.get('test2.txt')
-        
-            # Uploading the 'test' directory with its content in the
-            # '/home/user/dump' remote directory
-            scp.put('test', recursive=True, remote_path='/home/user/dump')
-        
-            scp.close()
-        
-        
-        ..  code-block::
-        
-            $ md5sum test.txt test2.txt
-            fc264c65fb17b7db5237cf7ce1780769 test.txt
-            fc264c65fb17b7db5237cf7ce1780769 test2.txt
-        
-        Using 'with' keyword
-        --------------------
-        
-        ..  code-block:: python
-        
-            from paramiko import SSHClient
-            from scp import SCPClient
-        
-            with SSHClient() as ssh:
-                ssh.load_system_host_keys()
-                ssh.connect('example.com')
-        
-                with SCPClient(ssh.get_transport()) as scp:
-                    scp.put('test.txt', 'test2.txt')
-                    scp.get('test2.txt')
-        
-        
-        ..  code-block::
-        
-            $ md5sum test.txt test2.txt
-            fc264c65fb17b7db5237cf7ce1780769 test.txt
-            fc264c65fb17b7db5237cf7ce1780769 test2.txt
-        
-        
-        Uploading file-like objects
-        ---------------------------
-        
-        The ``putfo`` method can be used to upload file-like objects:
-        
-        ..  code-block:: python
-        
-            import io
-            from paramiko import SSHClient
-            from scp import SCPClient
-        
-            ssh = SSHClient()
-            ssh.load_system_host_keys()
-            ssh.connect('example.com')
-        
-            # SCPCLient takes a paramiko transport as an argument
-            scp = SCPClient(ssh.get_transport())
-        
-            # generate in-memory file-like object
-            fl = io.BytesIO()
-            fl.write(b'test')
-            fl.seek(0)
-            # upload it directly from memory
-            scp.putfo(fl, '/tmp/test.txt')
-            # close connection
-            scp.close()
-            # close file handler
-            fl.close()
-        
-        
-        Tracking progress of your file uploads/downloads
-        ------------------------------------------------
-        
-        A ``progress`` function can be given as a callback to the SCPClient to 
handle
-        how the current SCP operation handles the progress of the transfers. 
In the
-        example below we print the percentage complete of the file transfer.
-        
-        ..  code-block:: python
-        
-            from paramiko import SSHClient
-            from scp import SCPClient
-            import sys
-        
-            ssh = SSHClient()
-            ssh.load_system_host_keys()
-            ssh.connect('example.com')
-        
-            # Define progress callback that prints the current percentage 
completed for the file
-            def progress(filename, size, sent):
-                sys.stdout.write("%s's progress: %.2f%%   \r" % (filename, 
float(sent)/float(size)*100) )
-        
-            # SCPCLient takes a paramiko transport and progress callback as 
its arguments.
-            scp = SCPClient(ssh.get_transport(), progress=progress)
-        
-            # you can also use progress4, which adds a 4th parameter to track 
IP and port
-            # useful with multiple threads to track source
-            def progress4(filename, size, sent, peername):
-                sys.stdout.write("(%s:%s) %s's progress: %.2f%%   \r" % 
(peername[0], peername[1], filename, float(sent)/float(size)*100) )
-            scp = SCPClient(ssh.get_transport(), progress4=progress4)
-        
-            scp.put('test.txt', '~/test.txt')
-            # Should now be printing the current progress of your put function.
-        
-            scp.close()
-        
-Keywords: paramiko,ssh,scp,transfer
-Platform: UNKNOWN
-Classifier: Development Status :: 5 - Production/Stable
-Classifier: Intended Audience :: Developers
-Classifier: License :: OSI Approved :: GNU Library or Lesser General Public 
License (LGPL)
-Classifier: Operating System :: OS Independent
-Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 2
-Classifier: Programming Language :: Python :: 2.6
-Classifier: Programming Language :: Python :: 2.7
-Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.3
-Classifier: Programming Language :: Python :: 3.4
-Classifier: Programming Language :: Python :: 3.5
-Classifier: Topic :: Internet
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/scp.egg-info/PKG-INFO 
new/scp.py-0.14.1/scp.egg-info/PKG-INFO
--- old/scp-0.13.6/scp.egg-info/PKG-INFO        2021-07-09 18:01:56.000000000 
+0200
+++ new/scp.py-0.14.1/scp.egg-info/PKG-INFO     1970-01-01 01:00:00.000000000 
+0100
@@ -1,151 +0,0 @@
-Metadata-Version: 1.1
-Name: scp
-Version: 0.13.6
-Summary: scp module for paramiko
-Home-page: https://github.com/jbardin/scp.py
-Author: James Bardin
-Author-email: [email protected]
-License: LGPL-2.1-or-later
-Description: Pure python scp module
-        ======================
-        
-        The scp.py module uses a paramiko transport to send and recieve files 
via the
-        scp1 protocol. This is the protocol as referenced from the openssh scp 
program,
-        and has only been tested with this implementation.
-        
-        
-        Example
-        -------
-        
-        ..  code-block:: python
-        
-            from paramiko import SSHClient
-            from scp import SCPClient
-        
-            ssh = SSHClient()
-            ssh.load_system_host_keys()
-            ssh.connect('example.com')
-        
-            # SCPCLient takes a paramiko transport as an argument
-            scp = SCPClient(ssh.get_transport())
-        
-            scp.put('test.txt', 'test2.txt')
-            scp.get('test2.txt')
-        
-            # Uploading the 'test' directory with its content in the
-            # '/home/user/dump' remote directory
-            scp.put('test', recursive=True, remote_path='/home/user/dump')
-        
-            scp.close()
-        
-        
-        ..  code-block::
-        
-            $ md5sum test.txt test2.txt
-            fc264c65fb17b7db5237cf7ce1780769 test.txt
-            fc264c65fb17b7db5237cf7ce1780769 test2.txt
-        
-        Using 'with' keyword
-        --------------------
-        
-        ..  code-block:: python
-        
-            from paramiko import SSHClient
-            from scp import SCPClient
-        
-            with SSHClient() as ssh:
-                ssh.load_system_host_keys()
-                ssh.connect('example.com')
-        
-                with SCPClient(ssh.get_transport()) as scp:
-                    scp.put('test.txt', 'test2.txt')
-                    scp.get('test2.txt')
-        
-        
-        ..  code-block::
-        
-            $ md5sum test.txt test2.txt
-            fc264c65fb17b7db5237cf7ce1780769 test.txt
-            fc264c65fb17b7db5237cf7ce1780769 test2.txt
-        
-        
-        Uploading file-like objects
-        ---------------------------
-        
-        The ``putfo`` method can be used to upload file-like objects:
-        
-        ..  code-block:: python
-        
-            import io
-            from paramiko import SSHClient
-            from scp import SCPClient
-        
-            ssh = SSHClient()
-            ssh.load_system_host_keys()
-            ssh.connect('example.com')
-        
-            # SCPCLient takes a paramiko transport as an argument
-            scp = SCPClient(ssh.get_transport())
-        
-            # generate in-memory file-like object
-            fl = io.BytesIO()
-            fl.write(b'test')
-            fl.seek(0)
-            # upload it directly from memory
-            scp.putfo(fl, '/tmp/test.txt')
-            # close connection
-            scp.close()
-            # close file handler
-            fl.close()
-        
-        
-        Tracking progress of your file uploads/downloads
-        ------------------------------------------------
-        
-        A ``progress`` function can be given as a callback to the SCPClient to 
handle
-        how the current SCP operation handles the progress of the transfers. 
In the
-        example below we print the percentage complete of the file transfer.
-        
-        ..  code-block:: python
-        
-            from paramiko import SSHClient
-            from scp import SCPClient
-            import sys
-        
-            ssh = SSHClient()
-            ssh.load_system_host_keys()
-            ssh.connect('example.com')
-        
-            # Define progress callback that prints the current percentage 
completed for the file
-            def progress(filename, size, sent):
-                sys.stdout.write("%s's progress: %.2f%%   \r" % (filename, 
float(sent)/float(size)*100) )
-        
-            # SCPCLient takes a paramiko transport and progress callback as 
its arguments.
-            scp = SCPClient(ssh.get_transport(), progress=progress)
-        
-            # you can also use progress4, which adds a 4th parameter to track 
IP and port
-            # useful with multiple threads to track source
-            def progress4(filename, size, sent, peername):
-                sys.stdout.write("(%s:%s) %s's progress: %.2f%%   \r" % 
(peername[0], peername[1], filename, float(sent)/float(size)*100) )
-            scp = SCPClient(ssh.get_transport(), progress4=progress4)
-        
-            scp.put('test.txt', '~/test.txt')
-            # Should now be printing the current progress of your put function.
-        
-            scp.close()
-        
-Keywords: paramiko,ssh,scp,transfer
-Platform: UNKNOWN
-Classifier: Development Status :: 5 - Production/Stable
-Classifier: Intended Audience :: Developers
-Classifier: License :: OSI Approved :: GNU Library or Lesser General Public 
License (LGPL)
-Classifier: Operating System :: OS Independent
-Classifier: Programming Language :: Python
-Classifier: Programming Language :: Python :: 2
-Classifier: Programming Language :: Python :: 2.6
-Classifier: Programming Language :: Python :: 2.7
-Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.3
-Classifier: Programming Language :: Python :: 3.4
-Classifier: Programming Language :: Python :: 3.5
-Classifier: Topic :: Internet
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/scp.egg-info/SOURCES.txt 
new/scp.py-0.14.1/scp.egg-info/SOURCES.txt
--- old/scp-0.13.6/scp.egg-info/SOURCES.txt     2021-07-09 18:01:56.000000000 
+0200
+++ new/scp.py-0.14.1/scp.egg-info/SOURCES.txt  1970-01-01 01:00:00.000000000 
+0100
@@ -1,13 +0,0 @@
-CHANGELOG.md
-LICENSE.txt
-MANIFEST.in
-README.rst
-scp.py
-setup.cfg
-setup.py
-test.py
-scp.egg-info/PKG-INFO
-scp.egg-info/SOURCES.txt
-scp.egg-info/dependency_links.txt
-scp.egg-info/requires.txt
-scp.egg-info/top_level.txt
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/scp.egg-info/dependency_links.txt 
new/scp.py-0.14.1/scp.egg-info/dependency_links.txt
--- old/scp-0.13.6/scp.egg-info/dependency_links.txt    2021-07-09 
18:01:56.000000000 +0200
+++ new/scp.py-0.14.1/scp.egg-info/dependency_links.txt 1970-01-01 
01:00:00.000000000 +0100
@@ -1 +0,0 @@
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/scp.egg-info/requires.txt 
new/scp.py-0.14.1/scp.egg-info/requires.txt
--- old/scp-0.13.6/scp.egg-info/requires.txt    2021-07-09 18:01:56.000000000 
+0200
+++ new/scp.py-0.14.1/scp.egg-info/requires.txt 1970-01-01 01:00:00.000000000 
+0100
@@ -1 +0,0 @@
-paramiko
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/scp.egg-info/top_level.txt 
new/scp.py-0.14.1/scp.egg-info/top_level.txt
--- old/scp-0.13.6/scp.egg-info/top_level.txt   2021-07-09 18:01:56.000000000 
+0200
+++ new/scp.py-0.14.1/scp.egg-info/top_level.txt        1970-01-01 
01:00:00.000000000 +0100
@@ -1 +0,0 @@
-scp
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/scp.py new/scp.py-0.14.1/scp.py
--- old/scp-0.13.6/scp.py       2021-07-09 17:59:29.000000000 +0200
+++ new/scp.py-0.14.1/scp.py    2021-09-10 19:13:50.000000000 +0200
@@ -5,13 +5,12 @@
 Utilities for sending files over ssh using the scp1 protocol.
 """
 
-__version__ = '0.13.6'
+__version__ = '0.14.1'
 
 import locale
 import os
 import re
 from socket import timeout as SocketTimeout
-import types
 
 
 # this is quote from the shlex module, added in py3.3
@@ -19,6 +18,19 @@
 
 SCP_COMMAND = b'scp'
 
+PATH_TYPES = (str, bytes)
+
+try:
+    import pathlib
+except ImportError:
+    pathlib = None
+else:
+    PATH_TYPES += pathlib.PurePath,
+try:
+    PATH_TYPES += unicode,
+except NameError:
+    pass
+
 
 def _sh_quote(s):
     """Return a shell-escaped version of the string `s`."""
@@ -41,6 +53,8 @@
     """
     if isinstance(s, bytes):
         return s
+    elif pathlib and isinstance(s, pathlib.Path):
+        return bytes(s)
     else:
         return s.encode('utf-8')
 
@@ -160,8 +174,10 @@
                                   self.sanitize(asbytes(remote_path)))
         self._recv_confirm()
 
-        if not isinstance(files, (list, tuple)):
+        if isinstance(files, PATH_TYPES):
             files = [files]
+        else:
+            files = list(files)
 
         if recursive:
             self._send_recursive(files)
@@ -214,8 +230,10 @@
             and directories.
         @type preserve_times: bool
         """
-        if not isinstance(remote_path, (list, tuple)):
+        if isinstance(remote_path, PATH_TYPES):
             remote_path = [remote_path]
+        else:
+            remote_path = list(remote_path)
         remote_path = [self.sanitize(asbytes(r)) for r in remote_path]
         self._recv_dir = local_path or os.getcwd()
         self._depth = 0
@@ -320,6 +338,7 @@
 
     def _send_recursive(self, files):
         for base in files:
+            base = asbytes(base)
             if not os.path.isdir(base):
                 # filename mixed into the bunch
                 self._send_files([base])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/setup.cfg new/scp.py-0.14.1/setup.cfg
--- old/scp-0.13.6/setup.cfg    2021-07-09 18:01:56.993384600 +0200
+++ new/scp.py-0.14.1/setup.cfg 2021-09-10 19:13:50.000000000 +0200
@@ -1,7 +1,2 @@
 [bdist_wheel]
 universal = 1
-
-[egg_info]
-tag_build = 
-tag_date = 0
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/setup.py new/scp.py-0.14.1/setup.py
--- old/scp-0.13.6/setup.py     2021-07-09 17:59:33.000000000 +0200
+++ new/scp.py-0.14.1/setup.py  2021-09-10 19:13:50.000000000 +0200
@@ -10,9 +10,11 @@
     description = fp.read()
 setup(
         name = 'scp',
-        version = '0.13.6',
+        version = '0.14.1',
         author = 'James Bardin',
         author_email = '[email protected]',
+        maintainer="Remi Rampin",
+        maintainer_email='[email protected]',
         license = 'LGPL-2.1-or-later',
         url = 'https://github.com/jbardin/scp.py',
         description='scp module for paramiko',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/scp-0.13.6/test.py new/scp.py-0.14.1/test.py
--- old/scp-0.13.6/test.py      2021-07-09 17:58:54.000000000 +0200
+++ new/scp.py-0.14.1/test.py   2021-09-10 19:13:50.000000000 +0200
@@ -8,11 +8,16 @@
 import sys
 from scp import SCPClient, SCPException, put, get
 import tempfile
+import types
 try:
     import unittest2 as unittest
     sys.modules['unittest'] = unittest
 except ImportError:
     import unittest
+try:
+    import pathlib
+except ImportError:
+    pathlib = None
 
 
 ssh_info = {
@@ -273,6 +278,12 @@
                          [b'bien rang\xC3\xA9',
                           b'bien rang\xC3\xA9/test',
                           b'r\xC3\xA9mi'])
+        g = (n for n in (u'cl\xE9/dossi\xE9/bien rang\xE9', u'cl\xE9/r\xE9mi'))
+        assert isinstance(g, types.GeneratorType)
+        self.upload_test(g, True,
+                         [b'bien rang\xC3\xA9',
+                          b'bien rang\xC3\xA9/test',
+                          b'r\xC3\xA9mi'])
         self.upload_test([u'cl\xE9/dossi\xE9',
                           u'cl\xE9/r\xE9mi'], True,
                          [b'dossi\xC3\xA9',
@@ -280,6 +291,13 @@
                           b'dossi\xC3\xA9/bien rang\xC3\xA9/test',
                           b'r\xC3\xA9mi'])
 
+    @unittest.skipUnless(pathlib, "pathlib not available")
+    def test_pathlib(self):
+        self.upload_test(pathlib.Path(u'cl\xE9/dossi\xE9'), True,
+                         [b'dossi\xC3\xA9',
+                          b'dossi\xC3\xA9/bien rang\xC3\xA9',
+                          b'dossi\xC3\xA9/bien rang\xC3\xA9/test'])
+
     def test_putfo(self):
         fl = BytesIO()
         fl.write(b'r\xC3\xA9mi')

Reply via email to