From 90d423c8cc738d82cdf1ee35b72a36e2324bb7b3 Mon Sep 17 00:00:00 2001 From: Kevin Paul Date: Tue, 29 Aug 2017 12:17:45 -0600 Subject: [PATCH 1/9] Use fill_value property when checking fill_values --- source/pyreshaper/reshaper.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/pyreshaper/reshaper.py b/source/pyreshaper/reshaper.py index 7e7ad84..4d48619 100644 --- a/source/pyreshaper/reshaper.py +++ b/source/pyreshaper/reshaper.py @@ -582,7 +582,7 @@ def _inspect_output_files(self): def _create_var(self, in_file, out_file, vname): in_var = in_file.variables[vname] - fill_value = in_var.getncattr('_FillValue') if '_FillValue' in in_var.ncattrs else None + fill_value = in_var.fill_value out_var = out_file.create_variable(vname, in_var.datatype, in_var.dimensions, fill_value=fill_value) for att_name in in_var.ncattrs: att_value = in_var.getncattr(att_name) From ad70673f2dab143eac748f5115eb44a6e0eca45c Mon Sep 17 00:00:00 2001 From: Kevin Paul Date: Tue, 29 Aug 2017 15:42:51 -0600 Subject: [PATCH 2/9] Bumping version. Removing error on Nio use for testing. --- source/pyreshaper/iobackend.py | 2 -- source/pyreshaper/version.py | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/source/pyreshaper/iobackend.py b/source/pyreshaper/iobackend.py index 4f80962..3fab9ed 100644 --- a/source/pyreshaper/iobackend.py +++ b/source/pyreshaper/iobackend.py @@ -65,8 +65,6 @@ def is_available(name=None): #=============================================================================== def set_backend(name=None): global _BACKEND_ - if name == 'Nio': - raise RuntimeError('PyNIO is currently not working with this version') if name is None: if is_available(): _BACKEND_ = _AVAILABLE_[0] diff --git a/source/pyreshaper/version.py b/source/pyreshaper/version.py index 22e80ec..5476e78 100644 --- a/source/pyreshaper/version.py +++ b/source/pyreshaper/version.py @@ -1,2 +1,2 @@ # Single place for version information -__version__ = '1.0.3' +__version__ = '1.0.4' From d489987f14a35510255a133cb12689d4646947a7 Mon Sep 17 00:00:00 2001 From: Kevin Paul Date: Tue, 29 Aug 2017 16:00:54 -0600 Subject: [PATCH 3/9] Convert data type to 'c' when using Nio --- source/pyreshaper/iobackend.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/source/pyreshaper/iobackend.py b/source/pyreshaper/iobackend.py index 3fab9ed..39a23d9 100644 --- a/source/pyreshaper/iobackend.py +++ b/source/pyreshaper/iobackend.py @@ -233,16 +233,17 @@ def create_dimension(self, name, value=None): def create_variable(self, name, datatype, dimensions, fill_value=None): if self._mode == 'r': raise RuntimeError('Cannot create variable in read mode') - dtchar = numpy.dtype(datatype).char - if dtchar == 'S' or dtchar == 'U' or dtchar == 'c': + dt = datatype if isinstance(datatype, numpy.dtype) else numpy.dtype(datatype) + if dt.char in ('S', 'U', 'c'): fill_value = None if self._backend == 'Nio': - var = self._obj.create_variable(name, dtchar, dimensions) + dtc = 'c' if dt.char in ('S', 'U') else dt.char + var = self._obj.create_variable(name, dtc, dimensions) if fill_value is not None: - setattr(var, '_FillValue', numpy.array(fill_value, dtype=numpy.dtype(datatype))) + setattr(var, '_FillValue', numpy.array(fill_value, dtype=dt)) elif self._backend == 'netCDF4': if fill_value is not None: - self._var_opts['fill_value'] = numpy.array(fill_value, dtype=numpy.dtype(datatype)) + self._var_opts['fill_value'] = numpy.array(fill_value, dtype=dt) var = self._obj.createVariable(name, datatype, dimensions, **self._var_opts) new_var = NCVariable(name, var, self._mode) self._variables[name] = new_var From fd512038b1df32de489feb878341c929ab8731b3 Mon Sep 17 00:00:00 2001 From: Kevin Paul Date: Tue, 29 Aug 2017 16:24:58 -0600 Subject: [PATCH 4/9] Adding debugging info --- source/pyreshaper/iobackend.py | 1 + 1 file changed, 1 insertion(+) diff --git a/source/pyreshaper/iobackend.py b/source/pyreshaper/iobackend.py index 39a23d9..be20576 100644 --- a/source/pyreshaper/iobackend.py +++ b/source/pyreshaper/iobackend.py @@ -401,6 +401,7 @@ def lenslice(l,s): minlen = strlen if strlen < len(item) else len(item) lidx = [] ridx = list(it.multi_index) + print '******', key_t[:-1], ridx for k in key_t[:-1]: if isinstance(k, slice): lidx.append(ridx.pop(0)) From f36c5b5c8b81935dc15b1c24854b2cedb50df74e Mon Sep 17 00:00:00 2001 From: Kevin Paul Date: Tue, 29 Aug 2017 16:28:46 -0600 Subject: [PATCH 5/9] Adding seperate Nio test cases --- source/pyreshaper/test/reshaperTests.py | 55 +++++++++---------------- 1 file changed, 19 insertions(+), 36 deletions(-) diff --git a/source/pyreshaper/test/reshaperTests.py b/source/pyreshaper/test/reshaperTests.py index a648f49..3abe4ee 100644 --- a/source/pyreshaper/test/reshaperTests.py +++ b/source/pyreshaper/test/reshaperTests.py @@ -25,9 +25,9 @@ #======================================================================================================================= -# ConvertTests +# NetCDF4Tests #======================================================================================================================= -class ConvertTests(unittest.TestCase): +class NetCDF4Tests(unittest.TestCase): def setUp(self): @@ -76,7 +76,7 @@ def header(self): nt = mt if self.spec_args['timeseries'] is None else len(self.spec_args['timeseries']) hline = '-' * 100 - hdrstr = ['', hline, '{}:'.format(inspect.stack()[1][3]), '', + hdrstr = ['', hline, '{}.{}:'.format(self.__class__.__name__, inspect.stack()[1][3]), '', ' specifier({}/{} infile(s), {}/{} TSV(s), ncfmt={ncfmt}, compression={compression}, meta1d={meta1d}, backend={backend})'.format(nf, mf, nt, mt, **self.spec_args), ' create(serial={serial}, verbosity={verbosity}, wmode={wmode}, once={once}, simplecomm={simplecomm})'.format(**self.create_args), ' convert(output_limit={output_limit}, chunks={chunks})'.format(**self.convert_args), hline, ''] @@ -171,36 +171,6 @@ def test_NC3(self): self.check(tsvar) MPI_COMM_WORLD.Barrier() -# def test_Nio_NC3(self): -# self.spec_args['ncfmt'] = 'netcdf' -# self.spec_args['backend'] = 'Nio' -# self.create_args['verbosity'] = 3 -# self.header() -# self.convert() -# if self.rank == 0: -# for tsvar in makeTestData.tsvars: -# self.check(tsvar) -# MPI_COMM_WORLD.Barrier() - -# def test_Nio(self): -# self.spec_args['backend'] = 'Nio' -# self.create_args['verbosity'] = 3 -# self.header() -# self.convert() -# if self.rank == 0: -# for tsvar in makeTestData.tsvars: -# self.check(tsvar) -# MPI_COMM_WORLD.Barrier() - - def test_netCDF4(self): - self.spec_args['backend'] = 'netCDF4' - self.header() - self.convert() - if self.rank == 0: - for tsvar in makeTestData.tsvars: - self.check(tsvar) - MPI_COMM_WORLD.Barrier() - def test_ser(self): self.create_args['serial'] = True self.header() @@ -299,6 +269,17 @@ def test_append_missing(self): MPI_COMM_WORLD.Barrier() +#======================================================================================================================= +# NioTests +#======================================================================================================================= +class NioTests(NetCDF4Tests): + """PyNIO tests""" + + def setUp(self): + NetCDF4Tests.setUp(self) + self.spec_args['backend'] = 'Nio' + + #======================================================================================================================= # CLI #======================================================================================================================= @@ -311,11 +292,13 @@ def test_append_missing(self): MPI_COMM_WORLD.Barrier() mystream = StringIO() - tests = unittest.TestLoader().loadTestsFromTestCase(ConvertTests) - unittest.TextTestRunner(stream=mystream).run(tests) + tests = [unittest.TestLoader().loadTestsFromTestCase(NetCDF4Tests), + unittest.TestLoader().loadTestsFromTestCase(NioTests)] + suite = unittest.TestSuite(tests) + unittest.TextTestRunner(stream=mystream).run(suite) MPI_COMM_WORLD.Barrier() - results = MPI_COMM_WORLD.gather(mystream.getvalue()) + if MPI_COMM_WORLD.Get_rank() == 0: for rank, result in enumerate(results): print hline From c5f3021c3ffc07fcd91a170f9a45bdfa321d4b01 Mon Sep 17 00:00:00 2001 From: Kevin Paul Date: Tue, 29 Aug 2017 16:32:31 -0600 Subject: [PATCH 6/9] More debugging output --- source/pyreshaper/iobackend.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/pyreshaper/iobackend.py b/source/pyreshaper/iobackend.py index be20576..fcc7ae1 100644 --- a/source/pyreshaper/iobackend.py +++ b/source/pyreshaper/iobackend.py @@ -401,7 +401,7 @@ def lenslice(l,s): minlen = strlen if strlen < len(item) else len(item) lidx = [] ridx = list(it.multi_index) - print '******', key_t[:-1], ridx + print '******', self.name, self.dimensions, key_t[:-1], ridx for k in key_t[:-1]: if isinstance(k, slice): lidx.append(ridx.pop(0)) From 961e4b1948192425617a00448bca71ff6be5d278 Mon Sep 17 00:00:00 2001 From: Kevin Paul Date: Wed, 30 Aug 2017 11:27:25 -0600 Subject: [PATCH 7/9] Fixing character variable write with PyNIO to match netCDF4 --- source/pyreshaper/iobackend.py | 34 +++++++------------- source/pyreshaper/test/makeTestData.py | 41 +++++++++++++++++-------- source/pyreshaper/test/reshaperTests.py | 2 +- 3 files changed, 40 insertions(+), 37 deletions(-) diff --git a/source/pyreshaper/iobackend.py b/source/pyreshaper/iobackend.py index fcc7ae1..7fc47b8 100644 --- a/source/pyreshaper/iobackend.py +++ b/source/pyreshaper/iobackend.py @@ -378,37 +378,25 @@ def __setitem__(self, key, value): raise KeyError('Too many indices specified for variable') key_t += (slice(None),)*(self.ndim - len(key_t)) + varray = numpy.ma.asarray(value) + if varray.dtype.char not in ('c', 'S', 'U'): + raise TypeError('Incompatible type for string variable') + if self.ndim != varray.ndim: + raise ValueError('Incompatible array dimensions for string variable') + def lenslice(l,s): start, stop, step = s.indices(l) return (stop-start)//step + int((stop-start)%step>0) - lshape = tuple(lenslice(l,s) for l,s in zip(self.shape, key_t) if isinstance(s, slice)) - lndim = len(lshape) strlen = lenslice(self.shape[-1], key_t[-1]) if isinstance(key_t[-1], slice) else 1 - varray = numpy.ma.asarray(value) - if varray.dtype.char not in ('c', 'S', 'U'): - raise TypeError('Incompatible type for string variable') - if varray.ndim == lndim and varray.itemsize == 1: - rvalue = numpy.ma.squeeze(varray.view('S{}'.format(varray.shape[-1]))) - elif varray.ndim == lndim - 1: - rvalue = varray - else: - raise ValueError('Incompatible array sizes for string variable') - - it = numpy.nditer(rvalue, flags=['multi_index']) + rarray = numpy.squeeze(varray.view('S{}'.format(strlen)), axis=-1) + + it = numpy.nditer(rarray, flags=['multi_index']) while not it.finished: item = it[0].tostring().replace('\x00', '') minlen = strlen if strlen < len(item) else len(item) - lidx = [] - ridx = list(it.multi_index) - print '******', self.name, self.dimensions, key_t[:-1], ridx - for k in key_t[:-1]: - if isinstance(k, slice): - lidx.append(ridx.pop(0)) - else: - lidx.append(k) - lidx.append(slice(minlen)) - self._obj[tuple(lidx)] = item[:minlen] + lidx = key_t[:-1] + (slice(minlen),) + self._obj[lidx] = item[:minlen] it.iternext() else: self._obj[key] = value diff --git a/source/pyreshaper/test/makeTestData.py b/source/pyreshaper/test/makeTestData.py index 29d4e9e..24c5fd7 100644 --- a/source/pyreshaper/test/makeTestData.py +++ b/source/pyreshaper/test/makeTestData.py @@ -12,8 +12,10 @@ nlat = 19 nlon = 36 ntime = 10 +nchar = 7 slices = ['input{0}.nc'.format(i) for i in xrange(5)] scalars = ['scalar{0}'.format(i) for i in xrange(2)] +chvars = ['char{0}'.format(i) for i in xrange(1)] timvars = ['tim{0}'.format(i) for i in xrange(2)] tvmvars = ['tvm{0}'.format(i) for i in xrange(2)] tsvars = ['tsvar{0}'.format(i) for i in xrange(4)] @@ -45,10 +47,11 @@ def generate_data(backend='netCDF4'): fobj.create_dimension('lat', nlat) fobj.create_dimension('lon', nlon) fobj.create_dimension('time', None) + fobj.create_dimension('strlen', nchar) # Create the coordinate variables & add attributes lat = fobj.create_variable('lat', 'f', ('lat',)) - lon = fobj.create_variable('lon', 'f', ('lon',), fill_value=1e36) + lon = fobj.create_variable('lon', 'f', ('lon',)) time = fobj.create_variable('time', 'f', ('time',)) # Set the coordinate variable attributes @@ -57,7 +60,6 @@ def generate_data(backend='netCDF4'): lon.setncattr('long_name', 'longitude') lon.setncattr('units', 'degrees_east') - lon.setncattr('missing_value', 1e36) time.setncattr('long_name', 'time') time.setncattr('units', 'days since 01-01-0001') @@ -84,6 +86,14 @@ def generate_data(backend='netCDF4'): v.setncattr('units', '[{0}]'.format(vname)) v[:] = np.ones((nlat, nlon), dtype=np.float64) * n + # Create the time-variant character variables + for n in xrange(len(chvars)): + vname = chvars[n] + v = fobj.create_variable(vname, 'c', ('time', 'strlen')) + v.setncattr('long_name', 'character array {0}'.format(n)) + vdata = [str((n+1)*m) * (m+1) for m in xrange(ntime)] + v[:] = np.array(vdata, dtype='S{}'.format(nchar)).view('S1').reshape(ntime, nchar) + # Create the time-variant metadata variables for n in xrange(len(tvmvars)): vname = tvmvars[n] @@ -95,10 +105,13 @@ def generate_data(backend='netCDF4'): # Create the time-series variables for n in xrange(len(tsvars)): vname = tsvars[n] - v = fobj.create_variable(vname, 'd', ('time', 'lat', 'lon')) + v = fobj.create_variable(vname, 'd', ('time', 'lat', 'lon'), fill_value=1e36) v.setncattr('long_name', 'time-series variable {0}'.format(n)) v.setncattr('units', '[{0}]'.format(vname)) - v[:] = np.ones((ntime, nlat, nlon), dtype=np.float64) * n + v.setncattr('missing_value', 1e36) + vdata = np.ones((ntime, nlat, nlon), dtype=np.float64) * n + vmask = np.random.choice([True, False], ntime*nlat*nlon).reshape(ntime, nlat, nlon) + v[:] = np.ma.MaskedArray(vdata, mask=vmask) #======================================================================================================================= @@ -127,24 +140,24 @@ def _assert(key, value): _assert('{0!r} exists'.format(infile), os.path.exists(infile)) if not os.path.exists(infile): return assertions + ncinp = iobackend.NCFile(infile) nsteps = ncinp.dimensions['time'] if infile == infiles[0]: - scalars = [v for v in ncinp.variables if ncinp.variables[v].dimensions == ()] + scvars = [v for v in ncinp.variables if ncinp.variables[v].dimensions == ()] tivars = [v for v in ncinp.variables if 'time' not in ncinp.variables[v].dimensions] tsvars = [v for v in ncinp.variables if 'time' in ncinp.variables[v].dimensions and v not in metadata] if once: tsvars.append('once') - outdims = {'lat': ncinp.dimensions['lat'], - 'lon': ncinp.dimensions['lon']} + outdims = {'lat': ncinp.dimensions['lat'], 'lon': ncinp.dimensions['lon'], 'strlen': ncinp.dimensions['strlen']} outmeta = [v for v in ncinp.variables if v not in tsvars] - _assert('{0}: variable {1!r} exists'.format(outfile, tsvar), tsvar in tsvars) - _assert('{0}: attribute names equal'.format(outfile), ncout.ncattrs == ncinp.ncattrs) + _assert('{0}: variable {1!r} found in input'.format(outfile, tsvar), tsvar in tsvars) + _assert('{0}: global attribute names equal'.format(outfile), ncout.ncattrs == ncinp.ncattrs) for a in set(ncout.ncattrs).intersection(set(ncinp.ncattrs)): - _assert('{0}: attribute {1} values equal'.format(outfile, a), ncout.getncattr(a) == ncinp.getncattr(a)) + _assert('{0}: global attribute {1} values equal'.format(outfile, a), ncout.getncattr(a) == ncinp.getncattr(a)) for d, v in outdims.iteritems(): _assert("{0}: {1!r} in dimensions".format(outfile, d), d in ncout.dimensions) _assert("{0}: dimensions[{1!r}]".format(outfile, d), ncout.dimensions[d] == v) @@ -154,14 +167,16 @@ def _assert(key, value): all_vars = outmeta if tsvar == 'once' else [tsvar] else: all_vars = [tsvar] + outmeta - _assert("{0}: variable set".format(outfile), set(ncout.variables.keys()) == set(all_vars)) + _assert("{0}: variable names same".format(outfile), set(ncout.variables.keys()) == set(all_vars)) for v in all_vars: - if v in scalars: + if v in scvars: expected = () elif v in ncinp.dimensions: expected = (v,) elif v in tivars: expected = ('lat', 'lon') + elif v in chvars: + expected = ('time', 'strlen') else: expected = ('time', 'lat', 'lon') _assert("{0}: {1}.dimemsions equal".format(outfile, v), ncout.variables[v].dimensions == expected) @@ -172,7 +187,7 @@ def _assert(key, value): oslice = slice(series_step, series_step + nsteps) actual = ncout.variables[v][oslice] elif 'time' in ncout.variables[v].dimensions: - oslice = [slice(None)] * 3 + oslice = [slice(None)] * (2 if v in chvars else 3) oslice[0] = slice(series_step, series_step + nsteps) actual = ncout.variables[v][tuple(oslice)] else: diff --git a/source/pyreshaper/test/reshaperTests.py b/source/pyreshaper/test/reshaperTests.py index 3abe4ee..a3722db 100644 --- a/source/pyreshaper/test/reshaperTests.py +++ b/source/pyreshaper/test/reshaperTests.py @@ -42,7 +42,7 @@ def setUp(self): 'prefix': 'out.', 'suffix': '.nc', 'timeseries': None, - 'metadata': [v for v in makeTestData.tvmvars] + ['time'], + 'metadata': [v for v in makeTestData.tvmvars] + ['time'] + [v for v in makeTestData.chvars], 'meta1d': False, 'backend': 'netCDF4'} self.create_args = {'serial': False, From 76bb037eafdc2887855cf4fa14d85618103ba17c Mon Sep 17 00:00:00 2001 From: Kevin Paul Date: Wed, 30 Aug 2017 11:33:48 -0600 Subject: [PATCH 8/9] Splitting up NetCDf4 and Nio tests into different suites --- source/pyreshaper/test/s2srunTests.py | 41 ++++++++++++--------------- 1 file changed, 18 insertions(+), 23 deletions(-) diff --git a/source/pyreshaper/test/s2srunTests.py b/source/pyreshaper/test/s2srunTests.py index c4d82cf..f0f4d76 100644 --- a/source/pyreshaper/test/s2srunTests.py +++ b/source/pyreshaper/test/s2srunTests.py @@ -89,9 +89,9 @@ def test_long(self): #======================================================================================================================= -# MainTests +# NetCDF4Tests #======================================================================================================================= -class MainTests(unittest.TestCase): +class NetCDF4Tests(unittest.TestCase): def setUp(self): @@ -140,7 +140,7 @@ def header(self, testname): nt = mt if self.spec_args['timeseries'] is None else len(self.spec_args['timeseries']) hline = '-' * 100 - hdrstr = [hline, '{}:'.format(testname), '', + hdrstr = [hline, '{}.{}:'.format(self.__class__.__name__, testname), '', ' specifier({}/{} infile(s), {}/{} TSV(s), ncfmt={ncfmt}, compression={compression}, meta1d={meta1d}, backend={backend})'.format(nf, mf, nt, mt, **self.spec_args), ' s2srun {}'.format(' '.join(str(a) for a in self.runargs())), hline] print eol.join(hdrstr) @@ -245,24 +245,6 @@ def test_NC3(self): self.check(tsvar) MPI_COMM_WORLD.Barrier() -# def test_Nio(self): -# self.spec_args['backend'] = 'Nio' -# self.header(inspect.currentframe().f_code.co_name) -# self.convert() -# if self.rank == 0: -# for tsvar in makeTestData.tsvars: -# self.check(tsvar) -# MPI_COMM_WORLD.Barrier() - - def test_netCDF4(self): - self.spec_args['backend'] = 'netCDF4' - self.header(inspect.currentframe().f_code.co_name) - self.convert() - if self.rank == 0: - for tsvar in makeTestData.tsvars: - self.check(tsvar) - MPI_COMM_WORLD.Barrier() - def test_ser(self): self.run_args['serial'] = True self.header(inspect.currentframe().f_code.co_name) @@ -359,6 +341,16 @@ def test_append_missing(self): self.spec_args['infiles'] = makeTestData.slices self.check(tsvar) MPI_COMM_WORLD.Barrier() + + +#======================================================================================================================= +# NioTests +#======================================================================================================================= +class NioTests(NetCDF4Tests): + + def setUp(self): + NetCDF4Tests.setUp(self) + self.spec_args['backend'] = 'Nio' #======================================================================================================================= @@ -383,8 +375,11 @@ def test_append_missing(self): MPI_COMM_WORLD.Barrier() mainstream = StringIO() - maintests = unittest.TestLoader().loadTestsFromTestCase(MainTests) - unittest.TextTestRunner(stream=mainstream).run(maintests) + nc4tests = unittest.TestLoader().loadTestsFromTestCase(NetCDF4Tests) + tests = [unittest.TestLoader().loadTestsFromTestCase(NetCDF4Tests), + unittest.TestLoader().loadTestsFromTestCase(NioTests)] + suite = unittest.TestSuite(tests) + unittest.TextTestRunner(stream=mainstream).run(suite) MPI_COMM_WORLD.Barrier() results = MPI_COMM_WORLD.gather(mainstream.getvalue()) From d6c7e22311a3748a4c99e3b16f8561c2ef251c07 Mon Sep 17 00:00:00 2001 From: Kevin Paul Date: Wed, 30 Aug 2017 13:22:55 -0600 Subject: [PATCH 9/9] Updating documentation --- README.rst | 21 +--------------- docs/.buildinfo | 2 +- docs/.doctrees/environment.pickle | Bin 32981 -> 32279 bytes docs/.doctrees/index.doctree | Bin 5638 -> 5643 bytes docs/.doctrees/license.doctree | Bin 24535 -> 24530 bytes docs/.doctrees/manual.doctree | Bin 182064 -> 176341 bytes docs/.doctrees/readme.doctree | Bin 24298 -> 21674 bytes docs/_sources/manual.rst.txt | 37 ++-------------------------- docs/changelog.html | 6 ++--- docs/genindex.html | 6 ++--- docs/index.html | 6 ++--- docs/iobackend.html | 6 ++--- docs/license.html | 6 ++--- docs/manual.html | 39 ++++-------------------------- docs/py-modindex.html | 6 ++--- docs/pyreshaper.html | 6 ++--- docs/readme.html | 25 +++---------------- docs/reshaper.html | 6 ++--- docs/search.html | 6 ++--- docs/searchindex.js | 2 +- docs/source/manual.rst | 37 ++-------------------------- docs/specification.html | 6 ++--- 22 files changed, 46 insertions(+), 177 deletions(-) diff --git a/README.rst b/README.rst index c6973e3..c61fcde 100644 --- a/README.rst +++ b/README.rst @@ -34,15 +34,11 @@ dependencies exist as a result of these direct dependencies. The PyReshaper explicitly depends upon the following Python packages: -- PyNIO (v1.4.1+) or netCDF4-python (v1.2+) +- PyNIO (v1.5+) or netCDF4-python (v1.2+) - ASAPPyTools (v0.4+) These packages imply a dependency on the NumPy (v1.4+) and mpi4py (v1.3+) packages, and the libraries NetCDF and MPI/MPI-2. - -Additionally, the entire package is designed to work with Python v2.6 and up -to (but not including) Python v3.0. If using Python version 2.6, you will -need to install the ``ordereddict`` package, too. The version requirements have not been rigidly tested, so earlier versions may actually work. No version requirement is made during installation, though, @@ -109,21 +105,6 @@ to install. To do this, type (on unix machines):: This can be handy since the site-packages directory will be common for all user installs, and therefore only needs to be added to the ``PYTHONPATH`` once. -To install the documentation, you must have Sphinx installed on your system. -Sphinx can be easily installed with pip, via:: - - $ pip install Sphinx - -Once Sphinx is installed, you can build the PyReshaper HTML documentation -with:: - - $ cd docs - $ make html - -The resulting HTML documentation will be placed in the docs/build/html -directory, and the main page can be loaded with any browser pointing to -'docs/build/html/index.html'. - Before Using the PyReshaper Package ----------------------------------- diff --git a/docs/.buildinfo b/docs/.buildinfo index 516c974..5ecca1a 100644 --- a/docs/.buildinfo +++ b/docs/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: cf6f811fe1dbcf7013ef1bca0aa0c35d +config: ef747d72177d13bdaa19f50fd2da8b28 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/docs/.doctrees/environment.pickle b/docs/.doctrees/environment.pickle index e53994af7e666ee83f84d136dfcbe7bbd89382bc..b17b244e5c744604a4202db0b5ea220e2f8b544f 100644 GIT binary patch literal 32279 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 literal 32981 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 diff --git a/docs/.doctrees/license.doctree b/docs/.doctrees/license.doctree index f5bc6502176ac97a54f2e40e41bdcf7b9b76fb4c..06907dbe647ee3b0e42986448253638b21ec1535 100644 GIT binary patch delta 154 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 delta 7700 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 - PyReshaper Change Log — PyReshaper 1.0.3 documentation + PyReshaper Change Log — PyReshaper 1.0.4 documentation @@ -35,7 +35,7 @@ - + @@ -375,7 +375,7 @@

VERSION 0.9.0 var DOCUMENTATION_OPTIONS = { URL_ROOT:'./', - VERSION:'1.0.3', + VERSION:'1.0.4', COLLAPSE_INDEX:false, FILE_SUFFIX:'.html', HAS_SOURCE: true, diff --git a/docs/genindex.html b/docs/genindex.html index 0eff2f6..42f4bfd 100644 --- a/docs/genindex.html +++ b/docs/genindex.html @@ -9,7 +9,7 @@ - Index — PyReshaper 1.0.3 documentation + Index — PyReshaper 1.0.4 documentation @@ -36,7 +36,7 @@ - + @@ -391,7 +391,7 @@

W

@@ -201,7 +201,7 @@