Bug 1028819

Summary: missing python-foo requires for pate plugins
Product: [Fedora] Fedora Reporter: T.C. Hollingsworth <tchollingsworth>
Component: kateAssignee: Than Ngo <than>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 22CC: flying-sheep, jgrulich, jreznik, kevin, rdieter, rnovacek, than
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-07-19 10:34:42 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1028818    
Bug Blocks:    

Description T.C. Hollingsworth 2013-11-10 23:40:49 UTC
I'm sorry, I should have mentioned this before you enabled pate in the kate RPM.  :-(

For all the pate plugins to work properly, the following Requires are needed:

For "python_utils":
python-pep8
pyflakes

For "python_autocomplete":
python-pyplete (review pending)

For "python_console_ipython":
python-ipython

Additionally, "js_utils" needs python-jslint, but that uses Douglas Crockford's JSLint, which is licensed under the "evil" JSON license.  It contains a facility to automatically download JSLint, which may be acceptable in Fedora pending the outcome of FPC ticket #362.  I'll revisit it then, but in the meantime, pate gives instructions on how to install it manually for people who want to use it.

Comment 1 Kevin Kofler 2013-11-13 01:33:28 UTC
> Additionally, "js_utils" needs python-jslint, but that uses Douglas Crockford's
> JSLint, which is licensed under the "evil" JSON license.  It contains a
> facility to automatically download JSLint, which may be acceptable in Fedora
> pending the outcome of FPC ticket #362.  I'll revisit it then, but in the
> meantime, pate gives instructions on how to install it manually for people who
> want to use it.

Yuck! Non-free dependencies really suck. I think in Fedora we'll want to simply rip JSLint support out of js_utils. (The "check with JSLint" action is just one of the tools it offers.)

Some alternatives for upstream to look into (which I think are all acceptably licensed, but I have only checked the claimed license, not audited every single source file and dependencies):
https://developers.google.com/closure/compiler/ (does static analysis as part of compiling)
http://www.javascriptlint.com/ (not the same as JSLint)
https://github.com/berke/jsure
http://www.brics.dk/TAJS/
http://pear.php.net/package/PHP_CodeSniffer (Yes, this also supports JS.)

Comment 2 T.C. Hollingsworth 2013-12-03 08:04:01 UTC
Just as a heads up, they went and bundled jshint in what is to become 4.12.  :-(

This is derivative of jslint, and thus is partially covered by the evil clause in the JSON license, even if the rest of the code is under the normal MIT.  So you might want to make sure addons/kate/pate/src/plugins/js_utils/jshint.js is nuked from orbit in your 4.12 packaging.

Also reported upstream cause I'm pretty sure it's not kosher with KDE's licensing policies either:
http://lists.kde.org/?l=kwrite-devel&m=138603137117426&w=2

Comment 3 Kevin Kofler 2013-12-03 10:44:50 UTC
WTF?! Yes, this is a blatant violation of KDE's licensing policies and also means we cannot ship unmodified Kate tarballs at all! (Is this already the case in 4.11.97? If so, we need to fix Rawhide immediately, and import a fixed tarball.)

We should also point upstream to my list from comment #1.

Comment 4 Kevin Kofler 2013-12-03 10:47:41 UTC
I checked, jshint.js was added only in master, i.e. what is to become 4.13. Still, it needs to go away from there immediately.

Comment 5 Phil Schaf 2013-12-04 10:54:40 UTC
heads up for everyone not participating in the kwrite-devel mailing list:

it was my “fault” for bundling it, however i only pointed out the problem, i didn’t create it.

because a current optional dependency, claiming to be BSD-licensed (pyjslint) downloads and runs the nonfree code – that means everyone using pyjslint up until now unknowingly also used nonfree code.

we’re on it – maybe the crockford-free master branch of JSHint (no longer any derived code) is a solution!

Comment 6 Jaroslav Reznik 2015-03-03 15:11:58 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 22 development cycle.
Changing version to '22'.

More information and reason for this action is here:
https://fedoraproject.org/wiki/Fedora_Program_Management/HouseKeeping/Fedora22

Comment 7 Fedora End Of Life 2016-07-19 10:34:42 UTC
Fedora 22 changed to end-of-life (EOL) status on 2016-07-19. Fedora 22 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.