Skip to main content

Developer Issues

How do I launch in debug mode?

When installed from source, the OpenBB Terminal can be launched in debug mode. Launch the Terminal using the syntax below.

python terminal.py --debug

Operate the Terminal normally, and errors will trigger an interrupt which prints the traceback with the error. Charts and tables will also include a developer tools button, located at the top-left of the window, for identifying issues specific to the PyWry interactive window.

What branch on GitHub should pull requests be submitted to?

Pull requests submitted to the Main branch will not be merged, please create branches from the develop branch.

To switch to the develop branch:

git checkout develop

Branches must also follow the naming convention:

  • /feature/name_your_branch
    • For developing functionality.
  • /hotfix/name_your_patch
    • For bug patches.
Error: "git pull" fails because of a hot fix: cannot lock ref

If the error message looks something like:

cannot lock ref: 'refs/remotes/origin/hotfix' exists; cannot create

Try:

git remote prune origin
git pull
What does it mean if it says wheel is missing?

If you receive any notifications regarding wheel missing, this could be due to this dependency missing.

conda install -c conda-forge wheel or pip install wheel

Why do these .whl files not exist?

If you get errors about .whl files not existing (usually on Windows) you have to reinitialize the following folder. Just removing the 'artifacts' folder could also be enough:

PlatformLocation
Linux"~/.cache/pypoetry"
Mac"~/Library/Caches/pypoetry"
Windows"%localappdata%/pypoetry/cache"

When you try to add a package to Poetry it is possible that it causes a similar issue. Here you can remove the 'artifacts' folder again to reinitialize Poetry.

If you run into trouble with Poetry, and the advice above did not help, your best bet is to try

  • poetry update --lock
  • conda deactivate -> conda activate obb, then try again
  • Track down the offensive package and purge it from your anaconda <environment_name> folder, then try again
PlatformLocation
Linux/Mac~/anaconda3/envs, or , ~/opt/anaconda3/envs
Windows%userprofile%/anaconda3/envs
  • Completely nuke your conda environment folder and make a new environment from scratch

    • conda deactivate
    • conda env remove -n obb
    • conda clean -a
    • Make a new environment and install dependencies again.
  • Reboot your computer and try again

  • Submit a ticket on GitHub

What does the JSONDecodeError mean during poetry install?

Sometimes poetry can throw a JSONDecodeError on random packages while running poetry install. This can be observed on macOS 10.14+ running python 3.8+. This is because of the use of an experimental installer that can be switched off to avoid the mentioned error. Run the code below as advised here and it should fix the installation process.

poetry config experimental.new-installer false

Commands that may help you in case of an error:

  • python -m pip install --upgrade pip
  • poetry update --lock
  • poetry install
How do I deal with errors regarding CRLF?

When trying to commit code changes, pylint will prevent you from doing so if your line break settings are set to CRLF (default for Windows). This is because the entire package uses LF (default for Linux/Mac), and it is therefore important that you change this setting to LF before you make any changes to the code.

It is possible that CRLF automatically turns back on, you can correct this with:

git config --global core.autocrlf false

In case you already made coding adjustments, you have to reset your cache, and the changes you made to the code with the following:

git rm --cached -r .
git reset --hard
Why can't I run OpenBB via the VS Code integrated terminal?

This occurs when VS Code terminal python version/path is different from the terminal version.

To fix it add this to vscode JSON settings (ref):

    "terminal.integrated.inheritEnv": false,