Files
python-fs/python-fs.spec
Markéta Machová 9e5eda1207 Accepting request 886001 from home:bnavigator:branches:devel:languages:python
- Update to 2.4.13
  * Added FTP over TLS (FTPS) support to FTPFS.
    Closes #437, #449.
  * PathError now supports wrapping an exception using the exc
   argument.
    Closes #453.
  * Better documentation of the writable parameter of fs.open_fs,
    and hint about using fs.wrap.read_only when a read-only
    filesystem is required. Closes #441.
  Changed
  * Make FS.upload explicit about the expected error when the
    parent directory of the destination does not exist.
    Closes #445.
  * Migrate continuous integration from Travis-CI to GitHub
    Actions and introduce several linters again in the build steps
    (#448). Closes #446.
  * Stop requiring pytest to run tests, allowing any test runner
    supporting unittest-style test suites.
  * FSTestCases now builds the large data required for upload and
     download tests only once in order to reduce the total testing
     time.
  * MemoryFS.move and MemoryFS.movedir will now avoid copying data.
    Closes #452.
  * FS.removetree("/") behaviour has been standardized in all
    filesystems, and is expected to clear the contents of the root
    folder without deleting it. Closes #471.
  * FS.getbasic is now deprecated, as it is redundant with
    FS.getinfo, and FS.getinfo is now explicitly expected to
    return the basic info namespace unconditionally. Closes #469.
  Fixed
  * Make FTPFile, MemoryFile and RawWrapper accept array.array
    arguments for the write and writelines methods, as expected by
    their base class io.RawIOBase.
  * Various documentation issues, including MemoryFS docstring not
    rendering properly.
  * Avoid creating a new connection on every call of FTPFS.upload.
    Closes #455.
  * WrapReadOnly.removetree not raising a ResourceReadOnly when
    called. Closes #468.
  * WrapCachedDir.isdir and WrapCachedDir.isfile raising a
    ResourceNotFound error on non-existing path (#470).
  * FTPFS not listing certain entries with sticky/SUID/SGID
    permissions set by Linux server (#473). Closes #451.
  * scandir iterator not being closed explicitly in OSFS.scandir,
    occasionally causing a ResourceWarning
    to be thrown. Closes #311.
  * Incomplete type annotations for the temp_fs parameter of
    WriteTarFS and WriteZipFS. Closes #410.
- Release 2.4.12
  Added
  *  Missing mode attribute to _MemoryFile objects returned by
    MemoryFS.    openbin.
  *  Missing readinto method for MemoryFS and FTPFS file objects.
    Closes #380.
  * Added compatibility if a Windows FTP server returns file
    information to the LIST command with 24-hour times. Closes
    #438.
  Changed
  * Start testing on PyPy. Due to #342
    we have to treat PyPy builds specially and allow them to fail,
    but at least we'll be able to see if we break something aside
    from known issues with FTP tests.
  * Include docs in source distributions as well as the whole
    tests folder, ensuring conftest.py is present, fixes #364.
  * Stop patching copy with Python 3.8+ because it already
    uses sendfile.
  Fixed
  * Fixed crash when CPython's -OO flag is used
  * Fixed error when parsing timestamps from a FTP directory
    served from a WindowsNT FTP Server, fixes #395.
  * Fixed documentation of Mode.to_platform_bin. Closes #382.
  * Fixed the code example in the "Testing Filesystems" section of
    the  "Implementing Filesystems" guide. Closes #407.
  * Fixed FTPFS.openbin not implicitly opening files in binary
    mode like expected from openbin. Closes #406.
- conftest.py was removed by upstream

OBS-URL: https://build.opensuse.org/request/show/886001
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fs?expand=0&rev=25
2021-04-16 14:16:40 +00:00

98 lines
3.1 KiB
RPMSpec

#
# spec file for package python-fs
#
# Copyright (c) 2021 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
Name: python-fs
Version: 2.4.13
Release: 0
Summary: Python's filesystem abstraction layer
License: MIT
Group: Development/Languages/Python
URL: https://github.com/PyFilesystem/pyfilesystem2
Source: https://files.pythonhosted.org/packages/source/f/fs/fs-%{version}.tar.gz
BuildRequires: %{python_module appdirs >= 1.4.3}
BuildRequires: %{python_module enum34 >= 1.1.6 if %python-base < 3.4}
BuildRequires: %{python_module psutil}
BuildRequires: %{python_module pyftpdlib}
BuildRequires: %{python_module pysendfile}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module pytz}
BuildRequires: %{python_module scandir >= 1.5}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module six >= 1.10.0}
BuildRequires: %{python_module typing >= 3.6 if %python-base < 3.6}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-appdirs >= 1.4.3
Requires: python-psutil
Requires: python-pytz
Requires: python-setuptools
Requires: python-six >= 1.10.0
Recommends: python-pyftpdlib
BuildArch: noarch
%if %{with python2}
BuildRequires: python-backports.os >= 0.1
BuildRequires: python-mock
%endif
%ifpython2
Requires: python-backports.os >= 0.1
%endif
%if %{python_version_nodots} < 34
Requires: python-enum34 >= 1.1.6
Recommends: python-pysendfile
%endif
%if %{python_version_nodots} < 35
Recommends: python-scandir >= 1.5
%endif
%if %{python_version_nodots} < 36
Requires: python-typing >= 3.6
%endif
%python_subpackages
%description
PyFilesystem is an abstraction layer for filesystems. In the same way that
Python's file-like objects provide a common way of accessing files,
PyFilesystem provides a common way of accessing entire filesystems. You can
write platform-independent code to work with local files, that also works with
any of the supported filesystems (zip, ftp, S3 etc.).
%prep
%setup -q -n fs-%{version}
sed -i -e '/install_requires/,/bdist_wheel/ s:~=:>=:g' setup.cfg
%build
%python_build
%install
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
export LANG=en_US.UTF-8
%pytest
%files %{python_files}
%doc README.md
%license LICENSE
%{python_sitelib}/fs
%{python_sitelib}/fs-%{version}*-info
%changelog