Skip to content

Releases: eclipxe13/CfdiUtils

Version 2.12.7

04 Dec 22:08
Compare
Choose a tag to compare
  • Add 2 new default cleans, before loading the CFDI as XML DOM Document:
    • Change invalid xmlns:schemaLocation to xsi:schemaLocation. SAT uses to create "valid" CFDI with this error.
    • Remove xmlns="http://www.sat.gob.mx/cfd/3" when also xmlns:cfdi="http://www.sat.gob.mx/cfd/3" is found.
  • Improve SerialNumber to use map + impode instead of concatenation.
  • Improve SerialNumber to substr instead of strpos to check if a string start with text.
  • (DOC) Add cleaner notes and example about clean before load.
  • (DOC) Simplify example on RequestParameters usage.
  • (DEV) Add support for PHP 7.4 on Travis-CI
  • (DEV) Add support for PHP 7.4 on AppVeyor
    • Downgrade chocolatey to 0.10.13
    • Add --no-progress to choco commands
    • Setup extensions declared without prefix php_ on PHP versions lower than 7.2
    • Add PHP_CS_FIXER environment variables

Version 2.12.6

23 Oct 21:04
Compare
Choose a tag to compare
  • Fix REGFIS01 validation when receiving an RFC with non-ASCII chars (like Ñ).
    It does not validate that the RFC is correct, that validation is on EMISORRFC01.
  • Add installation to documentation.
  • Improve php-cs-fixer rules.
  • Fix Travis-CI build on PHP version 7.4snapshot.

Version 2.12.5

16 Oct 04:46
Compare
Choose a tag to compare
  • Fix bug when creating a Certificado object and PEM content's length is less than 2000 bytes.
    • Now it does not care about the length.
    • If the content is a valid base64 string but is a path then will be used as a path.
    • When checking that the file exists, catches if the path has control characters (like in DER content).
    • Previous validation now makes file_exists to not throw an Error.

Version 2.12.4

10 Oct 19:27
Compare
Choose a tag to compare
  • The validation CONCEPDESC01 was not correctly set, it was checking concept discount against document subtotal, it was fixed to concept discount against concept import. It covers SAT rule CFDI33151, not CFDI33109.
  • New validation DESCUENTO01 that verify document discount against document subtotal, covers CFDI33109.
  • Development: include build/ empty folder (with .gitignore to exclude all)
  • Continuous Integration:
    • Travis remove sudo: false and build on dist: xenial.
    • Scrutinizer add more time to wait for coverage test.
    • Remove CodeClimate integration.

Version 2.12.3

26 Sep 06:00
bd1eb71
Compare
Choose a tag to compare
  • CfdiUtils\Certificado\Certificado can be created using PEM contents and not only a certificate path.
  • CfdiUtils\Creator33 can use a certificate without associated filename.
  • CfdiUtils\RetencionesCreator10 can use a certificate without associated filename.
  • CfdiUtils\Certificado\NodeCertificado can obtain the certificate without creating a temporary file.

Version 2.12.2

24 Sep 16:29
Compare
Choose a tag to compare
  • When cannot load an Xml string include LibXMLError information into exception, like:
    Cannot create a DOM Document from xml string
    XML Fatal [L: 1, C: 7]: Input is not proper UTF-8
    
  • Include composer support sections source and chat
  • Development: Exclude correct file .appveyor.yml (was .appveyor.xml)

Version 2.12.1

24 Sep 13:57
Compare
Choose a tag to compare
  • Trigger E_USER_DEPRECATED on CfdiUtils\Cleaner\Cleaner#removeIncompleteSchemaLocation()
  • Trigger E_USER_DEPRECATED on CfdiUtils\Certificado\SerialNumber#baseConvert()
  • Improvements on docs/index
  • Remove several development files from final package
  • Development:
    • Fix .editorconfig
    • Integrate codeclimate, evaluate for a while to consider a replacement for scrutinizer
    • Add PHP 7.4snapshot
    • Remove Symfony Insight config file
    • On composer dev:build it also calls composer dev:check-style

Version 2.12.0

03 Sep 21:27
Compare
Choose a tag to compare

Version 2.12.0 2019-09-03

  • Add CfdiCreator33::moveSatDefinitionsToComprobante() method to move xml definitions (xmlns:* and xsi:schemaLocation) to root node where namespace starts with http://www.sat.gob.mx.
  • Add CfdiUtils\Nodes\NodeNsDefinitionsMover that allows to move all (or filtered) namespace definitions (xmlns:* and xsi:schemaLocation) to root node.
  • Improve XmlNodeImporter to read xml as <node xmlns="namespace"/>.
  • Create SchemaLocations, this utility helps to manage the content of xsi:schemaLocation attribute.
  • Refactor Cleaner, internal improvements and use of SchemaLocations.
  • Mark CfdiUtils\Cleaner\Cleaner:removeIncompleteSchemaLocation() as internal, it should always be private
  • Fix composer.json links

Version 2.11.0

07 Aug 15:20
Compare
Choose a tag to compare
  • Add Cleaner::collapseComprobanteComplemento() to deal with more than one cfdi:Complemento.
  • Append call to Cleaner::collapseComprobanteComplemento() on Cleaner::clean().
  • Create test that demostrate issues when TimbreFiscalDigital is on a second cfdi:Complemento
    and that collapsing removes the issues and do not change the "cadena de origen".
  • Document SAT issue with multiple cfdi:Complemento (problems and clean).
  • Travis: since mkdocs version is newer, there is no need to change nav to pages to compile docs.
  • phpstan: create phpstan.neon.dist with inferPrivatePropertyTypeFromConstructor.

Version 2.10.4

27 Jun 20:10
Compare
Choose a tag to compare
  • Add Xml::createElement and Xml::createElementNS to deal with non scaped ampersand &
    on DOMDocument::createElement and DOMDocument::createElementNS.
  • Improve Rfc::obtainDate with invalid length dates and tests.