Releases: SpacingBat3/WebCord
v3.10.2
Note | This release was mostly introduced as a reply to recent breakages introduced by Electron. I plan to release WebCord
v4.0.0
with Electron bump to22.x.y
as a breaking change to people's workflows. It is very likely it will deprecatev3
releases.
- Revert Electron bump and older versions deprecation.
- Improve
--verbose
flag implementation to also make Chromium engine log atverbose
as maximumLOG()
andVLOG()
level and actually enable logs. - Multiple bug fixes with
WinStateKeeper
logic about detecting if window is still maximized or not.
Full Changelog: v3.10.1...v3.10.2
v3.10.1
- Move WebSocket implementation to SpacingBat3/DisConnection.
- This is made as a one of the changes to split WebCord into a few smaller modules.
- Implement support for
NODE_DEBUG
andDEBUG
env variables.- Both
NODE_DEBUG
andDEBUG
will be set to*
when--verbose
flag is present in app'sargv
. - WebCord will also log its debug messages if
NODE_DEBUG
includeswebcord
as one of elements.
- Both
- Improve algorithm that calculates and stores the window state.
- Fix a bug where
--start-minimized
/-m
flag could not work once app was closed maximized (#180). - Overall improve the logic used to determine how to store the application window.
- Fix a bug where
- Move to Electron 22.
- Bump minimal supported Electron version to
17.x.y
.- Remove some workarounds used for older Electron versions.
- Localize WebCord to 🇦🇪️ Arabic by @Ali-x98 in #322.
Full Changelog: v3.10.0...v3.10.1
v3.10.0
- UI fixes for smaller window sizes / screens.
- Make settings sidebar hidden alongside channel sidebar.
- Fix issues with popup positioning.
- Limit size of popups to viewport width.
- Update Electron Forge configuration.
- Add Squirrel maker to Forge configuration.
- Add
universal
arch to macOS jobs in GitHub workflows. - Add / modify other makers to make them enabled while packaging with
WEBCORD_ALL_MAKERS
enviroment variable set totrue
.
- Update
.eslintrc
.- Cache ESLint results for faster linting.
- Introduce basic naming convention to the source files.
- Add some additional rules.
- Improve some command-line flags.
- More detailed information about current application version with
--version
flag. - Improve rendering of
--help
message and document some missing flags.
- More detailed information about current application version with
- Update Readme.md by @4cecoder in #305
- Update 🇷🇺️ Russian localization files by @dsrev in #317
Full Changelog: v3.9.3...v3.10.0
v3.9.3
- Fix weird behaviour of Hide window to tray with the close button option (#306).
- Refactor localization files loader class (
L10N
).- This make WebCord also load localizations from associated locales, giving higher chance to display still relevant localizations rather than fall back to English.
- Refactor Content Security Policy class.
- This changes a bit the purpose of this class – it should be only used when modifications are going to be made on the Content Security Policy, rather than replace the actual
string
which includes it. - This also makes the class value read-write, so it can be set and converted automatically to the proper format.
- This changes a bit the purpose of this class – it should be only used when modifications are going to be made on the Content Security Policy, rather than replace the actual
- Add 🇷🇺️ Russian localization files by @dsrev (#308)
- Try to sign macOS binaries with the default configuration.
Full Changelog: v3.9.2...v3.9.3
v3.9.2
- Update 🇪🇸️ Spanish localization files (thank you, @MrCoolAndroid).
- Fix CSP for YouTube activity (#295).
- Add WIX MSIs to Electron Forge.
- Note: Currently, MSI format is experimental and might be reverted soon. It seems that
wix-maker
hasn't been designed to work multi-arch, so it might be reverted soon until that's going to be fixed.
- Note: Currently, MSI format is experimental and might be reverted soon. It seems that
- Add setting to always close window on close button (#263).
- Update
marked
to4.2.1
. - Update
electron
to21.2.1
.
Full Changelog: v3.9.1...v3.9.2
v3.9.1
Note | This is a fixup release for v3.9.0, with very little improvements done. For a list of full changes, see releases/v3.8.7.
- Fix a bug which caused first argument passed to Electron not being parsed by WebCord.
Full Changelog: v3.9.0...v3.9.1
v3.9.0
Note | This version is focused on CSS injection in general, but also contains other changes.
- Yet another logging functions fixes.
- Fix a bug in CSS loader which caused app freeze due to infinite loop (#289).
- Also mitigate further bugs by adding
maxTries
, which limits how many times app can retry after an error occurred in loop. Such loops might still occur through (at least there's no guarantees they won't), but that's less likely right now.
- Also mitigate further bugs by adding
- Add support for enabling window background transparency.
- Improve events used for getting the right time in which scripts should be injected. Result of that is much smoother transition between WebCord's loading page and custom CSS themes.
- Add support for injecting CSS themes to popup windows, both opened by Discord and WebCord (#297).
Full Changelog: v3.8.8...v3.9.0
v3.8.8
Note | This is a fixup release for v3.8.7, with very little improvements done. For a list of full changes, see releases/v3.8.7.
- Fix applying flags outside of list of WebCord's (#286).
- Update
@spacingbat3/kolor
to3.0.2
. - Update
@pkgjs/parseargs
to0.11.0
.
Full Changelog: v3.8.7...v3.8.8
v3.8.7
- Fix random freezes somehow caused by logging functions.
- Improve parsing the
process.argv
by either using a nativeutil.parseArgs
method or its polyfill (util.parseArgs
is itself experimental, but I think it will be encouraged to use it on Node in the future, so the code itself is actually more future-proof).- The polyfill implementation is provided by
@pkgjs/parseargs
. - Currently, Electon does not include
util.parseArgs
in its API and that's likely because it isn't present in Node 16.
- The polyfill implementation is provided by
- Use native
fetch
API if available in Node (Electron is currently at16
, so that API isn't available right now andelectron-fetch
will be used instead). - Fix some Spotify embeds using
build/embeds-legacy
. - Add some legacy code for older Electron versions.
- WebCord is now confirmed to both run and build under Electron 13 (again).
- Fix a crash / fatal
Error
that caused about window not to load. - Improve hiding some buttons in input box when window is small enough.
- A visible change between older and newer implementation is that gift button is hidden as well.
- Improve text generation in license dialog window to include some basic formatting.
- Update Spanish and Norwegian Bokmål localization files.
- Also configure Weblate so it will automatically remove blank localizations from the files (blank strings in localization files would just make WebCord to load blank text).
Full Changelog: v3.8.6...v3.8.7
v3.8.6
Note | This is a fixup release for
v3.8.5
, with very little improvements done. For a list of full changes, seereleases/v3.8.5
.
- Fix bug with a microphone caused by a duplicate requests sent without
mediaType
in Electron 21 (#275). - Improve logic of detecting unofficial Discord instances used for determining if tray icon should be changed.
- Fix (in-promise, non-critical)
Error
when requesting the screen share if permission to it should be denied. - Update
marked
to4.1.1
.
Full Changelog: v3.8.5...v3.8.6