Booklet

Latest version: v0.7.5

Safety actively analyzes 688924 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 4

0.6.3

The first 200 bytes of a booklet file can be passed at initialization to initialize a new booklet.

0.6.2

Added prune method, cleaned up some code, and added more details in the docs.

0.6.1

Upgraded with timestamps and metadata assignment. The VariableValue object can now be initialized with timestamp assignments. Whenever a key/value is stored, a timestamp is stored with it and the timestamp can be optionally specified (and changed later) by the user.
All of file metadata can also be assigned as a dict.
This is compatible with the previous 0.5 version.

0.5.1

Improved the checks and corrections when the file closes incorrectly. If it has, it will re-calculate the number of keys at reopening.

0.5.0

Yet another rewrite...but now it's much better.
Single file, no mmap, and the database can scale to any number of keys up to 256**4. It's really fast regardless of the size.
The user needs to assign an appropriate n_buckets.

0.4.0

Major rewrite after discovering that mmap can use huge amounts of memory. During writing, a separate index file is created. This file is updated using mmap, while the main data file just uses normal file operations. When the file is closed after a write operation, it is appended to the end of the main data file. When open for reading, mmap is only used on the index at the end of the file.

There's still the issue that when the number of indexes increases to over 100,000 and upwards of 1,000,000 there is significant slowdown due to the constant moving/copying of indexes during insertions. mmap is currently handling this, and I haven't figured out a decent way to create an indexing system without moving data around...

Page 2 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.