Skip to main content

A Python SDK for integrating with Prescient services

Project description

prescient-sdk

A Python SDK for integrating with Prescient services

Quickstart

Local Development

The project is set up using uv for package management. To develop locally:

  1. Install uv following these intructions

  2. (Optional) Use uv to set up your local env.

    Note that this will happen automatically when you run tests or any python application using uv, so it is not necessary

    uv sync
    
  3. Run the tests

    uv run pytest
    

    or

    make run-tests
    

Configuration

Configuration methods are discussed in the Jupyter Notebook configuration.ipynb

Code Formatting/Linting

Code format is set using the Ruff formatter. To run this formatter:

make format

Adding or removing dependencies

Add or remove dependencies using UV.

In the simplest case, you can add a new dependency like this:

uv add <some-dependency>

To add a dev dependency:

uv add <some-dependency> --dev

To remove a dependency:

uv remove <some-dependency>

For more complex features, see the uv documentation

Build the documentation

Public facing documentation is built using jupyter-books.

The docs folder contains the layout for the public facing documentation.

You can build the documentation locally, and access the built html pages in a local browser:

  1. Build the docs:

    make build-docs
    
  2. Open the html in a browser:

    After building the docs, the path to the index.html file will be logged, and should look something like docs/_build/html/index.html

Cutting a Release

In order to release a new version to be published to PyPI:

  1. Create a new branch from main with the new version as the branch name (v*..) following semantic versioning guidelines.

  2. Update the version in pyproject.toml under the [project] section.

  3. Sync the uv.lock file:

    uv sync
    
  4. Create a Pull Request against the main branch, have it reviewed and merged.

  5. Create a new Release with a tag and title named v*.*.*. Include a description of all major updates included in this new release.

    After the release has been created, you should see Actions running to publish the new release to PyPI, and to update the Github Pages documentation.

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

prescient_sdk-0.1.3.tar.gz (404.7 kB view hashes)

Uploaded Source

Built Distribution

prescient_sdk-0.1.3-py3-none-any.whl (6.8 kB view hashes)

Uploaded Python 3

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