Releases: eclipxe13/CfdiUtils
Version 2.21.0
- Introduce
\CfdiUtils\Nodes\NodeHasValueInterface
to work with nodes simple text content. - The class
\CfdiUtils\Nodes\Node
implements\CfdiUtils\Nodes\NodeHasValueInterface
. - The XML node importers and exporters now can read and write simple text content.
Version 2.20.2
Allow installing Genkgo/Xsl version 1.1.0; used for PHP >= 7.4.
Test: Fix test that was overriding retenciones/sample-before-tfd.xml
file.
Include the following unreleased changes from 2022-03-18:
Fix build since GitHub Action sudo-bot/action-scrutinizer
is failing.
Use scrutinizer/ocular
package instead.
Test: When creating a pago, use addSumasConceptos
to populate SubTotal
and Total
.
CI: Always run apt-get update
before apt-get install
.
Version 2.20.1
Add PHP 8.1 minimal compatibility.
Skip tests on GenkgoXslBuilderTest
because the library genkgo/xsl
is not compatible with PHP 8.1.
Skip tests WebServiceConsumingTest::testSoapClientHasSettings
because cannot access SoapClient
private properties.
Add dependence on symfony/process
to include 6.0. This allows to install the library on PHP 8.1.
Upgrade eclipxe/xmlschemavalidator
from version 2.x to version 3.x (fully PHP 8.1 compatible).
Add #[\ReturnTypeWillChange]
or fix return types on implemented classes like
IteratorAggregate::getIterator(): Traversable
.
Add information about how tu run locally GitHub Actions using nektos/act
tool.
Version 2.20.0
Add CfdiUtils\Elements\Pagos20
Elements to work with "Complemento para recepción de Pagos 2.0". Thanks @EmmanuelJCS. (Closes #89)
Version 2.19.1
Fix EmisorRegimenFiscal
validation. Add 626 - RESICO
. Thanks @celli33.
Version 2.19.0
Add CFDI 4.0 compatibility: read, validate and create:
CfdiUtils\Cfdi
object now can read CFDI 4.0.CfdiUtils\CfdiValidator40
object was introduced to validate CFDI 4.0 with only the following validations:- The document follows de CFDI 4.0 specification (namespace, root element prefix and name).
- The document follows de CFDI 4.0 schema.
- The document has a valid
NoCertificado
,Certificado
andSello
. - The document has a valid
TimbreFiscalDigital
and information matches withcfdi:Comprobante@Sello
.
CfdiUtils\CfdiCreator40
object was introduced to create CFDI 4.0.- The helper elements
CfdiUtils\Elements\Cfdi40
were created. - Add minimal documentation to read, validate and create CFDI 4.0.
The following are development details:
- Created
\CfdiUtils\Validate\Xml\XmlFollowSchema
as a standard validator, it does not depend on the type of CFDI. - The validator
CfdiUtils\Validate\Cfdi33\Xml\XmlFollowSchema
is now an extended class of\CfdiUtils\Validate\Xml\XmlFollowSchema
. The class is also deprecated. - Add
CfdiUtils\Certificado::getPemContentsOneLine()
. - Add CFDI 4.0 information to:
CfdiUtils\CadenaOrigen\CfdiDefaultLocations
.CfdiUtils\Certificado\NodeCertificado
.CfdiUtils\CfdiVersion
.
- Deprecate
CfdiUtils\Cfdi::CFDI_NAMESPACE
. - Add
CfdiUtils\CfdiCreateObjectException
that contains all the failures when try to construct aCfdiUtils\Cfdi
object. - Extract and share logic for several objects that are CFDI 3.3 and CFDI 4.0 compatible:
CfdiUtils\CfdiValidator33
toCfdiUtils\Validate\CfdiValidatorTrait
.CfdiUtils\Validate\Cfdi33\Standard\SelloDigitalCertificado
toCfdiUtils\Validate\Common\SelloDigitalCertificadoValidatorTrait
.CfdiUtils\Validate\Cfdi33\Standard\TimbreFiscalDigitalSello
toCfdiUtils\Validate\Common\TimbreFiscalDigitalSelloValidatorTrait
.CfdiUtils\Validate\Cfdi33\Standard\TimbreFiscalDigitalVersion
toCfdiUtils\Validate\Common\TimbreFiscalDigitalVersionValidatorTrait
.CfdiUtils\CfdiCreator33
toCfdiUtils\Validate\CfdiCreatorTrait
.CfdiUtils\Elements\Cfdi33\Helpers\SumasConceptosWriter
toCfdiUtils\SumasConceptos\SumasConceptosWriter
.
- The certificate PAC used for testing
30001000000400002495
is included. - The class
CfdiUtilsTests\Validate\ValidateTestCase
was renamed toCfdiUtilsTests\Validate\Validate33TestCase
and extracted toCfdiUtilsTests\Validate\ValidateBaseTestCase
because it shares a lot of logic withCfdiUtilsTests\Validate\Validate40TestCase
. - The class
CfdiUtils\SumasConceptos\SumasConceptosWriter
can handle both CFDI 3.3 & 3.4.
This version introduces this soft breaking compatibility changes, your implementation should not be affected:
[BC] REMOVED: These ancestors of CfdiUtils\Validate\Cfdi33\Xml\XmlFollowSchema have been removed: ["CfdiUtils\\Validate\\Cfdi33\\Abstracts\\AbstractVersion33"]
Other changes:
- Update license year, happy new year.
- Update PHPUnit config file.
Version 2.18.3
Fix Carta Porte 1.0 add missing element Notificado
. Thanks @celli33.
Version 2.18.2
Fix Carta Porte 2.0 XML Namespace.
Version 2.18.1
Remove development/
from distribution package.
Previous tag had a typo v.2.18.0
.
See https://github.com/eclipxe13/CfdiUtils/releases/tag/v.2.18.0
Version 2.17.0
The helper object SumasConceptosWriter
also writes the sum of impuestos locales when they are present.
Thanks, @celli33 and @luffynando for your help.