1# Ascent Changelog
2Notable changes to Ascent are documented in this file. This changelog started on 8/12/19 and does not document prior changes.
3
4The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5and this project aspires to adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
7## Unreleased
8
9### Preferred dependency versions for ascent@0.8.0 (WIP)
10- conduit@0.8.0
11- dray@0.1.8
12- vtk-h@0.8.0
13- vtk-m@1.7.0
14
15
16### Added
17- Added OCCA Derived Field Generation support
18- Added more math expressions
19- Added a time expression
20- Added Cinema rendering support for Devil Ray
21- Added `streamline` and `particle_advection` transforms
22- Added history gradient expressions
23- Added the ability save named sessions
24- Added the ability save subsets of expression results to session files
25- Added the ability to add comments to PNG files that Ascent creates
26- Added timings out control option to Ascent (and Flow)
27- Added support to render Polygonal nd Polyhedral Meshes
28- Added option to turn of world annotations
29- Added FIDES Support
30
31### Fixed
32- Fixed a bug where ascent timings files were written out twice
33- Fixed a bug where the relay extract protocol was always hdf5, regardless of what was requested
34- Various fixes to paraview_ascent_source.py
35
36### Changed
37- Python CMake detection logic now prefers Python 3
38- Changed Ascent's C-API to use Conduit's C-API object helper methods
39- CMake, Spack, and uberenv changes to support newer versions of Cuda, CMake, etc
40- Updated to use VTK-m 1.7.0
41- Make Ascent Webserver support optional, linked to if Conduit Relay Web support exists
42- Simplified the relay extract protocol params, for example can now use `hdf5` instead of `blueprint/mesh/hdf5`
43
44
45## [0.7.1] - Released 2021-05-20
46
47### Preferred dependency versions for ascent@0.7.1
48- conduit@0.7.2
49- dray@0.1.6
50- vtk-h@0.7.1
51- vtk-m@1.5.5
52
53
54### Added
55- Added Data Binning examples to the Ascent Intro Tutorial
56
57### Fixed
58- Fixed an issue with the Data Binning bin calculation logic
59
60### Changed
61- Updated Ascent to use new conduit, dray, and vtk-h versions
62
63
64## [0.7.0] - Released 2021-03-19
65
66### Added
67- Added partial failure tolerance (i.e., if there are multiple plots the failure of one doesn't prevent the others from rendering)
68- Added the ability to use expressions as parameters to filters, e.g., `iso contour value = "(max(field('density')) - min(field('density)) / 2")`
69- Added orthogonal projections for scalar images (projecting onto a 2d plane)
70- Added a `triangulate` transform
71- Added option to build Ascent with only Devil Ray support
72
73### Fixed
74- Fixed a MPI hang if actions files (yaml or json) fail to parse
75- Fixed several minor issues with saving and reading Mesh Blueprint file sets
76- Fixed a field association bug with Data Binning
77- Fixed a 2D AMR mesh rendering issue
78
79### Changed
80- To better support installs that are relocated on the file system, Cinema database file resources are now compiled into the Ascent library.
81- Updated to use Babelflow (1.0.1) and Parallel Merge Tree (1.0.2).
82
83## [0.6.0] - Released 2020-11-06
84
85### Added
86- Added support for Devil Ray (high-order) ray tracer
87- Added vector operations
88  - composite vector (create vector from three scalars)
89  - vector component (extract scalar component)
90- Allow no refinement for high-order meshes
91- Added support for multiple topologies (e.g., volume and particles in the same mesh)
92- Added support for AMR Nesting relationships (Blueprint Nestsets)
93- Added optional `num_files` parameter to the Relay Extract. See the [Relay Extract Docs](https://ascent.readthedocs.io/en/latest/Actions/Extracts.html#relay) for more details.
94- Added an AscentViewer Widget for Jupyter
95- Added new CUDA device link logic to help bottle CUDA dependencies for downstream use
96- Added support for `exa` prefix style filters
97
98### Changed
99- Modified Cinema output so it can be viewed without a webserver
100- Removed default behavior of publishing individual vector components when vectors were three separate arrays. This can be achieved by using the vector component filter
101- Changed Docker Images to leverage Jupyter lab
102- Tutorial updates
103- Rendering improvements
104
105
106## [0.5.1] - Released 2020-01-31
107
108### Added
109- Added support to render multiple topologies in the same scene.
110- Added a Data Object construct to the main Ascent runtime to easily manage transformations between in-memory mesh representations.
111
112### Fixed
113- Issue where cycle was not properly propagated when converting mfem data.
114- Cinema issue where zoom was applied additively each cycle to oblivion.
115- Cinema issue where cameras were not following the center of the data set.
116
117## [0.5.0] - Released 2019-11-14
118
119### Added
120
121- Added new [Tutorial Content](https://ascent.readthedocs.io/en/latest/Tutorial.html) including C++, Python, and Python-based Jupyter Notebook examples.
122- Added docs for [Queries](https://ascent.readthedocs.io/en/latest/Actions/Queries.html) and [Triggers](https://ascent.readthedocs.io/en/latest/Actions/Triggers.html)
123- Added a Jupyter Extract that provides interactive Python Notebook access to published mesh data. See the related [Cloverleaf Demo](https://ascent.readthedocs.io/en/latest/Tutorial_CloverLeaf_Demos.html#using-the-jupyter-extract-for-interactive-python-analysis).
124- Deprecated the `execute` and `reset` actions. `ascent.execute(actions)` now implicitly resets and execute the Ascent actions. To maintain a degree of backwards compatibility, using `execute` and `reset` are still passable to `ascent.execute(actions)`. Internally, the internal data flow network will only be rebuilt when the current actions differ from the previously executed actions. Note: this only occurs when the Ascent runtime object is persistent between calls to `ascent.execute(actions)`.
125- Added support for YAML `ascent_actions` and `ascent_options` files. YAML files are much easier for humans to compose
126- Add a relative offset option to the Slice filter.
127
128### Changed
129
130- Several improvements to Ascent's Expression infrastructure.
131- Updated our uberenv-based to use a 2019/11 version of spack develop.
132- Improved Python error handling and propagation.
133- Updated Docker example to build with Jupyter Notebook support.
134- Updated to VTK-m 1.5.0 and associated VTK-h.
135- Imposed necessary static build constraints for cuda support.
136
137
138### Fixed
139- Several minor bug fixes
140
141[Unreleased]: https://github.com/Alpine-DAV/ascent/compare/v0.6.0...HEAD
142[0.6.0]: https://github.com/Alpine-DAV/ascent/compare/v0.5.1...v0.6.0
143[0.5.1]: https://github.com/Alpine-DAV/ascent/compare/v0.5.0...v0.5.1
144[0.5.0]: https://github.com/Alpine-DAV/ascent/compare/v0.4.0...v0.5.0
145[0.4.0]: https://github.com/Alpine-DAV/ascent/compare/v0.3.0...v0.4.0
146