Skip to content

Releases: SpacingBat3/WebCord

v4.1.1

01 Jan 17:44
7f0db55
Compare
Choose a tag to compare
  • Sync localization files with Weblate (#342).
    • Update 🇫🇷 French localization files by Niniko.
    • Update 🇪🇸 Spanish localization files by @gallegonovato.
    • Update 🇦🇪 Arabic localization files by @Ali-x98.
    • Update 🇷🇺 Russian localization files by @thejenja.
  • Repackage app under newer @reforged/maker-appimage version to fix .desktop / shell script syntax errors (#357).
  • Cache favicon hashes to conserve CPU usage.

Full Changelog: v4.1.0...v4.1.1

v4.1.0 – 🎆️ Happy New Year 🎇️!

31 Dec 20:03
6777a6c
Compare
Choose a tag to compare
  • Workaround a bug with desktopCapturer that caused crashes/SIGSEV on Wayland when trying to screen share (#328).
    • The workaround uses hard-coded source with most properties being empty and id set to screen:1:0.
    • It is very experimental, as it wasn't really tested with a lot of workflows/environments. It doesn't affect X11 users at all and is only applied when app is bundled with Electron 22+, so it shouldn't bring more troubles while giving a chance Wayland users will be able to screen share normally again.
    • Thank you, @JustPlainGarak and @mgonzalezg9, for giving me an idea to check for desktopCapturer.getSources(), without that issue ticket #328 could be left opened for a bit longer.
  • Refactor right-click context menu.
    • Hide copy / cut / paste entries if they're all greyed-out (#235).
    • Implement menu items for copying images / image links (#41).
  • Implement a button to copy a link from origin dialog popups (#140).
  • Implement new way of merging: typeMerge.
    • The goal of this merge strategy is to keep the type of the original object while deep merging contents. This should be more effective than deep merging first (and probably looping through object at least once) and comparing values later (another loop).
  • Try to optimize app with Chromium profiler (Node / main process only).

Full Changelog: v4.0.0...v4.1.0

v4.0.0

10 Dec 23:18
80ba858
Compare
Choose a tag to compare

Breaking changes

These were also announced in v3.10.1, but reverted in v3.10.2.

  • Bump latest supported Electron to 20.x.y.
    • This is believed to break screen sharing on Wayland (#328), please downgrade to 3.10.2 for now if you need screen sharing and use Wayland.
    • This is confirmed to make tray invisible in some scenarios and some distributions (#330), either try to restart app (kill it with Task manager) when it happens or downgrade to 3.10.2.
  • Deprecate Electron 13.x.y, 14.x.y, 15.x.y and 16.x.y.
    • This also removes a lot of workarounds to make these versions functional with WebCord without any need to dealing with the types and experiencing some bugs fixed in newer Electron versions.
    • I might also slowly adapt the code for the newer DOM feature set, as e.g. Electron 13 seemed to support less CSS selectors. It probably won't change anything that much through other than breaking WebCord with those older Electron versions.

Other changes

  • Sync locales from Weblate project.

Full changelog:

v3.10.2

10 Dec 20:32
45c4c9e
Compare
Choose a tag to compare

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 to 22.x.y as a breaking change to people's workflows. It is very likely it will deprecate v3 releases.

  • Revert Electron bump and older versions deprecation.
  • Improve --verbose flag implementation to also make Chromium engine log at verbose as maximum LOG() and VLOG() 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

02 Dec 21:49
b3745b2
Compare
Choose a tag to compare
  • 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 and DEBUG env variables.
    • Both NODE_DEBUG and DEBUG will be set to * when --verbose flag is present in app's argv.
    • WebCord will also log its debug messages if NODE_DEBUG includes webcord as one of elements.
  • 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.
  • 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

20 Nov 23:01
296694a
Compare
Choose a tag to compare
  • 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 to true.
  • 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.
  • 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

09 Nov 17:17
f504f67
Compare
Choose a tag to compare
  • 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.
  • 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

02 Nov 13:42
4071060
Compare
Choose a tag to compare
  • 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.
  • Add setting to always close window on close button (#263).
  • Update marked to 4.2.1.
  • Update electron to 21.2.1.

Full Changelog: v3.9.1...v3.9.2

v3.9.1

28 Oct 21:55
9f3d408
Compare
Choose a tag to compare

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

27 Oct 19:58
d3cf602
Compare
Choose a tag to compare

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.
  • 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