Ensure usage of modern packages when using 'setup.py develop'.

Review Request #12524 — Created Aug. 14, 2022 and submitted

Information

RBTools
release-4.x

Reviewers

The Python packaging world has long since recommended against eggs and
setup.py develop. However, until we move to a pyproject.toml with
a custom build system, this is our best option.

Review Board, Djblets, and other packages have implemented a custom
setup.py develop for ages, which wraps pip install -e . (the
generally preferred method) and then installs our development
dependencies.

This change adds the same logic to the RBTools packaging. This will
ensure that we don't ever introduce legacy eggs through RBTools for
development, and always prefer model wheels.

For now, setup.py develop is the preferred way of preparing RBTools
for development. In time, we will transition away from setup.py and
will prefer pip install -e ..

Successfully installed RBTools on Python 3.7-3.11, with all dependencies
as wheels, using setup.py develop.

Summary ID
Ensure usage of modern packages when using 'setup.py develop'.
The Python packaging world has long since recommended against eggs and `setup.py develop`. However, until we move to a `pyproject.toml` with a custom build system, this is our best option. Review Board, Djblets, and other packages have implemented a custom `setup.py develop` for ages, which wraps `pip install -e .` (the generally preferred method) and then installs our development dependencies. This change adds the same logic to the RBTools packaging. This will ensure that we don't ever introduce legacy eggs through RBTools for development, and always prefer model wheels. For now, `setup.py develop` is the preferred way of preparing RBTools for development. In time, we will transition away from `setup.py` and will prefer `pip install -e .`.
c7c8d2529c6944819fc5f6dc1c690ca3b77b92c6
Description From Last Updated

too many blank lines (2) Column: 5 Error code: E303

reviewbotreviewbot
Checks run (1 failed, 1 succeeded)
flake8 failed.
JSHint passed.

flake8

  • setup.py (Diff revision 1)
     
     
    Show all issues
    too many blank lines (2)
    
    Column: 5
    Error code: E303
  • 
      
chipx86
david
  1. Ship It!
  2. 
      
chipx86
Review request changed
Status:
Completed
Change Summary:
Pushed to release-4.x (dcc3686)