* no guest if installer
* prevent guest if logout from account
* this not true
* rename reloop var
* ask for email again if no email
* add tags to routines upload
* Update constants.py
* Update terminal_controller.py
* Update terminal_controller.py
* black
* ruff
* black
* Update constants.py
* point at .co
* mypy
* sneak in askobb timeout
* fix test
---------
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* temperature
* remove home
* preface home
* Add askobb to all menus
* 0.3
* index
* temp +
---------
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* no guest if installer
* prevent guest if logout from account
* this not true
* rename reloop var
* ask for email again if no email
---------
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* upload routine to hub on stop
* write cassette
* write cassette
* remove .openb from name
---------
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* 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>
* don't delete session on reset
* Update terminal_helper.py
* Update terminal_helper.py
* less prints
---------
Co-authored-by: jose-donato <zmcdonato@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* 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>
* 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
* fix: new table design
* fix: added trillions
* fixing some raw data
* fix: trying to fix global+resize
* feat: improving design
* fix: new styling and lot of reorganizing
* title fix
* feat: new html
* fix: bottom bar
* fix: table dates
* fix: table html
* fix: new filtering
* fix: new filtering
* fix: long
* Lint
* Lint again
* fix: beautiful james suggestions
* fix: some more fixes
* fix: typo
* fix economy bug
* feat: added toast to notify user and some more cleanup
* fix: more issues
* tests
* fix: james updates
* fix: added banner to charts as well
* fixing title
* better fix
* feat: added column resizing and any number of columns
* auto column width - poc
* feat: added colors toggle, support to display source, fixed some more issues
* fix: table deploy
* fix: table issue
* fix header
* fix: some fixes
* fix: remember pagination and default pagination to 30
* mypy
* Colins tests
* Fix economy test
---------
Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: teh_coderer <me@tehcoderer.com>
Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com>
* fix show version
* update login prompt and account
* update set preference
* fix account controller
* block login/logout if not called from account
* change conditions to start terminal
* fix required args account model
* add not to login command
* pylint
* accounte controller messages
* set default user when logout
* logout then show menu
* remove unused functions
* fix logging bug
* ruff
* fix account unittests
* fix session unittests
---------
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* remove theme refs
* will come for dtabento later
* remove theme refs except databento
* ruff
* remove mpl variables
* mpl still used in po
* move databento to plotly
* pylint
* ruff
* theme ref to openbb_terminal
* juans sugg
* fix: removed raw arg in `display_candle` which could return the dataframe and error, added figure to `export_data`
---------
Co-authored-by: teh_coderer <me@tehcoderer.com>
* Added flake8-simplify
* Update linting.yml
* update. left 1 for you colin
* Fix that one
* Missed
* Fix
* mypy
---------
Co-authored-by: james <jmaslek11@gmail.com>
* small bug
* small bug on routines list
* guest as default
* limit logout to users2
* simpler this way
* add logout
* move logout to account & add env var
* put authentication under env var
* fix tests
* remove login
* remove openbb vars on login
* ruff
* revert .toml
* Delete Icon
* Update .env
* fix sdk guest not loading keys
* ruff
* remove press enter & --login
* ruff
* move env load
* load env
* move dot env loading to terminal.py
* fix user sdk login mixing .env with user
* now it works
* fix reset
* fix tests
* ruff
* Login on the SDK using the OpenBB Personal Access Token (#4206)
* openbb key on keys menu
* adding sdk endpoints
* adding login via token to the sdk
* base url
* rename to personal access token
* added docstrings and examples
* openbb is special
* removing extra break line
* making keys working with the personal access token
* resolve conflicting tests
* Revert "resolve conflicting tests"
This reverts commit 2fca2c0ec3.
* using custom requests
* tests
* tests
* tests
* using process_session_response instead
* rewriting some tests
* Fix sdk guest not loading keys (#4207)
* fix sdk guest not loading keys
* ruff
* remove comment
* tests
---------
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Diogo Sousa <montezdesousa@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* test record mode vcr none
* remove yes from tests yml
* specify modules to reload
* try disable check api
* UPdate spec file
* Small stocks bug
* avoid reloading in test mode
* will this work?
* skip session tests
* try with env var as well
* mock sdk reload
* pylint
* bump poetry on python 3.8
* adapt to python 3.8
* adapt to python 3.8 remaining tests
* Tests : update cassettes
* Fix linting
* Makes login conditions simpler
* Tests : txt
---------
Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: Chavithra <chavithra@gmail.com>
Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt>
* Add intrinio load functions into stocks and options. First try at options sdk with intrinio
* Add a new eodchain function + add intrinio model test
* Unit tests for intrinio options
* dont add eodchain yet -- wait for other PR
* Make null handling better + add intrinio sdk to reqs
* mock dates
* update test
* fix ruff
* black and gitignore
* Clean up and make options load class
* Clean up clean up
* Fix intrinio stock load
* Get requirements even
* sort intrinio chain and fix
* Dont rename the candle input argument
* Fix bug #4060
* Historical option prices
* Add grhist from intrinio and isort
* Fix things for presentation
* Fix tradier chain printing
* YahooFInance chain cleanup
* standardize nasdaq
* Format intrinio
* Cleanup SDK
* Fix tests
* mypy
* Clean up trail map and edit docs
* Fix mapping of info on sdk
* Add intrinio to deps
* Add a rich progress bar to expirations :)
* controller test
* Silly error + tests
* Required arg
* bad assert statememts
* Mutable default
* Keys and switch another tqdm
* BizIns Tests
* tests
* Last Test
* import order
* pylint
* no login, go to prompt
* add logout and whoami
* clear before prompt
* black
* these are unecessary
* error
* improve login prompt message
* login does not follow the controller pattern, so will name it differently
* nop
* move logout and change to results
* change return obj
* ruff
* pyupgrade
* remove user from statics
* message
* fetch configs at start
* remove unecessary func
* unecessary dataclass
* change user vars
* change login flow
* remote logout should not be used
* simplify
* fix double exit logout bug
* wrong exception
* apply keys
* change controller
* mypy
* save if no internet
* pylint
* logout everywhere
* breaking changes: move to local/hub models
* unused import
* fix logout bug
* whoami in guest mode
* add todo
* small bug guest allowed
* limit flair length
* fix bug on user pull
* logout working
* handle no connection
* logout user when logout
* remove keys push
* split logger funcs
* commant apply configs for now
* account to session
* rename user
* clear sounds better
* breaking changes: splitting guest from logged users
* pull imports up
* delete session model
* move logout func
* add ability to save and apply keys from remote
* no sensitive keys
* add support for feature flags
* unecessary print
* allow settings from differnt modules
* change setff to static
* change way to set ff
* fix bug in applying configs
* simplify obbff application
* bug on setting configs
* allow text ff
* obbff in settings
* add upload to cfg_plot 1
* data sources + backend
* this solves circular import?
* move create_session to model
* rever logs changes, not needed for now
* sync optionally
* outline account controller interface
* don't sync when guest
* block guest on installer
* or not and
* start routines
* fix bug on ff, settings
* is installer
* implementing chavi suggestions
* fix colors on installer prompt
* Logging login (#4046)
* basic logging for the login
* removing unused import
* hacking the logs custom filter to not filter the email
* black
* cooping with the new changes
* removing redundant method
* ruff
* ruff
* mypy
* SDK login (#4051)
* sdk login
* adding to the trail map
* minor fix
* improve sdk expirience
* adapting to new changes
* add docstrings
* block guest from account
* change guest msg
* change guest messages
* add sync on/off
* display onoff
* missing paragraph
* fix glitch on logout
* add sys clear
* filtering password
* filtering the email from user
* avoid writing to multiple log files if a user logs out
* fix bug, guest allowed in installer without connection
* log user on the sdk
* split login from lauch
* add clear and change messages on account
* docstrings
* start pull cmd
* change account menu description
* Fix login bug and decouple some logic (#4056)
* fix bug, guest allowed in installer without connection
* split login from lauch
* improvements on the sdk login
---------
Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt>
* sync fix
* change account controller description
* ruff
* add help on account cmds
* update clear prompt
* fix email not in jwt
* remove jwt from requiremnts
* pull command output
* remove character
* pull cmd when no data
* add space below whoami
* fix log filenotfound exception
* changed arg name
* delete .hist on logout
* add asteriscs to password
* pylint
* uncomment rich config
* show only diffs on pull
* black#
* warn when no changes#
* pull msg was switched
* apply diff only
* breaking?: strbool change
* reduce some code
* add timeout to hub requests
* black
* add remote logout
* success msg only if success
* remove colors in prompt
* update docstrings
* keep timeout outside funcs
* update clear
* clear and patch
* delete session
* routine upload
* move .his file to .openbb folder
* change apply configs
* refactor logout
* remove mixed portfolio changes
* fix bug in lock file
* fix bug pwidth, pheight are floats
* fix sources command & add choices
* refactor timezone setting
* userdata
* fix flair
* need to cast paths
* cast on diff
* fix flair default
* save session test
* get session
* data
* test remove
* test remove with assert
* add bad test cases
* add exception cases to unittests
* test remove cli hist file
* black
* test apply configs
* test apply with sync flag
* test create session, session model
* login tests, session model
* some tests for the hub_model
* test logout user
* black
* test clear vars, reload
* test create session
* update user-json to user
* update user class
* add user tests
* tests sdk session
* tests for hub_model
* start account controller tsts
* unused import
* tests account controller: clear, pull
* tests for session_controller
* logout success bugfix
* add integration test for account
* black
* move routine related commands to other PR
* test for the user input
* completed tests for session controller
* convert to hist to str)
* fix import errors
* ruff
* ruff tests
* fix qa
* add help to settings cmds
* ruff
* fix pull keys bug
* point to dev
* account model tests
* black
* ruff
* fix for empty feature settings
* ruff
* don't display config msg if wrong token
* general msgs
* remove print
* ruff
* fix sources not updated real time
* missing return doc
* add guest if no email
* Routine remote storage (#4143)
* add upload routine command
* remove prints
* point to local again
* add commands
* add delete
* add download command and upload 409
* list comprehension
* add download & save plus upload fixe
* add user uuid folder
* add list command
* ruff
* en.yml detail
* provide choices to delete & download
* add choices to upload
* change menu text
* starting adding unit tests
* bad english
* Update test_print_help.txt
* genearl msgs
* remove print
* add docstrings
* add unit tests to account controller
* change parser
* fix routine upload test
* add to be implemented tests hub
* add to be implemented tests local
* add total pages to title
* split list into model and view
* add docstring
* print msg if character
* add local model tests
* hub tests routines
* fix test
* point to dev and glob
* fix small bug on upload
* missing return
* log decorators missing
* black
* ruff
* change prompt display
* rewrite test
* rewrite expected
* rewrite call
* try passing git action
* change .yml everywhere
---------
Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* Fix plot look when using eval and add query to choices (#3881)
* convert index to datetime and update choices
* uncomment economy integration test
* fix treasury concat bug
* fix datasets concat on duplciates
* Lock ruff version so that new lints dont break our CI (#3905)
* Lock ruff version so that new lints dont break our CI
* Bumped pre-commit ruff version
* returning always a dataframe
* Revert "returning always a dataframe"
This reverts commit d5dbf3132f.
* black everything
---------
* Fix plot look when using eval and add query to choices (#3881)
* convert index to datetime and update choices
* uncomment economy integration test
* fix treasury concat bug
* fix datasets concat on duplciates
* Lock ruff version so that new lints dont break our CI (#3905)
* Lock ruff version so that new lints dont break our CI
* Bumped pre-commit ruff version
* returning always a dataframe
* Revert "returning always a dataframe"
This reverts commit d5dbf3132f.
* quick fix to auto complete args
---------
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* Remove undesired example files
* Update the documentation for routines
* Add in video
* Add some additional text
* Add in a routines example that can be activated with --example
* Remove default old examples
* Add portfolio example holdings file
* Add portfolio optimization example allocation file
* Add example files for the portfolio menus
* Remove code that unintentionaly prints the home menu on every routine
* Add home instead of /
* Remove requirement to add file if you have an example
* Ensure portfolio/po/params also talks about docs correctly
* Move all routine, portfolio and screener presets to the correct folder
* Remove presets since they are moved
* Remove presets since they are moved
* Same implementation as for file in po
* Adjust code so it works with new folder
* Adjust code so it works with new folder
* Adjust code a little since I changed folder
* Update screener documentation to include how to create a screener
* Remove old readme
* Update documentation to better reflect where to find the files
* Also update SDK notes
* Update exe with auto complete and more info
* Add images
* Update images and the last script
* Update text to make it more apparent that it has an example attached
* Add section for routine scripts on home menu
* Make call_about more robust and add record and stop
* Update the routine markdown with info about record/stop including video
* Update scripts
* Update portfolio report
* Update tests and report
* fix small load bug
* rewrite help test
* last fix was buggy
* example by default
* fix po integration test
* keep example on arg
* adapt integration test
* fix portfolio integration test
* fix more portfolio integration tests
* pa is not an option anymore
* portfolio report choices only holdings
* update integration test for portfolio report
* Small formatting improvements
* Remove sleep and fix inconsistent return
* Some spelling
* oops
* Fix tests
---------
Co-authored-by: Jeroen Bouma <jeroenbouma@Jeroens-MacBook-Pro.local>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: Diogo Sousa <montezdesousa@gmail.com>
* bump
* Update ALL the exports with sheet name option
* Update contributing too
* Add in sheet name to each docstring
* Update tests
* Fix the small things for tests
* Converting CONTRIBUTING.md back since I put minimal changes in and it complains
* Fix terminal exit after `--sort p/e` (#4013)
* fix scr sort exit
* rewrite unit test output
* rewind slash replace
* rewind slash replace
* fix regex
* rewrite expected scr tests
* black
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* fix: small typo (#4036)
* fix income comparison error (#4029)
* Update tests due to yfinance error
* I broke tests and fixed them
* Fix tests?
* Missed a few sheet name additions
* missed one more
* Fix some missing sheet_name parameters
* Fix a test I broke
* Update tests due to changes with sheet_name
* Update stocks and common
* Mutual funds just because
* Portfolio update
* Update Forecast
* Update Futures
* Update ETF
* Update Economy
* Update Crypto
* Update others
* Update documentation to explain --sheet-name
* It should be None test
* Add None for sheet_name since empty string can result in errors
* Formatting
* Fix tests
* Update documentation
* Also update the image
* Add back to options commands
Co-authored-by: james <jmaslek11@gmail.com>
Co-authored-by: Jeroen Bouma <jeroenbouma@Jeroens-MacBook-Pro.local>
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: jose-donato <43375532+jose-donato@users.noreply.github.com>
Co-authored-by: teh_coderer <me@tehcoderer.com>
* Fix plot look when using eval and add query to choices (#3881)
* convert index to datetime and update choices
* uncomment economy integration test
* fix treasury concat bug
* fix datasets concat on duplciates
* Lock ruff version so that new lints dont break our CI (#3905)
* Lock ruff version so that new lints dont break our CI
* Bumped pre-commit ruff version
* removing leftover test
* fix forex test to use simple pairs
* fix key error in portfolio test
* fix pylint
* fix stocks_bt test
* fix ca tests
* fixing condition
* fixing int tests
* skipping shroom tests
* adding /red
* linting
* making pre commints happy
* linting
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
* bump
* Add sheet name to export for base load function
* Disable pylint due to known issue with pylint and pandas
* Add robust option if file already exists
* Abstract the sheet name argument into the export data helper
* Feature flag for auto overwrite
* add to featflag menu
* Add featflag to builds
* Remove safety check
* Fix test
* generate integration tests report
* new console report
* simple run_scripts
* move tests script to folder
* add skipping
* always display skips
* func name
* allow running from relative path
* rename some vars and time
* typo
* change portfolio supress and warning
* uncomment economy test
* rename test controller
* multiprocessing
* display test progress and available
* rename func
* mypy
* should not be here
* small changes
* type hinting and docstrings
* new subprocesses default
* forget context and chunksize
* clean len skipt
* small comment
* fix subproc default with v
* minor change
* fix path
* better this way
* make output visible
* allow only sequential run with verbose mode
* change message
* detail
* include andrew idea
* limit multiprocessing to clone version
* fix for package application
* must be up here
* allow verbose with multiprocessing but warn
* update readme
* move tests to core
* Update README.md
* Update README.md
* move readme outside
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* parse subproc arg
* Update README.md
* Fix plot look when using eval and add query to choices (#3881)
* convert index to datetime and update choices
* uncomment economy integration test
* fix treasury concat bug
* fix datasets concat on duplciates
* Lock ruff version so that new lints dont break our CI (#3905)
* Lock ruff version so that new lints dont break our CI
* Bumped pre-commit ruff version
* Delete glossary base command
* move scripts
* ruff
* update pyproject.toml
* update yfinance
* fix futures and economy test, rewrite
* rewrite stocks test yfinance dependent
* refactor sia to yfinance 0.2...
* fix last failing sia tests
* black
* update reqs
Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: Colin Delahunty <72827203+colin99d@users.noreply.github.com>
Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
* fix(docs): added margin between sections
* fix: about command
* fix: about command to match new docs
* sdk aout
* fix: fix homepage
* fix: features -> reference on generate; about on homepage
* fix: juan magic
* update on merge workflows
Co-authored-by: James Maslek <jmaslek11@gmail.com>
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: Diogo Sousa <montezdesousa@gmail.com>
Co-authored-by: teh_coderer <me@tehcoderer.com>