NervaPack v0.7.1 — GraphML control-char fix
Patch release — GraphML control-character fix
Fixes a crash when ingesting legacy fixed-form COBOL/RPG source and copybooks.
Fixed
Fixed-form source and copybooks routinely contain NUL bytes, form-feed page-ejects (0x0C), and other C0 control characters. These flowed into entity data and made nervapack ingest fail at graph-write time with:
All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters
Now:
- Entity names and content are sanitized of XML-illegal control characters (tab, LF, and CR are preserved).
GraphBuilder.save_graphscrubs all node/edge string attributes before writing GraphML — a safety net that protects every language, not just IBM i.
Ingest of legacy COBOL/RPG now completes and the graph round-trips as valid GraphML.
Upgrade
pip install -U nervapack # 0.7.1PyPI: https://pypi.org/project/nervapack/0.7.1/
Full changelog: https://github.com/ramdhavepreetam/NervaPack/blob/master/docs/changelog.md