The MPS community is quite active but talks little about their work. I decided to help improve the situation, so I went through Git commit logs for the last month and collected notable changes in MPS itself and the most prominent libraries.

I list changes on master/main branches only. Some, but not all, of these changes are backported to older versions as well.

MPS master (version 2026.1)

IDE

  • Update to the latest IDEA platform.
  • Various minor UI improvements. For example, an annoying bug where the project pane selection would jump to the ‘Transient Models’ on every build (if transient models are enabled) was fixed.
  • UI performance improvements.

Version Control

  • Merge driver improvements (‘do not generate’ flag is now merged properly).
  • Merge UI improvements.

Generator

  • An initial implementation of conditional generation (MPS-38762).

Editor

  • Intentions are now enabled on read-only cells (MPS-33716)
    • This should make the corresponding hack in MPS-extensions unnecessary.

Java

  • Javadoc improvements:
    • The javadoc language now uses the text language for its text content, including text in various tags such as @param or @deprecated.
    • Text can now be pasted ‘as Javadoc’ (in addition to ‘as Java statement’ and ‘as Java class content’).

Building and Packaging

  • All JARs from mps_home/lib/modules are added to the IDEA layout, making the MPS.ThirdParty module in MPS-extensions unnecessary (the module was removed as a consequence, see MPS-extensions changes below).
  • MPS build scripts now have a property, mps.log.dir, that can be used to specify a directory where logs will be written, so that they are not written into the MPS home directory. This allows using one MPS installation in multiple parallel builds.

MPS-extensions

Based on the changelog and commit logs:

  • Tables: copy-paste support for tables was added.
  • Diagrams: there is now a flag to suppress autolayout-on-init functionality, useful when laying out multiple diagrams in a batch.
  • Improvements to spell checking functionality (support for custom dictionaries).
  • MPS.ThirdParty solution with stubs of libraries bundled with MPS was removed, MPS.IDEA or MPS.IDEA.Modules can now be used instead.

mbeddr

Based on the changelog and commit logs:

Assessments

  • Performance improvement when updating results of previously run queries.
  • A new option, ‘always show checkboxes’, to let users check off individual entries without marking the entire containing assessment with an error.
  • API change to make the current MPS project available in assessments and assessment scopes.

Action Filter

  • UI fixes to make sure the selected action profile stays selected after a restart.
  • Filtering now works without having to install an IDEA plugin.

Small improvements

  • The search tool has got a new icon to distinguish it from the built-in Find Usages tool window.
  • CommandButton#perform got an overload accepting the current project as a parameter.

IETS3 Opensource (KernelF)

Based on the changelog and commit logs. These changes are only present on the MPS 2025.1 branch and haven’t been merged to master yet, but hopefully will be soon.

Added

  • The Maven POM now contains all bundled JARs as dependencies with provided scope to help with automated license and vulnerability scanning.
  • The Grammar Cells of KernelF editors can now be customized through the extension point EditorCustomization. Optional cells, flag cells, constant cells, substitute cells and side transformations can be customized (activation of substitutions, side transformations, description text, post-processing

Fixed

  • NumberLiteral editor no longer breaks if a property macro was used for its value.
  • Added missing support for IndexExpr for the operations findFirst and forEach.
  • Some editor action descriptions were improved.

mps-build-backends

Added support for the current MPS master (2025.3/2026.1). This required passing an additional --add-opens flag to the JVM when launching MPS and making the remigrate backend (for executing re-runnable migrations) properly wait until MPS is done building its indices.

mbeddr/mps-gradle-plugin

No changes in November, but I am working on a simple change to bump the dependency on mps-build-backends launcher from above. However, this leads to dropping support for older MPS versions, at least in tests.

specificlanguages/mps-gradle-plugin

I wanted to release the final version 2.0.0, but unfortunately my clever use of artifact transforms to share a single MPS installation among multiple projects got derailed.

Gradle 9.1 has begun checking the transformed artifacts to make sure they are not changed after transformation, and since MPS likes to write its logs into its home directory, we did not pass the check. JetBrains has implemented a fix for this issue, but the fix did not work correctly on older MPS versions. So now I am waiting for the fix to the fix to be released and hoping that I will not have to implement a workaround.