Skip to content

Releases: MeGaNeKoS/logveil

v2.2.1

Choose a tag to compare

@MeGaNeKoS MeGaNeKoS released this 10 Jul 00:38
dca6482

Patch release after the logveil rename.

  • Remove the deprecated python-devlog compatibility shim from the package.
  • Remove python-devlog build, test, and publish jobs from CI/CD.
  • Rename remaining internal devlog identifiers and messages to logveil.
  • Keep the release pipeline publishing only logveil.

v2.2.0 — Renamed to logveil

Choose a tag to compare

@MeGaNeKoS MeGaNeKoS released this 09 Jul 17:13
6aaf4bd

logveil 2.2.0

This is the first release under the new package name logveil (previously python-devlog).

What's new

  • Package renamed from python-devlog to logveil
  • Import path changes from devlog to logveil
  • python-devlog 2.2.0 is now published as a compatibility shim that re-exports everything from logveil and emits a DeprecationWarning on import

Migration

\\�ash
pip install logveil
\\

\\python

Before

from devlog import log_on_start, log_on_end, log_on_error

After

from logveil import log_on_start, log_on_end, log_on_error
\\

All APIs are identical — only the package and import name changes.

Existing python-devlog users will receive this shim automatically on pip install --upgrade python-devlog.

v2.1.1

Choose a tag to compare

@MeGaNeKoS MeGaNeKoS released this 22 Feb 08:49
dae3024

Changes

  • Add cross-call-boundary taint propagation for multi-depth function chains
    • Derived values (f-strings, mutations) passed to sub-functions are now tracked and redacted
  • Modernize CI workflows with OIDC trusted publishing and SHA-pinned actions

v2.1

Choose a tag to compare

@MeGaNeKoS MeGaNeKoS released this 22 Feb 07:19
06735fd

Stack trace locals redaction with bytecode taint analysis

Sensitive values and sanitize_params now redact stack trace locals using three-layer analysis:

  1. Name-based: Parameter variables redacted by name (works for any type — strings, ints, dicts, etc.)
  2. Bytecode dataflow: Analyzes function bytecode to find derived variables
  3. Value check: Only redacts if the runtime value actually contains the secret

Examples

Variable Redacted? Why
token = "sk-secret" '***' Parameter name
header = f"Bearer {token}" '***' In dataflow + contains secret
secrets = [token] '***' Container holds the object
token_len = len(token) 14 In dataflow, but value doesn't contain secret
coincidence = "sk-secret" 'sk-secret' Not in dataflow from token

Changes

  • Add stack trace locals redaction for Sensitive values and sanitize_params
  • Three-layer taint analysis: name-based, bytecode dataflow, and value checking
  • Update README with sanitization examples and async sample output
  • 10 new tests (72 total)

Full Changelog: v2.0...v2.1

v2.0

Choose a tag to compare

@MeGaNeKoS MeGaNeKoS released this 21 Feb 00:00
4cc020b

What's New

  • Async support — all decorators now work with async functions automatically
  • Value sanitization — Sensitive wrapper and sanitize_params option to redact values in logs
  • Modularized codebase — split monolithic decorator.py into base.py and decorators.py
  • Improved tracebacks — __tracebackhide__ keeps devlog frames out of pytest output
  • Bug fix — custom_excepthook now correctly writes to file (was opening in read mode)
  • Modernized CI — updated GitHub Actions, Python 3.9–3.13 test matrix
  • Dynamic versioning — version derived from git tags via setuptools-scm

Breaking Changes

  • Requires Python 3.9+
  • Internal module devlog.decorator removed (use devlog.base / devlog.decorators)
  • Public API (devlog.log_on_start, etc.) is unchanged

1.2

1.2

Choose a tag to compare

@MeGaNeKoS MeGaNeKoS released this 12 Jun 21:38
  • Add anti log the same exception twice
  • Add custom traceback
  • Now the module can be excluded from the traceback

Full Changelog: 1.1...1.2

1.1

1.1

Choose a tag to compare

@MeGaNeKoS MeGaNeKoS released this 08 Jun 23:28
  • Add unit testing and tested on python 3.6 to 3.10
  • Stable release of the package

Full Changelog: 1.0b2...1.1

1.0b2

Choose a tag to compare

@MeGaNeKoS MeGaNeKoS released this 21 May 12:32
  • Change the decorator from CamelCase to snake_case
  • Treat the no parenthesis decorator as an empty parenthesis decorator

Full Changelog: 1.0b1...1.0b2

1.0b1

Choose a tag to compare

@MeGaNeKoS MeGaNeKoS released this 21 May 07:40

Beta release of devlog. Currently limited to sync func.

Full Changelog: https://github.com/MeGaNeKoS/devlog/commits/1.0b1