Skip to content

Rename stale IRC string resources left over from IRC module removal

Historical reference only: stale-v0.72a-experimental-clean and analysis\stale-v0.72a-experimental-clean are retired reference sources, not active branch targets or current baselines. Use them only as provenance or idea-extraction sources; landed status is determined against main. See Historical References.

Summary

Current main still ships the full IRC implementation (IrcMain.cpp, IrcWnd.cpp, PPgIRC.cpp, related resources, and the IRC preferences page). IRC is now a frozen surface under FROZEN-SURFACES: it receives no support, no new tests, and no release-gated evidence. Do not implement this as a standalone polish pass. Prefer full deletion through REF-025.

If REF-025 later removes IRC entirely, this item becomes Wont-Fix by deletion.

The resource-name cleanup would target the following IRC-branded leftovers:

Resource ID Current label Suggested replacement
IDS_IRC_CONNECT IDS_CHAT_CONNECT or similar generic label
IDS_IRC_DISCONNECT IDS_CHAT_DISCONNECT
IDS_IRC_PERFORM IDS_CHAT_PERFORM
IDS_IRC_ADDTOFRIENDLIST IDS_CHAT_ADDTOFRIENDLIST

These confuse anyone reading the resource file since there is no IRC module, and they would show up as false positives in any "find IRC references" sweep.

Fix

  1. Rename the 4 resource IDs in srchybrid/Resource.h and srchybrid/emule.rc.
  2. Update all call sites that reference the old IDs (ChatWnd, ChatSelector, etc.).
  3. Verify no remaining IDS_IRC_* names exist in the codebase.

Files

  • srchybrid/Resource.h
  • srchybrid/emule.rc
  • srchybrid/ChatWnd.cpp / srchybrid/ChatWnd.h (likely consumers)

Experimental Branch Decision

In stale-v0.72a-experimental-clean: The IRC implementation (IrcMain, IrcWnd, IrcSocket, IrcChannelListCtrl, IrcChannelTabCtrl, IrcNickListCtrl, PPgIRC, ~8 files) was fully removed in commits a639213 (WIP: remove IRC implementation and UI wiring) and b981984 (WIP: remove IRC preferences and resources). All IDS_IRC_* resources were deleted from emule.rc and Resource.h — the ~66 IRC resource strings visible in main are gone. The 4 kept strings (for ChatSelector compatibility) were re-evaluated and also removed.

Impact: If the full IRC removal is ported to main, REF-003 becomes Wont-Fix by deletion. Renaming IRC strings without removing IRC is no longer a supported direction because IRC is frozen. Main currently has IrcMain.cpp, IrcWnd.cpp, PPgIRC.cpp, etc. — the IRC implementation is fully present.

Porting note: Full IRC removal is a substantial but contained change. There is no partial-done state in main — the supported cleanup path is full removal, not resource rename maintenance.