-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Update build to use exclusively pyproject.toml #5836
Conversation
Never mind. |
Seems like everything is working except the versioning. I expect this is because |
3d92208
to
a426132
Compare
@kalebmckale please pull the changes from the master branch. This will fix the ruff errors. |
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.
It's not a behaviour change. Please add this to feature.
(e.g. use XXXX.feature.rst).
a426132
to
69324a7
Compare
Sorry I couldn't get to it until tonight. |
69324a7
to
393de93
Compare
393de93
to
01217c3
Compare
Hey @kalebmckale if you want to join the unofficial Python Developers slack group https://pyslackers.com/web we can chat more in there -- I am thinking we could bounce ideas off each-other about the currently broken editable/local file installs. |
Ok @matteius... um never used slack so how do I find you on there? 🙂 Update: I might have found you. |
08a8d77
to
00de64d
Compare
Rebased on v2023.8.26. |
Added a new commit to test if adding |
@kalebmckale I am sorry. I thought we need to exclude |
0968544
to
00de64d
Compare
Just noticed this in @invoke.task
def build_dists(ctx):
drop_dist_dirs(ctx)
py_version = ".".join(str(v) for v in sys.version_info[:2])
env = {"PIPENV_PYTHON": py_version}
with ctx.cd(ROOT.as_posix()), temp_environ():
executable = ctx.run(
"python -c 'import sys; print(sys.executable)'", hide=True
).stdout.strip()
log("Building sdist using %s ...." % executable)
os.environ["PIPENV_PYTHON"] = py_version
ctx.run("pipenv install --dev", env=env)
ctx.run("pipenv run pip install -e . --upgrade --upgrade-strategy=eager", env=env)
log("Building wheel using python %s ...." % py_version)
ctx.run("pipenv run python setup.py sdist bdist_wheel", env=env) I know during testing the package is being built and installed, or it at least appears to do so, but here it looks to still use |
Found in .PHONY: build
build: install-virtualenvs.stamp install.stamp
PIPENV_PYTHON=3.7 pipenv run python setup.py sdist bdist_wheel |
And - name: Build wheels
run: |
python -m pipenv run python setup.py sdist bdist_wheel |
That is what I was afraid of -- if we merge this, we will break the pypi upload of the built wheel capabilities, I suspect. |
Made changes, but I don't have ability to lock UPDATE: Apparently will need this for testing, too. |
What would happen if you did |
I don't want to remove the Pipfile.lock from the checked in code though-- there will be a path forwards on this, even if it means merging into a different pipenv branch so I can run the lock phase. |
I was able to lock on my iPad using Python 11, then I realized that would probably not be good since the minimum Python version is 3.7. I’ve been working for days to get other options. I can get Python 3.9 and looking to see if I can get Python 3.7. If there’s another solution sooner, we should go with that. However, I may be able to eventually get it done. |
@matteius Another option is to include an updated locked Pipfile in another merge/release. Adding the two dev packages wouldn’t interfere with other changes. |
If the |
|
- consolidates all of `setuptools` metadata and configuration as well as `coverage` configuration within `pyproject.toml`. - removes deprecated `setup.cfg` and `setup.py`. - updates `run-tests.sh` to use `pyproject.toml` instead of `setup.cfg` for `coverage` configuration.
f64ca3f
to
486d003
Compare
Found left-over remnants of `setup.py` install and updated with current build method using `build` package.
[project] | ||
name = "pipenv" | ||
authors = [ | ||
{name = "Pipenv maintainer team", email = "distutils-sig@python.org"}, |
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.
The email is wrong. Please correct the email address. @matteius should our email adresses be here?
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.
Alright. I've been working on this PR for two weeks now and rebased multiple times. Someone else is welcome to take this on, but I've surpassed the amount of work I'm willing to put in at this time.
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.
We will update the email address outside this PR -- thanks for your effort on this @kalebmckale
Thank you for contributing to Pipenv!
The goal: modernize build
setuptools
metadata and configuration as well ascoverage
configuration withinpyproject.toml
.setup.cfg
andsetup.py
.run-tests.sh
to usepyproject.toml
instead ofsetup.cfg
forcoverage
configuration.The checklist
news/
directory to describe this fix with the extension.bugfix.rst
,.feature.rst
,.behavior.rst
,.doc.rst
..vendor.rst
. or.trivial.rst
(this will appear in the release changelog). Use semantic line breaks and name the file after the issue number or the PR #.Resolves #5837