• 
      

    Switch Djblets package building to use buildthings.

    Review Request #14952 — Created March 20, 2026 and updated — Latest diff uploaded

    Information

    Djblets
    release-5.x

    Reviewers

    Buildthings is our new Python package build backend, which supports
    injecting local development source trees into the isolated build
    environment, interfacing with npm, and running extra build steps.
    It also notably allows for local paths for development dependencies,
    something our in-tree build backend did not do.

    This change switches away from our in-tree build backend to
    buildthings, giving us a consistent setup going forward and resolving
    several issues when building Djblets.

    When building Djblets, development and package dependencies will be
    installed in the isolated build environment for all build types,
    allowing static media to be built.

    All build types support .local-packages, since we need this in order
    to build and deploy in-development versions.

    Builds can be tested using:

    $ python -m build --sdist .
    $ python -m build --wheel .
    

    Doing these separately ensures that .local-packages will be picked up
    for each build type, rather than the default behavior of the wheel being
    built from the source distribution.

    Tested editable installs and producing sdist and wheel builds.

    Compared those to builds using the original build backend. Verified that
    all files and metadata were a match.

    Commits

    Files