Skip to content

Releases: ESNODE/esnodePy

v0.2.1: Boundary Intelligence & Return Drift Detection (Beta)

11 Jan 12:38

Choose a tag to compare

This patch release fixes installation issues on Python 3.9 environments and stabilizes the CI pipeline.

🐛 Bug Fixes
Widen Python Compatibility: Lowered requires-python constraint from >=3.10 to >=3.9 to properly support Python 3.9 environments.
CI Stability: Aligned GitHub Actions test matrix with the supported Python versions, resolving build cancellations.

🚀 v0.2 Features (Recap)
Real Return Inference: Inspects AST for explicit values (return 42).
Implicit None Detection: Catches missing return statements in typed functions.
Evidence-Based Reporting: Detailed CLI output of observed vs declared types.

📦 Installation

pip install esnodePy==0.2.1

v0.2.0: Boundary Intelligence & Return Drift Detection (Beta)

11 Jan 12:14

Choose a tag to compare

Release Description

We are excited to introduce esnodePy v0.2.0, a major update that brings real "boundary intelligence" to the engine.
This release moves beyond simple placeholders and introduces actual AST-based return value inference, allowing developers to see exactly what their functions are returning versus what they claim to return.

🚀 Key Features

Real Return Inference: The engine now inspects AST nodes to infer return shapes (None, int, CallResult(...), Unknown(variable)).
It no longer relies on dummy values.

Implicit None Detection: esnodePy uses control flow heuristics to detect when a typed function accidentally "falls off the end," implicitly returning None.

This is a common source of bugs in typed Python codebases.

Evidence-Based Reporting: The CLI report now lists the specific observed return values that caused drift, giving you immediate proof of the issue.

risky_function() [src/utils.py:42]
Declared return : int
Observed returns:
- CallResult(fetch_params)
- None (implicit)

Strict Quality Standards: The entire codebase is now strictly typed (mypy strict), docstring-documented, and covered by a comprehensive pytest suite.

CI/CD Pipeline: Added GitHub Actions workflows for automated testing and PyPI publication via OIDC.

🛠️ Technical Improvements
Updated pyproject.toml to standard package structure.
Refactored FunctionBoundary to track sets of observed return shapes.
Switched to ESNODE Community License 1.0.

📦 Installation
bash
pip install esnodePy

🔗 Quick Links
Documentation
Report an Issue

Built with ❤️ by the ESNODE team.