summaryrefslogtreecommitdiff
path: root/deps/npm/html/doc/misc/npm-disputes.html
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/html/doc/misc/npm-disputes.html')
-rw-r--r--deps/npm/html/doc/misc/npm-disputes.html168
1 files changed, 95 insertions, 73 deletions
diff --git a/deps/npm/html/doc/misc/npm-disputes.html b/deps/npm/html/doc/misc/npm-disputes.html
index 69a49b6e74..3db7ef27db 100644
--- a/deps/npm/html/doc/misc/npm-disputes.html
+++ b/deps/npm/html/doc/misc/npm-disputes.html
@@ -10,91 +10,113 @@
<div id="wrapper">
<h1><a href="../misc/npm-disputes.html">npm-disputes</a></h1> <p>Handling Module Name Disputes</p>
-<h2 id="synopsis">SYNOPSIS</h2>
+<p>This document describes the steps that you should take to resolve module name
+disputes with other npm publishers. It also describes special steps you should
+take about names you think infringe your trademarks.</p>
+<p>This document is a clarification of the acceptable behavior outlined in the
+<a href="https://www.npmjs.com/policies/conduct">npm Code of Conduct</a>, and nothing in
+this document should be interpreted to contradict any aspect of the npm Code of
+Conduct.</p>
+<h2 id="tl-dr">TL;DR</h2>
<ol>
<li>Get the author email with <code>npm owner ls &lt;pkgname&gt;</code></li>
-<li>Email the author, CC <a href="&#x6d;&#x61;&#105;&#x6c;&#116;&#x6f;&#x3a;&#115;&#117;&#112;&#x70;&#x6f;&#114;&#116;&#64;&#110;&#112;&#109;&#x6a;&#115;&#46;&#99;&#x6f;&#109;">&#115;&#117;&#112;&#x70;&#x6f;&#114;&#116;&#64;&#110;&#112;&#109;&#x6a;&#115;&#46;&#99;&#x6f;&#109;</a></li>
+<li>Email the author, CC <a href="&#x6d;&#97;&#105;&#x6c;&#116;&#x6f;&#58;&#x73;&#117;&#112;&#x70;&#111;&#114;&#116;&#x40;&#110;&#x70;&#x6d;&#x6a;&#x73;&#46;&#x63;&#111;&#109;">&#x73;&#117;&#112;&#x70;&#111;&#114;&#116;&#x40;&#110;&#x70;&#x6d;&#x6a;&#x73;&#46;&#x63;&#111;&#109;</a></li>
<li>After a few weeks, if there&#39;s no resolution, we&#39;ll sort it out.</li>
</ol>
<p>Don&#39;t squat on package names. Publish code or move out of the way.</p>
<h2 id="description">DESCRIPTION</h2>
-<p>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.)</p>
+<p>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.)</p>
<ol>
-<li>Joe writes a JavaScript module <code>foo</code>, which is not node-specific.
-Joe doesn&#39;t use node at all. Bob wants to use <code>foo</code> 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.</li>
-<li>Bob writes an npm module <code>foo</code>, and publishes it. Perhaps much
-later, Joe finds a bug in <code>foo</code>, and fixes it. He sends a pull
-request to Bob, but Bob doesn&#39;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 <code>foo</code>, but can&#39;t, because the name is
-taken.</li>
-<li>Bob writes a 10-line flow-control library, and calls it <code>foo</code>, 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 <code>foo</code> JavaScript
-toolkit framework. They publish it to npm as <code>foojs</code>, but people are
-routinely confused when <code>npm install foo</code> is some different thing.</li>
-<li>Bob writes a parser for the widely-known <code>foo</code> 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 <code>foo</code> parser,
-but can&#39;t publish, because Bob&#39;s <code>foo</code> is in the way.</li>
-</ol>
-<p>The validity of Joe&#39;s claim in each situation can be debated. However,
-Joe&#39;s appropriate course of action in each case is the same.</p>
-<ol>
-<li><code>npm owner ls foo</code>. This will tell Joe the email address of the
-owner (Bob).</li>
-<li>Joe emails Bob, explaining the situation <strong>as respectfully as
-possible</strong>, and what he would like to do with the module name. He
-adds the npm support staff <a href="&#109;&#x61;&#105;&#x6c;&#116;&#111;&#58;&#115;&#x75;&#112;&#x70;&#x6f;&#114;&#x74;&#64;&#110;&#112;&#x6d;&#106;&#115;&#46;&#99;&#x6f;&#x6d;">&#115;&#x75;&#112;&#x70;&#x6f;&#114;&#x74;&#64;&#110;&#112;&#x6d;&#106;&#115;&#46;&#99;&#x6f;&#x6d;</a> to the CC list of
-the email. Mention in the email that Bob can run <code>npm owner add
-joe foo</code> to add Joe as an owner of the <code>foo</code> package.</li>
-<li>After a reasonable amount of time, if Bob has not responded, or if
-Bob and Joe can&#39;t come to any sort of resolution, email support
-<a href="&#109;&#97;&#105;&#x6c;&#116;&#x6f;&#x3a;&#x73;&#117;&#112;&#x70;&#x6f;&#x72;&#116;&#x40;&#x6e;&#x70;&#x6d;&#x6a;&#x73;&#46;&#99;&#111;&#109;">&#x73;&#117;&#112;&#x70;&#x6f;&#x72;&#116;&#x40;&#x6e;&#x70;&#x6d;&#x6a;&#x73;&#46;&#99;&#111;&#109;</a> and we&#39;ll sort it out. (&quot;Reasonable&quot; is
-usually at least 4 weeks, but extra time is allowed around common
-holidays.)</li>
+<li>Alice writes a JavaScript module <code>foo</code>, which is not node-specific. Alice
+doesn&#39;t use node at all. Yusuf wants to use <code>foo</code> in node, so he wraps it in
+an npm module. Some time later, Alice starts using node, and wants to take
+over management of her program.</li>
+<li>Yusuf writes an npm module <code>foo</code>, and publishes it. Perhaps much later, Alice
+finds a bug in <code>foo</code>, and fixes it. She sends a pull request to Yusuf, but
+Yusuf doesn&#39;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. Alice would like to publish a new <code>foo</code>, but can&#39;t,
+because the name is taken.</li>
+<li>Yusuf writes a 10-line flow-control library, and calls it <code>foo</code>, and
+publishes it to the npm registry. Being a simple little thing, it never
+really has to be updated. Alice works for Foo Inc, the makers of the
+critically acclaimed and widely-marketed <code>foo</code> JavaScript toolkit framework.
+They publish it to npm as <code>foojs</code>, but people are routinely confused when
+<code>npm install</code>foo`` is some different thing.</li>
+<li><p>Yusuf writes a parser for the widely-known <code>foo</code> file format, because he
+needs it for work. Then, he gets a new job, and never updates the prototype.
+Later on, Alice writes a much more complete <code>foo</code> parser, but can&#39;t publish,
+because Yusuf&#39;s <code>foo</code> is in the way.</p>
+</li>
+<li><p><code>npm owner ls foo</code>. This will tell Alice the email address of the owner
+(Yusuf).</p>
+</li>
+<li>Alice emails Yusuf, explaining the situation <strong>as respectfully as possible</strong>,
+and what she would like to do with the module name. She adds the npm support
+staff <a href="&#x6d;&#x61;&#x69;&#108;&#116;&#111;&#58;&#115;&#x75;&#x70;&#x70;&#x6f;&#x72;&#x74;&#x40;&#110;&#x70;&#x6d;&#x6a;&#x73;&#x2e;&#x63;&#111;&#x6d;">&#115;&#x75;&#x70;&#x70;&#x6f;&#x72;&#x74;&#x40;&#110;&#x70;&#x6d;&#x6a;&#x73;&#x2e;&#x63;&#111;&#x6d;</a> to the CC list of the email. Mention in the email
+that Yusuf can run npm owner <code>add alice foo</code> to add Alice as an owner of the
+foo package.</li>
+<li>After a reasonable amount of time, if Yusuf has not responded, or if Yusuf
+and Alice can&#39;t come to any sort of resolution, email support
+<a href="&#109;&#97;&#x69;&#108;&#116;&#x6f;&#58;&#115;&#x75;&#112;&#112;&#x6f;&#x72;&#x74;&#64;&#x6e;&#x70;&#109;&#106;&#x73;&#46;&#x63;&#x6f;&#109;">&#115;&#x75;&#112;&#112;&#x6f;&#x72;&#x74;&#64;&#x6e;&#x70;&#109;&#106;&#x73;&#46;&#x63;&#x6f;&#109;</a> and we&#39;ll sort it out. (&quot;Reasonable&quot; is usually at least
+4 weeks.)</li>
</ol>
<h2 id="reasoning">REASONING</h2>
-<p>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&#39;re in your way.</p>
-<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.</p>
+<p>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&#39;re in your way.</p>
+<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.</p>
<h2 id="exceptions">EXCEPTIONS</h2>
-<p>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:</p>
+<p>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:</p>
<ol>
-<li>Malware (that is, a package designed to exploit or harm the machine on
-which it is installed).</li>
-<li>Violations of copyright or licenses (for example, cloning an
-MIT-licensed program, and then removing or changing the copyright and
-license statement).</li>
+<li>Malware (that is, a package designed to exploit or harm the machine on which
+it is installed).</li>
+<li>Violations of copyright or licenses (for example, cloning an MIT-licensed
+program, and then removing or changing the copyright and license statement).</li>
<li>Illegal content.</li>
-<li>&quot;Squatting&quot; on a package name that you <em>plan</em> to use, but aren&#39;t
-actually using. Sorry, I don&#39;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&#39;re just taking up space with
-an empty tarball, you&#39;re going to be evicted.</li>
-<li>Putting empty packages in the registry. Packages must have SOME
-functionality. It can be silly, but it can&#39;t be <em>nothing</em>. (See
-also: squatting.)</li>
-<li>Doing weird things with the registry, like using it as your own
-personal application database or otherwise putting non-packagey
-things into it.</li>
+<li>&quot;Squatting&quot; on a package name that you plan to use, but aren&#39;t actually
+using. Sorry, I don&#39;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&#39;re just taking up space with an empty tarball, you&#39;re going to be
+evicted.</li>
+<li>Putting empty packages in the registry. Packages must have SOME
+functionality. It can be silly, but it can&#39;t be nothing. (See also:
+squatting.)</li>
+<li>Doing weird things with the registry, like using it as your own personal
+application database or otherwise putting non-packagey things into it.</li>
+<li>Other things forbidden by the npm
+<a href="https://www.npmjs.com/policies/conduct">Code of Conduct</a> such as hateful
+language, pornographic content, or harassment.</li>
</ol>
-<p>If you see bad behavior like this, please report it right away.</p>
+<p>If you see bad behavior like this, please report it to <a href="&#x6d;&#x61;&#105;&#x6c;&#x74;&#x6f;&#58;&#97;&#98;&#117;&#115;&#x65;&#x40;&#110;&#112;&#109;&#106;&#x73;&#x2e;&#99;&#111;&#x6d;">&#97;&#98;&#117;&#115;&#x65;&#x40;&#110;&#112;&#109;&#106;&#x73;&#x2e;&#99;&#111;&#x6d;</a> right
+away. <strong>You are never expected to resolve abusive behavior on your own. We are
+here to help.</strong></p>
+<h2 id="trademarks">TRADEMARKS</h2>
+<p>If you think another npm publisher is infringing your trademark, such as by
+using a confusingly similar package name, email <a href="&#109;&#x61;&#105;&#108;&#116;&#x6f;&#x3a;&#97;&#98;&#x75;&#x73;&#x65;&#x40;&#110;&#x70;&#x6d;&#106;&#x73;&#46;&#99;&#111;&#109;">&#97;&#98;&#x75;&#x73;&#x65;&#x40;&#110;&#x70;&#x6d;&#106;&#x73;&#46;&#99;&#111;&#109;</a> with a link to
+the package or user account on <a href="https://npmjs.com">https://npmjs.com</a>. Attach a
+copy of your trademark registration certificate.</p>
+<p>If we see that the package&#39;s publisher is intentionally misleading others by
+misusing your registered mark without permission, we will transfer the package
+name to you. Otherwise, we will contact the package publisher and ask them to
+clear up any confusion with changes to their package&#39;s <code><a href="../../doc/README.html">README</a></code> file or
+metadata.</p>
+<h2 id="changes">CHANGES</h2>
+<p>This is a living document and may be updated from time to time. Please refer to
+the <a href="https://github.com/npm/npm/commits/master/doc/misc/npm-disputes.md">git history for this document</a>
+to view the changes.</p>
+<h2 id="license">LICENSE</h2>
+<p>Copyright (C) npm, Inc., All rights reserved</p>
+<p>This document may be reused under a Creative Commons Attribution-ShareAlike
+License.</p>
<h2 id="see-also">SEE ALSO</h2>
<ul>
<li><a href="../misc/npm-registry.html">npm-registry(7)</a></li>
@@ -112,5 +134,5 @@ things into it.</li>
<tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6>&nbsp;</td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)">&nbsp;</td></tr>
<tr><td colspan=5 style="width:50px;height:10px;background:#fff">&nbsp;</td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4>&nbsp;</td><td style="width:90px;height:10px;background:#fff" colspan=9>&nbsp;</td></tr>
</table>
-<p id="footer">npm-disputes &mdash; npm@3.10.10</p>
+<p id="footer">npm-disputes &mdash; npm@4.0.5</p>