Releases: phpcfdi/cfdi-to-json
Versión 0.3.5
- Se actualiza el archivo
UnboundedOccursPaths.json
porque se incluyó el nuevo complemento Carta Porte 3.1.
Los siguientes cambios no modifican el código fuente.
- Se actualiza el archivo de licencia.
- En los flujos de trabajo de GitHub:
- Se agrega PHP 8.3 a la matriz de pruebas.
- Se ejecutan los trabajos en PHP 8.3.
- Se utilizan las acciones de GitHub versión 4.
- Se actualizan las herramientas de desarrollo.
Versión 0.3.4
- Se actualiza el archivo
UnboundedOccursPaths.json
porque se incluyó el nuevo complemento Carta Porte 3.0.
Versión 0.3.3
Cuando se busca abrir un archivo para obtener las rutas sin límite, se lanza una excepción si no se pudo
abrir el archivo, anteriormente se lanzaba un warning de la función get_file_contents
.
Los siguientes cambios no modifican el código fuente.
- Se actualiza el archivo de licencia.
- Se elimina una conversión a cadena de texto innecesaria introducida para satisfacer a PHPStan.
- Se agrega una prueba para comprobar que al generar paths repetidos se devuelve un arreglo secuencial.
- Se corrige la insignia de construcción en el archivo
README.md
. - En los flujos de trabajo de GitHub:
- Se agrega PHP 8.2 a la matriz de pruebas.
- Se ejecutan los trabajos en PHP 8.2.
- Se agrega la habilidad de ejecutar un flujo de trabajo a petición.
- Se sustituye la directiva
::set-output
con$GITHUB_OUTPUT
. - Se utilizan las acciones de GitHub versión 3.
- Se corrige la configuración de SonarCloud.
- Se actualizan las herramientas de desarrollo.
Versión 0.3.2
Versión 0.3.2 2022-10-01
Permite la lectura del contenido de texto de los nodos, esto es porque el "Complemento Detallista" usa este tipo de estructura. Estos contenidos se consideran como espacios en blanco colapsados.
Gracias @gam04 por tu contribución.
Cambios al entorno de desarrollo
- Se actualizan las herramientas de desarrollo.
- Se actualiza el flujo de trabajo de integración continua:
- Se utilizan las GitHub Actions versión 3.
- Se corren los procesos en PHP 8.1.
- Se elimina la dependencia de
composer
donde no se usa.
- Se actualiza el archivo de configuración de
php-cs-fixer
. - Se agrega la configuración en Git para que los finales de línea solo sean
LF
. - Se integra el proyecto a SonarCloud.
- Se elimina la integración con Scrutinizer CI a favor de SonarCloud. ¡Gracias Scrutinizer CI!.
Versión 0.3.1
La herramienta PHPStan detectó un posible error de mal uso de la propiedad DOMElement::localName
donde
puede ser de los tipos string
o null
, pero solo se consideraba string
.
La herramienta PHPStan detectó un posible error de mal uso de la propiedad DOMElement::parentNode
donde
se verifica que la propiedad ahora sea de tipo DOMElement
.
We ❤️ you PHPStan.
Versión 0.3.0
Se ha descubierto un error en donde dos especificaciones de esquemas del SAT pueden chocar y en una definición tener nodos que no son múltiples y en otra versión que sí lo son. Por ejemplo, en CFDI 3.3 el nodo CfdiRelacionados
solo puede aparecer 1 vez, mientras que en CFDI 4.0 su número de apariciones es ilimitado.
Se corrige esta situación cambiando la forma de generar las rutas del archivo leído y cambiando las rutas extraídas de los archivos XSD. En ambos casos ahora se antepone el espacio de nombres XML, por ejemplo: {http://www.sat.gob.mx/cfd/4}/Comprobante/CfdiRelacionados
.
De igual forma, ahora el archivo UnboundedOccursPaths.json
solo contiene entradas únicas y ordenadas. De esta forma la búsqueda de una coincidencia es mucho más rápida al usar las llaves de un arreglo, y será más fácil entender los cambios que ocurran en el archivo.
Además, se le ha dado mantenimiento al proyecto actualizando los archivos de desarrollo, dependencias de las herramientas de desarrollo, flujo de trabajo de integración continua, licencia (feliz 2022) y probando la compatibilidad con PHP 8.1.
Versión 0.2.3
Se actualiza el archivo UnboundedOccursPaths.json
porque se incluyeron:
- CFDI Regular 4.0.
- CFDI de Retenciones e Información de pagos 2.0.
- Complento de Recibo de pagos 2.0.
Versión 0.2.2
- Se actualiza el archivo
UnboundedOccursPaths.json
porque se incluyó el nuevo complementoCartaPorte 2.0
.
Versión 0.2.1
- Se actualiza el archivo
UnboundedOccursPaths.json
porque se incluyó el nuevo complementoCartaPorte
.
Cambios en desarrollo:
- Se actualizó la herramienta
php-cs-fixer
a^3.0
. - Se actualizó el archivo de configuración de PHPUnit a uno más apegado al recomendado.
- Se agrega a GitHub Actions un flujo de trabajo de construcción del proyecto.
- Se agrega a GitHub Actions un flujo de trabajo de actualización y PR desde
phpcfdi/sat-ns-registry
. - Se elimina la integración con Travis-CI. Gracias.
Versión 0.2.0
- Se extrae la lógica del conteo de hijos de
Nodes\Children
aNodes\KeysCounter
. - Se corrigen los test y las llamadas de
file_get_contents
. - Conseguir el 100% de testeo.
- Agregar a Travis-CI la comprobación de que el archivo
src/UnboundedOccursPaths.json
no ha cambiado. - Usar
phive
para las herramientas de desarrollo. - Se agrega
infection
para correr pruebas de mutación. No es mandatorio por el momento.