Changes between release 3.4.0 and 3.4.1 are listed in blue.
Changes between release 3.4.1 and 3.4.2 are listed in green.
Changes between release 3.4.2 and 3.4.3 are listed in teal.
Changes between release 3.4.3 and 3.4.4 are listed in purple.
(This release requires Java version 6 (or later) to build and run.)
NeXtMidas SYS Option Tree Tested on: (All tests with Java 6 and Java 7, unless otherwise noted (1)) |
||||
---|---|---|---|---|
OS Version | Platform | Native Compiler(2) (SYS Option tree) |
Web Browser(3) (WebStart/Applet) |
|
RHEL 5u9 | Linux (x86) | Intel 12.1 / Intel 13.1 | Firefox 10.0.12 | |
RHEL 5u11 | Linux (x86_64) | Intel 11.1 / Intel 12.1 / Intel 13.1 | Firefox 31.3.0 | |
RHEL/CentOS 6u6 | Linux (x86) | gcc 4.4.7 / Intel 12.1 / Intel 13.1 | Firefox 31.4.0 / Firefox 31.6.0 | |
Linux (x86_64) | gcc 4.4.6 / gcc 4.4.7 / Intel 12.1 / Intel 13.1 | Firefox 31.4.0 | ||
Solaris 10 (SunOS 5.10) |
Sun/SPARC (32-bit) | gcc 3.4.6 | Firefox 2.0.0.19 | |
RHEL/CentOS 7u0 | Linux (x86_64) | gcc 4.8.3 / Intel 14.0.4 | Firefox 31.2 | |
Windows 7 SP1 | Windows (x86) | pre-compiled DLLs (gcc 4.8.3) | Chrome 29.0 / Firefox 17.0.6 / Internet Explorer 11.0.17 | |
Windows (x86_64) | pre-compiled DLLs (gcc 4.8.3) | Firefox 31.2.0 / Internet Explorer 11.0.17 | ||
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) (All tests with Java 6 and Java 7, unless otherwise noted (1)) |
||||
OS Version | Platform | X-Midas Mode | C/C++ Compiler(2) | Fortran Compiler(4) |
RHEL 5u9 | Linux (x86) |
NeXtOpt (X-Midas 4.10.5)(6) | Intel 12.1 | Intel 12.1 |
NeXtOpt (X-Midas 4.12.3)(6) | Intel 12.1 / Intel 13.1 | Intel 12.1 / Intel 13.1 | ||
XBC ("32Bit") | Intel 12.1 / Intel 13.1 | Intel 12.1 / Intel 13.1 | ||
RHEL 5u11 | Linux (x86_64) |
NeXtOpt (X-Midas 4.10.5)(6) | Intel 12.1 | Intel 12.1 |
NeXtOpt (X-Midas 4.12.3)(6) | Intel 11.1 / Intel 12.1 / Intel 13.1 |
Intel 11.1 / Intel 12.1 / Intel 13.1 | ||
XBC ("64Bit") | Intel 11.1 / Intel 12.1 / Intel 13.1 |
Intel 11.1 / Intel 12.1 /Intel 13.1 | ||
RHEL/CentOS 6u6 | Linux (x86) |
NeXtOpt (X-Midas 4.10.5) | Intel 12.1 | Intel 12.1 |
NeXtOpt (X-Midas 4.12.3) | Intel 12.1 / Intel 13.1 | Intel 12.1 / Intel 13.1 | ||
XBC ("32Bit") | gcc 4.4.7 / Intel 12.1 / Intel 13.1 |
Intel 12.1 / Intel 13.1 | ||
Linux (x86_64) |
NeXtOpt (X-Midas 4.10.5) | gcc 4.4.7 / Intel 12.1 | Intel 12.1 | |
NeXtOpt (X-Midas 4.12.3) | gcc 4.4.7 / Intel 12.1 / Intel 13.1 |
Intel 12.1 / Intel 13.1 | ||
XBC ("64Bit") | gcc 4.4.6 / gcc 4.4.7 / Intel 12.1 / Intel 13.1 | Intel 12.1 / Intel 13.1 | ||
RHEL/CentOS 7u1 | Linux (x86_64) |
NeXtOpt (X-Midas 4.14.0) | Intel 14.0.5 | Intel 14.0.5 |
XBC ("64Bit") | gcc 4.8.3 / Intel 14.0.5 | Intel 14.0.5 | ||
(1) Platforms were tested on the latest version of JDK6 (6.0_45), JDK 7 (7.0_79), and
with JDK 8 (8.0_51). See Known Third-Party Bugs to see why JDK 8u20 to 8u31 are not supported.
The 64-bit version of Java should be used when running on a 64-bit system, early versions of the 32-bit JDK6
were known to have incorrect behavior on 64-bit systems. All code was compiled with "-source 6"
and "-target 6" specified (this is the default). All tests use the Java VM from Oracle (formerly Sun Microsystems) (see
http://java.oracle.com/). (2) $NM_CC and $NM_CXX was set to point to the Intel C/C++ compiler (icc and icpc), where applicable. (3) Note: As of Firefox 3.6.x, the new (Next-Generation) Java plugin (included with Java 6u10 and later) must be used (i.e. $JAVAHOME/jre/lib/i386/libnpjp2.so) for Java applets to work. Please see http://www.java.com/en/download/faq/firefox_newplugin.xml for more details. (4) $NM_FORTRAN was set to point to the Intel Fortran compiler (ifort). Official support for using the Portland Group (PGI) Fortran compiler with XBC and NeXtOpt has been discontinued due to limitations related to multi-threading and use on 64-bit systems. |
Via Web Browser:
$NMROOT/htdocs/help/index.html
(Now includes the NeXtMidas Training Class and
an updated version of the NeXtMidas User's Guide.)
ASSERT | - | In 3.3.0, the FEQ/H test was changed to include checks for Type 5000 quad words. In prior versions, these checks were listed as "TBD" and resulted in files reporting to be equal although their reference frames differed. Setting the IOOPTION DisableQuadwordsEqualityChecks will disable the new behavior (see ENVIRONMENT for details). |
BUILD | - | In 3.3.0, BUILD checks the "compat.ext.javac" value in build.props to determine if it use use external OS calls to javac to compile java code. The default behavior is to use the internal java compiler which is usually 10% - 20% faster but uses more memory. |
- | In 3.4.3, when building native code, the link flags are now specified after the object file(s), so that libraries specified via -l<libname> option (i.e. -lm) are in the proper order so that the linker can properly resolve all references and use the most optimal mechanism. This is not expected to impact many users (if any). See DR #808736-3 for details. | |
Cache | - | In 3.4.1, the default Cache type was changed to SLRU so that when it is accessed from multiple threads concurrently, it does not lock up or throw a NullPointerException. Use the multi-parameter constructor to specify the higher performing Cache.LRU when using it in a single thread. See DR #831626-1 for details. |
Command | - | In 3.3.0, changes were made to the Command class to return true for more cases where the user might be attempting to interrupt the running Command. Certain users were experiencing "false positives" from this, so in 3.4.1 this logic was tweaked slightly. See DR #821552-1 for details. |
DataFile | - | In 3.3.0, the DataFile.getData(double) method was changed to return null upon reaching end-of-file (EOF). In prior versions, the method returned a Data buffer with junk values. The updated version matches the behavior of DataFile.getDataTable(double) and ListFile.getDataTable(double) in returning null at EOF. |
- | In 3.3.0, the DataFile.equalsHeader(..) method was changed to include checks for Type 5000 quad words. In prior versions, these checks were listed as "TBD" and resulted in files reporting to be equal although their reference frames differed. Setting the IOOPTION DisableQuadwordsEqualityChecks will disable the new behavior (see ENVIRONMENT for details). | |
- | In 3.3.4, the DataFile.getIndex(..) method was changed to default to abscissa indexing if the tilde ("~") is present. This is the correct behavior that was accidentally removed in 2.9.1. Some users may be mistakenly using the tilde for element indexing, and will need to correct their macros. | |
DUAL5000 | - | In 3.4.4, /LTC and /LTCTOL will now work (i.e. It is now possible to enable light time correction). |
FCalculator | - | In 3.3.0, the fcalculator.dataOut(arg) method was changed to set the header of the output buffer for each write. This allows the header information to propagate accurately. There is no expected impact to users. |
FEATURE | - | In 3.3.1, Use of the deprecated (since 2.3.0) LABEL= inside the table of options was removed. Use TEXT=. |
File | - | Prior to 3.3.0, the READ function returned non-null values (i.e. with junk data) upon reaching end-of-file (EOF) for a DataFile. Since 3.3.0, the behavior matches the documentation and returns null at EOF. |
FileName | - | Since 3.3.1, the FileName class has improved support for case-sensitive file names, including a global option to alter the default case-sensitivity. Although the global option matches what was used in NeXtMidas 3.2 (by default) users now have two ways (global option and FNCASE= qualifier) to alter the interpretation of a file name that were not previously permitted by the library. The FileName constructors that previously took in a "keepCase" flag now treat this as a "suggestion" rather than a "mandate" as it now has lower precedence than the FNCASE= qualifier. |
Files | - | In 3.3.0, changes were made to the CoreIO class so that if a user attempts to interact (plot, status, etc) with a file that is in a directory within an AUX, the file can be found. Previously it would only look in the AUX directory itself. |
IF | - | In 3.3.0, the FEQ/H test was changed to include checks for Type 5000 quad words. In prior versions, these checks were listed as "TBD" and resulted in files reporting to be equal although their reference frames differed. Setting the IOOPTION DisableQuadwordsEqualityChecks will disable the new behavior (see ENVIRONMENT for details). |
- | In 3.3.1, IF (and Args) was changed slightly to allow files in RAM to be found using FEXISTS checks. This could cause issues for users who were using IF or TEST and relying on the old (incorrect) behavior. This is considered unlikely. | |
- | In 3.3.2, Deprecated code was removed from IF (and Args) that causes non-scalar checks to only consider the first value. This code had been deprecated since NeXtMidas 2.7.0 and printed up deprecation warnings when used. Since 3.3.2 all values in a non-scalar are checked (see explain file for details). There was also a way, while the deprecated was in place, to pass a non-numeric value to some of the numeric equality checks without triggering an exception although the results of the test were often spurious (e.g. 'IF "1" EQ/T 1.0' returned FALSE), such usage now generates an exception. | |
- | In 3.3.2, support was added for *absolute* tolerance using the /DELTA= switch (see explain file for details). In the unlikely scenario that a user was already passing /DELTA= to IF, this will result in a functionality change. | |
INCLUDE | - | In 3.3.1, the processing of Macro files was changed to allow multi-line RESULTS (such as quoted Strings or long TABLE definitions) to start a line with the word INCLUDE (or whatever the user has set the INCLUDE String to be). This could cause issues with users who were relying on the old (incorrect) behavior. This is considered highly unlikely. |
KEYWORD / Keywords | - | Since 3.3.0, attempts to insert a COMMENT keyword into the MAIN (rather than EXTENDED header) will work, without a warning provided that there is sufficient space in the MAIN header. This behavior matches the (draft) BLUE 1.1 ICD. Prior versions of NeXtMidas were inconsistent with NeXtMidas 3.0 always issuing a warning and NeXtMidas 3.2 never issues a warning even if it caused mandatory keywords like IO or VER to be dropped. |
LayerMulti / LayerMulti2D / LayerScatter | - | In 3.3.2, LayerMulti was updated to use double-precision computations to allow plotting of time values. This required API changes to 3 "protected" variables and one "protected" method; resulting in a potential loss of backwards-compatibility for some sub-classes of LayerMulti (LayerMulti2D and LayerScatter were both updated to use the new API). The comments at the top of LayerMulti describe the API changes. |
Macro | - | In 3.3.0, the parsing of Macros was changed slightly to allow for multi-line Strings containing comment indicators '/*' and '*/" with the String to NOT be treated as comments. Users should put comments before or after the String, not within it. |
- | In 3.3.1, the /MSGID= switch from the Macro's parent's command line is no longer propagated (i.e. inherited) by commands inside the macro. The /MSGID switch (similar to /ID and /BG) was never intended to be propagated as it can cause undefined behaviors. This change is unlikely to break any existing macro as it is very unlikely that child/sub-macros worked properly with the /MSGID switch propagated to them. | |
MColor | - | In 3.3.0, MColor.getColor(String) no longer supports using the deprecated "Xhexstring" and "FFhexstring" syntax, instead use "#hexstring" or "0xhexString". Note: these only work with 6-digit (RGB) or 8-digit (ARGB) hex string formats. |
NMPOST | - | In 3.3.1, the user-contributed NMPOST option has been renamed to NMPOSTLEGACY and is deprecated as it has become out of date. Recommend getting latest version from the author's of NMPOST. |
PLOT | - | In 3.3.1, Plot.getType() now returns the PLOT's type vs the first layer's line type. Use REG.<plotID>.LAYERS.<layerName>.line.type to get layer's line type. |
- | In 3.3.1, MPlot.getDRangUnits() was changed to return String of the dRange units used vs an index value of the dRange units. Use getDRangeUnitsInt() for the index of the constant value. | |
- | In 3.3.1, Plot.setPlotType(String), Plot.setRmifCompression(String), MPlot.setDRangeUnits(String), MPlot.setMode(String), and MPlot.setView(String) and now throws an Exception when given invalid value vs displaying a warning. Allowing invalid values in these methods were deprecated in 2.9.0. | |
- | In 3.3.3, Plot.setReadout(..) was changed so that if a user turns off Scientific notation, the Axis value labels will be set to AutoRotate (i.e. align the label text vertically) to ensure the values fit on the axis. User who do not wish this behavior can follow their setReadout(-Scientific) with a setAxis(-AutoRotate). | |
- | In 3.3.3, MPlot.zoomOut(float) will clear the zoom history when the plot receives a zoom out all the way message (data=-1). | |
Position / StateVector | - | In 3.3.0, Position.setCurrentTime(Time) was added to provide for precision time, this supercedes StateVector.setTimeCode(double) [which now calls the new function]. In making this change Position.setTime(double) was changed to check the value of the input time and defer to setCurrentTime(..) if the value appears to be a J1950 time rather than a time relative to the start of the given file. This means that in some rare circumstances a call to setTime(..) may behave differently than intended and means that getTime() [which always returns a time relative to the start of the file now] are not 100% reflexive. |
Query | - | In 3.3.1, the QUERY command functionality was limited when using JDK 7+. This is because JDK 7 changed the underlying documentation structure for the generated API docs, so the parsing done by the Query command for advanced functions no longer works. |
Table | - | In 3.3.1, nxm.sys.lib.Table.Iterator.next() now returns String vs Object (for the key) so that it can satisfy the java.util.Iterator<String> interface. |
- | In 3.3.3, nxm.sys.lib.Table implements the Map<String, Object> interface vs just Map.
This requires the put(String,Object) method to return an Object vs void.
Code compiled with prior versions has to be re-compiled otherwise at runtime they will get a
NoSuchMethodError: nxm.sys.lib.Table.put(Ljava/lang/String;Ljava/lang/Object;)V where
the "V" at the end is specifying the void return type vs "Ljava/lang/Object;" for an Object return type.
|
|
Table Parsing from Strings | - | In 3.3.0, changes were made to the Table class to perform some limited validation when creating a Table from a String. If the String has misplaced quotes, an empty Table is now created ('{}') instead of a malformed one and a warning is issued to the command line. If the String is missing the opening or closing braces, a warning is issued to the command line. Previous behavior of returning '{}' remains. Set the new Table flag CheckMalformed to false to revert the behavior. |
Theme | - | In 3.3.0, changes were made to the MWindow and Panel classes to allow for graphical primitives within the same macro to have their own Theme (previously everyone shared the Global Theme). Widgets on a control panel all still share the same Theme for performance reasons, but they can have individual Themes using the existing "/wtheme= " switch. To revert to pre-3.3.0 behavior, use the /ShareTheme switch at the top of a macro. |
Time Parsing | - | In 3.3.0, changes were made to the Time class to support ISO 8601 time strings. Use of the STD parsing option will now imply ISO8601 if the given string matches an ISO 8601 time string, whereas prior versions of NeXtMidas produced an error in this scenario. |
Transform | - | In 3.3.0, the setECR() function was updated to set the coordinate system to CARTESIAN to match the existing setTOP(..) and the new setECI(..) functions. Prior to this, calling the setECR() function immediately after a call to the constructor left the Transform in a semi-invalid state where neither CARTESIAN nor GEODETIC were indicated. |
- | In 3.3.0, the fromDataFile(..) function and Transform(DataFile) constructor were updated to set the coordinate system and units even if the reference frame was unsupported. The old version had a "fail fast" implementation that prevented proper handling of (technically invalid, but still readable) files where the reference frame was unset but the coordinate system was set to GEODETIC (in such a case the reference frame is essentially meaningless). | |
TUNER, FILTER, WINDOW | - | In 3.3.1, the TUNER and FILTER commands were substantially overhauled to support complex integer types, improve performance, properly account for the delay through the filter used (i.e. update timestamps accordingly). As part of this the FIR filter generation code used by TUNER, FILTER, and WINDOW was consolidated into a single library. As a result the filters produced are not bit-for-bit identical, and will have different xdelta values (though the /SETDELAY=FALSE will disable the latter behavior). See explain file for details. |
UNITTEST | - | In 3.3.2, changes were made to NMTestCase to avoid double-counting of some "missing" unit tests. As a result the number of missing tests listed in the resulting summary will differ from previous versions. |
WAVEFORM | - | In 3.3.0, changes were made to the WAVEFORM White Noise algorithm to make the default scale of AMP more reasonable for later conversions. The result is that the White Noise output is not exactly as it was previously. See WAVEFORM explain file for more details. |
XBC | - | In 3.3.4, changes were made to xmlibc.c to make it compatible with the Intel 2013 C++ Compiler (icpc). It is not anticipated that there will be any impact to users. Se DR 830285-1 for details. |
XGEOPLOT | - | In 3.4.2, changes were made to XGEOPLOT correct the method used in determining if a bit was set in the .btest(..) function. To revert back to previous behavior, set the BUGFIX.XGEOPLOT_USE_ORIGINAL_BTEST system property to true. See DR 815413-3 for details. |
Classes removed | - | Deprecated classes that have been removed:
nxm.sys.inc.PythonReady -> use PythonReady in JPYOPT
|
Methods removed | - | Deprecated methods/fields that have been removed/changed:
nxm.sys.prim.panel.cntrls -> use getControls()
|
Jar Files removed | - | The AbsoluteLayout.jar file was intended for internal use.
It is no longer used by SYS and have been removed.
The jython-2.1.jar was intended for internal use by the PYTHON Intrinsic command, which has been moved to the JPYOPT option tree. Anyone with option trees that uses these JAR file can copy it from the NeXtMidas 3.2.x release and include them with their own option tree. |
New Commands | - | DPCO;DSP - Double precision Phase/frequency/chirp-Controlled Oscillator. Similar to DPCO in X-Midas, see explain file for details. |
- | DUAL5000;UCL - Computes measurements between two type 5000 files. Similar to DUAL5000 in X-Midas, see explain file for details. | |
- | INVFFT;DSP - Inverse FFT, see explain file for details. | |
SBTUNER;DSP | - | SBTUNER was added to the DSP option tree to mirror the X-Midas command of the same name. Essentially SBTUNER identical to TUNER but with a different command-line syntax. See explain file for more details. |
Macro/Shell Enhancements | - | Graphical Commands - In 3.3.1, the universal switch /EVENTFILTER was added, which exposes setting the MWindow.eventFilter (Window event filter) mask value when the command opens. In addition, the NoMiddleMouse mask option was added to disable the middle mouse button (MMB) clicks in GCONTROL/LIST/LIST2/PANEL/PLOT (which can be use to prevent the configure menu via the MMB). Note: advance user's can still display the configure menu on PLOT, PANEL, and LIST by pressing 'M' on the keyboard. The application can also bring up the configure MENU on PLOT, PANEL, and LIST by sending a "MENU" message to the command. See the SWITCHES explain file and/or DR 824455-1 for details. |
- | GUI Title Text - In 3.3.0, the universal switch /NoAltTitle was added, which, when set, prevents events such as mouse overs from changing the text in the title/status bar. See DR 820248-1 for details. | |
- | OSGi - changes to the shell and supporting libraries to officially support running NeXtMidas inside an OSGi framework. See DR 807356-3 for details. | |
- | Themes in a Macro - The use of Themes was modified so that each graphical primitive within a macro now gets its own Theme object, and changes to this Theme will not affect other aspects of the macro. The exception to this is control widgets. They share the same Theme as the control panel, for performance reasons, but can override this using the existing "/WTHEME=" switch. See nxm.sys.test.test_plot_theme.mm for example usage. Note: This behavior can be reverted by using the /ShareTheme switch at the top of a macro. | |
- | Runtime Options - changes to the runtime options for supporting wild cards (*) to the NM_BOOT_CP_APPEND environmental variable. See DR 827484-1 for details. | |
ASSERT | - | In 3.3.2, the /GROUP= switch was added to facilitate grouping of tests together (e.g. testing a large set of values from a file). See explain file for more details. |
BUILD | - | In 3.3.1, the /BLDTYPES= switch can be used to specify the types of files to build (e.g. Java, Native, Host). See explain file for more details. |
CONVERT | - | Several new functions added to CONVERT to support working with state vectors including: ECI/ECR/TOP/TOPOCENT (reference frame conversion), LLA2ECR/LLA2ECI (LonLatAlt to state vector, similar to LLA2ECR and LLA2ECI found in a number of X-Midas applications), SV2BLUE (convert arbitrary state vector to a Type 5001 file), and SVINTERP (state vector interpolation, similar to SVINTERP and SVINTERP_TC found in a number of X-Midas applications). See explain file for more details. |
- | Another new function was added to CONVERT to allow users to convert Type 1999 Midas (Poly) files to KML files. See explain file for details. | |
- | In 3.3.3, the /USEROOTFORRES was added to the CONVERT XML2TAB function to use the root level element name for the result name. | |
ENVIRONMENT | - | The new FileNameCase (or FNCASE) option added to control global file name case defaults. |
FEATURE | - | FEATURE now supports a VBAR (vertical bar) and HBAR (horizontal bar) feature type. The FILLCOLOR property is now used (when set otherwise it defaults to normal COLOR) for the BOX, CIRCLE, and OVAL types along with the FILLED type mask. See explain file for details and test_feature_hilite.mm for example usage. |
FILE | - | The COPY/L function now supports propagation of header values (where possible) via a /PROPMASK= switch. See explain file for more details. |
- | The COPY/L function now supports propagation computed TIME, ABSC (abscissa), and INDEX values. This permits users doing a BLUE to CSV conversion to pass along these computed values to the output file, rather than discarding them. | |
FNAME | - | The /FNCASE= switch was added to provide control over FileName case sensitivity similar to the FNCASE= qualifier added. |
GCONTROL | - | PIPEMON (pipe monitor), the list in the Select Pipe (MENU) is filtered to only display PIPEs (previously it incorrectly included files in the RAM table). The selected PIPE is now highlighted in the menu. |
GENERATE | - | The "BUNDLE" (or "BUN" for short form) function generates OSGi bundles for the specified option tree. The /EMBEDJARS switch can be used to control the embedding of the option tree's jar files into the bundle. See explain file for more details. |
GENERATE / MAKE | - | In 3.3.4, users can now add the switches /NOTEST and /NODOCS to exclude adding any /test or /docs directory to the JAR file. This cuts down on the size of the JAR file by approximately 26%. Other files automatically removed from the JAR file as of 3.3.4 bring this size down a total of approximately 35%. See GENERATE or MAKE explain files for more details. |
IF | - | Support added for *absolute* equality checks (in addition to the existing *relative* equality checks) with EQ/T that can be accessed via the /DELTA= switch. See explain file for more details. |
KEYWORD | - | New SVGET/SVSET functions provide a convenient way to extract/insert state-vector keywords using a Type 5000 state-vector file. Supports a variety of state-vector keyword formats including ones used in a number of X-Midas option trees and Platinum files. See explain file for more details. |
- | New TCGET/TCSET functions provide a convenient way to extract/insert time-code keywords using a file with ICE packet headers. See explain file for more details. | |
- | New LIST/S functions that will list keywords sorted alphabetically. See explain file for more details. | |
LIST | - | The LIST support for Drag and Drop was enhanced to allow users to export (via DRAG) Tables instead of XML Strings. See explain file for more details. |
LIST2 | - | Support for Drag and Drop was added to LIST2. Users can now drag and drop data between LIST, LIST2, and PLOT. See explain file for usage and other details. |
- | The /POLL=n switch was changed to /POLLDATA=n, since /POLL= also refers to the process() loop interval. | |
MAKE | - | The "BUNDLE" (or "BUN" for short form) function generates OSGi bundles for the specified option tree. See explain file for more details. |
MESSAGE | - | The "R" can now be append to the SEND function to replace the first matching message (name and from fields) in the message queue with the new message. See explain file for more details. |
- | Messages can now be sent to commands in the parent/global registry by using "PARENT.<id>" or "GLOBAL.<id>" as the destination. See explain file for more details. | |
- | In 3.3.1: Messages can now be sent to the message handler specified via
the /MSGID= switch that is specified when the macro is executed by
using THIS.MSGID for the <id> field. e.g.
message send this.msgid msg ...
See explain file for more details.
|
|
NEWRATE | - | NEWRATE now supports the SYNC file option. See the explain file for details. |
OPTION | - | The "CLASSPATH" reserved word can be used in the <path> argument to find and define option tree in the CLASSPATH for when not using the NeXtMidas NmClassLoader (e.g. Java Web Start, applet, or via nxm.sys.lib.NeXtMidas). See explain file for more details. |
- | The /FIND=res switch finds an option tree in the CLASSPATH for when not using the NeXtMidas NmClassLoader (e.g. Java Web Start, applet, or via nxm.sys.lib.NeXtMidas). See explain file for more details. | |
- | The /INFO=res switch can be used to display/get option tree information parsed from version.txt/manifest.mf. See explain file for more details. | |
PATH | - | The + function (alias for ADD) to add option tree(s) to the front of the path. See explain file for more details. |
- | The - function (alias for REMOVE) to remove option tree(s) from the path. See explain file for more details. | |
PEAKPICK | - | In 3.3.1, the PEAKPICK command was enhanced to enable it to process input files with complex data. |
PIPES | - | In 3.3.2, ability to increase the maximum number of pipe readers (from default of 8) up to max upper limit of 31 using the {MAXOUTLETS=maxNumReaders} qualifier on the pipe. See test_plot_many.mm for an example usage. |
PLOT | - | The PLOT support for Drag and Drop was greatly enhanced, including support for the /DRAGDROP switch and the /DROPDATA message. See explain file for more details. |
- | In 3.3.1, users can set the Axis labels above the units to a custom String, rather than just the preset list. See the PLOT explain file and nxm/sys/test/test_plot_adjust_labels.mm for sample usage. | |
- | In 3.3.1, users can now add optional switches to the OPENFILE message. Though the args passed in are merged with the PLOT args table and thus applied to the Layers, only /ALL and /NICE are supported explicitly by PLOT itself, as the other arguments can be set before or after the file is opened. | |
- | Several PLOT sub-MENUs has been enhanced.
The following MENUS has the current value highlighted:
|
|
- | In 3.3.2, users can now specify a comma-separated list of URLS of WMS servers when using WMS. If the first URL is not found, then plot will attempt to connect to the next one on the list. See explain file for details. | |
- | In 3.3.3, users can now set AUTOCONNECT to false when using WMS. If Auto Connect is set to false, the plot will not automatically connect to the Map Server. Users may now separately call connect when using WMS. See explain file for details. | |
- | In 3.3.3, The DATEFORMAT switch was added to allow users to set a the format of time displayed on the readout and axis. See explain file for details. | |
SENDTO | - | The /REPLACE switch was added to replace the first matching message (name and from fields) in the message queue with the new message. See explain file for more details. |
SINKFILE | - | In 3.3.0, SINKFILE was enhanced with the ability to cut or spawn multiple output files from a single input file, based on size or time. See the SINKFILE explain file for more details. |
STATUS | - | In 3.3.1, STATUS of a BLUE file will now include Duration (similar to recent versions of X-Midas), Sample Rate (Type 1000), Frame Rate (2000), and Azim/Elev/Roll (Type 5000 with RF=TOP). |
TABLE | - | New modifiers on TABLE's LOAD function support reading of OPAL tables. See explain file for more details. |
- | In 3.4.4, support was added for T:.. times in tables to be coverted to Time objects. Previous behavior was a NPE and before that a "NULL" string. | |
TIMEX | - | TIMEX now recognizes ISO 8061 time strings automatically. |
TUNER | - | In 3.3.1, switches were added to TUNER set the SBT keywords (similar to SBTUNER/SBT= in X-Midas) and to compute the delay through the filter. See explain file for more details. |
VERSION | - | The "#REQUIREDOPT:" directive can be added to an option tree's version.txt to specify required option trees (aka dependencies). The /OPTINFO switch can be used to display option tree information parsed from version.txt See explain file for more details. |
WAVEFORM | - | In 3.3.1 the RF=, VRF=, BW=, and DURATION= options were added to make it easier to simulate a signal as would be seen coming out of an A2D or sub-band-tuner. See explain file for more details. |
Libraries | - | Command - The /MSGID= switch now supports the "PARENT.<id>" and "GLOBAL.<id>" syntax permitting the sending of messages to entries in the parent/global registry similar to the way the "XM.<id>" syntax could be used with NeXtOpt. |
- | Data - new convenience constructors, getNumber/setNumber, setFormatType(char), setFormatMode(char), getFormatTypeChar(), getFormatModeChar() methods. + See API docs for details. | |
- | DataFile - new convenience getDataBuffer(int elements, char type) method so that you don't have to cast char type to a byte. + See API docs for details. | |
- | FileName - Major updates made to FileName to better support mixed-case (or all-upper-case) file names. There is now a global setting to set the default case-sensitivity option (see also ENVIRONMENT) and the new FNCASE= qualifier that can select from the following options: LowerCase (like X-Midas), KeepCase (keep case as-is), AutoCase (smart case correction like NeXtMidas 3.2 and earlier). + See API docs for details. | |
- | FileUtil - The functions for copying a ListFile now support the propagation of header values (where possible), and the propagation of computed TIME, ABSC (abscissa), and INDEX values. + See API docs for details. | |
- | IOResource - implemented the lastModified method for various IOResources: HttpResource, JarResource, RamResource, PipeResource, and TarResource. | |
- | NeXtMidas - new two argument constructor to allow API user
to set desired Terminal. + Added getShell() and getTerminal() + See API docs for details. |
|
- | OptionTree - new getInfo(..) method to return a table with
the configuration information about requested option tree. + Added cleanVersion, parseForVersion, and parseForRequiredOpt methods. + See API docs for details. |
|
- | Position / StateVector - Added support for reading and
writing numerous "state vector" file types including those with
unevenly-sampled state information (prior versions were limited
to reading Type 5010 files). + Added new getStartTime(), getEndTime(), getCurrentTime() and setCurrentTime(Time) methods to support precision time code. + See API docs for details. |
|
- | ShellParent - New getTerminal() to interface. See API docs for details. | |
- | Sp3File - New class to support reading of SP3 files which are commonly used to convey GPS satellite state vector information. Combined with the SV2BLUE function in CONVERT this allows GPS satellite state vectors to be extracted from an SP3 file as Midas BLUE Type 5001 state vectors. + See API docs for details. | |
- | Table - nxm.sys.lib.Table now implements java.lang.Iterable interface and
Table.Iterator implements java.util.Iterator interface. Table instances can now be
used in foreach loop in Java code to get the keys in the table. + See API docs for details. |
|
- | Terminal - new constructor to allow using a particular InputStream
and/or OutputStream (instead of System.in and System.out, respectively). + Getter/Setter methods for the input/output stream. + See API docs for details. |
|
- | Time - support for ISO 8601 time strings added. + See API docs for details. |
|
- | UrlResource - new IOResource that generically handles reading (input) and writing (output) if supported from any valid URL in JVM. See API docs for details. | |
- | Units - support for PERCENTAGE and PRESSURE_PSI unit codes added. + See API docs for details. |
Java | - | On 2011-February-08, Oracle released a patch to correct Security Alert CVE-2010-4476 (Java Runtime Environment hangs when converting some floating point strings to a binary floating-point number). This vulnerability affects all (non-patched) versions of the Java Development Kit/Java Runtime Environment prior to version 6u24. Please correct this vulnerability on your system by running the Floating Point Updater patch, or, by upgrading to Java 6u24 or later releases. |
Java Plug-in | - | The Oracle Java plug-in (for running Applets) for Mozilla (Firefox) is broken in Java 8, 7u60, 7u65, 7u67, 7u71, 7u72, and 7u75 on RHEL/CentOS 5. Java 7u55 and prior are unaffected. It is fixed in Java 8u5 and Java 7u76. It affects BOTH 32-bit and 64-bit Java versions on RHEL 5. This is not an issue under RHEL/CentOS 6. See JDK Bugs 8047710 and 8029314 for more information. |
JDK 8u20 to 8u31 | - | The Java Development Kit 8u20 to 8u31's javac has a bug that prevent it from being used to build/compile the NeXtMidas baseline. This is not an issue in JDK 8u11 and prior. A fix is planned for JDK 8u40. This only affects build time, Java 8 can still be used for runtime. See Java Bugs JDK-8058511 and JDK-8062272 StackOverflowError at com.sun.tools.javac.code.Types.lub for more information. |
Firefox 22+ | - | Mozilla Firefox 22+ blocks local file applets from running if the codebase refers to the parent directory.
See Mozilla's Same-origin policy for file:// URIs at
https://developer.mozilla.org/en-US/docs/Same-origin_policy_for_file:_URIs).
See also Mozilla Bug 902375 Firefox 23: The Load of a local java applet (*jar) fails silently at
https://bugzilla.mozilla.org/show_bug.cgi?id=902375 where
the a Mozilla developer says that "the case where codebases outside of the current directory
are blocked is intentional...". A workaround in Firefox is to set "security.fileuri.strict_origin_policy" preference (in the about:config page), it defaults to true, but can be set to false if the user doesn't want to strictly enforce the same origin policy on file: URIs. This strict_origin_policy preference is available since Gecko 1.9/Firefox 9. |
OpenJDK | - | When using OpenJDK,some users have experienced minor graphical glitches in NeXtMidas GUIs, as well as issues with monospaced fonts not actually being monospaced (which is an issue when OpenJDK is coupled with certain installations of RHEL). |
PLOT | - | There is a rendering problem when PLOT is run from a Linux session inside VirtualPC on Windows XP. This appears to be a problem with graphics drivers in some versions of VirtualPC. We have been unable to duplicate the problem on a stand-alone installation of either Linux or Windows XP. |
SOURCEDG | - | SOURCEDG running on RedHat Enterprise Linux 4+ (RHEL4+) may encounter
BindExceptions, and/or SocketTimeoutExceptions, and/or IOExceptions due to a
bug in the IPv6 stack on RHEL4+ (see Java Bugs 6347853 and 6218155). You can
avoid this issue by forcing Java to use the IPv4 stack (just do a
"setenv NM_USER_JVM_FLAGS -Djava.net.preferIPv4Stack=true " prior
to running nmstart). |
XBC | - | Building static libraries with both the -fPIC and -i-static flag is still "experimental" in the Intel 9.1/10.x/11.x Fortran compiler (see thread 30222879 on the "Intel Software Network Forums" for details). In practice, this only appears to affect users on 64-bit systems. As a work-around only builds on 32-bit machines include the "-i-static" flags in "ifort.comp.append.32bit" and "ifort.link.append.32bit" properties in $NMROOT/nxm/sys/cfg/build.props. On 64-bit platform, the compiler will default to dynamically linking the Intel runtime libraries, so users will need to run with the LD_LIBRARY_PATH environment set to include the Intel libraries installed location. |
- | The Intel C/C++ prior to 11.1.059 (update 3) has a bug that causes the BUILD of
C++ HOST primitives that access the Mu pointer to fail with an error message
like: "(0): internal error: 0_1561 ... compilation aborted for $NMROOT/nxm/xbc/host/test_mu_okio.cc (code 4). ". The Intel compiler has a bug in compiling code that access a thread local storage constant pointer (which is the definition of the Mu pointer). See Intel issue DPD200138828 at http://software.intel.com/en-us/articles/intel-professional-edition-compilers-111-fixes-list/. GCC does not have this bug. To workaround this Intel compiler bug (by not making the Mu a const pointer), define _WORKAROUND_INTEL_COMPILER_ERROR_0_1561 in your build.props (e.g. "native.lin.cflags.append=-D_WORKAROUND_INTEL_COMPILER_ERROR_0_1561") or directly in the C++ source file. |
|
- | There is a known issue running OpenMP in NeXtMidas. To workaround uncomment additional properties [ifort.libs.dir] and [ifort.openmp.workaround] in the SYS build.props. [ifort.libs.dir] is the path to the Intel compiler directory. [ifort.openmp.workaround] appends the necessary flags to the compiler however the library reference must be adjusted to reflect the respective Intel compiler version (if using Intel 12.x or later use -liomp5 otherwise use -lguide the current default). See the Users Guide or the example in the XBCTESTOPT2 option tree at $NMROOT/nxm/xbc/test/nmopts/nxm/xbctestopt2 . | |
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. |
Windows | - | There is a known issue related to Windows Direct3D when combined with certain hardware profiles and JDKs. This results in severe performance issues with plots, causing sluggish performance, blank plots, and CPU spikes. This is especially true in JDK 7. The workaround is to disable the Direct3D support in java via the environment variable NM_USER_JVM_FLAGS=-Dsun.java2d.d3d=false). |
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. | |
- | Timecode readout for large Type 2000 may give t=00:00:00. | |
Webstart | - | Oracle has been making frequent changes to the security restrictions for Java Web Start and Applets.
Since Java 7u45, users may have to import a public certificate via the jconsole application in order to
prevent Web Start application failures. See the Building Web Start Applications section of the User's Guide
for details. In addition, as of JDK 7u51, you may see warnings related to jar file signing such as: " No -tsa or -tsacert is provided and this jar is not timestamped. "
These warning do not impact NeXtMidas. |
XBC | - | XBC does not support running two copies of the same command simultaneously. |
Bugs Fixed in Release 3.4.4 (31 July 2015) |
||
---|---|---|
Bug Number | GForge DR | Description |
2782 | 838874-1 | IF FEQ always returns true for two different (valid) JNLP files |
2835 | 839459-1 | Help / search (local) applet does not run b/c of same-origin policy in Firefox 24 |
2836 | 839460-1 | document COTS issue for Java 7u60 and 8 Plug-ins on RHEL 5 for Applets |
2839 | 667202-19 | GCONTROL disableItem() affects default value |
2844 | 839461-1 | UPDATE: errors with ArrayIndexOutOfBoundsException when trying to add a new command to some user's option tree |
2846 | 840806-1 | FILE: cannot open 7.0 or 6.0.10 JNLP files |
2849 | 839864-1 | (partial fix) Time: getSoD() & getSoY() rounding results in invalid time & getSoD needlessly losing precision |
2853 | 667210-19 | FEATURE: NullPointerException if NAME= and/or TABLE are omitted |
2858 | 843188-1 | PlotCanvas: colors not correct for line, circle, or ellipse (regression) |
2863 | 847095-1 | JarResource.exists() memory leak |
2866 | 844403-1 | StateVector computeMeasurements NEVER executes light-time correction code |
2871 | 844404-1 | StateVector.java computeMeasurements does not allow disabling of light-time-correction code |
2872 | 842722-1 | MSGLOG/MJText: not displaying last line |
2876 | 843173-1 | Table: Regression causes NPE when a Table has a key with a value T:... |
2880 | 846472-1 | LayerWMS should support layers with a space in their name (partial fix) |
2881 | 843173-1 | Table: Regression causes NPE when a Table has a key with a value T:... |
2883 | 818116-3 | Table.loadOpalTable needs to handle a T: as times |
2887 | 851491-1 | SHELLGUI: MJText ArrayIndexOutOfBoundsException on text selection after paging |
2911 | 851148-1 | LAYER: NullPointerException if NAME= and/or (TABLE) are omitted |
2914 | 851149-1 | FEATURE: VBAR and BOX differ by 1 pixel |
2919 | 850517-1 | XBC: M$GET_EPOCH logic error in utilitiesf.for |
2948 | 852396-1 | MJText/SHELLGUI: ArrayIndexOutOfBoundsException due to array holding screen row to text line information not getting resized |
Bugs Fixed in Release 3.4.3 (27 May 2014) |
||
Bug Number | GForge DR | Description |
2566 | 808736-3 | BUILD: Intel 11.1 compiler warnings and 32-bit cross-compiler options in build.props |
2783 | 836577-1 | MAKE / BUILD: JDK 8 Integration |
2813 | 836886-1 | Add -g to javac build flags to enable debugging features |
2812 | 836739-1 | XGEOPLOT: REREAD message incorrectly removes layer |
2824 | 837196-1 | DemodNative.c hidden bug in Demod_processLUT(..) method |
2826 | 815934-3 | Tuner primitive broken in 3.3.1 (and 3.4.x) |
2832 | 838118-1 | TIMEX/Time Broken - no longer accepts format "YYYY-MM-DD::HH:MM:SS" |
Bugs Fixed in Release 3.4.2 (28 Feb 2014) |
||
Bug Number | GForge DR | Description |
85 | 500142-4 | TABLE class should catch malformed tables (slight adjustment to original fix) |
2756 | 828316-1 | RMIF: serving properties (channels) can cause RMIF to close |
2799 | 830490-1 | Changes in JDK 7u45 breaks Webstart properties |
2802 | 832625-1 | NXM 3.2.x to 3.4.x integration issues for some users (FEATURE, PANEL, etc.) |
2804 | 834837-1 | Shell: saveState/loadState of M.dictionary issue / causes CONFIDENCE to run duplicate test macros |
2805 | 815358-3 | ICEPacket: add getTCWSec and getTCFSec |
2807 | 815413-3 | XGEOPLOT: btest method is off by one |
2809 | N/A | PLOT: Using EXTPREC Readout not displaying 6 decimal places |
Bugs Fixed in Release 3.4.1 (30 Oct 2013) |
||
Bug Number | GForge DR | Description |
2686 | 821552-1 | MidasBean / Command / BaseFile: BaseFile.waitForFile() causes infinite loop when used with MidasBean (adjustment to original fix) |
2767 | n/a | Applet / Web Start: Missing Permissions and Codebase manifest attribute warning from JDK 7u25+ |
2793 | 831624-1 | QUERY / KeyObject.findMembers(..): unable to query certain methods/fields (regression) |
2794 | 831626-1 | KeyObject: setKeys, getKeys, etc. not thread-safe and can cause current thread to lockup |
Bugs Fixed in Release 3.4.0 (27 Sep 2013) |
||
Bug Number | GForge DR | Description |
2770 | 827484-1 | NM: Support NM_BOOT_CP_APPEND entries with wild card "*" |
2791 | n/a | MApplet: JDK 7u40 security restriction breaks Applet |
Bugs Fixed in Release 3.3.4 (30 Aug 2013) |
||
Bug Number | GForge DR | Description |
2747 | 827487-1 | GENERATE / remove some unnecessary files to reduce nxm-sys.jar download time for Applet / Web Start apps |
2749 | 829511-1 | Theme / MidasDisplay: terminates Eclipse Windows Builder (GUI Designer) on RHEL and JDK 7 |
2757 | 828138-1 | LayerVehicle: Add ability to set opacity / opaqueness of fill color |
2759 | 830471-1 | Time.fromJ1950 got broken for case where the total fractional seconds is just barely < 1 |
2760 | 828980-1 | ENV GET SERVER returns null when running inside SHELLGUI in Applet in 3.3.1 |
2761 | 828982-1 | ENV GET SERVER returns null in Applet served via HTTPS |
2762 | 829105-1 | HELP/BUILD: missing links on Help > Command Index page (HTML) to test macro in generated page |
2763 | 829106-1 | running HELP command from Applet causes program to exit |
2764 | 829110-1 | HELP/BUILD throws NPE ERROR when $NMROOT/htdocs/api has not been created |
2765 | 829111-1 | HELP: sort the generated [OPT] Document Index (html) page |
2766 | 829428-1 | Web Start: NPE error when trying to run from local file using Java 7u25 |
2768 | 829510-1 | XBC build fails when path has mixed case |
2769 | 829577-1 | Geodetic view throws exception in console when rotating. |
2771 | 829427-1 | DataFile: file trimmers with tilde incorrectly using index mode |
2774 | 829826-1 | PLOT: Graphics performance horrendous in Windows 7 using JDK 7. |
2775 | 830436-1 | SENDTO: command dictionary entry does not allow for FROM= or QUALS= |
2776 | 830490-1 | Change in JDK 7u25 breaks Help Applet search |
2777 | 830285-1 | XBC: Issues with Intel Compiler 13 |
2781 | n/a | nm make zip and GENERATE JARS should not exclude core* in the zip/jar file it creates |
Bugs Fixed in Release 3.3.3 (21 Jun 2013) |
||
Bug Number | GForge DR | Description |
1951 | 523914-3 | Reliable FQDN (hostname) |
2595 | 814925-1 | Plot / LayerT5: FillCones option doesn't completely fill cones on the dateline |
2670 | 820707-1 | StateVector: Add interpolation options |
2699 | 823524-1 | Table should implement java.util.Iterable interface |
2735 | 813145-3 | PLOT / LayerShape: Array index out of bounds exception when resizing map |
2740 | 825434-1 | PLOT: Axis values wrong when readout=-Scientific |
2743 | 827485-1 | PLOT: zoom all the way out with "ZOOMOUT" data=-1 message does not reset zoom level/history |
2745 | 827486-1 | DataFile.open(): WarnEmpty flag should skip warning if input is a pipe of zero size |
2746 | 667038-19 | MACRO: update Release Notes for change to multi-line Strings |
2748 | 813336-3 | PLOT / LayerImage: X bounds incorrectly set for images when using /ALL switch |
2750 | n/a | Duplicate of Bug 2435: Various minor spelling/grammar mistakes found in the user guide and training tutorial. |
2751 | 813523-3 | DataFile: need filename in readkeywords warning |
2752 | 813140-3 | CONVERT: need a way to keep outer tag in XML2TAB conversion |
2753 | 667033-19 | PLOT: does not display YY:MM:DD on readout=+DATESTRING |
2754 | 826920-1 | LayerWMS / LayerMap: Allow for connecting and re-connecting outside of setURL() |
Bugs Fixed in Release 3.3.2 (3 May 2013) |
||
Bug Number | GForge DR | Description |
42 | 506638-3 | GPanel / MWindow: UnPopped MAP area needs to disappear |
664 | 509104-3 | Statevector.java needs to support other types |
945 | 513312-3 | PLOT: provide own axis titles for Plot |
1342 | 525388-3 | No Inverse FFT command (INVFFT) |
1364 | 517318-3 | XBC: need to map ID of 1 to MAIN |
2414 | n/a | HELP: update to Lucene 2.9.4 |
2532 | 824202-1 | IF: add Absolute Tolerance check for numbers (delta range) for EQ/T |
2592 | 824955-1 | StringUtil.textToRegex(..) improperly handles "[" |
2663 | 815242-1 | DUAL5000: Add DUAL5000 to UCL |
2670 | 820707-1 | StateVector: Add interpolation options |
2676 | 821417-1 | Need to be able to convert between time-code keywords and ICE packets |
2689 | 821347-1 | Sending messages from child to parent |
2711 | 825077-1 | PLOT: displays incorrect units in readout for x= and y= when /xmult= and /ymult are set |
2714 | 825078-1 | FEATURE: need ability to use different fillColor for BOX, CIRCLE, and OVAL feature types and a VBAR type |
2716 | 824832-1 | GPipeMon: Stack trace when trying to display non-piped data |
2720 | 812381-3 | PLOT / LayerPoly: ArrayIndexOutOfBounds Exception when switching tabs |
2721 | 825134-1 | LayerMulti / LayerScatter: Incorrect plotting of time values |
2722 | 825163-1 | PLOT: ZOOM(IN/OUT) messages cannot sync with (UN)ZOOM messages when linking plots |
2723 | 825296-1 | ASSERT: Add option for grouping results as in a file |
2728 | 825400-1 | GDialog: NullPointerException when using MMB |
2729 | 825401-1 | PLOT: Image export dialogue exports file to wrong place |
2730 | 825486-1 | Args: getRawArgs() returns wrong value when switch has a quoted string value with a space |
2731 | 825871-1 | StringUtil: getClosingFensePos(..) gets into infinite loop |
2734 | 826679-1 | PLOT: incorrect AutoMin/AutoMax autoscaling when first frame of data has all zeros |
2735 | 813145-3 | PLOT / LayerShape: Array index out of bounds exception when resizing map |
2736 | 813127-3 | PLOT / LayerT5: LayerT5.setPoint(..) needlessly calls process() |
2737 | 826869-1 | Convert.o2d(Object) should support Boolean |
2738 | 825862-1 | OPTION: Incorrect error message |
2739 | 826259-1 | CONVERT: Convert Type 1999 files to KML |
2741 | 826824-1 | ENVIRONMENT: setting USENATIVE with + (plus) or - (minus) option sets wrong value in ENV.USENATIVE |
2742 | 826833-1 | TABLE: Import of OPAL tables |
Bugs Fixed in Release 3.3.1 (28 Feb 2013) |
||
Bug Number | GForge DR | Description |
276 | 824715-1 | FIRWIND: has several bugs that degrade accuracy |
651 | 824714-1 | FILES: Problem listing files whose names are upper case |
664 | 509104-3 | Statevector.java needs to support other types |
945 | 513312-3 | PLOT: provide own axis titles for Plot |
1562 | 665126-19 | MACRO: incorrect handling of INCLUDE statements |
1758 | 822362-1 | HISTORY / SHELLGUI: does not maintain its own history of commands executed |
1792 | n/a | Duplicate of Bug 1534: Add file name qualifier and macro switch to control file name case |
2348 | n/a | Changes for ARM platform (adjustment to original to allow Linux arm to coexist with Linux x86 shared objects) |
2376 | 531274-3 | PLOT / LayerKML: Too many open files exception |
2414 | n/a | HELP: update to Lucene 2.4.1 |
2645 | 821491-1 | GValue needs better PERCENT format options |
2650 | 821549-1 | Cant use file trimmers in FCALC |
2653 | 820327-1 | QUERY: Broken under JDK 7 |
2656 | 821493-1 | GWidget: NullPointerException when SwingWidgets is set |
2660 | 820329-1 | PEAKPICK: Does not support complex data |
2663 | 815242-1 | DUAL5000: Add DUAL5000 to UCL |
2676 | 821417-1 | Need to be able to convert between time-code keywords and ICE packets |
2686 | 821552-1 | MidasBean / Command / BaseFile: BaseFile.waitForFile() causes infinite loop when used with MidasBean |
2688 | n/a | PYTHON: move unused python intrinsic into it's own option tree |
2689 | 821347-1 | Sending messages from child to parent |
2690 | 821797-1 | PANEL: running a macro with a panel and /ICON shows a blank frame when user de-iconifys |
2692 | 822115-1 | KEYWORD: Add option to list sorted |
2694 | 822114-1 | KEYWORD: Permit some keywords in MAIN without warning. |
2695 | 821784-1 | IF: The FEXISTS test fails for files in RAM |
2696 | 822145-1 | NMPOST: javadocs "errors" for enum when using JDK7 |
2697 | 824701-1 | NEWRATE: Docs for NEWRATE are inadequate |
2698 | 824704-1 | TUNER: Does not handle complex integer data |
2700 | 811594-3 | Layer.isEnabled(int) does not work as described |
2701 | 821459-1 | LIST2: polling issues |
2703 | 824718-1 | Args: Permit null as default value with numeric get |
2704 | 823107-1 | FEATURE: type=symbol symbol=Circle does not filled when told to (regression) |
2705 | 823528-1 | MAKE/BUILD: need option to specify types of files to build (e.g. Java|Native|Host) |
2706 | 822359-1 | SHELLGUI: OpenJDK fonts not monospaced, which causes wrong cursor placement |
2707 | 823641-1 | PANEL: Sub-panel displays incorrectly |
2708 | 824712-1 | WAVEFORM: Permit entry of RF=, VRF=, BW= |
2709 | 824706-1 | STATUS: Missing Azim/Elev/Roll with Type 5000 |
2710 | 812116-3 | PLOT: Add ability to pass in arguments to OPENFILE message |
2712 | 824455-1 | PLOT/MWindow: need option to disable middle mouse button (MMB) to bring up PLOT config MENU |
2715 | 812025-3 | PANEL: NPE when polling widgets |
Bugs Fixed in Release 3.3.0 (21 Dec 2012) |
||
Bug Number | GForge DR | Description |
85 | 500142-4 | TABLE class should catch malformed tables |
98 | 16118-4 | MESSAGES/CONTROLS: need a way to send latest message only |
1666 | n/a | remove unused / unsupported ERMIF and ECONTROL from baseline |
1693 | 815243-1 | DPCO: Add Java version of DPCO to DSP option tree |
1847 | 521930-3 | PANEL: AWT-based GControls are incompatible with OpenGL |
2027 | n/a | MidasBean: remove unused and deprecated /BEANID switch |
2095 | 789211-1 | Table fails to parse if it contains a space after the final } |
2120 | 666108-19 | PLOT: Add support for Drag -N- Drop |
2453 | 806505-3 | MidasBean: needs a cleanup method |
2484 | 807356-3 | Distribute OSGi bundle info with NeXtMidas builds |
2507 | 807490-3 | WAVEFORM issues with WHITENOISE output (adjustment to original fix) |
2570 | 812956-1 | support Java7 (JDK7) |
2574 | 810003-3 | HTTPSERV: AUX served up without directory listing / HServer updates |
2616 | 809772-3 | Gcontrol: Need more docs for /FMT= switch, use of MFormat |
2618 | 809946-3 | PLOT / MWINDOW / THEME: Plot theme should be able to be independent of global theme |
2623 | 816410-1 | PANEL: /LOGGER does not display correctly if defined in setup file |
2632 | 810294-3 | LayerT5 Stack Overflow (regression) |
2638 | 810209-3 | Following a fresh build ENV.USENATIVE is set wrong (document behavior) |
2639 | 818280-1 | LIST2: Deceptive Error Messages |
2640 | 817564-1 | SINKFILE: Adding NF & NFN option to match X-Midas NOOP/NFN |
2641 | 810213-3 | Gcontrol: incorrect value returned for LABEL |
2643 | 819539-1 | PLOT: Vertical axis tic values difficult to read |
2645 | 821491-1 | GValue needs better PERCENT format options |
2646 | 819793-1 | require Java 6 or higher (drop support for Java 5) in NeXtMidas 3.3.0+ |
2647 | 810097-3 | CoreIO: Sub-directories in AUX not read properly |
2648 | 820337-1 | Support JNLPAppletLauncher (JnlpFile, AppletLauncherGen, update GENERATE, etc.) |
2649 | 820328-1 | FileUtil.createFnFilter(..) does not properly support relative paths |
2650 | 821549-1 | Cant use file trimmers in FCALC |
2651 | n/a | need NOOP to implement X-Midas SOURCEFILE features like start, duration, and throttle |
2652 | 820335-1 | PANEL: /JSETUP= should support JPanel-based GUI |
2654 | 820326-1 | MACRO: Error in TextFile's (should be MacroFile's) parsing for multi-line comments |
2656 | 821493-1 | GWidget: NullPointerException when SwingWidgets is set |
2657 | 819515-1 | FCALC: does not propagate TimeLine (header) for each write() |
2658 | 821703-1 | Table serialize / deserialize issues |
2659 | 820325-1 | STATISTICS: Support KEY= tags from X-Midas FSTATISTICS |
2661 | 820330-1 | Data: Add convenience constructors, getNumber/setNumber |
2662 | 810766-3 | PLOT / MPlot: Race condition in formatReadout() |
2663 | 815242-1 | DUAL5000: Add DUAL5000 to UCL |
2664 | 820426-1 | HPrimitive.checkout() throws NullPointerException when it cannot delete tempFile |
2665 | 820331-1 | DataFile: Does not properly set format to "NH" in some cases |
2666 | 820338-1 | FILE: COPY/L should have options to propagate header, pass on TIME/ABSC/INDEX values |
2667 | 820333-1 | DataFile: readDataTable(..) and getDataTable(..) do not return null at EOF for Type 1000/2000 files |
2668 | 820513-1 | PLOT: NPE in MPlot.refresh() when closing then opening files |
2669 | 820674-1 | CONVERT: Add option to convert Type 5000 reference frame |
2671 | 820675-1 | StateVector: setKey(..) does not properly handle VE,VN,VU and AE,AN,AU |
2672 | 821937-1 | PATH: add + and - functions |
2673 | 820780-1 | Time: Needs *FULL* support for ISO 8601 |
2674 | 820779-1 | Time: loss of precision with addSec(..) |
2676 | n/a | Need to be able to convert between time-code keywords and ICE packets |
2677 | 821416-1 | Units.java omits PERCENTAGE and PRESSURE_PSI |
2678 | 821350-1 | DataFile: Equality checks fail to check Type 5000 quadwords |
2679 | 820876-1 | NEXTOPT: backgrounded nm commands use 100% cpu after nm/off kills JVM |
2680 | 820648-1 | Parser: Ambiguous matches do not produce a warning or notice to user |
2681 | 820248-1 | GControl: Suppress updates of title bar when mouse hovers over GC |
2682 | 821305-1 | GENERATE: Jar Signer certificate expiring |
2684 | 821386-1 | RMIF: setting message handler via setMessageHandler on Command does not update Rmif library's msgHandler |
2688 | n/a | PYTHON: move unused python intrinsic into it's own option tree |
2689 | 821347-1 | Sending messages from child to parent |
2690 | 821797-1 | PANEL: running a macro with a panel and /ICON shows a blank frame when user de-iconifys |
2691 | 821943-1 | LIST2: NPE when doing ctrl-p to pop out / push back into panel |
2693 | n/a | HTTPGET;UCL: httpgetdata connection: close request property for GET interferes with POST request |
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 |
IF | Numeric comparison assumes scalars without warning. | Use EQ/? (see IF explain file for details). | 2.7.0 |
swing-layout-1.0.jar | Use of org.jdesktop.layout.GroupLayout and related Swing Layout classes. | Use standard Java 6 javax.swing.GroupLayout (they are the same, just in a different package). | 3.3.0 |
NMPOSTLEGACY | The user-contributed NMPOST (Legacy) option tree is out of date and is usually replaced with author's version. | Get latest from the authors of NMPOST. | 3.3.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. |