Release notes-outer 3.4 (Aug 10) outer 3.4 fixes a bug introduced in outer 3.0. This bug produces incorrectly levelized data in some cases where levels are entirely "projected out" of the object. The bug most frequently manifested itself during plotting, where the plotting software asked for just the object level containing the x & y variables. The plotting problem manifested itself as "only the first part of the data plots" outer 3.3 puts more information in the "Plotting and Other Operations" link. ==================== [repeat of outer 3.2 changes] outer 3.2 contains a fundamental change in handling selection/projection lists where selection variables are not in the projection list. The new behavior is documented in the file selection_vars_not_projected.doc, included in this release. This change made the use of the logical "not" operator more reliable. The "Plotting and Other Options" server will be modified to offer a "not" selection. To enable this feature, define the variable $option_server_program in jgofsroot/build-env.pl to "jg/otheropt3" The selection parsing routines used by outer (previously in the outer distribution; now in the libupd distribution) originally required a function called iovalreal_. Later (~1998) a choice was added. By default, iovalreal_ was used. However, if compilation switch USE_DOUBLE was specified as TRUE, a function called iovaldouble_ was used instead. In outer 3.2, only iovaldouble_ is accepted, and the USE_DOUBLE compilation switch is obsolete. This modification requires modification to the make files that include outer as part of their build. 1) If USE_DOUBLE was not specified, or specified as USE_DOUBLE=0, an iovaldouble_ function must be added. The libupd package includes iovaldouble_stub.o which can be added to the appropriate make file. It calls iovalreal_. 2) If USE_DOUBLE was specified any other way, then the iovaldouble_ function is already available. The make should succeed. 3) If USE_DOUBLE is specified at all, a diagnostic will be issued informing the user that the switch is obsolete. Removing the specification will remove the diagnostic. outer 3.2 changes the way ".flatN" output handles the display of variable attributes. ".flatN" output is most frequently produced by the use of the "Flat Listing" button in an html display of the data. There are 2 new switches; FLAT_WIDTH_ATTR and FLAT_NONWIDTH_ATTRS. They control the display of the "width=" and all other attributes, respectively. The defaults are FLAT_WIDTH_ATTR=FALSE and FLAT_NONWIDTH_ATTRS=TRUE. Please see outer_switches.doc for details about setting switches. Previous versions of outer displayed attributes unless one of them was width=. Since one of them was ALWAYS width=, attributes were never displayed. This code seems to have been an error. =========================================== Files This tar file is generally used by unpacking its contents in the directory jgofsroot/src/methods, followed by rebuilding those methods that use outer. See jgofsroot/build.doc for a description of the "standard" system build procedure. Local modifications will presumably be described locally. Documentation The comments at the top of outer.c are the most complete documentation of the changes in this release. Other .doc files included in the release (in decreasing order of expected general usefulness): outer_switches.doc Summarizes available compilation switches. Most compilation options are also available as environment variables at runtime. brev.doc A discussion of the ".brev" data listing feature. selection_vars_not_projected.doc Describes outer's behavior when variables in a selection are not desired in outer's output outer_revision.doc Contains older source comments removed, for convenience, from outer.c method_arguments.doc A discussion of a proposed syntax to allow inners to receive non-positionally-determined arguments (as well as a description of the problem being addressed). Primarily for programmers writing inners.