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

[setup] Using pip-tools to create requirements.txt #6054

Merged
merged 1 commit into from
Oct 9, 2018

Conversation

john-bodley
Copy link
Member

@john-bodley john-bodley commented Oct 8, 2018

@mistercrunch this is an approach we could take for automatically ensuring that the build was deterministic by autogenerating requirements.txt from setup.py.

Note this approach pins all sub-modules (in effect the output of pip freeze) which wasn't viable when we supported both Python 2 and Python 3.

@codecov-io
Copy link

codecov-io commented Oct 8, 2018

Codecov Report

Merging #6054 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master    #6054   +/-   ##
=======================================
  Coverage   77.81%   77.81%           
=======================================
  Files          46       46           
  Lines        9446     9446           
=======================================
  Hits         7350     7350           
  Misses       2096     2096

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 395359f...83dea5f. Read the comment docs.

@victornoel
Copy link
Contributor

@john-bodley why not use pipenv directly? It is meant to solve this situation I think…

@mistercrunch
Copy link
Member

@victornoel this article seems to be leaning towards pip-tools over pipenv and is fairly recent from what I gather: https://twigstechtips.blogspot.com/2018/05/python-comparison-of-pipenv-vs-pip-tools.html

@mistercrunch
Copy link
Member

BTW it's ideal to have deterministic builds, but in some cases it prevents us from ever knowing about issues that occur when people simply pip install superset (which is based purely on what's in the setup.py, which is not pinned). I wonder if we should have an extra slot in the build matrix that would pip install -e . and not pip install -r requirements.txt to let us know that something is up with the vanilla build.

@mistercrunch
Copy link
Member

LGTM

@victornoel
Copy link
Contributor

@mistercrunch thanks for the link :)

@john-bodley john-bodley force-pushed the john-bodley-pip-tools branch from 6302100 to bd3426b Compare October 9, 2018 16:59
@john-bodley john-bodley force-pushed the john-bodley-pip-tools branch from bd3426b to 83dea5f Compare October 9, 2018 17:46
@john-bodley john-bodley merged commit 238ffb4 into apache:master Oct 9, 2018
betodealmeida pushed a commit to lyft/incubator-superset that referenced this pull request Oct 12, 2018
bipinsoniguavus pushed a commit to ThalesGroup/incubator-superset that referenced this pull request Dec 26, 2018
@mistercrunch mistercrunch added 🏷️ bot A label used by `supersetbot` to keep track of which PR where auto-tagged with release labels 🚢 0.28.0 labels Feb 27, 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 🚢 0.28.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants