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

fix(release): pin pyjwt to version <2 #12804

Merged
merged 1 commit into from
Jan 29, 2021

Conversation

villebro
Copy link
Member

SUMMARY

Currently pip install apache-superset pulls in an incompatible version of PyJWT due to it being restricted on one of the dependencies. See https://stackoverflow.com/questions/60303682/why-is-pip-installing-an-incompatible-package-version for more info. Note: this is just a quick fix; we should preferably do some more work in this area to have more robust dependency resolution and achieving proper locking e.g. via poetry.

BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TEST PLAN

ADDITIONAL INFORMATION

  • Has associated issue:
  • Changes UI
  • Requires DB Migration.
  • Confirm DB Migration upgrade and downgrade tested.
  • Introduces new feature or API
  • Removes existing feature or API

@codecov-io
Copy link

Codecov Report

Merging #12804 (c5dd7a9) into master (14de7b4) will decrease coverage by 3.60%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master   #12804      +/-   ##
==========================================
- Coverage   67.01%   63.40%   -3.61%     
==========================================
  Files        1022      488     -534     
  Lines       50100    30138   -19962     
  Branches     5065        0    -5065     
==========================================
- Hits        33573    19109   -14464     
+ Misses      16403    11029    -5374     
+ Partials      124        0     -124     
Flag Coverage Δ
cypress ?
javascript ?
python 63.40% <ø> (-0.68%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
superset/db_engines/hive.py 0.00% <0.00%> (-85.72%) ⬇️
superset/sql_validators/postgres.py 50.00% <0.00%> (-50.00%) ⬇️
superset/db_engine_specs/hive.py 73.84% <0.00%> (-17.31%) ⬇️
superset/databases/commands/create.py 83.67% <0.00%> (-8.17%) ⬇️
superset/databases/commands/update.py 85.71% <0.00%> (-8.17%) ⬇️
superset/connectors/sqla/models.py 84.31% <0.00%> (-6.28%) ⬇️
superset/db_engine_specs/sqlite.py 90.62% <0.00%> (-6.25%) ⬇️
superset/databases/commands/test_connection.py 84.78% <0.00%> (-4.35%) ⬇️
superset/utils/celery.py 96.42% <0.00%> (-3.58%) ⬇️
superset/models/core.py 85.59% <0.00%> (-3.27%) ⬇️
... and 545 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 14de7b4...c5dd7a9. Read the comment docs.

Copy link
Member

@dpgaspar dpgaspar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would prefer to pin all our main dependencies under the next major

Yes, we should give poetry another try

@villebro
Copy link
Member Author

I would prefer to pin all our main dependencies under the next major

Yes, we should give poetry another try

After some more research, I believe tackling this properly will require fairly extensive updating of how we manage dependencies. As such I'd prefer to keep this as a hotfix one-liner, and not add pinning to all deps listed in setup.py, because we already know this won't solve the full problem. As can be seen, PyJWT was not previously listed as a dependency, hence we would have to pin all implicit deps from requirements/base.txt here to catch them all, which in itself might be risky and reduce the maintainability of setup.py.

@ktmud
Copy link
Member

ktmud commented Jan 29, 2021

I used poetry in another project and absolutely loved it!

@dpgaspar
Copy link
Member

I liked it (poetry) also, but got stuck on a step at the time, heres my try at it: https://github.com/apache/superset/pull/8079/files

@villebro true that this is a bigger problem

@villebro villebro merged commit bab86ab into apache:master Jan 29, 2021
@villebro villebro deleted the villebro/pyjwt-1.7 branch January 29, 2021 10:02
villebro added a commit that referenced this pull request Jan 29, 2021
@mistercrunch mistercrunch added 🍒 1.0.1 🏷️ bot A label used by `supersetbot` to keep track of which PR where auto-tagged with release labels 🚢 1.2.0 labels Mar 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🏷️ bot A label used by `supersetbot` to keep track of which PR where auto-tagged with release labels preset-io size/XS v1.0.1 🍒 1.0.1 🚢 1.2.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants