@cached
    def milestones(self):
        milestones = {}
        for name, due, completed, description in self.env.db_query("""
                SELECT name, due, completed, description FROM milestone
                """):
            milestones[name] = (name,
                    from_utimestamp(due) if due else None,
                    from_utimestamp(completed) if completed else None,
                    description or '')
        return milestones
Will invoke a clean shutdown of the channel with the AMQP Broker.
dataset/ETHPy150Open edgewall/trac/trac/ticket/model.py/MilestoneCache.milestones--crossover with--dataset/ETHPy150Open pika/pika/pika/adapters/blocking_connection.py/BlockingChannel.close