Commit Graph

653 Commits

Author SHA1 Message Date
Edward Hartnett
4a5ae05dbf cleanup of RELAX_COORD_BOUND in cmake build 2019-11-26 06:59:03 -07:00
Edward Hartnett
8c648b5a2d changed cmake build to only allow relaxed coord builds 2019-11-26 05:40:03 -07:00
Ward Fisher
dac41651ee Merge branch 'feature/cmake-targets' of https://github.com/kprussing/netcdf-c into v4.7.3-wellspring.wif 2019-11-19 14:12:41 -07:00
Keith F. Prussing
808803ceeb Add namespace for CMake targets
The usual convention with modern CMake is to namespace the targets.
This gives the netCDF namespace to the package.
2019-11-19 14:45:21 -05:00
Keith F. Prussing
adf2f4d098 Add include directories as netcdf property
Modern CMake tracks the properties of targets so that down stream
libraries do not have to worry about include directories.  However, the
include directories must be added to the target and not just at the
directory level.
2019-11-19 14:39:46 -05:00
Ward Fisher
e4efdd4cfb Bumped version to next development version. 2019-11-18 14:35:01 -07:00
Ward Fisher
a268e6d69f Ctest security stance. 2019-11-18 12:07:01 -07:00
Ward Fisher
7cbbc32dad Adding new security stance to cdash instance. 2019-11-18 10:58:44 -07:00
edwardhartnett
c1989b738e fixed setting of NC_DISPATCH_VERSION in cmake build 2019-11-15 14:57:07 -07:00
edwardhartnett
a0f984f997 added dispatch version to netcdf_meta.h and libnetcdf.settings 2019-11-15 10:06:46 -07:00
Turing Eret
84a293351e Changes to make it possible to nest this project inside of another CMake
project.
2019-11-07 14:00:53 -07:00
Ward Fisher
f8a588843d Preparing for 4.7.3 development pushed back upstream, forking off to 4.7.2 release branch. 2019-10-18 12:09:28 -06:00
John Buonagurio
bc2a3babf9 Enable HDF5 parallel support for MSVC; add MPI dependency. 2019-09-21 21:56:39 -04:00
Greg Sjaardema
56c0d5cf8a Spelling fixes 2019-09-18 08:03:01 -06:00
Ward Fisher
7aab16254a Bumped to next development version. 2019-08-26 13:07:51 -06:00
Ward Fisher
9a92201c94 Wiring unit test directory into cmake-based builds. 2019-08-21 14:50:09 -06:00
edwardhartnett
e123957618 removed commented lines refering to run_par_test2.sh, which does not exist 2019-08-16 04:42:57 -06:00
Ward Fisher
103e5a3ff5
Merge pull request #1385 from Unidata/mmapfix.dmh
Fix cmake wrt mmap
2019-05-02 11:09:12 -06:00
Ward Fisher
44fce0904e
Merge pull request #1387 from Unidata/fixffilter.dmh
Minor config.h changes to support filters in Fortran
2019-05-01 14:44:53 -06:00
Dennis Heimbigner
62e2b472b4 Minor config.h changes to support filters in Fortran 2019-04-29 16:36:08 -06:00
Ward Fisher
c86593aca3 Corrected cmake syntax, working with a list not a string. 2019-04-26 16:28:53 -06:00
Ward Fisher
dda48ced44 Corrected a case in CMake Syntax where an empty string would cause a failure. 2019-04-26 16:00:28 -06:00
Ward Fisher
88de6f0e1c Updated versions, Release Notes. 2019-04-25 15:40:04 -06:00
Dennis Heimbigner
c9d16d82d6 Fix cmake X mmap
supercede PR: https://github.com/Unidata/netcdf-c/pull/1384

Since we have an mmap user, undeprecate it and make sure
it works. Other changes:

* fix test cases to work with make -j
* fix exposed ncgen error.
2019-04-19 20:32:26 -06:00
Ward Fisher
832c90bb56 Merge branch 'master' into cleanup.wif 2019-04-02 10:44:51 -06:00
Ward Fisher
d0a46d0eed
Merge pull request #1371 from NetCDF-World-Domination-Council/ejh_move_perf
Move performance testing from nc_test4 to new directory nc_perf
2019-04-01 11:08:13 -06:00
Ward Fisher
3823307b9e Disable run_par_test2.sh.in template processing code temporarily. 2019-03-26 15:38:22 -06:00
Ward Fisher
7addb30afd
Merge pull request #1367 from jschueller/patch-1
Fix STRNG typo in CMakeList
2019-03-26 15:33:00 -06:00
Ed Hartnett
d4ab03ea23 merged upstream/master 2019-03-26 11:29:01 -06:00
Dennis Heimbigner
4026323383 Fix minor --ansi warnings in dinfermodel.c and bzlib.c
re:

Needed to provide centralized definitions of fileno and fdopen;
also need to #include sys/types.h
2019-03-22 15:16:47 -06:00
Ward Fisher
e2b31ffae4
Merge branch 'master' into byterange.dmh 2019-03-19 12:05:44 -06:00
Ed Hartnett
5c06d40006 attempting to get cmake build working with new nc_perf directory 2019-03-18 08:15:57 -06:00
Ed Hartnett
51b8ba10b4 attempting to get cmake build working with new nc_perf directory 2019-03-18 08:09:46 -06:00
Julien Schueller
5a5981989c
Fix STRNG typo in CMakeList 2019-03-17 09:09:16 +01:00
Ward Fisher
a4d18bdd66 Bumped SO version in line with http://www.gnu.org/software/libtool/manual/libtool.html#Libtool-versioning 2019-02-28 13:25:56 -07:00
Ward Fisher
eb9f6097d5 Bringing netcdf.pc generated by cmake in line with netcdf.pc generated by configure, in support of https://github.com/Unidata/netcdf-c/issues/gh1324 2019-02-27 14:36:42 -07:00
Ward Fisher
18c403aa02 Prepping for 4.6.3 release, bumping to subsequent version in dev branch. 2019-02-26 14:00:59 -07:00
Dennis Heimbigner
0c59e13bf7 Master merge, conflict resolution, cleanup 2019-02-24 16:54:13 -07:00
Dennis Heimbigner
45a8a265b8 master merge 2019-02-23 17:14:12 -07:00
Ward Fisher
d6c845370b Added fenceposting around H5free_memory, H5allocate_memory, H5resize_memory, as these were all introduced in hdf5 1.8.15. 2019-02-21 14:02:46 -07:00
Dennis Heimbigner
c59d5ce205 Fix handling of '/' characters in names in DAP2.
re: https://github.com/Unidata/thredds/issues/1224
[note that this is an issue in thredds, but the fix is in netcdf-c]

A thredds server can encode a netcdf-4 file into DAP2
by flattening names to include the containing group path,
where the group names are separated by '/'.

But the '/' is prohibited in netcdf names even if escaped
(a decision before my time).

So, if the netcdf-c/libdap2 code encounters a DAP2 name with '/'
characters, the '/' characters are converted to the string
%2f. Unfortunately, there is a glitch, namely that converting
the leading '/' produces a name that is still illegal. This PR
modifies the code to just drop the leading '/' character.
2019-02-14 20:25:40 -07:00
Ward Fisher
1fde39c8d7
Merge branch 'master' into byterange.dmh 2019-02-07 14:28:23 -07:00
Ward Fisher
b27c7d899d Merge branch 'master' into byterange.dmh 2019-01-25 14:50:23 -07:00
Ward Fisher
766d2acfc3 Update CmakeLists.txt in support of https://github.com/Unidata/netcdf-c/issues/1295 2019-01-25 11:26:26 -07:00
Ward Fisher
591b1fd131 Merge branch 'bugfix/debian-stable-default-compilation' of https://github.com/t-b/netcdf-c into pr-aggregation.wif 2019-01-23 15:10:15 -07:00
Ward Fisher
35d0815f82 Merge remote-tracking branch 'origin/gh1245.wif' into pr-aggregation.wif 2019-01-15 15:05:51 -07:00
Ward Fisher
440a9e2ca4
Merge branch 'master' into ansifix.dmh 2019-01-10 13:36:19 -07:00
Ward Fisher
f323a5fec9 Modified cmake configuration file in support of https://github.com/Unidata/netcdf-c/issues/1253 2019-01-08 16:37:33 -07:00
Thomas Braun
531df26af0 CMakeLists.txt: Fix compilation with default settings on debian stretch
Since 209c31d3 (Bringing config.h as generagted by cmake in line with config.h as generated by autotools., 2017-01-27)
we check that we can find the hdf5.h main include file.

But this file may reside in non-standard location so we have to search
in HDF5_INCLUDE_DIR as well.
2019-01-05 14:27:45 +01:00
Dennis Heimbigner
bf2746b8ea Provide byte-range reading of remote datasets
re: issue https://github.com/Unidata/netcdf-c/issues/1251

Assume that you have the URL to a remote dataset
which is a normal netcdf-3 or netcdf-4 file.

This PR allows the netcdf-c to read that dataset's
contents as a netcdf file using HTTP byte ranges
if the remote server supports byte-range access.

Originally, this PR was set up to access Amazon S3 objects,
but it can also access other remote datasets such as those
provided by a Thredds server via the HTTPServer access protocol.
It may also work for other kinds of servers.

Note that this is not intended as a true production
capability because, as is known, this kind of access to
can be quite slow. In addition, the byte-range IO drivers
do not currently do any sort of optimization or caching.

An additional goal here is to gain some experience with
the Amazon S3 REST protocol.

This architecture and its use documented in
the file docs/byterange.dox.

There are currently two test cases:

1. nc_test/tst_s3raw.c - this does a simple open, check format, close cycle
   for a remote netcdf-3 file and a remote netcdf-4 file.
2. nc_test/test_s3raw.sh - this uses ncdump to investigate some remote
   datasets.

This PR also incorporates significantly changed model inference code
(see the superceded PR https://github.com/Unidata/netcdf-c/pull/1259).

1. It centralizes the code that infers the dispatcher.
2. It adds support for byte-range URLs

Other changes:

1. NC_HDF5_finalize was not being properly called by nc_finalize().
2. Fix minor bug in ncgen3.l
3. fix memory leak in nc4info.c
4. add code to walk the .daprc triples and to replace protocol=
   fragment tag with a more general mode= tag.

Final Note:
Th inference code is still way too complicated. We need to move
to the validfile() model used by netcdf Java, where each
dispatcher is asked if it can process the file. This decentralizes
the inference code. This will be done after all the major new
dispatchers (PIO, Zarr, etc) have been implemented.
2019-01-01 18:27:36 -07:00