Skip to content

Improve versioning reporting#34

Merged
kunitoki merged 1 commit into
mainfrom
dev/improve_versioning
Jun 8, 2026
Merged

Improve versioning reporting#34
kunitoki merged 1 commit into
mainfrom
dev/improve_versioning

Conversation

@kunitoki

@kunitoki kunitoki commented Jun 8, 2026

Copy link
Copy Markdown
Owner

This pull request introduces several improvements and bug fixes to class filtering and manifest compatibility reporting, along with additional test coverage. The most significant changes include ensuring that suppressed outer classes also suppress their inner classes, more granular compatibility checks for transformations and class relationships, and corresponding updates to tests.

Filtering and Manifest Generation

  • Added recursive suppression of inner classes: When an outer class is filtered out (via blacklist, whitelist, internal, or source exclusion), all its inner classes are now also marked as suppressed, preventing them from leaking into the manifest or transformations. (src/tsujikiri/filters.py, tests/test_filters/test_filters.py) [1] [2]
  • Updated manifest canonicalization: The manifest generation now only includes bases and inner classes that are not suppressed, and sorts them for consistency. (src/tsujikiri/manifest.py)

Compatibility Checking

  • Improved class member comparison: The compatibility checker now compares base classes and inner classes, reporting added or removed bases/inner classes as additive or breaking changes, respectively. (src/tsujikiri/manifest.py)
  • Granular transformation comparison: Instead of treating any transformation metadata change as breaking, the checker now compares code injections, class/function/enum transformations, and exception registrations individually, reporting only the specific changes. (src/tsujikiri/manifest.py, tests/test_manifest/test_manifest.py) [1] [2] [3]

Test Enhancements

  • Added comprehensive tests for recursive class filtering and for additive/breaking changes in transformations, base classes, and inner classes. (tests/test_filters/test_filters.py, tests/test_manifest/test_manifest.py) [1] [2]

Other minor changes include a version bump to 0.23.0 and small documentation and import tweaks. [1] [2] [3] [4] [5] [6]

@kunitoki kunitoki merged commit 1a62730 into main Jun 8, 2026
48 checks passed
@kunitoki kunitoki deleted the dev/improve_versioning branch June 8, 2026 14:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant