Skip to content

TSingletonをTSakuraSingletonに移行する - #2542

Merged
berryzplus merged 22 commits into
sakura-editor:masterfrom
berryzplus:feature/improve_tsingleton
Jul 20, 2026
Merged

TSingletonをTSakuraSingletonに移行する#2542
berryzplus merged 22 commits into
sakura-editor:masterfrom
berryzplus:feature/improve_tsingleton

Conversation

@berryzplus

@berryzplus berryzplus commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

PR対象

  • アプリ(サクラエディタ本体)
  • テストコード

カテゴリ

  • 改善

PR の背景

仕様・動作説明

  • 移行が必要な4クラスとCEditAppをTSakuraSingletonに移行して、インスタンスをリセットできるようにします。
  • 共有メモリ依存オブジェクトの基底クラス env::ShareDataClient を導入し、要注意クラスを識別しやすくします。
  • 各修正ファイルで検出された大量のSonarQube指摘に対応して、保守性を微妙に改善します。

本件、勝手にやります。

PR の影響範囲

テスト内容

関連 issue, PR

参考資料

GetDllShareDataを前方宣言しているものを一括修正。
残りのクラス(CPPAとWindpw以外)に一括適用する。
CPPAのテストでenv::ShareDataClient派生クラスをstatic変数に持っていたので、別枠で適用する。
(インスタンス化する直前までに共有メモリの初期化が完了していないといけないので、そのままだとテストを起動できなくなる。)
nodiscardは要らない。
生成・破棄でスレッド間競合が起きないようmtx導入。
本当は削ってしまうほうがよいのだけど、一旦 #if ~ #endif で無効化する
@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown

Test Results

1 139 tests  ±0   1 139 ✅ ±0   3m 29s ⏱️ -22s
  107 suites ±0       0 💤 ±0 
    1 files   ±0       0 ❌ ±0 

Results for commit 41da57b. ± Comparison against base commit 7582c76.

♻️ This comment has been updated with latest results.

@berryzplus

Copy link
Copy Markdown
Contributor Author

MinGWビルドがこうなったので対応が必要。
image

@berryzplus
berryzplus marked this pull request as ready for review July 20, 2026 12:21
@berryzplus
berryzplus merged commit fe34a2c into sakura-editor:master Jul 20, 2026
17 checks passed
@berryzplus
berryzplus deleted the feature/improve_tsingleton branch July 20, 2026 12:21
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant