On 12/7/2010 5:22 AM, Thilo Götz wrote:
> I'm getting a RAT error. Looks to me like RAT
> is trying to read in files with the default
> encoding. This crashes on one of our UTF-16
> test files for obvious reasons. A RAT bug?
The file in question
(file:///D:/mavenAlign/uimaj-trunk-data/uimaj-core/src/test/resources/pearTests/encodingTests/UTF16_with_signature.xml)
hasn't been changed since 2006 original import (according to SVN info).
It starts with the line:
<?xml version="1.0" encoding="UTF-16"?>
This line, itself, is written in bytes, as:
FF FE 3C 00 3F 00 78 00 6D 00 ...
The first 2 bytes are the byte order mark, in this case indicating that the
order of the 2-byte things is the least significant, followed by the more
significant. For instance, the next two bytes "3c 00" turn into the integer
value 0x003c.
The chars corresponding to 3C 00 3F 00 78 00 6D 00 are "<?xm" the start of the
version line.
My guess is that the byte order of the machine you're running with is reversed
from the ones we've been testing on. On my laptop (Intel), RAT classifies that
file as a "binary" file, which is not checked further. I think in order for it
to do that it has to be able to read that file using the "default encoding"
without getting an exception thrown.
----------
In any case, this is test data, and could be excluded from the RAT check (even
though these files do have the license headers in them :-) ).
For the next release, I'll add these files to the RAT exclusion pattern.
For now, you can continue your testing by manually adding these as an exclusion
in the uimaj-core pom.xml file.
To do that, add this line:
<exclude>src/test/resources/pearTests/encodingTests/UTF16*</exclude>
after line 165, approx.
-Marshall
>
> This is on Ubuntu, encoding is UTF-8, Java is:
>
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build pxi32devifx-20100511a
> (SR11 FP2 ))
> IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Linux x86-32
> j9vmxi3223ifx-20100510 (JIT enabled)
> J9VM - 20100509_57823_lHdSMr
> JIT - 20091016_1845ifx7_r8
> GC - 20091026_AA)
> JCL - 20100511a
>
> Maven version is 3.0.1.
>
> Here's the maven output:
>
> [ERROR] Failed to execute goal org.apache.rat:apache-rat-plugin:0.6:check
> (default-cli) on project uimaj-core: Analysis failed: Cannot analyse header:
> Cannot read header for
> /home/tgoetz/tmp/uimaj-2.3.1/uimaj-core/src/test/resources/pearTests/encodingTests/UTF16_with_signature.xml:
> MalformedInputException -> [Help 1]
>
> Full stack trace:
>
> [ERROR] Failed to execute goal org.apache.rat:apache-rat-plugin:0.6:check
> (default-cli) on project uimaj-core: Analysis failed: Cannot analyse header:
> Cannot read header for
> /home/tgoetz/tmp/uimaj-2.3.1/uimaj-core/src/test/resources/pearTests/encodingTests/UTF16_with_signature.xml:
> MalformedInputException -> [Help 1]
> org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal
> org.apache.rat:apache-rat-plugin:0.6:check (default-cli) on project
> uimaj-core: Analysis failed
> at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:203)
> at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148)
> at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:140)
> at
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
> at
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
> at
> org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
> at
> org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:316)
> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:153)
> at org.apache.maven.cli.MavenCli.execute(MavenCli.java:451)
> at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:188)
> at org.apache.maven.cli.MavenCli.main(MavenCli.java:134)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:618)
> at
> org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
> at
> org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
> at
> org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
> at
> org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
> Caused by: org.apache.maven.plugin.MojoExecutionException: Analysis failed
> at
> org.apache.rat.mp.AbstractRatMojo.createReport(AbstractRatMojo.java:357)
> at org.apache.rat.mp.RatCheckMojo.getRawReport(RatCheckMojo.java:89)
> at org.apache.rat.mp.RatCheckMojo.execute(RatCheckMojo.java:138)
> at
> org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:107)
> at
> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:195)
> ... 19 more
> Caused by: org.apache.rat.report.RatReportFailedException: Analysis failed
> at org.apache.rat.report.xml.XmlReport.report(XmlReport.java:66)
> at org.apache.rat.mp.FilesReportable.run(FilesReportable.java:69)
> at org.apache.rat.Report.report(Report.java:292)
> at org.apache.rat.Report.report(Report.java:272)
> at
> org.apache.rat.mp.AbstractRatMojo.createReport(AbstractRatMojo.java:341)
> ... 23 more
> Caused by: org.apache.rat.document.RatDocumentAnalysisException: Cannot
> analyse header
> at
> org.apache.rat.report.analyser.DocumentHeaderAnalyser.analyse(DocumentHeaderAnalyser.java:54)
> at
> org.apache.rat.document.impl.util.DocumentAnalyserMultiplexer.analyse(DocumentAnalyserMultiplexer.java:37)
> at
> org.apache.rat.document.impl.util.ConditionalAnalyser.matches(ConditionalAnalyser.java:44)
> at
> org.apache.rat.document.impl.util.ConditionalAnalyser.analyse(ConditionalAnalyser.java:50)
> at org.apache.rat.report.xml.XmlReport.report(XmlReport.java:64)
> ... 27 more
> Caused by: org.apache.rat.analysis.RatHeaderAnalysisException: Cannot read
> header for
> /home/tgoetz/tmp/uimaj-2.3.1/uimaj-core/src/test/resources/pearTests/encodingTests/UTF16_with_signature.xml
> at
> org.apache.rat.report.analyser.HeaderCheckWorker.read(HeaderCheckWorker.java:96)
> at
> org.apache.rat.report.analyser.DocumentHeaderAnalyser.analyse(DocumentHeaderAnalyser.java:50)
> ... 31 more
> Caused by: sun.io.MalformedInputException
> at sun.io.ByteToCharUTF8.convert(ByteToCharUTF8.java:294)
> at
> sun.nio.cs.StreamDecoder$ConverterSD.convertInto(StreamDecoder.java:316)
> at sun.nio.cs.StreamDecoder$ConverterSD.implRead(StreamDecoder.java:366)
> at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:252)
> at java.io.InputStreamReader.read(InputStreamReader.java:212)
> at java.io.BufferedReader.fill(BufferedReader.java:157)
> at java.io.BufferedReader.readLine(BufferedReader.java:320)
> at java.io.BufferedReader.readLine(BufferedReader.java:383)
> at
> org.apache.rat.report.analyser.HeaderCheckWorker.readLine(HeaderCheckWorker.java:111)
> at
> org.apache.rat.report.analyser.HeaderCheckWorker.read(HeaderCheckWorker.java:89)
> ... 32 more
>
>
>
> On 07/12/10 01:01, Marshall Schor wrote:
>> The release candidate is located in the Apache Nexus Staging repository,
>> here:
>> https://repository.apache.org/content/repositories/orgapacheuima-061/
>> <https://repository.apache.org/content/repositories/orgapacheuima-059/>
>>
>> The source-release zip file is located here:
>> https://repository.apache.org/content/repositories/orgapacheuima-061/org/apache/uima/uimaj/2.3.1/
>>
>> <https://repository.apache.org/content/repositories/orgapacheuima-059/org/apache/uima/uimaj/2.3.1/>
>>
>>
>> The binary zip and tar files are located here:
>> https://repository.apache.org/content/repositories/orgapacheuima-061/org/apache/uima/uimaj-distr/2.3.1/
>>
>> <https://repository.apache.org/content/repositories/orgapacheuima-059/org/apache/uima/uimaj-distr/2.3.1/>
>>
>>
>> The list of issues fixed is included in the source and binary distributions
>> in
>> the uimaj-distr project in the top level directory "issuesFixed"; this list
>> includes "Closed/Fixed" and "Resolved/Fixed" issues.
>>
>> This is the first release as a top level project; there are many issues
>> addressed, including removing incubator-related disclaimers.
>>
>> The Eclipse update-site for these components is here:
>> http://people.apache.org/~schor/uima-release-candidates/uimaj-sdk-2.3.1-rc1-eclipse-update-site/
>>
>> <http://people.apache.org/%7Eschor/uima-release-candidates/uimaj-sdk-2.3.1-rc1-eclipse-update-site/>
>>
>>
>> Note: only the 2.3.1 jars are populated, please test that.
>>
>> Please inspect these artifacts, see if you can build from source-release.zip
>> (above), and verify the license/notice files, then vote
>>
>> [ ] +1 OK to release
>> [ ] 0 Don't care
>> [ ] -1 Not ok to release, because ...
>>
>> -Marshall
>>
>
>