python-BTrees/python-BTrees.spec
Matej Cepl 19dfae1e2b Accepting request 1033872 from home:frispete:python
- version update to 4.11.0 (2022-11-03):
  * Add support for Python 3.11.
- version update to 4.10.1 (2022-09-12):
  * Disable unsafe math optimizations in C code. (#184)
- version update to 4.10.0 (2022-03-09):
  * Add support for Python 3.10.
- version update to 4.9.2 (2021-06-09):
  * Fix fsBTree.TreeSet and fsBTree.BTree raising SystemError. See
    issue 170.
  * Fix all the fsBTree objects to provide the correct interfaces
    and be instances of the appropriate collection ABCs. This was
    done for the other modules in release 4.8.0.
  * Fix the multiunion, union, intersection, and difference
    functions when used with arbitrary iterables. Previously, the
    iterable had to be pre-sorted, meaning only sequences like list
    and tuple could reliably be used; this was not documented
    though. If the iterable wasn’t sorted, the function would
    produce garbage output. Now, if the function detects an
    arbitrary iterable, it automatically sorts a copy.
- version update to 4.9.1 (2021-05-27):
  * Fix setting unknown class attributes on subclasses of BTrees
    when using the C extension. This prevented subclasses from
    being decorated with @component.adapter(). See issue 168.
- version update to 4.9.0 (2021-05-26):
  * Fix the C implementation to match the Python implementation and
    allow setting custom node sizes for an entire application
    directly by changing BTree.max_leaf_size and
    BTree.max_internal_size attributes, without having to create a
    new subclass. These attributes can now also be read from the
    classes in the C implementation. See issue 166.

OBS-URL: https://build.opensuse.org/request/show/1033872
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-BTrees?expand=0&rev=25
2022-11-07 08:43:02 +00:00

89 lines
3.0 KiB
RPMSpec

#
# spec file for package python-BTrees
#
# Copyright (c) 2022 SUSE LLC
# Copyright (c) 2015-2022 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-%{**}}
Name: python-BTrees
Version: 4.11.0
Release: 0
Summary: Persistent B-tree object containers for Python
License: ZPL-2.1
URL: https://github.com/zopefoundation/BTrees
Source: https://files.pythonhosted.org/packages/source/B/BTrees/BTrees-%{version}.tar.gz
BuildRequires: %{python_module devel}
BuildRequires: %{python_module persistent-devel >= 4.1.0}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module transaction}
BuildRequires: %{python_module zope.interface}
BuildRequires: %{python_module zope.testrunner}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-persistent >= 4.1.0
Requires: python-zope.interface
Provides: %{name}-doc = %{version}-%{release}
Obsoletes: %{name}-doc
%python_subpackages
%description
This package contains a generic BTrees implementation for Python. It is
mainly used by the ZODB, though.
Note that the data manager API, BTrees.interfaces.IDataManager, is
syntactically simple, but semantically complex. The semantics were not easy to
express in the interface. This could probably use more work. The semantics are
presented in detail through examples of a sample data manager in
BTrees.tests.test_SampleDataManager.
%package devel
Summary: Development files for the python-BTrees module
Requires: %{name} = %{version}
%description devel
This package contains the files needed for binding the %{name} C module.
%prep
%setup -q -n BTrees-%{version}
rm -rf BTrees.egg-info
%build
%python_build
%install
%python_install
%{python_expand rm %{buildroot}%{$python_sitearch}/BTrees/*.c
%fdupes %{buildroot}%{$python_sitearch}
}
%check
# the failing tests would require this step which setup.py test did:
#%%{python_expand cp build/lib.linux-*/BTrees/*.so src/BTrees/}
# it can be overcome with --import-mode=append
%pytest_arch -k 'not testPurePython and not testSubclassesCanHaveAttributes and not testCannotSetArbitraryAttributeOnBase'
%files %{python_files}
%doc CHANGES.rst README.rst PKG-INFO
%license COPYRIGHT.txt LICENSE.txt
%exclude %{python_sitearch}/BTrees/*.h
%{python_sitearch}/*
%files %{python_files devel}
%{python_sitearch}/BTrees/*.h
%changelog