node.ext.zodb
Overview
node.ext.zodb is a persistent node implementation for the ZODB.
For more information about node see https://pypi.python.org/pypi/node
Source Code
The sources are in a GIT DVCS with its main branches at github.
We’d be happy to see many forks and pull-requests to make it even better.
Python Versions
Python 2.7, 3.7+
Contributors
Robert Niederreiter (Author)
Jens Klein
Changes
2.0.1 (2026-10-31)
Base Podict and OOBTodict on odict.pyodict._base_odict with _dict_cls and _list_cls instead of the deprecated _odict API, and on persistent.mapping.PersistentMapping instead of the deprecated persistent.dict.PersistentDict alias. Stored objects are unaffected. [rnix]
Modernise the code ruff flags as outdated: u'' prefixes, class X(object) and .format() over f-strings. Behaviour unchanged. super(Class, self) is kept, see cone.app. [rnix]
Sort the imports with ruff (one per line, from imports first, no sections) and format the code with ruff format (90 characters per line, single quotes). [rnix]
Add qa.ruff domain to Makefile and pin the ruff configuration in pyproject.toml, make check runs ruff check. [rnix]
Drop the Python 2 remnants: OOBTodict.__nonzero__, __bool__ is defined directly. [rnix]
2.0.0 (2026-02-03)
Refactor package layout to use pyproject.toml and implicit namespace packages. [rnix]
1.7 (2025-10-25)
Pin upper versions of dependencies. [rnix]
1.6 (2022-12-05)
Pass name and parent as keyword arguments all over the place. Preparation for use of NodeInit behavior instead of DefaultInit. [rnix]
1.5 (2022-03-21)
Replace deprecated use of Storage by MappingStorage. [rnix]
Replace deprecated use of Nodify by MappingNode. [rnix]
Replace deprecated use of Adopt by MappingAdopt. [rnix]
Replace deprecated use of NodeChildValidate by MappingConstraints. [rnix]
Replace deprecated use of allow_non_node_childs by child_constraints. [rnix]
1.4 (2021-10-21)
Implement _list_factory on Podict and OOBTodict and use PersistentList for internal double linked list triples to allow transaction property detect changes. [rnix, jensens]
Drop ZODB3. [rnix]
1.3 (2020-07-09)
Access attrs when initializing nodes with ZODBAttributes behavior applied to avoid lazy creation. Needed to prevent _p_changed being set on first access. [rnix, 2020-06-23]
Access storage when initializing nodes with PodictStorage or OOBTodictStorage behaviors applied to avoid lazy creation. Needed to prevent _p_changed being set on first access. [rnix, 2020-06-23]
Use plumb instead of overriding __setattr__ to change __parent__ name to _v_parent on ZODBBehavior. [rnix, 2020-06-23]
Use plumb instead of overriding __getitem__ to set parent on ZODBBehavior. [rnix, 2020-02-28]
1.2 (2017-07-18)
Add python 3 support. [rnix, 2017-06-24]
Add keys to OOBTodict and accept any number of *args and **kw to match expected contract by OOBTree and Fix tests with ZODB 5. [rnix, 2017-06-22]
Add __nonzero__ and __bool__ to OOBTodict in order to make it work properly with ZODB 5. [rnix, 2017-06-22]
Use @property and @property.setter for OOBTodict.lh and OOBTodict.lt. [rnix, 2017-06-22]
1.1.1
Change ZODB install requirement to ZODB3. Latter one is a meta package as of version 3.11.0 and installs ZODB [rnix, 2017-06-19]
1.1
Remove superfluous __repr__ function from OOBTodict. odict package properly outputs class name as of version 1.6.2. [rnix, 2017-06-14]
Fix volatile_property to work on classes overwriting __getattr__. [rnix, 2017-06-14]
Use plumbing decorator instead of __metaclass__ and __plumbing__ class attributes. [rnix, 2017-06-14]
1.0.1
Add maintenance utilities. [rnix, 2014-05-13]
Cleanup tests. [rnix, 2014-05-13]
1.0
initial [rnix]
License
Copyright (c) 2012-2021, BlueDynamics Alliance, Austria, Germany, Switzerland Copyright (c) 2021-2025, Node Contributors All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Metadata
Release files for node.ext.zodb 2.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| node_ext_zodb-2.0.1.tar.gz | 11.7 kB | Without provenance | Details for node_ext_zodb-2.0.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| node_ext_zodb-2.0.1-py3-none-any.whl | Python 3 | none | any | Details for node_ext_zodb-2.0.1-py3-none-any.whl |
Total release size: 23.8 kB
Release files / node_ext_zodb-2.0.1.tar.gz
| Download URL | node_ext_zodb-2.0.1.tar.gz |
|---|---|
| Size | 11.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
71e64b934b5fb7cc495fcd0c12296609e8aa863638efa4c1e54cae1f6fa10acc
|
|
BLAKE2b-256 checksum How to use checksums |
6e6559c43911873e43725193f7beaf9ed13b3337b1869f6f03270514aaedee4a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.2
|
Release files / node_ext_zodb-2.0.1-py3-none-any.whl
| Download URL | node_ext_zodb-2.0.1-py3-none-any.whl |
|---|---|
| Size | 12.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
070de2cbeeec232983d5d5550bb208c9044cf8d3eef06136c68a63a94941be5a
|
|
BLAKE2b-256 checksum How to use checksums |
11373f2ada447054f52b4691fa0ed35ab3cb8edac757cb9b25035d95280422f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.2
|
Security for node.ext.zodb 2.0.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.