リリースノート

バージョンごとに、何が変わったか。

1.0 以降のすべての公開リリースと、その変更内容をまとめています。更新の確認はアプリが自動で行うので、ここは何が変わったかを後から確かめる場所です。

v1.0.20最新版

アプリ全体の UX 監査に基づく使い勝手の改善と、SQL 生成の総点検で見つかった実バグ 29件の修正をまとめたリリースです。

改善

  • データ同期タブに、スキーマ差分タブと同じ SQL パネルを追加。テーブルを選ぶそばから同期 SQL が生成され (プレビューボタンとモーダルは廃止)、ドラッグでのリサイズ・スリムバーへの折りたたみ・拡大表示に対応します。
  • プレビューを実行内容と必ず一致させました。実行時の事前チェックでスキップされるテーブル (例: 同期先の文字セットで表現できない値) はプレビュー SQL から除外し、先頭にコメントで一覧表示します。
  • 事前チェックの進捗を表示。型キャスト / NOT NULL / UNIQUE などの実行前チェック中は「チェック中… (N 件完了)」のカウンターが進み、0% のまま止まって見える状態を解消しました。
  • 選択を外したときに、連動して外れた項目の件数をトーストで通知します。
  • 実行が失敗してロールバックした後は自動で再比較し、差分リストを実際の DB の状態に合わせます。
  • 「手動修正が必要」な項目の案内を明確化。確認ダイアログで、SQL をコピーして外部クライアントで直す/対象を除外する (「すべて除外」も可) の両方を提示します。
  • 異種 DB の注意書きを SQL プレビューの下に移動し、SQL が押し下げられないようにしました。
  • 接続マネージャーの各行に接続テスト・編集・削除ボタンを追加。削除やテストのために編集ダイアログを開く必要がなくなりました。
  • 未保存の変更を保護。接続の追加・編集ダイアログを未保存のまま閉じると確認を挟みます。破棄・削除の確認ダイアログが編集ダイアログの背面に隠れる問題も修正しました。
  • エラー状態の接続を直して保存すると、データベース一覧を自動で取得し直します。解除して選び直す操作は不要です。
  • データベース / スキーマの選択にローディング表示を追加。SSH トンネル経由などの遅い接続でも無反応に見えません。
  • バックアップ・リストアの実行中に経過時間を表示。ネイティブの CLI ツールは進捗率を返さないため、長い処理でも動いていることが分かるようにしました。

修正

  • 全 5方言の「地獄スキーマ」検証で検出した SQL 生成の実バグ 29件を根本修正。
  • CASCADE が必要なスキーマ削除を入口でブロック。空でない PostgreSQL / SQL Server のスキーマは「内容ごと削除 (CASCADE)」にチェックするまで削除ボタンが無効になり、確認名を入力してから失敗することがなくなりました。件数の取得に失敗したときに「すでに空」と表示される問題も修正し、その場で再試行できます。
  • 権限が拒否された状態でも権限の再チェックを実行できるように変更。DBA に権限を付与してもらった直後にそのまま確認できます。

v1.0.19

ユーザビリティ監査の結果を反映しはじめた保守リリースです。

改善

  • ユーザビリティ監査に基づく UI の一括改善を反映 (内容は v1.0.20 の項目にまとめています)。
  • Microsoft Store 提出用パッケージの配布経路を整備。

v1.0.18

差分が無音で消える 2つのケースを塞いだ修正リリースです。

修正

  • 同じテーブルの設定変更が同時に起きたとき (コメントと ROW_FORMAT / ENGINE の併発など)、後から来た差分が無音で捨てられる問題を修正。テーブル設定を 1つの項目にまとめて扱うようにしました。
  • 主キー変更に伴う暗黙の外部キーが、同名で実際に差分のある外部キーを握りつぶし、古い定義を作り直して差分が残り続ける問題を修正。

改善

  • テーブルの変更バッジを、コメントのみの変更は「テーブル注釈変更」、他の設定を含む場合は「テーブル設定変更」に出し分け。

v1.0.17

同期 SQL パネルまわりの小改善です。

改善

  • 同期 SQL パネルに開閉トグルとプレビューの拡大モーダルを追加。

修正

  • 変更差分の表示で翻訳が抜けていた 2箇所を修正。

v1.0.16

MySQL / SQL Server の構文網羅監査で見つかった不具合の修正です。

修正

  • MySQL を構文図と突き合わせる監査で見つかった実バグ 5件と、実際には差が無いのに差分が 1件出るケースを修正。
  • SQL Server のテーブル型 (TVP) の IDENTITY(seed, inc) と、空間インデックスの GRIDS 設定を取得できていなかった問題を修正。

v1.0.15

SQLite の DDL 生成の修正です。

修正

  • SQLite で外部キーの参照列を省略した場合に、実行できない DDL を生成していた問題を修正。

v1.0.14

SQLite 同士の比較の取りこぼしを修正しました。

修正

  • SQLite 同士の比較で、主キーの構成要素・ON CONFLICT 句・外部キーの DEFERRABLE 指定の差分を取りこぼしていた問題を修正。

v1.0.13

比較対象の選択にインクリメンタル検索を追加し、差分リストの表示を整えました。

新機能

  • 比較対象を選ぶプルダウンにインクリメンタル検索を追加。

修正

  • 外部キーの「名前だけが違う」差分を差分リストに出さないように変更 (同方言・異種 DB 共通)。
  • SQL プレビューの行背景が枠の背景と食い違う表示崩れを修正。

v1.0.12

全方言に機能網羅テストを導入し、そこで検出された実バグを一括修正した大型リリースです。

修正

  • MySQL / MariaDB・PostgreSQL・SQL Server・SQLite の全方言に機能網羅テストを導入し、検出された未対応をすべて解消 (PostgreSQL 156件・SQL Server 68件・MySQL 265件の失敗をいずれもゼロに)。
  • 差分の並び順が実行のたびに変わる非決定な挙動を修正。
  • テーブルの属性を同時に複数変更したとき、2つ目以降が無言で消える問題を PostgreSQL / SQL Server で修正。
  • 適用できないパーティション差分を検出対象から除外。
  • MySQL / MariaDB のテーブル既定 CHARSET / COLLATION を比較対象にし、列の文字セットを実効値で比較するよう修正。

新機能

  • SQL Server のテーブル型 (TVP) の同期を新規実装。
  • MariaDB の VECTOR インデックス (11.7+)、UNIQUE / 主キーの WITHOUT OVERLAPS (10.5+)、テーブル暗号化設定を同期対象に追加。
  • MySQL の UNIQUE 制約の裏側にあるインデックス属性 (USING HASH / COMMENT / INVISIBLE など) と、トリガーの相対実行順を同期対象に追加。

v1.0.11

SQL Server 同士の比較を総点検したリリースです。

新機能

  • SQL Server の CLR モジュール、ユーザー作成の統計 (CREATE STATISTICS)、順序付きクラスター化列ストアインデックス、IGNORE_DUP_KEY、データベースのコメント、列属性を同期対象に追加。
  • Always Encrypted が設定された列に警告を表示。

修正

  • SQL Server 同士の比較で対応が漏れていた項目を全解消 (バグ級 6件を含む)。

改善

  • pg_dump / psql の推奨バージョン表記を「最新版推奨」に変更。

v1.0.10

PostgreSQL 同士の比較を総点検したリリースです。

修正

  • PostgreSQL 同士の比較で対応が漏れていた 28件を一括修正 (制約のカタログ直読み、PostgreSQL 固有オブジェクト、属性・COMMENT)。
  • 演算子クラスに対応し、PostgreSQL 17 / 18 のバージョン差を吸収。
  • パーティション親から子へ複製されたトリガーを差分から除外。RANGE パーティションのオプション、ICU の照合ルール、5種類のコメントの取りこぼしを修正。
  • データ同期で PostgreSQL の DOMAIN 型の列が誤った型として扱われる問題を、基底型の解決で修正。

新機能

  • 同方言で新しいバージョンから古いバージョンへスキーマ同期を実行しようとした場合に、実行をブロック。

v1.0.9

品質監査の残項目をまとめて処理したリリースです。

修正

  • 依存関係の連鎖の取りこぼし、全列を置き換えたときに制約が消える問題、MySQL 系のエスケープなど、監査の残項目を一括修正。
  • SQLite の AUTOINCREMENT / COLLATE キーワード検索の偽陽性を修正。

v1.0.8

列リネーム検出の精度を上げたリリースです。

修正

  • 列のリネーム検出の誤検出を防止 (外部キーの参照先照合と列順による判定を追加)。文脈から正当と判断できるリネームは引き続き検出します。
  • 全域品質監査で検出したバグを一括修正。

v1.0.7

MySQL 5.7 の互換性修正です。

修正

  • MySQL 5.7 でスキーマの読み取りが全面的に失敗する問題を修正 (srs_id の取得を MySQL 8.0 以降に限定)。

v1.0.6

取りこぼしていた属性を全方言で同期対象に加えたリリースです。

修正

  • 全方言で取りこぼしていた制約・インデックス・列属性 32件を同期対象に追加。

改善

  • 差分リストで長い対象名がはみ出す問題を修正。マウスを重ねると全文を流して読めます。

v1.0.5

行レベルセキュリティの適用順の修正です。

修正

  • PostgreSQL の行レベルセキュリティで、ポリシー作成と有効化の順序が逆になっていた問題を修正 (CREATE POLICY → ENABLE ROW LEVEL SECURITY)。

v1.0.4

PostgreSQL の行レベルセキュリティと NOT VALID 制約に対応したリリースです。

新機能

  • PostgreSQL の行レベルセキュリティ (RLS) の比較・同期に対応 (PostgreSQL 同士の比較限定)。

修正

  • PostgreSQL の NOT VALID 制約 (CHECK / 外部キー) の検証状態の差分検出と同期に対応。

v1.0.3

Linux 版を正式リリースし、対応 OS が macOS・Windows・Linux の 3つになりました。

新機能

  • Linux 版 (deb / rpm / tar.gz) を正式リリース。

修正

  • 体験版で接続を追加するときに SQLite が初期選択されず、ラジオボタンの選択状態も表示されない問題を修正。

v1.0.2

DiffyPick の最初の公開リリースです。macOS と Windows 向けに配布を開始しました。

新機能

  • MySQL / MariaDB / PostgreSQL / SQL Server / SQLite のスキーマ差分と同期。任意の 2つの DB を比較し、差分を確認し、適用するものを cherry-pick して実行できます。
  • 異種 DB 間の比較 (MySQL → PostgreSQL など) と、方言をまたいで構造を移し替える型変換ルール。
  • 安全側に倒した実行: FK 依存順の自動解決、循環参照の検出、実データを使ったプリフライトチェック (型キャスト / NOT NULL / UNIQUE)、重い ALTER の事前警告、文単位の実行と進捗表示、1クリックのバックアップと履歴からの復元。
  • テーブル単位のデータ同期 (置き換え型)。チャンク単位のトランザクションとネイティブバルクロードで実行します。
  • 多段 SSH トンネルと、接続ごとの SSL/TLS クライアント証明書設定。
  • 差分の HTML レポート出力 (単一ファイル)。
  • すべてローカルで完結。テレメトリもクラウド同期もありません。接続情報は AES-256-GCM で暗号化し、その鍵自体を OS のキーストア (Keychain / DPAPI / libsecret) でラップして保存します。
  • 日本語 / 英語の UI (警告文まで完全にローカライズ)。
  • macOS は署名 + notarization 済み。Windows はインストーラー版と Microsoft Store 版を用意。

v1.0.0 と v1.0.1 は配布前の内部ビルドのため公開していません。v1.0.20 より前の項目は、当時のリリースノートではなく開発履歴から要約したものです。

最新版で使う。

macOS・Windows・Linux 対応。SQLite だけなら無料、アカウント登録も不要です。