[Codeigniter-users] はじめまして

Back to archive index

Yoshiyuki Okamoto okamo****@gmail*****
2011年 5月 25日 (水) 18:12:10 JST


お世話になっております。
岡本です。

Kenjiさん
ご回答ありがとうございます。

> もし、CI 本体に取り込んで欲しい場合は、CI での機能追加のフローは、
> UserVoice http://codeigniter.uservoice.com/forums/40508-codeigniter-reactor
> で提案して採用されれば実装されます。
> 軽微な拡張なので、Bitbucket の issue に type を enhancement で登録しても
> いいかもしれません。
⇒こちらアドバイスありがとうございます。

> この issue の status を open にしたということです。
> 報告された内容に同意したので状態を open へ進めたということです。
> issue への登録は多く、invalid (無効) なものも多いので、
> 重要性が低いと、それだけ放置されやすくなると思います。
> なので、修正して欲しいバグ報告はこのように状態を変更したり
> 同意するコメントを書き込んだ方が目につきやすくなりますので
> 修される可能性が高くなるということです。
なるほど、よくわかりました。ご説明ありがとうございます。

下記の流れで確認してみようと思います。

(1)最新ソース確認
(2)issueの確認、UserVoiceの確認
(3)issueに同意する場合、openにする。
(4)発見したバグが、issueになければ、バグ報告書き込み
(5)要望事項が、UserVoiceになければ、機能拡張依頼書き込み


このあたり、方向性が見えてきました。
ありがとうございます。

取り急ぎ、お礼まで。


2011年5月24日11:46 Kenji Suzuki <kenji****@gmail*****>:
> Kenji です。
>
>
> On Tue, 24 May 2011 10:00:25 +0900
> Yoshiyuki Okamoto <okamo****@gmail*****> wrote:
>
>> お世話になっております。
>> 岡本です。
>>
>>
>> Kenjiさんご返信ありがとうございます。
>>
>>
>> > \w だとうまく動かない理由がわかりません。
>> > 動作しないサンプルコードはありますでしょうか?
>> ⇒こちらですが、下記のようにValidation Rule に[が含まれる場合に\wだとマッチしないようです。
>> callback__check_db[arg1,arg2]
>
> なるほど。たぶん、現状の仕様から外れるルール名ですね。
> [] で引数を渡すことは想定されていないのでしょう。
>
>
> もし、CI 本体に取り込んで欲しい場合は、CI での機能追加のフローは、
>
> UserVoice http://codeigniter.uservoice.com/forums/40508-codeigniter-reactor
>
> で提案して採用されれば実装されます。
>
> 軽微な拡張なので、Bitbucket の issue に type を enhancement で登録しても
> いいかもしれません。
>
>
>> > https://bitbucket.org/ellislab/codeigniter-reactor/issue/158/cachephp-save-behavior-depending-on-the
>> > これですね。バグと思えますので open にしました。
>> ⇒こちらですが、まさにこれですね。
>> 恥ずかしながら open にするというのはどういう意味でしょうか?
>
> この issue の status を open にしたということです。
> 報告された内容に同意したので状態を open へ進めたということです。
>
> issue への登録は多く、invalid (無効) なものも多いので、
> 重要性が低いと、それだけ放置されやすくなると思います。
>
> なので、修正して欲しいバグ報告はこのように状態を変更したり
> 同意するコメントを書き込んだ方が目につきやすくなりますので
> 修される可能性が高くなるということです。
>
>
>> 追加ですが、system/libraries/Cache/Cache.phpで
>> ドライバをmemcached、バックアップアップドライバをfileに指定して、memcachedモジュールのない環境でキャッシュライブラリを使うとエラーとなりました。こちらもバグかと思います。取り急ぎローカル修正済ですが、こちらも共有しますね。
>>
>> system/libraries/Cache/Cache.php の マジックメソッド
>>       public function __get($child)
>>       {
>>               $obj = parent::__get($child);
>>
>>               if ( ! $this->is_supported($child))
>>               {
>>                       $this->_adapter = $this->_backup_driver;
>>                       $obj = parent::__get($this->_backup_driver);
>> //この行追加。追加しないと$objがNULLで、後続処理で落ちる
>>               }
>>
>>               return $obj;
>>       }
>
> これはバグのようですね。
>
>
>> > systemフォルダ内を修正したくない場合は、appliecation/ 以下の同じ
>> > フォルダで継承
>> >
>> > http://codeigniter.jp/user_guide_ja/general/core_classes.html
>> > http://codeigniter.jp/user_guide_ja/general/creating_libraries.html
>> >
>> > ですが、ドライバや core/Common.php は継承したりオーバライドできなかった
>> > と思います。
>> ⇒こちらですが、ありがとうございます。
>> 今回思ったのですが、オーバーライドたくさんあるとバージョンアップの時に大変ですね。
>> なので、2系にバージョンアップしてできるだけCI標準API使うようにシステム修正しているところです。
>
> まあ、オーバーライドが多くなればバージョンアップ時に、検証したりテストしないと
> いけない手間は増えるでしょうね。ちょっとしたメソッド追加程度であれば、実際、
> ほとんど問題はないとは思いますが。
>
>
>> ただし、Form_validationクラスについてはPOST値に依存していて、バッチ等のファイル入力で使えない為、大幅に書き換えましたが。
>
> 大幅に違うなら別のライブラリにした方がいいかもしれません。
>
>
> // Kenji
>
>
>
>> 以上です。
>> 取り急ぎお礼と回答まで。
>>
>>
>>
>>
>>
>> 2011年5月23日19:25 Kenji Suzuki <kenji****@gmail*****>:
>> > Kenji です。
>> >
>> >
>> > On Wed, 18 May 2011 19:48:55 +0900
>> > Yoshiyuki Okamoto <okamo****@gmail*****> wrote:
>> >
>> >> はじめまして。
>> >> 岡本と申します。
>> >>
>> >> 現在CodeIgniter1.7.2をベースに作られたシステム(WEBとバッチ)を
>> >> CodeIgniter2.0.2に置き換える作業をしているのですが、
>> >> その中で数点バグ?のような内容を発見しました。
>> >>
>> >> 対応はしたのですが、コアに手をいれたくないので、
>> >> 本体側に修正依頼をしたいのですが
>> >> どのようにすればよいか、アドバイスいただけないでしょうか?
>> >>
>> >> ---------------------------------------------------------------------------------------------------------------------------------
>> >>
>> >> (その1)Form_validationでコールバックのValidation関数がうまく動かない
>> >> (環境)Windows XP 64bit XAMPP 1.7.4  PHP5.3系
>> >> (対応)system/libraries/Form_validation.phpを修正して解決。
>> >> 492c492
>> >> <                       if (preg_match("/(callback_\w+)/", implode('
>> >> ', $rules), $match))
>> >> ---
>> >> >                       if (preg_match("/(callback_.+)/", implode(' ', $rules), $match))
>> >
>> > \w だとうまく動かない理由がわかりません。
>> > 動作しないサンプルコードはありますでしょうか?
>> >
>> > 他のプラットフォームでも同様に動作しないなら、バグと言えるかもしれませんの
>> > 本家にバグ報告してみるということも考えられますが。
>> >
>> >
>> >> ---------------------------------------------------------------------------------------------------------------------------------
>> >>
>> >> (その2)Memcacheのキャッシュドライバー読み込み時にエラーが発生。
>> >> (環境)CentOS release 5.4 PHP5.2系
>> >> (対応)system/libraries/Driver.phpを修正して解決。
>> >> 62c62
>> >> <                                               $filepath =
>> >> $path.'libraries/'.$lib_name.'/drivers/'.$class.EXT;
>> >> ---
>> >> >                                               $filepath = $path.'libraries/'.ucfirst($lib_name).'/drivers/'.$class.EXT;
>> >
>> > 最新のコード <https://bitbucket.org/ellislab/codeigniter-reactor> では、48行目で
>> >
>> >        $lib_name = ucfirst(strtolower(str_replace('CI_', '', $this->lib_name)));
>> >
>> > となっており、修正されているのではないでしょうか?
>> >
>> >
>> >> ---------------------------------------------------------------------------------------------------------------------------------
>> >>
>> >> (その3)ControllerでPear::Mailをrequreしたらapacheが強制終了。
>> >>         8192番エラー(E_DEPRECATED)発生が関係している???
>> >>
>> >> (環境)Windows XP 64bit XAMPP 1.7.4  PHP5.3系
>> >> (対応)system/core/Common.phpを修正して解決。
>> >> 444c444
>> >> <               if ($severity == E_STRICT)
>> >> ---
>> >> >               if ($severity == E_STRICT || $severity == 8192)
>> >
>> > Apache が強制終了するのは、たぶん PHP のバグでしょうね。CI が原因とは言えないでしょうから、
>> > CI のバグとするのは無理があるように思います。
>> >
>> > E_DEPRECATED が発生するライブラリの方が問題とも言えると思います。
>> >
>> >
>> >> ---------------------------------------------------------------------------------------------------------------------------------
>> >>
>> >> 以下はバグではないと思いますが、改善したい点です。
>> >>
>> >> (その4)Memcacheのキャッシュドライバーのsaveメソッドで値の上書きができない。
>> >>     (例)
>> >>   $CI->cache->memcached->save('sess_id', 'value1');
>> >>        $CI->cache->memcached->save('sess_id', 'value2');
>> >>
>> >>   とした場合に、value2がはいらない様子。
>> >
>> > https://bitbucket.org/ellislab/codeigniter-reactor/issue/158/cachephp-save-behavior-depending-on-the
>> > これですね。バグと思えますので open にしました。
>> >
>> >
>> >> (対応)上書きしたかったのでCache_memcached.phpに下記の修正をしました。
>> >> 67c67,74
>> >> <               return $this->_memcached->add($id, array($data,
>> >> time(), $ttl), $ttl);
>> >> ---
>> >> >               if ($this->_memcached->get($id) === FALSE)
>> >> >               {
>> >> >                       return $this->_memcached->add($id, array($data, time(), $ttl), $ttl);
>> >> >               }
>> >> >               else
>> >> >               {
>> >> >                       return $this->_memcached->set($id, array($data, time(), $ttl), $ttl);
>> >> >               }
>> >>
>> >> ---------------------------------------------------------------------------------------------------------------------------------
>> >>
>> >> いまのところ、上記4点についてsystemフォルダ内を修正してしまったのですが、
>> >> 修正したくないので、本体修正依頼するか、別の方法で回避したいと考えています。
>> >
>> > systemフォルダ内を修正したくない場合は、appliecation/ 以下の同じ
>> > フォルダで継承
>> >
>> > http://codeigniter.jp/user_guide_ja/general/core_classes.html
>> > http://codeigniter.jp/user_guide_ja/general/creating_libraries.html
>> >
>> > ですが、ドライバや core/Common.php は継承したりオーバライドできなかった
>> > と思います。
>> >
>> >
>> > // Kenji
>> >
>> >
>> >> いきなり長文ですみませんが、アドバイスいただければ幸いです。
>> >>
>> >> _______________________________________________
>> >> Codeigniter-users mailing list
>> >> Codei****@lists*****
>> >> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users
>> >
>> > _______________________________________________
>> > Codeigniter-users mailing list
>> > Codei****@lists*****
>> > http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users
>> >
>>
>> _______________________________________________
>> Codeigniter-users mailing list
>> Codei****@lists*****
>> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users
>
> _______________________________________________
> Codeigniter-users mailing list
> Codei****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users
>




Codeigniter-users メーリングリストの案内
Back to archive index