BSD Ports

devel/py-klepto 0.2.8 FreeBSD

Persistent caching to memory, disk, or database

System
FreeBSD
Repository
FreeBSD ports
Maintainer
[email protected]
License
BSD3CLAUSE
Categories
devel, python
Package size
152.2 KiB, 1197.7 KiB installed

Description

klepto extends Python's lru_cache to utilize different keymaps and alternate caching algorithms, such as lfu_cache and mru_cache. While caching is meant for fast access to saved results, klepto also has archiving capabilities, for longer-term storage. klepto uses a simple dictionary-sytle interface for all caches and archives, and all caches can be applied to any Python function as a decorator. Keymaps are algorithms for converting a function's input signature to a unique dictionary, where the function's results are the dictionary value. Thus for y = f(x), y will be stored in cache[x] (e.g. {x:y}).

klepto provides both standard and "safe" caching, where "safe" caches are slower but can recover from hashing errors. klepto is intended to be used for distributed and parallel computing, where several of the keymaps serialize the stored objects. Caches and archives are intended to be read/write accessible from different threads and processes. klepto enables a user to decorate a function, save the results to a file or database archive, close the interpreter, start a new session, and reload the function and it's cache.

In the other systems

SystemPortVersion
FreeBSDdevel/py-klepto0.2.8
DragonFlydevel/py-klepto0.2.6
HardenedBSDdevel/py-klepto0.2.8
GhostBSDdevel/py-klepto0.2.8

Install

Binary package:

pkg install py312-klepto

From the ports tree:

cd /usr/ports/devel/py-klepto/ && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	py312-klepto>0:devel/py-klepto

Packages

The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.

Repositoryaarch64amd64armv6armv7i386
FreeBSD:14:latest0.2.80.2.8-0.2.70.2.8
FreeBSD:14:quarterly0.2.80.2.8n/a0.2.70.2.8
FreeBSD:15:latest0.2.80.2.8n/a0.2.70.2.7
FreeBSD:15:quarterly0.2.80.2.8n/an/an/a
FreeBSD:16:latest0.2.80.2.8n/an/an/a
FreeBSD:16:quarterlyn/an/an/an/an/a

Dependencies

As this port's Makefile names them.

Build 2

Runtime 2

The full lists below include those, and their dependencies in turn.

Build dependencies 16
Run dependencies 9
Required by 1

Configuration

No options to configure.

USES
python
Service scripts
none

Files

distinfo 1
FileSizeSHA256
klepto-0.2.8.tar.gz1585900f02cf17ea5963645600d69c50275f9b43d04dbfc1c019eed6c9008d952240b4
Master sites 1
  • PYPI

Commit history 0

No commits in the history this site was built from.