Module.info File Line Endings

Recently when creating a simple “one-off” module, I quickly discovered that the module was not being listed on Drupal’s admin/module page (and therefore couldn’t be enabled).  I checked my file names and other potential issues like version mismatches, and everything seemed correct.

Some time (and a number of google searches) later, I discovered what was preventing my module from being recognized:  incorrect line endings in the module.info file.  Essentially module.info file line endings must include LF (line feed) to be parsed correctly by Drupal. 

Depending on your operating system, editor, and file-specific settings, the three possible line endings are CR (carriage return), LF (line feed), and CRLF (both).  I checked my .info file, and sure enough, each line ended with a lone CR… altering this to either of the other choices immediately made the module appear in Drupal.