Skip to content

Rename Project -> Session across code, resources, and locales#591

Merged
Hirogen merged 5 commits into
Developmentfrom
rename-project-to-session
May 28, 2026
Merged

Rename Project -> Session across code, resources, and locales#591
Hirogen merged 5 commits into
Developmentfrom
rename-project-to-session

Conversation

@Hirogen
Copy link
Copy Markdown
Collaborator

@Hirogen Hirogen commented May 28, 2026

Aligns code and resource names with the canonical terminology: .lxj = Session (persisted workspace) and .lxp = Session File (per-file state). The code and resource keys still used the legacy "Project" wording.

Renamed:

  • Types: ProjectFileHandler/IProjectFileHandler -> SessionHandler/ ISessionHandler, ProjectData -> SessionData, ProjectPersister -> SessionPersister, ProjectLoadOutcome/Result/ValidationResult/ DlgResult -> Session*, ProjectFileResolver/Validator -> SessionFile*, ProjectLoadDlg -> SessionLoadDlg
  • Methods: LoadProject/SaveProject -> LoadSession/SaveSession, LoadProjectData -> LoadSessionData, ResolveProjectFiles -> ResolveSessionFiles, ValidateProject -> ValidateSession, OnLoadProjectToolStripMenuItemClick -> OnLoadSessionTool...
  • Properties/fields: ProjectFilePath -> SessionFilePath, _projectFileHandler -> _sessionHandler, _projectFileCallback -> _loadSessionCallback
  • Resource keys: LoadProject_UI_* -> LoadSession_UI_*, LogTabWindow_UI_Project_Session_Default_Filter -> LogTabWindow_UI_Session_Default_Filter, loadProjectToolStripMenuItem -> loadSessionToolStripMenuItem
  • Resource values updated in en/de/zh-CN: "Project Load Failed" / "Error loading project file" replaced; merged with existing SessionLoadFailed key (was a near-duplicate)

Backward compatibility:

  • Existing .lxj files on disk continue to load: SessionData has [JsonProperty("ProjectFilePath")] pinning the JSON key, and the field is also re-set from the file path on load so even files without this key resolve correctly.
  • Behavior unchanged - no runtime semantics affected.

BRUNER Patrick and others added 5 commits May 28, 2026 17:59
Aligns code and resource names with the canonical terminology: .lxj =
Session (persisted workspace) and .lxp = Session File (per-file state).
The code and resource keys still used the legacy "Project" wording.

Renamed:
- Types: ProjectFileHandler/IProjectFileHandler -> SessionHandler/
  ISessionHandler, ProjectData -> SessionData, ProjectPersister ->
  SessionPersister, ProjectLoadOutcome/Result/ValidationResult/
  DlgResult -> Session*, ProjectFileResolver/Validator -> SessionFile*,
  ProjectLoadDlg -> SessionLoadDlg
- Methods: LoadProject/SaveProject -> LoadSession/SaveSession,
  LoadProjectData -> LoadSessionData, ResolveProjectFiles ->
  ResolveSessionFiles, ValidateProject -> ValidateSession,
  OnLoadProjectToolStripMenuItemClick -> OnLoadSessionTool...
- Properties/fields: ProjectFilePath -> SessionFilePath,
  _projectFileHandler -> _sessionHandler, _projectFileCallback ->
  _loadSessionCallback
- Resource keys: LoadProject_UI_* -> LoadSession_UI_*,
  LogTabWindow_UI_Project_Session_Default_Filter ->
  LogTabWindow_UI_Session_Default_Filter, loadProjectToolStripMenuItem
  -> loadSessionToolStripMenuItem
- Resource values updated in en/de/zh-CN: "Project Load Failed" /
  "Error loading project file" replaced; merged with existing
  SessionLoadFailed key (was a near-duplicate)

Backward compatibility:
- Existing .lxj files on disk continue to load: SessionData has
  [JsonProperty("ProjectFilePath")] pinning the JSON key, and the
  field is also re-set from the file path on load so even files
  without this key resolve correctly.
- Behavior unchanged - no runtime semantics affected.
The edge case A fix in FileOperationService.AddMultiFileTab came in via
the Development merge after PR2's sed pass had already run, so it kept
the old field name. Renamed to match _loadSessionCallback.
@Hirogen Hirogen merged commit 277197c into Development May 28, 2026
1 check passed
@Hirogen Hirogen deleted the rename-project-to-session branch May 28, 2026 20:02
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