Skip to main content

A library to handle persistent memory

Project description

membank

Python library for storing data in persistent memory (sqlite, postgresql, berkeley db)

goals

Provide interface to database storage that automates heavy lifting of database setup, migration, table definition, query construction.

quick intro

add items to persistent storage

import dataclasses as data # Python standard library

from membank import LoadMemory

@data.dataclass
class Dog():
    breed: str
    color: str = "black"
    weight: float = 0

memory = LoadMemory() # defaults to sqlite memory
memory.put(Dog('Puli')) # stores object into database
dog = memory.get.dog() # retrieves first object found
assert dog.breed == 'Puli'

retrieve those after

memory = LoadMemory() # to make this work in new process, don't use sqlite memory
dog = memory.get.dog()
assert dog.color == 'black'

editing returned objects

dog = memory.get.dog()
dog.breed = 'Labdrador'
memory.put(dog) # stores edited object back

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

membank-0.2.9.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

membank-0.2.9-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file membank-0.2.9.tar.gz.

File metadata

  • Download URL: membank-0.2.9.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.22.0 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/18.0.1 rfc3986/2.0.0 colorama/0.4.3 CPython/3.8.10

File hashes

Hashes for membank-0.2.9.tar.gz
Algorithm Hash digest
SHA256 d95defa1c91d17480a75e49a32264ecf0a21bb0bc0568a48a29fc5a5bb76936e
MD5 b066a416299638fa922b444a438466a5
BLAKE2b-256 c78378243dcc6a0e7e6da4d3b6b9803182061b1032f1e93ae1d926f77011c814

See more details on using hashes here.

File details

Details for the file membank-0.2.9-py3-none-any.whl.

File metadata

  • Download URL: membank-0.2.9-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.22.0 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/18.0.1 rfc3986/2.0.0 colorama/0.4.3 CPython/3.8.10

File hashes

Hashes for membank-0.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 0f2bd618cef5f5a137594853f2dca99e45346021794953e485ca00a9b0f33383
MD5 5d9adf413e43244936eb23c4d7f8eab4
BLAKE2b-256 dfd660b4af9faba76aa1a35fe5ea75fea36047ace2626e43f00de90d29186db1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page