This release does not offically support JDK 8.
We did not immediately remove support via our preprocessing step that
swaps code based on the JDK compiler, but we no longer test with JDK 8.
In 2027, we plan to remove compatibility with any JDK less than 17
NeXtMidas SYS Option Tree Tested on: (tests with Java 17, 21, 25, and 26) |
||||
|---|---|---|---|---|
| OS Version | Platform | Native Compiler(1)(2)(3) (SYS Option tree) |
Web Browser (WebStart) |
|
| RHEL 8.10 | Linux (x86_64) | gcc 8.5.0 / Intel 2021, 2022, 2023 / Intel LLVM 2022, 2023, 2024, 2025 | ||
| RHEL 9.7 | Linux (x86_64) | gcc 11.5.0 / Intel 2022, 2023 / Intel LLVM 2022, 2023, 2024, 2025 | ||
| RHEL 10.1 | Linux (x86_64) | gcc 14.3.1 / Intel LLVM 2025 | ||
| Ubuntu 24.04 | Linux (x86_64) | gcc 13.3.0 | ||
| Windows 11 | Windows (x86_64) | pre-compiled DLLs (MinGW64 gcc 12.2.0) | ||
XBC And NeXtOpt Tested on: (XBC - Allows running of X-Midas Fortran/C++ primitives in NeXtMidas) (NeXtOpt - NeXtMidas as an option tree for X-Midas) (tests with Java 17, 21, 25, and 26) |
||||
| OS Version | Platform | X-Midas Mode | C/C++ Compiler(1)(2)(3) | Fortran Compiler(2)(3) |
| RHEL 8u10 | Linux (x86_64) |
NeXtOpt (X-Midas 5.11.2) | gcc 8.5.0 / Intel 2021, 2022, 2023 / Intel LLVM 2022, 2023, 2024, 2025 | gfortran 8.5.0 / Intel 2021, 2022, 2023 / Intel LLVM 2024, 2025 |
| NeXtOpt (X-Midas 5.10.1) | gcc 8.5.0 / Intel 2021, 2022, 2023 / Intel LLVM 2022, 2023, 2024 | gfortran 8.5.0 / Intel 2021, 2022, 2023 / Intel LLVM 2024 | ||
| NeXtOpt (X-Midas 5.8.2) | gcc 8.5.0 / Intel 2021, 2022, 2023 / Intel LLVM 2022, 2023 | gfortran 8.5.0 / Intel 2021, 2022, 2023 | ||
| XBC ("64Bit") | gcc 8.5.0 / Intel 2021, 2022, 2023 / Intel LLVM 2022, 2023, 2024, 2025 | gfortran 8.5.0 / Intel 2021, 2022, 2023 / Intel LLVM 2024, 2025 | ||
| RHEL 9u7 | Linux (x86_64) |
NeXtOpt (X-Midas 5.11.2) | gcc 11.5.0 / Intel 2022, 2023 / Intel LLVM 2022, 2023, 2024, 2025 | gfortran 11.5.0 / Intel 2022, 2023 / Intel LLVM 2024, 2025 |
| NeXtOpt (X-Midas 5.10.1) | gcc 11.5.0 / Intel 2022, 2023 / Intel LLVM 2022, 2023, 2024, 2025 | gfortran 11.5.0 / Intel 2022, 2023 / Intel LLVM 2024, 2025 | ||
| NeXtOpt (X-Midas 5.8.2) | gcc 11.5.0 / Intel 2022, 2023 / Intel LLVM 2022, 2023 | gfortran 11.5.0 / Intel 2022, 2023 | ||
| XBC ("64Bit") | gcc 11.5.0 / Intel 2022, 2023 / Intel LLVM 2022, 2023, 2024, 2025 | gfortran 11.5.0 / Intel 2022, 2023 / Intel LLVM 2024, 2025 | ||
| RHEL 10u1 | Linux (x86_64) |
XBC ("64Bit") | gcc 14.3.1 / Intel LLVM 2025 | gfortran 14.3.1 / Intel LLVM 2025 |
Via Web Browser:
$NMROOT/htdocs/help/index.html
(Now includes the
NeXtMidas Training Class and an updated version of the NeXtMidas User's Guide.)| BaseFile/DataFile | - | DataFile constructors have been fixed so that when KeepCase is passed in as a flag, the constructor honors it. The bigger change in progress is that a bug in Java usage, where a quoted all upper case filename is automatically lower cased is being addressed by distiguishing between Java (including OS command usage) and traditional Midas usage (from a macro or nM> prompt). Due to limits in how NeXtMidas RESULTS are handled and the macro language, the legacy/correct behavior for traditional Midas usage is for all upper case file names that make it to this BaseFile (and its child classes) to be assumed to be all lower case. The new default for Java API usage (and OS usage) will be for file name casing to be honored. As of 4.3.0, the default is auto-detected. If an application is not started via a macro or nM> prompt, but is directly run from Java (ex: via java command or Eclipse), then that will be auto-detected and Java usage will be assumed. |
| CHECKAUTHORIZATION | - | PLEASE INFORM the NeXtMidas team if you are using this command. Usage to perform the actual queries is now limited due to REST attribute services going to a more complex query mechanism. Use this with caution! This command, especially the REST query based portion, may be deprecated in the near future, unless we hear it is still useful. |
| DATABASE (NMDB) | - | The hsqldb jar has been removed, as it is not needed by the baseline code, but was only used for testing. Having it bloated the baseline and increased the risk of releases having a CVE. |
| FileUtil.toURL() | - | As of JDK20, the URL constructors were deprecated with instructions to use URI constructors. The URL constructor permitted some non-standard usage and FileUtil.toURL() took advantage of that. As of 4.3.0, the code uses our substitute code by default, even if the URL constructor is still present. We do not anticipate any issues, but please inform the NeXtMidas team if your special usage worked under previous NeXtMidas versions and not with the replacement code. The static method setUseDeprecatedUrlAPI(true) can be used to revert back to the original URL constructor. |
| finalize() | - | The finalize() method has now been removed from XmPipe.java and XMValueNative.java. These classes are the last to have their finalize() method removed. This method has been deprecated since JDK 9 and these specific methods marked deprecated in our code since 4.1.3. The Java finalize() method was originally intended for cleanup operations but had unpredicatable behavior. |
| HELP/GUI | - | The default HELP/GUI is no longer dependent on the legacy NXM Apache lucene.jar.
That jar file is still included with the baseline and running:${NMROOT}/libnxm/jar-footprint/jar-dependencies/adjust-jar-dependencies.sh lucenewill switch the codebase back to the lucene.jar dependent version of HelpSearchEngine.java. The new version still takes the standard lucene style search expressions that were noted as directly supported in the HELP explain file, with just a couple exceptions. It is more resilient in that standard searches no longer throw exceptions in the terminal. The legacy 3.0.3 lucene.jar causes problems with Gradle builds and newer lucene versions do not have the capability NeXtMidas was relying on. If you experience any issues with the new version, please report that to the NeXtMidas team. You have the option of switching back to the old HELP/GUI code and rebuilding your project. |
| MAKE | - | We have been supporting automatic minor code swaps to handle API changes between the different JDKs. Our change in this release to JDK17+ API being the default should be unnoticeable to both Gradle and NM MAKE ALL builds, with the possible exception of users independently building via softlinks that point to each of the baseline files. |
| PLOT/ALL | - | PLOT/ALL of a 1000 file will automatically prescale the data if the MPlot mode, XUnits, and data type are compatible with doing so (see plot.exp). This is because the purpose of the /ALL switch was that all the data would be rendered within the plot bounds. Without this fix, some of the 1000 data can end up beyond plot bounds, without the user realizing it. The only reason this is listed in the What Might Break is that prescaling does add a small amount of overhead. |
| SSLCONFIGURE/SSLUtilities | - | PEM file requirements: 1) .pem follows good security practices and only has one certificate chain 2) .pem has each of its certificate chains start with the private key (ex: private key, primary cert, intermediate certs, root cert) If multiple private keys are found and the preferred order (private key first) is not followed, the load of the .pem is aborted, as there is not a reliable means of handling key and certs being in any order. Even if the preferred order is followed, the user will be warned about multiple private keys. |
| SSLUtilities.verifyGroupProject and SSLUtilities.verifyUserAttribute | - | These methods were intended for use by CHECKAUTHORIZATION, rather than direct usage. As mentioned with the CHECKAUTHORIZATION command, these are beyond useful life as REST attribute services are going to a more complex query mechanism. Please let the NeXtMidas team know if you have an application where they are useful, as the plan is to deprecate these methods. |
| world.shp, world.dbf, and world.shx | - | The ShapeFiles in nxm.sys.dat have been updated with current and higher resolution files. These files are based off of the current (version 5.1.1) Natural Earth Data 50m Cultural Vectors Countries ShapeFiles. The DBF file has been adjusted to have column names consistent with previous world.dbf files. Though this should overall be an improvement, it is being listed in this section to inform users that boundaries and country data have changed. |
| RHEL 8+ | - | NM_FORTRAN accepts 'gfc', 'gfc-gfortran', or 'gfortran' for the gfc FORTRAN compiler. |
| - | NeXtMidas will autodetect which compiler to use based on the OS. | |
| - | The JDK 8 tools library is not and will not be FIPS compliant. NeXtMidas supports multiple options for working with JDK 8. In all cases our TLS is 1.2 and is FIPS compliant and the overall Linux setting remains FIPS compliant. One option is to compile NeXtMidas code with JDK 8 and to use a separate JDK 17+ for JAR signing and other actions that require using Java tools library. The default is to turn off FIPS for JAR signing and other direct Java tools usage. See the SecureRHEL8FIPS.html page in our User's Guide for more details. | |
| LIBNXM / Reduced Footprint Build Options | - | A number of reduced footprint build options are available. See our User's Guide for more information (links below work when docs are built). |
| JDK Compiler based code | - | Due to the need to continue to support JDK 8, while also supporting the most current JDK,
we are beginning to support very limited pre-compile code swapping based on a .jdk, .jdk##
convention. This is done automatically and keeps users from needing to manually uncomment
or comment out code to get efficient or fully functional behavior.
The only code affected is the CallStackUtil code and MulticastSocketOptions code.
To get full and efficient JDK9+ behavior required following directions in CallStackUtil.java and
uncommenting and commenting out code. Even so, this still left users with a log message with a stacktrace. Advanced details: The minimal code that needs to be swapped is now in CallStackUtilSwap.jdk08 and CallStackUtilSwap.jdk (and MulticastSocketOptions respectively). The .jdk08 indicates that version will be placed in CallStackUtilSwap.java (or MulticastSocketOptionsSwap.java) when compiled with java versions up to 8. The .jdk indicates that version will be copied to the java file for all JDK versions beyond the latest ## (in .jdk##). This should largely be transparent to the user, both with traditional NextMidas builds and with Gradle builds. |
| New Commands | - | CONVERTARGB;SYS - Converts type 2000 data to ARGB (Alpha|Red|Green|Blue) direct color format. A new /ALPHA0COLOR switch has been added which will force one color (generally the background - no signal present color) to be transparent. This allows multiple rasters to be displayed on single plot. |
| - | POLYMAP;SYS - Supports creation and customization of Type 1999 files. These 1999 can be created from either ShapeFiles or GeoJSON files. Customization options include skipping or keeping specified polygons or replacing coordinates in specific geographic regions. | |
| - | SHAPEMAP;SYS - Supports creation of customized ShapeFiles. Individual polygons can be reshaped by replacing coordinates in a certain geographical areas with other coordinates. | |
| - | WEBVNCSERVER;WEBVNC - An HTTP/1.1 server that proxys a VNC session to a HTML Canvas using noVNC. Automatically starts a vncserver and websocket proxy for each client. | |
| New Option Tree | - | minio -
|
| Macro/Shell Enhancements | - | Startup Macros can now accept arguments
|
| - | Improved Macro ERROR checking and messages. | |
| Libraries | - | DataFile - Better support for PLATINUM files. When PLATINUM files are used as input to a function (ex: FFT, not just STATUS/KEY) the default is now to use the NeXtMidas underlying libraries for PLAT2BLUE conversion to automatically convert PLATINUM Keywords to BLUE. A warning is issued when the PLATINUM file is missing keywords (as defined by the JICD 4.2 ICD). This default autoconversion of PLATINUM can be disabled globally or on a file by file bases. The previous behavior was to error out under these conditions. |
| - | DataTypes
|
|
| Gradle Support | - | Support has been added to convert NeXtMidas to a gradle directory structure (full restructure or softlinks options) and to publish artifacts to Nexus. Please find instructions located at $NMROOT/gradle/README.txt |
| - | Support has also been added to convert user option trees to a gradle directory structure (full restructure or softlinks options). Please find instructions located at $NMROOT/gradle/README.txt | |
| - | Support for pulling some dependencies and relying on local jar files for others, as well as pulling only the dependencies needed when opting for LIBNXM mode or another reduced footprint option. | |
| Midas versus Java usage detection | - | Support for detecting Midas versus Java usage is being phased in. The immediate need was for the casing for file names passed in in quotes via Java API to be honored, rather than having all upper case names automatically converted to all lower case names. There are other scenarios users have been experiencing where traditional Midas behavior conflicts with Java behavior. With many users running primarily as a Java Application, it is important for Java usage to be compatible with other Java code. In this 43x series auto-detection of Java versus Midas usage is now the default. NeXtMidas usage coming from a macro, nM>, or single-shot mode (nm ....) will be auto-detected as traditional Midas usage, where running a Java application from a main will be considered Java usage. Users can opt in to Java usage via the environmental variable NM_JAVA_MODE being set to "ON" or by setting needJavaBehavior() on their Midas instance. |
| world ShapeFiles | - | ShapeFile.getShapesNear will now be more accurate when used with the baseline world.shp. Plots of world.shp will have greater detail and be relatively current. The new files are based off the 5.1.1 version of Natural Earth Data 50m Cultural Vectors Countries files, but the DBF file column names have been adjusted to align with previous world.dbf files. |
| Existing Commands | - | The list below contains NeXtMidas commands. Each command is listed with the new feature that has been added at the request of the user. |
| - | CONVERT
|
|
| - | FEATURE
|
|
| - | FFT
|
|
| - | MACRO
|
|
| - | PANEL
|
|
| - | PLOT
|
|
| - | QUERY
|
|
| - | SSLCONFIGURE/SSLUtilities
|
|
| - | STATISTICS
|
| RHEL 10 Monospaced text height change | - | The underlying Font used for Monospaced now has a text height of 17, rather than the previous 15. NeXtMidas defaults to Monospaced for text. This especially affects panel graphics and the laying out of the graphical controls in Pane0. |
| JDK 17.0.1 libsvml.so name conflict (JDK-8276025) | - | JDK 17.0.2 has fixed a 17.0.1 issue caused by Java adding a library with a name conflict with a common native library. 17.0.1 causes the XBC option tree build to fail with an UnsatisfiedLinkError. |
| OpenJDK 8 versions earlier than 1.8.0_312 are not supported | - | To avoid deprecation warnings about too weak of a signing certificate, the NeXtMidas self-sign certificates were updated to a standard that is not supported in earlier JDK 8 versions |
| Reflective Access JDK 9+ (warning) JDK17+ (error) | - | Warnings are thrown for illegal access using reflection in Java 9 and up and errors in JDK17 and up. When running from
When the running via the NeXtMidas start script, the jvm options shown below are included and there
are no warnings or errors. To bypass the warning/error, add this to the jvm runtime options: --add-opens java.logging/java.util.logging=ALL-UNNAMED --add-opens java.base/java.security=ALL-UNNAMED For more information please visit Oracle JDK 14 Documentation |
| RHEL 8 GCC 8.5.0 | - | We have put in a workaround in rmif.for for a bug in the GCC FORTRAN compiler that comes with RHEL 8. This allows our NeXtOpt code to build and run, but please let us know if you experience any further issues building and running with this compiler. Fritz Reese has narrowed down this bug and states: The compiler crash (ICE) is triggered by STRUCTURE /PACKETSTRUCT/ having 8 fields followed by a UNION. When –fdec is combined with –finit-derived and –finit-local-zero, some code in the compiler creates a bad initializer for instances of PACKETSTRUCT which leads to invalid memory access. It turns out this happens because the routine that adds an element to the field initializer vector for unions uses an insidious macro which apparently modifies the vector pointer on resize; the default size of this vector is 8 elements, so upon adding the 9th field initializer the vector is resized by allocating a new vector, copying the elements over, freeing the old vector, and reassigning the pointer variable. Since the union routine took the vector pointer as an argument (by value), the caller’s vector pointer wasn’t updated after the resize, and therefore the caller’s idea of the vector was a pointer to freed memory. Chaos ensues later at random points in the compiler which deal with this initializer vector during optimization, finalization, etc... Unfortunately, because of the nature of this bug, subtle changes in how the compiler visits the initializer trees and how other memory is allocated can mask the bug, so there’s no guaranteed workaround other than to ensure there’s no union which is after the 2*8^n-th field (9th, 17th, etc…) in a structure. |
| VNC | - | It has been noted by users that NeXtMidas will not function in a VNC session if the -depth option is set to 32. 32 is an invalid color depth, valid -depth option settings are 8, 16, and 24. We recommend the default -depth setting of 16. |
| StateVector | - | The CubicHermite (the default in NeXtMidas 3.2) and QuinticHermite (optional in NeXtMidas 3.3) interpolation options do not appear to be working properly, particularly at the first and second derivative. At this time it has not been confirmed if the issue is due to a bug in the interpolator or just the results from using bad test data (i.e. sv1.prm which came from X-Midas). This affects both the StateVector library and the SVINTERP function in CONVERT which uses it. The suggested work-around is to use the Linear interpolation option until this issue is resolved. |
| CALL | - | A SUBROUTINE does not have limited scope, scope is the same as procedure. |
| CONVERT | - | Tables created by the XML2TBL function may appear to "drop entries" when dereferenced. Since XML2TBL is deprecated, this will not be fixed, use the XML2TAB in place of XML2TBL. |
| GCONTROL | - | Some controls do not support headless mode. |
| LIST2 | - | The table for a /LEGACY select message may contain "extra" fields. |
| - | Row/cell selection is undefined when listing a pipe. | |
| - | Type 2000 files with very large frame size may not load properly. | |
| NeXtOpt | - | NeXtMidas commands run from inside an X-Midas macro (specifically when using PIPE or XPIPE) may exit prematurely. For example a NeXtMidas intrinsic run from the INITIALENTRY of a controls section can cause the pipe to stop prematurely. |
| - | May get warnings about problems mapping to the messages section if the X-Midas message queue is not up. | |
| XBC | - | XBC does not support running two copies of the same command simultaneously. |
| - | Do NOT use "-check all" with the Intel compliers because some of the legacy fortran libraries make assumptions that are incompatible with "-check all" causing unnecessary aborts (SEGFAULT). |
Bugs Fixed in Release 4.3.3 (dd Mmm 2026) |
||
|---|---|---|
| JIRA Issue | GForge DR | Description |
| NXM-#### | ######-## | |
Bugs Fixed in Release 4.3.2 (26 Jun 2026) |
||
| JIRA Issue | GForge DR | Description |
| NXM-3672 | 840726-22 | Commands in .cnf without terminating '*' now default to full name |
| NXM-3702 | 840358-22 | Need features to be selectable so they can be moved or stretched |
| NXM-3856 | 837679-22 | JDK 18+ Deprecation for removal warnings |
| NXM-3948 | 838899-22 | LIST2/MJList not handling column width correctly where format is not recognized |
| NXM-3995 | 839038-22 | Features and Images drawn in GEODETIC enlarged up against top left corner |
| NXM-4041 | 840720-22 | RHEL 9.3 GNU Fortran 11.4.1 gives warnings for both NeXtOpt and XBC |
| NXM-4064 | 839934-22 | GCONTROL regression causes panel graphical controls table to not get formed |
| NXM-4066 | 896883-21 | POPUP warning and error messages need to make it to logs |
| NXM-4072 | 839999-22 | PANEL saving setup broken when menubar is present |
| NXM-4075 | 840139-22 | Feature gives invalid warning message under standard usage |
| NXM-4116 | 840343-22 | Gradle build needs to support soft links of user option trees |
| NXM-4143 | 898214-21 | Gradle build failure |
| NXM-4152 | 898682-21 | MACRO failures give little indication of line or even procedure |
| NXM-4191 | 840962-22 | QUERY regressions cause user request to be ignored and can cause lockup |
| NXM-4219 | 899691-21 | Feature labels can be unreadable |
| NXM-4222 | 841116-22 | Conversion of IEEE file to EEEI file broken in 394 |
| NXM-4234 | 841480-22 | SSLUtilities needs grab correct FireFox profile |
| NXM-4244 | 841649-22 | JNI related JDK 24 restricted method warning |
| NXM-4260 | 841414-22 | Map Type 5000 lines need to be selectable |
| NXM-4261 | 841439-22 | PLOT missing ability to control order of map layers |
| NXM-4262 | 841441-22 | CONVERT should support CSV/DBF file conversion to Type 5000/5010 |
| NXM-4295 | 841685-22 | NeXtMidas builds fail with GCC 15 |
| NXM-4304 | 841775-22 | Theme regression breaks calls to constructor |
| NXM-4307 | 841768-22 | RHEL9 umask causes NeXtMidas releases to have wrong permissions set on files and directories |
| NXM-4326 | 841928-22 | minio 8.15.17 jar has CVE |
| NXM-4348 | 842246-22 | RHEL 10 FontMetrics / Monospaced issue breaks GCONTROL CHOICE |
| NXM-4368 | 902981-21 | MPlot NPE bug related to elasticFeature |
| NXM-4369 | 842197-22 | Latest JDKs break SSLCONFIGURE on RHEL 8+ FIPS |
Bugs Fixed in Release 4.3.1 (12 Dec 2025) |
||
| JIRA Issue | GForge DR | Description |
| NXM-3848 | 837033-22 | NeXtMidas Startup Macro needs to accept arguments |
| NXM-3899 | 837911-22 | FFT needs magnitude, 20log, and dB log on cross spectrum output |
| NXM-4029 | 839477-22 | PANEL AUTOGRID needs to support uneven layouts |
| NXM-4033 | 839606-22 | DSP reformat & demux ignoring Data Type portion of FORMAT |
| NXM-4051 | 839797-22 | Histogram fails with complex input data |
| NXM-4056 | 896829-21 | STATISTICS needs real and imaginary min and max |
| NXM-4061 | 839924-22 | PLOT throws Exception rather than giving File Not Found information |
| NXM-4093 | 840132-22 | Message needs to support sending messages to submacro or parent |
| NXM-4105 | 840292-22 | LayerGeo: Need to be able to have horizon at altitiude and not just horizon |
| NXM-4117 | 840342-22 | Feature menu should use tree when features are part of a group |
| NXM-4139 | 840548-22 | LayerKML selection logic flawed |
| NXM-4186 | 840915-22 | RHEL 8+ FIPS JDK 8 and 11 Failures |
| NXM-4214 | 899654-21 | Country Names should be displayable on ShapeFile plots |
| NXM-4283 | 841663-22 | CVE in NeXtMidas commons-lang3.jar 3.14.0 dependency |
Bugs Fixed in Release 4.3.0 (06 Jun 2025) |
||
| JIRA Issue | GForge DR | Description |
| NXM-1277 | 767451-1 | RMIF Table toString of Number Objects |
| NXM-2248 | 666587-19 | Cannot Select multiple countries in PLOT |
| NXM-3128 | 825090-3 | Add complex input support to SIGSTATISTICS |
| NXM-3333 | 883336-1 | Allow multiple rasters on a single plot |
| NXM-3389 | 896480-21 | finalize() deprecated in Java 9 and for removal since Java 18 |
| NXM-3421 | 884304-1 | Higher Resolution Maps |
| NXM-3522 | 879778-21 | LayerT5 default point selection mode selects wrong point when view=GEO and the point is not on surface of earth |
| NXM-3586 | 832206-22 | Setting DISPLAY after NMSTART does not work |
| NXM-3682 | 834133-22 | Circular code in call to MPlot.setTime |
| NXM-3742 | 835165-22 | Need control over buffer size in DatagamData |
| NXM-3774 | 835955-22 | Nextmidas should add support for minio storage |
| NXM-3828 | 836757-22 | Inefficient Table Filter on Keys |
| NXM-3832 | 836757-22 | Inefficient Table Filter on Keys |
| NXM-3886 | 892166-21 | Support for CTF RHEL 9 Upgrade - additional fix to automatically pick up gfortran |
| NXM-3904 | 893423-21 | NXM should be able to provide current (LayerT5) points or subsets to users |
| NXM-3907 | 893418-21 | Popup information is confusing when plotting non-geodetic data |
| NXM-3923 | 893424-21 | NXM should allow points selected to not change color |
| NXM-3925 | 893419-21 | Table formatting is poor when viewed within popup window |
| NXM-3933 | 838984-22 | Text area comes up scrolled to wrong position |
| NXM-3946 | 838494-22 | LayerT5 needs better means of setting size of points buffer |
| NXM-3950 | 896481-21 | All URL constructors deprecated for removal in JDK 20 |
| NXM-3952 | 894082-21 | Process Message Data Containing Periods in Keys |
| NXM-3961 | 838568-22 | plot world.shp opaqness changes on dragbox |
| NXM-3979 | 838932-22 | MPlot.drawCone previous behavior broken |
| NXM-3988 | 894929-21 | StateVector performance issue |
| NXM-3994 | 839040-22 | 3.9.1 ellipse rendering regression |
| NXM-4003 | 895142-21 | Keywords throws ArrayIndexOutOfBoundsException - putMain vs put and putALL |
| NXM-4010 | 839270-22 | Conversion bugs in Native.c and Convert.java for PACKED data |
| NXM-4014 | 839420-22 | Point count inaccurate in LATLONCONTINUOUS |
| NXM-4017 | 839423-22 | LayerT5: Operators need to know the number of points matching their selection |
| NXM-4018 | 839422-2 | LayerT5: points highlighted as points of interest need to get preference |
| NXM-4045 | 896577-21 | Gradle should only pull dependencies needed |
| NXM-4048 | 839723-22 | PLOT/ALL of 1000 file only showing portion of data |
| NXM-4049 | 896576-21 | Gradle build should not fail when included jars specified as local dependency |
| NXM-4055 | 839884-22 | DSP TUNER regression breaks Output IF band center |
| NXM-4063 | 839912-22 | Macro keyword argument error |
| NXM-4065 | 839998-22 | PLOT readout should include radius on IQ plots |
| NXM-4097 | 840203-22 | BaseFile creates filename with wrong casing |
| NXM-4104 | 840313-22 | SSLUtilities not handling PEM file chain |
| Command | Deprecated Item | Replacement | Deprecated Since |
| PLOT | ZOOM and DRAGBOX messages accessed with msg.data(0), msg.data(1), etc. | Use msg.data.xmin, msg.data.xmax, etc. | 2.3.0 |
| STATISTICS | IMEAN= | MEAN= (contains real and imaginary values, see explain file) | 2.3.0 |
| CONVERT | The XML2TBL and TBL2XML functions. | Use XML2TAB and TAB2XML. | 2.5.0 |
| UPDATE | Command dictionary entries without '*' denoting minimum allowable abbreviation. | Include a '*' at the end of the command name in the dictionary if no abbreviation is allowed, otherwise note abbreviation as desired. | 2.5.0 |
| TextFile | Automatic enabling of NOABORT flag. | Use NOABORT or FORCEABORT flags as required. | 2.5.0 |
| TextFile | Automatic conversion of INOUT flag to OUTPUT when file not found. | Use INOUT or OUTPUT flags as required. | 2.5.0 |
| Results | Use of A: with results. | Use S:, behavior of A: will change in future releases. | 2.5.2 |
| DataFile | Use of CREATOR= main header keyword. | Use IO= and VER= keywords. | 2.5.3 |
| public fields in baseline classes | All public fields in classes in option trees (SYS, DSP, UCL, etc.) included in the baseline (e.g. nxm.sys.lib.BaseFile, nxm.sys.lib.DataFile, nxm.sys.lib.Shell, etc.) have always been meant for read-only and/or internal use only. Some fields may transition to protected or private in favor of the get/set methods as early as 3.9.0. | Use appropriate public get/set methods. | 3.5.1 |
| PLOT | All public fields in nxm.sys.prim.plot, nxm.sys.libg.MPlot, nxm.sys.libg.Layer* (e.g. Layer1D, Layer2D, etc.) have always been meant for internal use only. Most will transition to protected access but will still be for internal use only. | Use appropriate public get/set methods. | 3.5.1 |
| As of release 2.2.0 LIST is considered to be an "End of Life" primitive. The LIST primitive is scheduled for replacement by LIST2 in future releases. | |||
| See $NMROOT/htdocs/api/sys/deprecated-list.html for a list of deprecated library methods. | |||