GithubHelp home page GithubHelp logo

Comments (42)

miyachik avatar miyachik commented on July 29, 2024

対象 https://github.com/treasure-data/td-client-ruby
README(Getting Started)読みながらinstallする gem install td-client

from workshop.

miyachik avatar miyachik commented on July 29, 2024

bundleで入れようとしたらgem installだった(勝手にハマった)
run in your console とか書くと親切かも

from workshop.

miyachik avatar miyachik commented on July 29, 2024

Configuration読みながらやってるけど実際にコピペですぐに使えない書き方されてるの若干不親切な感じがする
実際にインスタンスを生成する一文があればわかりやすかった。

from workshop.

miyachik avatar miyachik commented on July 29, 2024

TreasuredataからAPI key取ってくる、公式のなんだし公式のAPI取ってこれるURLをREADMEに書くと便利

from workshop.

miyachik avatar miyachik commented on July 29, 2024

Getting Started見ながらやっても想像で補わなきゃいけない部分があってつらい。
method名しか書かれてなくてクラス名を書かなきゃいけない。
備考: 想像のして間違えた結果

irb(main):002:0> Treasuredata.initalize('API_KEY')
NameError: uninitialized constant Treasuredata
    from (irb):2
    from /Users/kenta.miyachi/.rbenv/versions/2.2.3/bin/irb:11:in `<main>'

from workshop.

miyachik avatar miyachik commented on July 29, 2024

実行環境:

[kenta.miyachi]% ruby -v                                                                                                 [~/OSSWS]
ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin15]
[kenta.miyachi]% gem -v                                                                                                  [~/OSSWS]
2.4.5.1

実際にこのverをgemがサポートしていたかを確認するべき

from workshop.

miyachik avatar miyachik commented on July 29, 2024

githubのdescriptionに公式ドキュメントへのlink貼るならREADMEにも貼れば便利なのに

from workshop.

miyachik avatar miyachik commented on July 29, 2024

明らかに td に依存してるのにユーザーにそれをわかってる前提でREADME書かれてる。

from workshop.

miyachik avatar miyachik commented on July 29, 2024

td-client の説明見てるのに公式のドキュメント見たら td の話し始めた。

from workshop.

miyachik avatar miyachik commented on July 29, 2024

それぞれの役割とかをREADMEなり公式ドキュメントやらに書いておくとわかりやすい

from workshop.

miyachik avatar miyachik commented on July 29, 2024

公式ドキュメントにはクラス名とか詳しく書かれてるから別にtd-clientのREADMEにも書いておけば便利っぽい

from workshop.

miyachik avatar miyachik commented on July 29, 2024

ドキュメント通りやってたらエラー

irb(main):012:0> cln.databases.each { |db|
irb(main):013:1*   db.tables.each { |tbl|
irb(main):014:2*     p tbl.db_name
irb(main):015:2>     p tbl.table_name
irb(main):016:2>     p tbl.count
irb(main):017:2>   }
irb(main):018:1> }
TreasureData::AuthError: List databases failed: Failed to Login
    from /Users/kenta.miyachi/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/td-client-0.8.81/lib/td/client/api.rb:640:in `raise_error'
    from /Users/kenta.miyachi/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/td-client-0.8.81/lib/td/client/api/database.rb:12:in `list_databases'
    from /Users/kenta.miyachi/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/td-client-0.8.81/lib/td/client.rb:73:in `databases'
    from (irb):12
    from /Users/kenta.miyachi/.rbenv/versions/2.2.3/bin/irb:11:in `<main>'

ログイン失敗した、ってのはわかったけどなぜ失敗したかはわからない。
他のライブラリだともっと詳細にでる。

from workshop.

miyachik avatar miyachik commented on July 29, 2024

Failed to Login なのでインスタンス生成時に何かコケてるっぽいけどAPIKeyは合ってる。
今回はYBIを通してTreasuredataを使ってるのでそれが原因っぽい。

 @host="api.treasure-data.com",

from workshop.

miyachik avatar miyachik commented on July 29, 2024

td-client の方にはAPI endpoint の設定方法が書いてあった。今までtdの公式ドキュメントを呼んでたので流れがめんどくさい td-clientのREADME -> tdのドキュメント -> td-clientのREADME って戻ってきた

from workshop.

miyachik avatar miyachik commented on July 29, 2024

#56 (comment) で書いたAPI Keyを取得するURLはYBIのAPI Keyを取得するURLなので環境によって違うっぽい。defaultのendpointごとのAPI Key取得URLをREADMEには書くべき。

from workshop.

miyachik avatar miyachik commented on July 29, 2024

opts.merge({:endpoint => "https://api-alternate.treasuredata.com"}でendpoint設定できるよ!ってREADMEに書かれてるけどどこのmethodなのかわかりづらい
察しようとしたけど無理だった

irb(main):020:0* opts.merge({:endpoint => "https://api-alternate.treasuredata.com"})
NameError: undefined local variable or method `opts' for main:Object
    from (irb):20
    from /Users/kenta.miyachi/.rbenv/versions/2.2.3/bin/irb:11:in `<main>'
irb(main):021:0> cln.
irb(main):022:0* cln.opts.merge({:endpoint => "https://api-alternate.treasuredata.com"})
NoMethodError: undefined method `cln' for #<TreasureData::Client:0x007f9e8c4b8750>
    from (irb):22
    from /Users/kenta.miyachi/.rbenv/versions/2.2.3/bin/irb:11:in `<main>'
irb(main):023:0> cln.merge({:endpoint => "https://api-alternate.treasuredata.com"})
NoMethodError: undefined method `merge' for #<TreasureData::Client:0x007f9e8c4b8750>
    from (irb):23
    from /Users/kenta.miyachi/.rbenv/versions/2.2.3/bin/irb:11:in `<main>'

from workshop.

miyachik avatar miyachik commented on July 29, 2024

環境変数でも設定できるっぽいのでそっちでやる...

from workshop.

miyachik avatar miyachik commented on July 29, 2024

Running Testってよりかは実際にtd-clintでコードを書いた時に、specファイルを書くときに有用なgemの話なので若干README不親切

from workshop.

miyachik avatar miyachik commented on July 29, 2024

作業と感想をセットでメモする

from workshop.

miyachik avatar miyachik commented on July 29, 2024

READMEの各順番がおかしい。先にどんなoptがあるのかを明確に書けばわかりやすいっぽい。

ops = Hash.new
ops.merge 
initalize (key, ops)

で書ける?

from workshop.

miyachik avatar miyachik commented on July 29, 2024

ybiのendpointはこっち http://ybi.jp-east.idcfcloud.com
opsにhashでendpoint埋め込んでインスタンス生成する

from workshop.

miyachik avatar miyachik commented on July 29, 2024

いけた。

opts = Hash.new
opts = opts.merge({:endpoint => "http://ybi.jp-east.idcfcloud.com"})
cln = TreasureData::Client.new('API_KEY',opts)

from workshop.

miyachik avatar miyachik commented on July 29, 2024

不満点

  • READMEの順番が不親切
  • インスタンス生成時( initialize(apikey, opts={}) (constructor) )にoptsの書き方がないのでそれを追記したい
  • 具体的には #56 (comment) っぽく

from workshop.

miyachik avatar miyachik commented on July 29, 2024

rdocをmdに書き換える...?

from workshop.

miyachik avatar miyachik commented on July 29, 2024

READMEがrdocでつらい問題

from workshop.

miyachik avatar miyachik commented on July 29, 2024

https://github.com/kirkbowers/rdoc2md

from workshop.

miyachik avatar miyachik commented on July 29, 2024

rdoc2mdでREADME.md化

from workshop.

miyachik avatar miyachik commented on July 29, 2024

forkしてbranch切ってREADME.rdocを変換した。PR書く。

from workshop.

miyachik avatar miyachik commented on July 29, 2024

Convert README.rdoc to Markdown using rdoc2md

from workshop.

miyachik avatar miyachik commented on July 29, 2024

rdocからmdに変換する理由

from workshop.

miyachik avatar miyachik commented on July 29, 2024

markdownだったら別のドキュメントを書き換えてやるっていう気持ちを伝える

from workshop.

miyachik avatar miyachik commented on July 29, 2024

それをPRのコメントに書くとよりmergeされやすい。

from workshop.

miyachik avatar miyachik commented on July 29, 2024

その後にどこを書き換えようとしているのかを伝えると尚良。

from workshop.

miyachik avatar miyachik commented on July 29, 2024

ドキュメントが壊れていないかをURLなどを貼って確認する/させる。
本家
fork先

from workshop.

miyachik avatar miyachik commented on July 29, 2024

リンクより画像を貼っておくと吉

from workshop.

miyachik avatar miyachik commented on July 29, 2024
  • commitするようなOSSの管理者は忙しいのでそれを考慮したPRを書く。

from workshop.

miyachik avatar miyachik commented on July 29, 2024

convertしたmarkdownと本家rdocで差がないかなーって見てたらそもそも本家のrdoc記法に漏れがあるのを見つけた
https://github.com/treasure-data/td-client-ruby#additional-user-agents

from workshop.

miyachik avatar miyachik commented on July 29, 2024

向こうがmdにしたくないなら#56 (comment) のPRを送れば良い

from workshop.

miyachik avatar miyachik commented on July 29, 2024

ちゃんと変換できてるのを確認したから今度こそPR書く

from workshop.

miyachik avatar miyachik commented on July 29, 2024

他の人がplease, review it.って語尾につけてるの結構いいかも、そこまで必須のPRではないし、作者が好き好んでrdocを書いている可能性もあるし

from workshop.

miyachik avatar miyachik commented on July 29, 2024

PR出しました 🎉

from workshop.

kou avatar kou commented on July 29, 2024

お疲れさまでした!

from workshop.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.