-
Notifications
You must be signed in to change notification settings - Fork 14.1k
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
fix(dependency): Pin pystan after breaking prophet install #13852
fix(dependency): Pin pystan after breaking prophet install #13852
Conversation
Note:
|
Thanks Étienne for surfacing it! so much going on we lost track of updating/maintaining this feature. @EBoisseauSierra would you like to 'own' this piece and keep it in good shape going forward? 😉 |
Codecov Report
@@ Coverage Diff @@
## master #13852 +/- ##
==========================================
+ Coverage 75.56% 77.30% +1.73%
==========================================
Files 935 938 +3
Lines 47275 47558 +283
Branches 5883 6005 +122
==========================================
+ Hits 35725 36765 +1040
+ Misses 11375 10646 -729
+ Partials 175 147 -28
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
d18eb3f
to
38d7fa5
Compare
will prophet 1.0.1 work with Superset? if not, then this change makes sense. otherwise, let's bump prophet instead |
You are right that it's a better thing to do. Unfortunately, I hadn't much time to extensively test bumping I will test bumping P.S.: FYI, I'm currently testing it on https://github.com/EBoisseauSierra/superset/tree/bump-prophet
Thanks for offering. I would be happy to monitor when Prophet fixes its dependency, to revert this change; yet I'm afraid I am not familiar enough with prophet to properly “own” the extension. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This lgtm, thanks for pulling in the dep pinning patch from upstream
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for fixing this - I noticed the other day I had trouble getting prophet to work but didn't have time to investigate, I'm happy I was able to freeride on your fix! :)
Prophet is heavily dependent on Pystan: https://facebook.github.io/prophet/docs/installation.html Pystan has recently (2021-03-25) release its v3.0.0. This release is not backward compatible and breaks fbprophet: facebook/prophet#1856 (Indeed, fbprophet 0.6 specifies `pystan>=2.14` — but doesn't restrict upgrading to next major release: https://github.com/facebook/prophet/blob/0.6/python/requirements.txt#L3) So we need to pin pystan to the lastest non 3.x release, while fbprophet fixes the dependency on their side. We have taken this opportunity to bump fbprophet too to its next minor version. Signed-off-by: Étienne Boisseau-Sierra <etienne.boisseau-sierra@unipart.io>
38d7fa5
to
83ed5fd
Compare
* master: (26 commits) chore: bump to new superset-ui version (#13932) fix: do not run containers as root by default in Helm chart (#13917) feat(explore): adhoc column formatting for Table chart (#13758) fix(sqla-query): order by aggregations in Presto and Hive (#13739) feat(alert/report): add ALERTS_ATTACH_REPORTS feature flags + feature (#13894) test: Fixes PropertiesModal_spec (#13548) fix: Pin Prophet dependency after breaking changes (#13852) test: Adds tests to dnd controls (#13650) test: Adds tests to the AnnotationLayer component (#13748) test: Refactor and enhance tests for the Explore DatasourcePanel Component (#13799) Add tests (#13778) test: DisplayQueryButton (#13750) Fixing condition around left margin for dashboard layout. Fixes #13863 (#13905) Revert "fix: select table overlay (#13694)" (#13901) test: Adds tests to the OptionControls component (#13729) test: DatasourceControl (#13605) tests for function handleScroll (#13896) test: Adds tests to the CustomFrame component (#13675) test: Adds tests to the AdvancedFrame component (#13664) test: DataTableControl (#13668) ...
Prophet is heavily dependent on Pystan: https://facebook.github.io/prophet/docs/installation.html Pystan has recently (2021-03-25) release its v3.0.0. This release is not backward compatible and breaks fbprophet: facebook/prophet#1856 (Indeed, fbprophet 0.6 specifies `pystan>=2.14` — but doesn't restrict upgrading to next major release: https://github.com/facebook/prophet/blob/0.6/python/requirements.txt#L3) So we need to pin pystan to the lastest non 3.x release, while fbprophet fixes the dependency on their side. We have taken this opportunity to bump fbprophet too to its next minor version. Signed-off-by: Étienne Boisseau-Sierra <etienne.boisseau-sierra@unipart.io>
Superset relies on the `fbprophet` package for timeseries forecasting. Prophet itself relies on `pystan`. Pystan has released a new MAJOR version (3.x), which is backwards incompatible. So this breaks the current `fbprophet>=0.6,<0.7` requirement. One approach to fix this is to pin the `pystan` (sub)dependency to a pre-v3.x version (cf. PR apache#13852). Yet a better approach seems to bump `fbprophet` itself to a pystan>=3.0 compatible version. In the meantime, `fbprophet` v0.x has been promoted to `prophet` v1.x. cf. https://pypi.org/project/fbprophet/#history (latest version 0.7.1 on Sep 5, 2020) vs. https://pypi.org/project/prophet/#history (1.0.1 on Mar 29, 2021). Signed-off-by: Étienne Boisseau-Sierra <etienne.boisseau-sierra@unipart.io>
See apache/superset#13852 Signed-off-by: Étienne Boisseau-Sierra <etienne.boisseau-sierra@unipart.io>
Prophet is heavily dependent on Pystan: https://facebook.github.io/prophet/docs/installation.html Pystan has recently (2021-03-25) release its v3.0.0. This release is not backward compatible and breaks fbprophet: facebook/prophet#1856 (Indeed, fbprophet 0.6 specifies `pystan>=2.14` — but doesn't restrict upgrading to next major release: https://github.com/facebook/prophet/blob/0.6/python/requirements.txt#L3) So we need to pin pystan to the lastest non 3.x release, while fbprophet fixes the dependency on their side. We have taken this opportunity to bump fbprophet too to its next minor version. Signed-off-by: Étienne Boisseau-Sierra <etienne.boisseau-sierra@unipart.io>
as this has been fixed upstream in apache/superset#13852 Signed-off-by: Étienne Boisseau-Sierra <etienne.boisseau-sierra@unipart.io>
as this has been fixed upstream in apache/superset#13852 Signed-off-by: Étienne Boisseau-Sierra <etienne.boisseau-sierra@unipart.io>
SUMMARY
Prophet is heavily dependent on Pystan: https://facebook.github.io/prophet/docs/installation.html
Pystan has recently (2021-03-25) release its v3.0.0.
This release is not backward compatible and breaks fbprophet: facebook/prophet#1856
(Indeed, fbprophet 0.6 specifies
pystan>=2.14
— but doesn't restrict upgrading to next major release: https://github.com/facebook/prophet/blob/0.6/python/requirements.txt#L3)So we need to pin pystan to the lastest non 3.x release, while fbprophet fixes the dependency on their side.
TEST PLAN
pip install '.[prophet]'
?ADDITIONAL INFORMATION