若い頃の j-will

超絶かっこよい

Jason Williams (White Chocolate) was amazing 😳😯 Follow @bbawls for more!

Basketballさん(@bbawls)がシェアした投稿 -

instagram で昔のスーパープレイ集とかでてくるのよい

φ(..)メモメモ

python 製のスクレイピングしていっきに拾ってくるやつあったのでメモ

github.com

特定のラベルのついたPRを拾ってくる

使い所

  • "レビュー中" のPRをリマインドする
  • まとめて複数PRをリリースするときの、PR一覧を知りたい (ラベル運用必須だけど)

などなど

API v3

#! /usr/bin/env ruby

require 'rake'
require 'octokit'

GITHUB_TOKEN = 'personal access token'
REPO  = 'owner_name/repo_name'
LABEL = 'label_name'

namespace :pr do
  desc 'waiting for review'
  task :label do
    github_client.pull_requests(REPO).each do |pr|
      pr.rels[:issue].get.data.rels[:labels].get.data.each do |label|
        puts "#{pr[:title]} : #{pr[:html_url]}" if label[:name] == LABEL
      end
    end
  end

  private

  def github_client
    Octokit::Client.new(access_token: GITHUB_TOKEN)
  end
end

API v4 (GraphQL)

#! /usr/bin/env ruby

require 'json'
require 'rake'
require 'octokit'

GITHUB_TOKEN = 'personal access token'
REPO  = 'owner_name/repo_name'
LABEL = 'label_name'

namespace :pr do
  desc 'waiting for review'
  task :label do
    graphql(query: pull_requests)[:data][:repository][:label][:pullRequests][:edges].each do |pr|
      puts "#{pr[:node][:title]} : #{pr[:node][:url]}"
    end
  end

  private

  def github_client
    Octokit::Client.new(access_token: GITHUB_TOKEN)
  end

  def graphql(query:, variables: {})
    github_client.post '/graphql', {query: query, variables: variables}.to_json
  end

  def pull_requests(label: LABEL)
    owner, name = REPO.split('/')
    <<~"GRAPHQL"
      query {
        repository(owner: "#{owner}", name: "#{name}") {
          label(name: "#{label}") {
            pullRequests(last: 20) {
              edges {
                node {
                  title
                  url
                }
              }
            }
          }
        }
      }
    GRAPHQL
  end
end

メモと所感

  • v4 の GraphQL を使えばもっとラクにとってこれるのかなーと思ったけど、慣れが必要かなーという感じだった
  • octokit の gem で返ってくるレスポンスは Sawyer::Resource になっててちょっと面倒 (GraphQL は、octokit 使わなくてもよかったかも)
  • debug のときに awesome_print 使ったら超絶便利だった
  • せっかくなら、Go とかで書いてみればよかった

REF

Reference | GitHub Developer Guide

github.com

github.com

肩こりひどいので

分離型のキーボードを使ってみたい。

このイラストのように、肩とか腰に負荷かかってるですよねきっと..

ErgoDoxよいよいと聞くけど
操作感に慣れることできずに使うの辞めちゃう割合もけっこー高いっぽいので、 MiSTEL のやつほしい!

他にも、
たかいけど、Ultimate Hacking Keyboard ってのもすごいよさそう
(発売ずっと延期してる... )

https://www.crowdsupply.com/ugl/ultimate-hacking-keyboard

とにかく、肩こりなおしたい!
適当に運動したほうがはやそう...
どなたかいっしょに、キャッチボールしませんか?