Skip to content

Commit

Permalink
merge master
Browse files Browse the repository at this point in the history
  • Loading branch information
mclarsen committed May 5, 2020
2 parents 99e77e9 + 13d33e0 commit 4caf970
Show file tree
Hide file tree
Showing 84 changed files with 7,537 additions and 2,144 deletions.
13 changes: 13 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,17 @@ and this project aspires to adhere to [Semantic Versioning](https://semver.org/s
- Added Node::fetch_existing and Schema::fetch_existing methods, which provide access to existing paths or error when given a bad path.
- Added Node::add_child() and Node::remove_child() to support direct operatrions and cases where names have `/`s.
- Added a set of conduit::utils::log::remove_* filtering functions, which process conduit log/info nodes and strip out the requested information (useful for focusing the often verbose output in log/info nodes).
- Added to_string() and to_string_default() methods to Node, Schema, DataType, and DataArray. These methods alias either to_yaml() or to_json(). Long term yaml will be preferred over json, but Schema does not support yaml yet.
- Added helper script (scripts/regen_docs_outputs.py) that regenerates all example outputs used Conduit's Sphinx docs.

#### Relay
- Added an open mode option to RelayIOHandle. See RelayIOHandle docs (https://llnl-conduit.readthedocs.io/en/latest/relay_io.html#relay-i-o-handle-interface) for more details.
- Added the conduit.relay.mpi Python module to support Relay MPI in Python.
- Added support to write and read Conduit lists to HDF5 files. Since HDF5 Groups do not support unnamed indexed children, each list child is written using a string name that represents its index and a special attribute is written to the HDF5 group to mark the list case. On read, the special attribute is used to detect and read this style of group back into a Conduit list.

#### Blueprint
- Added support for Adjacency sets for Structured Mesh Topologies. See the `blueprint::mesh::examples::adjset_uniform` example.


### Fixed

Expand All @@ -31,6 +39,11 @@ and this project aspires to adhere to [Semantic Versioning](https://semver.org/s

#### General
- Node::fetch_child and Schema::fetch_child are deprecated in favor of the more clearly named Node::fetch_existing and Schema::fetch_existing. fetch_child variants still exist, but will be removed in a future release.
- Python str() methods for Node, Schema, and DataType now use their new to_string() methods.
- DataArray<T>::to_json(std::ostring &) is deprecated in favor DataArray<T>::to_json_stream. to_json(std::ostring &) will be removed in a future release.
- Schema::to_json and Schema::save variants with detailed (bool) arg are deprecated. The detailed arg was never used. These methods will be removed in a future release.
- Node::print() now prints yaml instead of json.
- Sphinx Docs code examples and outputs are now included using start-after and end-before style includes.

#### Relay
- Provide more context when a Conduit Node cannot be written to a HDF5 file because it is incompatible with the existing HDF5 tree. Error messages now provide the full path and details about the incompatibility.
Expand Down
5 changes: 4 additions & 1 deletion appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,14 +56,17 @@ install:
- conda install numpy
# try to import numpy to as conda gut-check
- python -c "import numpy as n; print(n.__version__); print(n.get_include());"
# try to import numpy to as conda gut-check
# Install MS-MPI
- ps: Start-FileDownload 'https://download.microsoft.com/download/B/2/E/B2EB83FE-98C2-4156-834A-E1711E6884FB/MSMpiSetup.exe'
- MSMpiSetup.exe -unattend
- set PATH=C:\Program Files\Microsoft MPI\Bin;%PATH%

# Install MS-MPI SDK
- ps: Start-FileDownload 'https://download.microsoft.com/download/B/2/E/B2EB83FE-98C2-4156-834A-E1711E6884FB/msmpisdk.msi'
- msmpisdk.msi /passive
- set PATH=C:\Program Files (x86)\Microsoft SDKs\MPI;%PATH%
# install mpi4py
- pip install mpi4py

# Install CMake 3.9
############################################################################
Expand Down
37 changes: 37 additions & 0 deletions scripts/regen_docs_outputs.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#! /usr/bin/env python
# note: run in build dir, expects src to be ../src from build dir
import subprocess
import os

from os.path import join as pjoin

tests = ["t_conduit_docs_tutorial_basics",
"t_conduit_docs_tutorial_numeric",
"t_conduit_docs_tutorial_parse",
"t_conduit_docs_tutorial_ownership",
"t_conduit_docs_tutorial_errors",
# bp
"t_conduit_docs_blueprint_demos",
"t_conduit_docs_blueprint_examples",
"t_conduit_docs_relay_io_generic_examples",
"t_conduit_docs_relay_io_handle_examples",
"t_conduit_docs_relay_io_hdf5_examples",
# python
"t_conduit_docs_tutorial_python_basics",
"t_conduit_docs_tutorial_python_numeric",
"t_conduit_docs_tutorial_python_ownership",
"t_conduit_docs_tutorial_python_parse",
"t_conduit_docs_tutorial_python_relay_io_handle_examples",
"t_conduit_docs_tutorial_python_relay_mpi_examples"]


dest_dir = "../src/docs/sphinx/"
out_suffix = "_out.txt"

for test in tests:
if "python" in test:
cmd = "ctest -VV -R {} > {}_out.txt".format(test,pjoin(dest_dir,test))
else:
cmd = "tests/docs/{} > {}_out.txt".format(test,pjoin(dest_dir,test))
print(cmd)
subprocess.call(cmd,shell=True)

0 comments on commit 4caf970

Please sign in to comment.