Changelog¶
All notable changes to BetterPy are documented here. This project uses CalVer (Calendar Versioning) with the format YYYY.MM.PATCH[-channel.build].
For the full changelog, see CHANGELOG.md on GitHub.
2026.04.14 - 2026-04-27¶
🚀 Features¶
- Add test/production editor tab mode
- Show BetterPy plugin version in the status bar widget tooltip
- Ship
message-console-filterin stable - Link settings features to versioned docs
📚 Documentation¶
- Add persistent Marketplace and GitHub links to the docs site
- Point changelog links to the public GitHub repo
- Remove redundant README text
2026.04.13 - 2026-04-27¶
🚀 Features¶
- (diagnostics) Copy Diagnostic Data now includes operating system, Python interpreter version, and the list of disabled features
- Ship
dict-accessin stable with dedicated docs - Ship
generate-class-actionsin stable - Ship
change-visibilityfeature in stable
🐛 Bug Fixes¶
- Use
implementationfor navigation and usage extensions in plugin.xml
🚜 Refactor¶
- (core) Move always-on actions out of feature packages
- Move feature schema to
META-INF
2026.04.12 - 2026-04-25¶
🚀 Features¶
- Structural search
- Move py-goto-target-presentation to stable
🧪 Testing¶
- Migrate from JUnit3 to JUnit 4
⚙️ Miscellaneous Tasks¶
- Bump intelliJPlatform to 2.15.0
- Bump zensical to 0.0.36
2026.04.11 - 2026-04-24¶
🚀 Features¶
- Extend navigation bar to show file members
🧪 Testing¶
- Migrate test suite from JUnit 3 to JUnit 4
2026.04.10 - 2026-04-21¶
🚀 Features¶
- Move copy-method-annotations-from-parent to TYPING_TYPE_HINTS
- Mark more features as incubating
- Auto-stamp since field in feature metadata at build time
- Add metadata row to docs rendering
- Require 'since' for features in non-wildcard feature-sets
- Set since=2026.04.05 for stable features; move maturity tooltip to badge only
🐛 Bug Fixes¶
- (intentions) Redirect MakeParameterMandatory to root base class in multi-level hierarchies
- (docs) Collapse consecutive horizontal rules left by stripped sections
- (docs) Load feature metadata from META-INF XML blocks
- (docs) Pre-expand feature blocks via docs_ext before handing off to zensical
- (docs) Drop empty group rows from Features Overview table
- (docs) Escape
|in feature displayName for reference tables - (docs) Remove "Default" column from reference tables
💼 Other¶
- Recover lost docs/plugin.xml/feature-metadata chain (43b9f7d8..4f39217a)
🚜 Refactor¶
- (docs) Unify on RELEASE_CHANNEL env and --channel CLI flag
- Build plugin.xml dynamically
- Include plugin registrations on build time
- Include *.actions.xml files
- Move feature file content to XML fragments
- Use test annotations to skip tests for features that are not configured
- (plugin-xml) Inline *.actions.xml fragments into canonical feature files
- Split _bootstrap.xml registrations into owning feature XMLs
- Retire TypeEvalContexts.java
🧪 Testing¶
- Validate metadata block
- Validate feature id matches filename
- Skip tests for excluded features in stable channel
⚙️ Miscellaneous Tasks¶
- Add purge release script
- (docs) Drop internal Pages deploy (plan does not support Pages on private repos)
- Upgrade to intellij-platform-plugin-template v2.5.0
- Disable jobs targeting dev branch
- Bump version to 2026.04.10