The netCDF Operators NCO version 4.7.1 have escaped.
http://nco.sf.net (Homepage, Mailing lists, Help)
http://github.com/nco (Source Code, Releases, Developers)
What's new?
Version 4.7.1 contains mostly minor fixes and few new features.
One major improvement, long in development, is a Conda Windows port.
Most NCO functionality is now easily available to Windows users
through the Conda distribution.
Pedro Vicente turned his Windows scripts into a CMake implementation.
Building on Pedro's CMake contribution, a team of about six volunteers
used, refined, or implemented Windows ports for the full NCO software
stack. Filipe Fernandez coordinated the Conda work, added AppVeyor
support, and brought in extra help and testing. Pedro and Isuru
Fernando tracked down bugs and improved the build matrix.
No one person could have accomplished this.
The power of Open Source development is awesome.
Work on NCO 4.7.1 has commenced. Planned changes include
better diagnosis and workarounds for the netCDF CDF5 bug,
parallel weight generation by ncremap, and possibly workarounds for
using quotation marks with ncap2 in Windows.
Enjoy,
Charlie
NEW FEATURES (full details always in ChangeLog):
A. NCO Conda package for Windows: All NCO binaries are thought
to work correctly, although the regression test script itself
(which is written in Perl) has not yet been run on Windows.
Windows' idiosyncratic quoting rules can interfere with ncap2
(try running from Powershell to use UNIXy quotes).
The two scripted operators, ncclimo and ncremap, are problematic.
As sophisticated Bash scripts, these do not work on Windows.
Volunteers to port them to a Windows-friendly language (e.g.,
Python) are welcome!
Within a few days of release, try this Windows install command:
conda install -c conda-forge nco
http://nco.sf.net/nco.html#conda
B. ncclimo in daily mode now handles stdin input more cleverly.
Piping or redirecting filename lists to ncclimo --clm_md=dly
is the easiest way to feed huge lists of filenames to ncclimo.
However, these lists are often dominated in size by the path
component of the filename, rather than the filename itself.
Now ncclimo allows specification of the path with -i drc_in,
and it will prepend that path to the standard input names.
Previously it prepended the current working directory.
This functionality allows easy retention of the full
provenance of the input files, without requiring repetitive
inclusion of long pathnames in the filenames.
ls *.clm2.h0.* | ncclimo -c caseid -C dly -s 1960 -e 2005 -i data
http://nco.sf.net/nco.html#ncclimo
C. JSON printing of netCDF3 strings, i.e., character arrays,
has changed. Previously ncks printed square brackets around
the string, as with numeric arrays. However this was somewhat
redundant since the quotation marks around a JSON string already
indicate an array of characters. Now ncks omits the inner-most
(i.e., most rapidly varying) set of brackets from the printing of
character arrays:
ncks --jsn_fmt=2 -C -H -v char_var_2D_arr ~/nco/data/in.nc
{
"dimensions": {
"lat": 2,
"lon": 4
},
"variables": {
"char_var_2D_arr": {
"shape": ["lat", "lon"],
"type": "char",
"data": ["one", "two"]
...
This is instead of "data": [["one"], ["two"]]
in the last line.
http://nco.sf.net/nco.html#json
BUG FIXES:
A. Fix bug where ncclimo --clm_md=dly/ann expected a season list.
This bug was inadvertently introduced with season code in 4.6.8.
The workaround is to use NCO <= 4.6.7 or upgrade to 4.7.1.
B. ncks in JSON, CDL, and XML modes now prints a single NUL as "".
Previously a scalar NUL printed as "0", as in ncdump's CDL.
However, we think this is a bug in ncdump since NUL is not zero.
Full release statement at http://nco.sf.net/ANNOUNCE
--
Charlie Zender, Earth System Sci. & Computer Sci.
University of California, Irvine 949-891-2429 )'(