How to replace username with email address in users table

It seems that the username column content is hardcoded in single_row() of WP_Users_List_Table and there isn’t a filter you can use to change it.

A hacky way is to enqueue some javascript on the users view and have the script change the content.

Or take the rocky road by duplicating the code that handles the row actions in single_row(), and replace the default column with a custom one showing the email and the actions.

Or just brute force the email as the username with wp_pre_insert_user_data filter.