Skip to content

Instantly share code, notes, and snippets.

@CAD97
Last active April 10, 2023 22:52
Show Gist options
  • Save CAD97/ab97c54c183858fc43f65c788941acd0 to your computer and use it in GitHub Desktop.
Save CAD97/ab97c54c183858fc43f65c788941acd0 to your computer and use it in GitHub Desktop.
Comments on the Proposed Rust Trademark Policy

Policy draft: https://docs.google.com/document/d/1ErZlwz9bbSI43dNo-rgQdkovm2h5ycuW220mWSOAuok/edit?usp=sharing Comment form: https://docs.google.com/forms/d/e/1FAIpQLSdaM4pdWFsLJ8GHIUFIhepuq0lfTg_b0mJ-hvwPdHa4UTRaAg/viewform

(Obvious) Disclaimer: The material in these notes have not been reviewed, endorsed, or approved of by the Rust Foundation, but they have been submitted and hopefully will be reviewed. The current policy can be seen here: https://foundation.rust-lang.org/policies/logo-policy-and-media-guide/

The comment, exactly as submitted, is reproduced below:


TL;DR: The proposed policy places significant new restrictions on the use of the Rust® name which are not present in the current policy. This extension to the policy is unnecessary and presupposes that a simple mention of the Rust® Programming Language could be misconstrued as implying endorsement from the Rust® Foundation.

Disclosure: The material in this comment has not been reviewed, endorsed, or approved of by the Rust Foundation. For more information on the Rust Foundation Trademark Policy, see https://foundation.rust-lang.org/policies/logo-policy-and-media-guide/.

Plain English and FAQ:

  • The desire for "the word Rust in a crate name to imply ownership by the Project" is overreaching. The existing policy states that "Stating accurately that software is written in the Rust programming language, that it is compatible with the Rust programming language, or that it contains the Rust programming language, is allowed. In those cases, you may use the Rust trademarks to indicate this, without prior approval. This is true both for non-commercial and commercial uses." Crates such as tree-sitter-rust, rust-to-npm, rust_info, etc. are only using the trademark to refer to the fact they are for the Rust® language, and should be allowed. (And I believe it's always allowed as part of US trademark law.) A preference for foo-rs as a suffix for "foo but rust" is already present; trying to push it as part of the trademark policy is both unnecessary and unreasonable.
  • If the indication that a project is not Rust® Foundation affiliated is considered so important that you would forbid the usage of the Rust® trademark in books/papers/blogs/articles ("You can use the Rust name in book and article titles, and the Logo in illustrations within the work, as long as the use does not suggest that the Rust® Foundation has published, endorsed, or agrees with your work. We require this to be stated up front (i.e. before the first paragraph or page of your work) in a clear and dedicated space.") then the Rust® Foundation should have a separate logo from that of the Rust® Programming Language, such that when referring to the Rust® Programming Language there is less risk of implying affiliation with the Rust® Foundation.
  • By a strict interpretation, that requirement would forbid the publishing of any material casually mentioning the Rust® Programming Language unless they place a conspicuous disclaimer before any content. For academic papers, this would mean as part of/before the abstract, which is likely not allowed. Typical practice for trademarks is to have a line in legal along the lines of "X, Y, Z are trademarks of Legal Entity. Other trademarks, copyrights, and logos are property of their respective owners." If this policy is a must, it should not require the disclaimer to be "stated up front (i.e. before the first paragraph or page of your work) in a clear and dedicated space" but instead to be "stated alongside other copyright/trademark information in a clear and evident way typical for the medium of publication (e.g. on the copyright page of a book, in the affiliations listing of an academic paper, or on the legal information page of a website which is accessible from any page using the trademarks)." If deemed necessary, it would be acceptable to add the requirement that "This disclaimer must be no less conspicuous than any other similar disclaimer," but not to place the requirement that it be placed "up front" if "up front" is not the typical location for such disclaimers in the used medium.
  • Are the Rust® Foundation going to require that the standard library documentation include the disclaimer that its content is not reviewed, endorsed, or approved of by the Rust® Foundation? Because it's not, and expecting/requiring every bit of user-facing content of the Rust® Project to be reviewed by the Rust® Foundation is absurd.
  • Similarly, the existing policy states that "Using the Rust trademarks in the names of non-commercial products like RustPostgres or Rustymine, or in the name of code repositories in e.g. GitHub, is allowed when referring to use with or suitability for the Rust programming language. Such uses may also include the Rust logo, even in modified form." The proposed FAQ states that "Can I use ‘Rust’ as part of the name for my project/product/initiative etc in reference to the Rust language? Generally no - it is not permitted to use the Rust name or Logo as part of your own [...] product name or service name." The use of the name of the Rust® Programming Language to indicate that an Open Source® project in some way relates to the Rust® Programming Language should not be verboten. Mininimally, if the Rust® Foundation is set on restricting the use of the Rust® name trademark in the name of projects, then there should be an exception provided to any project which is Open Source® as defined by the Open Source Initiative® and licensed for use under an Open Source Approved License®. The restriction from using the Rust® trademark as part of another trademark is justified and exists in the current policy. This restriction should be sufficient to discourage any project with intent to become notable enough to register a trademark from using the Rust® trademark.
  • The current policy allows the use of a modified version of the Rust® logo for non-commercial projects (quoted earlier). The proposed removal of this permission ("In general, we prohibit the modification of the Rust logo for any purpose, except to scale it.") is unnecessary; it should be sufficient to require that any modified logos are also used in agreement with the Policy. At a bare minimum, an allowance should be made for the common usage of the Rust® Logo's sprocket to surround different content to represent visually that an Open Source® project is in/about Rust®.
  • If the intent of any of the Plain English restrictions are meant to apply to the logo trademarks but not the word trademarks, this should be stated significantly more explicitly. For clarity, the capitalized items (i.e. Rust Word, Rust Logo, Rust Trademark, Rust Marks) should be clearly defined before their usage in the FAQs.
  • Similarly, it is not evident whether this policy is intended to cover the Cargo™ name and logo trademarks, or if those would be covered by a separate policy. If this policy covers the Cargo™ name wordmark, that's significantly more disruptive, as now any cargo-subcommand needs to acquire permission from the Rust® Foundation to use the Cargo™ trademark in the name of their project, rather than simply being able to use the name for the purpose of integration with the tool.

Full Policy: (IANAL)

  • The Cargo™ Logo is not listed as a covered logo, despite being covered by the current policy.
  • There are formatting issues (e.g. a markdown style header in §3.1) which I am ignoring.
  • §4.1.2 makes it clear that the use of Word Marks (but not the Logos) may be used to truthfully indicate the use of the Rust® Programming Language, and that the restriction placed on the use of the Word Marks in materials (books, articles, blogs, videos, etc.) refers just to the use in the title/cover/equivalent, not the text. This should be made immediately evident in the FAQ, e.g. by making the existing FAQ entry specifically refer to usage in the title, and by placing a second FAQ entry directly following regarding usage in the body text.
  • §4.1.4 reserves the term "Rust compiler" to mean exclusively rustc and related tooling. If the Rust® Programming Language gets a specification, conformance should confer some weakening of this policy to allow "a Rust compiler" or "the Dungeness Rust Compiler" but not "the Rust compiler." Even if formal material is required to instead say "a compiler for the Rust® Programming Language," this will be shortened informally to just "a Rust compiler." Just as an example, gccrs, the GCC Front-End for Rust, describes itself as an "Alternative Rust Compiler for GCC" on its webpage, but just says "GCC Rust" in its GitHub® README, which would at least be a violation of §4.1.3 since it is possible to consider "GCC Rust" a single trademark rather than the concatenation of two unrelated trademarks.
  • As discussed previously, I object to the broad application of the restriction of §4.3.1.
  • §5.1's description of non-infringing usage is much more permissive than the FAQ makes the rules out to be. Suggestion: make it immediately obvious that the use of the Word Marks is acceptable as part of websites and other publications so long as it does not suggest affiliation to the Rust® Foundation, and that the presentation of the example disclaimer is sufficient but not necessary to indicate this lack of affiliation.
  • §5.2.1's requirement to "formally adopt and enforce a robust Code of Conduct appropriate to your specific User Group" is likely too weak, as it does not define what makes a Code of Conduct "robust." This should likely reference the Rust® Code of Conduct and require that any User Group using the Rust® Word Marks as part of their name to abide by it. Suggested wording: append "and which does not permit conduct which is forbidden by the Rust Code of Conduct." The Rust CoC is informal and somewhat vague; it is acceptable for the requirement that derived User Groups abide by it also be, but it should be present for them to use the Rust® name, if there are any restrictions beyond that the Word Mark is accurately relevant to the focus of the group.
  • §5.3.1 forbids the use of the Rust® Word mark without permission in the name of events; the current policy explicitly allows this without approval for free events. ("Using the Rust trademarks (even in modified form) for social events like meetups, tutorials, and the like is allowed for events that are free to attend.") It should continue to not require permission if the event does not charge in any way for attendance and meets the other minimum requirements. The requirement for non-profit-making events which do charge in some way is reasonable. I would consider a full blanket ban on permission without inquiry for charging for any affiliated purpose and a hard monetary limit on event affiliated spending/funding reasonable. The goal is that if a licensed Rust® User Group has an informal "Rust User Group Meetup" with minimal spend (e.g. just showing up and hanging out in a public space and each individual paying for their own food, if available) to also be licensed without further permission.
  • §6.1 provides a notice different from the one provided in the FAQ, and states that the notice should be "at the foot of the page where you have used the Mark (or, if in a book, on the credits page)," whereas the FAQ states that it should be "stated up front (i.e. before the first paragraph or page of your work)." This is a contradiction, and my earlier suggestion to state "in a way typical to the medium" in the FAQ seems even more relevant.
  • §7.2.1: The incorrect usage of "RUST" instead of "Rust" is unfortunately common. I would suggest using that as an example for the use of correct capitalization/spelling specifically because it's a common incorrect usage, unlike "Car-GO!" which is pretty clearly meant as a fun example.
  • §7.2.1: "Always use a trademark as an adjective modifying a noun" seems to imply that using the trademark as a noun directly is improper. I agree "This is a Cargo" is improper usage, but "This is Cargo" is proper usage. People don't say "the Cargo package manager," they just say "Cargo." The Cargo Book starts with "Cargo is the Rust package manager." It may be correct trademark law, and the word is only protected in its use as an adjective of the domain its trademarked for, but trademarks are not always exclusively adjectives. Even The LEGO Group®, used as an example because of the common improper pluralization of "LEGOs" instead of "LEGO pieces," uses "Lego" as a collective noun (e.g. "building with LEGO") in official materials and not exclusively as an adjective.
  • §7.2.1: The rewording to remove possesive didn't actually remove the possesive; the reworded sentence should read "The Cargo desktop interface is very clean." (Removing the 's.)
  • §7.2.2: I'm used to seeing "As an exception," and not "However," in legal text. Actual lawyers' opinions obviously overrule me there.
  • §7.2: The introductory sentence would probably read better along the lines of "These rules are not specific to the use of our Marks, but describe proper usage of all trademarks, so ..." to make the fact that these rules are not specific restrictions on the use of the Rust® Trademarks.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment