Skip to main content

IoP (Interoperability On Python)

PyPI - Status PyPI PyPI - Downloads PyPI - License GitHub last commit

Welcome to Interoperability On Python (IoP), a production-stable Python-first toolkit for building on the IRIS Interoperability Framework.

Documentation can be found here. For prompt-driven workflows, see AI-assisted coding with IoP. For task-oriented examples, see the IoP cookbooks. For any application repository, install version-matched agent guidance, skills, and offline cookbooks with:

iop --install-agent-guidance

See IoP Agent Guidance And Skills for Codex, Claude Code, Gemini CLI, and direct Agent Skills installation.

Install only the portable IoP skills in the current project with the Skills CLI. The current Skills CLI requires Node.js 22.20.0 or newer:

node --version
npx skills add \
  https://github.com/grongierisc/interoperability-embedded-python/tree/master/src/iop/ai/skills \
  --skill build-iop-app \
  --skill validate-iop-app

Or make the skills available to supported agents across all your projects:

npx skills add \
  https://github.com/grongierisc/interoperability-embedded-python/tree/master/src/iop/ai/skills \
  --skill build-iop-app \
  --skill validate-iop-app \
  --global

Project-local installation is recommended when the skills must stay aligned with a project's IoP version. The global installation is convenient when you work across many IoP repositories.

Example

Here's a tiny Python-authored production:

from dataclasses import dataclass

from iop import BusinessOperation, Message, PollingBusinessService, Production, target


@dataclass
class HelloRequest(Message):
    text: str = "Hello World"


class HelloService(PollingBusinessService):
    Output = target()

    def on_poll(self):
        self.send_request_async(self.Output, HelloRequest())


class HelloOperation(BusinessOperation):
    def on_message(self, request: HelloRequest):
        self.log_info(request.text)
        return request


prod = Production("HelloWorld.Production", testing_enabled=True)
service = prod.service("HelloService", HelloService)
operation = prod.operation("HelloOperation", HelloOperation)
service.connect(HelloService.Output, operation)

PRODUCTIONS = [prod]

Installation

Install the production-stable package using pip:

pip install iris-pex-embedded-python

Getting Started

If you're new to this project, begin by reading the installation guide. Then, follow the first steps to create your first Python-authored production.

If you are using an AI coding assistant, start with AI-assisted coding with IoP. For concrete workflows, use the IoP cookbooks. For healthcare productions, also see Healthcare AI-assisted coding.

Happy coding!

Compatibility and support

IoP supports Python 3.10 through 3.14 and InterSystems IRIS 2021.2 or newer. Changes follow semantic versioning: backward-compatible features and deprecations ship in minor releases, while removals are reserved for major releases and are announced in the changelog. IRIS compatibility is continuously checked against the latest Community image; the preview image is tested nightly to identify upcoming incompatibilities.

Contributing

Create a Python 3.10 or newer virtual environment, then install and verify the development environment with:

python -m pip install -e ".[dev]"
tox

Metadata

Release files for iris-pex-embedded-python 4.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for iris-pex-embedded-python 4.1.1
File Interpreter ABI Platform
iris_pex_embedded_python-4.1.1-py3-none-any.whl Python 3 none any Details

Release files / iris_pex_embedded_python-4.1.1-py3-none-any.whl

Download URL iris_pex_embedded_python-4.1.1-py3-none-any.whl
Size 226.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
aba224a8c59c4420148059f1d3268533a043ff9f034efd6b6e231fd5f4fea756
BLAKE2b-256 checksum
How to use checksums
f36c83d50d2636bfc991311c18e063dbf94995088473c849d4e07c38e796ffbf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 22, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

4.1.1 This release

1 release file

4.1.0

1 release file

4.0.1

2 release files

4.0.0

2 release files

3.7.1

2 release files

3.6.1

2 release files

3.6.0

2 release files

3.5.5

2 release files

3.5.4

2 release files

3.5.3

2 release files

3.5.2

2 release files

3.5.1

2 release files

3.5.0

2 release files

3.4.4

2 release files

3.4.3

2 release files

3.4.2

2 release files

3.4.1

2 release files

3.4.0

2 release files

3.3.1

2 release files

3.3.0

2 release files

3.2.0

2 release files

3.1.5

2 release files

3.1.4

2 release files

3.1.3

2 release files

3.1.2

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.0

2 release files

2.3.22

2 release files

2.3.21

2 release files

2.3.20

2 release files

2.3.19

2 release files

2.3.18

2 release files

2.3.17

2 release files

2.3.16

2 release files

2.3.9

2 release files

2.3.8

2 release files

2.3.5

2 release files

2.3.4

2 release files

2.3.3

2 release files

2.3.2

2 release files

2.3.1

2 release files

2.3.0

2 release files

2.2.0

2 release files

2.1.2

2 release files

2.1.1

2 release files

2.1.0

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page