summaryrefslogtreecommitdiff
path: root/deps/npm/man/man7/npm-disputes.7
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/man/man7/npm-disputes.7')
-rw-r--r--deps/npm/man/man7/npm-disputes.7145
1 files changed, 145 insertions, 0 deletions
diff --git a/deps/npm/man/man7/npm-disputes.7 b/deps/npm/man/man7/npm-disputes.7
new file mode 100644
index 000000000..7d074dd55
--- /dev/null
+++ b/deps/npm/man/man7/npm-disputes.7
@@ -0,0 +1,145 @@
+.\" Generated with Ronnjs 0.3.8
+.\" http://github.com/kapouer/ronnjs/
+.
+.TH "NPM\-DISPUTES" "7" "July 2013" "" ""
+.
+.SH "NAME"
+\fBnpm-disputes\fR \-\- Handling Module Name Disputes
+.
+.SH "SYNOPSIS"
+.
+.IP "1" 4
+Get the author email with \fBnpm owner ls <pkgname>\fR
+.
+.IP "2" 4
+Email the author, CC \fIi@izs\.me\fR\|\.
+.
+.IP "3" 4
+After a few weeks, if there\'s no resolution, we\'ll sort it out\.
+.
+.IP "" 0
+.
+.P
+Don\'t squat on package names\. Publish code or move out of the way\.
+.
+.SH "DESCRIPTION"
+There sometimes arise cases where a user publishes a module, and then
+later, some other user wants to use that name\. Here are some common
+ways that happens (each of these is based on actual events\.)
+.
+.IP "1" 4
+Joe writes a JavaScript module \fBfoo\fR, which is not node\-specific\.
+Joe doesn\'t use node at all\. Bob wants to use \fBfoo\fR in node, so he
+wraps it in an npm module\. Some time later, Joe starts using node,
+and wants to take over management of his program\.
+.
+.IP "2" 4
+Bob writes an npm module \fBfoo\fR, and publishes it\. Perhaps much
+later, Joe finds a bug in \fBfoo\fR, and fixes it\. He sends a pull
+request to Bob, but Bob doesn\'t have the time to deal with it,
+because he has a new job and a new baby and is focused on his new
+erlang project, and kind of not involved with node any more\. Joe
+would like to publish a new \fBfoo\fR, but can\'t, because the name is
+taken\.
+.
+.IP "3" 4
+Bob writes a 10\-line flow\-control library, and calls it \fBfoo\fR, and
+publishes it to the npm registry\. Being a simple little thing, it
+never really has to be updated\. Joe works for Foo Inc, the makers
+of the critically acclaimed and widely\-marketed \fBfoo\fR JavaScript
+toolkit framework\. They publish it to npm as \fBfoojs\fR, but people are
+routinely confused when \fBnpm install foo\fR is some different thing\.
+.
+.IP "4" 4
+Bob writes a parser for the widely\-known \fBfoo\fR file format, because
+he needs it for work\. Then, he gets a new job, and never updates the
+prototype\. Later on, Joe writes a much more complete \fBfoo\fR parser,
+but can\'t publish, because Bob\'s \fBfoo\fR is in the way\.
+.
+.IP "" 0
+.
+.P
+The validity of Joe\'s claim in each situation can be debated\. However,
+Joe\'s appropriate course of action in each case is the same\.
+.
+.IP "1" 4
+\fBnpm owner ls foo\fR\|\. This will tell Joe the email address of the
+owner (Bob)\.
+.
+.IP "2" 4
+Joe emails Bob, explaining the situation \fBas respectfully as possible\fR,
+and what he would like to do with the module name\. He adds
+isaacs \fIi@izs\.me\fR to the CC list of the email\. Mention in the email
+that Bob can run \fBnpm owner add joe foo\fR to add Joe as an owner of
+the \fBfoo\fR package\.
+.
+.IP "3" 4
+After a reasonable amount of time, if Bob has not responded, or if
+Bob and Joe can\'t come to any sort of resolution, email isaacs \fIi@izs\.me\fR and we\'ll sort it out\. ("Reasonable" is usually about 4
+weeks, but extra time is allowed around common holidays\.)
+.
+.IP "" 0
+.
+.SH "REASONING"
+In almost every case so far, the parties involved have been able to reach
+an amicable resolution without any major intervention\. Most people
+really do want to be reasonable, and are probably not even aware that
+they\'re in your way\.
+.
+.P
+Module ecosystems are most vibrant and powerful when they are as
+self\-directed as possible\. If an admin one day deletes something you
+had worked on, then that is going to make most people quite upset,
+regardless of the justification\. When humans solve their problems by
+talking to other humans with respect, everyone has the chance to end up
+feeling good about the interaction\.
+.
+.SH "EXCEPTIONS"
+Some things are not allowed, and will be removed without discussion if
+they are brought to the attention of the npm registry admins, including
+but not limited to:
+.
+.IP "1" 4
+Malware (that is, a package designed to exploit or harm the machine on
+which it is installed)\.
+.
+.IP "2" 4
+Violations of copyright or licenses (for example, cloning an
+MIT\-licensed program, and then removing or changing the copyright and
+license statement)\.
+.
+.IP "3" 4
+Illegal content\.
+.
+.IP "4" 4
+"Squatting" on a package name that you \fIplan\fR to use, but aren\'t
+actually using\. Sorry, I don\'t care how great the name is, or how
+perfect a fit it is for the thing that someday might happen\. If
+someone wants to use it today, and you\'re just taking up space with
+an empty tarball, you\'re going to be evicted\.
+.
+.IP "5" 4
+Putting empty packages in the registry\. Packages must have SOME
+functionality\. It can be silly, but it can\'t be \fInothing\fR\|\. (See
+also: squatting\.)
+.
+.IP "6" 4
+Doing weird things with the registry, like using it as your own
+personal application database or otherwise putting non\-packagey
+things into it\.
+.
+.IP "" 0
+.
+.P
+If you see bad behavior like this, please report it right away\.
+.
+.SH "SEE ALSO"
+.
+.IP "\(bu" 4
+npm help registry
+.
+.IP "\(bu" 4
+npm help owner
+.
+.IP "" 0
+