SMTK issueshttps://gitlab.kitware.com/cmb/smtk/-/issues2021-03-28T18:41:18-04:00https://gitlab.kitware.com/cmb/smtk/-/issues/294dereference associations to a pointer2021-03-28T18:41:18-04:00chart3388dereference associations to a pointerThe below line causes SMTK to core when called repeatedly:
`smtk::resource::PersistentObject::Ptr objPtr = *parameters()>associations()>begin();`
To work around the problem we used:
`smtk::resource::PersistentObject::Ptr objPtr = para...The below line causes SMTK to core when called repeatedly:
`smtk::resource::PersistentObject::Ptr objPtr = *parameters()>associations()>begin();`
To work around the problem we used:
`smtk::resource::PersistentObject::Ptr objPtr = parameters()>associations()>objectValue();`David ThompsonDavid Thompsonhttps://gitlab.kitware.com/cmb/smtk/-/issues/281Mesh selections never really die.2019-10-18T10:36:47-04:00David ThompsonMesh selections never really die.While mesh selections are removed from the interface, they never really die. If you save a mesh resource after having made some selections and then reload it, you will see unnamed meshsets that happen to correspond to all your old select...While mesh selections are removed from the interface, they never really die. If you save a mesh resource after having made some selections and then reload it, you will see unnamed meshsets that happen to correspond to all your old selections.
Also, I think this is what is responsible for artifacts that appear to be empty rows in qtReferenceItem dropdowns which accept meshsets.
## To Reproduce
1. Load a surface mesh
2. Click the selection filter toolbar's "Mesh" button
3. Type 's' and select cells on the surface
4. Double click the "Extract by dihedral angle" operation and click apply.
5. Optionally repeat steps 3 + 4 a few times
6. Save the mesh resource.
7. Quit modelbuilder
8. Re-run modelbuilder and reloadT.J. CoronaT.J. Coronahttps://gitlab.kitware.com/cmb/smtk/-/issues/279Add an API to PhraseContent to find root phrase content2019-10-18T13:58:01-04:00Haocheng LIUAdd an API to PhraseContent to find root phrase contentNow PhraseContent practices decorator pattern. It's tedious to use a while loop to find the root content and do needed things. We should provide an API to do so.
```c++
PhraseContent PhaseContent::originalContent()
{
auto content = thi...Now PhraseContent practices decorator pattern. It's tedious to use a while loop to find the root content and do needed things. We should provide an API to do so.
```c++
PhraseContent PhaseContent::originalContent()
{
auto content = this;
// Find the original content without any decoration
for (; content->peek(); content = content->peek());
return content;
}
```https://gitlab.kitware.com/cmb/smtk/-/issues/271Split SMTK repository2019-09-20T12:19:22-04:00David ThompsonSplit SMTK repositoryWe should split the SMTK repository into several pieces, mostly based on added dependencies (but also functional units):
+ [ ] core smtk - no dependencies beyond boost, pegtl, nlohmann_json, pugi
+ [ ] smtk::qt
+ [ ] smtk::vtk
+ [ ]...We should split the SMTK repository into several pieces, mostly based on added dependencies (but also functional units):
+ [ ] core smtk - no dependencies beyond boost, pegtl, nlohmann_json, pugi
+ [ ] smtk::qt
+ [ ] smtk::vtk
+ [ ] basic, only depends on core VTK modules
+ [ ] others, introduce dependencies on VTK modules with significant 3rd-party libs like hdf5, netcdf, exodus
+ [ ] smtk::paraview, depends on ParaView and VTK
+ [ ] server - no Qt dependencies
+ [ ] client - also allows Qt dependencies
+ [ ] smtk::opencv - for grabcuts
+ [ ] sessions
+ [ ] mesh
+ [ ] oscillator
+ [ ] polygon
+ [ ] vtk
+ [ ] othershttps://gitlab.kitware.com/cmb/smtk/-/issues/269BUG: Toggling visibility of group entity in CMB descriptive phrase does not p...2019-09-02T13:11:07-04:00Haocheng LIUBUG: Toggling visibility of group entity in CMB descriptive phrase does not propagate the change to smtkUser can use the descriptive phrase to toggle the visibility of a group entity in CMB. However when querying its status in SMTK, it's out of sync.User can use the descriptive phrase to toggle the visibility of a group entity in CMB. However when querying its status in SMTK, it's out of sync.Haocheng LIUHaocheng LIUhttps://gitlab.kitware.com/cmb/smtk/-/issues/266Merge vtkLASReader from VTK::IOLAS?2019-10-15T14:35:49-04:00Ben BoeckelMerge vtkLASReader from VTK::IOLAS?VTK master now has a LAS reader as part of it. !1693 renames SMTK's copy to `vtkSMTKLASReader`, but reconciliation should be investigated.
Cc: @bob.obara @dcthompVTK master now has a LAS reader as part of it. !1693 renames SMTK's copy to `vtkSMTKLASReader`, but reconciliation should be investigated.
Cc: @bob.obara @dcthomphttps://gitlab.kitware.com/cmb/smtk/-/issues/262XML script not repeatable2019-11-06T12:04:07-05:00John TourtellottXML script not repeatableSometimes the attached script [exporttest.xml](/uploads/8dad17dbc02244f902ea28da84a7cb2f/exporttest.xml) fails to run because something in the export dialog is not repeatable. When the script fails, the export dialog has a completely dif...Sometimes the attached script [exporttest.xml](/uploads/8dad17dbc02244f902ea28da84a7cb2f/exporttest.xml) fails to run because something in the export dialog is not repeatable. When the script fails, the export dialog has a completely different set of widgets below the SimulationExportDialog; the expected next widget was recorded as "topLevelScrollArea", where as the playback seems to have a "mainSplitter" in there.
This is preventing any reliable export testing.
```
Couldn't find object `SimulationExportDialog/topLevelScrollArea/qt_scrollarea_viewport/OpViewFrame/1QFrame0/1QFrame0/1QFrame0/1QComboBox0`
Found up to `pqClientMainWindow/SimulationExportDialog`
Available widget: `pqClientMainWindow/SimulationExportDialog/QObject0`
Available widget: `pqClientMainWindow/SimulationExportDialog/gridLayout`
Available widget: `pqClientMainWindow/SimulationExportDialog/gridLayout/hboxLayout`
Available widget: `pqClientMainWindow/SimulationExportDialog/label_3`
Available widget: `pqClientMainWindow/SimulationExportDialog/Parents`
Available widget: `pqClientMainWindow/SimulationExportDialog/Parents/QStandardItemModel0`
Available widget: `pqClientMainWindow/SimulationExportDialog/NavigateBack`
Available widget: `pqClientMainWindow/SimulationExportDialog/NavigateForward`
Available widget: `pqClientMainWindow/SimulationExportDialog/NavigateUp`
Available widget: `pqClientMainWindow/SimulationExportDialog/CreateFolder`
Available widget: `pqClientMainWindow/SimulationExportDialog/ShowDetail`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/verticalLayout`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/verticalLayout/gridLayout1`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/qt_scrollarea_viewport`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/QStyledItemDelegate0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/0QHeaderView0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/0QHeaderView0/qt_scrollarea_viewport`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/0QHeaderView0/qt_scrollarea_hcontainer`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/0QHeaderView0/qt_scrollarea_hcontainer/0QScrollBar0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/0QHeaderView0/qt_scrollarea_hcontainer/QBoxLayout0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/0QHeaderView0/qt_scrollarea_vcontainer`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/0QHeaderView0/qt_scrollarea_vcontainer/0QScrollBar0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/0QHeaderView0/qt_scrollarea_vcontainer/QBoxLayout0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/0QHeaderView0/QItemSelectionModel0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/QItemSelectionModel0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/qt_scrollarea_hcontainer`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/qt_scrollarea_hcontainer/0QScrollBar0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/qt_scrollarea_hcontainer/QBoxLayout0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/qt_scrollarea_vcontainer`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/qt_scrollarea_vcontainer/0QScrollBar0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Files/qt_scrollarea_vcontainer/QBoxLayout0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/label_2`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileName`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileName/QWidgetLineControl0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/label`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/OK`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Cancel`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/Navigate`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/QStandardItemModel0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/QBoxLayout0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/0QComboBoxListView0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/0QComboBoxListView0/qt_scrollarea_viewport`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/0QComboBoxListView0/qt_scrollarea_hcontainer`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/0QComboBoxListView0/qt_scrollarea_hcontainer/0QScrollBar0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/0QComboBoxListView0/qt_scrollarea_hcontainer/QBoxLayout0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/0QComboBoxListView0/qt_scrollarea_vcontainer`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/0QComboBoxListView0/qt_scrollarea_vcontainer/0QScrollBar0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/0QComboBoxListView0/qt_scrollarea_vcontainer/QBoxLayout0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/0QComboBoxListView0/QItemSelectionModel0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/0QComboBoxListView0/QComboMenuDelegate0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/0QComboBoxPrivateScroller0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/layoutWidget/FileType/0QComboBoxPrivateContainer0/0QComboBoxPrivateScroller1`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Recent`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Recent/qt_scrollarea_viewport`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Recent/qt_scrollarea_hcontainer`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Recent/qt_scrollarea_hcontainer/0QScrollBar0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Recent/qt_scrollarea_hcontainer/QBoxLayout0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Recent/qt_scrollarea_vcontainer`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Recent/qt_scrollarea_vcontainer/0QScrollBar0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Recent/qt_scrollarea_vcontainer/QBoxLayout0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Recent/QStyledItemDelegate0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Recent/QItemSelectionModel0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Favorites`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Favorites/qt_scrollarea_viewport`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Favorites/qt_scrollarea_hcontainer`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Favorites/qt_scrollarea_hcontainer/0QScrollBar0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Favorites/qt_scrollarea_hcontainer/QBoxLayout0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Favorites/qt_scrollarea_vcontainer`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Favorites/qt_scrollarea_vcontainer/0QScrollBar0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Favorites/qt_scrollarea_vcontainer/QBoxLayout0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Favorites/QStyledItemDelegate0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/Favorites/QItemSelectionModel0`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/qt_splithandle_`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/splitter/qt_splithandle_`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/qt_splithandle_`
Available widget: `pqClientMainWindow/SimulationExportDialog/mainSplitter/qt_splithandle_`
```
For reference, my full command line is:
```
PQOBJECTNAMING_MATCH_LIMIT=0 ./bin/modelbuilder -dr --test-directory=/home/john/projects/cmb-master/build/dev-cmb/Testing/Temporary --data-directory=/home/john/projects/cmb-master/git/smtk/data --test-script=exporttest.xml
```https://gitlab.kitware.com/cmb/smtk/-/issues/261qtReferenceItemComboBox ignores own resource if it is associated to model2019-08-06T18:17:35-04:00John TourtellottqtReferenceItemComboBox ignores own resource if it is associated to modelIf you associate a model to an attribute resource, then component items referencing attributes do not display the list of attributes in the qtComponentItem widget.
To reproduce in modelbuilder:
1. Load model file, e.g., casting-mesh1.ge...If you associate a model to an attribute resource, then component items referencing attributes do not display the list of attributes in the qtComponentItem widget.
To reproduce in modelbuilder:
1. Load model file, e.g., casting-mesh1.gen
2. Load Truchas template (Truchas.sbt)
3. (Important) In the Operations panel, use the smtk::attribute::Associate operation to associate the attribute resource to the model.
4. Do the remaining steps in the Attribute Editor panel
5. In the Analysis tab, enable the Heat Transfer checkbox
6. In the Materials -> Phases tab, create a Phase attribute
7. In the Materials -> Phase Transitions tab, create a Phase Transition attribute.
8. In the Phase Transition data, the Low-Temperature phase and High-Temperature Phase items display empty combo boxes. They each should display the phase attribute created in step 6.
The underlying issue is in qtReferenceItemComboBox::associatableObjects(). If the attribute resource has associations, then only those associated resources are used.
One workaround is to associate the attribute resource with itself, but perhaps we should consider extending the component item filtering to add "self" as a resource.https://gitlab.kitware.com/cmb/smtk/-/issues/260Icon labels for write-locked resources2019-07-30T10:48:42-04:00T.J. CoronaIcon labels for write-locked resourcesSee https://gitlab.kitware.com/cmb/smtk/merge_requests/1662
Currently, a resource's icon is replaced with a lock icon when it is write-accessed by an active operation. The icon should be changed to the resource icon with a lock label in...See https://gitlab.kitware.com/cmb/smtk/merge_requests/1662
Currently, a resource's icon is replaced with a lock icon when it is write-accessed by an active operation. The icon should be changed to the resource icon with a lock label in the bottom right corner.https://gitlab.kitware.com/cmb/smtk/-/issues/251Mesh and model selection suggestions2019-07-04T15:20:47-04:00David ThompsonMesh and model selection suggestionsNow that mesh uses the same selection paradigm as model, we should provide suggestions when users pick items of one type but have set their selection filters to only allow the other type.
Specifically, the lambda in `pqSMTKSelectionFilt...Now that mesh uses the same selection paradigm as model, we should provide suggestions when users pick items of one type but have set their selection filters to only allow the other type.
Specifically, the lambda in `pqSMTKSelectionFilterBehavior::installFilter()` should
+ add mesh entities to `suggestions` when `acceptMeshes` is true but a model entity is picked and
+ add model entities (further filtered by model entity types allowed) to `suggestions` when `acceptMeshes` is false but a mesh component is picked.
See the discussion on !1624 .T.J. CoronaT.J. Coronahttps://gitlab.kitware.com/cmb/smtk/-/issues/250Investigate Moab regression for reading stl files2019-07-01T11:12:27-04:00T.J. CoronaInvestigate Moab regression for reading stl filesFor more information, see https://gitlab.kitware.com/cmb/smtk/merge_requests/1616For more information, see https://gitlab.kitware.com/cmb/smtk/merge_requests/1616https://gitlab.kitware.com/cmb/smtk/-/issues/248smtk::model::Group: fix flags to accept boundaries of dimension 12019-06-27T13:20:01-04:00T.J. Coronasmtk::model::Group: fix flags to accept boundaries of dimension 1In `smtk/model/testing/python/modelAttributes.py:137`, a group created with flag
`
flags = smtk.model.MODEL_BOUNDARY | smtk.model.DIMENSION_1
`
results in the rejection of edges being added to the group, but flag
`
flags = smtk.model....In `smtk/model/testing/python/modelAttributes.py:137`, a group created with flag
`
flags = smtk.model.MODEL_BOUNDARY | smtk.model.DIMENSION_1
`
results in the rejection of edges being added to the group, but flag
`
flags = smtk.model.EDGE
`
succeeds.
See https://gitlab.kitware.com/cmb/smtk/merge_requests/1609David ThompsonDavid Thompsonhttps://gitlab.kitware.com/cmb/smtk/-/issues/247smtk::model::Group: prune or fix broken code paths for adding entities to a g...2019-06-27T11:11:15-04:00T.J. Coronasmtk::model::Group: prune or fix broken code paths for adding entities to a groupThe method smtk::model::Resource::addToGroup() does not do the same thing as smtk::model::Group::addEntity(), and the former results in a group not having access to its entities.
See https://gitlab.kitware.com/cmb/smtk/merge_requests/16...The method smtk::model::Resource::addToGroup() does not do the same thing as smtk::model::Group::addEntity(), and the former results in a group not having access to its entities.
See https://gitlab.kitware.com/cmb/smtk/merge_requests/1609#note_589855David ThompsonDavid Thompsonhttps://gitlab.kitware.com/cmb/smtk/-/issues/238Action buttons for exporting simulations2019-06-06T18:42:24-04:00Vinay PyatiAction buttons for exporting simulationsI am using [exporter.sbt](/uploads/ba29bbe5be61549979353ae812d43d48/exporter.sbt) to export simulation attributes/write output files for an openfoam example. When I load this file in CMB 6.1 (Built on Scientific Linux 7.6), the action bu...I am using [exporter.sbt](/uploads/ba29bbe5be61549979353ae812d43d48/exporter.sbt) to export simulation attributes/write output files for an openfoam example. When I load this file in CMB 6.1 (Built on Scientific Linux 7.6), the action buttons(OK/Cancel) do not appear in the dialog. Is there something else to be added in the exporter to finish the export? Can someone please suggest a way to handle this situation?
Thanks a lot!
Here is a screenshot of the exporter.
![screenshot](/uploads/672582c465f0fc6e4c3561966ca9f893/screenshot.png)John TourtellottJohn Tourtellotthttps://gitlab.kitware.com/cmb/smtk/-/issues/235AssociationsDef can not handle Filters if model is not defined first.2019-04-08T20:31:52-04:00Haocheng LIUAssociationsDef can not handle Filters if model is not defined first.In the attribute definition of an operator, if the AssociationDef xml node does not accept a `model` filter then modelbuilder will fail to show the operator in the operation panel.
Bug reproduction:
in `smtk/session/oscillator/operators...In the attribute definition of an operator, if the AssociationDef xml node does not accept a `model` filter then modelbuilder will fail to show the operator in the operation panel.
Bug reproduction:
in `smtk/session/oscillator/operators/EditSource.sbt` just remove line 13 as
* \<Resource Name=\"smtk::session::oscillator::Resource" Filter="model"/>
Then build install smtk and launch modelbuilder. After create an oscillator model, you can no longer see the `edit source` operator in the panel.https://gitlab.kitware.com/cmb/smtk/-/issues/233Mesh session problems loading exodus & ncdf files (due to MOAB)2019-03-29T16:38:53-04:00John TourtellottMesh session problems loading exodus & ncdf files (due to MOAB)We are getting errors trying to load a number of exodus and netcdf files into mesh session. The errors are internal to MOAB. To reproduce, modify smtk/session/mesh/testing/cxx/UnitTestImportFromExodus.cxx and run the corresponding unit t...We are getting errors trying to load a number of exodus and netcdf files into mesh session. The errors are internal to MOAB. To reproduce, modify smtk/session/mesh/testing/cxx/UnitTestImportFromExodus.cxx and run the corresponding unit test:
1. On line 119, change `"/model/3d/exodus/disk_out_ref.ex2"` to any of the files listed below
2. Rebuild smtk and and run `ctest -R UnitTestImportFromExodus -VV`
```
"/model/3d/exodus/disk_out_ref.ex2" // passes but MOAB dumps error message that file is not HDF5
"/model/3d/genesis/cylinder.gen" // segfault in moab::TypeSequenceManager::is_free_sequence()
"/model/3d/netcdf/pillbox.ncdf" // Import operator fails
```
Also - modelbuilder crashes when I try to load cylinder.gen or pillbox.ncdf with a mesh session.https://gitlab.kitware.com/cmb/smtk/-/issues/217Bump nlohmann used by SMTK2019-01-16T14:50:24-05:00Haocheng LIUBump nlohmann used by SMTKDuring the development of rgg session, I ran into the following issue related to nlohmann json that [`operator T()`](https://github.com/nlohmann/json/issues/958) will cause undefined behavior.
```c++
// Right usage
Pin modifiedPin = jso...During the development of rgg session, I ran into the following issue related to nlohmann json that [`operator T()`](https://github.com/nlohmann/json/issues/958) will cause undefined behavior.
```c++
// Right usage
Pin modifiedPin = json::parse(modifiedPinString);
// Wrong usage which would lead to mysterious error. Ex. free a unallocated memory, std::string is not UTF-8 format, etc
Pin modifiedPin;
modifiedPin = json::parse(modifiedPinString);
// A simpler example
// strings
std::string s1 = "Hello, world!";
json js = s1;
auto s2 = js.get<std::string>();
// NOT RECOMMENDED(Haocheng: should be avoided)
std::string s3 = js;
std::string s4;
s4 = js;
```
It's a limitation(full description described [here](https://github.com/nlohmann/json/issues/958)) of current nlohmann json and is targeted to be fix in the 4.0.0 release.
FYI @tjcorona @dcthomphttps://gitlab.kitware.com/cmb/smtk/-/issues/214SMTK Master cannot find vtkPVClientServer / vtkPVServerManager2018-12-04T17:53:32-05:00T.J. CoronaSMTK Master cannot find vtkPVClientServer / vtkPVServerManagerDescribed [here](https://discourse.kitware.com/t/smtk-master-cannot-find-vtkpvclientserver-vtkpvservermanager/139).Described [here](https://discourse.kitware.com/t/smtk-master-cannot-find-vtkpvclientserver-vtkpvservermanager/139).https://gitlab.kitware.com/cmb/smtk/-/issues/211Operation attribute descriptions should use proper include format2018-11-20T15:09:06-05:00T.J. CoronaOperation attribute descriptions should use proper include formatCurrently, operation attribute descriptions use custom CMake code to inject xml snippets into the compiled attribute description. There is a proper channel for including .sbt files (see workflows), and we should be using this technique.Currently, operation attribute descriptions use custom CMake code to inject xml snippets into the compiled attribute description. There is a proper channel for including .sbt files (see workflows), and we should be using this technique.https://gitlab.kitware.com/cmb/smtk/-/issues/210Break sessions out of SMTK core and into plugins2019-09-20T12:20:03-04:00T.J. CoronaBreak sessions out of SMTK core and into pluginsAs more SMTK sessions and extensions are created, it is difficult to track how modifications to SMTK core will affect plugins and extensions that are not part of the SMTK project. One step towards fixing this issue is to extract non-SMTK...As more SMTK sessions and extensions are created, it is difficult to track how modifications to SMTK core will affect plugins and extensions that are not part of the SMTK project. One step towards fixing this issue is to extract non-SMTK core components out of SMTK and into separate repositories. This way, our testing of these components will be on equal footing with the testing of other out-of-core plugins/extensions.