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

Look into new-style packaging #3526

Open
The-Compiler opened this issue Jan 25, 2018 · 8 comments
Open

Look into new-style packaging #3526

The-Compiler opened this issue Jan 25, 2018 · 8 comments
Labels
component: infrastructure Issues related to development scripts, CI, servers, etc. component: style / refactoring Issues related to coding styles or code that should be refactored. priority: 2 - low Issues which are currently not very important.

Comments

@The-Compiler
Copy link
Member

With pipenv getting more and more popular, and requires.io and pyup.io gaining some initial support (pyupio/pyup#197), maybe it's time to look into whether that makes our workflow easier.

Right now, we have some custom-built stuff - getting rid of that in the long run would be nice.

@The-Compiler The-Compiler added component: style / refactoring Issues related to coding styles or code that should be refactored. component: infrastructure Issues related to development scripts, CI, servers, etc. priority: 2 - low Issues which are currently not very important. labels Jan 25, 2018
@The-Compiler
Copy link
Member Author

Looks like there's a tox plugin too.

@The-Compiler
Copy link
Member Author

The-Compiler commented Jul 18, 2018

After using pipenv in another project for a whle, I'm not so sure about this anymore - also see this blogpost.

I guess I should look at alternatives (Hatch/Poetry/Flit for packaging; pip-tools (pip-compile) for requirements.txt, dephell) too.

@The-Compiler The-Compiler added this to the v2.0.0 milestone Dec 31, 2019
@The-Compiler The-Compiler changed the title Look into pipenv/pipfiles Look into new-style packaging Apr 28, 2020
@The-Compiler
Copy link
Member Author

Finally, there are also some recent(-ish) changes to setuptools and "normal" python packaging with setup.cfg and pyproject.toml - unfortunately, not much of it seems to be properly documented at the moment... The best I could find is a blogpost.

@The-Compiler
Copy link
Member Author

Looks like setup-py-upgrade and setup-cfg-fmt could help at least switching to declarative metadata.

@The-Compiler
Copy link
Member Author

FWIW as long as editable installs don't work with Poetry and friends (see e.g. python-poetry/poetry#34) that pretty much rules those out for me - but setup.cfg would probably still be nice.

@The-Compiler
Copy link
Member Author

I think at the moment the only thing that makes sense for qutebrowser is setup.cfg - apart from the tools linked above, here are some docs: https://setuptools.readthedocs.io/en/latest/userguide/declarative_config.html

The-Compiler added a commit that referenced this issue Jan 19, 2021
The-Compiler added a commit that referenced this issue Jan 19, 2021
@The-Compiler
Copy link
Member Author

I added a setup.cfg in 90323d1 (with "Switches #3526" instead of "Fixes", what a brainfart...). I don't think Pipenv/Hatch/Poetry/Flit are a good idea at the moment (mostly because of the editable install issue), and I don't think our scripts can be replaced easily with pip-compile from what I've seen.

The-Compiler added a commit that referenced this issue Jan 19, 2021
For some reason, despite using "find:" for the package and this working
fine for the sdist, the qutebrowser-git Archlinux package doesn't
actually include any qutebrowser/ files anymore.

This currently really doesn't seem to be worth the trouble...

See #3526

This reverts commit 90323d1.
This reverts commit 21ee2fe.
@The-Compiler
Copy link
Member Author

The-Compiler commented Jan 19, 2021

Oh well. I tried setup.py sdist with the setup.cfg in place and got an sdist where everything looks fine. However, for some reason, the qutebrowser-git PKGBUILD doesn't install any qutebrowser/ files anymore and I can't figure out a way to make this work.

Thus, I reverted this now. Still want to dig into it at some point, but not for v2.0.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: infrastructure Issues related to development scripts, CI, servers, etc. component: style / refactoring Issues related to coding styles or code that should be refactored. priority: 2 - low Issues which are currently not very important.
Projects
None yet
Development

No branches or pull requests

1 participant