@staticmethod
def compose_str(compose: dict, minimal: bool=True) ->str:
    """
        Return a string representation of a compose.

        Args:
            compose: A dictionary representation of a Compose.
            minimal: If True, return a minimal one-line representation of the compose.
                Otherwise, return a more verbose string. Defaults to True.
        Returns:
            A human readable string describing the compose.
        """
    line_formatter = '{0:<16}: {1}'
    security = '*' if compose['security'] else ' '
    title = f"{security}{compose['release']['name']}-{compose['request']}"
    details = (
        f"{len(compose['update_summary']):3d} updates ({compose['state']}) ")
    minimal_repr = line_formatter.format(title, details)
    if minimal:
        return minimal_repr
    line_formatter = '{0:>12}: {1}\n'
    compose_lines = [f"{'=':=^80}\n", f'     {minimal_repr}\n', f"{'=':=^80}\n"
        ]
    compose_lines += [line_formatter.format('Content Type', compose[
        'content_type']), line_formatter.format('Started', compose[
        'date_created']), line_formatter.format('Updated', compose[
        'state_date'])]
    if 'error_message' in compose and compose['error_message']:
        compose_lines.append(line_formatter.format('Error', compose[
            'error_message']))
    compose_lines += ['\nUpdates:\n\n']
    line_formatter = f'\t{line_formatter}'
    for s in compose['update_summary']:
        compose_lines.append(line_formatter.format(s['alias'], s['title']))
    return ''.join(compose_lines)
