サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
やろう!確定申告
memo.willnet.in
これはなに 8.0.0 Milestoneを見て気になったものをまとめています マイルストーンは先週くらいにできたのですがもうマージされているやつもたくさんあります DHHが年末年始にめっちゃ働いている 気になったものたち Ruby3.3以上のサポート DHHは最初3.3以上で、という気持ちだったんだけど流石にみんな大変やろ、という意見が出て結局リリース時(2024年の予定)にサポートされているRubyのバージョン、つまり3.1以上に落ち着いた PR: Bump the required Ruby version to 3.1.0 by byroot · Pull Request #50491 · rails/rails ↑のPRでは「メジャーバージョンアップ時にRubyのサポートを落とす」だとRails自体のメンテも大変だしアプリケーション開発者も大変なので、毎回マイナーバージョンアップ
ずっと左コマンドを単体で押したときに英数、右コマンドを単体で押したときにかなとしていたけど、左コマンドキーを押してすぐキーをタイプするとミスってタブを閉じてしまったりなどすることがよくあった。 我慢して使っていたのだけど、だれかのツイートでコマンドとスペースを利用して切り替えるようにした、というのを見かけてこれ良いのでは?となったのでkarabinerの設定を↓のように変えた。左コマンドだけスペースが必要にしてみた。右コマンドは単体でしか押さないので従来どおり。 ~/.config/karabiner/karabiner.json を以下のように編集した "rules": [ { "description": "右コマンドキーを単体で押したときに、かなキーを送信する", "manipulators": [ { "from": { "key_code": "right_command", "
macの話。 実行時間が長いコマンドを走らせて待っている間に他のことを始めてしまい、いつのまにかコマンドを実行していることそのものを忘れてしまう、という事が多かったので、終わったら通知が来るといいな、と思ったのでした。 調べたらapple script経由で通知を出せるらしいという情報を得たので、とりあえずbundle installとyarn install用のエイリアスに仕込んでみました。 alias b="bundle install && osascript -e 'display notification \"finish!\" with Title \"bundle install\"'" alias y="yarn install && osascript -e 'display notification \"finish!\" with Title \"yarn insta
class A < ApplicationRecord belongs_to :b end class B < ApplicationRecord belongs_to :a end a = A.new b = B.new a.b = b b.a = a a.save みたいなときどのように動くのかを調べた。 ↓このへんを参考にした rails/autosave_association.rb at master · rails/rails belongs_to関連を設定した場合、before_saveでsave_belongs_to_associationが実行される a.saveしたときに、save_belongs_to_association経由で関連先bのsaveを実行する bのbefore_saveでもsave_belongs_to_associationが実行され、先にaが保存さ
Railsをお仕事で使っている方はみんなE2Eのテストで時々失敗するやつに苦労しているんじゃないかなと思います。 @mtsmfmさんの発表スライドが詳しいので基本的にはこれで大体のケースには対応できるはず。 スライド読むのがめんどくさい人向けに、一部抜粋かつ要約すると なんらかの要因(CSSアニメーションや画像のロード)でDOM要素が移動する場合にクリックをミスしてしまってテストが失敗するケースが「時々失敗するテスト」の大多数を占める という話になります。これを防ぐためにはCSSのアニメーションをオフにしたり、↓のようなメソッドを利用して画像が完全にロードするまで待ってからクリックする、という方法があります。 def wait_for_image_loading Timeout.timeout(Capybara.default_max_wait_time) do sleep 0.5 unt
Railsアプリで「こういう時、どう実装するのが綺麗なのか?」みたいな現実感ある事例を各自が持ち寄って、それに対する意見を出す場というか、そんなの。nested_attributes_for、bulk_insert、複雑なview、非同期処理をどこに書くの?的な。— 神速 (@sinsoku_listy) 2017年12月11日 Railsのきれいなコードについて議論する勉強会、お題が揃えられるならginza.rbで開催できると思います— willnet (@netwillnet) 2017年12月11日 この件、やりたい気持ちはあるし、いいねたくさんついたので興味ある人がいるのはわかるけど、事前準備のハードルが結構高い。そこをクリアできる案を出すか、もしくは事前準備担当します!みたいな人がいないと開催は難しい。 これまでの経験上、適当に人を集めてもお題はちゃんと集まらない。のでなんらかの
だいたい次のような感じで行けるはず(実際は試行錯誤したのでこの通りにはやっていない)。設定ファイルやpackage.jsonに記載されるpackageなどがだいぶ減った。 bundle update webpacker config/webpack 配下を全部消す package.jsonを消す yarn.lockを消す public/packs配下にファイルが有れば消す ./bin/rails webpacker:install ./bin/webpacker などをオーバライドする 差分を見て残すべきものを残す package.jsonに無駄な指定が残っているのに気付かず、webpackerのバージョン違いが2つ混在する形になっていてしばらく時間吸われた。 それほどjsを使っているわけではないアプリケーションなのでバージョン上げても大差ないのだけど、webpack-dev-server
前提 Google Chrome 61.0.3163.100 chromedriver 2.3.1 Docker 17.03.1-ce docker-compose 1.11.2 注意点 dockerがデフォルトで利用しているseccompの設定だとheadless chromeが動かない seccompを変更することはできる dockerコマンドのオプションでseccomp用の設定ファイルを渡すことができる chromeを動かすための設定ファイルを作って公開している人がいる しかし現行のdocker-composeだと、設定ファイルを渡すやり方ができない docker-compose.ymlに一つづつ設定を書いていくことはできるがダルい seccomp:unconfinedのようにしてseccomp自体を無効にすることはできるがセキュリティ的に不安 次のようにCAP_SYS_ADMINを
モチベーション Redashを楽に安くホスティングしたい 以前はherokuでのホスティングをサポートしていたけど、現在はサポートなし しかしDockerでのホスティングをサポートしているようなので、DockerイメージをherokuにpushしてしまえばherokuでもRedash使えるのではないかと考えた いくつか気をつけるべき点があったけど、比較的すんなりRedashをherokuで動かすところまで行けたので要点をまとめる 気をつけるべき点 herokuでDockerコンテナ動かすにあたっていくつか気をつける点があった。 WORKDIRのデフォルトが/なので/appに変更する $PORTをポート番号として受け付ける必要がある 公式のDockerイメージで使うサーバ起動コマンドは5000番ポートが決め打ちで書かれていて、さらに外から変更することができなかった ↑を解決するためにENTR
OneSignalを利用してブラウザPush通知機能を追加した際に、HTTPSでのみ使用する前提のJSライブラリを入れたのが原因で、開発環境でもHTTPSを利用する必要が出た。 前提として、 Mac OSX puma-dev webpacker を利用している。puma-devはHTTPSに対応していて、自動でオレオレ証明書を作ってくれる。 webpack-dev-serverもHTTPSに対応している。次のようにconfig/webpacker.ymlのhttpsをtrueにするとhttps://example.com:8080/packs/application.jsといったURLでwebpackがコンパイルしたjsにアクセスできる。 development: <<: *default dev_server: host: example.com port: 8080 https: tr
jquery-ujsからrails-ujsの移行、特に気をつけることないと思ってたけどajax:successなどのイベントのコールバックに渡される引数が違うな— willnet (@netwillnet) 2017年7月15日 jquery-ujs だと data, status, xhr rails-ujs だと event だけ レスポンスの情報がほしいときは event.detailの中をみる document.body.addEventListener('ajax:success', function(event) { var detail = event.detail; var data = detail[0], status = detail[1], xhr = detail[2]; }) 参考 jquery-ujs/rails.js at master · rails/jq
ruby 1.8.6を使ってみようと思い、mac sierraでビルドしてみようとしましたがだいぶハマりました。 まずは公式のgccを使わないといけないと怒られる。指示の通り入れようとするともうそんなのないと言われる。こちらのブログを参考に無理やり入れてみようとしましたがだめでした。 Sierraでruby-buildで1.8.7をビルドする - 福島餃子Ruby親方 ここで、macをそのまま利用することを諦め、docker越しにインストールすることを試みます。検索すると各種Rubyのバージョン用のDockerfileをを取り揃えたリポジトリがありました。 abevoelker/docker-ruby: Dockerfiles for lots of MRI Ruby and JRuby interpreters これを利用して1.8.6のイメージを作成しようとしましたがエラー…。どうやら
株式会社ウィルネットを設立した - おもしろwebサービス開発日記の関連エントリ。作る過程のメモ書きです。 僕は普段の記帳にMFクラウド会計を使っていたので、まず関連サービスであるMFクラウド創業支援サービスを試しました。正確にはMFクラウド創業支援サービスと提携している無料登記ドットコムです。 しかし定款の認証で電子認証をしようとしてハマりました。定款の認証形式は電子と紙があり、紙だと4万円、電子だと0円(ただし道具を揃えたり色々めんどくさい)という感じです。代理で数千円から電子認証の面倒な部分をやってくれる業者があるのでそれが一番コスパがよいのではと考えました。 しかし無料登記ドットコムは基本的に紙の認証しか想定してないようで、電子の認証については公式リンクへの参照があるのみ。電子認証をしてくれる業者をいくつか探しましたが、定款のファイル形式がテキストファイルやExcelファイルしか取
annotate_models のコード見ていたら、次のようなコードが書かれていて、実際の db:migrate のタスクを上書きしてるのかなあ…だとしたら実際の db:migrate の処理どこ行ったんだろうと思った。 namespace :db do [:migrate, :rollback].each do |cmd| task cmd do Rake::Task['set_annotation_options'].invoke Annotate::Migration.update_annotations end # ... end ちゃんと調べたら、同じrakeタスクは複数定義すると、両方実行される仕様っぽいですね。知らなかった task :hoge do puts 'hoge' end task :hoge do puts 'fuga' end rake hoge とすると ho
emacs の theme は solarized-dark を使っています。最近 helm を導入したのですが、helm で選択中の箇所の色が solarized-dark と相性悪くて、今何を選択しているのか分からない状態に陥りました。helm はなかなか便利なのですがこれはこまります><解消法を調べたのでメモしておきます。 解消法 まず M-x list-faces-display で今設定されている faces の名前と適用例を見て変更したいものを見つけてRETで選択(今回の例だと helm-selection)。後は Background の Chooose にカーソル移動して RET して色を選ぶ State にカーソル移動してRET→1で .emacs に設定保存 これでおk。helm が使いやすくなりました。
nginx & unicorn で設定してるときに気になった箇所のメモ書き proxy_redirect レスポンスヘッダのうち Location Refresh の書き換え。 Location ヘッダ 201 のとき、新しく作られたリソース(URL)を返す 3xx のとき、リダイレクト先のURLを返す ためのヘッダ 設定例 もし下記のように nginx を設定していて proxy_redirect http://localhost:8000/two/ http://frontend/one/; Location: http://localhost:8000/two/some/uri/. というレスポンスヘッダが返ってきたら、nginx はそれを Location: http://frontend/one/some/uri/. に書き換える。デフォルトは proxy_pass にならう。下
このページを最初にブックマークしてみませんか?
『おもしろwebサービス開発日記チラシの裏』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く