Make WordPress Core

Opened 9 years ago

Closed 9 years ago

#33224 closed feature request (maybelater)

Please make your JavaScript free

Reported by: kete's profile kete Owned by:
Milestone: Priority: normal
Severity: normal Version: 0.71
Component: General Keywords:
Focuses: javascript, docs Cc:

Description

Thank

you for using the GPL, one reason why it exists is to protect computer

users from malicious software. JavaScript has reach the level where it
is significant enough to be feared. To protect ourselves, we should
require JavaScript that has been licensed to run for any purpose, to be
studied, to be changed, and to be shared. Without these freedoms,
JavaScript can be malicious and stagnate with overlooked bugs or a
stubborn lack of features.

I could not use your sites because it requires running JavaScript code
that is not free software. Since a nonfree program disrespects the
user's freedom, I decided not to run it. See
http://gnu.org/philosophy/javascript-trap.html for more information, and

please make your JavaScript code free. Respectfully, Kete

Change History (6)

#1 @pento
9 years ago

  • Focuses javascript docs added
  • Keywords JavaScript free freedom nonfree user removed
  • Milestone changed from Awaiting Review to Future Release
  • Version set to 0.71

Hi @kete!

Within the WordPress world, we're very big fans of Free Software. All JavaScript written for WordPress is released under the GPL, and all external libraries we include are either released under the GPL, or a GPL-compatible license.

Adding the // @source: header is something we could potentially implement for core WordPress JS files, but I'm concerned about the embedded license text. This seems to be particularly unwieldy, and doesn't allow for instances where a site owner adds their own embedded JS to the page, which we don't have permission to state the license for.

Finally, you mentioned you weren't able to use a site, as it require JS. Could you state specifically what didn't work, on what page?

#2 @kete
9 years ago

Thanks @pento! I appreciate your enthusiasm. I'm not sure how the embedded
license works, so I asked #librejs on Freenode IRC for more information.
Yes, I was not able to use a local Wordpress site, but I started
upstream in case it was not custom JS. The local Wordpress site was
http://www.cravegreenville.com/

#3 follow-up: @pento
9 years ago

I just had a quick click through that site, it looks like the broken functionality is caused by non-WordPress JS being blocked, which is going to be tricky for us to help with.

I'll have a chat to our lawyers and get their opinion on what our options are.

Let me know if the #librejs folks have any feedback.

#4 in reply to: ↑ 3 @kete
9 years ago

Replying to pento:

I just had a quick click through that site, it looks like the broken functionality is caused by non-WordPress JS being blocked, which is going to be tricky for us to help with.

Thanks @pento, I'll ask them to license their JS with the GPL.

#5 @DrewAPicture
9 years ago

@pento Any follow-up here?

#6 @pento
9 years ago

  • Milestone Future Release deleted
  • Resolution set to maybelater
  • Status changed from new to closed

Nothing beyond my original comment - we could potentially do the // @source: header, but even that is problematic. For example, if the header is added during the build process, it can really only link to the trunk version of the file, rather than the specific version that the minified JS was built from.

There isn't a spec on exactly how to implement this, and the examples I could find from the FSF are wrong. For example, https://my.fsf.org/ has the inline license header, which is claiming all the JS in the page is Copyright (C) 2016 Free Software Foundation. (it isn't, it's being generated by Drupal) and is licensed under GPLv3+ (it isn't, Drupal is GPLv2+).

Until the FSF can figure out how to deal with these inconsistencies, I don't think it's really useful for us to change our current practices.

Note: See TracTickets for help on using tickets.