In linkify, the lookahead assertion for a non-alphanumeric character, (?=\W), was causing URLs at the end of a string, like ^http://example.com$, to match http://example rather than http://example.com while ^http://example.com/$ and ^http://example.com\n$ worked fine. Discovered in user statement.