You've already forked transaction-tracker
Previously is_processed() returned True for any record file that existed, relying entirely on cleanup_expired() (called at __init__) to delete stale files. Because cleanup runs at container startup — before Akahu transactions are fetched — any record that expired exactly on that startup would be deleted and then immediately missed, letting the duplicate through. Fix: is_processed() reads the expires_at field from the JSON and returns False if the record has expired, regardless of whether cleanup has run. Also adds migrate_ttl.py script to retroactively extend expires_at on existing records that were written under a shorter TTL, and bumps version to 0.1.3.
23 lines
418 B
TOML
23 lines
418 B
TOML
[project]
|
|
name = "transaction-tracker"
|
|
version = "0.1.3"
|
|
description = ""
|
|
authors = [
|
|
{name = "Aaron Guise",email = "aaron@guise.net.nz"}
|
|
]
|
|
readme = "README.md"
|
|
requires-python = ">=3.9,<3.14"
|
|
dependencies = [
|
|
]
|
|
|
|
|
|
[build-system]
|
|
requires = ["poetry-core>=2.0.0,<3.0.0"]
|
|
build-backend = "poetry.core.masonry.api"
|
|
|
|
[tool.poetry.group.dev.dependencies]
|
|
pytest = "^8.3.5"
|
|
coveragepy = "^1.6.0"
|
|
setuptools = "^80.7.1"
|
|
|