Commit Graph

271 Commits

Author SHA1 Message Date
Ward Fisher
c7208eee71 Added text somehow missing from the following pull request: https://github.com/Unidata/netcdf-c/pull/620 2018-05-15 17:20:24 -06:00
Ward Fisher
c0170a3eec Merge remote-tracking branch 'origin/sftlist.dmh' into pr-consolidate.wif 2018-05-08 11:12:07 -06:00
Dennis Heimbigner
23710400fe Update the netCDF-Extractor entry re: esupport QHB-286994 2018-05-05 12:36:24 -06:00
Dennis Heimbigner
9aa1e9a14e master merge 2018-05-03 21:02:12 -06:00
luz.paz
74fbacdb82 Misc. source comment typos
Some are user-facing. Found via `codespell` and through the downstream FreeCAD.
2018-04-26 23:04:01 -04:00
Dennis Heimbigner
c66f1d53bb missing file 2018-04-14 12:01:52 -06:00
Dennis Heimbigner
30860ce48f fix makefile/cmakelist extra-dist problems 2018-04-13 13:27:43 -06:00
Dennis Heimbigner
4739cd3225 Master merge and conflict resolution 2018-04-12 21:51:17 -06:00
Dennis Heimbigner
cc136cad08 Add a configurable "test case" that will create
and then open a file with a lot of metadata.
The test is configurable to determine the parameters
for the created metadata.
2018-03-17 16:25:13 -06:00
Dennis Heimbigner
25f062528b This completes (for now) the refactoring of libsrc4.
The file docs/indexing.dox tries to provide design
information for the refactoring.

The primary change is to replace all walking of linked
lists with the use of the NCindex data structure.
Ncindex is a combination of a hash table (for name-based
lookup) and a vector (for walking the elements in the index).
Additionally, global vectors are added to NC_HDF5_FILE_INFO_T
to support direct mapping of an e.g. dimid to the NC_DIM_INFO_T
object. These global vectors exist for dimensions, types, and groups
because they have globally unique id numbers.

WARNING:
1. since libsrc4 and libsrchdf4 share code, there are also
   changes in libsrchdf4.
2. Any outstanding pull requests that change libsrc4 or libhdf4
   are likely to cause conflicts with this code.
3. The original reason for doing this was for performance improvements,
   but as noted elsewhere, this may not be significant because
   the meta-data read performance apparently is being dominated
   by the hdf5 library because we do bulk meta-data reading rather
   than lazy reading.
2018-03-16 11:46:18 -06:00
Ward Fisher
6074ef0751 Merge branch 'dmh_merge_aggregate.wif' into v4.6.1-release-branch.wif 2018-03-15 11:42:44 -06:00
Ward Fisher
ede8f1b02e Bumping to post-4.6.1-release, for merge back into master. 2018-03-15 11:29:32 -06:00
Dennis Heimbigner
dd4e71c150 1. Solve issue raised on netcdfgroup mailing list:
https://www.unidata.ucar.edu/mailing_lists/archives/netcdfgroup/2018/msg00020.html
See docs/filters.md for a detailed description of the solution.
Basically we add nccopy flags "-F none" and "-F <varname>:none"
to suppress output compression as desired.

2. Add tests to nc_test4/tst_filter.sh to test out the solution.
2018-03-02 16:55:58 -07:00
Dennis Heimbigner
ccc70d640b re: esupport MQO-415619
and https://github.com/Unidata/netcdf-c/issues/708

Expand the NC_INMEMORY capabilities to support writing and accessing
the final modified memory.

Three new functions have been added:
nc_open_memio, nc_create_mem, and nc_close_memio.

The following new capabilities were added.
1. nc_open_memio() allows the NC_WRITE mode flag
   so a chunk of memory can be passed in and be modified
2. nc_create_mem() allows the NC_INMEMORY flag to be set
   to cause the created file to be kept in memory.
3. nc_close_mem() allows the final in-memory contents to be
   retrieved at the time the file is closed.
4. A special flag, NC_MEMIO_LOCK, is provided to ensure that
   the provided memory will not be freed or reallocated.

Note the following.
1. If nc_open_memio() is called with NC_WRITE, and NC_MEMIO_LOCK is not set,
   then the netcdf-c library will take control of the incoming memory.
   This means that the original memory block should not be freed
   but the block returned by nc_close_mem() must be freed.
2. If nc_open_memio() is called with NC_WRITE, and NC_MEMIO_LOCK is set,
   then modifications to the original memory may fail if the space available
   is insufficient.

Documentation is provided in the file docs/inmemory.md.
A test case is provided: nc_test/tst_inmemory.c driven by
nc_test/run_inmemory.sh

WARNING: changes were made to the dispatch table for
the close entry. From int (*close)(int) to int (*close)(int,void*).
2018-02-25 21:45:31 -07:00
Dennis Heimbigner
727b613459 This is the initial step in moving to the new higher performance
(I hope) metadata mechanism. This mostly just adds new pieces of
code (e.g. nclistmap) and does some minor fixes.

It should be transparent to everything else.
The next set of changes will be the big step.
2018-02-08 19:53:40 -07:00
Ward Fisher
054c55f85b Updated version in Doxyfile.developer. 2018-01-24 15:49:24 -07:00
Dennis Heimbigner
3e47f5f300 Rebuilt the filter parameter handling code to use a common
parser everywhere.
2018-01-23 16:00:11 -07:00
Dennis Heimbigner
432cf830a4 Make sure that the path to netcdf.dll does not include the build type (e.g. Release). 2018-01-17 13:24:14 -07:00
Dennis Heimbigner
99fccab359 1. Keep up to date by merging master
2. Fixed plugin building (nc_test4/hdf5plugins)
   to be done properly by cmake and automake.
4. Duplicated part of the nc_test4 filter test code
   in examples/C

An incomplete and untested set of hooks exist
for OS-X in nc_test4/findplugins.in. They need testing.
2018-01-16 11:00:09 -07:00
Ward Fisher
282fbede45 Corrected links to cdash dashboard. 2017-12-20 12:37:02 -07:00
Ed Hartnett
4de61e21f2 more docs, more cleaning 2017-12-04 12:21:14 -07:00
Ed Hartnett
fec74e18ef more internal documentation 2017-12-04 07:07:45 -07:00
Ed Hartnett
11e3e81489 more internal docs 2017-12-03 15:37:56 -07:00
Ed Hartnett
bf6dab14e0 fixed error value from nc4_find_g_var_nc() when ncid is bad 2017-12-03 04:06:56 -07:00
Ed Hartnett
5d11415b83 adding internal documentation 2017-12-01 08:18:49 -07:00
Ward Fisher
c27153edb6 Corrected an incorrect download link for Windows NC3-only binary 2017-11-20 13:43:16 -07:00
Ed Hartnett
42de952080 merging documentation fixes 2017-11-14 11:50:58 -07:00
Ward Fisher
16d6f94f30 Merge branch 'master' into filters.dmh 2017-11-13 11:15:02 -07:00
Ed Hartnett
e8ad412df5
Merge branch 'master' into ejh_fix_docs 2017-11-10 02:43:42 -07:00
Ward Fisher
fde90d9e10 Updated requirements in install.md to clarify both 1.8.x branch and 1.10.x branch minimum versions. 2017-11-09 12:51:05 -07:00
Ed Hartnett
85defe4467 removed cmake_faq.md from Makefile.am. These questions are already included in the CMake section of the FAQ 2017-11-08 06:17:26 -07:00
Ed Hartnett
0ce3d98dc4 fixed typos in CMake build documentation 2017-11-08 05:26:15 -07:00
Ward Fisher
9f41a861f5
Merge branch 'master' into badlink1.dmh 2017-11-06 10:25:04 -07:00
Dennis Heimbigner
c3bba5b709 Fix broken link to NCO within FAQ 2017-11-04 14:09:50 -06:00
Ward Fisher
bb2505cf4e
Merge branch 'master' into newrc.dmh 2017-11-03 14:57:27 -06:00
Ward Fisher
2987fb0bed
Merge branch 'master' into master 2017-10-31 14:01:08 -06:00
Ward Fisher
00a5ca6e70 Updated an out-of-date link for ncBrowse 2017-10-31 11:04:01 -06:00
Dennis Heimbigner
9935d54fdf Merge master and resolve conflicts 2017-10-28 13:57:23 -06:00
Dennis Heimbigner
440cf724ad Update by merging with master 2017-10-21 13:37:09 -06:00
Ward Fisher
60047504ce Updated the dependency versions deployed with netcdf on Windows. 2017-10-17 15:33:49 -06:00
Ward Fisher
f9d0711ab8 Reverted pull 470, added info about the _NoFill attribute (used only by ncgen). 2017-10-11 13:11:06 -06:00
Ward Fisher
41c764fb05 Reverting previous documentation change. 2017-10-11 11:35:17 -06:00
Dennis Heimbigner
111248e067 Changed to make little-endian the standard for 64-bit parameters 2017-10-10 11:21:01 -06:00
Dennis Heimbigner
733da154c5 1. Keep up to date by merging master
2. Factored out the parameter string parsing for ncgen and nccopy
   int libdispatch/dfilter.c + include/ncfilter.h
3. Allow a parameter string to use constant types other than
   unsigned int. See docs/filters.md for details.
4. Moved the old content of  include/netcdf_filter.h into include/netcdf.h
   and removed include/netcdf_filter.h as no longer needed.
5. Force the test filter (bzip2) in nc_test4/filter_test to
   be built using BUILT_SOURCES.
2017-10-08 15:56:45 -06:00
Dennis Heimbigner
c05c0a69e2 Update docs/internal.dox to
provide a more accurate description
of how to add a new dispatch table.
Also remove dispatch.dox as superfluous.
2017-10-04 13:41:38 -06:00
Greg Sjaardema
9964cee7cd Merge branch 'master' into master 2017-09-26 11:06:04 -06:00
Ward Fisher
67018ecabb Merge branch 'v4.5.0-release-branch' into netrc.dmh 2017-09-25 13:46:32 -06:00
Ward Fisher
e4d6a13257 Merged in support of https://github.com/Unidata/netcdf-c/pull/470 2017-09-06 11:53:59 -06:00
Ward Fisher
8c03980cf3 Merge branch 'master' into fill_value_undefined 2017-09-05 15:46:47 -06:00
Dennis Heimbigner
a2e0f069ec This pr should probably be delayed until after Version 4.5.
Primary change is to cleanup code and remove duplicated code.

1. Unify the rc file reading into libdispatch/drc.c. Eventually extend
   if we need rc file for netcdf itself as opposed to the dap code.
2. Unify the extraction from the rc file of DAP authorization info.
3. Misc. other small unifications: make temp file, read file.
4. Avoid use of libcurl when reading file:// because
   there is some kind of problem with the Visual Studio version.
   Might be related to the winpath problem.
   In any case, do direct read instead.
5. Add new error code NC_ERCFILE for errors in reading RC file.
6. Complete documentation cleanup as indicated in this comment
   https://github.com/Unidata/netcdf-c/pull/472#issuecomment-325926426
7. Convert some occurrences of #ifdef _WIN32 to #ifdef _MSC_VER
2017-09-02 18:09:36 -06:00