tdiary / tdiary-contrib

tDiaryの非正規リポジトリ。どなたでもcommit可能です。commit権希望の方、まずはパッチ等をpull requestして下さい。
https://tdiary.org/
68 stars 46 forks source link

instagr.rb が動かない? #118

Closed tdtds closed 8 years ago

tdtds commented 9 years ago

instagr.rbが動かないという報告をみかけたので、わかる方フォローしていただけると (私はインスタ使ってないので):

satoryu commented 9 years ago

https://github.com/tdiary/tdiary-contrib/blob/master/plugin/instagram.rb

を勧めておきました。

tdtds commented 9 years ago

instagr.rb はいらない子なの?

tamoot commented 9 years ago

今でもinstagramのアプリからコピーできるURLを instagr.rb(拙作のほう)に渡せば動作しますので、要らない子ではないです。

@satoryu さんのinstagram.rbが高機能なのは間違いないのですが、tDiaryに表示するために利用しているinstagramのAPIが二つあるので、プラグインが二つできてしまっている、というのは判りづらくなっていますね。。

tdtds commented 9 years ago

なるほど。

(私はcontribに関して強制権を発揮する気はあまりないのでこれは要望にすぎませんが) ユーザ目線ではふたつあるのは混乱のもとなので、できれば統合されるべきだと思います。

satoryu commented 9 years ago

報告された課題は解決した様子です。

https://twitter.com/daijin/status/656015493829033984

satoryu commented 9 years ago

@tamoot さんが仰るとおり、2つプラグインがあるのはわかりづらいですね…

といった段階を踏むのはどうでしょう? @tdtds

tdtds commented 9 years ago

統合方法はお任せしますが、それぞれの実装のメリット/デメリットがうまく融合できたらいいですね。

instagram.rb はiframeを使っていますが、これはRSS feedのビューアでは表示されないことが多いです。feedで読んでいる人には文脈が理解されない一方、サーバサイドでの処理がない分軽いですね。

逆にinstagr.rb のようにサーバサイドでAPIを呼んでHTMLに展開する方式は、RSS feedでもきちんと表示されますが、処理は重いです。

tamoot commented 9 years ago

@satoryu 以下でどうでしょう?私でやりますよ。

  1. instagra.rbを削除
    • instagramからコピーできるURLで、instag.ram というホストとなることがなさそう
    • instagramというファイル名のほうが一般的と思います
  2. instagram.rbに以下を追加

    def instagr( short_url, size = :medium)
     # 略
    end
    alias :instagram :instagr
  3. instagra.rbへのケア
    • wikiで廃止と互換性を保ったinstagram.rb(wiki無し :baby_chick: )を参照するようアナウンス
    • 次回29の日で、contribの更新内容としてもアナウンス
    • contribのgemを意識せず、単独でinstagra.rbを配置しているユーザには影響がないと思っています。

と、ここまで書いておいて、instagra.rbに alias :instagram があるので、instagramメソッドが重複してしまうのですね。。

やっつけですがinstagramに統合する案です。後で試してみます。

require 'uri'
def instagram(*args)
   begin
     URI::parse(args[0])
     instagram_serverside(*args)
   rescue
     instagram_iframe(*args)
   end
end

def instagram_iframe(code, width=612, height=700)
  # instagram.rbの処理
end

def instagram_serverside( short_url, size = :medium)
  # instagra.rbの処理
end
satoryu commented 9 years ago

ありがとうございます :bow: 名前衝突、気づきませんでした…

tamoot commented 8 years ago

(あれーPR、違う.gitconfig使って出してました。。。 (後でもう一度PRします。。。orz

tdtds commented 8 years ago

これ、今月末のリリースまでに片付きますかね?

tamoot commented 8 years ago

遅くなりました! @satoryu さん、見ていただければ幸いですm( )m