Add tag to store array creation traceback (#284)
* Add tag to store array creation traceback * don't make it a unique tag * adds a common _get_default_tags * Change back to UniqueTag Co-authored-by: Andreas Klöckner <inform@tiker.net> * use _get_default_tags * store a tupleized StackSummary * work around mypy * more line fixes * use a class for the traceback instead of tuples * also test to_stacksummary * flake8 * Add remove_tags_of_type * test_array_dot_repr: Remove CreatedAt tags before comparing * only add CreatedAt in debug mode Co-authored-by: Andreas Klöckner <inform@tiker.net> * restructure test_created_at * make _PytatoStackSummary a dataclass * add __repr__ * fix 2 tests * illustrate test failure with construct_intestine_graph * shorten traceback printing * use separate field for CreatedAt * fix tests * fix doctest * make it a tag again * use tooltip instead of table row * force openmpi usage * check for existing CreatedAt and make it a UniqueTag again * flake8 * add simple equality test * lint fixes * add InfoTag class and filter tags based on it * fix doc * another doc fix * use IgnoredForEqualityTag * UNDO BEFORE MERGE: use external project branches * Revert "UNDO BEFORE MERGE: use external project branches" This reverts commit 71dd791b45cee918d33ac8c4cb8e9a3cf643ec37. * Revert "use IgnoredForEqualityTag" This reverts commit cd67d684d1c777bc3efef080031446e033e75f42. * rename InfoTag -> IgnoredForEqualityTag * more stringent tests * undo unnecessary test changes * Revert "Revert "use IgnoredForEqualityTag"" This reverts commit bfb22ba66d0872c3848a4ab41260f9f82ffa188d. * simplify condition * Revert "simplify condition" This reverts commit 1111b7915e23561161eee132e8d5ccb716b101eb. * bump pytools version + a few spelling fixes * remove duplicated self.axes in hash() * use Taggable{__eq__,__hash__} * add another test * add vis test * make _PytatoFrameSummary, _PytatoStackSummary undocumented * use Taggable.__hash__ for tags in Array.__hash__ * change dataclass to attrs * flake8 * Taggable.__eq__ * add Array.tagged() * restrict to DEBUG_ENABLED * force DEBUG_ENABLED for test * work around mypy/attrs issue * fix for fields * undo mypy ignores * rewrite to use a new field in Array, non_equality_tags * misc fixes * undo some unecessary changes * more misc fixes * copymapper, tests * explicitly enable/disable traceback * add hash test * undo more unnecessary changes * more lint fixes * run all examples, fix demo_distributed_node_duplication * enable CreatedAt for distributed nodes * add support for make_distributed_send_ref_holder * add to MPMSMaterializer * Get precise traceback of array creation (#480) * rename enable_traceback_tag Co-authored-by: Andreas Klöckner <inform@tiker.net> * remove update_persistent_hash * improve doc of _PytatoFrameSummary, _PytatoStackSummary * move _Pytato{Frame,Stack}Summary to tags, convert to dataclass * add AxisPermutation CreatedAt * fix doc * make _get_created_at_tag return a frozenset --------- Co-authored-by: Kaushik Kulkarni <kaushikcfd@gmail.com> Co-authored-by: Andreas Klöckner <inform@tiker.net> Co-authored-by: Matt Smith <mjsmith6@illinois.edu>