npm-shrinkwrap

Jaka jest różnica między npm-shrinkwrap.json i package-lock.json?

Wraz z wydaniem npm@5, będzie teraz pisać package-lock.json, chyba że npm-shrinkwrap.json już istnieje. Zainstalowałem npm@5 ... package-lock.json. Dlaczego jednak istnieje nowy format? Co package-lock.json może zrobić, że npm-shrinkwrap.json nie może?