Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependencies by security issues #31

Open
wants to merge 13 commits into
base: develop
Choose a base branch
from
17 changes: 9 additions & 8 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,32 +4,33 @@
<groupId>io.github.jokoframework</groupId>
<artifactId>joko-utils</artifactId>
<packaging>jar</packaging>
<version>0.6.8</version>
<version>${joko.utils.version}</version>
<name>joko-utils</name>
<url>http://maven.apache.org</url>

<properties>
<java.version>11</java.version>
<joko.utils.version>0.6.15</joko.utils.version>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Este salto 7 números de minor version ¿a qué se debe? ¿es algo de tu fork? ¿podrías explicar el motivo?

<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

El proyecto fue migrado a Java 11 ya hace tiempo. No podemos hacer un downgrade en la versión de Java, si bien entendemos que se podría ejecutar con Java 8; la versión upstream a la fecha de los proyectos que dependen del joko-utils debe ser Java 11.

<maven.compiler.target>1.8</maven.compiler.target>
<commons-beanutils.version>1.9.4</commons-beanutils.version>
<commons-lang3.version>3.11</commons-lang3.version>
<commons-io.version>2.8.0</commons-io.version>
<joda-time.version>2.10.6</joda-time.version>
<pdfbox.version>2.0.24</pdfbox.version>
<pdfbox.version>3.0.0</pdfbox.version>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

En general, como regla para mantener la estabilidad para proyectos en producción; el aumento de un major version hacemos sólo en caso de que se haya dejado de mantener la versión 2.x o se requiera específicamente una funcionalidad de la nueva versión. En este caso según veo salió la versión 2.0.30 en noviembre 2023. La recomendación es mantener en la 2.x a menos que haya una justificación para forzar el update al nuevo major version.

<orika-core.version>1.5.4</orika-core.version>
<dependency-check.version>8.4.0</dependency-check.version>
<junit.version>4.13.1</junit.version>
<spring-beans.version>5.3.24</spring-beans.version>
<commons-codec.version>1.15</commons-codec.version>
<boxable.version>1.6</boxable.version>
<poi-ooxml.version>4.1.2</poi-ooxml.version>
<opencsv.version>5.7.1</opencsv.version>
<poi-ooxml.version>5.2.5</poi-ooxml.version>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

En este caso sí la versión 4.x dejó de producirse en el 2020; si bien a la fecha no tiene vulnerabilidades graves de seguridad, vale la pena analizar el impacto para planear este upgrade.

<opencsv.version>5.7.1</opencsv.version>
<spring-security-crypto.version>5.8.7</spring-security-crypto.version>
<slf4j-api.version>1.7.30</slf4j-api.version>
<slf4j-simple.version>1.7.30</slf4j-simple.version>
<guava.version>32.0.0-jre</guava.version>
<guava.version>32.0.1-jre</guava.version>
<jaxb-api.version>2.4.0-b180830.0359</jaxb-api.version>
<javax.xml.bind.version>2.4.0-b180830.0359</javax.xml.bind.version>
</properties>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
import be.quodlibet.boxable.utils.PDStreamUtils;
import be.quodlibet.boxable.utils.PageContentStreamOptimized;
import io.github.jokoframework.utils.constants.JokoConstants;
import org.apache.pdfbox.pdmodel.font.Standard14Fonts;

public class PdfGenerator {
private static final SecureRandom random = new SecureRandom();
Expand Down Expand Up @@ -88,7 +89,7 @@ public static File fromList(List<List> data, String destination, String user) th
float yPosition = baseTable.draw() - 20;
float leftMargin = 50;
float titleFontSize = 8;
PDFont font = PDType1Font.HELVETICA;
PDFont font = new PDType1Font(Standard14Fonts.FontName.HELVETICA);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Esto sería bueno tenerlo como una configuración externalizable. Al cambiar el tipo de fuente; los proyectos que usan joko-utils para generar reportes en PDF se verán afectados. La recomendación es que las customizaciones de estilo o preferencias particulares, se hagan de manera externa.


Date date = new Date();
DateFormat dateFormat = new SimpleDateFormat(JokoConstants.DATE_TIME_FORMAT);
Expand Down