I understand the renames are imposed by an upstream project outside your control, but why can’t the compatibility mappings just be left there forever? What harm do they do?
Does anyone working on Discourse or its dependencies understand the concept of a published API which is used by other people?
You don’t break an API unless there’s a really good reason to. The names of things only seen internally by developers not being completely perfect according to someone’s whims is not a good enough reason to break other people’s code.
I’m really getting tired of the amount of work required just to keep existing things from breaking with Discourse. It’d be OK if there was a world-changing improvement to justify the time and hassle each time, but there never is. It feels like breaking changes keep being made for petty reasons without consideration of the time and hassle they cause other people.