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 и вуаля!
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 {} \;
Git update
Шорткат для git pull --rebase:
git config --global alias.update pull --rebase
После этого можно использовать git update чтобы избежать ненужных merge-коммитов
Resize existing images in spree using paperclip
Чтобы легко и просто перегенерировать все картинки ваших продуктов в Spree, после добавления декоратора с новыми размерами, запустите такую команду в ruby консоли:
Image.all.each{|i| i.attachment.reprocess!}
Заметки о 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
Замена netstat'у с выводом процесса слушающего порт для OSX
Поймал себя на том что уже второй раз читаю ман к нетстату в Mac OS и гуглю в поисках того как узнать какой процесс слушает порт. Записываю себе на память.
Чтобы получить список открытых сокетов в OSX с именем процесса, нужно выполнить эту команду:
sudo lsof -i -P
Полезное для zsh
Чтобы Delete делал то что от него ожидаешь, добавь в .zshrc:
bindkey "^[[3~" delete-char
bindkey "^[3;5~" delete-char
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
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
Изменения в jquery связанные с селекторами Xpath и History/Remote plugin
В одном моем проекте используется куча разных jquery плагинов, что сделало процесс обновления самого jquery довольно трудным, ибо везде что-то отваливается, какие-то из них не обновляются с выходом новых версий самого jQuery и т.п. Но вчера я всетаки решил обновиться, и одним из плагинов который пришлось допиливать самому оказался History/Remote плагин. Перестал он работать, как оказалось, из-за того что селекторы Xpath вида [@attribute] были какое-то время deprecated, а теперь и вовосе перестали работать. Вместо них нужно юзать [attribute], т.е. просто убираем знак “@”. В частности в указанном выше плагине, код
$('a[@href$="' + iframeHash + '"]').click(); поменялся на $('a[href$="' + iframeHash + '"]').click();, и все прекрасно заработало.
Мелочь когда знаешь куда смотреть, но проблема когда в интернетах этого не пишут ) Так что хозяйке на заметку )))
![["Mmmmushrooms"] ["Mmmmushrooms"]](http://farm5.staticflickr.com/4031/4440138905_494b0ae318_s.jpg)
![["Monkey business"] ["Monkey business"]](http://farm5.staticflickr.com/4019/4668221289_c6a5e57727_s.jpg)
![["Energizer"] ["Energizer"]](http://farm3.staticflickr.com/2505/4440139761_e9cb46ffa5_s.jpg)
![["***"] ["***"]](http://farm3.staticflickr.com/2731/4440139155_e75e9ee37c_s.jpg)