On 18/03/2015 4:14 PM, Max Rydahl
Andersen wrote:
The intent is that we would like in JSDT to start
integrating with these tools in a similar manner that for example
CDT calls out to native compilers
and how Buildship calls out to Gradle.
Before we go do the official request for each of the tools I was
suggested by Mike to raise it on the relevant PMC first to see
if there were any objections against starting this.
A few comments from the perspective of the EMO:
- We want to help make WTP/JSDT better and more current.
- We agree that we should be using the tools and frameworks that
developers are already using, and not try to replicate function
in Eclipse projects.
- Whenever an Eclipse project requires a dependency, it is the
role of the PMC to decide if it is a works-with or a
prerequisite.
- If it is determined to be a prerequisite, then it is the EMO's
role to decide if it is an exempt or non-exempt prerequisite.
Which gets us to the hard part....how does the EMO decide whether
something is exempt or non-exempt? An exempt pre-req is defined in
the policy[1] as ".... if the software is pervasive in
nature, expected to be already on the user's machine, and/or an
IP review would be
either impossible, impractical, or inadvisable." But at the
same time, the whole point of the policy is to avoid "...
bypassing the IP due
diligence process by requiring third party software as a
prerequisite where such third party is to be
downloaded and installed separately by the user, instead of
redistributing such software in their projects."
The kinds of things that we look for are pretty much described in
the policy. But one of the fuzzy things in the policy definition
is "...expected to be already on the user's machine". That's
certainly an area where some judgement is applied, and to where
the intent of the project comes into play. For example, if the
intent of the project is to provide developers tools for the C/C++
language, it is our opinion that it is reasonable to expect that
the developer would already have C/C++ language implementations
installed (e.g. gcc). If the project is providing tools for
Gradle, then surely they are going to need Gradle. And so on....
I don't know too much about the specific projects that Max
listed, but if a _javascript_ developer would be expected to already
have them installed on their machine in order to do _javascript_
development, and they are not actually distributed with the
Eclipse plug-in, then they probably meet the definition of "exempt
prerequisite".
I hope that helps.
[1]
https://www.eclipse.org/org/documents/Eclipse_Policy_and_Procedure_for_3rd_Party_Dependencies_Final.pdf