commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gilles <gil...@harfang.homelinux.org>
Subject Re: [Math] Fails on Jenkins, succeeds on Travis
Date Fri, 05 May 2017 22:40:05 GMT
On Fri, 5 May 2017 16:15:11 +0100, sebb wrote:
> On 4 May 2017 at 23:02, Gilles <gilles@harfang.homelinux.org> wrote:
>> On Thu, 4 May 2017 11:02:59 +0100, sebb wrote:
>>>
>>> On 4 May 2017 at 09:57, Gilles <gilles@harfang.homelinux.org> 
>>> wrote:
>>>>
>>>> On Thu, 4 May 2017 09:19:49 +0100, sebb wrote:
>>>>>
>>>>>
>>>>> On 4 May 2017 at 00:48, Gilles <gilles@harfang.homelinux.org> 
>>>>> wrote:
>>>>>>
>>>>>>
>>>>>> Same commit, different behaviour...
>>>>>
>>>>>
>>>>>
>>>>> Travis and Jenkins check different things...
>>>>>
>>>>>> https://travis-ci.org/apache/commons-math/
>>>>>>
>>>>>>
>>>>>> 
>>>>>> https://builds.apache.org/job/Commons%20Math%20MasterBranch/34/console
>>>>>
>>>>>
>>>>>
>>>>>  Exit code: 1 - javadoc: error - invalid flag:
>>>>> --allow-script-in-comments
>>>>
>>>>
>>>>
>>>> I knew that it was caused by my adding this flag in the POM file.
>>>> Without this flag, the build fails with Java 8; with the flag, it
>>>> fails with Java 7.
>>>
>>>
>>> If the flag is really necessary for Java 8 (i.e. the Javadoc cannot
>>> readily be adjusted to avoid the problem) then obviously the flag
>>> setting will need to depend on the Java version being used to 
>>> compile
>>> the code.
>>>
>>> The Commons Parent pom has some examples of settings that are
>>> conditional upon the Java version.
>>
>>
>> Finally, I configured Jenkins so that the job will skip the javadoc
>> generation. Good enough until Jenkins will *require* Java 8.
>
> I disagree.

Then, please fix the POM as you suggested (using conditional options?).

>
> It's now not possible to generate the Javadoc using Java7, i.e. the
> following fails:
>
> mvn javadoc:javadoc
>
> Given that the code targets Java 7, that does not make sense to me.

Agreed.
But we've already had (time-consuming) issues because most (all?)
CM contributors do use a Java 8 development environment.

>
> This is actually nothing to do with Jenkins (or Travis AFAICT).
>
> This seems purely to be a problem cause by a stricter Java8 Javadoc
> processor.

Indeed.
I'm sure many people complained about behaviour.
Will it change with Java 9?

>
> I think it needs to be resolved as such, not by suppressing the CI
> build errors that exhibit the problem.

Agreed. But in the meantime, it is IMO more important that the
CI build fails only for a good reason (i.e. a code-related one,
not an overzealous documentation generator).

My fix is for "development time"; hopefully by the time we
can contemplate a release, an apter solution will have been
found and implemented.

By then, we will probably target Java 10. ;-)

>
> In any case, it looks like the Javadoc is not compatible with Java 8
> for other reasons.

Sure. Feel free to come and help... :-)

>
> As it stands, dropping the '--allow-script-in-comments' qualifier
> allows Javadoc7 to work with a couple of warnings.

That's the trade-off: either you allow CM contributors to run
Java 8's javadoc on their local machine (so that they can fix
the, now strictly enforced, HTML syntax), or you don't (and
new documentation bugs will be created since they cannot run
javadoc8 without the '--allow-script-in-comments' qualifier).

>
> There's quite a lot of source fixes needed to make the Javadoc8
> processor happy even without MathJax.
> (missing tags, malformed HTML etc).

Certainly; cf. above.


Gilles


>> Regards,
>> Gilles
>>
>>
>>>
>>>>
>>>>>
>>>>>> Regards,
>>>>>> Gilles
>>>>>>
>>>>>>
>>>>
>>>>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org


Mime
View raw message