Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release/4.2.1 #6456

Merged
merged 586 commits into from
May 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
586 commits
Select commit Hold shift + click to select a range
225c945
tmx etf info (#6132)
deeleeramone Feb 27, 2024
577a424
[Feature] - Platform V4 Markdown Generator V2 (#6094)
the-praxs Feb 27, 2024
2ae6651
[Docs] Adds Example Notebook for the Implied Earnings Move (#6128)
deeleeramone Feb 27, 2024
ccdb246
[Feature] - Sync with new openapi.json (#6137)
montezdesousa Feb 27, 2024
3d34e56
Fix the v3 markdown generation workflow (#6138)
jmaslek Feb 27, 2024
2332725
update functions.json (#6140)
montezdesousa Feb 27, 2024
d46e960
fix intraday check in charting ta_class (#6119)
deeleeramone Feb 28, 2024
c464f88
[BugFix] Display EconDB as source for macro (#6143)
benvandoren Feb 28, 2024
59e2099
[BugFix] Disable Intrinio `InstitutionalOwnership` model (#6142)
the-praxs Feb 28, 2024
37209c8
add more examples into findSymbols (#6139)
deeleeramone Feb 28, 2024
830acd9
[BugFix] Fix SEC ETF Holdings Parsing Exception (#6121)
deeleeramone Feb 28, 2024
b60d908
Docs/update xl docs (#6145)
montezdesousa Feb 28, 2024
bbc869d
fix get reference (#6147)
montezdesousa Feb 29, 2024
b47c9cc
[BugFix] Filter OECD data using `start_date` and `end_date` parameter…
the-praxs Feb 29, 2024
1d70c87
Merge 'main' into 'develop' (#6151)
montezdesousa Feb 29, 2024
b458d2f
More v3 removals (#6141)
jmaslek Feb 29, 2024
ba18734
[Enhancement] Show the source of error in exception traceback (#6153)
the-praxs Feb 29, 2024
5f5fad0
Improve the OECD requests (#6152)
jmaslek Mar 1, 2024
eb07111
adds AlphaVantage to historical_eps (#6155)
deeleeramone Mar 3, 2024
47541d4
[BugFix] Fix FMP Market Snapshots (#6160)
deeleeramone Mar 4, 2024
c064107
[Feature] - Excel help page (#6165)
montezdesousa Mar 5, 2024
e7896a8
[Feature] Add Currency Snapshots With Data From FMP (#6162)
deeleeramone Mar 5, 2024
6efab3f
[Feature] Add `form_13f` Endpoint to `equity.ownership` (#6122)
deeleeramone Mar 5, 2024
b768bc0
[Bug fix] - Run charting tests again (#6167)
montezdesousa Mar 5, 2024
65ce66e
[Enhancement] Slightly Change The Order of intrinio Cash Flow (#6168)
deeleeramone Mar 6, 2024
76556df
[Bug fix] - Fix integration tests (#6170)
montezdesousa Mar 6, 2024
a8122e9
[Bug fix] - Handle multiple items with arbitrary type (#6171)
montezdesousa Mar 6, 2024
48c508b
[Feature] Custom choices (#6169)
hjoaquim Mar 7, 2024
f24e971
exception in debug mode shows complete argument (#6174)
the-praxs Mar 7, 2024
8f3d332
[Bugfix] - Lower case validator in standard models (#6172)
montezdesousa Mar 8, 2024
8254bd5
[Enhancement] Standardize "X".price.historical Intervals and Params (…
deeleeramone Mar 8, 2024
f328a45
[Feature] - refactor examples (#6154)
montezdesousa Mar 9, 2024
3ea6bcf
[Enhancement] Improve Intrinio Unusual Options (#6177)
deeleeramone Mar 11, 2024
782f8d1
added code to get new examples as string (#6181)
the-praxs Mar 11, 2024
eaae8c2
[Feature] Add Tradier Provider Extension (#6178)
deeleeramone Mar 11, 2024
27a711b
[Feature] - Create static asset tests (#6182)
IgorWounds Mar 11, 2024
a8f5543
Add labels for `breaking_changes` tag (#6184)
luqmanbello Mar 11, 2024
875969a
[Bugfix] - Fix equity/price/historical w/ alphavantage (#6183)
montezdesousa Mar 11, 2024
0115feb
[Enhancement] Allow Multiple Symbols For Intrinio Key Metrics (#6186)
deeleeramone Mar 11, 2024
9341b80
handle date type (#6185)
deeleeramone Mar 11, 2024
898222b
Release bug fixes (#6187)
montezdesousa Mar 11, 2024
d458eb9
[BugFix] Update `README` for Platform (#6189)
the-praxs Mar 11, 2024
87a50f7
[BugFix] Raise Alpha Vantage API Error (#6188)
deeleeramone Mar 11, 2024
08a9740
update econ cal headers (#6191)
deeleeramone Mar 12, 2024
cc7908f
[Release] 4.1.5 to `develop` (#6192)
the-praxs Mar 12, 2024
afd0708
[Bugfix] Update `PUBLISH.md` file (#6193)
the-praxs Mar 12, 2024
137e8b9
Remove charting extension preference from user settings (#6194)
hjoaquim Mar 12, 2024
9ddcf42
[Bugfix] - Small update on PUBLISH.md (#6196)
montezdesousa Mar 12, 2024
b0a1650
[Feature] Hotfix develop main sync (#6200)
piiq Mar 13, 2024
1e98990
Merge branch 'main' into develop
piiq Mar 13, 2024
c0f4f85
Improve the example test (#6203)
IgorWounds Mar 13, 2024
a7a7c64
Improve fetcher test error messages (#6204)
IgorWounds Mar 13, 2024
d984637
[Feature] Add Intrinio ETF Info/Search (#6198)
deeleeramone Mar 13, 2024
540f578
[Enhancement] `ReferenceGenerator` class in `package_builder.py` (#6179)
the-praxs Mar 13, 2024
2ae4f30
Final v3 touches (#6205)
jmaslek Mar 13, 2024
a2ef2ad
[BugFix] Fix empty docstring in data processing functions (#6206)
the-praxs Mar 13, 2024
6d259a5
Add unit tests (#6213)
IgorWounds Mar 14, 2024
fc54b54
Update build-release.yml (#6215)
jmaslek Mar 14, 2024
f62f6d7
[Hotfix] - docs workflow (#6216)
montezdesousa Mar 14, 2024
eca4ea9
[BugFix] - Json schema extra broken in standard models (#6212)
montezdesousa Mar 14, 2024
3b7f18f
[Enhancement] Sync `reference.json` and Platform function docstring (…
the-praxs Mar 14, 2024
19ebd64
Release/3.2.5 (#6218)
montezdesousa Mar 14, 2024
a464040
[Docs] - Update BYOD page (#6217)
montezdesousa Mar 14, 2024
9b0d340
Remove terminal CI actions (#6221)
jmaslek Mar 14, 2024
46f4834
[Feature] Intrinio ETF Price Performance (#6220)
deeleeramone Mar 15, 2024
0239e6e
Remove old tests (#6222)
jmaslek Mar 15, 2024
c55f93c
add Intrinio ETF Holdings (#6208)
deeleeramone Mar 15, 2024
399498c
Update the main README (#6225)
jmaslek Mar 15, 2024
a3fc04c
[Enhancement] Adding an interface to read the reference (#6224)
hjoaquim Mar 15, 2024
72ccf4e
[Feature] Volatility Cones Chart (#6226)
deeleeramone Mar 16, 2024
9ae1307
[Docs] Refactor Contributing Section Of Docs (#6173)
deeleeramone Mar 16, 2024
655b1c8
[Docs] Add Streamlit News Dashboard To Examples (#6158)
deeleeramone Mar 17, 2024
c5c7ade
[Feature] Add Charts For FRED Series (#6234)
deeleeramone Mar 18, 2024
9dcad44
[Feature] Add Intrinio to `obb.equity.market_snapshots()` (#6232)
deeleeramone Mar 18, 2024
44ee276
[BugFix] Merge Fix FMP Intraday (#6229) From Main (#6235)
deeleeramone Mar 19, 2024
bab42a0
fix: broken signature typing (#6238)
montezdesousa Mar 19, 2024
7f4007a
[Feature] - Warn if inexistent kwargs (#6236)
montezdesousa Mar 20, 2024
bb6efdf
Allow kwargs on POST endpoints (#6240)
IgorWounds Mar 20, 2024
78695fa
[BugFix] Return FMP Error Messages (#6237)
deeleeramone Mar 21, 2024
80d3ac6
[BugFix] No event loop when exporting images (#6249)
hjoaquim Mar 22, 2024
23135ab
[BugFix] - Bring back mypy (#6242)
montezdesousa Mar 22, 2024
0cec118
[BugFix] - Fix integration tests workflow file (#6251)
montezdesousa Mar 24, 2024
1794d69
[BugFix] - Untyped variadic keyword arguments break during execution …
montezdesousa Mar 25, 2024
fef92fe
update website to remove the main menu from pro level (#6244)
DidierRLopes Mar 25, 2024
0f44128
[Enhancement] - Cleanup docs (#6254)
IgorWounds Mar 25, 2024
edc3da9
update contributing section (#6255)
montezdesousa Mar 26, 2024
c39d14e
Build the static assets before generating markdown files (#6257)
deeleeramone Mar 27, 2024
657fd1f
[Docs] Break Out Usage Section In Docs Pages (#6258)
deeleeramone Mar 27, 2024
4b5787b
fix: move extra_params warning to query.py (#6259)
montezdesousa Mar 27, 2024
db9960a
[BugFix] - multiple items allowed in provider parameters (#6256)
montezdesousa Mar 28, 2024
27a6fbb
fix charting tests (#6262)
hjoaquim Mar 28, 2024
ce52ef3
[Bugfix] - Test parametrize skips charting tests (#6264)
montezdesousa Mar 28, 2024
7640556
[Bugfix] Removes Charting Integration Test For Chart That Doesn't Exi…
deeleeramone Mar 30, 2024
42a8c8f
[BugFix] yFinance ETF Info: Try Different Field When Missing fundInce…
deeleeramone Mar 30, 2024
6b91e94
make Excel templates downloadable from docs (#6270)
DidierRLopes Mar 31, 2024
559778c
[Release] 4.1.6 (#6266)
hjoaquim Apr 1, 2024
ad8df99
[Git] - Sync main dev (#6276)
montezdesousa Apr 1, 2024
4e0453a
[Feature] - Auto-build test (#6271)
IgorWounds Apr 1, 2024
fe7f11f
[BugFix] Typo on `openbb-quantitative` readme (#6272)
hjoaquim Apr 2, 2024
bc77e07
Add pull_request trigger for release branches in API Integration Test…
luqmanbello Apr 2, 2024
83d03bc
fix: serialize response before fastapi (#6279)
montezdesousa Apr 2, 2024
57deb8e
[Feature] - Annotated results (#6282)
montezdesousa Apr 3, 2024
daa4520
[Feature] - Merge reference.json and extension_map.json, plus docume…
montezdesousa Apr 4, 2024
4599893
update example notebook syntax for metadata change (#6287)
deeleeramone Apr 4, 2024
3f08e0f
[Feature] Add Forward Sales and EPS Estimates (#6269)
deeleeramone Apr 4, 2024
33d186f
[Feature] - Router descriptions (#6288)
montezdesousa Apr 5, 2024
3f4ab6e
Updated docs again (#6289)
colin99d Apr 5, 2024
40c8944
[BugFix] - Fix nested router descriptions (#6292)
montezdesousa Apr 9, 2024
153723d
[Feature] Adding interactive tables (#6290)
hjoaquim Apr 9, 2024
8fed63e
[BugFix] Fix the multiple items check (#6294)
hjoaquim Apr 9, 2024
0a64bd1
[HotFix] Add ETF holdings data param to Intrinio (#6293)
deeleeramone Apr 9, 2024
a255fa5
[Enhancement] - PyDocstyle Compliant (#6284)
IgorWounds Apr 9, 2024
72e322f
[BugFix] Handling negative timestamps on Windows (#6298)
hjoaquim Apr 10, 2024
9517491
[Enhancement] Improve Charting Extension Plots and Indicators (#6243)
deeleeramone Apr 10, 2024
1c26d24
[BugFix] `json_schema_extra` getting overridden (#6300)
hjoaquim Apr 10, 2024
3fc6acb
undocumented benzinga fields in response (#6304)
deeleeramone Apr 11, 2024
00cc450
[BugFix] Fix yFinance end_date filter when not intraday. (#6302)
deeleeramone Apr 11, 2024
3172b9e
[BugFix] Fix metadata creation (#6306)
hjoaquim Apr 11, 2024
b8d1846
[BugFix] - Provider is added to every response item (#6305)
montezdesousa Apr 12, 2024
40ce132
[BugFix] Fixes the API (#6309)
deeleeramone Apr 15, 2024
2c1e409
[Feature] - Update credential filters to v4 (#5949)
montezdesousa Apr 15, 2024
326f239
Add single widgets public endpoints examples (#6312)
DidierRLopes Apr 15, 2024
779708a
[BugFix] Charts: Fix Legend & Title Crowding in Jupyter (#6316)
deeleeramone Apr 17, 2024
510b938
[BugFix] Chunk FMP Price Performance URL For Large Lists (#6317)
deeleeramone Apr 17, 2024
f4db561
remove terminal related artifacts from build folder (#6307)
hjoaquim Apr 18, 2024
3d21325
[BugFix] Replace Platform Docker File. (#6321)
deeleeramone Apr 19, 2024
666db0b
Fix build failing for router-only extensions with no standard models …
piiq Apr 19, 2024
8ab4be9
[BugFix] Add Missing require_credentials=False In Nasdaq Fetchers (#6…
deeleeramone Apr 19, 2024
6cfc475
[BugFix] Adding safe timestamp conversion everywhere (#6299)
hjoaquim Apr 19, 2024
fe0debe
[Docs] Charting Documentation (#6303)
deeleeramone Apr 19, 2024
04d3af5
[Feature] - LLM mode (#6308)
IgorWounds Apr 19, 2024
e1af0a7
[Feature] Add Relative Rotation To `openbb-technical` and `openbb-cha…
deeleeramone Apr 19, 2024
8d2f8ba
[Release] 4.1.7 (#6325)
hjoaquim Apr 20, 2024
ca73a8b
Merge branch 'main' into develop
piiq Apr 20, 2024
929c858
Re update excel docs (#6329)
montezdesousa Apr 22, 2024
f18680a
Merge branch 'main' into develop
piiq Apr 22, 2024
ee42241
[Feature] EconDB Provider Extension With New Economy Endpoints. (#6313)
deeleeramone Apr 22, 2024
2ccf39d
Sync ruff in dev_tool with openbb_core (#6331)
montezdesousa Apr 22, 2024
6b3d6fb
add currency snapshots from polygon (#6333)
deeleeramone Apr 23, 2024
99b8597
[Feature] Async SEC (#6319)
deeleeramone Apr 23, 2024
9bfa378
[Feature] Warn limit number of countries in TE request (#6334)
hjoaquim Apr 23, 2024
3872738
[BugFix] Intrinio News (#6336)
deeleeramone Apr 24, 2024
b418288
Summarize Changelog (#6335)
IgorWounds Apr 24, 2024
3d9a8b3
rename the summarize changelog file (#6338)
luqmanbello Apr 24, 2024
baee6d8
Add pip install requests openai to the workflow file (#6341)
luqmanbello Apr 24, 2024
7f90d74
[BugFix] Intrinio Balance Sheet Period (#6343)
deeleeramone Apr 25, 2024
bd75a97
Move files used in gh actions from root (#6346)
montezdesousa Apr 26, 2024
b43364b
[Feature] OpenBB Platform CLI (#5302)
hjoaquim Apr 29, 2024
efe77be
Clean gitignore (#6347)
montezdesousa Apr 29, 2024
a502766
provider parameters were being removed bc not in signature (#6348)
hjoaquim Apr 29, 2024
4105ec4
ensure everything on the dataframe is a string (#6351)
hjoaquim Apr 29, 2024
9dce734
move linting rules from pyproject.toml to ruff.toml (#6350)
montezdesousa Apr 29, 2024
5f4ee56
[BugFix] Empty views on `econometrics` and `quantitative` (#6353)
hjoaquim Apr 30, 2024
cc15a77
[Feature] - Rename terminal folder (#6349)
montezdesousa Apr 30, 2024
e37c0c0
Remove OpenBB Terminal from docs page (#6354)
IgorWounds Apr 30, 2024
9a02e50
create a title out of the route being used to use it as table title (…
hjoaquim May 1, 2024
c459975
[BugFix] Intrinio EquityPriceHistorical - Return Error Message When I…
deeleeramone May 1, 2024
a0d580a
[Feature] - Display command providers (#6355)
montezdesousa May 1, 2024
4097033
avoid range index as it breaks interactive tables (#6360)
hjoaquim May 2, 2024
18115e4
[Enhancement] - Sanitize sensitive data from `.cli.his` (#6361)
IgorWounds May 2, 2024
cd4e36e
[BugFix] - Remove multiple .envs (#6363)
montezdesousa May 3, 2024
ec7ff94
[BugFix] SEC ETF Holdings - Try Catch for RemoteDisconnect Error (#6359)
deeleeramone May 6, 2024
380891d
[Feature] Improve `OBBject` Registry (#6364)
hjoaquim May 6, 2024
63723f7
[BugFix] Remove `Literal[None,...]` (#6371)
hjoaquim May 7, 2024
d3b9ce6
[BugFix] Set Chart Style Before Output (#6367)
deeleeramone May 7, 2024
5c0b36c
[BugFix] - Fix lowercase symbols (#6342)
IgorWounds May 7, 2024
756eebd
[Feature] Handle repeated non standard arguments (#6366)
hjoaquim May 7, 2024
101990d
Sync main and develop (#6373)
piiq May 7, 2024
e12aac1
[BugFix] - Fix tests for release (#6372)
IgorWounds May 7, 2024
99b0bb5
[Feature] EconDB Main Indicators (#6365)
deeleeramone May 7, 2024
9c0ef12
[BugFix] Ad 'x-' to json_schema_extra in Fields with unit_measurement…
deeleeramone May 8, 2024
1a49dfd
fix pandas warnings (#6375)
deeleeramone May 8, 2024
4d6074d
[BugFix] Fix Currency Search (#6380)
deeleeramone May 9, 2024
f191d16
[BugFix] Update SEC pyproject.toml (#6379)
deeleeramone May 9, 2024
0b9b12d
[Feature] - Redefined standard fields & multiple_items_allowed proper…
montezdesousa May 9, 2024
9bdc0f1
fix fmp (#6383)
deeleeramone May 9, 2024
83476ad
[Feature] Update chart creation so it doesn't break the command execu…
hjoaquim May 9, 2024
5bd4ae0
[Docs] Upgrade Docusaurus to v3 (#6386)
Disorrder May 10, 2024
13a6248
[Feature] Misc improvements on the Platform CLI (#6370)
hjoaquim May 10, 2024
c29200a
fallback to to_df() method when results are a string (#6388)
hjoaquim May 10, 2024
5b74280
[Feature] - Create repo assets directory (#6384)
montezdesousa May 10, 2024
ac3f10a
Security updates (#6387)
piiq May 10, 2024
ac745ad
[Feature] Remove i18n (#6390)
hjoaquim May 10, 2024
0139dbf
[Feature] Update CLI dependencies (#6389)
hjoaquim May 13, 2024
b99655a
[BugFix] - Remove unused old code (#6395)
IgorWounds May 13, 2024
6f9d46d
remove hold command and its references (#6399)
hjoaquim May 13, 2024
1dd8bf3
fix: alias credentials with uppercase (#6400)
montezdesousa May 13, 2024
f47e7ad
Fix Excel Data Slicer page. (#6396)
IgorWounds May 13, 2024
627f7f9
[BugFix] - Remove logos (#6404)
montezdesousa May 13, 2024
4ed5f05
[Feature] CLI README (#6402)
hjoaquim May 13, 2024
10dddfd
[BugFix] - Explicit error message when return type is not an OBBject …
IgorWounds May 13, 2024
922fc54
[BugFix] Fix broken `--sheet-name` argument (#6401)
hjoaquim May 14, 2024
29dfc7b
expose error message on request fail (#6406)
deeleeramone May 14, 2024
2ac1af3
[BugFix] Make `paper_bgcolor` transparent in PyWry backend (#6385)
deeleeramone May 14, 2024
17a7e7d
[BugFix] Econ Calendar (#6392)
deeleeramone May 14, 2024
0eee602
[Feature] Add Forward PE Estimates (#6398)
deeleeramone May 14, 2024
88cdd75
[Feature] Custom Provider choices available on the `reference.json` (…
hjoaquim May 14, 2024
0769378
[BugFix] - Replace python-jose by PyJWT (#6407)
montezdesousa May 14, 2024
c2f5f7a
[Feature] Styling adjustments (#6408)
hjoaquim May 14, 2024
ca09493
add platform imgs (#6410)
hjoaquim May 14, 2024
f87c21e
[Feature] Main README (#6403)
hjoaquim May 14, 2024
a116d9b
[Feature] - OpenBB Platform CLI Unit tests (#6397)
IgorWounds May 14, 2024
8d060dc
[Feature] CLI docs (#6362)
hjoaquim May 14, 2024
05322de
add linux stuff to pre-requisites (#6411)
deeleeramone May 14, 2024
174d7e6
Improve web security (#6405)
piiq May 14, 2024
c61d10d
Update the license of the code in this repo to AGPL (#6415)
piiq May 14, 2024
74652ec
missed unit_measurements (#6416)
deeleeramone May 15, 2024
8399043
[BugFix] - Update GitHub workflows (#6418)
montezdesousa May 15, 2024
cc8263a
[Release] 4.2.0 (#6420)
hjoaquim May 15, 2024
4c4f57f
[BugFix] - `dev_install.py` updates (#6424)
montezdesousa May 16, 2024
e124457
[BugFix] Clear Linting Items (#6423)
deeleeramone May 17, 2024
3df4e05
[BugFix] Do Intrinio News TO-DOs -> Remove workaround because they fi…
deeleeramone May 17, 2024
7efe96c
[Feature] Small CLI docs style improvements (#6429)
hjoaquim May 17, 2024
d903bf8
fmp key metrics (#6428)
deeleeramone May 17, 2024
b33e563
[Feature] OpenBB Platform DevContainer (#6426)
hjoaquim May 17, 2024
b7b5e40
[BugFix] FMP Screener - Convert sector param choices to lower_snake_c…
deeleeramone May 18, 2024
ef311a1
[Feature] Balance Of Payments For FRED (#6431)
deeleeramone May 20, 2024
be75bfe
[Feature] Improve Exception handlers (#6430)
montezdesousa May 20, 2024
c65c4ad
use shlex for spliting the user input (#6436)
hjoaquim May 20, 2024
96ade73
fix: only update credentials on login (#6437)
montezdesousa May 20, 2024
6fd00e7
remove space from literals (#6438)
hjoaquim May 20, 2024
e292237
[Feature] Deprecate `etf.holdings_performance` endpoint (#6441)
hjoaquim May 20, 2024
bffd88f
[Feature] Forward EBITDA (#6433)
deeleeramone May 20, 2024
bf20807
[Feature] Compare Company Facts (SEC) (#6444)
deeleeramone May 21, 2024
9265247
add bs4 to sec pyproject.toml (#6440)
deeleeramone May 21, 2024
1994b34
[BugFix] Bump anyio & sync pre-commit, openbb-devtools and GitHub wor…
montezdesousa May 21, 2024
c4de0a8
Remove xlsx export from CLI's interactive tables (#6439)
piiq May 21, 2024
6a10598
Remove PDF export capabilities (#6442)
piiq May 21, 2024
ce57dfc
fix: add back api.dockerfile (#6449)
montezdesousa May 21, 2024
63b8d60
Update requests and idna to patched versions (#6448)
piiq May 21, 2024
8baf4d7
[Feature] Government Yield Curves + Chart (#6417)
deeleeramone May 21, 2024
8ea07ce
minor updates to examples
hjoaquim May 22, 2024
f91791d
[BugFix] Revamp the usage of list syntax on routines (#6450)
hjoaquim May 22, 2024
92f1d00
Merge branch 'develop' into release/4.2.1
IgorWounds May 22, 2024
7531e1d
fix: move api.dockerfile (#6454)
montezdesousa May 22, 2024
fd50a13
Merge branch 'develop' into release/4.2.1
hjoaquim May 22, 2024
c74f3df
static assets
hjoaquim May 22, 2024
3a8a71d
[Docs] Refactor Docs Pages For Diataxis (#6315)
deeleeramone May 22, 2024
e2f70c6
core
hjoaquim May 22, 2024
3d9bc4f
Merge branch 'develop' into release/4.2.1
hjoaquim May 22, 2024
c3493cc
extensions
hjoaquim May 22, 2024
03fc86b
openbb ; bump patch versions of all packages
hjoaquim May 22, 2024
96b5b24
cli bump versions
hjoaquim May 22, 2024
f7f875a
Merge branch 'release/4.2.1' of github.com:OpenBB-finance/OpenBBTermi…
hjoaquim May 22, 2024
ebec1af
better publish.md
hjoaquim May 22, 2024
dcf64a0
better publish.md
hjoaquim May 22, 2024
dd40fae
static assets: bumped versions
hjoaquim May 22, 2024
f6b1506
Merge remote-tracking branch 'OpenBB-finance/main' into release/4.2.1
hjoaquim May 22, 2024
413eaee
ruff
hjoaquim May 22, 2024
b407a01
removing mypy line
hjoaquim May 22, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
13 changes: 13 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"name": "OpenBB Platform Dev Container",
"image": "mcr.microsoft.com/devcontainers/python:1-3.10-bookworm",
"postCreateCommand": "python3 -m venv obb && . obb/bin/activate && pip install poetry && python3 openbb_platform/dev_install.py --extras --cli",
"customizations": {
"vscode": {
"extensions": [
"ms-python.python",
"ms-python.vscode-pylance"
]
}
}
}
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -52,3 +52,6 @@ cli/openbb_cli/assets/styles/user/hub.richstyle.json

# Platform
openbb_platform/openbb/package/*

# Dev Container env
obb/*
10 changes: 6 additions & 4 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ repos:
- id: check-merge-conflict
- id: detect-private-key
- repo: https://github.com/psf/black
rev: 24.1.0
rev: 24.4.2
hooks:
- id: black
- repo: https://github.com/charliermarsh/ruff-pre-commit
rev: "v0.0.285"
rev: "v0.4.4"
hooks:
- id: ruff
- repo: https://github.com/pycqa/pydocstyle
Expand All @@ -26,7 +26,7 @@ repos:
entry: pydocstyle
language: python
types: [python]
files: '^openbb_platform/.*\.py$'
files: '^(openbb_platform/|cli/).*\.py$'
exclude: 'tests/.*\.py|openbb_platform/test_.*\.py'
args: ["--config=ruff.toml"]
- repo: https://github.com/codespell-project/codespell
Expand All @@ -41,7 +41,8 @@ repos:
"--skip=./**/tests/**,./**/test_*.py,.git,*.css,*.csv,*.html,*.ini,*.ipynb,*.js,*.json,*.lock,*.scss,*.txt,*.yaml,build/pyinstaller/*,./website/config.toml",
"-x=.github/workflows/general-linting.yml"
]
- repo: local
- repo: https://github.com/pre-commit/mirrors-mypy
rev: "v1.6.1"
hooks:
- id: mypy
name: mypy
Expand All @@ -50,6 +51,7 @@ repos:
language: python
"types_or": [python, pyi]
args: ["--ignore-missing-imports", "--scripts-are-modules", "--check-untyped-defs"]
additional_dependencies: ["types-requests", "types-setuptools"]
require_serial: true
- repo: https://github.com/kynan/nbstripout
rev: 0.6.1
Expand Down
14 changes: 0 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,3 @@
## Announcement

OpenBB Terminal v3.2.5 will be the last release made available.

As we transition our focus to the OpenBB Platform, this repository will soon be rebranded as OpenBB-finance/OpenBBPlatform.

However, we are committed to continuing our mission to democratize investment research by helping users and contributors with financial data integration and standardization.

To achieve that, we are working on a new CLI tool built on top of the OpenBB Platform that will soon be available to everyone for free.

[![GitHub release](https://img.shields.io/github/release/OpenBB-finance/OpenBBTerminal.svg?maxAge=3600)](https://github.com/OpenBB-finance/OpenBBTerminal/releases)

---

<br />
<img src="https://github.com/OpenBB-finance/OpenBBTerminal/blob/develop/images/platform-light.svg?raw=true#gh-light-mode-only" alt="OpenBB Terminal logo" width="600">
<img src="https://github.com/OpenBB-finance/OpenBBTerminal/blob/develop/images/platform-dark.svg?raw=true#gh-dark-mode-only" alt="OpenBB Terminal logo" width="600">
Expand Down
47 changes: 47 additions & 0 deletions build/docker/api.dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# ---- Base Python ----
FROM python:3.11-slim-bullseye AS base

# set work directory
WORKDIR /openbb

# set environment variables
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1

# install dependencies
RUN apt-get update \
&& apt-get install -y --no-install-recommends build-essential openssh-client curl \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*

# install toml and poetry
RUN pip install toml poetry

# ---- Copy Files/Build ----
FROM base AS builder

WORKDIR /openbb

# install Rust
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y \
&& apt-get update \
&& apt-get install -y --no-install-recommends libwebkit2gtk-4.0-dev \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*

# add Rust to PATH
ENV PATH="/root/.cargo/bin:${PATH}"

COPY ./openbb_platform ./openbb_platform

# Install the SDK
RUN pip install /openbb/openbb_platform[all]
RUN pip install openbb-devtools

# ---- Copy Files ----
FROM base

COPY --from=builder /usr/local /usr/local

# Specify the command to run
CMD ["uvicorn", "openbb_core.api.rest_api:app", "--host", "0.0.0.0", "--port", "8000", "--reload"]
26 changes: 12 additions & 14 deletions build/pypi/openbb_platform/PUBLISH.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,6 @@
2. Ensure all the CI workflows pass.
3. Ensure all unit tests pass: `pytest openbb_platform -m "not integration"`
4. Ensure all integration tests pass: `pytest openbb_platform -m integration`
5. Run `python -c "import openbb; openbb.build()"` to build the static assets. Make sure that only required extensions are installed.

> **Note**: Run `python -c "import openbb"` after building the static to check that no additional static is being built.

6. Finally, check if everything works:

1. Install the packages locally using `python openbb_platform/dev_install.py` command and test them in a new environment.
2. Check if all the `pyproject.toml` files are correct, including the `openbb_platform` one.
3. Double check if there is any new extension or provider that needs to be added to [integration tests GitHub Action workflow](/.github/workflows/platform-api-integration-test.yml).

## Release procedure

Expand All @@ -35,11 +26,18 @@
1. For the core package run: `python build/pypi/openbb_platform/publish.py --core`
2. For the extension and provider packages run: `python build/pypi/openbb_platform/publish.py --extensions`
3. For the `openbb` package - **which requires manual publishing** - do the following
- Bump the dependency package versions
- Re-build the static assets that are bundled with the package
- Run unit tests to validate the existence of deprecated endpoints
- Run `poetry publish --build` from `openbb_platform`
- Run `poetry lock` from `openbb_platform`
1. Bump the dependency package versions

> [!WARNING]
> Create a new environment before proceeding.
> Make sure that only required extensions are installed

2. Re-build the static assets that are bundled with the package: `python -c "import openbb; openbb.build()"`
- Run `python -c "import openbb"` after building the static to check that no additional static is being built.
- Run any command to smoke test if the static assets are being built correctly.
3. Run unit tests to validate the existence of deprecated endpoints
4. Run `poetry publish --build` from `openbb_platform`
5. Run `poetry lock` from `openbb_platform`

> [!TIP]
> Note that, in order for packages to pick up the latest versions of dependencies, it is advised to clear the local cache of the dependencies:
Expand Down
8 changes: 4 additions & 4 deletions cli/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@

## Overview

The OpenBB CLI is a command line interface that wraps [OpenBB Platform](https://docs.openbb.co/platform).
The OpenBB Platform CLI is a command line interface that wraps [OpenBB Platform](https://docs.openbb.co/platform).

It offers a convenient way to interact with the OpenBB Platform and its extensions, as well as automate data collection via OpenBB Routine Scripts.

Find the most complete documentation, examples, and usage guides for the OpenBB Platform CLI [here](https://my.openbb.co/app/cli).
Find the most complete documentation, examples, and usage guides for the OpenBB Platform CLI [here](https://docs.openbb.co/cli).

## Installation

Expand All @@ -24,9 +24,9 @@ The command below provides access to the all the available OpenBB extensions beh
pip install openbb-cli
```

> Note: Find the most complete installation hints and tips [here](https://my.openbb.co/app/cli/installation).
> Note: Find the most complete installation hints and tips [here](https://docs.openbb.co/cli/installation).

After the installation is complete, you can deploy the OpenBB CLI by running the following command:
After the installation is complete, you can deploy the OpenBB Platform CLI by running the following command:

```bash
openbb
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,6 @@ def _process_class(
if name.startswith("__") or name.startswith("_"):
continue
if inspect.ismethod(member):

class_name = cls._get_class_name(target)
methods[f"{class_name}_{name}"] = ArgparseTranslator(
func=member,
Expand Down
3 changes: 0 additions & 3 deletions cli/openbb_cli/argparse_translator/argparse_translator.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ class ArgparseActionType(Enum):


class CustomArgument(BaseModel):

name: str
type: Optional[Any]
dest: str
Expand Down Expand Up @@ -62,7 +61,6 @@ def remove_props_on_store_true(cls, values: "CustomArgument"):

# override
def model_dump(self, **kwargs):

res = super().model_dump(**kwargs)

# Check if choices is present and if it's an empty tuple remove it
Expand Down Expand Up @@ -152,7 +150,6 @@ def _get_choices(self, type_: str, custom_choices: Any) -> Tuple:
def build_custom_groups(self):
"""Build the custom groups from the reference."""
for route, v in self.reference.items():

for provider, args in v["parameters"].items():
if provider == "standard":
continue
Expand Down
11 changes: 7 additions & 4 deletions cli/openbb_cli/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,15 @@

import sys

from openbb_cli.config.setup import bootstrap
from openbb_cli.controllers.cli_controller import launch


def main():
"""Use the main entry point for the OpenBB CLI."""
"""Use the main entry point for the OpenBB Platform CLI."""
print("Loading...\n") # noqa: T201

# pylint: disable=import-outside-toplevel
from openbb_cli.config.setup import bootstrap
from openbb_cli.controllers.cli_controller import launch

bootstrap()

dev = "--dev" in sys.argv[1:]
Expand Down
34 changes: 23 additions & 11 deletions cli/openbb_cli/controllers/base_controller.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import difflib
import os
import re
import shlex
from abc import ABCMeta, abstractmethod
from datetime import datetime
from pathlib import Path
Expand Down Expand Up @@ -240,7 +241,7 @@ def switch(self, an_input: str) -> List[str]:
else:
try:
(known_args, other_args) = self.parser.parse_known_args(
an_input.split()
shlex.split(an_input)
)
except Exception as exc:
raise SystemExit from exc
Expand Down Expand Up @@ -744,11 +745,11 @@ def parse_known_args_and_warn(
choices_export = ["csv", "json", "xlsx"]
help_export = "Export raw data into csv, json, xlsx"
elif export_allowed == "figures_only":
choices_export = ["png", "jpg", "pdf", "svg"]
help_export = "Export figure into png, jpg, pdf, svg "
choices_export = ["png", "jpg", "svg"]
help_export = "Export figure into png, jpg, svg "
else:
choices_export = ["csv", "json", "xlsx", "png", "jpg", "pdf", "svg"]
help_export = "Export raw data into csv, json, xlsx and figure into png, jpg, pdf, svg "
choices_export = ["csv", "json", "xlsx", "png", "jpg", "svg"]
help_export = "Export raw data into csv, json, xlsx and figure into png, jpg, svg "

parser.add_argument(
"--export",
Expand Down Expand Up @@ -798,11 +799,22 @@ def parse_known_args_and_warn(
return None

try:
# If the user uses a comma separated list of arguments, split them
for index, arg in enumerate(other_args):
if "," in arg:
parts = arg.split(",")
other_args[index : index + 1] = parts
# Determine the index of the routine arguments
routine_args_index = next(
(
i + 1
for i, arg in enumerate(other_args)
if arg in ("-i", "--input")
and "routine_args" in [action.dest for action in parser._actions]
),
-1,
)
# Split comma-separated arguments, except for the argument at routine_args_index
other_args = [
part
for index, arg in enumerate(other_args)
for part in (arg.split(",") if index != routine_args_index else [arg])
]

(ns_parser, l_unknown_args) = parser.parse_known_args(other_args)

Expand All @@ -811,7 +823,7 @@ def parse_known_args_and_warn(
"raw_data_and_figures",
]:
ns_parser.is_image = any(
ext in ns_parser.export for ext in ["png", "svg", "jpg", "pdf"]
ext in ns_parser.export for ext in ["png", "svg", "jpg"]
)

except SystemExit:
Expand Down
1 change: 0 additions & 1 deletion cli/openbb_cli/controllers/base_platform_controller.py
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,6 @@ def method(self, other_args: List[str], translator=translator):
title = f"{self.PATH}{translator.func.__name__}"

if obbject:

if isinstance(obbject, OBBject):
if session.max_obbjects_exceeded() and obbject.results:
session.obbject_registry.remove()
Expand Down
10 changes: 6 additions & 4 deletions cli/openbb_cli/controllers/choices.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,11 +58,13 @@ def __mock_parse_known_args_and_warn(
choices_export = ["csv", "json", "xlsx"]
help_export = "Export raw data into csv, json, xlsx"
elif export_allowed == "figures_only":
choices_export = ["png", "jpg", "pdf", "svg"]
help_export = "Export figure into png, jpg, pdf, svg "
choices_export = ["png", "jpg", "svg"]
help_export = "Export figure into png, jpg, svg "
else:
choices_export = ["csv", "json", "xlsx", "png", "jpg", "pdf", "svg"]
help_export = "Export raw data into csv, json, xlsx and figure into png, jpg, pdf, svg "
choices_export = ["csv", "json", "xlsx", "png", "jpg", "svg"]
help_export = (
"Export raw data into csv, json, xlsx and figure into png, jpg, svg "
)

parser.add_argument(
"--export",
Expand Down
22 changes: 13 additions & 9 deletions cli/openbb_cli/controllers/cli_controller.py
Original file line number Diff line number Diff line change
Expand Up @@ -355,7 +355,7 @@ def call_exe(self, other_args: List[str]):
"--input",
help="Select multiple inputs to be replaced in the routine and separated by commas. E.g. GME,AMC,BTC-USD",
dest="routine_args",
type=lambda s: [str(item) for item in s.split(",")],
type=str,
)
parser.add_argument(
"-e",
Expand Down Expand Up @@ -431,17 +431,22 @@ def call_exe(self, other_args: List[str]):
with open(routine_path) as fp:
raw_lines = list(fp)

script_inputs = []
# Capture ARGV either as list if args separated by commas or as single value
if ns_parser.routine_args:
script_inputs = (
ns_parser.routine_args
if "," not in ns_parser.routine_args
else ns_parser.routine_args.split(",")
if routine_args := ns_parser.routine_args:
pattern = r"\[(.*?)\]"
matches = re.findall(pattern, routine_args)

for match in matches:
routine_args = routine_args.replace(f"[{match}]", "")
script_inputs.append(match)

script_inputs.extend(
[val for val in routine_args.split(",") if val]
)

err, parsed_script = parse_openbb_script(
raw_lines=raw_lines,
script_inputs=script_inputs if ns_parser.routine_args else None,
raw_lines=raw_lines, script_inputs=script_inputs
)

# If there err output is not an empty string then it means there was an
Expand Down Expand Up @@ -546,7 +551,6 @@ def run_cli(jobs_cmds: Optional[List[str]] = None, test_mode=False):
t_controller.print_help()

while ret_code:

# There is a command in the queue
if t_controller.queue and len(t_controller.queue) > 0:
# If the command is quitting the menu we want to return in here
Expand Down
Loading
Loading