Skip to main content

gemseo-http

PyPI - License PyPI - Python Version PyPI Codecov branch

Overview

gemseo-http is a GEMSEO plugin that exposes GEMSEO disciplines as RESTful web services. It bridges the gap between local MDO processes and remote computing resources by providing a seamless client-server interface.

Main Capabilities

  1. Expose GEMSEO Disciplines as Web Services:
    • Make existing GEMSEO disciplines into accessible HTTP endpoints.
    • Execute and linearize disciplines remotely with support for both synchronous and asynchronous modes.
  2. Use Remote Disciplines Locally:
    • Use the HTTPDiscipline class as a local proxy for remote services.
    • Automatic configuration via service discovery (the proxy queries the remote service for its grammars).

Installation

Client Installation

The HTTPDiscipline acts as a remote discipline proxy, allowing you to connect to a GEMSEO HTTP service.

To install the latest stable version of the client:

pip install gemseo-http

Server Installation

If you intend to host GEMSEO disciplines as services, you need to install the server-side dependencies:

pip install gemseo-http[server]

Key Features

  • Secure Authentication: Built-in support for OAuth2 with JWT (JSON Web Tokens) to ensure secure access.
  • Interactive API Documentation: Automatically generated Swagger UI (available at /docs) for exploring and testing the API.
  • Automated File Handling: Transparent management of file transfers between client and server during discipline execution.
  • Scalable Asynchronous Execution: Integration with Huey for background job processing, allowing for long-running tasks without blocking the web service.
  • Efficient Data Retrieval: Support for long-polling to retrieve results from asynchronous executions.

Documentation

For detailed installation instructions, user guides, and API reference, please visit the official documentation.

Bugs and questions

Please use the gitlab issue tracker to submit bugs or questions.

Contributing

See the contributing section of GEMSEO.

Contributors

  • Jean-Christophe Giret
  • Antoine Dechaume

Metadata

Release files for gemseo-http 3.0.0

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

Source distribution (sdist)

Source distribution for gemseo-http 3.0.0
File Size Uploaded Provenance Actions
gemseo_http-3.0.0.tar.gz 710.6 kB Without provenance Details for gemseo_http-3.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for gemseo-http 3.0.0
File Interpreter ABI Platform Actions
gemseo_http-3.0.0-py3-none-any.whl Python 3 none any Details for gemseo_http-3.0.0-py3-none-any.whl

Total release size: 750.1 kB

Release files / gemseo_http-3.0.0.tar.gz

Download URL gemseo_http-3.0.0.tar.gz
Size 710.6 kB
Tags Source
SHA-256 checksum
How to use checksums
d4bfe3695a8048358606103f4f26ceea315e41d7584642830614034006b71662
BLAKE2b-256 checksum
How to use checksums
772732b6c512d42f3df15530874bfb1a247dbd09a8b7c2c199af8db7b137caba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Alpine Linux","version":"3.22.1","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / gemseo_http-3.0.0-py3-none-any.whl

Download URL gemseo_http-3.0.0-py3-none-any.whl
Size 39.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8cb590fd33d6fbb8785e731e6b773454f924762ab854c0e62aa983698e132669
BLAKE2b-256 checksum
How to use checksums
d443127773d0ab4421b3dfb2174187066ba5f27e21897fdd0698bd9c58f89d0c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Alpine Linux","version":"3.22.1","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for gemseo-http 3.0.0

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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