Skip to content

Releases: phpcfdi/credentials

Versión 1.2.2

07 Jun 00:40
1a8c0a0
Compare
Choose a tag to compare

Se corrigió el problema de no crear correctamente el número de serie cuando incluía caracteres en mayúsculas.
Anteriormente, se hacía una conversión a minúsculas, ahora se expresa en mayúsculas.

Se agrega el método SerialNumber::bytesArePrintable(): bool para identificar que el número de serie de un certificado
contiene solamente caracteres imprimibles en su representación como bytes, como en el caso de los números de serie
utilizados por el SAT.

Se refactorizan los métodos SerialNumber::createFromBytes() y SerialNumber::bytes() para usar las funciones
de PHP bin2hex y hex2bin respectivamente.

Se agrega documentación en el archivo README.md explicando la interpretación del número de serie como hexadecimal,
decimal y bytes. Así como el uso específico del SAT.

Se actualiza el año de licencia a 2024.

Se garantiza la compatibilidad con PHP 8.3.

Adicionalmente, se hacen los siguientes cambios internos:

  • Se remueven los archivos test/_files de la detección de lenguaje de GitHub.
  • En los flujos de trabajo de GitHub.
    • Se permite la ejecución manual.
    • Se agrega PHP 8.3 a la matriz de pruebas.
    • Se ejecutan los trabajos en PHP 8.3.
    • Se actualizan las acciones de GitHub a la versión 4.
    • En el trabajo php-cs-fixer se remueve la variable de entorno PHP_CS_FIXER_IGNORE_ENV.
  • Se corrige .php-cs-fixer.dist.php sustituyendo function_typehint_space por type_declaration_spaces.
  • Se actualizan las herramientas de desarrollo.

Versión 1.2.1

24 May 23:05
f1d8fa6
Compare
Choose a tag to compare

PHPStan detectó un uso inapropiado de conversión de objeto a cadena de caracteres.
Esta conversión es innecesaria, por lo que se eliminó.

Se agregó información básica de cómo verificar un certificado emitido por el SAT usando OCSP.

Se actualizaron las herramientas de desarrollo.

Version 1.2.0

24 Feb 17:33
263de44
Compare
Choose a tag to compare

Se agrega la funcionalidad para exportar (PfxExporter) y leer (PfxReader) una credencial con formato PKCS#12 (PFX).
Gracias @celli33 por tu contribución.

Versión 1.1.4

01 Feb 03:13
Compare
Choose a tag to compare
  • Se mejora la forma en como son procesados los tipos de datos del certificado.
  • Se actualiza el año de licencia. ¡Feliz 2022!
  • Se actualizan las herramientas de desarrollo, en especial PHPStan 1.4.4.
  • Se hacen las correcciones a los problemas detectados por PHPStan.
  • Se mejoran las pruebas y se incrementa la cobertura de código.
  • Se actualiza el flujo de CI llevando los pasos a trabajos y se agrega PHP 8.1.
  • Se actualiza el nombre del grupo de mantenedores de phpCfdi.
  • Se agrega la plataforma SonarQube vía https://sonarcloud.io.
  • Se elimina la integración con Scrutinizer CI. ¡Gracias Scrutinizer CI!

Versión 1.1.3

05 Sep 01:21
bf5224e
Compare
Choose a tag to compare
  • La versión menor de PHP es 7.3.
  • Se actualiza PHPUnit a 9.5.
  • Se migra de Travis-CI a GitHub Workflows. Gracias Travis-CI.
  • Se instalan las herramientas de desarrollo usando phive en lugar de composer.
  • Se cambia la rama principal a main.
  • Se actualiza el archivo de licencia al año 2021.
  • Se cambia la documentación a español.

Version 1.1.2

21 Dec 03:08
99bea9a
Compare
Choose a tag to compare
  • Desde esta versión se soporta PHP 8.0. Se hicieron cambios porque en la nueva versión de PHP la librería openssl ya no devuelve recursos y se deprecaron las funciones de liberación de recursos.
  • Se agregó la capacidad de abrir un archivo con el path c:\archivos\certificado.cer.
  • Se agregó información de cómo poder verificar un certificado usando la API del Gobierno de Colima.

Version 1.1.1

23 Jan 16:01
5e1f391
Compare
Choose a tag to compare
  • Weak Break Compatibility Change: PemExtractor::__construct($contents) se podría construir con un parámetro de cualquier tipo de datos y al intentar usar el objeto inevitablemente iba a generar un TypeError. Se cambió la firma del constructor a PemExtractor::__construct(string $contents), así fallaría desde construir el objeto y no al usar cualquiera de sus métodos.
  • Se actualiza la licencia a 2020.
  • Se actualiza de phpstan/phpstan-shim: ^0.11 a phpstan/phpstan: ^0.12.
  • Se actualiza la integración continua en Travis y Scrutinizer.

Version 1.1.0

19 Nov 15:56
fcb7add
Compare
Choose a tag to compare
  • Se puede crear una llave privada en formato PKCS#8 DER encriptada o desprotegida. Con este cambio se pueden leer las llaves tal y como las envía el SAT. Gracias @eislasq.
  • Si la llave privada no estaba en formato PEM se hace una conversión de PKCS#8 DER a PKCS#8 PEM.
  • Se agrega el método PrivateKey::changePassPhrase que devuelve una llave privada con la nueva contraseña.
  • Se documenta la apertida de certificados y llaves privadas en diferentes formatos.
  • Se limpia el entorno de desarrollo y se publica en el paquete distribuible la carpeta de documentación.
  • Se hacen refactorizaciones menores para un mejor uso de memoria y rendimiento.

Version 1.0.1

18 Sep 22:24
be53995
Compare
Choose a tag to compare
  • Agregar métodos a PrivateKey para poder exponer la llave privada en formato PEM y la frase de paso.
  • Traducir documentación en docs/ a español
  • Mejoras en el entorno de desarrollo e integración con scrutinizer y travis
  • Se agrega (con posibilidad de fallar) PHP 7.4 a la matriz de construcción para garantizar la futura compatibilidad

Version 1.0.0

13 Aug 23:55
Compare
Choose a tag to compare
  • This project has beed derivated from eclipxe/cfdiutils
  • Projects phpcfdi/xml-cancelacion and phpcfdi/sat-ws-descarga-masiva are using this project as dependence,
    the implementation on both projects give clues to improve before first stable release.