mirror of
https://github.com/OpenBB-finance/OpenBB.git
synced 2026-10-29 21:42:22 +00:00
* rename sdk_token to pat to follow hub convention * black * move OpenBBError class to error model * add OBBject class docstring * pylint * add futures to app docstring * Linting * Fix chart-related mypy errors. Co-Author: ’hjoaquim’ * Fix more mypy warnings * Build static * MyPy improvements * move get_branch request to logging_settings (#5348) * move get_branch request to logging_settings * black * add todo * Revert "add todo" This reverts commit7e3af83e3d. * add todo * Update logging_settings.py * mac/linux install script python output suppressed * rename .settings to .user for consistency * update readme * update readme * Linting * Linting and improvements * Regenerate static files * Snake_case, mypy, typing, improvements. | Co-Author: montezdesousa * Rebuild * Revert Fetcher * better cpi * Snake case * fixes: major_indices_eod for intraday, optional company_overview atrs * Feature/remove unncessary stuff (#5346) * removing the journal service from the command_runner * remove the journal service and fix tests * removing journal from the command_runner * removing journal entry references and adding optional metadata * rebuilding static assets * removing all references to journal entry * removing all references to journal and journal repository * removing journal query references * restructuring the command runner * fix argument mismatch and settings to user mismatch * dropping command runner session * re generation of static assets * ruff n black * removing introduced bug * removing duplicate reference due to merging * 3.8 compatible static assets * changing the way we deal with erros - removing the Error model * removing unncessary filters * fixing tests * regenerating static assets * remving mongodb references from user service * remving mongodb references * updating dependencies with removed pymongo * updating dependencies with removed pymongo * removing useless call * fix typo * ruff * fixing tests * ruff * removing leftovers * making registry map 3.8 compatible * static assets * ruff * Hotfix/squeeze import (#5358) * remove commit_hash and branch references * lazy load stats, scipy, pandas_ta * black & ruff * adding commithash back to log prefix * fix test --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * .user got lost in merge * improve __repr__ for sdk classes * changing posthog project key (#5362) * Linting and improvements * Rebuild QA * fix py38 + metadata ref in docstrings * doc ident * restore qa * update readme: remove journal * doc detail * disable black in App docstring * update readme: command execution * ruff * remove run_in_isolation: cannot pickle nested classes * remove outdated dir openbb_sdk * outdated workflow * update ruff * dependency related changes * using model validator instead * adjustments to the system model * minor adjustments * revert all changes on stocks controller * working historical price * controller_builder file * process class recursivly * adding translators prop * poc with platform as a menu and as command * paths feature * adding subcontrollers * offline access * menu text as obj variable * adjustments * move help to base class; print tables using rich table (for now); clear the choices for better autocompletion * introducing the platform controller factory * remove unnecessary file * revert changes to files * dinamically generate platform menus * generated platform commands * poetry lock * fix for literals and choices * adjustments - recursive iteration only if it's a class * router name should be lower() to match the class processor * deps * better output * handling base models * comment call_news * Feature/v4 deprecate everything (#6113) * comment call_news * remove news * remove keys controller * remove settings controller * remove ta forex * remove qa economy * remove ta stocks * remove qa stocks * remove fa stocks * remove ins stocks * remove gov stocks * remove dps stocks * remove ba stocks * remove bt stocks * remove stocks * remove stocks base controller class * ruff * remove qa forex * remove oanda * remove forex * remove forex * remove forex * remove mention to fx_tickers * remove ta crypto * remove qa crypto * remove dd crypto * remove crypto controller * remove crypto references * remove economy controller * remove economy folder * remoe etf controller * remove reports controller * remove dashboards controller * remove alt controller * rmeove etf files * remove alt files * remove custom reports * remove dashboard files * remove econometrics controller * remove forecast controller * remove reports files * remove forecast files * remove econometrics files * remove portfolio * remove futures * remove fixedincome * remove funds * remove sdk and common * remove all from init * remove reference to ipykernel * remove reference to ta_helpers * remove reference to ta_helpers * cleanup * adjustments to choices * remove old sdk generator * remove mention to dashboards * ruff * cleanup * remove logging infra * remove decorators * remove sdk audit * remove tought of the day * remove tought of the day * fix commands andmenus choices * fixing lints * ruffs * remove old tests * deps trim * using container as condition for recursion * remove unnecessary dependencies * move dep to better section * python versions * poetry lock * better custmo annotations * handling properties * handling edge cases: no func_doc and when signarute doesn't match type hints (self) * reverting treating models as props * provider groups * comment debug stuff * Revert "comment debug stuff" This reverts commitf0a86f04a8. * comment debug stuff * little adjustment for annotated types * injecting the reference to make the custom argument groups available * comments * custom model_dump to drop choices * deprecated * remove update option * remove update * remove translations * remove account controller * command descriptions * menu descriptions * removing interactive tables * limit the number of columns and rows * menu descriptions * show indexes * More cleanups (#6245) * renames * remove .init files * remove unused files * remove session stuff * remove session and sources stuff * remove unused models * remove sdk session * remove charting infra * remove charting stuff but allow console style * updates in models * raise directly * call terminal directly and remove artifacts * remove reference to sources * remove reference to source arg * remove reference to source arg * remove unused stuff * remove screenshot and raise directly * remove unnecessary helper classes * update the config file * remove references to old charting infra * call terminal directly * update deps * make user always local for now * rename to CLI * ruff * export options * export functionality * update rich * update example routine * fix issues with queue * temporary workaround for username * deprecate main menu commands * deprecate commands and remove unused stuff * deprecate commands and remove unused stuff * deprecate commands and remove unused stuff * adjustments and cleanups * routines syncing w hub * small adjustments to point to the right instance * whoami * custom terminal style * adjustments related to preferences * deprecate stuff * rename terminal style * deprecate more things * more deprecation * more adjustments * current settings - deprecating preferences, user and system * terminal settings * revmap custom terminal settings * cli version * ruff * black * linting fixes * happy mypy * ruff * remove old terminal build files * remove devcontainer * update dependencies * trim commands and its descriptions * better warnings * remove commands and menus str and show warnings if dev mode * get command descriptions from the translators instead * Add username in brackets if logged in * fix buggy command descriptions * [Feature] Bug fixing the Platform CLI (#6291) * fix buggy command descriptions * new reference structure * Seggregate data commands from others (settings etc) * fix table html for charting extension * number of rows and columns as a setting * interactive tables * adding menu descriptions --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> * fix the way reference was being passed * fix choices parsing for providers * loosen to get instead * obbject registry class * obbject registry class * using the obbject registry to show available options * link obbject results to data processing commands data argument * small improvements to correctly get the standard args * intersecting data processing commands and matching the obbject trough its id * poetry lock * use openbb field * safe json conversion and trimming * better at finding nargs when union * improved obbject registry using a stack * data processing section * Update argparse_translator/argparse_class_processor.py Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * fix: remove unused function * fix: terminal.py -> openbb_terminal/cli.py * fix: move local model function to utils & delete module * fix: rename hub_model.py to hub_service.py * fix: delete paths_helper.py, not used * fix: circular import console * fix: move terminal_style.py from plots/ to config, delete plots/ * fix: delele base_helpers.py, function moved to env_handler.py * fix: move custom_prompt_toolkit.py to core/completer * fix: delete requirements.txt, we can export them later if needed * fix: move routines stuff to routines/ * fix: move rich_config.py to core/config * fix: rename parent_classes.py to base_controller.py * Danger: create controllers/ and move stuff * fix: move custom_prompt_toolkit.py to config and delete completer/ * fix: rename custom_prompt_toolkit.py to completer.py * fix: move rouines stuff to folder * ^ oops * Edits * fix: settings import * fix: openbb command * Fix routine record when local user * Lint * Remove quickexit * Fix timezone change * fix data processing commands: not allowing multiple items + need to allow 0 (which evalutes as false) * split comma separated strings into a list so that the cli can consume them * Feature/move terminal files (#6344) * Move terminal files into openbb_terminal * move routines * Create session to handle console, user, settings, etc. * Reset... * Bring back frontend-components * Move frontend-components to openbb_terminal * rename vars * remove doc * rename method * rename method * fix routines * read settings from .env * rename methods * ^ * ^ * better * bug * ^ * move frontend-components back to root level * revert changes * type checking only * docstring * fix: settings autocomplete * comment * use openbb_core singleton * rename src to fix openbb command * fix poetry build * readme --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> --------- Co-authored-by: Diogo Sousa <montezdesousa@gmail.com> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: tehcoderer <me@tehcoderer.com> Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com>
98 lines
3.2 KiB
YAML
Vendored
98 lines
3.2 KiB
YAML
Vendored
name: General Linting
|
|
|
|
env:
|
|
OPENBB_ENABLE_QUICK_EXIT: true
|
|
OPENBB_LOG_COLLECT: false
|
|
OPENBB_USE_PROMPT_TOOLKIT: false
|
|
OPENBB_FILE_OVERWRITE: true
|
|
PIP_DEFAULT_TIMEOUT: 100
|
|
|
|
on:
|
|
pull_request:
|
|
types: [opened, synchronize, edited]
|
|
# push:
|
|
# branches:
|
|
# - "feature/*"
|
|
# - "hotfix/*"
|
|
# - "release/*"
|
|
merge_group:
|
|
types: [checks_requested]
|
|
|
|
# Cancel previous runs that are not yet completed.
|
|
concurrency:
|
|
group: ${{ github.event_name }}-${{ github.repository }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
code-linting:
|
|
name: General Code Linting
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout Code
|
|
uses: actions/checkout@v4.1.1 # actions/checkout v3.0.2
|
|
with:
|
|
ref: ${{ github.event.pull_request.head.ref || github.ref }}
|
|
repository: ${{ github.event.pull_request.head.repo.full_name || github.repository }}
|
|
fetch-depth: 20
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Fetch base branch
|
|
run: git fetch --no-tags --depth=20 origin ${{ github.base_ref }}
|
|
|
|
- name: Setup Python 3.9
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: "3.9"
|
|
architecture: x64
|
|
|
|
- name: Get changed files in openbb_platform for PR
|
|
if: github.event_name == 'pull_request'
|
|
run: |
|
|
# "Checking PR diff"
|
|
echo "platform_files=$(git diff --diff-filter=d --name-only origin/${{ github.base_ref }}...${{ github.head_ref }} | grep 'openbb_platform/.*\.py$' | grep -v 'openbb_platform/openbb/package' | grep -v 'integration' | grep -v 'tests' | xargs)" >> $GITHUB_ENV
|
|
echo $platform_files
|
|
|
|
- uses: actions/cache@v3
|
|
with:
|
|
path: ~/.cache/pip
|
|
key: ${{ runner.os }}-linting-${{ hashFiles('**/poetry.lock') }}
|
|
restore-keys: ${{ runner.os }}-linting-${{ hashFiles('**/poetry.lock') }}
|
|
|
|
- run: |
|
|
pip install openbb-devtools
|
|
pip install types-pytz types-requests types-termcolor types-tabulate types-PyYAML types-python-dateutil types-setuptools types-six
|
|
- run: bandit -x ./tests -r . || true
|
|
- run: black --diff --check .
|
|
- run: codespell --ignore-words=.codespell.ignore --skip="$(tr '\n' ',' < .codespell.skip | sed 's/,$//')" --quiet-level=2
|
|
- run: ruff .
|
|
- run: |
|
|
# Run linters for openbb_platform
|
|
if [ -n "${{ env.platform_files }}" ]; then
|
|
pylint ${{ env.platform_files }}
|
|
mypy ${{ env.platform_files }} --ignore-missing-imports --scripts-are-modules --check-untyped-defs
|
|
pydocstyle ${{ env.platform_files }}
|
|
else
|
|
echo "No Python files changed in openbb_platform"
|
|
fi
|
|
|
|
markdown-link-check:
|
|
name: Markdown Linting
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
name: Check out the code
|
|
- name: Lint Code Base
|
|
uses: docker://avtodev/markdown-lint:v1
|
|
with:
|
|
args: "./*.md ./changelogs/*.md ./openbb_terminal/**/*.md ./discordbot/**/*.md"
|
|
|
|
json-yaml-validate:
|
|
name: JSON Check
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: json-yaml-validate
|
|
id: json-yaml-validate
|
|
uses: GrantBirki/json-yaml-validate@v2.0.0
|