Categories

Latest comments

Ruby on Railsのサポート終了日(各バージョンのEOL)

wakairo @wakairo
Last edited

railsの各バージョンについて、セキュリティアップデートが行われる期限(End-of-Life)は以下の通りです。

  • 8.0.x - 2026/11/07
  • 7.2.x - 2026/08/09
  • 7.1.x - 2025/10/01
  • 7.0.x - 2025/04/01

6.1.xは、以下の通りサポートが終了しています。

  • 6.1.x - 2024/10/1

なお、railsのサポート期間に関するより詳細な情報については本家のメンテナンス・ポリシーを参照してください。

0
Raw
https://www.techtips.page/en/comments/309
🔧4
😄3
❤️2

OpenAI(ChatGPT)のAPIで、意図したJSON形式の出力を確実に得るための設定

wakairo @wakairo

2024年8月に「Structured Outputs」の機能と設定がOpenAI(ChatGPT)のAPIに導入されました。 この設定を有効にすることで、スキーマで指定したJSON形式の出力を、例外的な場合を除いて、確実に得ることが出来ます。

詳細は以下の記事を参照してください。

0
Raw
https://www.techtips.page/en/comments/308
💡1
💯1
❤️1

「ソフトウェアの道具箱」はUNIXの考え方の1つを簡潔に説明している

kenicode SatoKen @kenicode
Last edited

この「ソフトウェアの道具箱」は、Linux等へも引き継がれ現在でも大いに活用できるUNIXの考え方を、簡潔に紹介してくれていると思います。

この考え方の要約をこの文書から引用すると以下のようになります。

  1. 個々のプログラムは、一つの仕事をきちんとやってのければよい。それ以上でもそれ以下でもない。
  2. プログラムを適切な配管工事で組み合わせると、全体が部分の総和以上になる結果が生じる。 作者が想像もしなかったようなプログラムの新しい使用法が見つかることもある。
  3. プログラムは決して余計なヘッダや追加情報を出力すべきではない。 そうしたものもパイプラインの先へ送られてしまうかもしれないからだ。
  4. 骨の折れる部分は、他の奴にやらせろ。
  5. 自分の道具箱をよく知れ! 個々のプログラムを適切に使え。適切なツールがなかったら、それを作れ。

UNIX系のOSを使うとき、特にパイプを使ってコマンドを組み立てるときに知っていると良い知識であると同時に、UNIX系のOSで動くプログラムを作るときにも、パイプを使って他のコマンド(プログラム)と連携できるようにすることが時に強力な選択肢であることは頭に入れておくと良いと思います。

何しろ短い文章ですので、初めてこの考えに触れるときや、この考えを再確認したいときに、サクッと自分で読んだり、他人に紹介できたり、便利な文章だと思います。

0
Raw
https://www.techtips.page/en/comments/307
🙋1
🔧1
❤️1

meta-tags側のtruncateでは、スペース文字のところで切り詰めが行われます

wakairo @wakairo
Last edited

meta-tagsのv2.21.0で'truncate_on_natural_separator'の設定が追加されました。この設定を利用することで、スペース文字のところでの切り詰めを回避できるようになりました。このことを上のコメントに反映しました。

0
Raw
https://www.techtips.page/en/comments/306
😄1
🔄1
🔧1

WingetUIはv3.1からUniGetUIに名称が変更されました

wakairo @wakairo

winget以外のパッケージ・マネジャーも多数サポートするようになってきたため、WingetUIをUniGetUIにちかぢか名称変更しますというアナウンスメントが2024/03/13に出ていました。

2024/07/03にバージョン3.1がリリースされ、リリース名が初めてUniGetUIになりましたので、名称変更が完了したものと思われます。

なお、バージョン3.0のリリースではWingetUIという名称でした。

0
Raw
https://www.techtips.page/en/comments/305
🔧1
💯1

activerecordでは、firstを使った方が実装とSQLが揃って可読性が上がる

takuma_tech Takuma @takuma_tech

こちらの記事によると、activerecordでlastを使った場合、指定したorderを逆にして"LIMIT 1"とするSQLが発行されるそうです。

一方で、firstを使った場合、指定したorderはそのままで"LIMIT 1"とするSQLとなるので、railsのコードとSQLの対応関係が分かりやすくなります。

したがって、lastよりもfirstを使った方が実装とSQLが揃って可読性が上がるということがこの記事で主張されていました。 ご参考まで。

0
Raw
https://www.techtips.page/en/comments/304
🔧1
💡1
❤️1

WingetUIにおいてVCRedistのアップデート通知が繰り返される問題とその解決策

wakairo @wakairo

問題

WingetUIにおいて、Visual C++ 再頒布可能パッケージ(Microsoft.VCRedist.2015+.x64)がアップデート可能であると通知されるので、WingetUIからアップデート操作をして成功と表示されたにもかかわらず、すぐにまたアップデートが可能であると通知されることが繰り返されました。

どうやら、アップデート成功という表示は嘘のようで、実際にはWingetUIからこのVCRedistのアップデートには成功していなかった模様です。

解決策

コマンドプロンプトから以下のコマンドを実行したところ、アップデート通知が繰り返されることはなくなりました。

winget upgrade Microsoft.VCRedist.2015+.x64

つまり、WingetUIからアップデートが上手く行かないときは直接wingetでアップデートすると問題が解決することがあるようです。

参考

本件と関係するかは分かりませんが、以前のコメントにあるように、かつてWingetUIのインストールにおいて"Microsoft.VCRedist.2015+.x64"に関連するエラーが存在していました。

0
Raw
https://www.techtips.page/en/comments/303
😄1
🔄1
😿1

LLMからJSON形式の出力を安定的に得るノウハウ

wakairo @wakairo

Zodスキーマでプロンプト生成を行い構造化データを自由自在に扱えて、LLMプロダクト開発が圧倒的に効率化した話

「TypeScriptをデータ出力例として与えると、かなり忠実に従ってくれるようになる」などのノウハウが示されている。

0
Raw
https://www.techtips.page/en/comments/302
💡1

LLMからJSON形式の出力を安定的に得るノウハウ

wakairo @wakairo
Last edited

ChatGPT(OpenAI)のAPIにはスキーマで指定したJSON形式の出力を確実に得るための機能であるStructured Outputsがありますが、他のLLMではJSONのためのこういった機能や設定がない場合もあるようです。

このTopicでは、LLMから安定したJSONを得るためのノウハウやLLMの出力したJSONが問題ないかチェックするためのノウハウを扱います。

0
Raw
https://www.techtips.page/en/comments/301
❤️1

Pythonライブラリの作成に関する公式情報

kenicode SatoKen @kenicode

pyproject.toml[build-system]の指定が、サンプルプロジェクトではsetuptoolsである一方、チュートリアルではデフォルト扱いがhatchlingになっていて、両者で違いがあって興味深いですね。 公式(PyPA)としては、setuptoolsがまだまだ現役であることを認めつつ、今後はhatchlingを推していきたいということなのかな?

0
Raw
https://www.techtips.page/en/comments/300