# Syncthing changelog > Continuous file synchronization between your devices. - Vendor: Syncthing - Category: Productivity - Official site: https://syncthing.net - Tracked by: What's New (https://whatsnew.fyi/product/syncthing) - Harvested from: GitHub (syncthing/syncthing) - Entries below: 10 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. ## Releases ### v2.1.3 - Date: 2026-08-05 - Version: v2.1.3 - Original notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.3 - Permalink: https://whatsnew.fyi/product/syncthing/releases/v2.1.3 - **added** — Devices and folders can now be grouped in the GUI by setting the new group attribute - **added** — HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies via the all_proxy environment variable - **added** — Block indexing can be turned off for folders to optimise for reduced database size and overhead via the blockIndexing attribute on folder configuration - **added** — GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long, with the sessionCookieDurationS and sessionCookiePath attributes in the GUI configuration - **fixed** — Allow loading ignore patterns behind symlink - **fixed** — Avoid warning on does-not-exist scan error - **fixed** — Fix locking correctness in strelaypoolsrv - **fixed** — Properly health-check up-to-date folders - **fixed** — Fix expanding one folder not collapsing others in group - **fixed** — Add bottom margin to folder action buttons for wrapped spacing - **fixed** — Guard against out of index string access in upnp - **fixed** — Handle pattern resulting in empty string in ignore - **fixed** — Handle invalid empty command in versioner - **fixed** — Handle empty path in static request in api - **fixed** — Better handle db connections, puller concurrency, and avoid deadlock - **changed** — Lazy-render collapsed panels to reduce watcher count in GUI - **changed** — Remove ignore file caching entirely - **changed** — Slightly optimise rename detection - **changed** — Optimise casefs caching performance - **changed** — Optimise fsync calls ##### Major changes in 2.1 - Devices and folders can now be grouped in the GUI by setting the new `group` attribute. - HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies (the environment variable `all_proxy=https://...`). - Block indexing can be turned off for folders where it's more desirable to optimise for reduced database size and overhead than minimal transfer size (the `blockIndexing` attribute on folder configuration). - GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long. The cookie path can also be adjusted. (The `sessionCookieDurationS` and `sessionCookiePath` attributes in the GUI configuration.) This release is also available as: * APT repository: https://apt.syncthing.net/ * Docker image: `docker.io/syncthing/syncthing:2.1.3` or `ghcr.io/syncthing/syncthing:2.1.3` (`{docker,ghcr}.io/syncthing/syncthing:2` to follow just the major version) ##### What's Changed ###### Fixes * fix(ignore, fs): allow loading ignore patterns behind symlink (fixes #10785) by @calmh in https://github.com/syncthing/syncthing/pull/10786 * fix: avoid warning on does-not-exist scan error (fixes #10465) by @calmh in https://github.com/syncthing/syncthing/pull/10791 * fix(strelaypoolsrv): locking correctness by @calmh in https://github.com/syncthing/syncthing/pull/10801 * fix(model): properly health-check up-to-date folders (fixes #10546) by @calmh in https://github.com/syncthing/syncthing/pull/10773 * fix(gui): fix expanding one folder not collapsing others in group by @tbodt in https://github.com/syncthing/syncthing/pull/10809 * fix(gui): add bottom margin to folder action buttons for wrapped spacing by @rohitanwar in https://github.com/syncthing/syncthing/pull/10728 * fix(upnp): guard against out of index string access by @calmh in https://github.com/syncthing/syncthing/pull/10834 * fix(ignore): handle pattern resulting in empty string by @calmh in https://github.com/syncthing/syncthing/pull/10835 * fix(versioner): handle invalid empty command by @calmh in https://github.com/syncthing/syncthing/pull/10836 * fix(api): handle empty path in static request by @calmh in https://github.com/syncthing/syncthing/pull/10837 * fix(db, model): better handle db connections, puller concurrency, avoid deadlock (fixes #10841) by @calmh in https://github.com/syncthing/syncthing/pull/10842 ###### Other * chore(fs): use x/sys/windows where possible by @greatroar in https://github.com/syncthing/syncthing/pull/10766 * chore(model): simplify FileInfoBatch size computation by @calmh in https://github.com/syncthing/syncthing/pull/10776 * build: allow inotify on Android amd64 (ref #8710) by @chenxiaolong in https://github.com/syncthing/syncthing/pull/10783 * chore: fix a couple of unclosed http connections by @calmh in https://github.com/syncthing/syncthing/pull/10806 * chore(gui): lazy-render collapsed panels to reduce watcher count by @Finomosec in https://github.com/syncthing/syncthing/pull/10772 * build(deps): update dependencies by @calmh in https://github.com/syncthing/syncthing/pull/10824 * chore: new code contribution guidelines by @calmh in https://github.com/syncthing/syncthing/pull/10821 * chore: remove ignore file caching entirely by @calmh in https://github.com/syncthing/syncthing/pull/10813 * chore: slightly optimise rename detection (ref #10777) by @calmh in https://github.com/syncthing/syncthing/pull/10819 * chore(gui): better describe when a pending folder/device notification will reappear by @tbodt in https://github.com/syncthing/syncthing/pull/10808 * chore: deflake TestRecvOnlyRevertNeeds by @calmh in https://github.com/syncthing/syncthing/pull/10827 * chore(model): don't check existing file twice in rename detection by @imsodin in https://github.com/syncthing/syncthing/pull/10833 * chore(fs): optimise casefs caching performance by @calmh in https://github.com/syncthing/syncthing/pull _[Truncated at 4000 characters — full notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.3]_ ### v2.1.3-rc.3 - Date: 2026-08-03 - Version: v2.1.3-rc.3 - Original notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.3-rc.3 - Permalink: https://whatsnew.fyi/product/syncthing/releases/v2.1.3-rc.3 - Labels: Pre-release - **added** — Devices and folders can now be grouped in the GUI by setting the new group attribute - **added** — HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies via the all_proxy environment variable - **added** — Block indexing can be turned off for folders by setting the blockIndexing attribute on folder configuration to optimize for reduced database size and overhead - **added** — GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long via the sessionCookieDurationS attribute in GUI configuration - **added** — GUI session cookie path can be adjusted via the sessionCookiePath attribute in GUI configuration - **fixed** — Allow loading ignore patterns behind symlink - **fixed** — Avoid warning on does-not-exist scan error - **fixed** — Strelaypoolsrv locking correctness - **fixed** — Properly health-check up-to-date folders - **fixed** — Fix expanding one folder not collapsing others in group - **fixed** — Add bottom margin to folder action buttons for wrapped spacing - **fixed** — Guard against out of index string access in UPnP - **fixed** — Handle pattern resulting in empty string in ignore - **fixed** — Handle invalid empty command in versioner - **fixed** — Handle empty path in static API request - **fixed** — Better handle database connections and puller concurrency to avoid deadlock - **changed** — Remove ignore file caching entirely - **changed** — Slightly optimize rename detection - **changed** — Optimize fsync calls - **changed** — Optimize casefs caching performance ##### Major changes in 2.1 - Devices and folders can now be grouped in the GUI by setting the new `group` attribute. - HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies (the environment variable `all_proxy=https://...`). - Block indexing can be turned off for folders where it's more desirable to optimise for reduced database size and overhead than minimal transfer size (the `blockIndexing` attribute on folder configuration). - GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long. The cookie path can also be adjusted. (The `sessionCookieDurationS` and `sessionCookiePath` attributes in the GUI configuration.) This release is also available as: * APT repository: https://apt.syncthing.net/ * Docker image: `docker.io/syncthing/syncthing:2.1.3-rc.3` or `ghcr.io/syncthing/syncthing:2.1.3-rc.3` (`{docker,ghcr}.io/syncthing/syncthing:2` to follow just the major version) ##### What's Changed ###### Fixes * fix(ignore, fs): allow loading ignore patterns behind symlink (fixes #10785) by @calmh in https://github.com/syncthing/syncthing/pull/10786 * fix: avoid warning on does-not-exist scan error (fixes #10465) by @calmh in https://github.com/syncthing/syncthing/pull/10791 * fix(strelaypoolsrv): locking correctness by @calmh in https://github.com/syncthing/syncthing/pull/10801 * fix(model): properly health-check up-to-date folders (fixes #10546) by @calmh in https://github.com/syncthing/syncthing/pull/10773 * fix(gui): fix expanding one folder not collapsing others in group by @tbodt in https://github.com/syncthing/syncthing/pull/10809 * fix(gui): add bottom margin to folder action buttons for wrapped spacing by @rohitanwar in https://github.com/syncthing/syncthing/pull/10728 * fix(upnp): guard against out of index string access by @calmh in https://github.com/syncthing/syncthing/pull/10834 * fix(ignore): handle pattern resulting in empty string by @calmh in https://github.com/syncthing/syncthing/pull/10835 * fix(versioner): handle invalid empty command by @calmh in https://github.com/syncthing/syncthing/pull/10836 * fix(api): handle empty path in static request by @calmh in https://github.com/syncthing/syncthing/pull/10837 * fix(db, model): better handle db connections, puller concurrency, avoid deadlock (fixes #10841) by @calmh in https://github.com/syncthing/syncthing/pull/10842 ###### Other * chore(fs): use x/sys/windows where possible by @greatroar in https://github.com/syncthing/syncthing/pull/10766 * chore(model): simplify FileInfoBatch size computation by @calmh in https://github.com/syncthing/syncthing/pull/10776 * build: allow inotify on Android amd64 (ref #8710) by @chenxiaolong in https://github.com/syncthing/syncthing/pull/10783 * chore: fix a couple of unclosed http connections by @calmh in https://github.com/syncthing/syncthing/pull/10806 * chore(gui): lazy-render collapsed panels to reduce watcher count by @Finomosec in https://github.com/syncthing/syncthing/pull/10772 * build(deps): update dependencies by @calmh in https://github.com/syncthing/syncthing/pull/10824 * chore: new code contribution guidelines by @calmh in https://github.com/syncthing/syncthing/pull/10821 * chore: remove ignore file caching entirely by @calmh in https://github.com/syncthing/syncthing/pull/10813 * chore: slightly optimise rename detection (ref #10777) by @calmh in https://github.com/syncthing/syncthing/pull/10819 * chore(gui): better describe when a pending folder/device notification will reappear by @tbodt in https://github.com/syncthing/syncthing/pull/10808 * chore: deflake TestRecvOnlyRevertNeeds by @calmh in https://github.com/syncthing/syncthing/pull/10827 * chore(model): don't check existing file twice in rename detection by @imsodin in https://github.com/syncthing/syncthing/pull/10833 * chore(fs): optimise casefs caching performance by @calmh in https://github.com/syncthing/sync _[Truncated at 4000 characters — full notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.3-rc.3]_ ### v2.1.3-rc.2 - Date: 2026-07-28 - Version: v2.1.3-rc.2 - Original notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.3-rc.2 - Permalink: https://whatsnew.fyi/product/syncthing/releases/v2.1.3-rc.2 - Labels: Pre-release - **added** — Devices and folders can now be grouped in the GUI by setting the new group attribute - **added** — HTTP and HTTPS proxies with support for CONNECT can now be used in addition to existing SOCKS proxy support via the all_proxy environment variable - **added** — Block indexing can be turned off for folders via the blockIndexing attribute to optimize for reduced database size and overhead - **added** — GUI login session duration can be configured to be longer or shorter than the default one week or set to infinitely long via the sessionCookieDurationS attribute - **added** — GUI session cookie path can be adjusted via the sessionCookiePath attribute in GUI configuration - **fixed** — Allow loading ignore patterns behind symlink - **fixed** — Avoid warning on does-not-exist scan error - **fixed** — Fix locking correctness in strelaypoolsrv - **fixed** — Properly health-check up-to-date folders - **fixed** — Fix expanding one folder not collapsing others in group - **fixed** — Add bottom margin to folder action buttons for wrapped spacing - **fixed** — Guard against out of index string access in upnp - **fixed** — Handle pattern resulting in empty string in ignore - **fixed** — Handle invalid empty command in versioner - **fixed** — Handle empty path in static request in api - **changed** — Remove ignore file caching entirely - **changed** — Optimize rename detection - **changed** — Optimize fsync calls - **changed** — Optimize casefs caching performance ##### Major changes in 2.1 - Devices and folders can now be grouped in the GUI by setting the new `group` attribute. - HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies (the environment variable `all_proxy=https://...`). - Block indexing can be turned off for folders where it's more desirable to optimise for reduced database size and overhead than minimal transfer size (the `blockIndexing` attribute on folder configuration). - GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long. The cookie path can also be adjusted. (The `sessionCookieDurationS` and `sessionCookiePath` attributes in the GUI configuration.) This release is also available as: * APT repository: https://apt.syncthing.net/ * Docker image: `docker.io/syncthing/syncthing:2.1.3-rc.2` or `ghcr.io/syncthing/syncthing:2.1.3-rc.2` (`{docker,ghcr}.io/syncthing/syncthing:2` to follow just the major version) ##### What's Changed ###### Fixes * fix(ignore, fs): allow loading ignore patterns behind symlink (fixes #10785) by @calmh in https://github.com/syncthing/syncthing/pull/10786 * fix: avoid warning on does-not-exist scan error (fixes #10465) by @calmh in https://github.com/syncthing/syncthing/pull/10791 * fix(strelaypoolsrv): locking correctness by @calmh in https://github.com/syncthing/syncthing/pull/10801 * fix(model): properly health-check up-to-date folders (fixes #10546) by @calmh in https://github.com/syncthing/syncthing/pull/10773 * fix(gui): fix expanding one folder not collapsing others in group by @tbodt in https://github.com/syncthing/syncthing/pull/10809 * fix(gui): add bottom margin to folder action buttons for wrapped spacing by @rohitanwar in https://github.com/syncthing/syncthing/pull/10728 * fix(upnp): guard against out of index string access by @calmh in https://github.com/syncthing/syncthing/pull/10834 * fix(ignore): handle pattern resulting in empty string by @calmh in https://github.com/syncthing/syncthing/pull/10835 * fix(versioner): handle invalid empty command by @calmh in https://github.com/syncthing/syncthing/pull/10836 * fix(api): handle empty path in static request by @calmh in https://github.com/syncthing/syncthing/pull/10837 ###### Other * chore(fs): use x/sys/windows where possible by @greatroar in https://github.com/syncthing/syncthing/pull/10766 * chore(model): simplify FileInfoBatch size computation by @calmh in https://github.com/syncthing/syncthing/pull/10776 * build: allow inotify on Android amd64 (ref #8710) by @chenxiaolong in https://github.com/syncthing/syncthing/pull/10783 * chore: fix a couple of unclosed http connections by @calmh in https://github.com/syncthing/syncthing/pull/10806 * chore(gui): lazy-render collapsed panels to reduce watcher count by @Finomosec in https://github.com/syncthing/syncthing/pull/10772 * build(deps): update dependencies by @calmh in https://github.com/syncthing/syncthing/pull/10824 * chore: new code contribution guidelines by @calmh in https://github.com/syncthing/syncthing/pull/10821 * chore: remove ignore file caching entirely by @calmh in https://github.com/syncthing/syncthing/pull/10813 * chore: slightly optimise rename detection (ref #10777) by @calmh in https://github.com/syncthing/syncthing/pull/10819 * chore(gui): better describe when a pending folder/device notification will reappear by @tbodt in https://github.com/syncthing/syncthing/pull/10808 * chore: deflake TestRecvOnlyRevertNeeds by @calmh in https://github.com/syncthing/syncthing/pull/10827 * chore(model): don't check existing file twice in rename detection by @imsodin in https://github.com/syncthing/syncthing/pull/10833 * chore(fs): optimise casefs caching performance by @calmh in https://github.com/syncthing/syncthing/pull/10830 * chore(model): optimise fsync calls by @calmh in https://github.com/syncthing/syncthing/pull/10831 * chore(syncthing): include local db entries _[Truncated at 4000 characters — full notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.3-rc.2]_ ### v2.1.3-rc.1 - Date: 2026-07-21 - Version: v2.1.3-rc.1 - Original notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.3-rc.1 - Permalink: https://whatsnew.fyi/product/syncthing/releases/v2.1.3-rc.1 - Labels: Pre-release - **added** — Devices and folders can now be grouped in the GUI by setting the new group attribute - **added** — HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies - **added** — Block indexing can be turned off for folders where it is more desirable to optimise for reduced database size and overhead than minimal transfer size via the blockIndexing attribute on folder configuration - **added** — GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long via the sessionCookieDurationS and sessionCookiePath attributes in the GUI configuration - **fixed** — Allow loading ignore patterns behind symlink - **fixed** — Avoid warning on does-not-exist scan error - **fixed** — Fix locking correctness in strelaypoolsrv - **fixed** — Properly health-check up-to-date folders - **fixed** — Fix expanding one folder not collapsing others in group in the GUI ##### Major changes in 2.1 - Devices and folders can now be grouped in the GUI by setting the new `group` attribute. - HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies (the environment variable `all_proxy=https://...`). - Block indexing can be turned off for folders where it's more desirable to optimise for reduced database size and overhead than minimal transfer size (the `blockIndexing` attribute on folder configuration). - GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long. The cookie path can also be adjusted. (The `sessionCookieDurationS` and `sessionCookiePath` attributes in the GUI configuration.) This release is also available as: * APT repository: https://apt.syncthing.net/ * Docker image: `docker.io/syncthing/syncthing:2.1.3-rc.1` or `ghcr.io/syncthing/syncthing:2.1.3-rc.1` (`{docker,ghcr}.io/syncthing/syncthing:2` to follow just the major version) ##### What's Changed ###### Fixes * fix(ignore, fs): allow loading ignore patterns behind symlink (fixes #10785) by @calmh in https://github.com/syncthing/syncthing/pull/10786 * fix: avoid warning on does-not-exist scan error (fixes #10465) by @calmh in https://github.com/syncthing/syncthing/pull/10791 * fix(strelaypoolsrv): locking correctness by @calmh in https://github.com/syncthing/syncthing/pull/10801 * fix(model): properly health-check up-to-date folders (fixes #10546) by @calmh in https://github.com/syncthing/syncthing/pull/10773 * fix(gui): fix expanding one folder not collapsing others in group by @tbodt in https://github.com/syncthing/syncthing/pull/10809 ###### Other * chore(fs): use x/sys/windows where possible by @greatroar in https://github.com/syncthing/syncthing/pull/10766 * chore(model): simplify FileInfoBatch size computation by @calmh in https://github.com/syncthing/syncthing/pull/10776 * build: allow inotify on Android amd64 (ref #8710) by @chenxiaolong in https://github.com/syncthing/syncthing/pull/10783 * chore: fix a couple of unclosed http connections by @calmh in https://github.com/syncthing/syncthing/pull/10806 * chore(gui): lazy-render collapsed panels to reduce watcher count by @Finomosec in https://github.com/syncthing/syncthing/pull/10772 ##### New Contributors * @chenxiaolong made their first contribution in https://github.com/syncthing/syncthing/pull/10783 * @Finomosec made their first contribution in https://github.com/syncthing/syncthing/pull/10772 * @tbodt made their first contribution in https://github.com/syncthing/syncthing/pull/10809 **Full Changelog**: https://github.com/syncthing/syncthing/compare/v2.1.2...v2.1.3-rc.1 ### v2.1.2 - Date: 2026-07-08 - Version: v2.1.2 - Original notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.2 - Permalink: https://whatsnew.fyi/product/syncthing/releases/v2.1.2 - **added** — Devices and folders can now be grouped in the GUI by setting the new group attribute - **added** — HTTP and HTTPS proxies with support for CONNECT can now be used in addition to SOCKS proxies via the all_proxy environment variable - **added** — Block indexing can be turned off for folders to optimize for reduced database size and overhead via the blockIndexing attribute on folder configuration - **added** — GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long, via the sessionCookieDurationS and sessionCookiePath attributes in GUI configuration - **fixed** — On Windows don't allocate console if not opened inside one - **fixed** — Do not report connection metrics for self - **fixed** — Let umask do the thing - **fixed** — Improve symlink resilience in file shortcut - **fixed** — Always expect and validate block hash in requests - **fixed** — Be more stringent about blocks in non-file entries - **fixed** — Loosen restriction on size of directory entries - **fixed** — Check if context canceled when scanning - **fixed** — Remove extraneous defaults setting while unmarshalling folder options - **fixed** — Update last migration to set schema version and counts - **changed** — Open URLs via Windows API instead of cmd.exe - **changed** — Increase default value for num hashers - **changed** — Stop treating dirs as having size 128 - **security** — Attempt to prevent blatantly unsafe external versioner commands ##### Major changes in 2.1 - Devices and folders can now be grouped in the GUI by setting the new `group` attribute. - HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies (the environment variable `all_proxy=https://...`). - Block indexing can be turned off for folders where it's more desirable to optimise for reduced database size and overhead than minimal transfer size (the `blockIndexing` attribute on folder configuration). - GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long. The cookie path can also be adjusted. (The `sessionCookieDurationS` and `sessionCookiePath` attributes in the GUI configuration.) This release is also available as: * APT repository: https://apt.syncthing.net/ * Docker image: `docker.io/syncthing/syncthing:2.1.2` or `ghcr.io/syncthing/syncthing:2.1.2` (`{docker,ghcr}.io/syncthing/syncthing:2` to follow just the major version) ##### What's Changed ###### Fixes * fix: on Windows don't allocate console if not opened inside one by @Shablone in https://github.com/syncthing/syncthing/pull/10726 * fix(connections): do not report connection metrics for self (ref #10509) by @calmh in https://github.com/syncthing/syncthing/pull/10724 * fix: let umask do the thing by @calmh in https://github.com/syncthing/syncthing/pull/10723 * fix(fs, model): improve symlink resilience in file shortcut by @calmh in https://github.com/syncthing/syncthing/pull/10739 * fix(protocol): always expect & validate block hash in requests by @calmh in https://github.com/syncthing/syncthing/pull/10738 * fix(protocol): be more stringent about blocks in non-file entries by @calmh in https://github.com/syncthing/syncthing/pull/10737 * fix(protocol): loosen restriction on size of directory entries by @calmh in https://github.com/syncthing/syncthing/pull/10743 * fix(folder): check if context canceled when scanning (fixes #10363) by @henriksb1 in https://github.com/syncthing/syncthing/pull/10757 * fix(config): remove extraneous defaults setting while unmarshalling folder options (fixes #10746, fixes #10389) by @calmh in https://github.com/syncthing/syncthing/pull/10763 * fix(sqlite): update last migration to set schema version, counts by @calmh in https://github.com/syncthing/syncthing/pull/10768 ###### Other * chore(syncthing): open URLs via Windows API instead via cmd.exe by @Shablone in https://github.com/syncthing/syncthing/pull/10712 * chore(db, model): separate methods to drop a device vs its files by @imsodin in https://github.com/syncthing/syncthing/pull/10480 * build(deps): update dependencies by @calmh in https://github.com/syncthing/syncthing/pull/10740 * build: use Go 1.26 for Windows as well by @calmh in https://github.com/syncthing/syncthing/pull/10744 * chore(osutil): fixup test for symlinked folder root by @calmh in https://github.com/syncthing/syncthing/pull/10758 * chore(model): increase default value for num hashers by @calmh in https://github.com/syncthing/syncthing/pull/10761 * chore: stop treating dirs as having size 128 by @imsodin in https://github.com/syncthing/syncthing/pull/10750 * chore(versioner): attempt to prevent blatantly unsafe external versioner commands (fixes #10721) by @calmh in https://github.com/syncthing/syncthing/pull/10722 ##### New Contributors * @Shablone made their first contribution in https://github.com/syncthing/syncthing/pull/10712 * @henriksb1 made their first contribution in https://github.com/syncthing/syncthing/pull/10757 **Full Changelog**: https://github.com/syncthing/syncthing/compare/v2.1.1...v2.1.2 ### v2.1.2-rc.4 - Date: 2026-06-26 - Version: v2.1.2-rc.4 - Original notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.2-rc.4 - Permalink: https://whatsnew.fyi/product/syncthing/releases/v2.1.2-rc.4 - Labels: Pre-release - **added** — Devices and folders can now be grouped in the GUI by setting the new group attribute - **added** — HTTP and HTTPS proxies with support for CONNECT can now be used in addition to existing SOCKS proxy support via the all_proxy environment variable - **added** — Block indexing can be turned off for folders to optimise for reduced database size and overhead via the blockIndexing attribute on folder configuration - **added** — GUI login session duration can be configured to be longer or shorter than the default one week or set to infinitely long via the sessionCookieDurationS and sessionCookiePath attributes in GUI configuration - **fixed** — On Windows do not allocate console if not opened inside one - **fixed** — Do not report connection metrics for self - **fixed** — Let umask do the thing - **fixed** — Improve symlink resilience in file shortcut - **fixed** — Always expect and validate block hash in requests - **fixed** — Be more stringent about blocks in non-file entries - **fixed** — Loosen restriction on size of directory entries - **fixed** — Check if context canceled when scanning - **fixed** — Remove extraneous defaults setting while unmarshalling folder options - **fixed** — Update last migration to set schema version and counts - **changed** — Open URLs via Windows API instead via cmd.exe - **changed** — Increase default value for num hashers - **changed** — Stop treating directories as having size 128 - **changed** — Attempt to prevent blatantly unsafe external versioner commands ##### Major changes in 2.1 - Devices and folders can now be grouped in the GUI by setting the new `group` attribute. - HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies (the environment variable `all_proxy=https://...`). - Block indexing can be turned off for folders where it's more desirable to optimise for reduced database size and overhead than minimal transfer size (the `blockIndexing` attribute on folder configuration). - GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long. The cookie path can also be adjusted. (The `sessionCookieDurationS` and `sessionCookiePath` attributes in the GUI configuration.) This release is also available as: * APT repository: https://apt.syncthing.net/ * Docker image: `docker.io/syncthing/syncthing:2.1.2-rc.4` or `ghcr.io/syncthing/syncthing:2.1.2-rc.4` (`{docker,ghcr}.io/syncthing/syncthing:2` to follow just the major version) ##### What's Changed ###### Fixes * fix: on Windows don't allocate console if not opened inside one by @Shablone in https://github.com/syncthing/syncthing/pull/10726 * fix(connections): do not report connection metrics for self (ref #10509) by @calmh in https://github.com/syncthing/syncthing/pull/10724 * fix: let umask do the thing by @calmh in https://github.com/syncthing/syncthing/pull/10723 * fix(fs, model): improve symlink resilience in file shortcut by @calmh in https://github.com/syncthing/syncthing/pull/10739 * fix(protocol): always expect & validate block hash in requests by @calmh in https://github.com/syncthing/syncthing/pull/10738 * fix(protocol): be more stringent about blocks in non-file entries by @calmh in https://github.com/syncthing/syncthing/pull/10737 * fix(protocol): loosen restriction on size of directory entries by @calmh in https://github.com/syncthing/syncthing/pull/10743 * fix(folder): check if context canceled when scanning (fixes #10363) by @henriksb1 in https://github.com/syncthing/syncthing/pull/10757 * fix(config): remove extraneous defaults setting while unmarshalling folder options (fixes #10746, fixes #10389) by @calmh in https://github.com/syncthing/syncthing/pull/10763 * fix(sqlite): update last migration to set schema version, counts by @calmh in https://github.com/syncthing/syncthing/pull/10768 ###### Other * chore(syncthing): open URLs via Windows API instead via cmd.exe by @Shablone in https://github.com/syncthing/syncthing/pull/10712 * chore(db, model): separate methods to drop a device vs its files by @imsodin in https://github.com/syncthing/syncthing/pull/10480 * build(deps): update dependencies by @calmh in https://github.com/syncthing/syncthing/pull/10740 * build: use Go 1.26 for Windows as well by @calmh in https://github.com/syncthing/syncthing/pull/10744 * chore(osutil): fixup test for symlinked folder root by @calmh in https://github.com/syncthing/syncthing/pull/10758 * chore(model): increase default value for num hashers by @calmh in https://github.com/syncthing/syncthing/pull/10761 * chore: stop treating dirs as having size 128 by @imsodin in https://github.com/syncthing/syncthing/pull/10750 * chore(versioner): attempt to prevent blatantly unsafe external versioner commands (fixes #10721) by @calmh in https://github.com/syncthing/syncthing/pull/10722 ##### New Contributors * @Shablone made their first contribution in https://github.com/syncthing/syncthing/pull/10712 * @henriksb1 made their first contribution in https://github.com/syncthing/syncthing/pull/10757 **Full Changelog**: https://github.com/syncthing/syncthing/compare/v2.1.1...v2.1.2-rc.4 ### v2.1.2-rc.3 - Date: 2026-06-23 - Version: v2.1.2-rc.3 - Original notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.2-rc.3 - Permalink: https://whatsnew.fyi/product/syncthing/releases/v2.1.2-rc.3 - Labels: Pre-release - **added** — Devices and folders can now be grouped in the GUI by setting the new group attribute - **added** — HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies - **added** — Block indexing can be turned off for folders where it's more desirable to optimise for reduced database size and overhead than minimal transfer size - **added** — GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long - **added** — The cookie path can also be adjusted in GUI configuration - **fixed** — On Windows don't allocate console if not opened inside one - **fixed** — Do not report connection metrics for self - **fixed** — Let umask do the thing - **fixed** — Improve symlink resilience in file shortcut - **fixed** — Always expect and validate block hash in requests - **fixed** — Be more stringent about blocks in non-file entries - **fixed** — Loosen restriction on size of directory entries - **fixed** — Check if context canceled when scanning - **fixed** — Remove extraneous defaults setting while unmarshalling folder options - **changed** — Open URLs via Windows API instead via cmd.exe - **changed** — Separate methods to drop a device vs its files - **changed** — Increase default value for num hashers - **changed** — Stop treating dirs as having size 128 - **security** — Attempt to prevent blatantly unsafe external versioner commands ##### Major changes in 2.1 - Devices and folders can now be grouped in the GUI by setting the new `group` attribute. - HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies (the environment variable `all_proxy=https://...`). - Block indexing can be turned off for folders where it's more desirable to optimise for reduced database size and overhead than minimal transfer size (the `blockIndexing` attribute on folder configuration). - GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long. The cookie path can also be adjusted. (The `sessionCookieDurationS` and `sessionCookiePath` attributes in the GUI configuration.) This release is also available as: * APT repository: https://apt.syncthing.net/ * Docker image: `docker.io/syncthing/syncthing:2.1.2-rc.3` or `ghcr.io/syncthing/syncthing:2.1.2-rc.3` (`{docker,ghcr}.io/syncthing/syncthing:2` to follow just the major version) ##### What's Changed ###### Fixes * fix: on Windows don't allocate console if not opened inside one by @Shablone in https://github.com/syncthing/syncthing/pull/10726 * fix(connections): do not report connection metrics for self (ref #10509) by @calmh in https://github.com/syncthing/syncthing/pull/10724 * fix: let umask do the thing by @calmh in https://github.com/syncthing/syncthing/pull/10723 * fix(fs, model): improve symlink resilience in file shortcut by @calmh in https://github.com/syncthing/syncthing/pull/10739 * fix(protocol): always expect & validate block hash in requests by @calmh in https://github.com/syncthing/syncthing/pull/10738 * fix(protocol): be more stringent about blocks in non-file entries by @calmh in https://github.com/syncthing/syncthing/pull/10737 * fix(protocol): loosen restriction on size of directory entries by @calmh in https://github.com/syncthing/syncthing/pull/10743 * fix(folder): check if context canceled when scanning (fixes #10363) by @henriksb1 in https://github.com/syncthing/syncthing/pull/10757 * fix(config): remove extraneous defaults setting while unmarshalling folder options (fixes #10746, fixes #10389) by @calmh in https://github.com/syncthing/syncthing/pull/10763 ###### Other * chore(syncthing): open URLs via Windows API instead via cmd.exe by @Shablone in https://github.com/syncthing/syncthing/pull/10712 * chore(db, model): separate methods to drop a device vs its files by @imsodin in https://github.com/syncthing/syncthing/pull/10480 * build(deps): update dependencies by @calmh in https://github.com/syncthing/syncthing/pull/10740 * build: use Go 1.26 for Windows as well by @calmh in https://github.com/syncthing/syncthing/pull/10744 * chore(osutil): fixup test for symlinked folder root by @calmh in https://github.com/syncthing/syncthing/pull/10758 * chore(model): increase default value for num hashers by @calmh in https://github.com/syncthing/syncthing/pull/10761 * chore: stop treating dirs as having size 128 by @imsodin in https://github.com/syncthing/syncthing/pull/10750 * chore(versioner): attempt to prevent blatantly unsafe external versioner commands (fixes #10721) by @calmh in https://github.com/syncthing/syncthing/pull/10722 ##### New Contributors * @Shablone made their first contribution in https://github.com/syncthing/syncthing/pull/10712 * @henriksb1 made their first contribution in https://github.com/syncthing/syncthing/pull/10757 **Full Changelog**: https://github.com/syncthing/syncthing/compare/v2.1.1...v2.1.2-rc.3 ### v2.1.2-rc.2 - Date: 2026-06-13 - Version: v2.1.2-rc.2 - Original notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.2-rc.2 - Permalink: https://whatsnew.fyi/product/syncthing/releases/v2.1.2-rc.2 - Labels: Pre-release - **added** — Devices and folders can now be grouped in the GUI by setting the new group attribute - **added** — HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies via the all_proxy environment variable - **added** — Block indexing can be turned off for folders to optimize for reduced database size and overhead via the blockIndexing attribute on folder configuration - **added** — GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long via the sessionCookieDurationS attribute in GUI configuration - **added** — GUI session cookie path can be adjusted via the sessionCookiePath attribute in GUI configuration - **fixed** — On Windows do not allocate console if not opened inside one - **fixed** — Do not report connection metrics for self - **fixed** — Let umask do the thing - **fixed** — Improve symlink resilience in file shortcut - **fixed** — Always expect and validate block hash in requests - **fixed** — Be more stringent about blocks in non-file entries - **fixed** — Loosen restriction on size of directory entries - **changed** — Open URLs via Windows API instead via cmd.exe ##### Major changes in 2.1 - Devices and folders can now be grouped in the GUI by setting the new `group` attribute. - HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies (the environment variable `all_proxy=https://...`). - Block indexing can be turned off for folders where it's more desirable to optimise for reduced database size and overhead than minimal transfer size (the `blockIndexing` attribute on folder configuration). - GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long. The cookie path can also be adjusted. (The `sessionCookieDurationS` and `sessionCookiePath` attributes in the GUI configuration.) This release is also available as: * APT repository: https://apt.syncthing.net/ * Docker image: `docker.io/syncthing/syncthing:2.1.2-rc.2` or `ghcr.io/syncthing/syncthing:2.1.2-rc.2` (`{docker,ghcr}.io/syncthing/syncthing:2` to follow just the major version) ##### What's Changed ###### Fixes * fix: on Windows don't allocate console if not opened inside one by @Shablone in https://github.com/syncthing/syncthing/pull/10726 * fix(connections): do not report connection metrics for self (ref #10509) by @calmh in https://github.com/syncthing/syncthing/pull/10724 * fix: let umask do the thing by @calmh in https://github.com/syncthing/syncthing/pull/10723 * fix(fs, model): improve symlink resilience in file shortcut by @calmh in https://github.com/syncthing/syncthing/pull/10739 * fix(protocol): always expect & validate block hash in requests by @calmh in https://github.com/syncthing/syncthing/pull/10738 * fix(protocol): be more stringent about blocks in non-file entries by @calmh in https://github.com/syncthing/syncthing/pull/10737 * fix(protocol): loosen restriction on size of directory entries by @calmh in https://github.com/syncthing/syncthing/pull/10743 ###### Other * chore(syncthing): open URLs via Windows API instead via cmd.exe by @Shablone in https://github.com/syncthing/syncthing/pull/10712 * chore(db, model): separate methods to drop a device vs its files by @imsodin in https://github.com/syncthing/syncthing/pull/10480 * build(deps): update dependencies by @calmh in https://github.com/syncthing/syncthing/pull/10740 ##### New Contributors * @Shablone made their first contribution in https://github.com/syncthing/syncthing/pull/10712 **Full Changelog**: https://github.com/syncthing/syncthing/compare/v2.1.1...v2.1.2-rc.2 ### v2.1.2-rc.1 - Date: 2026-06-12 - Version: v2.1.2-rc.1 - Original notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.2-rc.1 - Permalink: https://whatsnew.fyi/product/syncthing/releases/v2.1.2-rc.1 - Labels: Pre-release - **added** — Devices and folders can now be grouped in the GUI by setting the new group attribute - **added** — HTTP and HTTPS proxies with support for CONNECT can now be used in addition to existing SOCKS proxy support via the all_proxy environment variable - **added** — Block indexing can be turned off for folders to optimise for reduced database size and overhead via the blockIndexing attribute on folder configuration - **added** — GUI login session duration can be configured to be longer or shorter than the default one week or set to infinitely long via the sessionCookieDurationS and sessionCookiePath attributes in GUI configuration - **fixed** — On Windows do not allocate console if not opened inside one - **fixed** — Do not report connection metrics for self - **fixed** — Let umask do the thing - **fixed** — Improve symlink resilience in file shortcut - **fixed** — Always expect and validate block hash in requests - **fixed** — Be more stringent about blocks in non-file entries - **changed** — Open URLs via Windows API instead of cmd.exe ##### Major changes in 2.1 - Devices and folders can now be grouped in the GUI by setting the new `group` attribute. - HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies (the environment variable `all_proxy=https://...`). - Block indexing can be turned off for folders where it's more desirable to optimise for reduced database size and overhead than minimal transfer size (the `blockIndexing` attribute on folder configuration). - GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long. The cookie path can also be adjusted. (The `sessionCookieDurationS` and `sessionCookiePath` attributes in the GUI configuration.) This release is also available as: * APT repository: https://apt.syncthing.net/ * Docker image: `docker.io/syncthing/syncthing:2.1.2-rc.1` or `ghcr.io/syncthing/syncthing:2.1.2-rc.1` (`{docker,ghcr}.io/syncthing/syncthing:2` to follow just the major version) ##### What's Changed ###### Fixes * fix: on Windows don't allocate console if not opened inside one by @Shablone in https://github.com/syncthing/syncthing/pull/10726 * fix(connections): do not report connection metrics for self (ref #10509) by @calmh in https://github.com/syncthing/syncthing/pull/10724 * fix: let umask do the thing by @calmh in https://github.com/syncthing/syncthing/pull/10723 * fix(fs, model): improve symlink resilience in file shortcut by @calmh in https://github.com/syncthing/syncthing/pull/10739 * fix(protocol): always expect & validate block hash in requests by @calmh in https://github.com/syncthing/syncthing/pull/10738 * fix(protocol): be more stringent about blocks in non-file entries by @calmh in https://github.com/syncthing/syncthing/pull/10737 ###### Other * chore(syncthing): open URLs via Windows API instead via cmd.exe by @Shablone in https://github.com/syncthing/syncthing/pull/10712 * chore(db, model): separate methods to drop a device vs its files by @imsodin in https://github.com/syncthing/syncthing/pull/10480 * build(deps): update dependencies by @calmh in https://github.com/syncthing/syncthing/pull/10740 ##### New Contributors * @Shablone made their first contribution in https://github.com/syncthing/syncthing/pull/10712 **Full Changelog**: https://github.com/syncthing/syncthing/compare/v2.1.1...v2.1.2-rc.1 ### v2.1.1 - Date: 2026-06-02 - Version: v2.1.1 - Original notes: https://github.com/syncthing/syncthing/releases/tag/v2.1.1 - Permalink: https://whatsnew.fyi/product/syncthing/releases/v2.1.1 - **added** — Devices and folders can now be grouped in the GUI by setting the new group attribute - **added** — HTTP and HTTPS proxies with support for CONNECT can now be used in addition to SOCKS proxies via the all_proxy environment variable - **added** — Block indexing can be turned off for folders via the blockIndexing attribute on folder configuration to optimize for reduced database size and overhead - **added** — GUI login session duration can be configured with the sessionCookieDurationS and sessionCookiePath attributes in the GUI configuration - **fixed** — Properly upgrade via REST when Syncthing is running - **fixed** — Ensure user read/write/execute permissions on archived directories in versioner - **fixed** — Only announce wildcard for TCP punching when listening on wildcard address - **fixed** — Close source loader responses on errors in stcrashreceiver - **fixed** — Handle zero-size requests in protocol ##### Major changes in 2.1 - Devices and folders can now be grouped in the GUI by setting the new `group` attribute. - HTTP and HTTPS proxies with support for CONNECT can now be used, in addition to the existing support for SOCKS proxies (the environment variable `all_proxy=https://...`). - Block indexing can be turned off for folders where it's more desirable to optimise for reduced database size and overhead than minimal transfer size (the `blockIndexing` attribute on folder configuration). - GUI login session duration can be configured to be longer or shorter than the default one week, or set to infinitely long. The cookie path can also be adjusted. (The `sessionCookieDurationS` and `sessionCookiePath` attributes in the GUI configuration.) This release is also available as: * APT repository: https://apt.syncthing.net/ * Docker image: `docker.io/syncthing/syncthing:2.1.1` or `ghcr.io/syncthing/syncthing:2.1.1` (`{docker,ghcr}.io/syncthing/syncthing:2` to follow just the major version) ##### What's Changed ###### Fixes * fix(syncthing): properly upgrade via REST when Syncthing is running (fixes #10697) by @calmh in https://github.com/syncthing/syncthing/pull/10699 * fix(versioner): ensure user read/write/execute on archived dirs (fixes #10532) by @calmh in https://github.com/syncthing/syncthing/pull/10696 * fix(discover): only announce wildcard for TCP punching when listening on wildcard address (fixes #10503) by @calmh in https://github.com/syncthing/syncthing/pull/10691 * fix(stcrashreceiver): close source loader responses on errors by @mattn in https://github.com/syncthing/syncthing/pull/10704 * fix(protocol): handle zero-size requests (fixes #10709) by @calmh in https://github.com/syncthing/syncthing/pull/10710 ###### Other * build: be explicit about workflow permissions by @calmh in https://github.com/syncthing/syncthing/pull/10690 * chore(syncthing): include runtime context in GC crashes by @calmh in https://github.com/syncthing/syncthing/pull/10702 * build(deps): x/net for govulncheck by @calmh in https://github.com/syncthing/syncthing/pull/10703 * chore: use path/filepath for local file system paths by @mattn in https://github.com/syncthing/syncthing/pull/10705 ##### New Contributors * @mattn made their first contribution in https://github.com/syncthing/syncthing/pull/10704 **Full Changelog**: https://github.com/syncthing/syncthing/compare/v2.1.0...v2.1.1