• 
      

    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)