See <https://ci-builds.apache.org/job/POI/job/POI-DSL-API-Check/118/display/redirect?page=changes>
Changes: [Marius Volkhart] Improve performance of HSLFPictureData#write [Marius Volkhart] Deprecate functions that duplicate functionality DrawingGroupRecord#processChildRecords and AbstractEscherHolderRecord#convertRawBytesToEscherRecords duplicate the functionality of AbstractEscherHolderRecord#decode. This makes the code harder to follow, as it is not clear when certain access patterns repeat. Accordingly, these functions are deprecated and flagged for removal. [Marius Volkhart] Review EscherContainerRecord#getChildRecords() call sites for unnecessary work This started off as wanting to add the EscherContainerRecord#getChildCount() function in order to do an efficient check for how many children the container has. This was desirable in new code for editing HSSF pictures. The existing option of calling getChildRecords().size() was undesirable as this requires a list copy first. In the process of finding call sites that would benefit from replacing getChildRecords().size(), I realized that several other patterns would benefit from eliminating a copy, such as iterating over the children in a for-each loop, and indexed access to specific children. [Marius Volkhart] Add the ability to edit HSLFPictureData contents Pictures can now be edited by calling HSLFPictureData#setData(byte[]). The byte[] should contain the image data as an image viewer might read it. To enable this functionality, a tighter coupling between the EscherBSERecords of the slideshow and the HSLFPictureData was required. This ensures that changes in image data size are accurately recorded in the records. In the course of coupling the records and the HSLFPictureData, various scenarios arose where a mapping of records to pictures was non-trivial. Accordingly, the HSLFSlideShowImpl#matchPicturesAndRecords(...) function was added to perform a more sophisticated matching pass. This function is heavily exercised by org.apache.poi.hslf.usermodel.TestBugs.testFile[5] and PPTX2PNG.render[2], as well as the new TestPictures#testSlideshowWithIncorrectOffsets(). Closes #225 [Marius Volkhart] Make picture loading in HWPF PicturesTable easier to understand The recursion is no longer necessary due to the more defined structure of OfficeArtContent. [Marius Volkhart] Add documentation to PICFAndOfficeArtData Adjust call sites based on defined behavior. [PJ Fanning] change gradle build to get unreleased xmlbeans jar from ci-builds (like ant build does) [Marius Volkhart] Simplify OfficeArtContent#getBStoreContainer method Due to the new structure of the class, we can be more specific about how we load the BStore. [PJ Fanning] change gradle build to get unreleased xmlbeans jar from ci-builds (like ant build does) [Marius Volkhart] Rename EscherRecordHolder to OfficeArtContent While the class does indeed hold EscherRecords, due to recent refactoring it is much more structured now than it was before. The contents of the class now closely resemble the OfficeArtContent structure referenced in the MS-DOC spec. Naming the class after the specification structure makes it easier to find and understand. [Marius Volkhart] Rework EscherRecordHolder parsing Modify the parsing done by EscherRecordHolder to be more deterministic. The format of the OfficeArtContent structure, which the EscherRecordHolder represents, is well defined in the MS-DOC spec. A clear class structure makes it easier to reason about the availability of data. [Marius Volkhart] Add documentation to EscherRecordTypes#DG_CONTAINER [Marius Volkhart] Simplify initialization of HWPF EscherRecordHolder [Marius Volkhart] Add documentation for HWPF FileInformationBlock DggInfo methods This documentation comes from [MS-DOC] - v20191119. ------------------------------------------ [...truncated 4.98 KB...] No changes for https://svn.apache.org/repos/asf/poi/site/forrest.properties since the previous build No changes for https://svn.apache.org/repos/asf/poi/site/src/documentation since the previous build [POI-DSL-API-Check] $ /bin/sh -xe /tmp/jenkins6968388998517659214.sh + svn status ? build.javacheck.xml X forrest.properties X src/documentation Performing status on external item at 'src/documentation': + echo Java-Home: /home/jenkins/tools/java/latest1.8 Java-Home: /home/jenkins/tools/java/latest1.8 + ls -al /home/jenkins/tools/java/latest1.8/ total 25824 drwxr-xr-x 8 root root 4096 Jan 29 21:12 . drwxr-xr-x 43 root root 4096 Feb 16 14:44 .. drwxr-xr-x 2 root root 4096 Jan 29 21:12 bin -r--r--r-- 1 root root 3244 Dec 9 12:47 COPYRIGHT drwxr-xr-x 3 root root 4096 Jan 29 21:12 include -rw-r--r-- 1 root root 5226870 Dec 9 10:15 javafx-src.zip -rw-r--r-- 1 root root 195 Dec 9 12:47 jmc.txt drwxr-xr-x 6 root root 4096 Jan 29 21:12 jre drwxr-xr-x 4 root root 4096 Jan 29 21:12 legal drwxr-xr-x 4 root root 4096 Jan 29 21:12 lib -r--r--r-- 1 root root 44 Dec 9 12:47 LICENSE drwxr-xr-x 4 root root 4096 Jan 29 21:12 man -r--r--r-- 1 root root 159 Dec 9 12:47 README.html -rw-r--r-- 1 root root 424 Dec 9 12:47 release -rw-r--r-- 1 root root 21147701 Dec 9 12:47 src.zip -rw-r--r-- 1 root root 190 Dec 9 10:15 THIRDPARTYLICENSEREADME-JAVAFX.txt -r--r--r-- 1 root root 190 Dec 9 12:47 THIRDPARTYLICENSEREADME.txt + ls -al /home/jenkins/tools/java/latest1.8/bin total 836 drwxr-xr-x 2 root root 4096 Jan 29 21:12 . drwxr-xr-x 8 root root 4096 Jan 29 21:12 .. -rwxr-xr-x 1 root root 8840 Dec 9 12:47 appletviewer lrwxrwxrwx 1 root root 8 Dec 9 12:47 ControlPanel -> jcontrol -rwxr-xr-x 1 root root 8832 Dec 9 12:47 extcheck -rwxr-xr-x 1 root root 8832 Dec 9 12:47 idlj -rwxr-xr-x 1 root root 8832 Dec 9 12:47 jar -rwxr-xr-x 1 root root 8832 Dec 9 12:47 jarsigner -rwxr-xr-x 1 root root 8712 Dec 9 12:47 java -rwxr-xr-x 1 root root 8832 Dec 9 12:47 javac -rwxr-xr-x 1 root root 8832 Dec 9 12:47 javadoc -rwxr-xr-x 1 root root 2293 Dec 9 10:15 javafxpackager -rwxr-xr-x 1 root root 8832 Dec 9 12:47 javah -rwxr-xr-x 1 root root 8832 Dec 9 12:47 javap -rwxr-xr-x 1 root root 2293 Dec 9 10:15 javapackager -rwxr-xr-x 1 root root 1809 Dec 9 12:47 java-rmi.cgi -rwxr-xr-x 1 root root 148896 Dec 9 12:47 javaws -rwxr-xr-x 1 root root 8832 Dec 9 12:47 jcmd -rwxr-xr-x 1 root root 8856 Dec 9 12:47 jconsole -rwxr-xr-x 1 root root 6264 Dec 9 12:47 jcontrol -rwxr-xr-x 1 root root 8848 Dec 9 12:47 jdb -rwxr-xr-x 1 root root 8832 Dec 9 12:47 jdeps -rwxr-xr-x 1 root root 8832 Dec 9 12:47 jhat -rwxr-xr-x 1 root root 8896 Dec 9 12:47 jinfo -rwxr-xr-x 1 root root 8832 Dec 9 12:47 jjs -rwxr-xr-x 1 root root 8896 Dec 9 12:47 jmap -rwxr-xr-x 1 root root 8832 Dec 9 12:47 jps -rwxr-xr-x 1 root root 8840 Dec 9 12:47 jrunscript -rwxr-xr-x 1 root root 8848 Dec 9 12:47 jsadebugd -rwxr-xr-x 1 root root 8896 Dec 9 12:47 jstack -rwxr-xr-x 1 root root 8832 Dec 9 12:47 jstat -rwxr-xr-x 1 root root 8832 Dec 9 12:47 jstatd -rwxr-xr-x 1 root root 5110 Jan 14 2017 jvisualvm -rwxr-xr-x 1 root root 8832 Dec 9 12:47 keytool -rwxr-xr-x 1 root root 8840 Dec 9 12:47 native2ascii -rwxr-xr-x 1 root root 8904 Dec 9 12:47 orbd -rwxr-xr-x 1 root root 8832 Dec 9 12:47 pack200 -rwxr-xr-x 1 root root 8840 Dec 9 12:47 policytool -rwxr-xr-x 1 root root 8832 Dec 9 12:47 rmic -rwxr-xr-x 1 root root 8832 Dec 9 12:47 rmid -rwxr-xr-x 1 root root 8840 Dec 9 12:47 rmiregistry -rwxr-xr-x 1 root root 8832 Dec 9 12:47 schemagen -rwxr-xr-x 1 root root 8832 Dec 9 12:47 serialver -rwxr-xr-x 1 root root 8840 Dec 9 12:47 servertool -rwxr-xr-x 1 root root 8904 Dec 9 12:47 tnameserv -rwxr-xr-x 1 root root 186960 Dec 9 12:47 unpack200 -rwxr-xr-x 1 root root 8832 Dec 9 12:47 wsgen -rwxr-xr-x 1 root root 8832 Dec 9 12:47 wsimport -rwxr-xr-x 1 root root 8832 Dec 9 12:47 xjc + /home/jenkins/tools/java/latest1.8/bin/java -version java version "1.8.0_281" Java(TM) SE Runtime Environment (build 1.8.0_281-b09) Java HotSpot(TM) 64-Bit Server VM (build 25.281-b09, mixed mode) + echo which java which java + which java /home/jenkins/tools/java/latest1.8/bin/java + java -version java version "1.8.0_281" Java(TM) SE Runtime Environment (build 1.8.0_281-b09) Java HotSpot(TM) 64-Bit Server VM (build 25.281-b09, mixed mode) + echo which javac which javac + which javac /home/jenkins/tools/java/latest1.8/bin/javac + javac -version javac 1.8.0_281 + echo Ant-Home: Ant-Home: + ls -al total 484 drwxr-xr-x 16 jenkins jenkins 4096 Feb 22 01:13 . drwxr-xr-x 4 jenkins jenkins 4096 Feb 22 01:12 .. drwxr-xr-x 30 jenkins jenkins 4096 Feb 22 01:13 build -rw-r--r-- 1 jenkins jenkins 15423 Mar 1 01:12 build.gradle -rw-r--r-- 1 jenkins jenkins 172 Feb 25 01:12 build.javacheck.xml -rw-r--r-- 1 jenkins jenkins 165629 Mar 1 01:12 build.xml -rw-r--r-- 1 jenkins jenkins 3264 Feb 22 01:12 .classpath -rw-r--r-- 1 jenkins jenkins 6325 Feb 22 01:12 doap_POI.rdf -rw-r--r-- 1 jenkins jenkins 2934 Feb 22 01:12 file-leak-detector.exclude -rw-r--r-- 1 jenkins jenkins 6229 Feb 22 01:12 forrest.properties -rw-r--r-- 1 jenkins jenkins 53 Feb 22 01:12 .gitattributes drwxr-xr-x 3 jenkins jenkins 4096 Feb 22 01:12 .github -rw-r--r-- 1 jenkins jenkins 475 Feb 22 01:12 .gitignore drwxr-xr-x 3 jenkins jenkins 4096 Feb 22 01:12 gradle drwxr-xr-x 7 jenkins jenkins 4096 Feb 22 01:14 .gradle -rwxr-xr-x 1 jenkins jenkins 5770 Feb 22 01:12 gradlew -rw-r--r-- 1 jenkins jenkins 3058 Feb 22 01:12 gradlew.bat drwxr-xr-x 2 jenkins jenkins 4096 Feb 22 01:12 jenkins -rw-r--r-- 1 jenkins jenkins 167284 Feb 22 01:12 KEYS drwxr-xr-x 2 jenkins jenkins 4096 Feb 22 01:12 legal drwxr-xr-x 10 jenkins jenkins 4096 Feb 22 01:13 lib drwxr-xr-x 2 jenkins jenkins 4096 Feb 22 01:12 maven drwxr-xr-x 3 jenkins jenkins 4096 Feb 22 01:12 osgi -rw-r--r-- 1 jenkins jenkins 4813 Feb 22 01:12 patch.xml -rw-r--r-- 1 jenkins jenkins 426 Feb 22 01:12 .project -rw-r--r-- 1 jenkins jenkins 4278 Feb 22 01:12 README.rst drwxr-xr-x 2 jenkins jenkins 4096 Feb 22 01:12 .settings -rw-r--r-- 1 jenkins jenkins 556 Feb 22 01:12 settings.gradle drwxr-xr-x 9 jenkins jenkins 4096 Feb 22 01:12 sonar drwxr-xr-x 16 jenkins jenkins 4096 Feb 22 01:12 src drwxr-xr-x 4 jenkins jenkins 4096 Mar 1 01:12 .svn drwxr-xr-x 15 jenkins jenkins 4096 Feb 22 01:12 test-data -rw-r--r-- 1 jenkins jenkins 419 Feb 22 01:12 .travis.yml + echo which ant which ant + which ant /usr/bin/ant + ant -version Apache Ant(TM) version 1.10.5 compiled on March 28 2019 + echo <project default="test"><target name="test"><echo>Java ${ant.java.version}/${java.version}</echo><exec executable="javac"><arg value="-version"/></exec></target></project> + ant -f build.javacheck.xml -v Apache Ant(TM) version 1.10.5 compiled on March 28 2019 Buildfile: <https://ci-builds.apache.org/job/POI/job/POI-DSL-API-Check/ws/build.javacheck.xml> Detected Java version: 1.8 in: /usr/local/asfpackages/java/oraclejdk-1.8.0-281/jre Detected OS: Linux parsing buildfile <https://ci-builds.apache.org/job/POI/job/POI-DSL-API-Check/ws/build.javacheck.xml> with URI = <https://ci-builds.apache.org/job/POI/job/POI-DSL-API-Check/ws/build.javacheck.xml> Project base dir set to: <https://ci-builds.apache.org/job/POI/job/POI-DSL-API-Check/ws/> Build sequence for target(s) `test' is [test] Complete build sequence is [test, ] test: parsing buildfile jar:file:/usr/share/ant/lib/ant.jar!/org/apache/tools/ant/antlib.xml with URI = jar:file:/usr/share/ant/lib/ant.jar!/org/apache/tools/ant/antlib.xml from a zip file [echo] Java 1.8/1.8.0_281 [exec] Current OS is Linux [exec] Executing 'javac' with arguments: [exec] '-version' [exec] [exec] The ' characters around the executable and arguments are [exec] not part of the command. [exec] javac 1.8.0_281 BUILD SUCCESSFUL Total time: 0 seconds + exit 0 [Gradle] - Launching build. [POI-DSL-API-Check] $ <https://ci-builds.apache.org/job/POI/job/POI-DSL-API-Check/ws/gradlew> japicmp To honour the JVM settings for this build a single-use Daemon process will be forked. See https://docs.gradle.org/6.8/userguide/gradle_daemon.html#sec:disabling_the_daemon. Daemon will be stopped at the end of the build > Configure project : Trying to override old definition of datatype junit writing file <https://ci-builds.apache.org/job/POI/job/POI-DSL-API-Check/ws/build/ooxml/../../lib/ooxml/xmlbeans-4.0.1.jar> > Task :main:compileJava Note: Some input files use or override a deprecated API. Note: Recompile with -Xlint:deprecation for details. Note: Some input files use unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. > Task :main:processResources UP-TO-DATE > Task :main:classes > Task :main:jar > Task :ooxml:ant-check-jars > Task :ooxml:ant-fetch-jars > Task :ooxml:ant-check-ooxml-jars > Task :ooxml:ant-fetch-ooxml-jars > Task :ooxml:ant-init [ant:echo] Using Ant: Apache Ant(TM) version 1.10.9 compiled on September 27 2020 from ${ant.home}, Ant detected Java 1.8 (may be different than actual Java sometimes...) [ant:echo] Using Java: 1.8.0_281/1.8.0_281-b09/25.281-b09/Java HotSpot(TM) 64-Bit Server VM from Oracle Corporation on Linux: 4.15.0-58-generic [ant:echo] Building Apache POI version 5.0.1-SNAPSHOT and RC: RC1 > Task :ooxml:ant-check-compiled-ooxml-xsds > Task :ooxml:ant-compile-ooxml-xsds > Task :ooxml:downloadJarsToLibs UP-TO-DATE > Task :scratchpad:compileJava Note: Some input files use or override a deprecated API. Note: Recompile with -Xlint:deprecation for details. Note: Some input files use unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. > Task :scratchpad:processResources UP-TO-DATE > Task :scratchpad:classes > Task :scratchpad:jar > Task :ooxml:compileJava Note: Some input files use or override a deprecated API. Note: Recompile with -Xlint:deprecation for details. Note: Some input files use unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. > Task :ooxml:processResources > Task :ooxml:classes > Task :ooxml:jar > Task :examples:compileJava > Task :examples:processResources NO-SOURCE > Task :examples:classes > Task :examples:jar > Task :examples:japicmp SKIPPED > Task :excelant:compileJava > Task :excelant:processResources > Task :excelant:classes > Task :excelant:jar > Task :excelant:japicmp FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':excelant:japicmp'. > Failed to load file from jar 'META-INF/versions/9/module-info.class' as class > file: invalid constant type: 19 at 3. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/6.8/userguide/command_line_interface.html#sec:command_line_warnings BUILD FAILED in 1m 36s 22 actionable tasks: 20 executed, 2 up-to-date Build step 'Invoke Gradle script' changed build result to FAILURE Build step 'Invoke Gradle script' marked build as failure Archiving artifacts --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org For additional commands, e-mail: dev-h...@poi.apache.org