Compatibilidad con Python 3.13

- Actualiza dependencias: cryptography>=41.0.0, pyOpenSSL>=23.2.0,
  xmlsec>=1.3.12, xmlsig>=0.1.9, zeep>=4.2.1, lxml>=5.2.2
- Anade monkey-patch para xades.load_pkcs12 con pyOpenSSL >= 24
  (PKCS12 eliminado de OpenSSL.crypto)
- Reemplaza datetime.utcnow() por datetime.now(timezone.utc)
- Reemplaza APIs deprecadas de lxml en facho.py y codelist
- Migra verificacion PKCS12 de pyOpenSSL a cryptography API en fe.py
- Moderniza typing: Union/Optional/List a sintaxis | y list[]
- Actualiza requirements_dev.txt con versiones recientes
- Actualiza tox.ini y Makefile.dev para Python 3.13
This commit is contained in:
2026-07-02 22:45:33 -05:00
parent f98ab98c9c
commit 93a3d18e32
13 changed files with 89 additions and 74 deletions

View File

@@ -8,7 +8,7 @@
from dataclasses import dataclass
from datetime import datetime
import hashlib
import typing
from .. import fe
from .. import form
@@ -86,13 +86,13 @@ class NumeroSecuencia:
@dataclass
class Periodo:
fecha_ingreso: typing.Union[str, Fecha]
fecha_liquidacion_inicio: typing.Union[str, Fecha]
fecha_liquidacion_fin: typing.Union[str, Fecha]
fecha_generacion: typing.Union[str, Fecha]
fecha_ingreso: str | Fecha
fecha_liquidacion_inicio: str | Fecha
fecha_liquidacion_fin: str | Fecha
fecha_generacion: str | Fecha
tiempo_laborado: int = 1
fecha_retiro: typing.Union[str, Fecha] = None
fecha_retiro: str | Fecha | None = None
def __post_init__(self):
self.fecha_ingreso = Fecha.cast(self.fecha_ingreso)
@@ -259,7 +259,7 @@ class InformacionGeneral:
def __str__(self):
self.valor
fecha_generacion: typing.Union[str, Fecha]
fecha_generacion: str | Fecha
hora_generacion: str
periodo_nomina: PeriodoNomina
tipo_moneda: TipoMoneda