I noticed that the "Packaging Basics" section in the Emacs Lisp manual suggests that version numbers in `Package-Requires' headers are optional, however the explanation of `Package-Requires' makes it clear that the version specifier is necessary and testing confirms this. The values `foo', `(foo)' and `((foo))' all cause an error to be signaled by `package-buffer-info'. This seems to me that there is no "possibly" about it. It's only a tiny change and I hope it's OK. I have tried to follow the guidelines found in the Emacs manual about sending patches, I didn't find any reference about diffs of multiple files, so I hope it's OK to send the diffs separately.