Skip to content

Commit 490a858

Browse files
committed
chore: release v0.1.0a1
1 parent 34cb98d commit 490a858

3 files changed

Lines changed: 21 additions & 2 deletions

File tree

CHANGELOG.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Changelog
2+
3+
This file documents all notable changes to this project.
4+
5+
This format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6+
and this project adheres to [PEP 440](https://peps.python.org/pep-0440/).
7+
8+
## [Unreleased]
9+
10+
### Added
11+
12+
- `Table` class for working with JSONLT files supporting CRUD operations (`get`, `put`, `delete`, `has`)
13+
- `Transaction` class with snapshot isolation and optimistic concurrency control
14+
- Compound key support for multi-field keys (for example, `("customer_id", "order_id")`)
15+
- Cross-platform file locking for concurrent access (fcntl on Unix, LockFileEx on Windows)
16+
- Query operations: `find()` and `find_one()` with predicate functions
17+
- Table maintenance: `compact()` to remove superseded records and tombstones
18+
- Exception hierarchy with `ConflictError` for write-write conflict detection
19+
- Full conformance with the JSONLT specification

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "uv_build"
44

55
[project]
66
name = "jsonlt-python"
7-
version = "0.0.0"
7+
version = "0.1.0a1"
88
description = "A library for using a JSON Lines (JSONL) file as a lightweight database."
99
readme = "README.md"
1010
requires-python = ">=3.10"

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)