[Breaking Change] Changed how take, show, collect behave for MatrixTable column and entry expressions


#1

As of commit 766b0d659a77, we’ve changed the behavior of take, collect, and show on column and entry expressions from MatrixTables. There’s been no change to row expressions because they are always sorted.

Example:
Suppose there’s a matrix table mt with 4 columns keyed by column field s with values ["Bob", "Alice", "Dave", "Carol"]. Before, calling mt.s.collect() would result in ['Alice', 'Bob', 'Carol', 'Dave']. Now, the new behavior is the order of the result is the same as the order in the original matrix table. So now mt.s.collect() would result in ['Bob', 'Alice', 'Dave', 'Carol']. However, mt.cols().s.collect() would result in ['Alice', 'Bob', 'Carol', 'Dave'] because the table is sorted by the row key s after converting from MatrixTable to Table. The same applies for entry expressions!