Skip to content

NervaPack v0.7.1 — GraphML control-char fix

Choose a tag to compare

@ramdhavepreetam ramdhavepreetam released this 05 Aug 16:17
· 19 commits to master since this release

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_graph scrubs 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.1

PyPI: https://pypi.org/project/nervapack/0.7.1/
Full changelog: https://github.com/ramdhavepreetam/NervaPack/blob/master/docs/changelog.md