• 
      

    Introduce WebAPIResource.serialize_object_list for serializing lists.

    Review Request #14298 — Created Jan. 20, 2025 and submitted

    Information

    Djblets
    release-5.x

    Reviewers

    This adds a new WebAPIResource.serialize_object_list() method and
    serialize_object_list_func argument to WebAPIResponsePaginated.
    These allow an implementation to pre-process the list of items going
    into a response, or to post-process or replace the serialized result.

    The main use case is to allow resources to perform additional logic
    across the list of items before or after serializing, such as
    bulk-fetching extra data from cache or extensions hooks to include in
    results.

    Unit tests pass.

    Summary ID
    Introduce WebAPIResource.serialize_object_list for serializing lists.
    This adds a new `WebAPIResource.serialize_object_list()` method and `serialize_object_list_func` argument to `WebAPIResponsePaginated`. These allow an implementation to pre-process the list of items going into a response, or to post-process or replace the serialized result. The main use case is to allow resources to perform additional logic across the list of items before or after serializing, such as bulk-fetching extra data from cache or extensions hooks to include in results.
    356f4b5b88528d427e53302113c9403a46f60894
    Description From Last Updated

    Given that this method isn't using keyword-only args, should we not be adding this to the end of the argument …

    daviddavid
    david
    1. 
        
    2. djblets/webapi/responses.py (Diff revision 1)
       
       
       
       
      Show all issues

      Given that this method isn't using keyword-only args, should we not be adding this to the end of the argument list instead of before extra_data?

      Also, want to make this use kw-only args?

      1. This is using keyword-only arguments. *args is defined above, placing everything after as a keyword-only argument.

    3. 
        
    chipx86
    maubin
    1. Ship It!
    2. 
        
    david
    1. Ship It!
    2. 
        
    chipx86
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to release-5.x (0e4ca04)