Skip to content

feat: connection over rest#5015

Draft
mayankansys wants to merge 8 commits intomainfrom
feat/connection_over_rest
Draft

feat: connection over rest#5015
mayankansys wants to merge 8 commits intomainfrom
feat/connection_over_rest

Conversation

@mayankansys
Copy link
Copy Markdown
Collaborator

@mayankansys mayankansys commented Mar 26, 2026

Context

Before this change, PyFluent settings worked mainly through the gRPC-based SettingsService.

That meant:

  • the settings tree depended on a gRPC transport path,
  • there was no clean REST-based alternative for settings access,
  • there was no lightweight REST session/launcher flow,
  • and there was no full proof that flobject.get_root(...) could work with a REST proxy.

In short, the system already had transport-agnostic behavior at the flobject level, but REST was not yet fully wired into that flow.

Change Summary

The change added a self-contained REST transport path for solver settings.

Main additions:

  • a formal SettingsProxy protocol defining the settings proxy contract,
  • a RestSolverSession that builds a REST client and exposes settings,
  • a launch_fluent_rest(...) helper for easy session creation,
  • integration tests proving that flobject.get_root(flproxy=FluentRestClient(...)) builds a working settings tree,
  • README documentation explaining the REST folder, file relationships, and function flow.

Supporting updates were also made so the REST client and mock server fully match the expected settings proxy behavior.

Rationale

This approach was taken because it keeps REST support simple, isolated, and low-risk.

Impact

This change affects the settings access path and developer workflows around testing and future transport support.

Affected areas:

  • PyFluent now has a REST-based path for settings operations.
  • Developers can create a lightweight REST-backed solver session.
  • There is now integration coverage for REST + flobject together, not just client-only behavior.
  • The REST folder is now easier to understand for new contributors.
  • The system is better prepared for transport alternatives beyond gRPC.

What is not affected:

  • existing gRPC code remains unchanged,
  • flobject remains unchanged,
  • current gRPC-based workflows continue to work as before.

So the practical impact is: REST support was added without disrupting the existing gRPC path.

@codacy-production
Copy link
Copy Markdown

codacy-production bot commented Apr 2, 2026

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

TIP This summary will be updated as you push new changes. Give us feedback

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants