
Security News
Software Engineering Daily Podcast: Feross on AI, Open Source, and Supply Chain Risk
Socket CEO Feross Aboukhadijeh joins Software Engineering Daily to discuss modern software supply chain attacks and rising AI-driven security risks.
hgraph
Advanced tools
A functional reactive platform used to process time-series streams. Provides support for backtest (simulation) and realtime time-series processing. Using a forward propagation graph with a microtask scheduler for the runtime engine.
A functional reactive programming engine with a Python front-end.
This provides a DSL and runtime to support the computation of results over time, featuring a graph based directed acyclic dependency graph and the concept of time-series properties. The language is function-based, and promotes composition to extend behaviour.
Here is a simple example:
from hgraph import graph, evaluate_graph, GraphConfiguration, const, debug_print
@graph
def main():
a = const(1)
c = a + 2
debug_print("a + 2", c)
evaluate_graph(main, GraphConfiguration())
Results in:
[1970-01-01 00:00:00.000385][1970-01-01 00:00:00.000001] a + 2: 3
See this for more information.
The project is currently configured to make use of uv for dependency management. Take a look at the website to see how best to install the tool.
Here are some useful commands:
First, create a virtual environment in the project directory:
uv venv
Then use the following command to install the project and its dependencies:
# Install the project with all dependencies
uv pip install -e .
# Install with optional dependencies
uv pip install -e ".[docs,web,notebook]"
# Install with all optional dependencies
uv pip install -e ".[docs,web,notebook,test]"
PyCharm can make use of the virtual environment created by uv to setup the project.
# No Coverage
python -m pytest
# Generate Coverage Report
python -m pytest --cov=hgraph --cov-report=xml
This repository includes a baseline configuration for Context7 MCP to improve code search and retrieval quality.
This project uses scikit-build-core and cibuildwheel to build and publish cross-platform wheels, with uv as the package/venv manager.
Local build (PEP 517):
# Build a wheel into dist/
uv build -v
# Optionally build sdist too
uv build -v --sdist
Optional Conan (developer builds only):
# Conan is not required for packaging but may be used in local builds
uv tool install conan
# Example of enabling Conan provider for a local build
CMAKE_ARGS="-DCMAKE_PROJECT_TOP_LEVEL_INCLUDES=conan_provider.cmake" uv build -v
macOS notes:
to_chars used by std::format.MACOSX_DEPLOYMENT_TARGET=15.0 (arm64) during Release Wheels and sets a default in CMake if unset.CMAKE_ARGS="-DCMAKE_OSX_DEPLOYMENT_TARGET=15.0 -DCMAKE_OSX_ARCHITECTURES=arm64" uv build -v
Windows notes:
Dbghelp and Imagehlp automatically.Linux notes:
backward-cpp integrations are disabled there for portability..github/workflows/ci.yml builds wheels on Linux/macOS/Windows for smoke validation, runs tests on Linux only (fast path), and repairs Linux wheels with auditwheel..github/workflows/release-wheels.yml builds publish-grade wheels with cibuildwheel (Linux manylinux, macOS arm64, Windows AMD64), builds an sdist, validates with twine, and publishes to PyPI via Trusted Publishing.Releases are automated via GitHub Actions with PyPI Trusted Publishing.
Prerequisites:
pyproject.toml [project].version matches the tag you plan to push (e.g., 0.4.112).Steps:
# Update version in pyproject.toml to match your release
# Then tag and push the tag to trigger the release workflow
git tag -a v_0.4.112 -m "release 0.4.112"
git push origin v_0.4.112
The workflow will:
twine checkArtifacts are uploaded for inspection as part of the workflow run.
-DPython_EXECUTABLE=${PROJECT_ROOT}/.venv/bin/python-DCMAKE_PROJECT_TOP_LEVEL_INCLUDES=${PROJECT_ROOT}/conan_preamble.cmake;${PROJECT_ROOT}/conan_provider.cmake_hgraph target to build the extension.-DPython_EXECUTABLE=... (or -DPython3_EXECUTABLE=...) and, if using Conan, use the conan_preamble.cmake before conan_provider.cmake.FAQs
A functional reactive platform used to process time-series streams. Provides support for backtest (simulation) and realtime time-series processing. Using a forward propagation graph with a microtask scheduler for the runtime engine.
We found that hgraph demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket CEO Feross Aboukhadijeh joins Software Engineering Daily to discuss modern software supply chain attacks and rising AI-driven security risks.

Security News
GitHub has revoked npm classic tokens for publishing; maintainers must migrate, but OpenJS warns OIDC trusted publishing still has risky gaps for critical projects.

Security News
Rust’s crates.io team is advancing an RFC to add a Security tab that surfaces RustSec vulnerability and unsoundness advisories directly on crate pages.