Obtendo chaves duplicadas no YAML usando Python

Precisamos analisar arquivos YAML que contêm chaves duplicadas e todos eles precisam ser analisados. Não é suficiente pular duplicatas. Eu sei que isso é contra a especificação YAML e eu gostaria de não ter que fazer isso, mas uma ferramenta de terceiros usada por nós permite esse uso e precisamos lidar com isso.

Exemplo de arquivo:

build:
  step: 'step1'

build:
  step: 'step2'

Após a análise, devemos ter uma estrutura de dados semelhante a esta:

yaml.load('file.yml')
# [('build', [('step', 'step1')]), ('build', [('step', 'step2')])]

dict não pode mais ser usado para representar o conteúdo analisado.

Estou procurando uma solução em Python e não encontrei uma biblioteca compatível com isso, perdi alguma coisa?

Como alternativa, fico feliz em escrever minhas coisas, mas gostaria de torná-las o mais simples possível.ruamel.yaml se parece com o analisador YAML mais avançado do Python e parece moderadamente extensível, pode ser estendido para oferecer suporte a campos duplicados?

questionAnswers(3)

yourAnswerToTheQuestion