Files
sowai-fiscal/pyproject.toml
T
jonatanritter 032151af34 feat: extract pure fiscal core from sowai-auto (parity-preserving copy)
Copies the 6 pure fiscal modules (domains, chave_acesso, tpag, presets,
resolver, xml_builder) from sowai-auto's backend/app/modules/fiscal/ into
this standalone lib, with only the two mechanical changes required to drop
the app.* dependency: import prefix rename, and TaxRule (ORM) -> TaxRuleLike
(structural Protocol) in the resolver. No other line changes -- byte-level
parity with the auto is the point.

Ports the pure test suites (domains, chave_acesso, resolver with a local
FakeTaxRule satisfying TaxRuleLike, xml_builder) plus a new test_presets_data
covering the PRESETS dict directly (the auto's equivalent test exercises the
apply-preset HTTP/DB flow, which isn't part of the extracted pure core).

55 tests pass locally via `uv run pytest`, no Postgres/k8s required.
2026-07-22 15:05:10 -03:00

22 lines
516 B
TOML

[project]
name = "sowai-fiscal"
version = "0.1.0"
description = "Núcleo fiscal SowAI: motor de regras (imposto-como-dado), chave de acesso, builder de XML NF-e 4.00/NT 2025.002 v1.40"
requires-python = ">=3.11"
dependencies = [
"pydantic>=2.7",
"nfelib>=2.5.2",
"lxml>=5.2",
"xsdata>=24.0",
]
[dependency-groups]
dev = ["pytest>=8", "pytest-asyncio>=0.24"]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src/sowai_fiscal"]