quarta-feira, 24 de abril de 2013

terça-feira, 23 de abril de 2013

Como usar o FileMerge do OSX no GIT

Opa!

Mais um lembrete de como configurar o uso do FileMerge, aplicativo de comparação de arquivos que já veio no OSX (eu uso atualmente a versão Mountain Lion), para quando precisar no GIT, por exemplo durante um merge.

Configuração Global:

git config --global merge.tool opendiff


Confuguração Local:

git config --local merge.tool opendiff


Bem simples, prático e útil.
Apesar de que eu queria mesmo usar o Kaleidoscope, mas por enquanto ele está acima do meu budget para apps. Assim, vou me contentando com o FileMerge mesmo :)

É só.

Fontes:

segunda-feira, 22 de abril de 2013

Usando PATH absoluto no tinyMCE com symfony 1.4

Opa!

Mais um post rápido, dessa vez para lembrar de como modificar o tinyMCE para exibir o PATH absoluto na imagem, ao invés do relativo. Isso é útil no caso do seu backend do symfony estar hospedado em um local e o seu frontend em outro, geralmente o do cliente. Eis o código:


tinyMCE.init({
    // opções gerais
    mode : "textareas",
    theme : "advanced",
    width: "480",
    height: "400",

    //modificação para path absoluto
    remove_script_host : false,
    relative_urls : false
});
É só.
Fonte: My Monkey Do

segunda-feira, 15 de abril de 2013

Visualizando o log de erro do Apache2 no Mountain Lion

Essa é rápida.
Para verificar qualquer problema que possa estar dando no Apache2 usando o Mountain Lion como ambiente de desenvolvimento, é só dar o comando abaixo:

cat /var/log/apache2/error_log

É só.

quarta-feira, 3 de abril de 2013

Erro na inserção de dados usando symfony 1.4, Doctrine e PostgreSQL: Doctrine_Sequence_Exception on demand sequence

Opa!

Mexendo em um projeto feito em symfony 1.4 me deparei com esse erro.
Ele é relatado no fórum legado do symfony, porém lá não possui resposta alguma e nem é possível contribuir porque a versão atual do symfony é a 2.0, e o symfony 1.x não possui mais o suporte da oficial da comunidade. De qualquer forma, é um erro simples de lidar (pelo menos foi no meu caso).

Descrição
Ao tentar inserir um registro no banco de dados PostgreSQL, ocorre o seguinte erro transcrito e adaptado:  Doctrine_Sequence_Exception on demand sequence nome_do_banco.nome_da_tabela_id_seq could not be created.

O meu arquivo schema.yml estava assim:

Nome_do_modelo:
  connection: doctrine
  tableName: nome_do_banco.nome_da_tabela
  actAs:
    Timestampable: ~
  columns:
    id: { type: integer, primary: true, sequence: nome_do_banco.nome_da_tabela_id_seq }

Até aí eu achava que não tinha nada errado, mas fuçando na internet e olhando os fontes do symfony e do Doctrine, resolvi tentar tirar a parte "_seq" do final e voilá! Funcionou perfeitamente. Assim meu schema.yml final ficou:

Nome_do_modelo:
  connection: doctrine
  tableName: nome_do_banco.nome_da_tabela
  actAs:
    Timestampable: ~
  columns:
    id: { type: integer, primary: true, sequence: nome_do_banco.nome_da_tabela_id }


Lembrar que o nome do meu modelo está no singular e o nome da tabela no PostgreSQL está no plural.

É só :)

terça-feira, 2 de abril de 2013

Configuração de ambiente de desenvolvimento no Mountain Lion

Opa :)

Finalmente voltei ao meu sistema preferido, e assim se faz necessário uma configuração inicial para prepará-lo para desenvolvimento. Vamos lá!

Lista do que instalar:
  1. Brew: http://mxcl.github.com/homebrew/
  2. Git: http://git-scm.com
  3. XCode: https://developer.apple.com/xcode/
  4. ZSH: http://railscasts.com/episodes/308-oh-my-zsh
  5. AMP (Apache+MySQL+PHP): http://coolestguyplanettech.com/downtown/install-and-configure-apache-mysql-php-and-phpmyadmin-osx-108-mountain-lion
    • Configurar date.timezone = 'America/Maceio' em php.ini. No meu caso, o arquivo php.ini não existe e o php está configurado pra procurá-lo dentro de /etc, fazendo-se necessário rodar o comando sudo cp /etc/php.ini.default /etc/php.ini antes de qualquer alteração. Ao final, dar um restart no apache.
  6. brew install mysql:

    • brew info mysql
    • unset TMPDIR
    • mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
    • /usr/local/opt/mysql/bin/mysqladmin -u root password 'senha'
    • /usr/local/opt/mysql/bin/mysqladmin -u root -h nomeheavenair.home password 'senha'
    • /usr/local/opt/mysql/bin/mysql_secure_installation
    • ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents (para lançar quando o sistema iniciar) 
    • mysql.server start (para iniciar do terminal)
  7. phpMyAdmin:

    • Corrigir o erro 2002: sudo mkdir /var/mysql e sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
    • Colocar a pasta no DocumentRoot definido pelo apache2 (/Library/WebServer/Documents é o padrão do apache2 que vem no Mountain Lion)
    • Criar a pasta de configuração: mkdir /your-path-to/phpmyadmin/config e chmod o+w /your-path-to/phpmyadmin/config
    • Configurar servidor localhost através de: http://localhost/phpmyadmin/setup
    • Depois da configuração, copiar o /your-path-to/phpmyadmin/config/config.inc.php para /your-path-to/phpmyadmin/ e deletar o diretório config.


  8. rbenv
  9. PostgreSQL
    • Instale através do brew: brew install postgresql
    • Rode o brew doctor pra ver se está tudo OK, se não estiver, corrija o que ele pede. No meu caso foi consertar o PATH para que o caminho do brew viesse antes do caminho do sistema, isto é, meu PATH ficou assim: /usr/local/bin:/usr/local/git/bin:/usr/bin:/bin:/usr/sbin:/sbin (dica: para ver o conteúdo do seu PATH execute no terminal echo $PATH)
E é claro que nada disso foi por acaso, a maioria das dicas peguei com um teamworker (valeu, Toze!) e outras foram vistas em algum lugar dessas referências: