O ecossistema Delphi sempre teve uma relação curiosa com dependências. Temos bibliotecas excelentes, frameworks maduros, componentes de todos os tipos e uma comunidade extremamente produtiva. Mas, por muito tempo, o fluxo de baixar, versionar, compilar, registrar e configurar pacotes continuou dependendo de uma combinação de scripts, paths manuais, instaladores variados e conhecimento tribal.
O Boss original, criado pela HashLoad, foi uma resposta importante para essa dor. Ele trouxe uma ideia simples e poderosa para o Delphi: declarar dependências em um manifesto, instalar pacotes a partir de repositórios Git e organizar tudo dentro da pasta modules. O Boss4D nasce como uma evolução dessa ideia, mas com uma decisão central: ser 100% nativo em Delphi.
Com a versão 1.0.1, o projeto chega a um marco importante. O Boss4D deixa de ser apenas uma CLI experimental e passa a se consolidar como um pequeno ecossistema de produtividade para projetos Delphi: linha de comando, GUI, integração com RAD Studio, diagnósticos, cache, workspaces, auditoria de licenças, plugins e suporte a compilação multiplataforma.
O que é o Boss4D?
O Boss4D é um gerenciador de dependências para Delphi escrito em Delphi. Ele foi projetado como substituto direto para o BOSS clássico, mantendo compatibilidade com os arquivos boss.json, boss-lock.json e a estrutura de pasta modules.
Na prática, isso significa que um projeto que já usa o formato tradicional do Boss pode migrar para o Boss4D sem precisar mudar sua organização. A diferença está no motor: em vez de depender de uma ferramenta externa escrita em outra linguagem, o Boss4D conversa diretamente com o ambiente Delphi, com os compiladores da Embarcadero, com o Registro do Windows e com o RAD Studio.
A versão atual identifica e utiliza instalações do Delphi, executa git, resolve dependências, compila pacotes, organiza DCUs, registra BPLs de design-time e oferece comandos para diagnóstico, manutenção e automação.
Principais novidades consolidadas na versão 1.0.1
1. Instalador unificado
A distribuição agora passa por um instalador Windows, o Boss4D_Setup.exe. Ele instala a CLI, a GUI e o plugin da IDE, além de preparar os caminhos necessários para uso global.
Durante a instalação, o Boss4D detecta as versões do RAD Studio instaladas e registra o plugin correspondente para Delphi 11 Alexandria, Delphi 12 Athens e Delphi 13 Florence.
2. Integração com o RAD Studio
A versão 1.0.1 fortalece a integração com a IDE. O plugin do Boss4D é registrado como pacote de design-time no RAD Studio e adiciona comandos ao menu de contexto do Project Manager.
Com isso, tarefas comuns podem ser disparadas de dentro da IDE:
- Boss4D Init
- Boss4D Install
- Boss4D Install Package…
- Boss4D Outdated
- Boss4D Dependency Tree
- Boss4D Doctor
- Boss4D License Report
- Boss4D Cache: Clean
- Boss4D Cache: Prune
- Boss4D GetIt: Set Online Mode
- Boss4D GetIt: Set Offline Mode
Os comandos executados pelo plugin encaminham a saída para a janela de mensagens do RAD Studio, tornando o fluxo mais natural para quem prefere trabalhar dentro da IDE.
3. CLI moderna para projetos Delphi
A CLI continua sendo o centro do Boss4D. Ela permite inicializar projetos, instalar dependências, executar scripts, diagnosticar o ambiente e manter o cache local.
Alguns comandos importantes:
boss4d initboss4d installboss4d install github.com/hashload/horse@^3.1.0boss4d run buildboss4d doctorboss4d treeboss4d outdatedboss4d license reportboss4d cache sizeboss4d cache prune
O comando boss4d run também aproxima o Delphi de fluxos que outras comunidades já usam há anos. Assim como no npm, é possível declarar scripts no boss.json:
json{
"scripts": {
"build": "msbuild MinhaApp.dproj",
"test": "Win32\\Debug\\MeusTestes.exe"
}
}E depois executar:
boss4d run buildboss4d run test
4. Diagnóstico do ambiente com boss4d doctor
Um dos pontos mais importantes para ferramentas Delphi é entender o ambiente local. Cada máquina pode ter diferentes versões do RAD Studio, paths, MSBuild, dcc32, dcc64, git e permissões.
O comando:
boss4d doctor
analisa a instalação local, verifica compiladores, Git, Registro do Windows e caminhos relevantes. A ideia é reduzir aquele tempo perdido tentando descobrir por que um pacote compila em uma máquina e falha em outra.
5. Workspaces e monorepos
O Boss4D também suporta workspaces, permitindo declarar múltiplos projetos dentro de um mesmo repositório:
json{
"workspaces": [
"projects/*"
]
}Isso permite centralizar dependências em uma pasta modules compartilhada, evitando downloads e builds repetidos em estruturas maiores.
6. Cache, tree, outdated e auditoria
A versão 1.0.1 também consolida comandos de manutenção e visibilidade:
boss4d treemostra a árvore de dependências.boss4d outdatedverifica atualizações disponíveis.boss4d cache sizemostra o uso de disco do cache.boss4d cache cleanlimpa o cache inteiro.boss4d cache pruneremove caches antigos ou pouco utilizados.boss4d license reportgera relatórios de licenças para auditoria e compliance.
Esses comandos são especialmente úteis em times, projetos corporativos e ambientes onde previsibilidade importa tanto quanto velocidade.
7. Plugins e pacotes de design-time
Outro ponto relevante é a instalação de plugins e pacotes de design-time. O Boss4D reconhece manifestos com type plugin ou ide-extension, compila a BPL correspondente e registra o pacote no RAD Studio.
Na versão 1.0.1, esse fluxo foi ajustado para usar a chave correta de pacotes de design-time do Delphi, o que melhora a confiabilidade do carregamento no splash, no About Box e no Project Manager.
Por que escrever um gerenciador de dependências Delphi em Delphi?
Porque existe valor em reduzir a distância entre a ferramenta e o ecossistema que ela atende.
Um gerenciador nativo consegue usar melhor as APIs, convenções, compiladores e particularidades do RAD Studio. Ele também facilita a contribuição da própria comunidade Delphi, que pode ler, depurar e evoluir a ferramenta usando a linguagem que já usa no dia a dia.
O Boss4D foi organizado com arquitetura hexagonal, separando domínio, serviços e adaptadores. Isso permite testar regras de resolução, instalação e configuração sem depender de rede, Git real ou compiladores instalados durante os testes automatizados.
Compatibilidade com o BOSS original
O objetivo não é apagar a história do Boss original. Pelo contrário: o Boss4D existe porque o Boss abriu caminho.
A compatibilidade com boss.json, boss-lock.json e modules foi mantida de propósito. A ideia é permitir que projetos existentes aproveitem uma implementação nativa sem abandonar o formato que a comunidade já conhece.
Como instalar
A versão 1.0.1 pode ser baixada pela página de releases do projeto:
https://github.com/regyssilveira/Boss4Delphi/releases/tag/v1.0.1
Depois da instalação, abra um terminal novo e rode:
boss4d versionboss4d help
Para iniciar um projeto:
boss4d init
Para instalar dependências:
boss4d install
E, se estiver usando o RAD Studio, reinicie a IDE após instalar para carregar o plugin de integração.
Conclusão
O Boss4D 1.0.1 é um passo importante para tornar o gerenciamento de dependências no Delphi mais simples, previsível e integrado.
Ele não tenta transformar o Delphi em outra plataforma. A proposta é outra: trazer para o Delphi uma experiência moderna de pacotes, respeitando a forma como projetos Delphi são organizados, compilados e mantidos.
Ainda há muito espaço para evoluir, mas a base está formada: CLI, GUI, plugin de IDE, diagnósticos, workspaces, cache, auditoria e integração com o ecossistema RAD Studio.
Se você trabalha com Delphi e sente falta de um fluxo mais direto para dependências, vale testar o Boss4D 1.0.1.
Descubra mais sobre Régys Borges da Silveira
Assine para receber nossas notícias mais recentes por e-mail.
Dê-nos sua opinião, seu comentário ajuda o site a crescer e melhorar a qualidade dos artigos.