Estratégia para desenvolver versões com espaço para nome e sem espaço para nome do mesmo código PHP
Estou mantendo a biblioteca escrita para o PHP 5.2 e gostaria de criar uma versão com espaço para nomes do PHP 5.3. No entanto, eu também manteria a versão sem namespace atualizada até o PHP 5.3 se tornar tão antigo, que até o Debian stable a envia;)
Eu tenho um código bastante limpo, cerca de 80 classes apósProject_Directory_Filename
esquema de nomes (eu os mudaria para\Project\Directory\Filename
é claro) e apenas algumas funções e constantes (também prefixadas com o nome do projeto).
A pergunta é: qual é a melhor maneira de desenvolver versões com espaço para nome e sem espaço para nome em paralelo?
Devo apenas criar bifurcação no repositório e continuar mesclando alterações entre as filiais? Existem casos em que o código polvilhado por barra invertida se torna difícil de mesclar?
Devo escrever um script que converta a versão 5.2 para 5.3 ou vice-versa? Devo usar o tokenizer PHP?sed
? Pré-processador C?
Existe uma maneira melhor de usar namespaces quando disponíveis e manter a compatibilidade com o PHP antigo?
Atualizar:Decidiu contra o uso de namespaces, afinal.