Skip to content

Refactor: improve Compose encapsulation and eliminate need for non-Compose code to duplicate compose functionality #6223

@atbenmurray

Description

@atbenmurray

There are, at present, a number of places in the codebase where the transforms field of Compose is operated on by code external to Compose. This is suboptimal for the following reasons:

  1. Code duplication
  2. The increasing complexity of executing a list of transforms. In particular, changes being made for 4855 lazy resampling impl -- Compose #5860 must be accurately reflected across everywhere that runs transform execution outside of compose.

The proposed changes do the following:

  1. Add a class method execute that can execute a sequence of transforms with all of the currently identified flags / settings:
    a. map_items
    a. unpack_items
    a. log_stats
  2. Add new parameter to call that are also supported by execute
    a. start
    a. end
    a. threading
  3. Refactor the places where the internals of Compose.call are currently replicated to use call with start, end, threading

Metadata

Metadata

Assignees

No one assigned

    Labels

    refactorNon-breaking feature enhancements

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions