Re: [twmode-users] timeline変更時に過 去のtweetを破棄しない変更につ いて

2010-02-12 スレッド表示 Tadashi MATSUO
松尾です。

再現条件がはっきりしていないのですが
twittering-timeline-data-table 導入以後、user-screen-name の
face が消える現象が時々起こっています。
twittering-timeline-data-table から該当tweetを取り出すと
(user-screen-name . "USERNAME")
のように timeline-data 内で text property なしの文字列として
保存されています。

新規 tweet として取得したときは正しい property が付いていて
face も有効なのですが、色々な timeline を行き来して戻って
くると property が消えることがあるようです。

emacs -q --no-site-file --load twittering-mode.el -nw
で起動した状態ではまだこの現象を確認できていないので、
こちらの環境のせいかもしれませんが一応報告しておきます。

---
松尾 直志 

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
twmode-users mailing list
twmode-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/twmode-users


Re: [twmode-users] timeline変更時に過 去のtweetを破棄しない変更につ いて

2010-02-12 スレッド表示 yata_github
修正ありがとうございます。色々と足りてませんでした…。

> 現在の実装では違う timeline をリクエストする度に
> twittering-timeline-last-update がリセットされていますが、
> これも本来は twittering-timeline-data-table に含めるべき
> 情報と思います。いずれ対処するつもりです。

APIの仕様を改めて確認してみると、

| April 8, 2009
| 
| * Changed (REST): The since parameter and If-Modified-Since
|   header are no longer supported.

とされていたので、これらをsince_idで置き換えました。これにより
twittering-timeline-last-updateは不要になったので削除しました。

#

since_idで取得すれば「抜け」がなくなるかなと期待していたのですが、
そう甘くはありませんでした。。

# since_idの仕様がユーザに優しくない、とも言います。。


> 松尾です。

> timelineを破棄しないための commit
> 6a499dfff6e2e943ee45146709f1f00ecbbc0489
> には、timelineの内容が混ざる場合があるようです。

> これは global変数 twittering-timeline-data を
> twittering-get-and-render-timeline の時点で設定している
> ためです。

> twittering-get-and-render-timeline では指定された spec が
> twittering-last-retrieved-timeline-spec-string と違う
> ときに twittering-timeline-data が変更されています。

> この実装で下記の手順を踏むと":mentions"のtimelineに
> ":home"のtimelineの内容が混ざります。

> 1. ":home"を表示
> 2. V→":mentions"
> twittering-last-retrieved-timeline-spec-string == ":home"
> twittering-last-requested-timeline-spec-string == ":mentions"
> twittering-timeline-data == {":mentions"のtimeline}
> になります。

> 3.2.の直後にV→":home"とする
> twittering-last-retrieved-timeline-spec-string == ":home"
> twittering-last-requested-timeline-spec-string == ":home"
> twittering-timeline-data == {":mentions"のtimeline}

> last-retrieved-specと指示されたspecが同じなので
> twittering-timeline-data が更新されません。
> この後にsentinelが起動すると
> {":mentions"のtimeline} + {新規取得した":home"のtimeline}
> が改めて":home"のtimelineとして記憶されてしまいます。

> twittering-timeline-data-table と twittering-timeline-data
> で二重管理しているのが混乱の元と思うのでそれを一元化する
> 修正を commit しました。
> (b955a72d0bc6b1af88e71188b7d75a1a5c7e9bceです)

> 現在のtimeline-dataの参照にはtwittering-timeline-dataの
> 代わりに (twittering-current-timeline-data) を使うように
> なっています。

> 現在の実装では違う timeline をリクエストする度に
> twittering-timeline-last-update がリセットされていますが、
> これも本来は twittering-timeline-data-table に含めるべき
> 情報と思います。いずれ対処するつもりです。

> ---
> 松尾 直志 

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
twmode-users mailing list
twmode-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/twmode-users


Re: [twmode-users] timeline変更時に過 去のtweetを破棄しない変更につ いて

2010-02-11 スレッド表示 Tadashi MATSUO
松尾です。

timelineを破棄しないための commit
6a499dfff6e2e943ee45146709f1f00ecbbc0489
には、timelineの内容が混ざる場合があるようです。

これは global変数 twittering-timeline-data を
twittering-get-and-render-timeline の時点で設定している
ためです。

twittering-get-and-render-timeline では指定された spec が
twittering-last-retrieved-timeline-spec-string と違う
ときに twittering-timeline-data が変更されています。

この実装で下記の手順を踏むと":mentions"のtimelineに
":home"のtimelineの内容が混ざります。

1. ":home"を表示
2. V→":mentions"
   twittering-last-retrieved-timeline-spec-string == ":home"
   twittering-last-requested-timeline-spec-string == ":mentions"
   twittering-timeline-data == {":mentions"のtimeline}
   になります。

3.2.の直後にV→":home"とする
   twittering-last-retrieved-timeline-spec-string == ":home"
   twittering-last-requested-timeline-spec-string == ":home"
   twittering-timeline-data == {":mentions"のtimeline}

   last-retrieved-specと指示されたspecが同じなので
   twittering-timeline-data が更新されません。
   この後にsentinelが起動すると
   {":mentions"のtimeline} + {新規取得した":home"のtimeline}
   が改めて":home"のtimelineとして記憶されてしまいます。

twittering-timeline-data-table と twittering-timeline-data
で二重管理しているのが混乱の元と思うのでそれを一元化する
修正を commit しました。
(b955a72d0bc6b1af88e71188b7d75a1a5c7e9bceです)

現在のtimeline-dataの参照にはtwittering-timeline-dataの
代わりに (twittering-current-timeline-data) を使うように
なっています。

現在の実装では違う timeline をリクエストする度に
twittering-timeline-last-update がリセットされていますが、
これも本来は twittering-timeline-data-table に含めるべき
情報と思います。いずれ対処するつもりです。

---
松尾 直志 

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
twmode-users mailing list
twmode-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/twmode-users