maxcellent/javadoc.io

Add <link rel="canonical" /> tags to your documents

Opened this issue · 7 comments

Your website is publishing unauthorised copies of jOOQ Javadoc (among many others). This hurts jOOQ's SEO. Please do any of the below:

I understand that you did this in an attempt to provide a useful service for libraries that may not have published their Javadoc on any website, and perhaps, that's occasionally useful. But given that it's a 1:1 copy of real Javadoc that some products (including jOOQ, which is a commercial product) do publish and don't want hosted on your servers, you should reconsider your options here.

Perhaps have a simple form where third parties can request delisting on your website, or having a canonical URL added.

The alternatives that I have are filing a DMCA complaint, which would effectively remove your domain from search engines, but I prefer not to. I think your service can be helpful in some cases.

Hi @maxcellent. I understand you're busy. You've had the same idea in the past: #50, and probably just never got around to implementing it.

Nevertheless, to me, this is an important request. Please remove jOOQ from your website by the end of October 2022. Otherwise, I will see no other option than to file a DMCA complaint with google. But I think this is unnecessary. It should be relatively simple to maintain an exclusion list.

If you want to do this right, you should instead maintain an inclusion list, and secure the legal right to host third party content on your website. I'm positive that a lot of authors are willing to enter such an agreement with you. I am not.

For the record, this should be in your own best interest. While I have no interest in formal legal pursuits (other than DMCA takedown requests), I can't imagine these folks will think the same way:
https://javadoc.io/doc/com.oracle.database.jdbc/ojdbc11/latest/index.html

You do not have any rights to publish Oracle's entire Javadoc this way.

For the record, while this suggestion here is for a thorough solution, what I'm really asking you to do here is to remove everything from the org.jooq Maven groupId from your website, which I imagine you could implement using a quick fix, e.g. by maintaining a simple .htaccess file, if you're using Apache.

Redirection is fine. We just need a way to verify ownership. Otherwise anyone can request to redirect traffic. Also the mechanism needs to be fully automated.

How about adding a new tag in pom.xml?

<properties>
  <javadoc.io.redirect>http://url-as-you-want</javadoc.io.redirect>
</properties>

Thanks for your reply, @maxcellent.

Would you really want to ask e.g. Oracle to put a <javadoc.io.redirect> tag in their ojdbc pom.xml?

Everyone out there can create a website like yours, which copies content off creators, and then ask those creators to follow some set of rules. That doesn't scale. Sooner rather than later, every creator has 50 of those redirect tags and what not in their pom.xml.

I suggest you re-think your design if you want to do this thoroughly. You have to ask for permission first, then publish content. If you don't get permission, you don't publish the content. Creators don't have to do anything at all.

In other words, just because you don't want to do any extra work ("automation") doesn't imply that everyone else should do extra work.

Following up on my previous claim:

Nevertheless, to me, this is an important request. Please remove jOOQ from your website by the end of October 2022. Otherwise, I will see no other option than to file a DMCA complaint with google. But I think this is unnecessary. It should be relatively simple to maintain an exclusion list.

While I appreciate there might be a thorough solution that suits everyone, I'm also aware that this is harder to design. What I'm asking you to do more urgently is to remove all of jOOQ content from your website. I'm sure there's a simple solution to my request.

Is this something you can do within the next few days using any means?

The whole beauty of javadoc.io is the ability to work with anything on Maven central. I think there are only two reasonable ways to go about doing this - we could have a community maintained blocklist that simply 404s the URL or gives the user a helpful error telling them the possible causes of the product being on the blocklist - we could also possibly have a new pom.xml tag that the general public agrees on that we can propose which simply marks a project as "proprietary" or the likes, then allowing projects like this one to comply with that tag and nobody will ever need to have this conversation ever again.

EDIT: Maybe we could just do license checking, and then have people with non-standard open licenses to have the ability to submit their projects to an allowlist? We could also contribute to the allowlist based on these licenses by just reading through random projects and adding them as such, with a bot that warns us if an artifact is removed or license changes, etc.

Hi @lukaseder ,

With all due respect and gratitude for the great software you've created,

AFAIK, jOOQ's code (including Javadoc comments) is published under the Apache 2.0 license. This means, among other things:

  • jOOQ's code and Javadoc can be used for commercial purposes.
  • Derivatives of jOOQ's code and Javadoc can be created.
  • Derivatives and the original code (and Javadoc) can be distributed.
  • The original copyright must be included (which means the original copyright notice must be preserved).

You have made a request that goes beyond the terms of the Apache 2.0 license. A solution was proposed (javadoc.io.redirect tag), which you have refused, and instead, you are threatening people with the DMCA.

I believe the main misconception comes from the statement "create a website like yours, which copies content off creators". Javadoc.io has not copied any content from your website. They have used the content that you have published under a license that permits all the actions mentioned above. It is you who asks "to follow some set of rules" that goes beyond the Apache 2.0 license.

Please correct me if I'm wrong.