Files
OpenBB/website/content/platform/contributing/dependency_management.md
Danglewood 757fc57174 docs/fix-urls: Updates the Terminal About URLs to match /develop (#5720)
* update Terminal about URLs and some other broken links

* ruff

* intro

* changing the heading levels

* dependency management sections

* structure

* developer guides

* structure

* contributor guides

* keywords and descriptions

* broken urls

* cool cards

* Cool cards (#5727)

* tidy up terminal/content

* some more tidy up

* fix styling for platform that was missing

* more tidy up

* improve color for dark and light mode

* create new reference card for more basic cards

* rename back to menus

* implement all index.md for terminal, except reference

* improve bot title

* more refactoring

* fix remaining index

* header styling

* more styling

* heheheheheheeh

* Revert "heheheheheheeh"

This reverts commit 7d095fcfd2.

* Ccards (#5733)

* links

* more links

* improved styling and chevron aligned to title

* fix index.mdx urls for Terminal

* update package.json

* update index.mdx

* fix generation

* spelling

* toolkit_extensions

* update data extensions

* couple of links

* add tiingo to data extensions list

---------

Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt>
Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com>
Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-11-16 17:02:59 -05:00

2.0 KiB
Vendored

title, sidebar_position, description, keywords
title sidebar_position description keywords
Dependency Management 2 Dealing with dependencies when developing with the OpenBB Platform. Learn how to add new dependencies to the OpenBB Platform and how to add new dependencies to your custom extension.
OpenBB Platform
Open source
Python interface
Dependency Management

import HeadTitle from '@site/src/components/General/HeadTitle.tsx';

High-Level Overview

  • Provider: The base package with no dependencies on other openbb packages.
  • Core: Depends on the Provider and serves as the main infrastructural package.
  • Extensions: Utility packages that leverage Core's infrastructure. Each extension is its own package.
  • Providers: Utility packages extending functionality to different providers, where each provider is its own package.

Core Dependency Management

Installation

  • pip: pip install -e OpenBBTerminal/openbb_platform/platform/core
  • poetry: poetry install OpenBBTerminal/openbb_platform/platform/core

Using Poetry

Ensure you're in a fresh conda environment before adjusting dependencies.

  • Add a Dependency: poetry add <my-dependency>
  • Update Dependencies:
    • All: poetry update
    • Specific: poetry update <my-dependency>
  • Remove a Dependency: poetry remove <my-dependency>

Core and Extensions

Installation

For development setup, use the provided script to install all extensions and their dependencies:

  • python dev_install.py [-e|--extras]

Note

: If developing an extension, avoid installing all extensions to prevent unnecessary overhead.

Dependency Management with Poetry

  • Add Platform Extension: poetry add openbb-extension-name [--dev]
  • Resolve Conflicts: Adjust versions in pyproject.toml if notified by Poetry.
  • Lock Dependencies: poetry lock
  • Update Platform: poetry update openbb-platform
  • Documentation: Maintain pyproject.toml and poetry.lock for a clear record of dependencies.