• 
      
    Fish Trophy

    chipx86 got a fish trophy!

    Fish Trophy

    Add @deprecate_non_keyword_only_args for moving to keyword-only args.

    Review Request #12721 — Created Nov. 10, 2022 and submitted

    Information

    Djblets
    release-3.x

    Reviewers

    This decorator allows us to move functions over to keyword-only
    arguments without breaking callers that may be passing arguments as
    position-only. It takes care of converting calls (using keyword
    arguments or positional arguments) to the right format expected by the
    function, emitting a deprecation warning if any keyword-only arguments
    are passed as positional arguments.

    This is a copy of the same method used in RBTools.

    The deprecation warning classes have also been given a version
    attribute, to help with generating suitable error messages.

    Made use of this extensively with some in-progress work, with functions
    using keyword-only arguments and taking *args and **kwargs, passing
    them down to other methods using the decorator.

    Summary ID
    Add @deprecate_non_keyword_only_args for moving to keyword-only args.
    This decorator allows us to move functions over to keyword-only arguments without breaking callers that may be passing arguments as position-only. It takes care of converting calls (using keyword arguments or positional arguments) to the right format expected by the function, emitting a deprecation warning if any keyword-only arguments are passed as positional arguments. This is a copy of the same method used in RBTools. The deprecation warning classes have also been given a `version` attribute, to help with generating suitable error messages.
    de298304cfa5eb254507950dba57c18eb4ea9804
    david
    1. Ship It!
    2. 
        
    chipx86
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to release-3.x (a0ebaec)