PyBlosxom 1.4 Release!!
posted by jun-g at 水, 04 7月 2007 00:12 JST
PyBlosxom 1.4がリリースされたみたい。今週末にでも入れ換えようっと。
posted by jun-g at 水, 04 7月 2007 00:12 JST
PyBlosxom 1.4がリリースされたみたい。今週末にでも入れ換えようっと。
posted by jun-g at 日, 01 7月 2007 02:08 JST
あーやっぱり行けばよかった…とライブ中継を見ながらかなり後悔した。
posted by jun-g at 日, 17 6月 2007 19:43 JST
distutils/setuptoolsを利用してライブラリをインストールする際、ライブラリによってはCコンパイラを要求してくる場合がある。Windowsの場合標準ではCコンパイラがインストールされていない上、distutilsのデフォルトの設定だとCコンパイラにVCを要求してくるので、MinGWを使用するように設定してみた。
まずはMinGWのインストール。MinGWについては全然詳しくないので、C-Compiler Wiki - MinGW/インストールのページを参考にインストール、および設定を行った。
MinGWのインストールが完了したら、次にdistutilsの設定。distutilsのディレクトリ(Python2.5のデフォルトインストールパスだと、C:\Python25\Lib\distutils)の中に「distutils.cfg」というファイルを作成し、そのファイルに下記を記述して保存した。
[build] compiler=mingw32
以上の設定でコンパイラにMinGWが使用されるようになった。これでeasy_install使ってガンガンライブラリをインストールできるようになったぜ!という事で一件落着。
posted by jun-g at 日, 03 6月 2007 03:09 JST
散歩でチルアウトが最近のマイブーム。
みたいな自分ルールを決めて、だいたい週一回、一時間ぐらいかけて散歩するようにしている。といってもまだ二回しかしてないけど。
一人で歩いているとつい考え事をしてしまうので、ムカツク事思い出してイライラしてしまったりもするけれど、大きい公園に行って緑の中をのんびり歩いていると、心が落ち着ちつくし、動物もいたりして結構楽しい。
写真が撮りたかったので携帯持っていったけど、やっぱり邪魔やったな…。次回からはまた手ぶらで行こう。
posted by jun-g at 月, 28 5月 2007 17:47 JST
今年の2月にリリースされたMod_python-3.3.1から、ディレクティブで設定できる項目が沢山増えてる事にこないだ気づいた。その中にPythonEnablePdbっていう設定を発見。え?mod_pythonでpdb使えるの?って事で試してみた。
test.pyとして以下のコードをpublic_html直下に置いた。
# coding: utf-8
from mod_python import apache
def handler(req):
req.content_type = "text/plain"
req.write("Hello, Mod_python!\n")
return apache.OK
でもって.htaccessに以下を設定を書いた。
AddHandler python-program .py PythonHandler test PythonEnablePdb On
ブラウザからリクエストを投げてみると、何事もなくブラウザ上に「Hello, Mod_python!」と表示された。ドキュメントには「httpdを-DONE_PROCESSオプションを付けて起動せよ」と書いてあるので、その通りapacheを再起動してみる。
# apachectl -k stop # apachectl -DONE_PROCESS
すると、コマンドライン上はプロンプトが返ってこず、応答待ちの状態となった。psコマンドで見てみると、httpdプロセスはひとつだけ動いてる状態になっている。
# ps ax | grep http 78398 p4 S+ 0:01.73 /usr/local/sbin/httpd -DONE_PROCESS
この状態でブラウザからリクエストを投げてみると、応答待ちだったコマンドライン上でおもむろにpdbが起動し、コマンド入力待ちになった。適当にpdbのコマンドを実行してみる。
> /home/jun-g/public_html/test.py(6)handler()
-> req.content_type = "text/plain"
(Pdb) l
1 # coding: utf-8
2
3 from mod_python import apache
4
5 def handler(req):
6 -> req.content_type = "text/plain"
7 req.write("Hello, Mod_python!\n")
8 return apache.OK
9
[EOF]
(Pdb) p req.uri
'/~jun-g/test.py'
(Pdb) r
--Return--
> /home/jun-g/public_html/test.py(8)handler()->0
-> return apache.OK
(Pdb) s
最後まで実行すると普通にブラウザに応答が返ってきた。なるほど。本当にpdbでデバッグできるようになってるみたい。
しかし…これは…便利なのか…?普段ほとんどpdbを使っていないからかもしれないけど、便利かどうか判断がつかない。個人的には今までどおりprintデバッグで十分かな。あと-DONE_PROCESSで起動した場合のhttpdの止め方がわからん。apachectl -k stopでは止まらなかったので、結局kill -9で殺した。
他に以前のバージョンとの違いで気付いた点は
ぐらいかな。あと、mod_pyhton.util.Fieldもちょっと変わってて、以前書いたコードがそのままじゃ動かなかった。けどそれは以前のコードの書き方がまずかっただけかもしんないので、詳細はふせとこう。
ところでDjangoとかTrac経由じゃなくて、直接Mod_python触ってる人っているんかな…。