|
|
Log in / Subscribe / Register

A draft Rust trademark policy

A draft updated trademark policy for the Rust language is being circulated for comments. It is not a short read.

RS can be used freely and without permission to indicate that software or a project is derived from or based on Rust, compatible with Rust, inspired by Rust, or can be used for the same purpose as Rust. We recommend using RS instead of ‘Rust’ if you have any concerns about your use falling outside of this policy, for example, naming your crate foo-rs instead of rust-foo.

Some discussion can be found in this Reddit post.

Update: there has since been a followup note posted on the process being followed in the creation and consideration of this draft policy.

We want to thank the community for participating in this process, and for your patience as we learn the best way to navigate it. We recognize that the process and communication around it could have been better. Notably, the wider project was insufficiently included in the process. We were responsible for that and apologize.


to post comments

A draft Rust trademark policy

Posted Apr 11, 2023 15:55 UTC (Tue) by josh (subscriber, #17465) [Link] (1 responses)

Note the word "draft"; this is being worked on and is likely to be substantially updated in response to feedback.

A draft Rust trademark policy

Posted Apr 14, 2023 20:53 UTC (Fri) by bpearlmutter (subscriber, #14693) [Link]

Just saying "it's a draft" does not excuse the many issues. You're not supposed to put a draft up for comment from a wider group until you're satisfied it's basically ready to go, and are unaware of any major issues or problems. Typos or little places where it needs clarification is one thing. But this is really pretty bad, full of major major problems. And the foundation not seeing that is itself a pretty serious problem.

A draft Rust trademark policy

Posted Apr 11, 2023 16:10 UTC (Tue) by flussence (guest, #85566) [Link] (3 responses)

Several people on Reddit claim this would make custom cargo subcommands (a thing which is a normal part of the language) an outright trademark violation. There's people pointing out TRF is in violation of its own “don't recolour the logo” rule. There's prominent names in utter disbelief of what they're reading. Also they tried to trademark "Clippy"… seriously?

This isn't the sort of thing you throw out for public review, these are mistakes that belie a major ignorance of the language and its culture, being asserted with confidence. This stuff doesn't even pass the moron-in-a-hurry test (me).

A draft Rust trademark policy

Posted Apr 11, 2023 16:46 UTC (Tue) by josh (subscriber, #17465) [Link]

> Several people on Reddit claim this would make custom cargo subcommands (a thing which is a normal part of the language) an outright trademark violation.

This is a bug. Those of us who read the policy before this draft (which includes both project and foundation folks) didn't happen to catch that bug.

A draft Rust trademark policy

Posted Apr 14, 2023 20:27 UTC (Fri) by kleptog (subscriber, #1183) [Link] (1 responses)

> This isn't the sort of thing you throw out for public review, these are mistakes that belie a major ignorance of the language and its culture, being asserted with confidence. This stuff doesn't even pass the moron-in-a-hurry test (me).

Honestly, if you require everything posted for public review to never have mistakes, you'll never get anything done. It's a process run by people so of course mistakes are going to happen, the important part is they get caught before being set in stone.

Also, you don't trademark a word, you trademark a word in a particular context. I don't think there's any confusion with the Microsoft character of the same name.

A draft Rust trademark policy

Posted Apr 19, 2023 16:10 UTC (Wed) by jezuch (subscriber, #52988) [Link]

Isn't "public review" kinda synonymous with "go find bugs/mistakes"?

A draft Rust trademark policy

Posted Apr 11, 2023 16:51 UTC (Tue) by ballombe (subscriber, #9523) [Link]

tl; dr: if you want a strong trademark, do not pick a common 4-letter English word as your brand.

A draft Rust trademark policy

Posted Apr 11, 2023 18:30 UTC (Tue) by IanKelling (subscriber, #89418) [Link] (3 responses)

Maybe just post the thing here? "JavaScript isn't enabled in your browser, so this file can't be opened. Enable and reload"

A draft Rust trademark policy

Posted Apr 12, 2023 7:06 UTC (Wed) by coriordan (guest, #7544) [Link]

I was going to, but it's 16 pages long. I guess that's one of the problems. That's a lot to read for a single issue of a single project.

GPLv3 is 10 pages but it deals with multiple issues and it's a general licence used by lots of projects.

(RMS mentions the Rust trademark issue at the start of his recent talk: https://media.libreplanet.org/u/libreplanet/m/a-tour-of-malicious-software/ )

A draft Rust trademark policy

Posted Apr 13, 2023 16:54 UTC (Thu) by jwilk (subscriber, #63328) [Link] (1 responses)

A draft Rust trademark policy

Posted Apr 17, 2023 1:04 UTC (Mon) by mathstuf (subscriber, #69389) [Link]

Heh. User says JS isn't enabled and Google Docs is offered as a "better" alternative. Not sure that's the right direction here ;) .

A draft Rust trademark policy

Posted Apr 11, 2023 18:47 UTC (Tue) by jem (subscriber, #24231) [Link] (12 responses)

What does this new policy mean for alternative Rust implementations like Rust-GCC? Apparently it can't be advertised as a "Rust" compiler at all. Is the real target of the policy Rust-GCC, driven by the desire to keep Rust compiler quality under control?

A draft Rust trademark policy

Posted Apr 12, 2023 2:35 UTC (Wed) by josh (subscriber, #17465) [Link] (8 responses)

The gccrs project is in active communication with the Rust project, and this policy was not primarily targeting it, nor targeting any other specific project. gccrs is the *best case* of alternate implementations, in terms of how enthusiastically and cooperatively they're working with us.

The much bigger issue is with proprietary embrace-extend-extinguish forks (e.g. "we forked Rust to make a proprietary compiler for our microcontroller, including proprietary language extensions, here's the binary, there's no source, there will be no updates for years").

A draft Rust trademark policy

Posted Apr 12, 2023 7:25 UTC (Wed) by bpearlmutter (subscriber, #14693) [Link] (6 responses)

Well that's not a *trademark* issue, that's a *software copyright* issue. It could be solved if the rust compiler were licensed under a "copyleft" license like the GNU GPL. As it is, the rust compiler is deliberately licensed under terms that explicitly allow and even encourage people to do exactly what you apparently don't want them to.

A draft Rust trademark policy

Posted Apr 12, 2023 8:29 UTC (Wed) by Wol (subscriber, #4433) [Link] (3 responses)

> As it is, the rust compiler is deliberately licensed under terms that explicitly allow and even encourage people to do exactly what you apparently don't want them to.

I doubt that's the case at all. ANY Open Source project (and this INCLUDES FLOSS) is at risk of somebody forking the code, adding malware, and destroying the project's reputation. Rust, gcc, whatever.

And this is exactly the issue that Rust is addressing. "If you're not approved by the Rust project, you must not use the Rust name". "If you're not approved by the FSF, you can't call it gcc".

The problem is that too many armchair lawyers don't seem to understand the difference between COPYING, and PASSING OFF. There's a fair few projects out there that have been severely damaged by it. A particularly egregious case was - was it SourceForge? Some popular distribution site got taken over, and the new owners stuffed the installers full of PUPS and stuff like that. Most trademark policies now address and forbid that sort of behaviour, because people were installing Firefox, LibreOffice, stuff like that, and discovering their systems had been stuffed full of "mal"ware (in quotes, because it wasn't dangerous per se, but ruined their ability to use their computer THEIR way). I got burnt several times back in the day ... and had to rescue other people who'd been burnt ...

Do you really want to go back to those days?

Cheers,
Wol

A draft Rust trademark policy

Posted Apr 12, 2023 12:03 UTC (Wed) by bpearlmutter (subscriber, #14693) [Link] (2 responses)

Your concern was this:

> The much bigger issue is with proprietary embrace-extend-extinguish forks (e.g. "we forked Rust to make a proprietary compiler for our microcontroller, including proprietary language extensions, here's the binary, there's no source, there will be no updates for years").

There's nothing there about *calling* the resulting language "Rust". No trademark policy can prevent them from saying "we forked the Rust compiler". After all, they *did* fork Rust to make their proprietary R# compiler, and they're using the trademark to refer to the actual original trademarked thing. So this trademark policy (a) does not address this problem it purports to address, and (b) tries to prohibit uses which cannot, legally, be prohibited, which is a recipe for disaster including losing the trademark.

A draft Rust trademark policy

Posted Apr 12, 2023 13:54 UTC (Wed) by josh (subscriber, #17465) [Link] (1 responses)

You can absolutely say accurate descriptive things like "based on a fork of the Rust compiler". What you can't say is "The FooCorp Rust Compiler", or for that matter inaccurately say "FooCorp Compiler is compatible with Rust" if it isn't.

A draft Rust trademark policy

Posted Apr 13, 2023 14:26 UTC (Thu) by Wol (subscriber, #4433) [Link]

That was the forge issue. Because the forge CALLED it "LibreOffice", or "FireFox", or whatever, people thought that they were getting an officially blessed .msi, or install .exe, or whatever it was.

BUT it was the forge's own installer, full of PUPS and heaven knows what.

Never mind the legal niceties or implementation screw-ups or whatever, the purpose behind trademarks and trademark law is to ensure that people know whether what they've got is or is not officially blessed by the owner of said trademark.

(We had a bit of an issue about that sort of thing over food. The Poles threatened to sue because we wouldn't let them use the "Red Tractor" on meat they were exporting to the UK. Until it was pointed out that it was a *trademark* which guaranteed to the consumer that the meat had been bred, reared, slaughtered. packaged, and delivered to the shop ALL in the UK. Putting it on Polish meat would have been a "fraud on the consumer" that would have got the Poles in big trouble for doing it, not the Brits for telling them they couldn't.)

So as other people have said, you can't stopped people making factually correct statements like "forked from", "based upon", "a copy of", etc etc. What you CAN do is come down on people like a ton of bricks if they don't use those descriptors when they should.

Cheers,
Wol

A draft Rust trademark policy

Posted Apr 12, 2023 12:47 UTC (Wed) by khim (subscriber, #9252) [Link]

> As it is, the rust compiler is deliberately licensed under terms that explicitly allow and even encourage people to do exactly what you apparently don't want them to.

No. It's license that allows and even encourages creation of other things, not related to Rust. Which is good thing.

Trademark policy is supposed to stop one to abuse that permission to “muddle the water” and present you “better Rust” as something allowed and endorced by Rust foundation.

That's entirely different and couldn't be solved on the copyright level. Company of Microsoft size can just create a “better Rust” from scratch without reusing a single line of code from the original (that's what they did for Java, after all… result is now knows as C#).

This can not be stopped entirely and, but I think trademark policy may do things better for everyone involved (C# is better language than early J++'s we-are-better-Java attempts).

A draft Rust trademark policy

Posted Apr 12, 2023 16:50 UTC (Wed) by MarcB (subscriber, #101804) [Link]

This absolutely is a trademark issue. Copyleft would ensure that the source code is available, but this source might very well be worthless, because it might be unmergeable: bad quality, incompatible changes (in particular under the assumption that both codebases have moved on), simply uninteresting, ....

A draft Rust trademark policy

Posted Apr 20, 2023 9:11 UTC (Thu) by davidgerard (guest, #100304) [Link]

So will forks of gcc Rust under the GPL be able to call themselves "Rust", which they clearly would be, without prior permission?

And *will you sue* if they proceed without it?

A draft Rust trademark policy

Posted Apr 12, 2023 12:41 UTC (Wed) by khim (subscriber, #9252) [Link]

Sigh. Why is it so hard for the progammer to understand that law is not code?

> Is the real target of the policy Rust-GCC, driven by the desire to keep Rust compiler quality under control?

No and yes. The first thing I have looked when I read about new policy is explicit loophole. And, lo a behold, it's there: if you have a question or concern not covered here, or you would like to ask permission for a special license, please get in touch with us at trademark@rustfoundation.org.

Given the fact that gccrs is very much welcomed by most people who dealing with Rust (ranging from grudging acquiescence to enthusiastic endorsement) worst case scenario… gccrs would get “a special license”.

But other, hostile forks… yes, that's what trademark policy is supposed to stop.

A draft Rust trademark policy

Posted Apr 12, 2023 15:55 UTC (Wed) by rgmoore (✭ supporter ✭, #75) [Link] (1 responses)

They do say that it's OK to use -rs as a way of indicating Rust compatibility. I think that's why the Rust compiler for GCC is named gccrs.

A draft Rust trademark policy

Posted Apr 12, 2023 18:55 UTC (Wed) by jem (subscriber, #24231) [Link]

Yes, but Rust-gcc cannot be advertised as the "Gnu Rust compiler". Apparently, you can say "gccrs, the compiler for Rust", or "gccrs can compile software written in Rust".

Attempts to ban many kinds of fair use

Posted Apr 12, 2023 1:31 UTC (Wed) by BrucePerens (guest, #2510) [Link] (3 responses)

It's dubious that any lawyer explained fair use of trademarks to them.

Regardless of what their policy says, you can say a commercial product is written in Rust, is compatible with Rust, compiles Rust, etc.

You just can't represent the product as coming from or endorsed by the trademark holder.

That is not what the policy says at all.

Attempts to ban many kinds of fair use

Posted Apr 12, 2023 7:54 UTC (Wed) by bpearlmutter (subscriber, #14693) [Link]

Well, maybe a lawyer, but certainly not a competent one.

Attempts to ban many kinds of fair use

Posted Apr 13, 2023 18:30 UTC (Thu) by NYKevin (subscriber, #129325) [Link] (1 responses)

It's funny, because to my mind, the policy stinks of *too many* lawyers' involvement. I think the more likely problem is that the lawyers who were involved had very little familiarity with FOSS, and just wrote a standard boilerplate "we own everything and nobody can use our name" policy, like they would for a large corporation.

Attempts to ban many kinds of fair use

Posted Apr 13, 2023 20:24 UTC (Thu) by bartoc (guest, #124262) [Link]

yeah, that's my feeling too. It does bother me a little bit that nobody who read it on the rust side noticed this and corrected it, but lawyers who are good with FOSS orgs are probably not super easy to come by. This has happened a few times in the past and this tends to be the correct explanation.

A draft Rust trademark policy

Posted Apr 12, 2023 8:10 UTC (Wed) by dvrabel (subscriber, #9500) [Link] (2 responses)

I found it interesting to compare this with the policy for Python (https://www.python.org/psf/trademarks/). The Python one seems a lot less onerous for open source projects and community members.

It's also under the CC0 licence and thus the Rust Foundation could have just copied it.

A draft Rust trademark policy

Posted Apr 12, 2023 15:04 UTC (Wed) by geofft (subscriber, #59789) [Link]

Yes, this was one of my pieces of feedback - it's not clear to me why Rust needs its own custom trademark license as if Rust's needs are unique. There are other languages, of course, and there are other open-source projects that have actually had trademark disputes, and it seems like the Foundation should at least say how they've taken those into account (if they're not going to wholesale copy someone else's existing trademark policies) and explain why their situation differs.

On the language front, we've had issues with trademarks with JavaScript vs. ECMAScript (see e.g. https://tinyclouds.org/trademark). If the Foundation's goal is indeed for everyone to use "RS" instead of "Rust," they should say that, and say why.

And more generally Linux has been the target of extremely acrimonious legal battles with actual bad-faith actors, and yet their policy is much more lenient (and much shorter) than the proposed Rust one: https://www.linuxfoundation.org/legal/the-linux-mark

A draft Rust trademark policy

Posted Apr 14, 2023 4:13 UTC (Fri) by pabs (subscriber, #43278) [Link]

The Debian trademark policy is quite reasonable too:

https://www.debian.org/trademark

A draft Rust trademark policy

Posted Apr 14, 2023 4:03 UTC (Fri) by pabs (subscriber, #43278) [Link]

I wonder what this means for distro packaging of Rust and crates. There was concern in the Debian Rust chat that debcargo might violate this policy.

A draft Rust trademark policy

Posted Apr 14, 2023 4:17 UTC (Fri) by IanKelling (subscriber, #89418) [Link] (8 responses)

There are a lot of issues here worth discussing.

For software freedom, an obvious and important help would be if they documented how to rebrand the official rust software, and ideally provide a script. People should be able to freely distribute and promote modified versions without having to do some unknown and possibly large amount of work.

A draft Rust trademark policy

Posted Apr 14, 2023 4:33 UTC (Fri) by pabs (subscriber, #43278) [Link] (7 responses)

It is a very rare project indeed that separates its trademarks from the source code and makes it easy to add in unofficial branding. It really should be much more common, especially in the distros space.

A draft Rust trademark policy

Posted Apr 14, 2023 7:11 UTC (Fri) by NYKevin (subscriber, #129325) [Link] (6 responses)

Who will bell the cat? The best people to provide support for a given feature are usually the people who want to use that feature, but in this case, "that feature" is basically "the software is easy to fork." If you're making a fork, then by definition, you're not contributing your changes upstream anymore

(Yes, you can also use this feature to white-label the FOSS without actually forking it. But who wants to do that? For quite a lot of projects, the answer is "approximately nobody." Even when people want to apply a white-label, if it's for a commercial purpose, they don't necessarily benefit by contributing the functionality upstream, because that would just make things easier for their competitors.)

A draft Rust trademark policy

Posted Apr 15, 2023 3:13 UTC (Sat) by pabs (subscriber, #43278) [Link] (5 responses)

I think there are plenty of forks that send changes back upstream. For example Ubuntu is a Debian fork but they send a lot of changes back to Debian. Or Tor Browser is a Firefox fork, but they send many of their changes back upstream.

Many Linux distros (at least in the Debian derivatives space) are almost solely rebranding, default installer/live package selections and maybe a few patched packages. Most of these distros aren't commercial efforts, so making their rebases on the next Debian version easier by contributing whitelabeling features upstream is in their best interest.

A draft Rust trademark policy

Posted Apr 15, 2023 6:14 UTC (Sat) by IanKelling (subscriber, #89418) [Link] (4 responses)

Good points. And an obvious reason for Rust is that if they really want to avoid bad uses of their mark as they say they do, then explaining how to rebrand would obviously help accomplish that. They seem to have dedicated a significant amount of resources to this policy but completely neglected a totally low hanging fruit which would help accomplish their stated goal of preventing misuse. The obvious thing it suggests is that they don't actually care much about their mark being misused, but instead care about having more power for various agendas through their mark.

A draft Rust trademark policy

Posted Apr 15, 2023 11:14 UTC (Sat) by rahulsundaram (subscriber, #21946) [Link] (3 responses)

> The obvious thing it suggests is that they don't actually care much about their mark being misused, but instead care about having more power for various agendas through their mark

Language forks are extremely uncommon compared to distribution forks and distributions forks routinely send over changes upstream so the distributions have the incentives to make this rebranding easier (Fedora, Debian etc do this) but there is no real precedence for any language team making forks easier. You are jumping to conclusions unsupported by this comparison.

A draft Rust trademark policy

Posted Apr 15, 2023 17:33 UTC (Sat) by IanKelling (subscriber, #89418) [Link] (2 responses)

> You are jumping to conclusions unsupported by this comparison.

My point was not meant to be really supported by the parent post, just a related thought.

> Language forks are extremely uncommon compared to distribution forks

I dunno about that. There have been many competing python implementations, c++, etc.

I'm reminded that Debian had a minor node js fork to rename the main command from node to nodejs.

This policy seems to want the power to exclude that kind of thing:

"Using the Marks in the name of a tool for use in the Rust toolchain, a software program written in the Rust language, or a software program compatible with Rust software, will most likely require a license."

People seem to agree that this policy is very restrictive and provokes a lot of questions, my point is that there is an obvious way they could help people comply, which they are not doing.

A draft Rust trademark policy

Posted Apr 15, 2023 20:10 UTC (Sat) by rahulsundaram (subscriber, #21946) [Link] (1 responses)

> I dunno about that. There have been many competing python implementations, c++, etc.

Yep, you are just reaffirming my point here. Multiple independent implementations of languages exist but forks remain quite rare. Very different things.

> This policy seems to want the power to exclude that kind of thing:

"Using the Marks in the name of a tool for use in the Rust toolchain, a software program written in the Rust language, or a software program compatible with Rust software, will most likely require a license."

It doesn't exclude anything here. GCC-rs doesn't use the name Rust in the toolchain for example and anything that uses the trademarked name can use RS as suggested or get a trademark license. There isn't much of a reason to assume ill intend based on a draft here.

A draft Rust trademark policy

Posted Apr 15, 2023 21:02 UTC (Sat) by IanKelling (subscriber, #89418) [Link]

> Yep, you are just reaffirming my point here. Multiple independent implementations of languages exist but forks remain quite rare. Very different things.

Ok, yes, I agree that competing forks of specific toolchain programs are relatively rare.

I don't see ill intent, my previous comment was probably a bit too negative. It seems policy has become one of those issues where people seem to be piling on in a negative way. I don't expect the foundation to make everyone happy and it certainly can't respond to all comments it gets.

A draft Rust trademark policy

Posted Apr 15, 2023 21:33 UTC (Sat) by IanKelling (subscriber, #89418) [Link]

Comments on the update:

> our goal is to make a policy that is as permissive as it can be without substantially giving up our right to define what Rust is and is not in the future

That is vague. What exactly does it mean to be permissive without giving up a right to define Rust? It seems like you could say pretty much anything fits within "define what Rust is and is not in the future", so they want a maximum amount of power? Can they give an example? Rust is not a product coming out of a company, where it is natural for them to have a trademark policy of maximal control. They probably /should/ have a policy of giving up some of their rights in favor of the freedom of the community.

> We aren't lawyers and we leave the question of how to do that to them

That kind of invalidates all discussion though: we have to follow our lawyers advice, no one else. Perhaps the community at least deserves some explanation of the basic legal theories they are operating on. Perhaps there should be some willingness to incorporate outside legal opinions.

> The Foundation also cannot – and has no interest in – unilaterally adopting such a policy without the agreement and involvement of its Project Directors

I'm lost on what this substantially means. So, it is a bilateral agreement between 2 groups? And one of which, the project directors, I see no details of how that group is governed, chosen, etc. What project are they directors of? Nothing about any project directors is listed here: https://www.rust-lang.org/governance

A draft Rust trademark policy

Posted Apr 16, 2023 8:50 UTC (Sun) by cyperpunks (subscriber, #39406) [Link] (4 responses)

For sure Rust (TM) needs some protection. It's clear MS is already creating their own Rust fork (or Rust like language).
It's better to be prepared when that thing arrives.

A draft Rust trademark policy

Posted Apr 16, 2023 9:06 UTC (Sun) by jem (subscriber, #24231) [Link]

I agree. Microsoft already tried to embrace and extinguish Java. I also wouldn't want to see Turbo Rust, UCSD Rust, Borland Rust, Apple Rust, Object Rust, all incompatible with each other.

A draft Rust trademark policy

Posted Apr 16, 2023 18:55 UTC (Sun) by zdzichu (subscriber, #17118) [Link]

Microsoft already created "Rust-like" language, a bit over decade ago. They even had an experimental operating system written in it.
Here you can read a very interesting series of posts about that initiative: https://joeduffyblog.com/2015/11/03/blogging-about-midori/

A draft Rust trademark policy

Posted Apr 17, 2023 10:02 UTC (Mon) by paulj (subscriber, #341) [Link] (1 responses)

MS are doing a Java on Rust? Are there any articles with more details on this?

A draft Rust trademark policy

Posted May 3, 2023 11:40 UTC (Wed) by ssokolow (guest, #94568) [Link]

I think they're talking about the Verona research language.

A draft Rust trademark policy

Posted Apr 20, 2023 9:15 UTC (Thu) by davidgerard (guest, #100304) [Link]

Graydon Hoare also called out this policy as ill-thought-out on Reddit:
I take no issue with your history nor characterization of the good intention of all parties involved. I concur there's no conspiracy here.

But I think it is quite a stretch to say the new policy is the same as the old one, just clarified. Indeed I think the crux of everyone's complaint is the seemingly very substantial ways the two differ.

Open them up side by side -- old and new -- and look at what they each say about, specifically, package names, project names, repos or websites using the word "rust", or modified versions of the logo used for small groups or projects.

These are specifically the things people are upset about, because they all changed from "acceptable" to "prohibited" when "clarifying" the policy. And those are specifically things that everyone in the community does, and has done, for years. There are zillions of packages, projects, repos, websites and groups using the names and logo this way, as the old policy said they could. The new policy tells them all to stop.

Announcing "common practice in the community is now forbidden" is why everyone's upset. If that's not what's intended, it needs a rewrite, because that's what it says.

Declaring standard behaviour in your community is now something you'll make legal threats over seems an unforced error.

The FSF wrote about the Java problem twenty years ago.


Copyright © 2023, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds