* enhances stocks/quote to allow for multiple tickers
* fix for MyPy type error
* fix pylint
* formats index string as title
* adds test for multi-ticker quote and for bad tickers
* adds integration test for multi-ticker quote
* updates docstrings and adds 'openbb.stocks.quote_chart' to SDK
* updates syntax in equity report for quote_data
* ruff
* gets rid of empty lines that got created.
* adds logic to handle input as string when not a list
* re-records tests
* decorators
* futures curve: prettifies contract names in raw table and in excel export. change column header to Last Price. set x axis of curve chart to correspond to contract months
* fixed linting and updated tests
---------
Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* Remove stocks/disc/cnews command from terminal and sdk
* Remove disc/cnews tests and test data
* Remove cnews from default sources, translations and intros
* Remove old test data files that are not used anymore
* Add pydocstyle ignore statement to pyproject toml
* Fix print help in stocks/disc controller test
* keep session alive on reset
* remove print
* silence routines
* ruff
* skip login if is papermill
* ruff
* move is_papermill to avoid prompt_toolkit warning fd is not a terminal
* move is_papermill back and check for atty instead
* only download routines and update sources if terminal
* only starts prompt toolkit if isatty
* black
* avoid duplicate files after reset/login
* remove hub routines on reset
* comment
* fix unittest
* forgot this debugging prints
* platform to logs
* dte not /365 and delete code i never got to
* 4 decimals on chains
* Change options default load to the defaut source
* mypy
* Less polluting of logs
* #4420
* #4811
* Fix test
* Remove unnecessary log decs
* Save us money
* whoops
* add remember attribute to user
* don't save hist if not remember
* remove routines on exit if not remember
* fix unittests
* remove hub routines on exit
* check if user is local first
* remove hist file on exit if not remember
* comma
* Fix `exe --file` choices on login (#4799)
* download and save routines in sync, to have choices immediatly available
* fix: docs min
---------
Co-authored-by: jose-donato <zmcdonato@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
---------
Co-authored-by: jose-donato <zmcdonato@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* make default routines available
* remove unecessary change
* user to personal
* rename some funcs
* add last update to tables
* add routines download on login
* move some routines funcs to controller
* fix tests
* add space
* wrap some funcs inside try, except
* fix account test
* suppress outputs
* rewrite docstring
* remove circular import
* reverse order
* update docstring
* allow exe with spaces in file name
* fix exe with input
* Update terminal_controller.py
* fix regex for file extensions
* pylint
* put default routines url inside constants
---------
Co-authored-by: Jeroen Bouma <jer.bouma@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* Unit tests batch 1
* Unit tests batch 2
* Unit tests batch
* Unit tests batch
* Unit tests batch
* Unit tests batch
* Unit tests batch
* Unit tests batch
* Unit tests batch
* Unit tests batch
* Debloat
* Debloat
* Fix linting
* updating readme
* updating unit tests readme
* integration tests readme
* minor to ref it on the comment
* chaging the example and removing unused files
* updating path
* changing the controller example to follow view and model
* obeying conventions
* mathcing the right controller
* matching examples
* include details on creating a new branch
* removing old references to stocks/dd
* adding sheet name to the export_data example
* circle back autocompletion to queue-and-pipeline
* fixing the list numeration
* Doc
* fixing the tests (were failing bc of changed function name)
* Remove tests/FIXTURES.md
* reverting
* small edit
* lint
* mardown linting
* fixing forecast dashboard
* fixing forecast dashboard
---------
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* loop and update sources
* clean update sources dict
* use only allowed sources and update hub sources on login
* silently update hub
* ruff
* update only allowed sources now
* clean up some funcs
* fix dict on tests
* mypy
* remove unused method
* change class arg name sources_dict
* change attribute name in sources model
* remove allowed from SourcesModel
* change from user_choices to choices
* change default msg
* WIP - command name refactor + eliminate need for an API key to make < 25 requests per day
* check for no Ultima API Key properly
* test_print_help fixes
* reflect changes from #4697
* re-run test_ultima_newsmonitor_view with --rewrite-expected
* re-run tests without breaking news
* Start
* QA controller tests
* Unit tests batch 1
* ruff
* More tests
* Economy unit tests
* Tests: economy
* table fixes (#4666)
* fix: table fixes
* fix: tablaroni
* fix: pagination protection
* fix: dm much more
* fix: colors
* fix: colors
* fix: colors
* fix Timestamp on stocks `get_quote`
* fix `call_tob` having `quote` as prog/docstring
---------
Co-authored-by: teh_coderer <me@tehcoderer.com>
* bug as default flair if no login (#4681)
* init (#4683)
* Feature: Ultima Insights NewsMonitor Integration (#4685)
* fix typing issue that prevents running
* news monitor integration for news
* UX improvements with news monitor integration
* italicize riskExtDesc
* minor cosmetic changes
* minor cosmetic changes
* minor cosmetic changes
* Update ultima_newsmonitor_view.py
* minor fixes to launch properly
* setting Ultima API key
* Ultima NewsMonitor integration into terminal done
* integration of the commands is done
* add Ultima to SDK trailmap, but SDK generation failed on M1 Mac
* add tests
* add unit tests
* Linting and sdk
* display message if not supported by Ultima News Monitor
* Update api-keys.md
* fix stock controller problem + remove source filtering from Ultima
* remove source filtering from Ultima
* add report issue message
* add some error handling in the view to ensure unsupported companies don't get fetched
* remove powered by Ultima Insights from console output
* ran black formatter to fix linting issues
* fix ruff issues
* fix pylint issues
* lint fix
* fixed linting issue and changed keys in the Feedparser model
* get all tests to pass
* proper testing with --record-mode=rewrite
* re-run tests for updated VCRs
* redid black formatting
* re-run test_print_help in stocks controller
* make breaking news output consistent and re-run tests
* remove unused import time
* reran tests with --rewrite-expected
---------
Co-authored-by: ovidysus0 <111447781+ovidysus0@users.noreply.github.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com>
* Terminal/hub QA (#4678)
* move update flair
* sort repr
* remove packaged sys model var
* update decorator for check api key
* ruff
* change if stat
* ruff
* no need for new var
* pylint
* Refactor sources menu (#4668)
* add data sources defaults to model
* fix f string
* refactor sources controller
* write sources to file
* write to user file
* add user data sources file inside OpenBBUserData
* append to user file, don't rewrite
* fix when sources folder does not exist
* codespell
* change func name
* change path to str
* ruff
* Add method to upload entire user field
* change clear func args
* update get_ordered_list_sources function
* move flatten
* move flatten
* change extend func name
* remove comment
* clean sources utils funcs
* mypy
* Update utils.py
* spacing
* docs
---------
Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt>
* Move tradier from hub to local (#4700)
* Move tradier from hub to local
* Flake error
* Disable error
* Update stocks_helper.py
* Update stocks_helper.py
---------
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
* Unit tests batch
* Unit tests batch
* ruff
* Unit tests batch
* Tests : Economy ; moving csv file
* Apply black
* Apply ruff
---------
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com>
Co-authored-by: teh_coderer <me@tehcoderer.com>
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Adi Sai <adithya.sairam1@gmail.com>
Co-authored-by: ovidysus0 <111447781+ovidysus0@users.noreply.github.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com>
Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt>
* avoid keys to alwyas check status
* ruff
* improve text on show flag
* removing force flag
* use bool
* improve help functionality
* fix tests
* trying to fool pylit
* using exception handling
* printing the result for a single key
* Don't check status if --help
* black
---------
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Diogo Sousa <montezdesousa@gmail.com>
* move update flair
* sort repr
* remove packaged sys model var
* update decorator for check api key
* ruff
* change if stat
* ruff
* no need for new var
* pylint
* fix typing issue that prevents running
* news monitor integration for news
* UX improvements with news monitor integration
* italicize riskExtDesc
* minor cosmetic changes
* minor cosmetic changes
* minor cosmetic changes
* Update ultima_newsmonitor_view.py
* minor fixes to launch properly
* setting Ultima API key
* Ultima NewsMonitor integration into terminal done
* integration of the commands is done
* add Ultima to SDK trailmap, but SDK generation failed on M1 Mac
* add tests
* add unit tests
* Linting and sdk
* display message if not supported by Ultima News Monitor
* Update api-keys.md
* fix stock controller problem + remove source filtering from Ultima
* remove source filtering from Ultima
* add report issue message
* add some error handling in the view to ensure unsupported companies don't get fetched
* remove powered by Ultima Insights from console output
* ran black formatter to fix linting issues
* fix ruff issues
* fix pylint issues
* lint fix
* fixed linting issue and changed keys in the Feedparser model
* get all tests to pass
* proper testing with --record-mode=rewrite
* re-run tests for updated VCRs
* redid black formatting
* re-run test_print_help in stocks controller
* make breaking news output consistent and re-run tests
* remove unused import time
* reran tests with --rewrite-expected
---------
Co-authored-by: ovidysus0 <111447781+ovidysus0@users.noreply.github.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com>
* remove sync and pull
* ruff
* remove runtime fetch configs
* add comment
* reset when logged
* update translation yml file
* sdk regen
* print bold red messages if logout process fails
* fix sources not being applied
* handle bad json
* update hub links
* save terminal crash when sources file is broken
* add user defaults to gitignore
* actually no needed, will just be more specific about richstyle coming from hub
* black
* rewrite stdout
* fix session_model tests
* fix sdk session tests
* move paths
* remove duplicate line
* fix user being reset in test_logout_user test
* remove unecessary recording
* change colors msg
* remove repeated code
* autogenerate credentials model
* revert to to_dict
* black
* mypy
* ruff
* ignore mypy
* degiro secret to replace me
* add safeguard for people not flashing keys
* ruff
* split local and hub keys
* warn if writing to .env
* warn if sending to hub
* update user on what's going on...
* update fixture
* rewrite expected
* rewrite cassettes
* rewrite controller cassettes
* too much changes, let's revert here
* rever env handler
* rewrite std output
* patch usermodel and rewrite cassettes
* delete unecessary cassettes and std out records
* remove controller cassettes
* ruff
* add exception for inconclusive api tests opening controller
* fix twitter key and env handler prints
* fix twitter test
---------
Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt>