609 lines
16 KiB
Markdown
609 lines
16 KiB
Markdown
# BetterDiscord Changelog
|
|
|
|
This changelog starts with the restructured 1.0.0 release that happened after context isolation changes. The changelogs here should more-or-less mirror the ones that get shown in the client but probably with less formatting and pizzazz.
|
|
|
|
|
|
## 1.10.2
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed transition group search for Discord's new export schema
|
|
|
|
## 1.10.1
|
|
|
|
### Added
|
|
- Added an `ErrorBoundary` to the custom modal stack to prevent errors from bubbling up and preventing startup.
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed modal transition component search for Discord's new function component version
|
|
|
|
|
|
## 1.10.0
|
|
|
|
### Added
|
|
- Enable/disable all buttons for both AddonLists
|
|
- BDContextMenu has been integrated
|
|
- Ability to reset to default settings of any collection
|
|
- Several design components like Flex, Button, Text, and all Modal components
|
|
- Added a backup modal stack and backdrop in case we lose Discord's again
|
|
- Added a wanring for large debug logs
|
|
- `onClose` for modal APIs
|
|
- New debug information in user settings
|
|
|
|
### Removed
|
|
- Several unused "known modules"
|
|
- `DiscordClasses` module since it was seldom used
|
|
- `ClassName` and similar constructs
|
|
- Legacy emote assets
|
|
|
|
### Changed
|
|
- Search bars now auto focus
|
|
- Opening folder on Windows now occur in the foreground
|
|
- Search fields are now clearable
|
|
- AddonList pages now show totals and results of searches
|
|
- Custom CSS live update is now debounced and using a proper switch not a checkbox
|
|
- ConfirmationModal and ChangelogModal are now using custom components
|
|
- Updater panel now uses icons rather than text buttons
|
|
- AddonList panels have been rearranged to accomodate the new buttons
|
|
- The anonymous BD patch function is now named `BDPatcher`
|
|
- Modal APIs now use internal ConfirmationModal component
|
|
- Markdown areas now consistenly allow for embedded links
|
|
- Lazy loaded modules are returned to the original source
|
|
|
|
### Fixed
|
|
- Fixed grabbing the wrong module for accepting invites
|
|
- Fixed more strings that were not translatable
|
|
|
|
## 1.9.8
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Removed `ipc.sendTo` for electron 28
|
|
- Fixed core updater not using the semver comparator
|
|
|
|
## 1.9.7
|
|
|
|
### Added
|
|
- Support for Spanish (LATAM) locale
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- Updated translations
|
|
- Ignore relative requires (This is because when favoriting a GIF and other UI actions, Discord repeatedly attempts to load relative requires on accident causing our code to make tons of FS requests causing lag.)
|
|
|
|
### Fixed
|
|
- Fixed locale not falling back to English properly
|
|
|
|
## 1.9.6
|
|
|
|
### Added
|
|
- All HTTP request options for bd-fetch
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- Updated translations
|
|
|
|
### Fixed
|
|
- Fixed race conditions for notices
|
|
- Fixed options not being sent to fetch
|
|
|
|
## 1.9.5
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed the webpack patch for the new loader
|
|
|
|
## 1.9.4
|
|
|
|
### Added
|
|
- New css variable `--os-accent-color`
|
|
- Temporary `Buffer` polyfill
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- `BdApi.Net.fetch` now has an optional `timeout` parameter
|
|
|
|
### Fixed
|
|
- Fixes not being able to use `http` for `BdApi.Net.fetch`.
|
|
- Bad URLs and other early errors in `BdApi.Net.fetch` now handled better.
|
|
|
|
## 1.9.3
|
|
|
|
### Added
|
|
- Multiple shorthand functions under `BdApi.Webpack`
|
|
- New `getStore` filter
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- Updated translations
|
|
|
|
### Fixed
|
|
- Fixed header color in light mode.
|
|
- Fixed window size retention for users of remove minimum size option.
|
|
- Fixed a toast saying an addon was loaded when it was unloaded.
|
|
- Fixed context menu patching API for plugins.
|
|
|
|
## 1.9.2
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed context menu crash & api
|
|
|
|
## 1.9.1
|
|
|
|
### Added
|
|
- SourceURL for the renderer
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed client crashes
|
|
|
|
## 1.9.0
|
|
|
|
### Added
|
|
- Remove minimum window size now remembers desired size
|
|
- Basic semver comparison
|
|
|
|
### Removed
|
|
- Public Servers
|
|
- Old DataStore functions that are no longer used
|
|
|
|
### Changed
|
|
- All main react components are now functional with hooks
|
|
- Mac now uses cmd instead of ctrl
|
|
|
|
### Fixed
|
|
- Fixed dropdowns
|
|
- Fixed markdown parser
|
|
|
|
## 1.8.5
|
|
|
|
### Added
|
|
- Ability to use a custom local version of React DevTools
|
|
- Experimental `BdApi.Components` for component access in plugins
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- Title for settings sidebar now uses a custom component
|
|
|
|
### Fixed
|
|
- Fixed ModalRoot and ConfirmationModal not being found in webpack
|
|
- Fixed context menus for internal changes
|
|
|
|
## 1.8.4
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed more bugs with context menu api
|
|
|
|
## 1.8.3
|
|
|
|
### Added
|
|
- Checking for old installs and deleting them
|
|
|
|
### Removed
|
|
- All references to Emotes, this will become a separate plugin
|
|
|
|
### Changed
|
|
- Moved to the more permissive Apache 2.0 license
|
|
- Now check for discord.asar for electron17+
|
|
- Handle setting module exports internally rather than maintaining getter references
|
|
|
|
### Fixed
|
|
- Fixed `inject` for electron17+
|
|
- Updater checking `>` which does not work for open versions
|
|
- Fixed a startup bug with the context menu api
|
|
|
|
## 1.8.2
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed modals not working
|
|
- Fixed downloading binary files
|
|
- Fixed public server invites
|
|
|
|
## 1.8.1
|
|
|
|
### Added
|
|
- A script to automatically grab the new translations from POEditor
|
|
- Several new translations
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- Moved some hardcoded strings to be part of the translation system
|
|
- Several updated translations
|
|
|
|
### Fixed
|
|
- Fixed context menu patcher not patching consistently
|
|
- Fixed context menu toggle item UI not updating
|
|
- Fixed an issue with the bound API checking the wrong arguments
|
|
- Fixed `getOwnerInstance` calling the wrong functions internally
|
|
|
|
## 1.8.0
|
|
|
|
### Added
|
|
- Proper updater system with UI.
|
|
- Tooltip component for plugins.
|
|
- Highly expanded plugin API.
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- Reverted how internal webpack module searches are performed.
|
|
- New options for webpack searches.
|
|
|
|
### Fixed
|
|
- Fixed many issues regarding memory leaks and out-of-memory errors!
|
|
- Fixed a major issue where webpack searches would iterate by default.
|
|
- Fixed an issue with `byStrings` and `combine` filters in the API.
|
|
- Fixed an issue where searching for multiple modules could yield the same module multiple times.
|
|
- Fixed an issue where misnamed addon files could prevent startup.
|
|
- Fixed an issue where the `request` module would not follow redirects.
|
|
- Fixed an issue where certain modals could crash the client.
|
|
- Fixed an issue where toasts would not show on the crash screen.
|
|
|
|
## 1.7.0
|
|
|
|
### Added
|
|
- Polyfill for certain node modules.
|
|
|
|
### Removed
|
|
- Proxy protection for certain modules.
|
|
|
|
### Changed
|
|
- Changed how internal webpack module searches are performed.
|
|
- New location for public servers button.
|
|
- Switch to pnpm with workspaces.
|
|
- Improved startup errors.
|
|
|
|
### Fixed
|
|
- Fixed several issues for Discord's internal changes.
|
|
|
|
## 1.6.3
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- Plugin startup errors should be more descriptive for developers.
|
|
|
|
### Fixed
|
|
- Fixed an issue where custom css crashed Discord.
|
|
- Fixed an issue where `waitForModule` returned a boolean instead of a module.
|
|
|
|
## 1.6.2
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed non-loading issue due to changed UserSettingsStore
|
|
|
|
## 1.6.1
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed an issue where `waitForModule` would not return the found module.
|
|
- Fixed an issue where broken addon METAs could prevent BD from fully loading.
|
|
- Fixed an issue where developer badges stopped rendering.
|
|
|
|
## 1.6.0
|
|
|
|
### Added
|
|
- Better handling and fallback when the editor fails to load. (Thanks Qb)
|
|
- Now able to sort addons by whether they're enabled. (Thanks TheGreenPig)
|
|
- New `Webpack` API added for plugin developers to take advantage of.
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- Addon loading no longer uses `require`
|
|
- Addon error modal updated (Thanks Qb)
|
|
- Fixed plugin error display on the modal
|
|
|
|
### Fixed
|
|
- Fixed dispatcher changes by Discord
|
|
|
|
## 1.5.3
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed Canary crashing immediately
|
|
|
|
## 1.5.2
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed being unable to inject into settings, thanks @Strencher
|
|
|
|
## 1.5.1
|
|
|
|
### Added
|
|
- `Number` settings component using builtin `input[type=number]`
|
|
- Settings for monaco editor: font size, line numbers, minimap, whitespace, quick suggestions, tooltips
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed `GuildComponent` throwing errors
|
|
- Fixed public servers button disappearing when guilds list rerenders
|
|
- Fixed plugin compilation error not pointing to console
|
|
- Fixed plugins with no `@name` attempting to load
|
|
|
|
## 1.5.0
|
|
|
|
### Added
|
|
- `appSettings` override and corresponding toggle to enable DevTools (Thanks [Kyza](https://github.com/Kyza))
|
|
- `bd-transparency` class is added to `document.body` when window transparency is enabled (Thanks [Strencher](https://github.com/Strencher))
|
|
|
|
### Removed
|
|
- Removed all appearance related `Builtin`s including: 24 Hour Timestamps, Colored Text, Hide GIF/Gift Button, and MinimalMode
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed `DebugLogs` throwing errors or not writing `null`, `undefined`, and circular objects
|
|
- Fixed guild utility classes not being added
|
|
- Fixed toast location
|
|
|
|
## 1.4.0
|
|
|
|
### Added
|
|
- Notices API (Thanks [Strencher](https://github.com/Strencher))
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed outdates styles and classnames (Thanks [Strencher](https://github.com/Strencher))
|
|
- Fixed guild list classes being overwritten causing the public server button to not show
|
|
- Fixed finding the wrong module for `ActionTypes` in custom css module
|
|
- Fixed not removing customcss upon disable
|
|
- Fixed media keys commandline switch not being applied
|
|
|
|
## 1.3.0
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- Startup now waits for current user to be populated or for CONNECTION_OPEN event
|
|
|
|
### Fixed
|
|
- Fixed emote menu causing crashes
|
|
|
|
## 1.2.4
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed loading sequence using wrong classes
|
|
|
|
## 1.2.3
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
- Fixed translations not falling back to English
|
|
- Fixed waiting for guilds due to class name changes
|
|
|
|
## 1.2.2
|
|
|
|
### Added
|
|
- Added Czech translation
|
|
- Added Spanish translation
|
|
- Added Hindi (partial) translation
|
|
- Added Italian translation
|
|
- Added Dutch translation
|
|
- Added Norwegian translation
|
|
- Added Portuguese (PT) translation
|
|
- Added Romanian translation
|
|
- Added Russian translation
|
|
- Added Turkish translation
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- `window.webpackJsonp` is temporarily polyfilled for Canary but _will_ be disappearing
|
|
- Updated French translation
|
|
- Updated Germand translation
|
|
|
|
### Fixed
|
|
- Fixed public servers missing (Thanks [Strencher](https://github.com/Strencher))
|
|
- Fixed guild classes missing (Thanks [Strencher](https://github.com/Strencher))
|
|
|
|
## 1.2.1
|
|
|
|
### Added
|
|
- Added `getPatchesByCaller` to `BdApi.Patcher`
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- Internal react keys updated for new version in Discord (Thanks [Strencher](https://github.com/Strencher))
|
|
- Monaco editor now loads for all cases rather than just for custom css (Thanks [Qb](https://github.com/QbDesu))
|
|
- MacOS on Discord non-canary will use the default `process` object
|
|
|
|
### Fixed
|
|
- Fixed failed plugin loads being permanently cached (Thanks [Strencher](https://github.com/Strencher))
|
|
- Fixed duplicate file renaming sometimes causing crashed (Thanks [Strencher](https://github.com/Strencher))
|
|
- Fixed plugin data retrieval when using falsey values
|
|
- Fixed plugin data being overwritten if a read did not occur first
|
|
- Fixed react dev tools time of installation to comply with linux injection. (Thanks [Qb](https://github.com/QbDesu))
|
|
|
|
## 1.2.0
|
|
|
|
### Added
|
|
- `openDialog` function added to `BdApi` to enable save/load of files.
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- Emote menu now more seamlessly integrates with Discord.
|
|
- Support for other chrome profiles added when using React DevTools. (Thanks [CrizGames](https://github.com/CrizGames))
|
|
- Console errors from plugins should now properly map to the local file.
|
|
|
|
### Fixed
|
|
- Fixed several crashing issues related to voice and video chats.
|
|
- Fixed the incompatibility with Canary/PTB
|
|
- Fixed missing class names on guild elements.
|
|
- Fixed minimal mode for new Discovery tab. (Thanks [dav1312](https://github.com/dav1312))
|
|
|
|
|
|
## 1.1.1
|
|
|
|
### Added
|
|
|
|
### Removed
|
|
|
|
### Changed
|
|
- Plugin loader now removes the used `script` tags
|
|
- URLs reflect new website
|
|
|
|
### Fixed
|
|
- Fixed an issue with hiding GIF and Gift buttons
|
|
- Fixed certain plugin patches not returning values
|
|
- Fixed an issue with the settings patch failing
|
|
|
|
|
|
## 1.1.0
|
|
|
|
### Added
|
|
- Added an option to prevent Discord from hijacking the media keys.
|
|
- Added command line flag to launch a vanilla version of Discord `--vanilla`
|
|
- Added an option for app-wide `ctrl+shift+c` shortcut for inspect element.
|
|
- Added emote blocklist to `BdApi` via `BdApi.Emotes.blocklist`.
|
|
- Added the ability to remove Discord's forced minimum window size.
|
|
- Added a basic core updater to hopefully prevent the need for future installs.
|
|
- Added an option to log out all console logs to file for developers.
|
|
- Added an option to disable Discord's console warning.
|
|
- Added translations for the following languages: French, Slovak, Polish, Portuguese (BR), Chinese (Traditional), Chinese (Simplified)
|
|
|
|
### Removed
|
|
- Class normalizer was removed as it does more harm than good.
|
|
|
|
### Changed
|
|
- Addon error modals got a makeover thanks to [Strencher](https://github.com/Strencher) and [Tropical](https://github.com/Tropix126)
|
|
- Emotes are now downloaded as a single asar bundle as opposed to individual JSON files.
|
|
- Strings are now bundles with the main payload, but may move to a separate asar like the emotes.
|
|
- `BdApi` functions related to window preferences no longer work and are deprecated.
|
|
- Guild classes are obtained later from webpack in case it's not loaded in fast enough.
|
|
- DataStore now has additional protections (`try..catch`).
|
|
|
|
### Fixed
|
|
- Fixed an issue with old METAs used in themes cause the css to render invalid.
|
|
- Fixed crashing issues with plugins using `Buffer`.
|
|
- Fixed a bug for manual and 3rd party installations that don't create the BD folder.
|
|
- Fixed incorrect path usage for some Mac devices.
|
|
- Fixed colored text not doing anything.
|
|
- Fixed detached css window not loading saved css.
|
|
- Fixed an issue where toggling settings collections would remove incorrect panels.
|
|
- Fixed the file watchers not properly matching duplicate files.
|
|
- Fixed Hide GIF and Hide Gift options for Discord's changes
|
|
- Fixed public servers button not showing.
|
|
- Fixed multiple error modals showing on startup if multiple plugins had errors.
|
|
- Fixed incorrect styling on emotes.
|
|
- Fixed system editor edit buttons using an old Electron API (`openItem` vs `openPath`)
|
|
- Fixed an issue for those using exclusively server folders
|
|
|
|
|
|
## 1.0.0
|
|
|
|
### Added
|
|
- **Everything** is entirely rewritten, for better or worse.
|
|
- **Emotes and Custom CSS** can be completely turned off for those not interested. It saves on memory too by not loading those components.
|
|
- **Floating editors** for both custom css and plugins/themes are now available.
|
|
- **Monaco** is now used as the main CSS editor, in place of Ace.
|
|
- **Settings panels** are completely new and sleek. They are also highly extensible for potential future features :eyes:
|
|
- **Translations** are now integrated starting with only a couple languages, but feel free to contribute your own!
|
|
- **Public servers** got a new makeover thanks to some design help from Tropical and Gibbu!
|
|
We added settings to hide the **Gif Picker** and the **Nitro Gift** buttons in the textarea.
|
|
|
|
### Changed
|
|
- **Patcher API** was added to `BdApi` under `BdApi.Patcher`. The old `BdApi.monkeyPatch` was patched to use the Patcher as well. This allows plugins and patches to play nice with one another.
|
|
- **jQuery** was removed from dependencies.
|
|
- **General performance** improvements throughout the app, from startup to emotes to addons.
|
|
- **Exporting** by plugins is now highly encouraged over trying to match your meta name and class name.
|
|
- **Plugins and Themes** pages have more options for sorting, views and more. The entire panel got a facelift!
|
|
- **Blankslates** have been added all over for that added UX.
|
|
- **Several unused UI features** have been removed for a more performant and usable experience.
|
|
- **Debugger Hotkey** is now a built-in feature!
|
|
|
|
### Fixed
|
|
- **Minimal mode** has been redesigned from the ground up and now works as intended.
|
|
- **Emote menus** are fixed and now use React Patching to properly integrate into the new Emoji Picker. (Thanks Strencher#1044!)
|