Skip to content

MDO-Standards/Philote-Python

Repository files navigation

Unit and Integration Tests codecov CodeQL Deploy Documentation PyPI - Version

Philote-Python

Python library for using and creating Philote analysis servers.

Documentation can be found at:

https://MDO-Standards.github.io/Philote-Python

Requirements

The development process requires the following tools to be installed (they will be installed if not present):

  • grpcio-tools
  • protoletariat
  • importlib.resources

Additionally, the following dependencies are required by Philote MDO and will be installed automatically during the installation process:

  • numpy
  • scipy
  • grpcio

To run the unit and integration tests, you will need:

  • openmdao (can be found here or installed via pip)

Installation

The easiest way for users to install this library is via pip using the PyPI package:

pip install philote-mdo

If you need or want to install the package from the repository, you can doe this using pip:

pip install <path/to/Philote-Python>

or

pip install -e <path/to/Philote-Python>

for an editable install. Note, that <path/to/Philote-Python> is the path to the repository root directory (the one containing pyproject.toml). Often, people install packages when located in that directory, making the corresponding command:

pip install .

Unlike earlier version, the package is distributed with generated gRPC python files. This means that you do not need to have grpciotools or protoc installed when using Philote-Python. If you are doing development work, specifically when you are adding new gRPC features, you will need to regenerate the gRPC files. To do this, run the following command from the repository root directory:

python utils/compile_proto.py

License

This package is licensed under the Apache 2 license:

Copyright 2022-2025 Christopher A. Lupp

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

This work has been cleared for public release, distribution unlimited, case number: AFRL-2023-5713.

The views expressed are those of the authors and do not reflect the official guidance or position of the United States Government, the Department of Defense or of the United States Air Force.

Statement from DoD: The Appearance of external hyperlinks does not constitute endorsement by the United States Department of Defense (DoD) of the linked websites, of the information, products, or services contained therein. The DoD does not exercise any editorial, security, or other control over the information you may find at these locations.

About

Python library for using and creating Philote analysis servers.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages