Cheguei a ler este tópico. E atualizei o nosso fonte de acordo. No entanto o problema de conflito persiste. Vou tentar explicar com um exemplo.
...
uses
ACBRNFe.Classes;
procedure FazAlgumaCoisa;
var
Pag: TPagCollectionItem;
begin
...
Pag.tpag := fpDinheiro; // O tipo esperado aqui por TPagCollectionItem é o que está em pcnConversaoNfe.TpcnFormaPagamento ao invés de ser ACBrNFe.Conversao.TpcnFormaPagamento
end;
Como estamos atualizando os nossos fontes para fazer uso de ACBrNFe.Conversao, no exemplo dado, fpDinheiro seria do tipo que está em ACBrNFe.Conversao, mas TPagCollectionItem.TPag ainda faz referencia para o tipo antigo. Desta forma, o Delphi reclama que os tipos são diferentes.
Consegui contornar o problema declarando na mesma unit tanto pcnConversaoNFe quanto ACBrNFe.Conversao. E no ponto onde ocorria o problema coloquei
Como está em processo de refatoração ainda. Acredito que logo irá ser alterado as referências de pcnConversao para ACBrNFe.Conversao na unit ACBrNFe.Classes.