Skip to main content

FINOS - Graduated License Python Pypi GitHub Workflow Status (branch)

Symphony BDK for Python

This is the Symphony BDK for Python to help develop bots and interact with the Symphony REST APIs.

Project Overview

Symphony BDK for Python provides tools for building bots and integrating with Symphony APIs. This document outlines its usage, installation, and contribution guidelines.

Prerequisites

Installation Steps

Option 1: Build from Source

  • Install dependencies: poetry install
  • Build the package: poetry build
  • Run tests: poetry run pytest
  • Perform a lint scan locally: poetry run ruff check .
  • Format code locally: poetry run ruff format .
  • Generate documentation locally: cd docsrc && make html

Setting Up Git Hooks

This project uses pre-commit with ruff to automatically format and lint code. This is the recommended setup for contributors to ensure code style consistency.

  1. Install development dependencies (this will also install pre--commit and ruff):
    poetry install
    
  2. Install the git hooks:
    poetry run pre-commit install
    

Now, ruff will automatically run on every commit, formatting your code and checking for linting errors.

Verification

Verify the successful installation by running any of the following commands:

poetry --version

External Documents

Refer to the following for additional guidance:

Roadmap

The next milestone is the 2.5.x, focused on delivering improvements and bug fixes.

Contributing

To contribute:

  1. Fork the repository.
  2. Create a feature branch: git checkout -b feature/fooBar
  3. Read the Contribution Guidelines and Community Code of Conduct
  4. Commit changes: git commit -am 'Add some fooBar'
  5. Push changes: git push origin feature/fooBar
  6. Open a Pull Request.

NOTE: Ensure you have an active Individual Contributor License Agreement (ICLA) or Corporate Contribution License Agreement (CCLA) with FINOS.

For further inquiries, email help@finos.org.

Updating Generated Code

Python BDK uses OpenAPITools/openapi-generator to generate code. To update the generated code, follow these steps:

  1. Checkout the latest branch of the fork (e.g., sym-python-5.5.0).
  2. Update the fork source code, review, and merge it.
  3. Generate the JAR file in openapi-generatormodules/openapi-generator-cli/target/openapi-generator-cli.jar:
    • Use Maven:
      mvn clean install -Dmaven.test.skip=true && mvn clean package -Dmaven.test.skip=true
      
    • Alternatively, use IntelliJ's build button to build the project and generate the JAR file.
  4. Copy the JAR file to the Python BDK repository: symphony-api-client-python/api_client_generation/openapi-generator-cli.jar.
  5. Execute the generation script:
    ./generate.sh
    
  6. Commit and push the newly generated code along with the updated JAR file.

License

Copyright 2021 Symphony LLC

Distributed under the Apache License, Version 2.0.

SPDX-License-Identifier: Apache-2.0.

Metadata

Release files for symphony_bdk_python 2.11.3

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

Source distribution (sdist)

Source distribution for symphony_bdk_python 2.11.3
File Size Uploaded
symphony_bdk_python-2.11.3.tar.gz 326.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for symphony_bdk_python 2.11.3
File Interpreter ABI Platform
symphony_bdk_python-2.11.3-py3-none-any.whl Python 3 none any Details

Total release size: 1.8 MB

Release files / symphony_bdk_python-2.11.3.tar.gz

Download URL symphony_bdk_python-2.11.3.tar.gz
Size 326.5 kB
Tags Source
SHA-256 checksum
How to use checksums
5ba8877d57f191d3f987f47b6cef8c347997a1a459ade1504c3ff7fe3892f852
BLAKE2b-256 checksum
How to use checksums
effdabeeafd22a1aa651f604743a0dc916b3d195f7874fead77568d918bd229e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.2.1 CPython/3.9.25 Linux/6.17.0-1022-azure

Release files / symphony_bdk_python-2.11.3-py3-none-any.whl

Download URL symphony_bdk_python-2.11.3-py3-none-any.whl
Size 1.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
405f8a87987bc32c86257f6226c2874859f42af729da23e1077551cb2fda2cef
BLAKE2b-256 checksum
How to use checksums
bce7eef9097800491da5983b3cc719a9a2a3e461018d5647919b166706538553
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.2.1 CPython/3.9.25 Linux/6.17.0-1022-azure
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