PHP 5 и MySQL из MacPorts

Если php ни в какую не хочет находить MySQL установленный из портов, то вот самый простой способ решить эту проблему:

cd /tmp
mkdir php5mysql5
ln -s /opt/local/lib/mysql5 php5mysql5/lib
ln -s /opt/local/include/mysql5 php5mysql5/include

После этого добавим --with-mysql=/tmp/php5mysql5 в ./configure и вуаля!

Published on Thu, 18 Aug 2011 13:34

Recursively chmod directories only

find . -type d -exec chmod 755 {} \;

This will recursively search your directory tree (starting at dir ‘dot’) and chmod 755 all directories only.

Similarly, the following will chmod all files only (and ignore the directories):

find . -type f -exec chmod 644 {} \;
Published on Sat, 30 Jul 2011 14:26

Git update

Шорткат для git pull --rebase:

git config --global alias.update pull --rebase

После этого можно использовать git update чтобы избежать ненужных merge-коммитов

Published on Mon, 25 Jul 2011 07:12

Resize existing images in spree using paperclip

Чтобы легко и просто перегенерировать все картинки ваших продуктов в Spree, после добавления декоратора с новыми размерами, запустите такую команду в ruby консоли:

Image.all.each{|i| i.attachment.reprocess!}

Published on Thu, 07 Jul 2011 23:52

Заметки о Rails

  • uninitialized constant Rake::DSL говорит о том что нужно обновить rake (исправлено в 0.9.2)
  • couldn't parse YAML at line 182 column 9 (Psych::SyntaxError) говорит о том что bundler по умолчанию использует psycho, а у него более строгие требования к YML, соответственно многое что работало с syck больше не работает.
    Исправляется легко: нужно в config/boot.rb добавить:
    require 'yaml' YAML::ENGINE.yamler= 'syck'
  • Чтобы не раскидывать гемы по системе, мне показалось удобным ставить их в папку проекта:
    bundle install --path vendor/bundle
    Может быть это не ахти как правильно, но работает, и по мне очень удобно.
  • Если приложение портированное с Rails 2.0.x в 3.0 выводит escaped html вместо кода, значит надо почитать Changelog и порадоваться что теперь весь output эскейпится по умолчанию, а значит чтобы вывести в шаблоне html из контроллера нужно использовать метод raw()
  • Если вдруг случилась проблема с тем что iconv не найден, и вы счастливый пользователь rvm:
    rvm package install readline
    rvm package install iconv
    rvm install --trace 1.9.2 -C --with-iconv-dir=$HOME/.rvm/usr
Published on Mon, 27 Jun 2011 15:34

Замена netstat'у с выводом процесса слушающего порт для OSX

Поймал себя на том что уже второй раз читаю ман к нетстату в Mac OS и гуглю в поисках того как узнать какой процесс слушает порт. Записываю себе на память.

Чтобы получить список открытых сокетов в OSX с именем процесса, нужно выполнить эту команду:

sudo lsof -i -P

Published on Wed, 16 Mar 2011 01:19

Полезное для zsh

Чтобы Delete делал то что от него ожидаешь, добавь в .zshrc:

bindkey    "^[[3~"          delete-char
bindkey    "^[3;5~"         delete-char
Published on Fri, 03 Dec 2010 21:52

750 000 Mysql queries per second is real

Азиатов не остановить :) Пост в блоге японского разработчика, рассказывающий о том как получить 750 000 mysql запросов в секунду. Теперь NoSQL кажется не таким перспективным :) 
http://yoshinorimatsunobu.blogspot.com/2010/10/using-mysql-as-nosql-story-for.html

Published on Fri, 22 Oct 2010 18:39

Python MySQLdb и OSX Leopard

Столкнулся с проблемой при установке MySQLdb модуля для Python в Mac OSX Snow Leopard: после успешного билда и установки при попытке импорта падает с сообщением

ImportError: dlopen(/Users/user/.python-eggs/MySQL_python-1.2.3-py2.6-macosx-10.6-universal.egg-tmp/_mysql.so, 2): no suitable image found. Did find: /Users/user/.python-eggs/MySQL_python-1.2.3-py2.6-macosx-10.6-universal.egg-tmp/_mysql.so: mach-o, but wrong architecture

Проблема видимо в том что OSX 64х битный, а mysql 32х битный. Решилось конечно установкой правильного 64х битного MySQL'а, но если вдруг у вас случится похожая ошибка а версия библиотеки или ПО только 32х битная, то спасет такой рецепт: нужно добавить в ~/.profile следующую строчку:

export VERSIONER_PYTHON_PREFER_32_BIT=yes

Published on Fri, 24 Sep 2010 11:42

Изменения в jquery связанные с селекторами Xpath и History/Remote plugin

В одном моем проекте используется куча разных jquery плагинов, что сделало процесс обновления самого jquery довольно трудным, ибо везде что-то отваливается, какие-то из них не обновляются с выходом новых версий самого jQuery и т.п. Но вчера я всетаки решил обновиться, и одним из плагинов который пришлось допиливать самому оказался History/Remote плагин. Перестал он работать, как оказалось, из-за того что селекторы Xpath вида [@attribute] были какое-то время deprecated, а теперь и вовосе перестали работать. Вместо них нужно юзать [attribute], т.е. просто убираем знак “@”. В частности в указанном выше плагине, код

$('a[@href$="' + iframeHash + '"]').click();
поменялся на
$('a[href$="' + iframeHash + '"]').click();
, и все прекрасно заработало.

Мелочь когда знаешь куда смотреть, но проблема когда в интернетах этого не пишут ) Так что хозяйке на заметку )))

Published on Wed, 17 Jun 2009 08:58