Sync from SUSE:SLFO:Main python-pyftpdlib revision 8af08a5f104ef5f70257b8f8b46b98ea

This commit is contained in:
Adrian Schröter 2024-05-03 22:08:21 +02:00
commit 38d8e9799f
5 changed files with 352 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

52
keycert.pem Normal file
View File

@ -0,0 +1,52 @@
-----BEGIN PRIVATE KEY-----
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC/tUGr3VSP9DTs
FEurR7tO8xEacF4Mn1hOT+gj2+OEzknDNivCREjNRxy/GxT59sj5wDXXIP3Tj8H9
zMjdzP4290EPMGzVIKeLUzLjJiqo0BmGamS9qfyT1cENJU8aJjqWmYoKRswrRY3F
Fbipwl3MgdUyewPgWas9Ah9phEqC5aLGY6ILQDXoBpcnsJGGpVtJUy6vqYd5C2ou
uArK1hSr/k1uDAIuRv0FbnGxFp+Bm32appFdzr+o523O161pisUVJFIXAMrJmyIX
V7H4r9VZrptYUhNCnM5ghfCjAzoKWNu3uOyRWhKfTSyQ+5f/GRUUtx5KTMllkQnj
rUzNx09LAgMBAAECggEBAK6UwENlAfc+a1t6eBZ48ojJLhAnuF5CVkaq2jqdqqps
uhu+H0eAq9PVKMaYQRgJt6hJdD5/WufpCL66WUozvmYL8QGGFfZZEHr+v17AiSTG
rhgMl8VpIgz3IiF4knq7yasQE/eb1Z6qbprGVy6xRH5S1fZstHEA98JNRpHu2XQt
WqpxWY458/Xr4NI3IxU1iouXPwRdfy4LH5dWoSMJ3g5TwssNsrtbjf1y1n1s0IOR
4QsBJUTp77LHZW7xQqqx/+kUsc4CY3fyDm49lb/6Tw/uvnG8q/pwVkrsUgRLypUJ
DuVCgUv8Y21gQEjcaNipOawq2xF1SxVgC+3JpFoeRyECgYEA8CjI0ZKh39YpAe5u
ai/XOOKE2o650xXgRYkzz09BU4apcJNkiPx1829Biy0gYa2CnD5j39dbWb9a0sk7
39ihoMsMB/AvgTaSqmU+tYho/vz4qyg/hVYMgFdjNLmj3ecphGPfCryKwDUFFUWk
KDl+989LGirxx0Os01PjamNm0DMCgYEAzFpYzOveQ776Vfr3yXxKubFFVvhL3l++
iX84RgtvRw9hDpT5ncmICxEC/kcSkaitne+Q+U3D9YBO8uSjJetYd1yl8pW0ztpp
Jicljdexo5MZ42LarF2P8zB5teDJM45g6xZi9d6H7oHotGs52X4QJgzGGvmdpWjr
SPj1PbiCjIkCgYEAj1ypVIGl5Arh++crPnRElA6UpCtjPmDmulvG89Ap/QR8DVnP
P/8FIkad58kOdYCwYTjVQgA65f5W51F9TojxIx1Sl0KH+ShssQ8zOgauNtkoUHP8
R0owuERyUj0nVwXxQLilorEeWtLLsAEcl26LHr894+cS4ZLCjnybWxzveQUCgYEA
tP0fwP72cBHpLdWFOFJ47FXxD8IBkAZEfwrKEF94Qvt//qY7HmCruQFsIUFZVOCM
RGE1iVgywnDNe5q8VI1IYQ8RevTUmpAeqMfrHuF2V2WlfBrFifujzsOUSF26VYs4
k33UT+azha5RJ9n/9n0MWGbf3mxOD34JRSwaKHwOQ+ECgYATiA96hzSqS8LG5nI/
wbvMPPyOZIIy+TEXsG9E3i2/7/zVEbg2EufKfrApQ9AcAx9em+Rni1o94qDq8OG8
WUla6JKmMEGoBRmMeC0nWTj6VEONIe4Xr+wE6KECZGXgzx2NIMj3FzCoxe0AhVpr
0S+dDD5jWPDi6yM+WH1goCpD5g==
-----END PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
MIID9TCCAt2gAwIBAgIUI/btrf6IT189kgQqIdMNT27mEVswDQYJKoZIhvcNAQEL
BQAwgYkxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhEZWxhd2FyZTETMBEGA1UEBwwK
V2lsbWluZ3RvbjEjMCEGA1UECgwaUHl0aG9uIFNvZnR3YXJlIEZvdW5kYXRpb24x
DDAKBgNVBAsMA1NTTDEfMB0GA1UEAwwWc29tZW1hY2hpbmUucHl0aG9uLm9yZzAe
Fw0yMTEwMjYwMzUwMjFaFw0zMTEwMjQwMzUwMjFaMIGJMQswCQYDVQQGEwJVUzER
MA8GA1UECAwIRGVsYXdhcmUxEzARBgNVBAcMCldpbG1pbmd0b24xIzAhBgNVBAoM
GlB5dGhvbiBTb2Z0d2FyZSBGb3VuZGF0aW9uMQwwCgYDVQQLDANTU0wxHzAdBgNV
BAMMFnNvbWVtYWNoaW5lLnB5dGhvbi5vcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IB
DwAwggEKAoIBAQC/tUGr3VSP9DTsFEurR7tO8xEacF4Mn1hOT+gj2+OEzknDNivC
REjNRxy/GxT59sj5wDXXIP3Tj8H9zMjdzP4290EPMGzVIKeLUzLjJiqo0BmGamS9
qfyT1cENJU8aJjqWmYoKRswrRY3FFbipwl3MgdUyewPgWas9Ah9phEqC5aLGY6IL
QDXoBpcnsJGGpVtJUy6vqYd5C2ouuArK1hSr/k1uDAIuRv0FbnGxFp+Bm32appFd
zr+o523O161pisUVJFIXAMrJmyIXV7H4r9VZrptYUhNCnM5ghfCjAzoKWNu3uOyR
WhKfTSyQ+5f/GRUUtx5KTMllkQnjrUzNx09LAgMBAAGjUzBRMB0GA1UdDgQWBBR4
2Iidy6npIXwDz9Z/HrEyiRWYJDAfBgNVHSMEGDAWgBR42Iidy6npIXwDz9Z/HrEy
iRWYJDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQALxcn19FtW
3Yem9V1s8awYFNE+WMWjS95jq+bICaOaE4J+zfoWXsIeHKzOsp735QSAErCht5Dr
+5t+e76lbSLHDN7NEeleQRIWiOHE2pp7R6CrMUQrhEh5YUtkK6aBJUZ6MUdtzRsx
6PL1HZ6cXxHhktoCkpWiSPSsxdsd4qBpoTvOfgc8XLohSPppS1jfjjgBjIZsu006
2OL/Ko9P26LkffJv+5oyze42XMGbHocaMRoQbAcmDVd26zAOzYEaQ4QlaX9mzfiP
7GLQ3si3SkWtaTnSVXxtj4PYnErCC6rR9iKyd9gmuiAuh5R8y9bGlrwOb8udbYnZ
cB8K2q9TPBBa
-----END CERTIFICATE-----

BIN
pyftpdlib-1.5.7.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

160
python-pyftpdlib.changes Normal file
View File

@ -0,0 +1,160 @@
-------------------------------------------------------------------
Fri Apr 21 12:30:41 UTC 2023 - Dirk Müller <dmueller@suse.com>
- add sle15_python_module_pythons (jsc#PED-68)
-------------------------------------------------------------------
Thu Apr 13 22:43:39 UTC 2023 - Matej Cepl <mcepl@suse.com>
- Make calling of %{sle15modernpython} optional.
-------------------------------------------------------------------
Fri Oct 28 20:09:29 UTC 2022 - Yogalakshmi Arunachalam <yarunachalam@suse.com>
- Update to Version: 1.5.7 - 2022-10-04
Enhancements
* #544: replace Travis with Github Actions for CI testing.
Bug fixes
* #481: fix [WinError 10038] an operation was attempted on something that is not a socket. (patch by Tailing Yuan)
* #578, [critical]: FTPS broke with PyOpenSSL version 22.1.0.
- Update to Version: 1.5.6 - 2020-02-16
Enhancements
* #467: added pre-fork concurrency model, spawn()ing worker processes to split load.
* #520: directory LISTing is now 3.7x times faster.
-------------------------------------------------------------------
Wed Jan 19 08:00:32 UTC 2022 - Matej Cepl <mcepl@suse.com>
- Switch off the test suite, it just doesn't work reliably
(gh#giampaolo/pyftpdlib#540).
-------------------------------------------------------------------
Tue Oct 26 04:12:28 UTC 2021 - Steve Kowalik <steven.kowalik@suse.com>
- Regenerate new private key/x509 certificate for the test suite.
(thanks, Jason!)
-------------------------------------------------------------------
Fri May 7 23:13:10 UTC 2021 - Ben Greiner <code@bnavigator.de>
- Skip masquerade tests failung because the newest Pythons don't
allow invalid addresses gh#giampaolo/pyftpdlib#550, bpo-43285
- Remove script interpreter lines for test files and _compyt.py
(fix rpmlint warnings)
-------------------------------------------------------------------
Fri Dec 18 16:29:52 UTC 2020 - Benjamin Greiner <code@bnavigator.de>
- add ignore _build directories to pytest args to fix builds for
multiple pytest flavors gh#openSUSE/python-rpm-macros#66
- fix tests failing locally because of gh#giampaolo/pyftpdlib#478
-------------------------------------------------------------------
Sun Aug 16 04:20:40 UTC 2020 - John Vandenberg <jayvdb@gmail.com>
- Re-activate test suite, replacing nose with pytest
-------------------------------------------------------------------
Wed May 20 07:26:27 UTC 2020 - Petr Gajdos <pgajdos@suse.com>
- %python3_only -> %python_alternative
-------------------------------------------------------------------
Mon Apr 20 10:41:55 UTC 2020 - Tomáš Chvátal <tchvatal@suse.com>
- Fix build without python2
-------------------------------------------------------------------
Fri Mar 27 08:46:37 UTC 2020 - Antonio Larrosa <alarrosa@suse.com>
- Do not remove tests, other packages import them
-------------------------------------------------------------------
Wed Mar 18 09:21:28 UTC 2020 - Tomáš Chvátal <tchvatal@suse.com>
- Update to 1.5.6:
- #467: added pre-fork concurrency model, spawn()ing worker processes to split
load.
- #520: directory LISTing is now 3.7x times faster.
-------------------------------------------------------------------
Tue May 28 11:07:18 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
- Do not remove tests, other packages import them
-------------------------------------------------------------------
Sat May 25 09:29:17 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
- Update to 1.5.5:
* Various minor fixes and documentation updates
-------------------------------------------------------------------
Tue Dec 4 12:52:12 UTC 2018 - Matej Cepl <mcepl@suse.com>
- Remove superfluous devel dependency for noarch package
-------------------------------------------------------------------
Wed May 9 00:57:35 UTC 2018 - toddrme2178@gmail.com
- Version update to 1.5.4
+ Enhancements
* #463: FTPServer class can now be used as a context manager.
+ Bug fixes
* #431: Ctrl-C doesn't exit `python -m pyftpdlib` on Windows.
* #436: ThreadedFTPServer.max_cons is evaluated threading.activeCount(). If
the user uses threads of its own it will consume the number of max_cons.
* #447: ThreadedFTPServer and MultiprocessFTPServer do not join() tasks which
are no longer consuming resources.
- Disable tests since they randomly fail.
See https://github.com/giampaolo/pyftpdlib/issues/386
-------------------------------------------------------------------
Wed May 2 10:27:38 UTC 2018 - tchvatal@suse.com
- Version update to 1.5.3:
* implemented SITE MFMT command which changes file modification time. (patch by Tahir Ijaz)
* add username and password command line options
* documentation moved to readthedocs: http://pyftpdlib.readthedocs.io
* fix duplicated output log. (path by PonyPC)
* Respond successfully to STOR only after closing file handle.
-------------------------------------------------------------------
Thu Jul 6 00:25:48 UTC 2017 - jengelh@inai.de
- Trim exaggeration from descriptions.
-------------------------------------------------------------------
Thu Jun 22 14:14:51 UTC 2017 - jmatejek@suse.com
- update to 1.5.2
* disables old SSL methods
* fixed some hangs/crashes
- fixes test failures in OBS
- drop patches that are no longer needed:
* pyftpdlib-disable-error-0-ssl-unwrap.diff
* pyftpdlib-disable-incomplete-file-received.diff
* pyftpdlib-handle-missing-SSLv3.diff
- convert to singlespec
-------------------------------------------------------------------
Mon May 9 14:58:36 UTC 2016 - hpj@urpla.net
- add patch to disable another failing test, related to icomplete
file receptions
-------------------------------------------------------------------
Mon May 9 13:14:32 UTC 2016 - hpj@urpla.net
- add patch to test SSLv3 only, if available
-------------------------------------------------------------------
Mon May 9 10:34:42 UTC 2016 - hpj@urpla.net
- add patch to disable a test, that triggers an error 0 in ssl
-------------------------------------------------------------------
Sun May 8 20:15:42 UTC 2016 - hpj@urpla.net
- version 1.5.1: initial build

114
python-pyftpdlib.spec Normal file
View File

@ -0,0 +1,114 @@
#
# spec file for package python-pyftpdlib
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2016 LISA GmbH, Bingen, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%bcond_without python2
%{?sle15_python_module_pythons}
Name: python-pyftpdlib
Version: 1.5.7
Release: 0
Summary: Asynchronous FTP server library for Python
License: MIT
Group: Development/Languages/Python
URL: https://github.com/giampaolo/pyftpdlib/
Source: https://files.pythonhosted.org/packages/source/p/pyftpdlib/pyftpdlib-%{version}.tar.gz
Source1: keycert.pem
BuildRequires: %{python_module psutil}
BuildRequires: %{python_module pyOpenSSL}
BuildRequires: %{python_module pysendfile}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-pyOpenSSL
Requires(post): update-alternatives
Requires(postun):update-alternatives
Recommends: python-pysendfile
BuildArch: noarch
%if %{with python2}
BuildRequires: python-ipaddress
BuildRequires: python-mock
%endif
%ifpython2
Requires: python-ipaddress
%endif
%python_subpackages
%description
The Python FTP server library provides a high-level interface to
write very asynchronous FTP servers with Python.
%prep
%setup -q -n pyftpdlib-%{version}
sed -i '1 {/env python/ d}' pyftpdlib/test/*.py pyftpdlib/_compat.py
cp %{SOURCE1} pyftpdlib/test
%build
%python_build
%install
%python_install
%python_clone -a %{buildroot}%{_bindir}/ftpbench
%python_expand %fdupes %{buildroot}%{$python_sitelib}
# Note: Do not remove tests. Other packages import them
%check
## # Tests reported as randomly failing in 2016 against v1.5.0:
## # https://github.com/giampaolo/pyftpdlib/issues/386
## # If they re-occur, please update the issue with backtraces,
## # and disable only related tests.
## donttest="(TestFtpStoreDataTLSMixin and test_rest_on_stor)"
## donttest+=" or (TestFtpStoreDataTLSMixin and test_stor_ascii)"
## # https://github.com/giampaolo/pyftpdlib/issues/550
## donttest+=" or test_masquerade_address"
## ignorebuild="--ignore build"
## %%{python_expand # expand to python flavor, not to the binary name, then strip the trailing _
## builddir=_build.$python_
## ignorebuild+=" --ignore ${builddir%%_}"
## }
## cat > pytest.ini <<EOF
## [pytest]
## addopts =
## -rs -v
## -k "not ($donttest)"
## $ignorebuild
## EOF
## %%{python_expand # pytest macro does not work. The tests parse CLI args and fail if there are any unknown program args
## export PYTHONPATH=%%{buildroot}%%{$python_sitelib}
## export PYTHONDONTWRITEBYTECODE=1
## # gh#giampaolo/pyftpdlib#540
## export PYTEST_ADDOPTS="-k 'not (TestFtpListingCmdsTLSMixin or TestConfigurableOptions or TestFtpStoreDataTLSMixin)'"
## # gh#giampaolo/pyftpdlib#478
## export TZ=GMT+1
## $python -m pytest
## }
%post
%python_install_alternative ftpbench
%postun
%python_uninstall_alternative ftpbench
%files %{python_files}
%license LICENSE
%doc README.rst
%python_alternative %{_bindir}/ftpbench
%{python_sitelib}/*
%changelog