Wakarana v26.04-1を公開しました
公開日時: 2026-04-06 23:59:27更新日時: 2026-04-07 00:11:58本日(2026.4.6)、Midari Createでは、オープンソースのwebアプリケーション組み込み向けログイン認証・ユーザー管理ライブラリ「Wakarana」のバージョン26.04-1を公開しました。この更新での主な変更点は以下の通りです。
トランザクションの導入
Wakaranaのデータベース書き込み処理は、内部的に複数の関数にまたがって処理が行われており、トランザクションを導入するとトランザクションがネストした際の処理が煩雑となることや、トランザクションを導入しない状態でも実用上問題ない程度の安定性が確認できていたことから、v25.11-1までトランザクションを使用しない設計としていました。しかしながら、v26.04-1では、より高頻度でのデータベースアクセスが行われる環境への本ライブラリ導入を見据えて、データベース書き込みを伴う関数でのトランザクション使用を決定。
トランザクションがネストする状況を柔軟に処理するため、トランザクションの開始、完了、ロールバックの処理をそれぞれ関数化することで、既存コードの変更を最小限に抑えつつトランザクションの導入を実現しました。
wakaranaクラスの一部関数名をその用途がわかりやすいようなものへと変更
既存の関数のうち、wakarana::add_user、wakarana::add_role、wakarana::add_permisson、wakarana::add_permitted_valueの4つについては、ユーザーやロールを「新規作成する」という実態に見合ったものでなかったことから、wakarana::create_user、wakarana::create_role、wakarana::create_permisson、wakarana::create_permitted_valueにそれぞれリネームを行いました。なお、エイリアスの設定を行っているため、古い関数名も非推奨ながら今後1年程度の間は使用可能です。
メールドメインブラックリストの編集用関数を拡充
wakarana_configクラスのメールドメインブラックリスト編集用関数を充実させたことで、ブラックリストへの別のメールドメインリストのマージや、ブラックリストの一括削除が可能となりました。また、ブラックリストへのメールドメイン追加時には、追加しようとしている文字列がメールドメインとして使用可能なものであるかどうかを検証する処理を導入しています。
wakarana_user::create_email_address_verification_codeでは引数の指定によりメールアドレス登録数上限を無視できるように
v25.11-1時点でのwakarana_user::create_email_address_verification_codeでは、既にメールアドレス登録数が1ユーザーあたりの上限値に達しているユーザーアカウントでメールアドレス認証コードを発行しようとすると、メールアドレスの登録件数が上限に達している旨のエラーが発生し、認証コードが発行できない仕様となっていました。一方で、この仕様ではエンドユーザーに1件のみのメールアドレス登録を認め、かつ、そのメールアドレスの変更を可能とするような環境での使用において不都合があったことから、v26.04-1では、wakarana_user::create_email_address_verification_codeの引数に、メールアドレス登録可能数の上限を確認しないようにするオプションを設定可能としています。
関数マニュアルの充実
これまで、Midari Createにて公開している関数マニュアルは、ライブラリ本体の更新の際の更新作業に労力を要したことから、全関数を1ページに記載することで更新作業の簡素化を図ってきました。しかしながら、このマニュアルは目次にあたる部分がないこともあって実用性に乏しいという問題が存在していたため、Midari Createでは、ライブラリ本体をv26.04-1に更新するタイミングに合わせて、このマニュアルを刷新。
今後は、クラスごとに独立したページが設けられ、各ページの冒頭に目次も存在する実用的な関数マニュアルをご利用いただけます。
また、この新しいマニュアルの導入にあわせ、その作成作業を効率化するためにインハウスツールを作成。
このツールはWakaranaのFossilリポジトリに存在する関数仕様書からGUIを使用した明快な操作でHTML形式のマニュアルを自動生成することができるため、今後のWakaranaバージョンアップの際にも素早いマニュアルの更新が可能となっています。
なお、このインハウスツール自体もWakaranaのFossilリポジトリにて公開しています。
この記事のタグ:
Wakarana
Wakarana