soldair / node-walkdir

Walk a directory tree emitting events based on the contents. API compatable with node-findit. Walk a tree of any depth. Fast! Handles permission errors. Stoppable. windows support. Pull requests are awesome. watchers are appreciated.
MIT License
130 stars 22 forks source link

Use a Standard-Compliant License Identifier #21

Closed kemitchell closed 9 years ago

kemitchell commented 9 years ago

This pull request changes the value of the license property in package.json to a standard, machine-readable SPDX license identifier.

I'll be honest: This is a semi-automated pull request. I started by using dat and dat-npm to review metadata for all packages on npm, looking for packages that don't use a valid SPDX license identifier in package.json. I used my own npm module, spdx-correct to guess what license you were after: "MIT". A quick manual check and a few shell scripts later, and this pull request was born.

npm doesn't require that you use a valid SPDX identifier, but it's strongly recommended. (Try npm help 7 package.json and search for “License”.) Other source code package managers, like Maven for Java and RubyGems for Ruby, recommend the same.

Why care about SPDX? A machine-readable standard makes it possible for programs, rather than just people, to review a module or even an entire codebase to make sure that licenses are compatible. Whatever the reason—strong personal conviction, company policy, terms of a business deal—SPDX makes it easier to collaborate with others when licenses can be a problem, and helps take open-source software to more places. Given that npm has a ton of modules but also handles dependencies in a novel way, I think a little license hygiene could help npm build amazing new relationships between communities that lawyers have long kept apart.

Though this PR was semi-automated, my responses to any questions you have won't be. I can't give legal advice via GitHub, but I'm happy to answer questions about SPDX or point you to good resources.

Thanks for your contribution to open-source software!

K