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
Please allow flit to synthesize setup.py for this package #122
Comments
Looks like "regression" (it's regression in Python ecosystem-wide bootstrappability, not in this package per se) is caused through #115 |
You could theoretically rebuild tomli from the sdist using flit to generate a |
Hey, thanks for the issue! I'm a bit reluctant to add the
#114 has a lot of information regarding repackaging that may help you. You should be able to either
Would this work for your use case? |
Oh and a third option that is starting to seem increasingly better IMO: persuade the right people to add a TOML parser to Python standard library 😄 Would make builds infinitely easier. |
@layday you cannot use flit without first building tomli without PEP517 because pep517 (the project) depends on tomli. They're now changing the entire project to support fallbacking to toml, I would imagine in large part because toml does have setup.py. |
@hukkin I don't imagine no one in their right mind would want to have their project in standard library. It essentially means infinite backwards and forwards compatibility unless you're Guido and manage to land a provisional API into standard library. |
@hukkin But okay, your reasoning seems sensible, that linkage was fairly comprehensive. I have no idea how Python packaging ecosystem can possibly survive if standard library can no longer be used for bootstrapping pip and setuptools that can be used to install further things. But you're right, it's beyond of the scope of this project to worry about. That essentially means distros will be left off with hacks like get-pip.py while trying to build a pep517 build system. |
See pypa/flit#441 for recommendation on how to bootstrap flit and tomli. |
so, how can I use tomli without pip in an offline environment ? I try to get a readme about building tomlib from source code, but didn‘t find it. Is there anybody can give some advices or guides? |
If you want to keep using legacy setup.py invocations you can do it with something like python3 -c 'from setuptools import setup; setup(name="tomli", packages=["tomli"], package_data={"": ["*"]}, version="2.0.1")' sdist bdist_wheel This will create a source distribution and a wheel. If you want modern pyproject.toml based builds you should look into
|
As part of bootstrapping base pep517 stack you now have distutils -> setuptools -> tomli + pep517 + build. Since you are apparently creating tarballs with --no-setup-py, this bootstrap chain is now impossible which makes pep517 a misery for distros (see pypa/pyproject-hooks#125). Can you please consider not using this switch?
The text was updated successfully, but these errors were encountered: