Skip to content

Phase 9.2.0

Latest

Choose a tag to compare

@ponapalt ponapalt released this 22 Oct 19:29
· 4 commits to master since this release

Phase 9.2.0 (Core 4.2.0)

主な変更

エラー・警告の整理

  • すべてのエラーと警告に、コード (K-E0028 など) と位置 (辞書ファイルと行)、呼び出し連鎖を付け、書式を 1 つにしました。loglevel で有効にしていない種別は何も出さず、辞書の意味も変わりません

kosui --check (検査モード)

  • 辞書を安全モード (ファイルを書かず、SAORI の実体を読み込まず、本体と通信しない) で読み込み、出た診断を報告して終了します。--format json や --werror、--eval に対応し、終了コードで結果が分かります。=kis は実際に実行します

静的検査 (Lint)

  • 辞書の全単語と =kis を、実行せずに調べて警告します (--no-lint で止められます): どこにも定義されていないエントリの参照 (K-W2001)、存在しないコマンド名 (K-W2002)、regex_* の引数の引用符のない ( ) (K-W2003)、regex_replace の置換文字列の引用符のない ${N} (K-W2004)
  • 手元の華和梨ゴースト 129 個で試したところ、警告の多くは本物の書き間違いでした。偽陽性は # lint:disable-next-line=K-W2001 で次の行だけ抑制できます

2038 年問題 (date / mktime)

  • date と mktime が 64 ビットの通算秒数で動き、2038 年以降も扱えます。ただし式 ($[ ]) の整数は 32 ビットのままなので、2038 年以降の通算秒数どうしの計算はまだ正しく動きません。Windows 版は C ランタイムの限界で、1970 年より前と 3000 年末あたりより後は変換できません

🌹 Polished by Claudia