1
0

9 Commits

Author SHA256 Message Date
4d581e828b Accepting request 1273057 from devel:languages:python
- update to 18.1.14:
  *  Warning WARNING - BREAKING CHANGE: We eliminate dbobj.py. It
    was very outdated and it was only barely useful if you wanted
    to create subclasses of berkeleydb classes.
  * Allow unicode and binary keys when using encryption.
    Previously, only unicode keys were allowed. In both cases,
    null bytes will raise an exception.
  * Correctly display (in the raised exception) the type of the
    parameter when it is not accepted, beside the required type.
    This solves a regression introduced in 18.1.9.
  * Delete stale and outdated entries in the TO DO file.
  * Solve some redefinitions in the dictionary returned by
    DBEnv.lock_stat() and add more entries:  Berkeley DB >= 4.8:
    locksteals, maxhlocks, maxhobjects, maxlsteals, maxosteals,
    objectsteals, part_max_nowait, part_max_wait, part_nowait,
    part_wait, partitions. Berkeley DB >= 5.3: initlocks,
    initlockers, initobjects, lockers, locks, objects, tablesize.
    Berkeley DB >= 6.2: nlockers_hit, nlockers_reused.
  * Berkeley DB >= 4.8: locksteals, maxhlocks, maxhobjects,
    maxlsteals, maxosteals, objectsteals, part_max_nowait,
    part_max_wait, part_nowait, part_wait, partitions.
  * Berkeley DB >= 5.3: initlocks, initlockers, initobjects,
    lockers, locks, objects, tablesize.
  * Berkeley DB >= 6.2: nlockers_hit, nlockers_reused.
  * Add more entries to DBEnv.log_stat() if we are using Berkeley
    DB >= 5.3: fileid_init, maxnfileid, nfileid.
  * nelem value in DB.stat() for hash databases was dropped some
    time ago. Update stale documentation. That value is actually
    available via DB.get_h_nelem().
  * Improve docs explaining the end value in the dictionary

OBS-URL: https://build.opensuse.org/request/show/1273057
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-berkeleydb?expand=0&rev=5
2025-04-28 14:17:26 +00:00
0d2d3903c3 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-berkeleydb?expand=0&rev=10 2025-04-28 09:24:14 +00:00
3d5ed9bc1e OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-berkeleydb?expand=0&rev=9 2025-04-28 09:23:35 +00:00
c6be04b2e9 Accepting request 1242863 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1242863
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-berkeleydb?expand=0&rev=4
2025-02-03 20:45:33 +00:00
717045f358 - Update to 18.1.13
* WARNING: Being able to compile the bindings on non x86/x86_64 Linux
    systems (ARM, RISC-V, etc). This improvement required to change the
    way compilation on Linux worked. If you find any issue with this,
    please report.
  * Compile the C module with extra static analysis and be more strict.
  * Some functions have unused parameters that we would like to preserve.
  * Different types in different python subinterpreters are tricky under
    Py_LIMITED_API < Python 3.10. We will delete the workarounds when
    Python 3.10 be the minimal supported version.
  * Delete some unused parameters thru all the source code.
  * Be explicit and complete in the sentinel values.
  * Be explicit initializing (missing) docstrings.
  * Rewrite some function prototypes to avoid warning when being strict
    and to avoid unneeded function castings.
    + Functions METH_NOARGS require two parameters, although one of them
      will be ignored.
  * Be sure we don't wrap an unsigned int operation, bypassing an assertion.
  * Update copyright to 2025.
  * Oracle Berkeley DB>=5.3: Beside db.DB_VERSION_STRING we now have
    db.DB_VERSION_FULL_STRING.
  * Oracle Berkeley DB>=6.2: Beside db.DB_DBT_BLOB we now have
    db.DB_DBT_EXT_FILE.
  * Being able to test against an especific Oracle Berkeley DB release.
  * Code cleanup:
    + Remove unnecessary semicolons in Python code.
    + Remove unused imports.
    + Split multiple imports in a single line.
    + Split multiple statements in multiple lines.
    + Delete dead assignments.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-berkeleydb?expand=0&rev=7
2025-02-03 14:55:12 +00:00
df4f2c221e Accepting request 1225105 from devel:languages:python
- update to 18.1.11:
  * WARNING - BREAKING CHANGE: Drop support for Python 3.8. This
    breaking change should usually require a major and/or minor
    number update. Since berkeleydb traditional numbering is
    related to the higher Oracle Berkeley DB supported, I would
    usually wait until Oracle releases a new version to upgrade
    my own version and deprecate old Python support at the same
    time. Given that Oracle has not released a new Oracle
    Berkeley DB in almost five years, I must break this practice
    for now. I am sorry if this update breaks your Python 3.8
    environment. In that case, please pin your berkeleydb
    installation to

OBS-URL: https://build.opensuse.org/request/show/1225105
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-berkeleydb?expand=0&rev=3
2024-11-19 21:23:54 +00:00
16e78b99be - update to 18.1.11:
* WARNING - BREAKING CHANGE: Drop support for Python 3.8. This
    breaking change should usually require a major and/or minor
    number update. Since berkeleydb traditional numbering is
    related to the higher Oracle Berkeley DB supported, I would
    usually wait until Oracle releases a new version to upgrade
    my own version and deprecate old Python support at the same
    time. Given that Oracle has not released a new Oracle
    Berkeley DB in almost five years, I must break this practice
    for now. I am sorry if this update breaks your Python 3.8
    environment. In that case, please pin your berkeleydb
    installation to

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-berkeleydb?expand=0&rev=5
2024-11-19 12:53:05 +00:00
30ccdd9c99 Accepting request 1206439 from devel:languages:python
- update to 18.1.10:
  * 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/request/show/1206439
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-berkeleydb?expand=0&rev=2
2024-10-09 20:12:59 +00:00
b255ab15e2 - update to 18.1.10:
* 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
2024-10-09 06:35:11 +00:00
4 changed files with 307 additions and 6 deletions

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8c260282f57ebd5b9c3ce53da0eb75be5957addb303e3190935b716448f32f7d
size 320796

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e1831a790bfd855740e5c12f952f19f646c269806cfc362775afd9878cf32557
size 294803

View File

@@ -1,4 +1,303 @@
-------------------------------------------------------------------
Mon Apr 28 09:23:05 UTC 2025 - Dirk Müller <dmueller@suse.com>
- update to 18.1.14:
* Warning WARNING - BREAKING CHANGE: We eliminate dbobj.py. It
was very outdated and it was only barely useful if you wanted
to create subclasses of berkeleydb classes.
* Allow unicode and binary keys when using encryption.
Previously, only unicode keys were allowed. In both cases,
null bytes will raise an exception.
* Correctly display (in the raised exception) the type of the
parameter when it is not accepted, beside the required type.
This solves a regression introduced in 18.1.9.
* Delete stale and outdated entries in the TO DO file.
* Solve some redefinitions in the dictionary returned by
DBEnv.lock_stat() and add more entries: Berkeley DB >= 4.8:
locksteals, maxhlocks, maxhobjects, maxlsteals, maxosteals,
objectsteals, part_max_nowait, part_max_wait, part_nowait,
part_wait, partitions. Berkeley DB >= 5.3: initlocks,
initlockers, initobjects, lockers, locks, objects, tablesize.
Berkeley DB >= 6.2: nlockers_hit, nlockers_reused.
* Berkeley DB >= 4.8: locksteals, maxhlocks, maxhobjects,
maxlsteals, maxosteals, objectsteals, part_max_nowait,
part_max_wait, part_nowait, part_wait, partitions.
* Berkeley DB >= 5.3: initlocks, initlockers, initobjects,
lockers, locks, objects, tablesize.
* Berkeley DB >= 6.2: nlockers_hit, nlockers_reused.
* Add more entries to DBEnv.log_stat() if we are using Berkeley
DB >= 5.3: fileid_init, maxnfileid, nfileid.
* nelem value in DB.stat() for hash databases was dropped some
time ago. Update stale documentation. That value is actually
available via DB.get_h_nelem().
* Improve docs explaining the end value in the dictionary
returned by DB.compact() and documenting that empty_buckets
is not available when using Berkeley DB 4.8.
* In several stats dictionaries, document that ext_files value
is only available from Berkeley DB 6.2.
* Add more entries to DBEnv.memp_stat(): pagesize.
* Add more entries to DBEnv.memp_stat() if we are using
Berkeley DB >= 5.3: regmax, hash_mutexes, backup_spins.
* Add more entries to DBEnv.memp_stat() if we are using
Berkeley DB >= 6.2: mvcc_reused.
* Add more entries to DBEnv.txn_stat() if we are using Berkeley
DB >= 5.3: inittxns.
* Add more entries to DBEnv.mutex_stat() if we are using
Berkeley DB >= 5.3: mutex_init, mutex_max, regmax.
* Add more entries to DBEnv.repmgr_stat() if we are using
Berkeley DB >= 5.3: elect_threads, max_elect_threads.
* Add more entries to DBEnv.repmgr_stat() if we are using
Berkeley DB >= 6.2: incoming_msgs_dropped,
incoming_queue_bytes, incoming_queue_gbytes,
site_participants, site_total, site_views, takeovers,
write_ops_forwarded, write_ops_received.
* Add more entries to DBEnv.repmgr_stat() if we are using
Berkeley DB >= 18.1: group_stable_log_file, polling_method.
* Add more entries to DBEnv.rep_stat() if we are using Berkeley
DB >= 5.3: election_datagen, lease_chk, lease_chk_misses,
lease_chk_refresh, lease_sends.
* Add more entries to DBEnv.rep_stat() if we are using Berkeley
DB >= 6.2: ext_duplicated, ext_records, ext_rereq,
ext_update_rereq, view.
* In the different stats documentation, add notes about what
versions of Berkeley DB provide the different values.
* Complete documentation about berkeleydb exceptions and what
Berkeley DB releases provide each one.
* Document what functions are available when compiled against
each Berkeley DB release.
-------------------------------------------------------------------
Mon Feb 3 14:02:53 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 18.1.13
* WARNING: Being able to compile the bindings on non x86/x86_64 Linux
systems (ARM, RISC-V, etc). This improvement required to change the
way compilation on Linux worked. If you find any issue with this,
please report.
* Compile the C module with extra static analysis and be more strict.
* Some functions have unused parameters that we would like to preserve.
* Different types in different python subinterpreters are tricky under
Py_LIMITED_API < Python 3.10. We will delete the workarounds when
Python 3.10 be the minimal supported version.
* Delete some unused parameters thru all the source code.
* Be explicit and complete in the sentinel values.
* Be explicit initializing (missing) docstrings.
* Rewrite some function prototypes to avoid warning when being strict
and to avoid unneeded function castings.
+ Functions METH_NOARGS require two parameters, although one of them
will be ignored.
* Be sure we don't wrap an unsigned int operation, bypassing an assertion.
* Update copyright to 2025.
* Oracle Berkeley DB>=5.3: Beside db.DB_VERSION_STRING we now have
db.DB_VERSION_FULL_STRING.
* Oracle Berkeley DB>=6.2: Beside db.DB_DBT_BLOB we now have
db.DB_DBT_EXT_FILE.
* Being able to test against an especific Oracle Berkeley DB release.
* Code cleanup:
+ Remove unnecessary semicolons in Python code.
+ Remove unused imports.
+ Split multiple imports in a single line.
+ Split multiple statements in multiple lines.
+ Delete dead assignments.
+ Delete ancient code for verbose and silent in test code.
I never used it, and it is maintenance load.
+ Simplify some assertTrue() and assertFalse().
+ Imports directly from berkeleydb instead of test_all.
+ Copyright and license texts should be in comments, not docstrings.
+ Be more verbose and clear in the comparison test code.
+ Use isinstance() for type comparison.
+ Tight some tests.
+ Change some ambiguous variables.
+ Solve or silence ruff warnings.
+ Delete legacy pychecker support.
+ Delete legacy PyUnit GUI support.
- from versiom 18.1.12
* WARNING - BREAKING CHANGE: berkeleydb._db is now berkeleydb.db.
This breaking change should usually require a major and/or minor number
update. Since berkeleydb traditional numbering is related to the higher
Oracle Berkeley DB supported, I would usually wait until Oracle releases
a new version to upgrade my own version and deprecate old Python support
at the same time. Given that Oracle has not released a new Oracle Berkeley
DB in almost five years, I must break this practice for now.
The new name has been available for ages and the change is trivial...
* Solved DBEnv.memp_stat() crash when no database was opened yet. Triaged
and reported by Rishin Goswami.
* Added a new DBError subclass exception: DBNotSupportedError.
* Add tests for environment and database encryption.
* Document what you should know about your key when using database encryption.
Check the docs!
* Python 3.14 added to the full test matrix.
Experimental Python 3.14 support. Tested under 3.14.0a2.
* Export more error codes from Oracle Berkeley DB (which ones depends of what
Oracle Berkeley DB version you use): DB_FOREIGN_CONFLICT, DB_LOG_BUFFER_FULL,
DB_LOG_VERIFY_BAD, DB_REP_HANDLE_DEAD, DB_REP_LOCKOUT, DB_REP_UNAVAIL,
DB_REP_WOULDROLLBACK, DB_SLICE_CORRUPT, DB_VERSION_MISMATCH, DB_REP_INELECT,
DB_SYSTEM_MEM_MISSING. Some of those are not actually returned ever, but a
generic BerkeleyDB exception is raised. The error codes are available for
completion.
If you need some specific exception to be raised, let me know.
* We export more values from Oracle Berkeley DB (which ones depends of what
Oracle Berkeley DB version you use):
+ DB_LOCK_GET_TIMEOUT, DB_LOCK_PUT_READ, DB_LOCK_TIMEOUT, DB_LOCK_TRADE.
+ DB_EID_MASTER.
+ DB_REP_WRITE_FORWARD_TIMEOUT.
+ DB_EVENT_REP_AUTOTAKEOVER, DB_EVENT_REP_INQUEUE_FULL, DB_EVENT_REP_JOIN_FAILURE,
DB_EVENT_REP_WOULD_ROLLBACK, DB_EVENT_MUTEX_DIED, DB_EVENT_FAILCHK_PANIC.
+ DB_REPMGR_ISELECTABLE, DB_REPMGR_ISPEER, DB_REPMGR_CONF_DISABLE_POLL,
DB_REPMGR_CONF_ENABLE_EPOLL, DB_REPMGR_CONF_FORWARD_WRITES, DB_REPMGR_CONF_PREFMAS_CLIENT,
DB_REPMGR_CONF_PREFMAS_MASTER, DB_REPMGR_NEED_RESPONSE.
+ DB_MEM_DATABASE, DB_MEM_DATABASE_LENGTH, DB_MEM_EXTFILE_DATABASE, DB_MEM_REP_SITE.
+ DB_LOG_EXT_FILE.
+ DB_SET_MUTEX_FAILCHK_TIMEOUT.
+ DB_SLICED.
+ DB_VERB_BACKUP, DB_VERB_REPMGR_SSL_ALL, DB_VERB_REPMGR_SSL_CONN,
DB_VERB_REPMGR_SSL_IO, DB_VERB_SLICE.
+ DB_XA_CREATE.
* Oracle Berkeley DB>=5.3: Beside db.DB_VERSION_STRING we now have db.DB_VERSION_FULL_STRING.
* Oracle Berkeley DB>=6.2: Beside db.DB_DBT_BLOB we now have db.DB_DBT_EXT_FILE.
* Being able to test against an especific Oracle Berkeley DB release.
* Code cleanup:
+ Remove unnecessary semicolons in Python code.
+ Remove unused imports.
+ Split multiple imports in a single line.
+ Split multiple statements in multiple lines.
+ Delete dead assignments.
+ Delete ancient code for verbose and silent in test code.
I never used it, and it is maintenance load.
+ Simplify some assertTrue() and assertFalse().
+ Imports directly from berkeleydb instead of test_all.
+ Copyright and license texts should be in comments, not docstrings.
+ Be more verbose and clear in the comparison test code.
+ Use isinstance() for type comparison.
+ Tight some tests.
+ Change some ambiguous variables.
+ Solve or silence ruff warnings.
+ Delete legacy pychecker support.
+ Delete legacy PyUnit GUI support.
- Use Python 3.11 on SLE-15 by default
-------------------------------------------------------------------
Tue Nov 19 12:52:51 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 18.1.11:
* WARNING - BREAKING CHANGE: Drop support for Python 3.8. This
breaking change should usually require a major and/or minor
number update. Since berkeleydb traditional numbering is
related to the higher Oracle Berkeley DB supported, I would
usually wait until Oracle releases a new version to upgrade
my own version and deprecate old Python support at the same
time. Given that Oracle has not released a new Oracle
Berkeley DB in almost five years, I must break this practice
for now. I am sorry if this update breaks your Python 3.8
environment. In that case, please pin your berkeleydb
installation to
-------------------------------------------------------------------
Wed Oct 9 06:33:55 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 18.1.10:
* 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
change a minor infraction affecting most probably nobody.
* Delete some unneeded ancient Python 2.x code.
* Delete more unneeded code to check threading support since
Python 3.7 and up always guarantee threads.
* pkg_resources is deprecated, so migrate to packaging. This is
already provided by modern setuptools. This change only
affects you if you run the test suite.
* If compiled under Python 3.10 or higher, we use the Python
Stable ABI, as defined in PEP 384 and related PEPs. That is,
you can use the same compiled module with any Python release
if Python version >= 3.10. In order to achieve this, we have
made these changes: Some fast Python API (not error
checking) have been replaced by somewhat slower functions
(functions that do error checking), because the former are
not available in the Stable ABI: PyBytes_GET_SIZE(),
PyBytes_AS_STRING(), PyTuple_SET_ITEM(). We replaced
PyErr_Warn() by PyErr_WarnEx() because it is not available in
the Stable ABI. When an exception is raised because an
incompatible type, we need to write complicated code because
Py_TYPE(keyobj)->tp_name is not available in the Stable ABI.
Code generated for Python < 3.11 is "ugly", we will clean it
up when the minimum supported Python version is 3.11.
TYPE->tp_alloc is not available under the Stable ABI. We
replace it with PyType_GenericNew(). Internal types that
should NOT be instanciated by the user has type->tp_new =
NULL. This can not be done under the Stable ABI, so we use
Py_TPFLAGS_DISALLOW_INSTANTIATION flag. This is the reason we
only create Stable ABI modules under Python >= 3.10, because
that flag is defined in that Python release. The new function
berkeleydb.py_limited_api() returns an integer describing the
minimum supported Stable ABI or None. If None, the module is
not compiled with Stable ABI and can not be used with a
different Python version. When not None, the value of
berkeleydb.py_limited_api() can be easily interpreted using
something like hex(berkeleydb.py_limited_api()).
* Some fast Python API (not error checking) have been replaced
by somewhat slower functions (functions that do error
checking), because the former are not available in the Stable
ABI: PyBytes_GET_SIZE(), PyBytes_AS_STRING(),
PyTuple_SET_ITEM().
* We replaced PyErr_Warn() by PyErr_WarnEx() because it is not
available in the Stable ABI.
* When an exception is raised because an incompatible type, we
need to write complicated code because
Py_TYPE(keyobj)->tp_name is not available in the Stable ABI.
Code generated for Python < 3.11 is "ugly", we will clean it
up when the minimum supported Python version is 3.11.
* TYPE->tp_alloc is not available under the Stable ABI. We
replace it with PyType_GenericNew().
* Internal types that should NOT be instanciated by the user
has type->tp_new = NULL. This can not be done under the
Stable ABI, so we use Py_TPFLAGS_DISALLOW_INSTANTIATION flag.
This is the reason we only create Stable ABI modules under
Python >= 3.10, because that flag is defined in that Python
release.
* The new function berkeleydb.py_limited_api() returns an
integer describing the minimum supported Stable ABI or None.
If None, the module is not compiled with Stable ABI and can
not be used with a different Python version. When not None,
the value of berkeleydb.py_limited_api() can be easily
interpreted using something like
hex(berkeleydb.py_limited_api()).
* Python 3.13 added to the full test matrix.
* Experimental Python 3.13 support. Tested under 3.13.0b2.
* This code can be compiled under MS Windows, but I am unable
to provide support for it and it is far from trivial. Because
of this and some complains about it, I change the
"Classifiers" for this project from 'Operating System :: OS
Independent' to 'Operating System :: Unix' I would restore
MS Windows support if there is some kind of community support
for it. I can not do it by myself alone. Sorry about that.
-------------------------------------------------------------------
Mon Feb 5 03:28:49 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
- Initial release of 18.1.8
- Initial release of 18.1.8

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-berkeleydb
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,8 +16,9 @@
#
%{?sle15_python_module_pythons}
Name: python-berkeleydb
Version: 18.1.8
Version: 18.1.14
Release: 0
Summary: Python bindings for Oracle Berkeley DB
License: BSD-3-Clause
@@ -56,6 +57,7 @@ This package contains the development files for %{name}
%prep
%autosetup -p1 -n berkeleydb-%{version}
sed -i '/\#\!\/usr\/bin\/env\ python/d' src/berkeleydb/dbshelve.py
%build
export CFLAGS="%{optflags} -fno-strict-aliasing"