Python: Add declarative workflow runtime (#2815)

* Further support for declarative python workflows

* Add tests. Clean up for typing and formatting

* Improvements and cleanup

* Typing cleanup. Improve docstrings

* Proper code in docstrings

* Fix malformed code-block directive in docstring

* Remove dead links

* PR feedback

* Address PR feedback

* Address PR feedback

* Remove sl

* Update devui frontend

* More cleanup

* Fix uv lock

* Skip Py 3.14 tests as powerfx doesn't support it

* Fix mypy error

* Fix for tool calls

* Removed stale docstring

* Fix lint

* Standardize on .NET namespaces. Revert DevUI changes (bring in later)

* Implement remaining items for Python declarative support to match dotnet
This commit is contained in:
Evan Mattson
2026-01-13 16:11:21 +09:00
committed by GitHub
Unverified
parent b2893fbc00
commit 9c094573e8
79 changed files with 18310 additions and 111 deletions
@@ -0,0 +1,20 @@
# Copyright (c) Microsoft. All rights reserved.
"""Pytest configuration for declarative tests."""
import sys
import pytest
# Skip all tests in this directory on Python 3.14+ because powerfx doesn't support it yet
if sys.version_info >= (3, 14):
collect_ignore_glob = ["test_*.py"]
def pytest_collection_modifyitems(config: pytest.Config, items: list[pytest.Item]) -> None:
"""Skip all declarative tests on Python 3.14+ due to powerfx incompatibility."""
if sys.version_info >= (3, 14):
skip_marker = pytest.mark.skip(reason="powerfx does not support Python 3.14+")
for item in items:
if "declarative" in str(item.fspath):
item.add_marker(skip_marker)