Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions RELEASENOTES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,26 @@
Version 1.28.2 (July 15, 2025)
=================================

### Applications
- updated vulnerable dependencies ([commit](https://github.com/veraPDF/veraPDF-library/commit/b75a016))

### Validation
- (PDF/UA-2, WTPDF-1) disabled rule about multiple link annotations that target the same location ([commit](https://github.com/veraPDF/veraPDF-library/commit/3c05a38))
- (PDF/UA-2, WTPDF-1) fixed structure destination validation ([commit](https://github.com/veraPDF/veraPDF-validation/commit/7fe5283))
- fixed validation of Unicode for several flavours ([commit](https://github.com/veraPDF/veraPDF-validation/commit/7d143de))

### PDF Parser
- fixed width calculation in an edge case of Type2CharString ([commit](https://github.com/veraPDF/veraPDF-parser/commit/ea6ba8b))
- fixed COSPredictorDecode (commits [1](https://github.com/veraPDF/veraPDF-parser/commit/e8f9024) [2](https://github.com/veraPDF/veraPDF-parser/commit/703fe86))
- fixed RDF parsing with no attributes in metadata ([commit](https://github.com/veraPDF/veraPDF-library/commit/be2f0fb))
- fixed exceptions in case of malformed PDFs


### Maintenance
- moved Maven publication from the decommissioned Sonatype service to Maven central publication
- added the new maven-central-publication plugin to veraPDF-parent POM for publication for all projects ([commit](https://github.com/veraPDF/veraPDF-parent-pom/commit/16c02dd))
- updated the Maven plugins used to the latest versions ([commit](https://github.com/veraPDF/veraPDF-parent-pom/commit/07e58ea))

Version 1.28 (April 30, 2025)
=================================

Expand Down
2 changes: 1 addition & 1 deletion core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.14.0</version>
<version>2.15.0</version>
</dependency>

<dependency>
Expand Down
18 changes: 18 additions & 0 deletions core/src/main/java/org/verapdf/pdfa/flavours/PDFFlavours.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,15 @@

public class PDFFlavours {

public static boolean isOnlyPDFUARelatedFlavour(List<PDFAFlavour> flavours) {
for (PDFAFlavour flavour : flavours) {
if (!isPDFUARelatedFlavour(flavour)) {
return false;
}
}
return true;
}

public static boolean isPDFUARelatedFlavour(List<PDFAFlavour> flavours) {
for (PDFAFlavour flavour : flavours) {
if (isPDFUARelatedFlavour(flavour)) {
Expand Down Expand Up @@ -89,6 +98,15 @@ public static boolean isFlavour(List<PDFAFlavour> flavours, PDFAFlavour checkedF
}
return false;
}

public static boolean isOnlyFlavour(List<PDFAFlavour> flavours, PDFAFlavour checkedFlavour) {
for (PDFAFlavour flavour : flavours) {
if (!isFlavour(flavour, checkedFlavour)) {
return false;
}
}
return true;
}

public static boolean isFlavour(PDFAFlavour currentFlavour, PDFAFlavour checkedFlavour) {
return currentFlavour == checkedFlavour;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -292,19 +292,6 @@
</error>
<references/>
</rule>
<rule object="PDLinkAnnot" tags="annotation,structure">
<id specification="ISO_14289_2" clause="8.2.5.20" testNumber="3"/>
<description>Multiple link annotations shall be included in a single Link or Reference structure element if they target the same location and are semantically perceived to be a single link</description>
<test>sameTargetAnnotObjectKey == null</test>
<error>
<message>Annotations %1 and %2 target the same location, but are included into different structure elements</message>
<arguments>
<argument>objectKey</argument>
<argument>sameTargetAnnotObjectKey</argument>
</arguments>
</error>
<references/>
</rule>
<rule object="SERuby" tags="structure">
<id specification="ISO_14289_2" clause="8.2.5.23" testNumber="1"/>
<description>A Ruby structure element shall contain a single RB structure element and a single RT structure element or a Ruby structure element shall consist of a four-element subsequence: RB, RP, RT, RP</description>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -244,19 +244,6 @@
</error>
<references/>
</rule>
<rule object="PDLinkAnnot" tags="annotation,structure">
<id specification="WTPDF_1_0" clause="8.2.5.20" testNumber="3"/>
<description>Multiple link annotations shall be included in a single Link or Reference structure element if they target the same location and are semantically perceived to be a single link</description>
<test>sameTargetAnnotObjectKey == null</test>
<error>
<message>Annotations %1 and %2 target the same location, but are included into different structure elements</message>
<arguments>
<argument>objectKey</argument>
<argument>sameTargetAnnotObjectKey</argument>
</arguments>
</error>
<references/>
</rule>
<rule object="SERuby" tags="structure">
<id specification="WTPDF_1_0" clause="8.2.5.23" testNumber="1"/>
<description>A Ruby structure element shall contain a single RB structure element and a single RT structure element or a Ruby structure element shall consist of a four-element subsequence: RB, RP, RT, RP</description>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -244,19 +244,6 @@
</error>
<references/>
</rule>
<rule object="PDLinkAnnot" tags="annotation,structure">
<id specification="WTPDF_1_0" clause="8.2.5.20" testNumber="3"/>
<description>Multiple link annotations shall be included in a single Link or Reference structure element if they target the same location and are semantically perceived to be a single link</description>
<test>sameTargetAnnotObjectKey == null</test>
<error>
<message>Annotations %1 and %2 target the same location, but are included into different structure elements</message>
<arguments>
<argument>objectKey</argument>
<argument>sameTargetAnnotObjectKey</argument>
</arguments>
</error>
<references/>
</rule>
<rule object="SERuby" tags="structure">
<id specification="WTPDF_1_0" clause="8.2.5.23" testNumber="1"/>
<description>A Ruby structure element shall contain a single RB structure element and a single RT structure element or a Ruby structure element shall consist of a four-element subsequence: RB, RP, RT, RP</description>
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
<parent>
<groupId>org.verapdf</groupId>
<artifactId>verapdf-parent</artifactId>
<version>1.28.1</version>
<version>1.28.2</version>
</parent>

<groupId>org.verapdf</groupId>
Expand Down
15 changes: 8 additions & 7 deletions xmp-core/src/main/java/org/verapdf/xmp/impl/ParseRDF.java
Original file line number Diff line number Diff line change
Expand Up @@ -98,14 +98,15 @@ static XMPMetaImpl parse(Node xmlRoot) throws XMPException
*/
static void rdf_RDF(XMPMetaImpl xmp, Node rdfRdfNode) throws XMPException
{
if (rdfRdfNode.hasAttributes())
{
//------------------------------------------------------------------------------ veraPDF: disabled exception for rdf without attributes https://github.com/veraPDF/veraPDF-library/issues/1528
// if (rdfRdfNode.hasAttributes())
// {
rdf_NodeElementList (xmp, xmp.getRoot(), rdfRdfNode);
}
else
{
throw new XMPException("Invalid attributes of rdf:RDF element", BADRDF);
}
// }
// else
// {
// throw new XMPException("Invalid attributes of rdf:RDF element", BADRDF);
// }
}


Expand Down
Loading