Commit Graph

16 Commits

Author SHA1 Message Date
montezdesousa
105557e898 Feature/routine tags (#5154)
* 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>
2023-06-21 12:31:00 +00:00
montezdesousa
76fcaf77da Upload routine to hub on stop (#5077)
* upload routine to hub on stop

* write cassette

* write cassette

* remove .openb from name

---------

Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-05-31 10:42:56 +00:00
montezdesousa
7d3172a5f5 Make default routines available & download personal routines on login (#4737)
* 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>
2023-04-13 12:44:31 +00:00
montezdesousa
f0b5cc0aaa Hub | Fallback to .env + don't upload keys + update support link (#4756)
* fallback to .env

* dont send keys to hub

* remove keys from upload_config

* display keys hierarchy

* pylint

* fix unittest

* Update session_model.py

* point terminal support to .dev

* rewrite tests
2023-04-13 12:40:02 +00:00
montezdesousa
d2212cd7c3 Warn user when there is no personal access token (#4725)
* warn user if no token found - 404

* add spaces to colors and theme application

* be more explicit about which color preference is failing

---------

Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt>
2023-04-10 10:50:29 +00:00
montezdesousa
2b52337da9 Keep hub sources updated and allow only available sources in the terminal (#4711)
* 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
2023-04-09 22:10:37 +00:00
montezdesousa
b9ea4d5cd0 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>
2023-04-05 12:13:34 +00:00
montezdesousa
f5230b26c0 Hub | sync, pull, sources and other updates (#4640)
* 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
2023-04-03 13:49:53 +00:00
jose-donato
165abe2480 Adds foundation for dark mode from user (#4623)
* fix: adds foundation for dark mode from user

* start theme sync with hub

* send chart_tables to backend

* last fix

* fix: pushed table html

* fix: footer size wasnt correct

---------

Co-authored-by: Diogo Sousa <montezdesousa@gmail.com>
Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com>
2023-04-03 10:58:40 +00:00
montezdesousa
291344b9c0 Autogenerate credentials model from json (#4624)
* 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>
2023-04-03 09:12:01 +00:00
montezdesousa
b6b42afd71 Hub | Add colors, sources sync (#4546)
* 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

* refactor colors preference

* no theme, no party

* add colors sync

* dynamic theme

* add comment

* add colors to settings

* ruff

* linting

* update menu desc

* adjust keys sync flag

* write to dotenv sync flag

* english

* fix pull command

* fix edge cases

* handle some errors

* small bug

* change func name

* pylint

* no light

* colors preview

* ruff

* fix login logout preferences

* ruff

* delete folder

* pylint

* default, custom, hub

* fix clear

* docstring

* add preference exceptions

* set only rich style

* request theme only if hub

* linting

* change guest msg

* add option to update chart style on the fly

* apply style

* rollback to old terminal style

* fix console theme

* remove print

* remove hub rich style

* ruff

* mypy

* black

* Hub | Add sources sync (#4565)

* Add sources model

* adapt session model

* fetch sources dict

* rename local funcs

* set sources inside current user

* set sources inside current user

* generate sources dict from hub

* fix dict generator

* send request to hub

* fix conflict

* revert datasources to develop head

* fix docstring

* avoid invalid patch types

* add default option to sources

* fix small bug on sources

* ruff

* black

* remove (

* mypy failing only on git

* ignore mypy

* pylint

* fix settings controller

* Tests: fix keys model writing to .env

* fix keys controller test writing to .env

* ruff

* Test: fix account controller

* Test: fix account controller pull

* Tests: fix launch terminal

* Test: add sources to user object

* Tests: fix clear cmd tests

* ruff

* revert core/sdk changes

* TerminalStyle docstring

* upload config docstring

* remove comment

* remove unecessary pylint disable

* revert openbb_terminal/sdk changes

* Terminal style docstring

* docstring

* remove unecessary changes

* add TODO

* add other todo

* Tests: prevent sync from being written in .env

* change clear msg

* display sources source on menu

* update settings controller

* display keys source

* black

* sync not needed for pull

* remove sync from apply configs

* change func name for consistency

* Update test_keys_model.py

* save rich style in user folder

* search recursively inside styles

* set hub theme by default

* remove debug print

* allow any plot style

* comment plotstyle sync for now

* fix sources set terminal to hub

* ruff

* rewrite cassettes

* remove repeated settings

* rewrite expected
2023-03-27 16:59:36 +00:00
Henrique Joaquim
937d033160 Adds BaseModel and SystemModel (#4491)
* adding BaseModel

* initial version of the system model

* creating setup functions and removing constants from config_terminal

* removing log_supress const

* fix test

* merge

* system handler

* fix import

* centralized configs setup

* repr to use the BaseModel

* updating i18n dict location

* ignoring warning on wrong type-var

* ruff

* Update openbb_terminal/core/models/system_model.py

Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>

* Update openbb_terminal/core/models/system_model.py

Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>

* import literal

* loading env files before the plot backend is called

* fix tests/openbb_terminal/test_terminal_helper.py

* tests need to have i18n initialized

* fix seeking_alpha tests

---------

Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com>
2023-03-22 15:00:58 +00:00
montezdesousa
18b82a7d80 Hub | save preferences locally (#4494)
* remove preferences sync

* refactor preferences handler

* change func name

* remove credentials handler + add writedotenv

* remove flair and sync from cloud

* read flair from env dict

* remove unused func

* simplify func

* ruff

* mypy

* remove token from keys

* simplify handle credential

* save exception load env just in case

* uncomment dev link

* pylint

* fix accounte controller

* fix sdk keys bug

* fix bug on apply_configs

* fix feature flags controller tests

* mock properly

* remove comment

* fix more tests

* fix test

* fix screeninfo

* update ff controller after develop merge

* fix sync test
2023-03-16 16:58:10 +00:00
montezdesousa
7ec63f827b Authentication QA fixes (#4472)
* fix logout cmd

* fix sync flag

* change msg

* update request test for delete session

* fix autocompletion for routines upload

* append to list of choices

* fix autocompletioin

* black

* mypy

* rewrite tests
2023-03-14 17:52:56 +00:00
montezdesousa
6a26d4e908 Update routines upload (#4445)
* update routines

* ruff
2023-03-10 10:34:33 +00:00
montezdesousa
475ebb5acd [WIP] Migrate user, feature flags and configurations to dataclass (#4309)
* implement user and change is guest

* replace User methods

* move remaining functions to user

* fix bug

* portfolio test

* fix tests

* fix tests

* uncomment skip

* ruff

* start credentials model implementation

* change deault structure

* refacto quandl

* change default struct and file names

* bug

* start using global user

* add comments

* move update flair

* change cfg references in keys model

* reddit & fmp

* refactore additional keys

* remaing config keys

* remove unsude imports and fix hub keys

* ruff

* fix line too long

* unblock unittests

* fix keys model tests

* remove os patch

* fix account controller tests

* fix account controller tests

* fix account model

* account fixed

* fix user tests

* User Model

* User Model

* User Model

* Move session folder

* User Model : grouping the models

* User Model : fix bugs

* Config Plot + bug fix

* User Model : Refactoring plots

* Feature flags

* Remove dup

* clean comments a fix some vars

* fix feature flags controller

* refactor obbff from settings controller

* refactor a bunch of obbff variables

* fix bug blocking terminal

* fix integration tests

* refactor controllers with obbff

* refactor remaining ffs

* remove comments

* log not started

* mispelled variable

* set current user on local model

* User Model : moving files + updating

* User Preferences

* User : Refactor is_guest function + bug fix

* User : refactor is_guest function

* Fix conftest.py

* remove lost obbffs

* typo on fileoverwrite

* Plot config: move variables and start plot dpi

* User : tests

* refactor plot dpi references

* remove plot dpi imports

* refactor some config terminal leftover

* /account/sync : fix bug

* remove configs reload

* start path refactor

* installation paths vs user paths

* remove cfg_plot

* Tests : User Refactoring

* user prefix only for preferences

* user prefix only for preferences

* move user paths

* remove comment

* update apply remote configs

* fix tz not updating

* save some copys

* small fix

* create interface for credentials and preferences

* wrong docstrings fixed

* ruff core

* fix some pref setting

* login is better

* ruff

* ruff

* remove Literal

* add small comment

* Tests : User Refactoring

* Credentials Model : add DataBento

* Fix helper_funcs

* Fixing code

* Tests : fixing

* User Model : freezing the models

* Fixed Income + Databento

* Tests : fixing keys

* black

* ruff

* Tests : user model

* Tests : user model

* Fix linting

* Fix linting

* Linting

* Linting

* Fixing code and tests

* Fix tests

* mypy

* SDK

* Clean ruff cache

* Fix syntax issue

* Update fred_view

* Black

* Linting

* Update code

* Update tests

* Linting

* Linting

* Tests

* Black

* Linting

* Linting

* Mock os.listdir to avoid looking for file that doesnt exist

* Mock options paths

* lint

* Tests : fix

* Code : update

* Tests + Linting

* Tests

* Ruff

* Code : update

* Tests

* Code : update

* Fix workflow

* Code : update

---------

Co-authored-by: Chavithra PARANA <chavithra@gmail.com>
Co-authored-by: luqazino@gmail.com <luqazino@gmail.com>
Co-authored-by: James Maslek <jmaslek11@gmail.com>
2023-03-05 00:37:19 +01:00