> For the complete documentation index, see [llms.txt](https://docs.xplatform.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.xplatform.com/talon/compatibility/adm-compatibility-matrix.md).

# ADM Compatibility Matrix

## Compatibility Matrix <a href="#admcompatibilitymatrix-compatibilitymatrix" id="admcompatibilitymatrix-compatibilitymatrix"></a>

Below lists the changes for ADM generated code compatibility. See [Adm Compatibility Level](/talon/compatibility.md) documentation for an explanation on ADM generated code compatibility.

<table><thead><tr><th width="194">ADM Maven Plugin</th><th width="242">ADM Compatibility Version</th><th>Changes</th></tr></thead><tbody><tr><td><strong>3.0.503 -> 3.1.103</strong></td><td><strong>2.4.0</strong></td><td><em>First 3.0 release</em><br><br>Generated Code can run with <strong>3.0.503</strong> to <strong>3.1.103</strong></td></tr><tr><td><strong>3.1.104 -> 3.2.120</strong></td><td><strong>3.0.0</strong></td><td><em>Enhancements for detecting incompatible enums required new apis in generated code</em><br><br>Generated Code can run with <strong>3.1.104</strong> to <strong>3.X</strong></td></tr><tr><td><strong>3.2.121 -> 3.4.67</strong></td><td><strong>3.1.0</strong></td><td><em>Adding support for Field Interest registration for Xbuf</em><br><br>Generated Code can run with <strong>3.2.121</strong> to <strong>3.X</strong></td></tr><tr><td><strong>3.4.373 -> 3.5.126</strong></td><td><strong>3.4.0</strong></td><td><p><em>Support for Message copy</em><br><em>Support for RepeatedFieldBuffer access in Xbuf.</em></p><p>Generated Code can run with <strong>3.4.373</strong> to <strong>3.X</strong></p></td></tr><tr><td><strong>3.5.127 -> 3.6.X</strong></td><td><strong>3.4.1</strong></td><td><p><em>Support for pass-through field preserving entity copy and Message.copyXXXTo(Entity)</em></p><p>Generated Code can run with <strong>3.4.373</strong> to <strong>3.X</strong></p><p>ℹ️ <em>These were introduced 3.5.127, 3.6.84 patch releases ... prior 3.5 and 3.6 versions were</em><br><em>at ADM compat level of 3.4.0</em></p></td></tr><tr><td>3.7.162 -> 3.7.216</td><td>3.7.0</td><td><p><em>Changed protobuf message copy() to preserve pass-through fields, changed getXXXTo implementation to use copyInto() for embedded fields.</em></p><p><em>Changed Xbuf generated entities to use XbufHeuristics class to source deync policy and sparse optimization flags ... requires new platform APIs.</em><br><em>Change Xbuf generated objects to use XbufHeuristics class to source pooling parameters ... requires new platform APIs.</em></p><p><em>Generated Code can run with <strong>3.7.162</strong> to <strong>3.X</strong></em></p></td></tr><tr><td>3.7.217 -> 3.8.63</td><td>3.8.0</td><td><p><em>Changed Xbuf embedded entity array accessors to allow for reduce memory usage. The changes to the generated code require new platform APIs</em></p><p><em>Generated Code can run with <strong>3.7.217</strong> to <strong>3.X</strong></em></p></td></tr><tr><td>3.8.64 -> 3.8.108</td><td>3.8.1</td><td><p><em>Changed the ADM generated lendXXX(XString val) method to allow it to accept a null value without throwing a NullPointerException</em></p><p><em>See</em> <a href="https://docs.neeveresearch.com:8443/display/doc/Core+X+3.8.64+Release+Notes#CoreX3.8.64ReleaseNotes-XPLATFORM-1823"><em>XPLATFORM-1823</em></a></p><p><em>Generated Code can run with <strong>3.7.217</strong> to <strong>3.X</strong></em></p></td></tr><tr><td>3.8.126 - 3.8.158</td><td>3.8.2</td><td><p><em>Fixes a compiler warning in XBuf generated code relating the deprecated PktBuffer.create method.</em></p><p><em>See</em> <a href="https://docs.neeveresearch.com:8443/display/doc/Core+X+3.8.126+Release+Notes#CoreX3.8.126ReleaseNotes-XPLATFORM-1886"><em>XPLATFORM-1886</em></a></p><p><em>Generated Code can run with <strong>3.7.217</strong> to <strong>3.X</strong></em></p></td></tr><tr><td>3.8.159 -> 3.8.187</td><td>3.9.0</td><td><p><em>Changes the code generated by ADM for collection nodes by moving more of the implementation code into the platform collection base classes.</em></p><p><em>See</em> <a href="https://docs.neeveresearch.com:8443/display/doc/Core+X+3.8.159+Release+Notes#CoreX3.8.159ReleaseNotes-XPLATFORM-1903"><em>XPLATFORM-1903</em></a></p><p><em>Generated Code can run with <strong>3.8.159</strong> to <strong>3.X</strong></em></p></td></tr><tr><td>3.8.188 -> 3.8.193</td><td>3.9.1</td><td><p>Optimizing Xbuf generated messages' &#x3C;T> getXXXTo(XString.Factory&#x3C;T> factory) methods for better performance with FrameFields.</p><p><em>See</em> <a href="https://docs.neeveresearch.com:8443/display/doc/Core+X+3.8.188+Release+Notes#CoreX3.8.188ReleaseNotes-XPLATFORM-1915"><em>XPLATFORM-1915</em></a></p><p><em>Generated Code can run with <strong>3.8.159</strong> to <strong>3.X</strong></em></p></td></tr><tr><td>3.8.194 ->3.11.0</td><td>3.9.2</td><td><p>New code generator option to generate embedded entities as non final. This change does not other wise change the generated apis.</p><p><em>See</em> <a href="https://docs.neeveresearch.com:8443/display/doc/Core+X+3.8.194+Release+Notes#CoreX3.8.194ReleaseNotes-XPLATFORM-1445XPLATFORM-1445-AllowADMtogenerateEmbeddedEntitiesasNonFinal"><em>XPLATFORM-1445</em></a></p><p><em>Generated Code can run with <strong>3.8.159</strong> to <strong>3.X</strong></em></p></td></tr><tr><td>3.11.55 -> 3.12.x</td><td>3.10.0</td><td><p>New State Replication Map types and ERogFieldNotWriteable exceptions require new runtime APIs.</p><p><em>See</em> <a href="https://docs.neeveresearch.com:8443/display/doc/Core+X+3.11.55+Release+Notes#CoreX3.11.55ReleaseNotes-XPLATFORM-2080XPLATFORM-2080-Exposeautoboxing-freeprimitivemaptypesforStateReplicationthatsupportreusableiterators."><em>XPLATFORM-2080</em></a></p><p><em>Generated Code can run with <strong>3.11.55</strong> to <strong>3.X</strong></em></p></td></tr><tr><td>3.14.19</td><td>4.0.0</td><td><p>Changed the data type fields ids of generated classes from int to long</p><p>See <a href="https://docs.neeveresearch.com:8443/display/doc/Talon+3.14.19+Release+Notes#Talon3.14.19ReleaseNotes-XPLATFORM-2228"><em>XPLATFORM-2228</em></a></p><p><em>Generated Code can run with <strong>3.14.19</strong> to <strong>3.X</strong></em></p></td></tr><tr><td>3.16.15</td><td>4.1.0</td><td><p>Added support to track and report memory utilization statistics. The changes to the generated code require new platform APIs</p><p><em>See</em> <a href="https://docs.neeveresearch.com:8443/display/doc/Talon+3.16.19+Release+Notes#Talon3.16.19ReleaseNotes-RUMI-107"><em>RUMI-107</em></a></p><p><em>Generated Code can run with <strong>3.16.14</strong> to <strong>3.X</strong></em></p></td></tr></tbody></table>
