Skip to main content

Symphony Bot Development Kit for Python

Project description

FINOS - Incubating 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.

Installation and getting started

The reference documentation includes detailed installation instructions as well as a comprehensive getting started guide.

Build from source

The Symphony BDK uses and requires Python 3.8 or higher. Be sure you have it installed before going further.

We use poetry in order to manage dependencies, build, run tests and publish. To install poetry, follow instructions here.

On the first time, run poetry install. Then run poetry build to build the sdist and wheel packages. To run the tests, use poetry run pytest.

It is possible to run pylint scan locally (on a specific file or package) executing the following command: poetry run pylint <module_name>.

To generate locally the Sphinx documentation, run: cd docsrc && make html.

Roadmap

Our next milestone is the 2.5.x one. It will only consist in delivering the next improvements and bug fixes of the BDK.

Contributing

In order to get in touch with the project team, please open a GitHub Issue. Alternatively, you can email/subscribe to symphony@finos.org.

  1. Fork it
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Read our contribution guidelines and Community Code of Conduct
  4. Commit your changes (git commit -am 'Add some fooBar')
  5. Push to the branch (git push origin feature/fooBar)
  6. Create a new Pull Request

NOTE: Commits and pull requests to FINOS repositories will only be accepted from those contributors with an active, executed Individual Contributor License Agreement (ICLA) with FINOS OR who are covered under an existing and active Corporate Contribution License Agreement (CCLA) executed with FINOS. Commits from individuals not covered under an ICLA or CCLA will be flagged and blocked by the FINOS Clabot tool. Please note that some CCLAs require individuals/employees to be explicitly named on the CCLA.

Need an ICLA? Unsure if you are covered under an existing CCLA? Email help@finos.org

Update generated code

While contributing to the project, you might need to update the generated code. Python BDK uses OpenAPITools/openapi-generator to generate code. In order to customise the templates, a fork has been created in https://github.com/SymphonyPlatformSolutions/openapi-generator/tree/sym-python-5.5.0.
Here are the steps to follow:

  • Checkout the latest branch of the fork (currently sym-python-5.5.0)
  • Update the fork source code, review and merge it
  • Generate a jar file in openapi-generatormodules/openapi-generator-cli/target/openapi-generator-cli.jar:
    • Using maven: mvn clean install -Dmaven.test.skip=true && mvn clean package -Dmaven.test.skip=true. You can also use IntelliJ's build button to build the project and generate the jar
  • Copy the jar in Python BDK repository symphony-api-client-python/api_client_generation/openapi-generator-cli.jar
  • Execute the generation script ./generate.sh and commit and push you new code along with the new jar file.

License

Copyright 2021 Symphony LLC

Distributed under the Apache License, Version 2.0.

SPDX-License-Identifier: Apache-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

symphony_bdk_python-2.6.0.tar.gz (330.2 kB view details)

Uploaded Source

Built Distribution

symphony_bdk_python-2.6.0-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file symphony_bdk_python-2.6.0.tar.gz.

File metadata

  • Download URL: symphony_bdk_python-2.6.0.tar.gz
  • Upload date:
  • Size: 330.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.0 CPython/3.8.16 Linux/5.15.0-1033-azure

File hashes

Hashes for symphony_bdk_python-2.6.0.tar.gz
Algorithm Hash digest
SHA256 7ff23bbd14c76786e72ac29c2595df64fd8d4ea8648f641f2968ea8d30892291
MD5 7dcc45a89fc0569bedbcb18abb9b7c1b
BLAKE2b-256 fcc56c3dd53d1828efbfa72c6878ae056fdfafa0fec0102b214d4e93bdb6dc1f

See more details on using hashes here.

File details

Details for the file symphony_bdk_python-2.6.0-py3-none-any.whl.

File metadata

File hashes

Hashes for symphony_bdk_python-2.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b4f3f45e28793fde5ee74de486ea2f4be63ff7fc3551d63eb67b6ccb15b27fbf
MD5 36ee70eed531370981ca1e49d38552d5
BLAKE2b-256 65a8a372f2820ca1faaf3ae10fae05c723a8a7401950aa7941ad0757f27a3f6e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page