Skip to main content

node.ext.zodb

Latest PyPI version Number of PyPI downloads Test 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)

Source distribution for node.ext.zodb 2.0.1
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)

Table of built distributions (wheels) for node.ext.zodb 2.0.1
File Interpreter ABI Platform Actions
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.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page