[dddav] dddav 0.0.4をリリース

dddav 0.0.4をリリース。

機能追加

  • 指定ツールでのファイルオープンに対応。
  • ファイルの移動/コピーに対応。
  • 名前の変更に対応。

dddav - GUIのWebDAVクライアント for Windows

最終更新時刻: 2009年02月01日

[dddav] dddav 0.0.5をリリース

dddav 0.0.5をリリース。0.0.4で対応した名前の変更で、日本語処理を忘れていた為修正リリース。おまけでローカルフォルダの指定に対応。

機能追加

  • ローカルフォルダの指定ボタンを追加

バグ修正

  • 日本語ファイル名の名前変更ができなかったバグを修正

dddav - GUIのWebDAVクライアント for Windows

最終更新時刻: 2008年11月18日

WebDAVでシンボリックリンクのファイルが見えない

mod_davの仕様。

http://webdav.todo.gr.jp/faq/mod_dav.faq-jp.html#04-02

それはいいんだけど、シンボリックリンクのファイルを含むディレクトリをWebDAVクライアントから削除できないことが問題。

運用でカバーするしかない?

最終更新時刻: 2008年10月28日

[Server] CentOS 4.4にRast 0.3.1をインストール

nkfが必要なので先にnkfをインストール。

tar xvfz nkf207.tar.gz
cd nkf207
make
mv nkf /usr/bin/

rastインストール

wget http://projects.netlab.jp/rast/archives/rast-0.3.1.tar.bz2
tar xvfj rast-0.3.1.tar.bz2
cd rast-0.3.1
./configure \
 --with-apr-config=/usr/local/apache2/bin/apr-config \
 --with-apu-config=/usr/local/apache2/bin/apu-config
make
make install

/etc/ld.so.confに下記を追加

/usr/local/lib
/usr/local/apache2/lib/

設定を反映

ldconfig
最終更新時刻: 2008年10月29日

[PHP] ZEND FRAMEWORKのZend_Http_Clientのバグ? / [WebDAV][Server]Subversionの操作ログをサーバ側で出力する方法 / [tDiary]モバイルだとcategory_to_tag.rbでエラー / [tDiary]tDiaryのデバッグ / [tDiary][PHP][Ruby]Rubyで変数のダンプ

ZEND FRAMEWORKのZend_Http_Clientのバグ?

Zend_Http_Clientでページを取得しようとして、処理がいつまでたっても終わらずタイムアウトとなる。

原因はZend/Http/Client/Socket.phpの207行目レスポンス

if (isset($headers['connection']) && $headers['connection'] == 'close') {

何がいけなかったかというと、サーバーが返してきた値が'Close'だった。

とりあえずこう直した。下のほうのelse ifの条件に入って無限ループしてるんだと思われるが、これでいけたのでひとまず追わない。RFC的にどうかも気にはなるがスルー。

if (isset($headers['connection']) && strtolower($headers['connection']) == 'close') {

Socket.phpのファイルのバージョンはコレ。

@version    $Id: Socket.php 3348 2007-02-12 09:06:02Z shahar $

バグ報告が挙がってるかどうかは未確認。

追記:Subversion上の最新版でも該当個所は一緒。下のほうで無限ループにならないように改善されてるかもしれないが未確認。

Subversionの操作ログをサーバ側で出力する方法

httpd.confに下記行を追加するらしい。

CustomLog logs/svn_log "%t %u %{SVN-ACTION}e %U" env=SVN-ACTION

RX-7乗りの適当な日々 - Subversionの操作ログをサーバ側で出力する方法より

モバイルだとcategory_to_tag.rbでエラー

携帯でここのメモを見ると次のエラーが出ていた。

500 Internal Server Error

undefined method `[]=' for nil:NilClass (NoMethodError)

(plugin/category_to_tag.rb):34:in `subtitle_link'
/var/www/www.mylab.jp/htdocs/diary/tdiary.rb:105:in `join'
/var/www/www.mylab.jp/htdocs/diary/tdiary.rb:105:in `safe'
/var/www/www.mylab.jp/htdocs/diary/tdiary.rb:739:in `eval_src'
/var/www/www.mylab.jp/htdocs/diary/tdiary.rb:1085:in `do_eval_rhtml'
/var/www/www.mylab.jp/htdocs/diary/tdiary.rb:1027:in `eval_rhtml'
/var/www/www.mylab.jp/htdocs/diary/index.rb:69

以前ad hocにも程がある修正をしていたが、これだとタイトルが出力されないのでちゃんと調べた。

原因はrd_style.rbでモバイルの際にsection_enter_procが呼ばれない為。下記変更で正常に出力されるようになった。

rd_style.rb.patch
--- rd_style.rb.old	Wed Sep 13 16:15:02 2006
+++ rd_style.rb	Wed Mar 28 01:16:45 2007
@@ -249,8 +249,8 @@
       def html( date, idx, opt, mode = :HTML)
          if mode == :CHTML
             visitor = RD2tDiaryCHTMLVistor.new( date, idx, opt, @author)
-            section_open = ''
-            section_close = ''
+            section_open = "<%=section_enter_proc( Time::at( #{date.to_i} ))%>\n"
+            section_close = "<%=section_leave_proc( Time::at( #{date.to_i} ))%>\n"
          else
             visitor = RD2tDiaryVisitor.new( date, idx, opt, @author )
             section_open = %Q[<div class="section">\n<%=section_enter_proc( Time::at( #{date.to_i} ))%>\n]

tDiaryのデバッグ

require 'logger'
$logger = Logger.new('tdiary-debug.log')
$logger.debug('hoge')

CGIのデバッグ - まちゅダイアリー (2004-04-08)より

Rubyで変数のダンプ

hogeの中身をダンプ。

require 'pp'
pp hoge

PHPのprint_rのようなものがないですか?と聞いたら教えてもらったのがコレ。便利。

最終更新時刻: 2008年11月06日

ThinkPadモデル据え置きで値下げ…そんな餌に釣られクマー!

春モデルのThinkPadが出たら即購入!しようと思っていた自分にとって、今回のレノボのモデル据え置き値下げキャンペーンは「!!…?」なニュース。

一瞬購入ボタンを押しそうになったが、冷静に考えてみると新モデル発表前の売り切り策のようにも見える。

願わくば、モデルチェンジで価格据置でありますように。

最終更新時刻: 2008年10月31日

[dddav] dddav 0.0.6をリリース

dddav 0.0.6をリリース。スレッド処理を見直し。

機能追加

  • ダウンロード、アップロード中にプログレスバーによる進捗表示に対応。
  • 転送のキャンセルに対応。

バグ修正

  • ダウンロード、アップロード中に一部の操作を行うと落ちる現象を修正。
最終更新時刻: 2008年11月09日

[Programming] 普段使う言語

今週は機会に恵まれた。

  • PHPでLDAPプロトコルを使ってActiveDirectoryの情報を取得。あと、HTTPリクエスト使って情報を取得。
  • Accessのデータを基に、VBA使ってExcelに出力。
  • RubyでtDiaryハック。rd_style.rbのパッチを採用してもらった。
  • C/C++でdddavのコーディング。0.0.6をリリース。スレッド周りを整理。

全部あわせても1000ステップ程度だと思う。

C/C++は慣れてるから特に問題なし。Rubyはようやく始めた段階だけどわかり易い。Access VBAは…スマートじゃない…。

最終更新時刻: 2008年10月28日