Skip to content

Latest commit

 

History

History
190 lines (97 loc) · 8.53 KB

CHANGELOG.md

File metadata and controls

190 lines (97 loc) · 8.53 KB

1.8.1 (2026-10-06)

Bug Fixes

  • preserve diagnostics in selective extraction when merging main (72fb440)

Performance Improvements

  • cache dependency filter matches per check (a0800fa)
  • parse only selected sources for file dependency rules (0e3f261)
  • skip directory-only excludes for Python files (1a6d5ed)
  • skip redundant leading glob stars during search (27f14e8)
  • walk parsed syntax trees once per file (2f7efbf)

1.8.0 (2026-09-30)

Features

  • add detailed per-check inspection and styled reports (#65) (ab0f9ef)

1.7.0 (2026-09-13)

Bug Fixes

  • preserve mixed namespace import targets (489624b)

Features

  • resolve namespace package submodule imports (86c53e6)

1.6.1 (2026-09-13)

Bug Fixes

  • deps: bump the actions-updates group across 1 directory with 5 updates (7a0785f)

1.6.0 (2026-09-12)

Bug Fixes

  • preserve package targets for relative imports (09c9d19)
  • preserve relative conditional import targets (0ae22bb)

Features

  • classify conditional imports (5f0f600)

1.5.0 (2026-07-18)

Features

  • load common rules from config (c7c968a)

1.4.0 (2026-07-18)

Bug Fixes

  • clarify metadata and exclude messages (999bb68)
  • harden archignore loading (ae88c93)

Features

  • support archignore exclusions (c51c401)

1.3.0 (2026-07-05)

Features

  • add because rule rationales (491c666)

1.2.1 (2026-06-28)

Bug Fixes

  • extract_graph: validate AST line number before range lookup (84c9ef4)

Performance Improvements

  • extract_graph: optimize file path normalization (14b4a95)
  • extract_graph: replace linear search in _in_type_checking() with binary search (1285b5e)

Reverts

  • Reverted the binary search implementation in _in_type_checking() function. (d06a455)

1.2.0 (2026-06-27)

Features

  • add graph reporting and sponsorship links (6d5eabc)

1.1.2 (2026-06-23)

Bug Fixes

  • fixed the duplicate key issue (283e8e3)
  • wrap long line in extract_graph to pass ruff E501 (f291181)

1.1.1 (2026-05-24)

Bug Fixes

  • deps: bump actions/upload-pages-artifact (a4452fc)

1.1.0 (2026-04-26)

Bug Fixes

Features

  • add external dependencies and TYPE_CHECKING (02b8d01)

1.0.1 (2026-04-02)

Bug Fixes

1.0.0 (2026-04-02)

  • feat!: rename package from archunitpy to archunitpython (95c0b3a)

Bug Fixes

BREAKING CHANGES

  • Package import changed from import archunitpy to import archunitpython.

Co-Authored-By: Claude Opus 4.6 (1M context) [email protected]

Changelog

All notable changes to ArchUnitPython will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[0.1.0] (2026-04-01)

Features

  • Initial release of ArchUnitPython
  • File-level architecture rules: circular dependencies, layer dependencies, naming conventions, custom rules
  • Slice-level architecture rules: PlantUML diagram validation, forbidden dependency checks
  • Code metrics: 8 count metrics, 8 LCOM cohesion variants, distance metrics (abstractness, instability, zones)
  • Custom metrics with arbitrary calculation and assertion logic
  • HTML report export (experimental)
  • Pattern matching with glob and regex support
  • Testing integration: assert_passes() for pytest, check() for any framework
  • Debug logging with file output
  • Empty test protection
  • Zero runtime dependencies