commit 38d8e9799f7ef12b7965d98a067c8e7cf0dd824ab6817128b585ed9d6cec1c53 Author: Adrian Schröter Date: Fri May 3 22:08:21 2024 +0200 Sync from SUSE:SLFO:Main python-pyftpdlib revision 8af08a5f104ef5f70257b8f8b46b98ea diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -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 diff --git a/keycert.pem b/keycert.pem new file mode 100644 index 0000000..0c3c8fa --- /dev/null +++ b/keycert.pem @@ -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----- diff --git a/pyftpdlib-1.5.7.tar.gz b/pyftpdlib-1.5.7.tar.gz new file mode 100644 index 0000000..a42f826 --- /dev/null +++ b/pyftpdlib-1.5.7.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ea3ce4137db8209af1f6b9ea020590f462c63ed7c7a1240bd596e4d3a7b656e +size 196076 diff --git a/python-pyftpdlib.changes b/python-pyftpdlib.changes new file mode 100644 index 0000000..40f4e70 --- /dev/null +++ b/python-pyftpdlib.changes @@ -0,0 +1,160 @@ +------------------------------------------------------------------- +Fri Apr 21 12:30:41 UTC 2023 - Dirk Müller + +- add sle15_python_module_pythons (jsc#PED-68) + +------------------------------------------------------------------- +Thu Apr 13 22:43:39 UTC 2023 - Matej Cepl + +- Make calling of %{sle15modernpython} optional. + +------------------------------------------------------------------- +Fri Oct 28 20:09:29 UTC 2022 - Yogalakshmi Arunachalam + +- 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 + +- 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 + +- Regenerate new private key/x509 certificate for the test suite. + (thanks, Jason!) + +------------------------------------------------------------------- +Fri May 7 23:13:10 UTC 2021 - Ben Greiner + +- 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 + +- 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 + +- Re-activate test suite, replacing nose with pytest + +------------------------------------------------------------------- +Wed May 20 07:26:27 UTC 2020 - Petr Gajdos + +- %python3_only -> %python_alternative + +------------------------------------------------------------------- +Mon Apr 20 10:41:55 UTC 2020 - Tomáš Chvátal + +- Fix build without python2 + +------------------------------------------------------------------- +Fri Mar 27 08:46:37 UTC 2020 - Antonio Larrosa + +- Do not remove tests, other packages import them + +------------------------------------------------------------------- +Wed Mar 18 09:21:28 UTC 2020 - Tomáš Chvátal + +- 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 + +- Do not remove tests, other packages import them + +------------------------------------------------------------------- +Sat May 25 09:29:17 UTC 2019 - Tomáš Chvátal + +- Update to 1.5.5: + * Various minor fixes and documentation updates + +------------------------------------------------------------------- +Tue Dec 4 12:52:12 UTC 2018 - Matej Cepl + +- 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 + diff --git a/python-pyftpdlib.spec b/python-pyftpdlib.spec new file mode 100644 index 0000000..e022b1b --- /dev/null +++ b/python-pyftpdlib.spec @@ -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 <