:
poetryで管理しているPythonパッケージのバージョンを一つの場所だけで定義する

問題 pyproject.tomlの[tool.poetry]でのversion、 __init__.pyでの__version__、 FastAPIのversionひいてはOpenAPIでのバージョン定義をそれぞれ別に行いたくない。 別々に書き換えるのは面倒だし、絶対に書き換え忘れのミスが生まれる。 一つの場所だけで定義して、それをみんなが参照するようにしたい。 解決法 How to get version from pyproject.toml from python app? · Issue #

Conventional Commitsに移行して、commitlintをグローバルに適用しました

自己流コミットメッセージをやめることにしました 今までの自己流コミットメッセージをやめることにしました。 これまでの自己流コミットメッセージは以下の記事で解説しています。 Gitのコミットメッセージでめっちゃタイプミスをするのでそろそろタイプミスを検出するhooksを書きました - ncaq 自己流コミットメッセージの確認スクリプトの最終版はこれで、 initなどへの対処を少し行っているのですかね。 commit-message-in-style at b216fa1ccd860308c60b6d6949

react-reduxをv5からv8にアップデートした

react-reduxの破壊的変更まとめメモ。 文脈として、 2019年9月にやろうとして破壊的変更があって後回しとしていて、そのまま自分がプロジェクト離れてたから今の今まで後回しとなっていた。 Reduxの開発者ツール周りの整備をするにしても、まずここまで古いバージョンを使ってたら問題が発生しても、問題の箇所の切り分けが困難だろうという判断の元、アップデートを行うことにした。 破壊的変更まとめ メジャーバージョンアップ以外で破壊的変更は行われてないだろうという楽観的な予測の上、現在v5でv8にする差分の

サイトの記事一覧を年度別に分割しました

この記事を書き始めた現状はこのサイトの全てのentry記事はトップページに全部並んでいます。 500記事ぐらいあるのにサイズやパフォーマンスは大丈夫かというと意外と大丈夫です。サイズ的にはテキストだけなので520KBしかありません。パフォーマンスもシンプルなCSSだけを使って特別なルールは設定していないのでそんなに重くありません。 しかし複数の理由からentryを分割したいと思うようになりました。 だいたい年単位ぐらいで分割したい。 Google検索が無駄にトップページを表示することが多い トップページに

serversessionのアップデートで新しいpersistentに対応した時の格闘記録2

serversessionのアップデートで新しいpersistentに対応した時の格闘記録 - ncaq の続き。 この形式はZennとかでよく見るスクラップだなと気がついたので、次からはタイトルはスクラップとかにしたいですね。ここはZennではありませんが。 相も変わらず、 yesodweb/serversession: Secure, modular server-side sessions. の新しいLTS対応を行っていて、そこで障害になるpersistentのアップデートと戦っています。 今回のステ

WriterでもControl.Monad.Trans.Writer.CPSは典型的なスペースリークはしない

Writerを使いたいけどスペースリークが怖い Writerを使ってはならない - Qiita に書かれているように、 HaskellのWriterは長年スペースリークの元になるので敬遠されてきました。 しかし、私はWriterのインターフェイスをとても使いたいのでもやもやしていました。 ReaderT パターン(翻訳) - LugendrePublic ではスペースリークの危険性があってもWriter使った方が早かったから使ってると書いてありましたが、それでもスペースリークの危険性を考えながら書くのはな

PowerShellで改行せずにファイルに追記する方法

前提 GitHub ActionsでWindowsのPowerShellを使う必要がありました。まあWindows向けのrunでもbashを指定できるみたいなんですが、せっかくあんまりCIで触らないWindowsなのでネイティブシェルであるPowerShellを使ってPowerShellに親しみたいという意図がありました。 やりたいこと ファイルに改行せず文字列を追記したい。 Linuxならば echo -n "foo" >> bar.txt のようにecho

serversessionのアップデートで新しいpersistentに対応した時の格闘記録

前提 これをやった日は3時間ぐらいしか寝てなくて朦朧としてました。なので相当グダグダやっていて、普段ならすぐに解決できるタイプの問題の解決にも手間取っていました。 やる作業 yesodweb/serversession: Secure, modular server-side sessions. を新しいLTSに対応させる。これも昔私が対応させたのですが、今はLTS 15になっています。 persistentのライブラリ的には2.10.5.2から2.13.3.5へのアップデート。多分。 何故必要か

:
Galaxy Z Fold 3 5Gを今更レビュー

Galaxy S22 UltraとGalaxy Z Fold3 5Gのどっちを買うか悩んでいました - ncaq で悩んだ末に、 Galaxy Z Fold 3 5G を購入しました。 2022年4月12日から使っています。 Galaxy Z Fold3 5G着弾したセットアップするか pic.twitter.com/Np2vYHhnrp — エヌユル (@ncaq) April 12, 2022 日本での発売日が2021年10月なので極めて今更感がありますが、一応レビューを書いておきます。 概要

genkernelで作成したinitramfsがOut Of Memoryで起動しないことへの対処

背景 私は今のラップトップPCでは以下のようなコマンドでinitramfsを作っていました。 alias genkernel-update='sudo genkernel --no-lvm --btrfs --luks --firmware initramfs && grub-update' カーネル直接起動ではなく、 initramfsを使っている理由は、 rootのBtrfsによるソフトウェアRAIDと暗号化を使っていることです。 dracutではなくgenkern

Galaxy S22 UltraとGalaxy Z Fold3 5Gのどっちを買うか悩んでいました

悩み Galaxy S22 Ultra と Galaxy Tab S8 Ultra の組み合わせを買うか、 Galaxy Z Fold3 5G を買うか。 悩んでいます。 S22無印は小さいしメモリ少ないからなしですかね。 S22+なら小さくないのでメモリに目をつぶってありだったんですが、日本では発売しないのでダメ。 Galaxy Tab S8 UltraはGalaxy Tab S8+で良いかもしれません。 Fold買っても結局Tabは買うかもしれません。 前提 MNOとの高額な回線契約はしない。 仮

tidy-html5が5.9バージョンあたりからpreタグの改行を消してしまうので加工した内容を使わないようにする

背景 このサイト、 ncaq/www.ncaq.net: ncaq website はHakyllで構築しています。 そして最終的に出力するHTMLが正しいかどうかを、 htacg/tidy-html5: The granddaddy of HTML tools, with support for modern standards を通すことでチェックして、ついでにHTMLとXML(feed)をインデントしています。 問題 tidy-html5の5.9あたりからは以下のバグが発生しています。 tidy

Firefoxでクオートキーがクイック検索に奪われてしまうことへの対策

日本語記事がないので一応記述しておきます。 問題 いつからのバージョンか知らないですが、 Firefoxでクオートキーを押すと、クイック検索 (リンクのみ) が起動してしまいます。 ページ内検索 | Firefox ヘルプ これは、 Surfingkeys などの拡張機能を使ってクオートで何かしらの操作をしている人にとっては困ることで、拡張機能では上位レベルのキーを奪い取れないようです。 自分は選択したものを検索するのに当てていたので困りました。 解決 ほぼ、 Firefox 63: Disable

:
helmの更新でhelm-agが壊れましたが、helm公式のhelm-grepがripgrep対応していたのでそちらに乗り換えました

問題 emacsorphanage/helm-ag: The silver searcher with helm interface というhelmでgrep串刺し検索を実現するソフトウェアを、 ripgrepを使うように設定して長年使っていたのですが、今日helmを更新したら壊れてしまいました。 ASCIIのエスケープシーケンスをそのまま表示してしまいます。 調査 調査するのにも無理矢理カスタマイズしているし再現が難しいな、まずはhelmのコアの更新を見て何処で壊れてるか見るかと調べたところ以下のi

:
Windows 10とWSL2のセットアップログ

久しぶりにWindowsのセットアップを行いました。 2021-12-08から書き始めていたようです。今更ログを公開します。 もう何度もWindowsのセットアップは行っているので見返したいのと、他の人が詰まってたら助けになるようにセットアップをログに残しておきます。 近々またセットアップすることが予想されますし。何故なら近いうちにDDR5世代のPCを組んでWindows 11を入れたいからです。 いい加減セットアップはスクリプトにするべきなのかもしれませんが、 GUI操作が必要なのがまだまだ多いのと、今回