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.4

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.4
File Size Uploaded
symphony_bdk_python-2.11.4.tar.gz 326.5 kB Details

Built distribution (wheel)

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

Total release size: 1.8 MB

Release files / symphony_bdk_python-2.11.4.tar.gz

Download URL symphony_bdk_python-2.11.4.tar.gz
Size 326.5 kB
Tags Source
SHA-256 checksum
How to use checksums
d8fee47209dca5eeaee908b80050c6e1af380b9dd0f3f5520b913bcb24ab9a69
BLAKE2b-256 checksum
How to use checksums
bf51a0844f8c81d07eb83ae0227b07480cd4feb3a61892c5fd15e7d1b345871e
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.4-py3-none-any.whl

Download URL symphony_bdk_python-2.11.4-py3-none-any.whl
Size 1.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
59b771b4911bca22682c25580e22cc9edd921dd403b7738c25a9042ffed8bcd4
BLAKE2b-256 checksum
How to use checksums
6807f955884d4e9f5bd57094f22c2bdff0aaba9e2efd43159fa599462863928e
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