Doesn't this require that all files have an extension?  `data/*` matches everything, whereas `data/*.*` would not match `README`.  Also, this doesn't include all files recursively as described in the PR title.  For that, I don't think there's any way other than to do the search ourselves (see the silliness around .c files below).