Quantcast
Channel: ruby - Madogiwa Blog
Browsing all 42 articles
Browse latest View live

rbenv+nodebrewからasdfに移行したので作業メモ📝

rbenv+nodebrewからasdfに移行してみたのでやったことをメモしておきます📝github.comasdfインストール公式はgit cloneの方法のようだが、homebrewからinstallできるようなのでinstallhttps://asdf-vm.com/guide/getting-started.html#_2-download-asdf$ brew install asdf...

View Article


`vscode-standard-ruby`でプリインストールのrubyが利用されてしまうのを直した時のメモ📝

vscode-standard-rubyでプリインストールのrubyで実行されてしまいパッケージマネージャーで関しているバージョンで実行されずLSPが落ちてしまいハマったので対応したことをメモ📝github.com事象解決方法参考事象以下のようにターミナルで確認するとパッケージマネージャで管理している最新のRubyが利用されているが、$ ruby -v ruby 3.2.2(2023-03-30...

View Article


Ruby: Haml v6アップデート時のカスタム属性の振る舞いの互換性を維持するメモ📝

Haml v6からHamlの内部実装がHamlitに置き換わりパフォーマンス向上等のメリットがありますが、github.com以下のissueでコメントされている通り、github.comVue.js等を利用している場合に以下のようなfalsyの値がv5系では<cutsom-element />となっていたのが、%cutsom-element{ ":costom-attributes":...

View Article

Ruby: Ruby 3.3アップデート後に`bin/rails`系のコマンド実行時にconcurrent-rubyでSegmentation...

個人のWebサービスがRuby 3.3アップデート後にbin/rails系のコマンド実行時にconcurrent-rubyでSegmentation faultが発生したのでメモ📝$ bin/rails c...

View Article

Ruby on Rails: GoodJobをRailsアプリケーションと同一プロセスで実行するメモ📝

Heroku等で運用しているとバッチサーバーを別のプロセスで実行するとお金が掛かったりするのでGoodJobを用いている場合にRailsアプリケーションと同一プロセスで起動する方法をメモ📝GoodJobについてはこちらmadogiwa0124.hatenablog.comやり方としては簡単で以下のようにgood_job.execution_modeを:asyncに変更するだけで大丈夫だった。...

View Article


Ruby: `define_method`でキーワード引数を持つメソッドを定義するメモ📝

Rubyのdefine_methodを使うと外部からレシーバーに任意のメソッドを定義できますが、キーワード引数を持つメソッドを定義するときにやり方を迷ったのでメモ📝docs.ruby-lang.orgdefine_methodは以下のようにblockを渡してメソッドを定義できますが、block引数ではキーワード引数を定義できませんが、classFoodeffoo;...

View Article

Ruby on Rails:...

個人のWebサービスでconfig.content_security_policy_report_only=trueを外し、CSP違反があった場合にブラウザエラーを発生させるようにしたところ、Sytem Specが軒並み落ちるようになり対応したのでやったことをメモ📝事象原因解決策参考事象ブラウザエラーを見たところ、以下のようなCSP違反のログが多数出ていたので、The source list for...

View Article

Ruby on Rails: Capybaraで特定の要素が無くなるのを待つ方法MEMO

Capybaraで、読み込み中を表すコンポーネントが消えるのを待ってからスクショを撮りたいみたいな時に特定の要素が消えるのを待つ方法をMEMO結論だけ言うと以下のようにスクリーンショットを習得する前にローダーが無くなることを判定すれば良い。page.has_no_css?(".page-loader") page.save_screenshot("tmp/foo/bar.png")...

View Article


Ruby: 個人サービスをRuby v3.3.0にアップデートした💎✨

以下の問題があったのでRuby v3.3.0へのアップデートを見送っていたのですが、madogiwa0124.hatenablog.comDocker Hubの公式イメージに修正が入り正常に動作するようになったようなのでRuby on Rails製の個人サービスをRuby v3.3.0にアップデートしました💎✨その後Docker...

View Article


Ruby: 外部からprivateなメソッドをpublicにする方法メモ📝

好ましくはないですが、通常Rubyでprivateなメソッドを呼び出したい時にはsendを使うケースが多いです。docs.ruby-lang.orgしかしライブラリの破壊的変更等によりpublicだっだメソッドがprivateになる等、すでに大量に依存しているケースですべてをsendに直すのは大変なケースもあります。そういうケースではModule#publicを使うと任意のprivateメソッドをp...

View Article

Rails wayなフロントエンド環境を試してみたメモ📝

以下のようなpropshaft、JavaScript Bundling for Rails(TypeScript, Rollup)、CSS Bundling for Rails(TailwindCSS)、View Componentを使ったRails wayなフロントエンド環境を試したみたので感想とかをメモ📝GitHub - rails/propshaft: Deliver assets for...

View Article

Vite Rubyでdocker-composeで立ち上げた時もHMRを動くようにするメモ📝

Vite Rubyを使っていたDockerで立ち上げた環境でHMRをしようと思いvite.config.tsでserver.hostをtrueにしてみたが、なぜかhostが変わらずハマったので解決方法をメモ📝server.host サーバーがリッスンすべき IP アドレスを指定します。 0.0.0.0 もしくは true に設定すると、LAN...

View Article

Ruby v3.3.3でnet-pop-0.1.2のinstallに失敗する際の対処法メモ📝

ruby v3.3.3でbundle install時に以下のエラーが発生した。 Downloading net-pop-0.1.2 revealed dependencies not in the API or the lockfile (net-protocol (>= 0)). Running `bundle update net-pop` should fix the...

View Article


🚃Rails newで生成される本番用Dockerfileを読んでみる🐳

以下の通り、Rails v7.1 から新規アプリケーション生成時にDockerfileが生成されるようになりました。2.1 新規RailsアプリケーションでDockerfileが生成されるようになった 新規Railsアプリケーションでは、デフォルトでDockerがサポートされるようになりました(#46762)。...

View Article

Ruby: RSSのパースが`This is not well formed XML\nentity expansion has grown too...

結論「REXML::Security.entity_expansion_text_limitに任意の値を設定する。」結論としては上記の通りなのですが、個人で運営しているサービスで、Ruby標準ライブラリのRSSによるパース時にThis is not well formed XML\nentity expansion has grown too...

View Article


Ruby on Rails: 本番イメージが起動することをGitHub Actionで確認するメモ📝

本番環境をDockerイメージを使ってデプロイするときに思わぬ変更で本番環境のRailsアプリケーションが起動できないことがあります。それを事前に検知できたら便利ということで最低限Railsのサーバーが立ち上がりヘルスチェックのエンドポイントが正常なレスポンスを返すことを確認するGitHub Actionを作ったのでメモ📝name: Docker build health check...

View Article

VS Code Dev Containerでで使用するDockerImgaeのRubyバージョンを`.ruby-version`で管理するメモ

ローカル開発環境でrbenv等を使っていると.ruby-versionで自動的にバージョンを判断してくれて便利ですが、VS Code Devcontainerで独自のDockerfileを採用している際に.ruby-versionを元にDockerfileのFROMで指定するイメージをコントロールする方法にちょっと迷って、色々試して一旦落ち着いたのでメモ📝基本方針VS Code Dev...

View Article


Ruby on Rails: strict CSPを採用して管理するようにするメモ📝

CSPの設定を以下のStrict...

View Article

PrimaryのDatabaseでSolidCacheを使うメモ📝

Herokuでホストしている個人サービスのcache storeをSolidCacheに移行したときに軽くハマったのでメモ📝github.com基本、既存のRailsアプリケーションをSolidCacheに乗り換えるときには普通にインストールしてbin/rails solid_cache:installを実行して設定ファイルを作成してconfig.cache_store =...

View Article

Ruby on Rails: `allow_browser`を使ってサポート外のブラウザからの利用を拒否する

以下の通りRails v7.2からブラウザのバージョン指定で利用をブロックできるallow_browserが追加されました。今回は個人のサービスで設定してみたのでメモ📝2.2 Add browser version guard by default Rails now adds the ability to specify the browser versions that will be...

View Article
Browsing all 42 articles
Browse latest View live