FrankerFaceZ / FrankerFaceZ

The Twitch Enhancement Suite. Get custom emotes and tons of new features you'll never want to go without.
Other
736 stars 87 forks source link

FFZ fails initialization in chat #1028

Closed BallM4788 closed 3 years ago

BallM4788 commented 3 years ago

Describe the bug FFZ fails to initialize in chat. Occurs on both main page and popout chat. FFZ Control Center can be opened as well as all the setting menus, but log uploading always fails and the upload button remains greyed out until page is reloaded. Occurs in both the browser extension and the userscript.

To Reproduce Go to any page where a chatbox is present (stream, video, clip, popout chat, etc.).

Expected behavior FFZ should initialize in chat successfully, and log uploading should occur successfully.

Screenshots waterfox_2021-04-22_01-33-43

Environment (please complete the following information):

As far as I know, the only ones of these that can interact with webpages are Polly, Redirector, Stylus, uBlock Origin, and Violentmonkey. Neither Stylus nor Redirector are configured to do anything on Twitch, and the only userscript running on Twitch is FrankerFaceZ. Disabling uBlock and Polly made no difference.

FFZ Logs (via FFZ Control Center > Home > Feedback >> Log):

initialization
-------------------------------------------------------------------------------
[0:39:14] info | core: FrankerFaceZ v4.20.91 (build 42d972b9c4cae941c7c7 - commit 66702103ffc12b693fee55743ecb74bc916a6080) (initial https://www.twitch.tv/xqcow)
[0:39:15] info | site: Using: Twilight
[0:39:15] info | site.web_munch: Found and wrapped webpack's loader after 0ms.
[0:39:15] info | settings: Using Provider: LocalStorageProvider
[0:39:15] info | core: Loaded descriptions of 0 modules.
[0:39:15] warn | core: SyntaxError: invalid regular expression flag ÿ Skipping ./chat/index.js
[0:39:15] warn | core: Unable to find module "chat" that wanted "tooltips".
[0:39:15] info | settings: Initialization complete after 104.16000ms -- Values: 18 -- Profiles: 2
[0:39:15] info | site.fine: Installing MutationObserver.
[0:39:15] info | raven: Installed error tracking.
[0:39:15] info | site: Loaded descriptions of 17 modules.
[0:39:15] info | site.switchboard: Found Route and Switch with 12 routes.
[0:39:15] info | site.web_munch: require() grabbed in 537.46000ms.
[0:39:16] info | site.elemental: Installing MutationObserver.
[0:39:16] info | main_menu: Built Tree in 26.04000ms with 129 structure nodes and 192 settings nodes.
[0:39:16] info | experiments: Loaded information on 2 experiments.
[0:39:16] error | core: An error occurred during initialization. Error: cannot find required module chat when enabling site.chat

settings
-------------------------------------------------------------------------------
i18n.debug.capture: false
i18n.format.date: "default"
i18n.format.time: "short"
i18n.format.datetime: "medium"
i18n.debug.transform: null
i18n.locale: "en"
addons.dev.server: false
chat.bits.show: true
layout.display-bits-button: true
metadata.modview.hide-info: false
layout.side-nav.hide-viewers: false
metadata.uptime: 2
metadata.uptime.no-native: true
metadata.viewers: false
metadata.viewers.no-native: false
layout.swap-sidebars: false
layout.portrait: false
layout.portrait-threshold: 1.25
layout.use-portrait: false
chat.width: null
chat.use-width: false
layout.use-chat-fix: false
layout.theatre-navigation: false
layout.minimal-navigation: false
layout.side-nav.show-avatars: true
layout.side-nav.show: 1
layout.side-nav.hide-offline: false
layout.prime-offers: true
layout.discover: true
channel.hide-unfollow: false
channel.round-avatars: true
channel.hide-live-indicator: false
layout.side-nav.rerun-style: 1
layout.side-nav.show-rec-channels: 1
layout.side-nav.show-friends: 1
whispers.show: true
channel.show-celebrations: true
layout.theme.global-font: ""
layout.portrait-invert: false
layout.portrait-min-chat: false
layout.inject-portrait: false
layout.use-portrait-swapped: false
player.theatre.metadata: false
layout.use-portrait-meta: false
layout.use-portrait-meta-top: false
layout.portrait-extra-width: 24
player.theatre.no-whispers: false
layout.portrait-extra-height: 14
theme.can-dark: true
theme.is-dark: false
theme.color.background: ""
theme.color.text: ""
theme.color.accent: ""
theme.color.tooltip.background: ""
theme.color.tooltip.text: ""
theme.color.chat-background: ""
theme.color.chat-text: ""
theme.color.chat-accent: ""
theme.font.size: 13
directory.show-channel-avatars: undefined
directory.hide-live: false
directory.hidden.reveal: false
directory.hidden.style: 2
channel.panel-tips: false
channel.auto-click-chat: false
player.volume-always-shown: false
player.ext-interaction: true
player.hide-mouse: true
player.ext-hide: 0
player.captions.font-size: ""
player.captions.font-family: ""
player.no-autoplay: false
player.home.autoplay: true
player.button.reset: true
player.compressor.enable: true
player.compressor.default: false
player.allow-catchup: true
player.hide-event-bar: false
ffz.show-new-settings: true
channel.extra-links: true
player.theatre.auto-enter: false
channel.hosting.enable: true
metadata.clip-download: true
metadata.player-stats: false

raven
-------------------------------------------------------------------------------
[11:44:29] HTTP | fetch: GET https://api-test.frankerfacez.com/v2/i18n/locales -> 200
[11:44:29] LOG:info | site.elemental: Installing MutationObserver.
[11:44:29] LOG:info | main_menu: Built Tree in 26.04000ms with 129 structure nodes and 192 settings nodes.
[11:44:29] HTTP | fetch: GET https://cdn.frankerfacez.com/script/experiments.json?_=1619069955 -> 200
[11:44:29] HTTP | fetch: GET https://cdn.frankerfacez.com/script/addons.json?_=1619069940 -> 200
[11:44:29] LOG:info | experiments: Loaded information on 2 experiments.
[11:44:29] LOG:error | core: An error occurred during initialization. Error: cannot find required module chat when enabling site.chat
[11:44:29] LOG:info | site.player: Skipping visibility hooks. Picture-in-Picture is not available.
[11:44:29] HTTP | fetch: GET //api.frankerfacez.com/v1/set/global -> 200
[11:44:29] LOG:info | chat.emotes: Loaded emote set #3: Global Emotes (11 emotes)
[11:44:29] LOG:info | chat.emotes: Loaded emote set #4330: : Sten's Cheaty Emotes (3 emotes)
[11:44:29] LOG:info | gql: StreamChat [49ms]
    {"variables":{"login":"xqcow"}}
[11:44:29] LOG:info | gql: BitsConfigContext_Channel [27ms]
    {"variables":{"login":"xqcow"}}
[11:44:29] LOG:info | gql: BitsConfigContext_Global [5ms]
    {}
[11:44:29] LOG:info | gql: Chat_ChannelData [23ms]
    {"variables":{"channelLogin":"xqcow"}}
[11:44:29] LOG:info | gql: Chat_UserData [39ms]
    {}
[11:44:29] LOG:info | gql: UserEmotes [50ms]
    {"variables":{"withOwner":true}}
[11:44:29] LOG:info | gql: ChatRoomState [22ms]
    {"variables":{"login":"xqcow"}}
[11:44:29] LOG:info | gql: SyncedSettingsReadableChatColors [25ms]
    {}
[11:44:29] LOG:info | gql: SyncedSettingsEmoteAnimations [26ms]
    {}
[11:44:29] LOG:info | gql: SyncedSettingsDeletedMessageDisplaySetting [25ms]
    {}
[11:44:29] LOG:info | gql: SyncedSettingsChatPauseSetting [25ms]
    {}
[11:44:29] LOG:info | gql: ChannelPointsGlobalContext [3ms]
    {}
[11:44:29] LOG:info | gql: ChannelPointsContext [87ms]
    {"variables":{"channelLogin":"xqcow","includeGoalTypes":["CREATOR","BOOST"]}}
[11:44:29] LOG:info | gql: ChannelPointsPredictionContext [64ms]
    {"variables":{"channelLogin":"xqcow"}}
[11:44:29] LOG:info | gql: ChannelPollContext_GetViewablePoll [37ms]
    {"variables":{"login":"xqcow"}}
[11:44:29] LOG:info | gql: ChatList_Badges [34ms]
    {"variables":{"channelLogin":"xqcow"}}
[11:44:29] LOG:info | gql: ChatInput [37ms]
    {"variables":{"channelLogin":"xqcow","isEmbedded":false}}
[11:44:29] LOG:info | gql: ChatRestrictions [26ms]
    {"variables":{"channelLogin":"xqcow"}}
[11:44:29] LOG:info | gql: MessageBuffer_Channel [22ms]
    {"variables":{"channelLogin":"xqcow"}}
[11:44:29] LOG:info | gql: BlockedUsers [51ms]
    {}
[11:44:29] LOG:info | gql: ChannelPage_SubscribeButton_User [141ms]
    {"variables":{"login":"xqcow"}}
[11:44:29] LOG:info | gql: Chat_OrbisPresetText [43ms]
    {"variables":{"login":"xqcow"}}
[11:44:29] LOG:info | gql: AcknowledgeUnbanRequestPrompt [20ms]
    {"variables":{"channelLogin":"xqcow"}}
[11:44:29] LOG:info | gql: ChannelEditButton [37ms]
    {}
[11:44:29] LOG:info | gql: ReportMenuItem [39ms]
    {"variables":{"channelLogin":"xqcow"}}
[11:44:29] LOG:info | gql: RadioCurrentlyPlaying [21ms]
    {"variables":{"channelID":"71092938"}}
[11:44:29] LOG:info | gql: LastUnbanRequest [24ms]
    {"variables":{"channelID":"71092938","includeCanRequestUnban":false}}
[11:44:29] LOG:info | gql: ChatRoomBanStatus [19ms]
    {"variables":{"channelID":"71092938","targetUserID":"31615376"}}
[11:44:29] LOG:info | gql: BitsCard_Bits [32ms]
    {}
[11:44:29] LOG:info | gql: ChannelCelebrations_UserSettings [21ms]
    {}
[11:44:29] LOG:info | gql: GetHypeTrainExecution [39ms]
    {"variables":{"userLogin":"xqcow"}}
[11:44:29] LOG:info | gql: UseLive [39ms]
    {"variables":{"channelLogin":"xqcow"}}
[11:44:29] LOG:info | gql: DropsHighlightService_AvailableDrops [30ms]
    {"variables":{"channelID":"71092938"}}
[11:44:29] LOG:info | gql: NewChatterRitual_Channel [45ms]
    {"variables":{"id":"71092938"}}
[11:44:29] LOG:info | settings: Successfully refreshed 0 of 0 profiles from remote URLs.
[11:44:29] LOG:info | gql: SubModal [133ms]
    {"variables":{"giftRecipientLogin":"","withStandardGifting":false,"login":"xqcow"}}
[11:44:29] LOG:info | gql: FollowButton_User [26ms]
    {"variables":{"login":"xqcow"}}
[11:44:29] LOG:info | site.elemental: Stopping MutationObserver.
[11:44:29] LOG:info | gql: EmotePicker_EmotePicker_UserSubscriptionProducts [40ms]
    {"variables":{"channelOwnerID":"71092938"}}
[11:44:29] LOG:info | gql: Chat_ShareBitsBadgeTier_ChannelData [22ms]
    {"variables":{"channelLogin":"xqcow"}}
[11:44:29] LOG:info | gql: Chat_ShareResub_ChannelData [24ms]
    {"variables":{"channelLogin":"xqcow"}}
[11:44:29] LOG:info | gql: ChannelLeaderboards [92ms]
    {"variables":{"channelID":"71092938"}}
[11:44:29] LOG:info | gql: ChannelLeaderboards_LeaderboardEntry [22ms]
    {"variables":{"userID":"138454112"}}
[11:44:29] LOG:info | gql: ChannelLeaderboards_LeaderboardEntry [21ms]
    {"variables":{"userID":"111043293"}}
[11:44:29] LOG:info | gql: ChannelLeaderboards_LeaderboardEntry [22ms]
    {"variables":{"userID":"603868602"}}
[11:44:30] UI | ui.click: button.ScCoreButton-sc-1qn4ixc-0.gqSiKD.tw-button-icon.tw-button-icon--primary.tw-core-button
[11:44:30] UI | ui.click: button.ScInteractableBase-awmohi-0.ScInteractableDefault-awmohi-1.bArsnw.tw-block.tw-full-width.tw-interactable
[11:44:30] UI | ui.click: button.ScCoreButton-sc-1qn4ixc-0.gqSiKD.tw-button-icon.tw-button-icon--secondary.tw-core-button
[11:44:30] UI | ui.click: button.ScCoreButton-sc-1qn4ixc-0.gqSiKD.tw-button-icon.tw-core-button
[11:44:30] UI | ui.click: div.chat-input__buttons-container.tw-flex.tw-justify-content-between.tw-mg-t-1
[11:44:30] UI | ui.click: textarea.ScInputBase-sc-1wz0osy-0.ScTextArea-sc-1ywwys8-0.dTtjBt.tw-border-radius-medium.tw-font-size-6.tw-textarea.tw-textarea--no-resize.focus-visible
[11:44:30] UI | ui.input: textarea.ScInputBase-sc-1wz0osy-0.ScTextArea-sc-1ywwys8-0.dTtjBt.tw-border-radius-medium.tw-font-size-6.tw-textarea.tw-textarea--no-resize.focus-visible
[11:44:30] UI | ui.click: button.tw-align-items-center.tw-align-middle.tw-border-bottom-left-radius-medium.tw-border-bottom-right-radius-medium.tw-border-top-left-radius-medium.tw-border-top-right-radius-medium.tw-button-icon.ffz-core-button.ffz-core-button--border.tw-inline-flex.tw-interactive.tw-justify-content-center.tw-overflow-hidden.tw-relative
[11:44:30] LOG:info | main_menu: Built Tree in 17.54000ms with 129 structure nodes and 192 settings nodes.
[11:44:30] UI | ui.click: span.tw-flex-grow-1
[11:44:30] UI | ui.click: span.tw-flex-grow-1
[11:44:30] UI | ui.click: code
[11:44:30] UI | ui.click: button.tw-button-icon.tw-mg-x-05
[11:44:30] LOG:info | gql: updateUserViewedVideo [33ms]
    {"variables":{"input":{"userID":"31615376","position":25948,"videoID":"41524134381","videoType":"LIVE"}}}
[11:44:30] HTTP | fetch: GET https://static.twitchcdn.net/config/manifest.json?v=1 -> 200
[11:44:30] LOG:info | gql: PersonalSections [120ms]
    {"variables":{"input":{"sectionInputs":["FOLLOWED_SECTION","RECOMMENDED_SECTION","SIMILAR_SECTION"],"recommendationContext":{"platform":"web"},"contextChannelName":"xqcow"},"channelLogin":"xqcow","withChannelUser":true}}
[11:44:30] LOG:info | gql: WithIsStreamLiveQuery [42ms]
    {"variables":{"id":"71092938"}}
[11:44:30] LOG:info | gql: PlaybackAccessToken [47ms]
    {"variables":{"isLive":true,"login":"xqcow","isVod":false,"vodID":"","playerType":"picture-by-picture"}}
[11:44:30] HTTP | fetch: GET https://static.twitchcdn.net/config/manifest.json?v=1 -> 200
[11:44:30] LOG:info | gql: PersonalSections [122ms]
    {"variables":{"input":{"sectionInputs":["FOLLOWED_SECTION","RECOMMENDED_SECTION","SIMILAR_SECTION"],"recommendationContext":{"platform":"web"},"contextChannelName":"xqcow"},"channelLogin":"xqcow","withChannelUser":true}}
[11:44:30] LOG:info | gql: RealtimeStreamTagList [75ms]
    {"variables":{"channelLogin":"xqcow"}}
[11:44:30] LOG:info | gql: WithIsStreamLiveQuery [41ms]
    {"variables":{"id":"71092938"}}
[11:44:30] LOG:info | gql: updateUserViewedVideo [33ms]
    {"variables":{"input":{"userID":"31615376","position":25948,"videoID":"41524134381","videoType":"LIVE"}}}
[11:44:30] HTTP | fetch: GET https://static.twitchcdn.net/config/manifest.json?v=1 -> 200
[11:44:30] LOG:info | gql: PersonalSections [130ms]
    {"variables":{"input":{"sectionInputs":["FOLLOWED_SECTION","RECOMMENDED_SECTION","SIMILAR_SECTION"],"recommendationContext":{"platform":"web"},"contextChannelName":"xqcow"},"channelLogin":"xqcow","withChannelUser":true}}
[11:44:30] LOG:info | gql: WithIsStreamLiveQuery [40ms]
    {"variables":{"id":"71092938"}}
[11:44:31] UI | ui.click: button.ScCoreButton-sc-1qn4ixc-0.gqSiKD.tw-button-icon.tw-core-button
[11:44:31] UI | ui.click: button.ScCoreButton-sc-1qn4ixc-0.gqSiKD.tw-button-icon.tw-core-button
[11:44:31] UI | ui.click: button.ScCoreButton-sc-1qn4ixc-0.gqSiKD.tw-button-icon.tw-button-icon--secondary.tw-core-button
[11:44:31] UI | ui.click: button.ScInteractableBase-awmohi-0.ScInteractableDefault-awmohi-1.bArsnw.tw-block.tw-full-width.tw-interactable
[11:44:31] UI | ui.click: textarea.ScInputBase-sc-1wz0osy-0.ScTextArea-sc-1ywwys8-0.dTtjBt.tw-border-radius-medium.tw-font-size-6.tw-textarea.tw-textarea--no-resize.focus-visible
[11:44:31] UI | ui.input: textarea.ScInputBase-sc-1wz0osy-0.ScTextArea-sc-1ywwys8-0.dTtjBt.tw-border-radius-medium.tw-font-size-6.tw-textarea.tw-textarea--no-resize.focus-visible
[11:44:31] UI | ui.click: button.ScCoreButton-sc-1qn4ixc-0.gqSiKD.tw-button-icon.tw-button-icon--secondary.tw-core-button
[11:44:31] UI | ui.click: textarea.ScInputBase-sc-1wz0osy-0.ScTextArea-sc-1ywwys8-0.dTtjBt.tw-border-radius-medium.tw-font-size-6.tw-textarea.tw-textarea--no-resize.focus-visible
[11:44:31] UI | ui.input: textarea.ScInputBase-sc-1wz0osy-0.ScTextArea-sc-1ywwys8-0.dTtjBt.tw-border-radius-medium.tw-font-size-6.tw-textarea.tw-textarea--no-resize.focus-visible
[11:44:31] UI | ui.click: textarea.ScInputBase-sc-1wz0osy-0.ScTextArea-sc-1ywwys8-0.dTtjBt.tw-border-radius-medium.tw-font-size-6.tw-textarea.tw-textarea--no-resize.focus-visible
[11:44:31] UI | ui.input: textarea.ScInputBase-sc-1wz0osy-0.ScTextArea-sc-1ywwys8-0.dTtjBt.tw-border-radius-medium.tw-font-size-6.tw-textarea.tw-textarea--no-resize.focus-visible
[11:44:31] HTTP | fetch: GET https://static.twitchcdn.net/config/manifest.json?v=1 -> 200
[11:44:31] LOG:info | gql: RealtimeStreamTagList [78ms]
    {"variables":{"channelLogin":"xqcow"}}
[11:44:31] UI | ui.click: button.ScCoreButton-sc-1qn4ixc-0.gqSiKD.tw-button-icon.tw-button-icon--secondary.tw-core-button
[11:44:31] LOG:info | gql: PersonalSections [170ms]
    {"variables":{"input":{"sectionInputs":["FOLLOWED_SECTION","RECOMMENDED_SECTION","SIMILAR_SECTION"],"recommendationContext":{"platform":"web"},"contextChannelName":"xqcow"},"channelLogin":"xqcow","withChannelUser":true}}
[11:44:31] LOG:info | gql: WithIsStreamLiveQuery [41ms]
    {"variables":{"id":"71092938"}}
[11:44:31] UI | ui.click: button.tw-align-items-center.tw-align-middle.tw-border-bottom-left-radius-medium.tw-border-bottom-right-radius-medium.tw-border-top-left-radius-medium.tw-border-top-right-radius-medium.tw-button-icon.ffz-core-button.ffz-core-button--border.tw-inline-flex.tw-interactive.tw-justify-content-center.tw-overflow-hidden.tw-relative
[11:44:31] LOG:info | main_menu: Built Tree in 20.48000ms with 129 structure nodes and 192 settings nodes.

experiments
-------------------------------------------------------------------------------
Unique ID: 44hVfYwc4fNcNhm0CBoTJvfZXxlHSoVI

FFZ | API-Based Link Lookups: true (r:0.3)
Twitch | TWILIGHT_AD_DENSITY_WIDGET: no (r:0, t:channel_id, c:null)
Twitch | channel_points_reward_limits_v2: control (r:0, t:channel_id, c:null)
Twitch | community_insights: control (r:0.01, t:channel_id, c:null)
Twitch | creator_stats_helper: control (r:0.05, t:channel_id, c:null)
Twitch | eu_direct_debit: t2 (r:0.1, t:user_id)
Twitch | vx_vert: variant3 (r:0.15, t:device_id)
Twitch | vxp_signup_cta: top (r:0.25, t:device_id)
Twitch | extensions_installation_optimization: control (r:0.34, t:channel_id, c:null)
Twitch | Devsite_create_apps_form_recaptcha: variant1 (r:0.5, t:user_id)
Twitch | Twilight Player Core NPM Distribution (Public): variant-a (r:0.5, t:device_id)
Twitch | VP09 Web: control (r:0.5, t:device_id)
Twitch | ads_multiplayer_experiment: no_ui (r:0.5, t:user_id)
Twitch | bits_top_nav_explanation : experiment (r:0.5, t:user_id)
Twitch | cf_wp_new_onboarding: control (r:0.5, t:channel_id, c:null)
Twitch | chat_replies: control (r:0.5, t:channel_id, c:null)
Twitch | chat_replies_context_preference: expanded (r:0.5, t:device_id)
Twitch | creator_home_welcome_modal_show_hide: control (r:0.5, t:user_id)
Twitch | expressions_emote_picker_qol: on (r:0.5, t:device_id)
Twitch | offline_embeds_overlay: variant (r:0.5, t:device_id)
Twitch | post_purchase_experience: control (r:0.5, t:user_id)
Twitch | subs_pif: gift_first (r:0.5, t:user_id)
Twitch | twitch_studio_go_live_social_share: control (r:0.5, t:user_id)
Twitch | viewer_badge_collection: on (r:0.5, t:device_id)
Twitch | vxp_lcp_videos: control (r:0.5, t:channel_id, c:null)
Twitch | subscription_modal_variants: control (r:0.7, t:user_id)
Twitch | stream_manager_tutorial: control (r:0.75, t:user_id)
Twitch | vxp_left_nav_hover_logged_in: control (r:0.75, t:user_id)
Twitch | bits_skus_reduction: control (r:0.95, t:user_id)
Twitch | chat_history: control (r:0.95, t:user_id)
Twitch | extension_panel_recommendations: test (r:0.95, t:device_id)
Twitch | gifting_user_notice_standardization: control (r:0.95, t:user_id)
Twitch | resizable_chat_column: control (r:0.95, t:user_id)
Twitch | settings_overlay_indicator: control (r:0.95, t:device_id)
Twitch | stream_manager_new_panels_upsell: variant (r:0.95, t:user_id)
Twitch | vxp_hide_miniplayer: control (r:0.95, t:device_id)
Twitch | liverecs_holdout_device: control (r:0.98, t:device_id)
Twitch | liverecs_holdout_v2: control (r:0.98, t:user_id)
Twitch | TWILIGHT_CAROUSEL_HOLDBACK: control (r:0.99, t:device_id)

addons
-------------------------------------------------------------------------------
Known
brcm | disabled | brcm v1.0.0
deck | disabled | Deck v1.1.2
ffzap-bttv | disabled | FFZ:AP BTTV v3.2.6
ffzap-core | disabled | FFZ:AP Core v3.3.4
ffzap-liriklive | disabled | FFZ:AP LirikLIVE v3.2.2
fs-chat | disabled | fs-chat v1.4.2
ModTools | disabled | Mod Tools v1.0.1
new-account-highlighter | disabled | New Account Highlighter v1.0.4
poll-shim | disabled | poll_shim v0.2.1
pronouns | disabled | pronouns v1.0.2
smokemotes | disabled | smokeys_utils v1.0.6

Modules
loaded   | enabled  | 
loaded   | enabled  | core
loaded   | enabled  | settings
loaded   | enabled  | raven
loaded   | enabled  | experiments
loaded   | enabled  | i18n
loaded   | enabled  | socket
loaded   | enabled  | site.web_munch
loaded   | enabled  | site.fine
loaded   | enabled  | site.elemental
loaded   | enabled  | site.router
loaded   | enabled  | site.apollo
loaded   | enabled  | site.twitch_data
loaded   | enabled  | site.switchboard
loaded   | enabled  | site.subpump
loaded   | enabled  | site
loaded   | enabled  | addons
loaded   | enabled  | vue
loaded   | enabled  | tooltips
loaded   | disabled | chat/actions
loaded   | disabled | chat.badges
loaded   | enabled  | chat.emotes
loaded   | enabled  | main_menu
loaded   | enabled  | metadata
unloaded | disabled | translation_ui
loaded   | enabled  | site.bits_button
loaded   | enabled  | site.bttv_compat
loaded   | enabled  | site.css_tweaks
loaded   | enabled  | site.channel
unloaded | disabled | chat
loaded   | disabled | site.chat.scroller
loaded   | disabled | site.chat.chat_line.rich_content
unloaded | disabled | chat.actions
unloaded | disabled | chat.overrides
loaded   | disabled | site.chat.chat_line
loaded   | disabled | site.chat.settings_menu
unloaded | disabled | chat.emoji
loaded   | disabled | site.chat.emote_menu
loaded   | disabled | site.chat.input
loaded   | disabled | site.chat.viewer_cards
loaded   | disabled | site.chat
loaded   | disabled | site.compat_emote_menu
loaded   | enabled  | site.dashboard
loaded   | enabled  | site.directory.game
loaded   | enabled  | site.directory
loaded   | disabled | site.featured_follow
loaded   | disabled | site.host_button
loaded   | enabled  | site.layout
loaded   | enabled  | site.menu_button
loaded   | enabled  | site.mod-view
loaded   | enabled  | site.player
loaded   | enabled  | site.sub_button
loaded   | enabled  | site.theme
loaded   | disabled | site.video_chat

Additional context I have also tried a hard reset on my FFZ preferences and deleting all Twitch cookies. Neither made a difference.

BallM4788 commented 3 years ago

UPDATE: I've since created a separate, fresh profile in Waterfox Classic with only FFZ installed, and the bug still occurs even in that state. If it helps, this all started several months ago (I want to say early January, but I can't remember exactly); prior to that, everything worked perfectly.

SirStendec commented 3 years ago

FrankerFaceZ targets modern browsers, and at times may utilize HTML, CSS, and/or JavaScript features that have been added to all widely used browsers.

Waterfox Classic is a fork of a very old version of Firefox and, as such, does not necessarily support modern features. Please consider switching to a more recent browser. I know that Waterfox has a non-classic version which is a much more up to date fork of Firefox.

Going into specifics, the error in your logs is

core: SyntaxError: invalid regular expression flag ÿ Skipping ./chat/index.js

This indicates a bug in your browser's JavaScript engine which was also a bug in Firefox. The Firefox issue (https://bugzilla.mozilla.org/show_bug.cgi?id=1452619) was closed in April of 2018.

Again, please consider switching to a different browser. If you have one bug from 2018, what else do you have?

BallM4788 commented 3 years ago

FrankerFaceZ targets modern browsers, and at times may utilize HTML, CSS, and/or JavaScript features that have been added to all widely used browsers.

Waterfox Classic is a fork of a very old version of Firefox and, as such, does not necessarily support modern features. Please consider switching to a more recent browser. I know that Waterfox has a non-classic version which is a much more up to date fork of Firefox.

Going into specifics, the error in your logs is

core: SyntaxError: invalid regular expression flag ÿ Skipping ./chat/index.js

This indicates a bug in your browser's JavaScript engine which was also a bug in Firefox. The Firefox issue (https://bugzilla.mozilla.org/show_bug.cgi?id=1452619) was closed in April of 2018.

Again, please consider switching to a different browser. If you have one bug from 2018, what else do you have?

And again, as I stated in the post just above yours, FFZ was working FINE in this browser up until a few months ago. And no, I hadn't just updated the browser or anything else when it stopped working. I accept that you aren't going to fix it, and I'm not saying there aren't problems with Waterfox, but I am adamant that it was a change on FFZ's end that caused it to stop working. After all, the only thing the extension and userscript do is fetch an external JS file from the FFZ CDN, and if nothing changed on my end when FFZ stopped working for me, then that leaves something that changed on the external script which broke on Waterfox but not on other browsers as the culprit.

BallM4788 commented 3 years ago

@SirStendec just an update: a new waterfox classic update seems to have resolved the problem. Apologies if my previous post came off as hostile. That was not my intent, but I can see now that it could come off as confrontational.

Here is what I was getting in JSFiddle before the update: waterfox_2021-04-23_17-00-53

And here's what I get now: waterfox_2021-04-25_13-19-18

BallM4788 commented 3 years ago

@SirStendec I'm back. To start off: no this isn't a plea for you to reopen the issue (I know you aren't going to), but I would appreciate it if you read this.

Anyway, Waterfox Classic got another update (2021.04.2) that rebroke FFZ. I'm in agreement with you that the problem is not with FFZ. The strange thing is that, in my testing, WF Classic only seems to fail regex when the eval() function is involved (see 1st pic in the previous post), yet eval() doesn't seem to be anywhere in the FFZ source code. I should also note that whitelist and blacklist regex patterns work fine for me in BetterTTV. Are there any background components or dependencies that use eval()? I want to be fairly positive of what's causing FFZ to not load before I open up an issue on the Waterfox github.

I'm also just noticing that I forgot to include a stack trace in my initial post, so here it is:

FFZ [core]: SyntaxError: invalid regular expression flag ÿ
Stack trace:
Emoji@https://cdn.frankerfacez.com/script/avalon.js?_=1619550473222:2:128282
register@https://cdn.frankerfacez.com/script/avalon.js?_=1619550473222:2:35709
inject@https://cdn.frankerfacez.com/script/avalon.js?_=1619550473222:2:34134
Chat@https://cdn.frankerfacez.com/script/avalon.js?_=1619550473222:2:498844
register@https://cdn.frankerfacez.com/script/avalon.js?_=1619550473222:2:35709
populate@https://cdn.frankerfacez.com/script/avalon.js?_=1619550473222:2:36545
 Skipping ./chat/index.js

specifically failing on this.splitter=h()(),, where character 128282 is h. The corresponding line in the source code is here.

SirStendec commented 3 years ago

eval() isn't being used anywhere that I am aware of, though it's not impossible that a dependency could be using it. I do use the RegExp constructor in places, though not at the particular code in that traceback.

Firefox had the same issue, way back, and it was fixed when the issue I linked was closed. That's all I can really say about it. I don't have perfect memory of when it happened.

If you look at the library FFZ is using there, it's this file which is basically unchanged during webpack's compilation: https://github.com/mathiasbynens/emoji-regex/blob/main/es2015/index.js