Rarity

Rarity

18M Downloads

New profiles aren't setting defaults for the LibSink output channels

rdw-software opened this issue · 1 comments

commented

Affects both retail and classic. Looks like there's no default sink being set. Presumably, some API changed and I missed it:

Image

I suppose this explains why people keep asking about output channels on Discord...

Should be fixed ASAP to make sure announcements work as intended for new and returning users.

commented

Rarity never did set any default options. LibSink changed its fallback when Blizzard revamped the combat log. Basically this:

❯ svn log -r '{2022-06-01}:{2022-11-16}'
------------------------------------------------------------------------
r143 | funkehdude | 2022-06-01 06:19:18 +0200 (Wed, 01 Jun 2022) | 1 line

bump toc
------------------------------------------------------------------------
r144 | funkehdude | 2022-09-06 00:19:21 +0200 (Tue, 06 Sep 2022) | 1 line

bump toc
------------------------------------------------------------------------
r145 | funkehdude | 2022-09-06 00:20:12 +0200 (Tue, 06 Sep 2022) | 1 line

Add Wrath toc
------------------------------------------------------------------------
r147 | funkehdude | 2022-10-26 02:43:01 +0200 (Wed, 26 Oct 2022) | 1 line

bump toc
------------------------------------------------------------------------
r149 | funkehdude | 2022-11-07 08:04:19 +0100 (Mon, 07 Nov 2022) | 1 line

Change how we deal with Blizzard's FCT. It's now always available as an option, and force loaded if selected.
------------------------------------------------------------------------
r151 | funkehdude | 2022-11-14 16:23:54 +0100 (Mon, 14 Nov 2022) | 1 line

bump toc
------------------------------------------------------------------------

The magic global SHOW_COMBAT_TEXT was replaced with CVar enableFloatingCombatText in 10.0.0, as reported in #530.
See Interface/AddOns/Blizzard_CombatText/Blizzard_CombatText.lua. Subsequently, LibSink altered the code here

local currentHandler = nil
local function getPrioritizedSink()
	if currentHandler then
		local check = customHandlersEnabled[currentHandler]
		if check and check() then
			return sink.handlers[currentHandler]
		end
	end
	for i, v in next, handlerPriority do
		local check = customHandlersEnabled[v]
		if check and check() then
			currentHandler = v
			return sink.handlers[v]
		end
	end
	if SHOW_COMBAT_TEXT and tostring(SHOW_COMBAT_TEXT) ~= "0" then
		return blizzard
	end
	return chat
end

to the current version (note the removal of chat as a fallthrough option):

local currentHandler = nil
local function getPrioritizedSink()
	if currentHandler then
		local check = customHandlersEnabled[currentHandler]
		if check and check() then
			return sink.handlers[currentHandler]
		end
	end
	for i = 1, #handlerPriority do
		local handler = handlerPriority[i]
		local check = customHandlersEnabled[handler]
		if check and check() then
			currentHandler = handler
			return sink.handlers[handler]
		end
	end
	return blizzard
end

Slightly curious that it only happens when FCT is disabled. The people reporting it on Discord may have been using MSBT or another addon that disables the default floating combat text. First Rarity release to ship it was r718-release, on Nov 16, 2022.