1.9 KiB
1.9 KiB
Nota de Resolução: Configuração de Ambiente Ruby 3.4.4 e Correção de Serialização
Objetivo
Configurar o ambiente de desenvolvimento do Chatwoot para a versão de Ruby exigida e resolver impedimentos de inicialização do banco de dados e servidor.
Contexto
O projeto Chatwoot exige Ruby 3.4.4 e Rails 7.1. Versões anteriores do Ruby ou ferramentas ausentes (Overmind) impossibilitavam a execução de lints e do servidor. Além disso, uma incompatibilidade no modelo InstallationConfig causava erros de tipo durante o parse de YAML no Ruby 3.4.
Passos Realizados
- Instalação de Ferramentas:
brew install ruby-install chruby overmindruby-install ruby 3.4.4
- Configuração de Shell:
- Adicionado
source /opt/homebrew/opt/chruby/share/chruby/chruby.shesource /opt/homebrew/opt/chruby/share/chruby/auto.shao~/.zshrce~/.bash_profile.
- Adicionado
- Dependências:
gem install bundler:2.5.11bundle install
- Correção de Código:
- Alterado InstallationConfig.rb para lidar com a coluna
serialized_value(JSONB) de forma resiliente, permitindo parse de YAML legado caso necessário, mas evitando falhas de tipo no Rails 7.1.
- Alterado InstallationConfig.rb para lidar com a coluna
Principais Arquivos Alterados
- InstallationConfig.rb: Ajuste nos métodos
valuee remoção da macroserializeredundante. ~/.zshrc/~/.bash_profile: Atualização de paths e scripts de ambiente.
Como Validar
- Execute
source ~/.zshrc. - Rode
bundle exec rails db:chatwoot_prepare. - Inicie o stack com
make run.
Como Reverter
- Remover os
sourcedo~/.zshrc. - Restaurar o modelo
InstallationConfig.rbpara o estado original (utilizandoserialize ... coder: YAML).