NOTABLE CHANGES
DB
- add migration between supported databases, see docs
API
- updated subscribers endpoint to new helix api
CUSTOM VARIABLES
- added history of custom variables
YT SONG REQUESTS
- added toggle to be able to add only music category videos
- added remove buttons to song requests in widget
ME
- added
me
system enabling settings of format of!me
TOP
- moved
top
to separate system - added
!top subage
GOAL OVERLAY / REGISTRY
- added goal registry and overlay to track followers, subscribers, tips and bits
USERS
- added subgift count to users
- added substreak to users
- added cumulative months of subscription to users
OTHERS
- split
$currentSong
to$spotifySong
and$ytSong
- extended
(list.command)
filters, see docs !game set
wil lty to search for game, e.g.!game set csgo
will set game to Counter Strike: Global Offensive
COMMITS
- [1e4685a] panel: remove resending widgets on update
- [981fc95] package: 8.3.0-SNAPSHOT
- [c1c2976] docs: set main docs as 8.2.x, archive 8.1.x
- [0320e08] package: dependency update
- [5e88977] mongodb: Fix incorrect keys on users collections
- [6ca55be] nedb: Fix incorrect keys on users collections
- [9c06750] tmi: Save user id on cheer before other actions
- [7c4274e] database: remove compacting
- [86c2c06] interface: Show status only on master
- [f011838] currency: Load currency only on master
- [2080702] soundboard: Fix ev.path in firefox
- [5bb9f39] cmdboard: Get correct configuration on start
- [b7ce564] d.ts: Update definition for InterfaceSettings
- [896bac8] migrate: fix version of migration to 8.2.1
- [e7be69c] message: Split $currentSong to $ytSong/$spotifySong
- [d80de08] users: Add subgift count to users
- [95b4652] top: move !top commands to own system
- [fc8a1d7] customvariables: Add variable history (#1712)
- [c05d1c9] top: add subage
- [0977f7b] top: Fix missing locales
- [b8e2a00] top: Fix incorrect function names
- [45d3248] top: Add follower/subscriber checks
- [e53caf1] polls: Add close message if closed by ui
- [675bfda] api: Set properly subscribers on sub check
- [725a023] locales: Add missing subgifts
- [09f1ad2] api: Set correct format for all subscribers
- [d10f9f8] polls: Add locales to overlay
- [786f919] polls: Set dates as timestamp to avoid incorrect ordering
- [ff4cfd6] extensions: Add recommended extensions
- [8384a44] polls: Add bottom border to vote type select
- [f9bfdda] migrate: Add polls migration from dates to timestamps
- [98fc1f5] dashboard: Fix issue with random chat reload
- [f3662d7] tools: Add migration between any databases
- [baaabc9] tools: Fix error when mapping is empty
- [1d9a2d3] tools: Skip ObjectId objects in mongodb
- [3c13a53] polls: Move cache variables in-memory
- [f3d8176] migrate: Remove lastTimeRemind from poll migration
- [895817f] mongodb: Fix flattening on find()
- [906c461] moderation: Remove redundant condition check
- [d5e2067] ui: Set history as empty array if variable is empty
- [974f38f] goals: add goals registry and overlay
- [3ae03c0] goals: add current types (followers, subscribers)
- [813bf52] ytplayer: add remove of requests into widget
- [28233b7] goals: add onChange triggers to current types
- [88b8d1f] eventlist: add cleanup button to widget
- [a58b23f] dashboard: fix error on creation of first widget
- [cfc87e5] commands: disabled commands should not be shown in list
- [6fc12a5] alias: disabled alias should not be shown in list
- [5087cb3] userinfo: add new userinfo system (!me, !followage, etc)
- [3c18bfb] moderation: fix whisper emote moderation
- [a3d1ae8] message: extend list.commands with permission
- [ade799f] stats: add watchedTime stats
- [0687c40] twitch: !game command will set similar games
- [f100d5b] users: add ignore check to watchedTime update
- [c3262c2] users: add isBot/isOwner checks for watch time
- [a0dfc48] package: move luxon to dependencies
- [0c06730] userinfo: remove separator trimming
- [f424b11] docs: fix incorrect list command filter
- [807aecf] stats: remove reduntant log
- [996172c] userinfo: fix invalid message replace
- [f5b0862] interface: merge settings to one category
- [778963c] youtube: add onlyMusicCategory toggle
- [ec8842e] top: fix tips incorrect value
- [54ecf5d] package: dependencies update
- [670d67a] package: explicit terser 3.14.1
- [548ba7a] package: explicit acorn 6.0.5
- [c7ada67] interface: fix socket settings collection
- [0a6fed7] panel: update hold button to use slots
- [c40b5e1] panel: set css as scoped
- [ef54c16] package: remove terser from devDependencies
- [9136e52] interface: update to es6 import for typescript
- [2f39e6e] bets: remove redundant widgets/bets
- [95bf467] chat: move to interface + ts
- [506cf97] tmi: show logs only on debug
- [a4050e7] bets: fix incorrect attributes to replace
- [dc529aa] package: add husky for precommit check
- [8fa726a] cmboard: implement interface
- [ac29155] nedb: fix errors not propagating correctly
- [f645160] package: bump twitch-js to 2.0.0-beta.30 (#1803)
- [096988e] commercial: remove redundant widget lib
- [9dcb78d] chore: fix CONTRIBUTING typo
- [904b8ef] tmi: update resub event for twitch changes
- [997a9d5] widgets: join/part widgets to interface
- [68ff8e2] widgets: soundboard widget to interface
- [7f220db] widgets: eventlist to interface
- [e54c8d7] interface: remove widgets status
- [0223a4e] locale: add mising subStreakName locale
- [5c8733f] events: fix subStreak test
- [d663a4b] docs: update write-own-system
- [995d113] locale: missing subStreakShareEnabled
- [39d73b1] travis: add skip test tags [skip-travis], [skip-tests], [no-tests]
- [6eaee6e] tmi: fix parsing of badges
- [ae50a5e] tmi: fix typo for streakMonths
- [85a8d39] vue: remove development library
- [e6a5bb2] eventlist: simplify object generation
- [500dd6b] nedb: fix incorrect error logging
- [48e9883] cluster: fix update user on message
- [6907c02] goals: force retype currentAmount to number
- [72bed03] viewers: fix incorrect stats attributes
- [8f9977e] api: getChannelHosts 500 should not poll endpoint every second
- [ae03d2f] tmi: fix error if subscribed_at is missing
- [50a3635] tmi: stats.subStreak on resub is by default 0
- [91868d8] api: set subStreak to 0 if user is not subscriber anymore
- [f127259] tmi: remove resub log localized months
- [7cdf998] tmi: fix is moderator checking
- [93e8739] cvars: update widget to interface
- [bc4e981] tmi: fix polling on mod check
- [c64c9e5] api: move intervals to function
- [ec7d3fc] api: update subscribers endpoint to helix
- [2198c07] chore: fix CONTRIBUTING lines order
- [a4642dd] widgets: fix glob error on soundboard load
- [4ec189e] chore: add commit instead of snapshot
- [c06a835] api: add chatters check for getChannelChattersUnofficialAPI