file_entity update means views now checks for public: in their uri? Since a recent update, I think Views must have changed the way it links in relationships to file fields.

Now the SQL includes a WHERE clause like this:

EXISTS (
  SELECT fm_access.fid AS fid
  FROM file_managed fm_access
  WHERE ( (fm_access.uri LIKE 'public%' ESCAPE '\\') ) AND
  (file_managed_field_data_field_file_private.fid = fm_access.fid) )


Now the files that are linked here are actually private, so this clause means my view now returns nothing.

Why is Views adding this bit, and how can I stop it from doing so?
File entity adds a tag to Views' queries called query_file_access.

This checks to see if a user has view private files privilege, and if not it denies access to any private files.

So you can get this view working again by granting this privilege to that user.

I find the privilege confusing because I do not want grant access to all files to this user, and the privilege screen warns that this has security implications.

I believe it's ok as long as the node access checks are done.