forked from pool/python-berkeleydb
* Since MS Windows is unsupported without community help, I
deleted some legacy code. It could be restored if there is
demand and some help to improve MS Windows support.
* New URL for :Oracle:`Oracle documentation <index.html>`.
* Now we also use Python Stable ABI under Python 3.8 and 3.9.
Under Python 3.10 and up we can define types that users can
not instantiate as Py_TPFLAGS_DISALLOW_INSTANTIATION, but
that flag is not available under previous Python versions. In
Python 3.8 and 3.9 we used to do type->tp_new = NULL; for
that, but this approach is not available under Python Stable
ABI. That is the reason this module could use Python Stable
ABI only when compiled under Python 3.10 and superior. In
this release we define the slot Py_tp_new as NULL in Python
3.8 and 3.9 to achieve the same effect, and that is available
under Python Stable ABI.
* Since this module can now use Python Stable ABI under all
supported Python releases, that is exactly what we do. From
now on this module always uses Python Stable ABI.
* WARNING - BREAKING CHANGE: Change return value of
berkeleydb.py_limited_api(). This function was introduced in
18.1.9 and it is used to indicate if the module was using the
Python Stable ABI or not, and the version Python Stable ABI
used. Now that the module has been improved to use Python
Stable ABI always, the function returns a tuple of integers.
First tuple element tells us what Python Stable ABI version
are we supporting. Second element tells us what Python
release was this module compiled under, although it should
work in any more recent Python release. Since this function
was introduced in release 18.1.9, we consider this breaking
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-berkeleydb?expand=0&rev=3
82 lines
2.8 KiB
RPMSpec
82 lines
2.8 KiB
RPMSpec
#
|
|
# spec file for package python-berkeleydb
|
|
#
|
|
# Copyright (c) 2024 SUSE LLC
|
|
#
|
|
# 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/
|
|
#
|
|
|
|
|
|
Name: python-berkeleydb
|
|
Version: 18.1.10
|
|
Release: 0
|
|
Summary: Python bindings for Oracle Berkeley DB
|
|
License: BSD-3-Clause
|
|
URL: https://www.jcea.es/programacion/pybsddb.htm
|
|
Source: https://files.pythonhosted.org/packages/source/b/berkeleydb/berkeleydb-%{version}.tar.gz
|
|
BuildRequires: %{python_module devel}
|
|
BuildRequires: %{python_module pip}
|
|
BuildRequires: %{python_module setuptools >= 65.5.0}
|
|
BuildRequires: %{python_module testsuite}
|
|
BuildRequires: %{python_module wheel}
|
|
BuildRequires: db-devel
|
|
BuildRequires: fdupes
|
|
BuildRequires: python-rpm-macros
|
|
%python_subpackages
|
|
|
|
%description
|
|
This module provides a nearly complete wrapping of the Oracle/Sleepycat C API
|
|
for the Database Environment, Database, Cursor, Log Cursor, Sequence and
|
|
Transaction objects, and each of these is exposed as a Python type in the
|
|
berkeleydb.db module. The database objects can use various access methods:
|
|
btree, hash, recno, queue and heap. Complete support of Oracle Berkeley DB
|
|
distributed transactions. Complete support for Oracle Berkeley DB Replication
|
|
Manager. Complete support for Oracle Berkeley DB Base Replication.
|
|
|
|
%package devel
|
|
Summary: Development files for %{name}
|
|
Requires: %{name} = %{version}
|
|
|
|
%description devel
|
|
This module provides a nearly complete wrapping of the Oracle/Sleepycat C API
|
|
for the Database Environment, Database, Cursor, Log Cursor, Sequence and
|
|
Transaction objects, and each of these is exposed as a Python type in the
|
|
berkeleydb.db module.
|
|
|
|
This package contains the development files for %{name}
|
|
|
|
%prep
|
|
%autosetup -p1 -n berkeleydb-%{version}
|
|
|
|
%build
|
|
export CFLAGS="%{optflags} -fno-strict-aliasing"
|
|
%pyproject_wheel
|
|
|
|
%install
|
|
%pyproject_install
|
|
%python_expand %fdupes %{buildroot}%{$python_sitearch} %{buildroot}%{_docdir}
|
|
|
|
%check
|
|
%python_exec test.py
|
|
|
|
%files %{python_files}
|
|
%doc ChangeLog README.txt docs/*
|
|
%license LICENSE.txt licenses.txt
|
|
%{python_sitearch}/berkeleydb
|
|
%{python_sitearch}/berkeleydb-%{version}.dist-info
|
|
|
|
%files %{python_files devel}
|
|
%license licenses.txt LICENSE.txt
|
|
%{_includedir}/python%{python_version}*/berkeleydb
|
|
|
|
%changelog
|