This is the respective issue as https://www.drupal.org/project/drupal/issues/80855 for D8, which introduced a new '#type' => 'table' form element in the core Form API (change record: https://www.drupal.org/node/1876710). It comes with built-in, optional support for TableDrag and TableSelect, and it requires no more custom plumbing for most use-cases.
Building and rendering a table required to write a custom/dedicated theme function for most tables in Drupal 7. TableSelect (bulk operations) and TableDrag (drag & drop) support had to be added and attached manually when necessary. This led to many duplicate/unnecessary theme functions, which in turn made it hard for other modules to enhance or alter a table.
This was suggested to be backported to D7, but was rejected, with the recommendation to implement it in contrib (in https://drupal.org/project/elements specifically). Someone backported the D8 version to a dedicated contrib in https://www.drupal.org/project/table_element (only 300 lines of code in a single .module file; including comments: https://git.drupalcode.org/project/table_element/-/blob/7.x-1.x/table_el...).
PS: if we decide to do this, then this d.org issue is also related, and we should create a separate meta-issue for it, to convert all tables in core to the new '#type' => 'table': https://www.drupal.org/project/drupal/issues/1876712
Recent comments
Hi Kevin I am interested assisting you developing a theme by cloning feature from existing WordPress website. Please let me know your suitable time to discuss further...
Create a theme from existing website
I've updated the Zulip link in both places I found it. No need to post again, unless you have something new to say. We'll pull together feedback from all the sources.
Backdrop CMS Core Priorities
Should we post here again, what we posted over there? Or would that unnecessarily duplicate things? The link to a Zulip thread in this initial post leads to an internal one, but there's...
Backdrop CMS Core Priorities