I've been digging around in the atom/apm code looking the where the function definition, or package dependency is. It gets called in
items.push(pack.description.replace(/\s+/g, ' ')) if pack.description
repository.underline is not a method (no parentheses), it's a property of the
Taking a sample response for the minimap package it appears all the
repository values for specific versions are plain strings, so the
underline property, but what?
From your sample search it looks like
.underline is used for terminal type output. Looking at the
package.json dependencies, the
colors package works in that space.
colors adds a number of properties to the string prototype, including
This is a good example of why extending prototypes can get confusing.