Skip to content

Releases: phpcfdi/finkok

Versión 0.5.5

24 May 19:31
aac461a
Compare
Choose a tag to compare
  • Se mueve PhpCfdi\Finkok\Tests\LoggerPrinter a PhpCfdi\Finkok\Helpers\FileLogger para permitir la distribución de la herramienta dentro de la librería.
  • Se crea la utilería PhpCfdi\Finkok\Helpers\JsonDecoderLogger para transformar un mensaje JSON a texto simple generado por la función print_r. Se puede configurar para enviar también el mensaje JSON.
  • Se normaliza el formato de los mensajes JSON para usar JSON_PRETTY_PRINT y JSON_UNESCAPED_SLASHES.
  • Se actualiza la documentación en el README.

Versión 0.5.4

13 Apr 04:59
Compare
Choose a tag to compare

Se actualiza el año de la licencia a 2024.

Se agrega una sección Capturar conversación HTTP al archivo README.md.

Se agrega la documentación del problema: Al timbrar con un texto & devuelve 705 - XML Estructura inválida.

Se actualizan las reglas del estándar de código.

Se permite usar symfony/dotenv:^7.0 en desarrollo.

Se omite la detección de lenguaje en el directorio tests/_files.

Se actualizan los flujos de trabajo de GitHub:

  • Se agrega PHP 8.3 a la matriz de pruebas.
  • Se ejecutan los procesos en PHP 8.3.
  • Se usan las acciones de GitHub versión 4.

Se actualizan las herramientas de desarrollo.

Versión 0.5.3

07 Jun 15:52
cfbce68
Compare
Choose a tag to compare

Se agrega la información de la excepción al momento de hacer la llamada SOAP.
Si la excepción no implementa JsonSerializable se exporta como texto resultado de print_r.

Se realizan los siguientes cambios en desarrollo:

  • Se cambian las pruebas de CFDI de Retenciones y pagos a versión 2.0.
  • Se corrige el método QuickFinkokTest#obtainParameterFromLatestCall para que devuelva una cadena de texto.
    Con este cambio se corrige el problema detectado por PHPStan.
  • En el proceso de integración continua, en el trabajo php-cs-fixer se usa PHP 8.2.
  • Se cambian los comentarios de ubicación de la imagen shivammathur/setup-php@v2 al inicio.
  • Se corrige la acción de composer dev:coverage, faltaba -dxdebug.mode=coverage.
  • Se permite ejecutar los trabajos a voluntad, agregando workflow_dispatch.
  • Se quita el paso para remover dependencias de desarrollo que ya no existen.

Versión 0.5.2

04 Jan 00:21
a8d7093
Compare
Choose a tag to compare

Se reportó que el webservice Registration#Get no estaba aceptando un RFC vacío para devolver el listado
de clientes. La respuesta de Finkok fue implementar un nuevo método Registration#Customers que devuelve
el listado de clientes paginado. El método Registration#Get ya no permitirá devolver un listado de clientes.

Se agregan los métodos Finkok::registrationCustomers y QuickFinkok::customersObtainAll
para consumir Registration#Customers.

El método Finkok::registrationCustomers(ObtainCustomersCommand $command): ObtainCustomersResult devuelve
el resultado de una sola página, con toda la información: mensaje e información de paginado.

El método QuickFinkok::customersObtainAll devuelve solamente el listado de clientes consumiendo
todas las páginas necesarias.

Se actualizó el estado del documento de problemas: El método Registration#Get con taxpayer_id vacío no devuelve el listado de clientes.

Se cambió el año en el archivo de licencia, ¡Feliz 2023!.

Versión 0.5.1

04 Jan 00:17
b480f2d
Compare
Choose a tag to compare

Se actualiza phpcfdi/xml-cancelacion a la versión ^2.0.2.
Esta actualización remueve el atributo vacío FolioSustitucion en la solicitud de cancelación firmada.
Se aplican los cambios necesarios en las pruebas.

Se documenta el error de funcionamiento en Finkok en el método Registration#Get.

Versión 0.5.0

13 Aug 02:42
1fd560d
Compare
Choose a tag to compare

Implementación del método get_contracts_snid

Se utiliza el nuevo método get_contracts_snid en lugar del obsoleto get_contracts.
Esto lleva a que la clase PhpCfdi\Finkok\Services\Manifest\GetContractsCommand ahora requiere de $snid.
Igualmente, PhpCfdi\Finkok\QuickFinkok#customerGetContracts() requiere de $snid.

Mejorar la dependencia de PSR-3

Ahora se permite compatibilidad del paquete psr/log con las versiones ^1.1, ^2.0 o ^3.0.

Mejorar la dependencia de symfony/dotenv

Se permite la compatibilidad de desarrollo de la librería symfony/dotenv con ^5.0 o ^6.0.

Saltar las pruebas de integración de cancelación que fallen

A menudo el servicio de pruebas del SAT relacionado con cancelaciones presenta fallas.
Por esto, las pruebas de integración relacionadas con tocar este servicio, en lugar de marcarlas como fallidas se marcarán como brincadas.

  • PhpCfdi\Finkok\Tests\Integration\Services\Cancel\CancelServicesTest::testCreateCfdiThenGetSatStatusThenCancelSignatureThenGetReceipt().
  • PhpCfdi\Finkok\Tests\Integration\Services\Cancel\GetRelatedSignatureServiceTest::testConsumeServiceWithRelated().
  • PhpCfdi\Finkok\Tests\Integration\Services\Retentions\CancelSignatureServiceTest::testCancelSignatureRecentlyCreatedDocument().

Pruebas largas tienen duración definida

Las pruebas largas que reintentan varias veces una tarea ahora tienen un límite de tiempo definido en la variable de entorno FINKOK_LONGTEST_TIMEOUT. Debe ser un valor entero en segundos, el valor si no existe es 30, mínimo 30 y máximo 600.

Búsqueda de RFC libre en pruebas

Se implementa una búsqueda binaria en un espacio consecutivo de RFC para hacer únicamente 16 búsquedas.
Anteriormente, se usaba un espacio que podía conducir a muchas más búsquedas y la prueba PhpCfdi\Finkok\Tests\Integration\Services\Registration\AddServiceTest::testConsumeAddServiceWithRandomRfc no era ejecutada a menos que se permitieran pruebas de larga duración.

Normalización de composer.json

Se incluye la herramienta composer-normalize para revisar y normalizar el archivo composer.json.

Se integran los cambios previos no liberados

2022-08-08

Corregir el proceso de construcción:

  • Se define el tipo de dato TEntry para MicroCatalog<TEntry> en AcceptRejectUuidStatus.
  • Actualizar librerías de desarrollo.

2022-07-18

Corregir el proceso de construcción:

  • Corregir tests/stamp-precfdi-devenv.php en su inicialización y estilo de código.
  • Actualizar librerías de desarrollo.

2022-07-04

Estos cambios están presentes únicamente en desarrollo, no es necesaria una nueva versión:

  • Se agregan pruebas unitarias para CFDI 4.0.
  • Se corrigen las instrucciones de construcción en el archivo CONTRIBUTING.md.

Versión 0.4.4

29 Jun 23:14
8376744
Compare
Choose a tag to compare

El servidor de producción de Quadrum (para firmar manifiestos) es más estricto que el servidor de pruebas y no acepta la URL https://manifiesto.cfdiquadrum.com.mx//servicios/soap/firmar.wsdl.
En esta versión se elimina la doble diagonal.

Versión 0.4.3

27 Jun 17:27
ee0ef2c
Compare
Choose a tag to compare

Se agrega CFDI 4.0 al extractor de información GetSatStatusExtractor.
Con este cambio el servicio https://wiki.finkok.com/doku.php?id=get_sat_status ya soporta CFDI 4.0.

Se actualiza phpcfdi/cfdi-expresiones a la versión 3.2.0.

Versión 0.4.2

30 May 21:42
fd42908
Compare
Choose a tag to compare
  • Se corrige Finkok::checkCommand pues podría llamar a la función is_a con un parámetro que no es un objeto.
  • Se actualizan las versiones de herramientas de desarrollo phpstan y php-cs-fixer.
  • Correcciones al proceso de integración continua build:
    • Los trabajos se ejecutan en PHP 8.1.
    • Se agrega PHP 8.1 a la matriz de pruebas.
    • phpcs usa los directorios configurados en phpcs.xml.dist.
    • Las acciones de github se actualizan a la versión 3.

Version 0.4.1

12 Jan 05:02
c1247a3
Compare
Choose a tag to compare

Lea los cambios introducidos en la versión 0.4.0

Se hacen cambios menores y de mantenimiento:

  • Se remueven conversiones de tipos innecesarios.
  • Se corrige el ejemplo de cancelación usando QuickFinkok.
  • Se actualizan las pruebas para un mejor entendimiento y ya no se usan métodos deprecados.
  • Se corrige el nombre del grupo mantenedor de PhpCfdi.
  • Se cambia el flujo de integración continua de pasos en el trabajo a trabajos separados.