Releases: syncthing/syncthing
Release list
v2.1.4-rc.2
Major changes in 2.1
-
Devices and folders can now be grouped in the GUI by setting the new
groupattribute. -
HTTP and HTTPS proxies with support for CONNECT can now be used, in
addition to the existing support for SOCKS proxies (the environment
variableall_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 (theblockIndexingattribute 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. (ThesessionCookieDurationSandsessionCookiePath
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.4-rc.2orghcr.io/syncthing/syncthing:2.1.4-rc.2
({docker,ghcr}.io/syncthing/syncthing:2to follow just the major version)
What's Changed
Fixes
- fix(model): correctly handle receive-only changed directories (fixes #8004) by @calmh in #10843
- fix(api): correctly return metrics, support bundle (fixes #10847) by @calmh in #10849
- fix: open GUI when relaunched instead of printing error (fixes #10727) by @calmh in #10852
Other
- chore: style fixes from
go fixby @calmh in #10846 - build: use Go 1.27, minimum version is Go 1.26 by @calmh in #10864
- build(deps): update dependencies by @calmh in #10865
- chore: set User-Agent on all outgoing HTTP requests by @calmh in #10867
Full Changelog: v2.1.3...v2.1.4-rc.2
v2.1.4-rc.1
Major changes in 2.1
-
Devices and folders can now be grouped in the GUI by setting the new
groupattribute. -
HTTP and HTTPS proxies with support for CONNECT can now be used, in
addition to the existing support for SOCKS proxies (the environment
variableall_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 (theblockIndexingattribute 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. (ThesessionCookieDurationSandsessionCookiePath
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.4-rc.1orghcr.io/syncthing/syncthing:2.1.4-rc.1
({docker,ghcr}.io/syncthing/syncthing:2to follow just the major version)
What's Changed
Fixes
- fix(model): correctly handle receive-only changed directories (fixes #8004) by @calmh in #10843
- fix(api): correctly return metrics, support bundle (fixes #10847) by @calmh in #10849
- fix: open GUI when relaunched instead of printing error (fixes #10727) by @calmh in #10852
Other
Full Changelog: v2.1.3...v2.1.4-rc.1
v2.1.3
Major changes in 2.1
-
Devices and folders can now be grouped in the GUI by setting the new
groupattribute. -
HTTP and HTTPS proxies with support for CONNECT can now be used, in
addition to the existing support for SOCKS proxies (the environment
variableall_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 (theblockIndexingattribute 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. (ThesessionCookieDurationSandsessionCookiePath
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.3orghcr.io/syncthing/syncthing:2.1.3
({docker,ghcr}.io/syncthing/syncthing:2to follow just the major version)
What's Changed
Fixes
- fix(ignore, fs): allow loading ignore patterns behind symlink (fixes #10785) by @calmh in #10786
- fix: avoid warning on does-not-exist scan error (fixes #10465) by @calmh in #10791
- fix(strelaypoolsrv): locking correctness by @calmh in #10801
- fix(model): properly health-check up-to-date folders (fixes #10546) by @calmh in #10773
- fix(gui): fix expanding one folder not collapsing others in group by @tbodt in #10809
- fix(gui): add bottom margin to folder action buttons for wrapped spacing by @rohitanwar in #10728
- fix(upnp): guard against out of index string access by @calmh in #10834
- fix(ignore): handle pattern resulting in empty string by @calmh in #10835
- fix(versioner): handle invalid empty command by @calmh in #10836
- fix(api): handle empty path in static request by @calmh in #10837
- fix(db, model): better handle db connections, puller concurrency, avoid deadlock (fixes #10841) by @calmh in #10842
Other
- chore(fs): use x/sys/windows where possible by @greatroar in #10766
- chore(model): simplify FileInfoBatch size computation by @calmh in #10776
- build: allow inotify on Android amd64 (ref #8710) by @chenxiaolong in #10783
- chore: fix a couple of unclosed http connections by @calmh in #10806
- chore(gui): lazy-render collapsed panels to reduce watcher count by @Finomosec in #10772
- build(deps): update dependencies by @calmh in #10824
- chore: new code contribution guidelines by @calmh in #10821
- chore: remove ignore file caching entirely by @calmh in #10813
- chore: slightly optimise rename detection (ref #10777) by @calmh in #10819
- chore(gui): better describe when a pending folder/device notification will reappear by @tbodt in #10808
- chore: deflake TestRecvOnlyRevertNeeds by @calmh in #10827
- chore(model): don't check existing file twice in rename detection by @imsodin in #10833
- chore(fs): optimise casefs caching performance by @calmh in #10830
- chore(model): optimise fsync calls by @calmh in #10831
- chore(syncthing): include local db entries in perfstats by @calmh in #10839
New Contributors
- @chenxiaolong made their first contribution in #10783
- @Finomosec made their first contribution in #10772
- @tbodt made their first contribution in #10809
- @rohitanwar made their first contribution in #10728
Full Changelog: v2.1.2...v2.1.3
v2.1.3-rc.3
Major changes in 2.1
-
Devices and folders can now be grouped in the GUI by setting the new
groupattribute. -
HTTP and HTTPS proxies with support for CONNECT can now be used, in
addition to the existing support for SOCKS proxies (the environment
variableall_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 (theblockIndexingattribute 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. (ThesessionCookieDurationSandsessionCookiePath
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.3orghcr.io/syncthing/syncthing:2.1.3-rc.3
({docker,ghcr}.io/syncthing/syncthing:2to follow just the major version)
What's Changed
Fixes
- fix(ignore, fs): allow loading ignore patterns behind symlink (fixes #10785) by @calmh in #10786
- fix: avoid warning on does-not-exist scan error (fixes #10465) by @calmh in #10791
- fix(strelaypoolsrv): locking correctness by @calmh in #10801
- fix(model): properly health-check up-to-date folders (fixes #10546) by @calmh in #10773
- fix(gui): fix expanding one folder not collapsing others in group by @tbodt in #10809
- fix(gui): add bottom margin to folder action buttons for wrapped spacing by @rohitanwar in #10728
- fix(upnp): guard against out of index string access by @calmh in #10834
- fix(ignore): handle pattern resulting in empty string by @calmh in #10835
- fix(versioner): handle invalid empty command by @calmh in #10836
- fix(api): handle empty path in static request by @calmh in #10837
- fix(db, model): better handle db connections, puller concurrency, avoid deadlock (fixes #10841) by @calmh in #10842
Other
- chore(fs): use x/sys/windows where possible by @greatroar in #10766
- chore(model): simplify FileInfoBatch size computation by @calmh in #10776
- build: allow inotify on Android amd64 (ref #8710) by @chenxiaolong in #10783
- chore: fix a couple of unclosed http connections by @calmh in #10806
- chore(gui): lazy-render collapsed panels to reduce watcher count by @Finomosec in #10772
- build(deps): update dependencies by @calmh in #10824
- chore: new code contribution guidelines by @calmh in #10821
- chore: remove ignore file caching entirely by @calmh in #10813
- chore: slightly optimise rename detection (ref #10777) by @calmh in #10819
- chore(gui): better describe when a pending folder/device notification will reappear by @tbodt in #10808
- chore: deflake TestRecvOnlyRevertNeeds by @calmh in #10827
- chore(model): don't check existing file twice in rename detection by @imsodin in #10833
- chore(fs): optimise casefs caching performance by @calmh in #10830
- chore(model): optimise fsync calls by @calmh in #10831
- chore(syncthing): include local db entries in perfstats by @calmh in #10839
New Contributors
- @chenxiaolong made their first contribution in #10783
- @Finomosec made their first contribution in #10772
- @tbodt made their first contribution in #10809
- @rohitanwar made their first contribution in #10728
Full Changelog: v2.1.2...v2.1.3-rc.3
v2.1.3-rc.2
Major changes in 2.1
-
Devices and folders can now be grouped in the GUI by setting the new
groupattribute. -
HTTP and HTTPS proxies with support for CONNECT can now be used, in
addition to the existing support for SOCKS proxies (the environment
variableall_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 (theblockIndexingattribute 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. (ThesessionCookieDurationSandsessionCookiePath
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.2orghcr.io/syncthing/syncthing:2.1.3-rc.2
({docker,ghcr}.io/syncthing/syncthing:2to follow just the major version)
What's Changed
Fixes
- fix(ignore, fs): allow loading ignore patterns behind symlink (fixes #10785) by @calmh in #10786
- fix: avoid warning on does-not-exist scan error (fixes #10465) by @calmh in #10791
- fix(strelaypoolsrv): locking correctness by @calmh in #10801
- fix(model): properly health-check up-to-date folders (fixes #10546) by @calmh in #10773
- fix(gui): fix expanding one folder not collapsing others in group by @tbodt in #10809
- fix(gui): add bottom margin to folder action buttons for wrapped spacing by @rohitanwar in #10728
- fix(upnp): guard against out of index string access by @calmh in #10834
- fix(ignore): handle pattern resulting in empty string by @calmh in #10835
- fix(versioner): handle invalid empty command by @calmh in #10836
- fix(api): handle empty path in static request by @calmh in #10837
Other
- chore(fs): use x/sys/windows where possible by @greatroar in #10766
- chore(model): simplify FileInfoBatch size computation by @calmh in #10776
- build: allow inotify on Android amd64 (ref #8710) by @chenxiaolong in #10783
- chore: fix a couple of unclosed http connections by @calmh in #10806
- chore(gui): lazy-render collapsed panels to reduce watcher count by @Finomosec in #10772
- build(deps): update dependencies by @calmh in #10824
- chore: new code contribution guidelines by @calmh in #10821
- chore: remove ignore file caching entirely by @calmh in #10813
- chore: slightly optimise rename detection (ref #10777) by @calmh in #10819
- chore(gui): better describe when a pending folder/device notification will reappear by @tbodt in #10808
- chore: deflake TestRecvOnlyRevertNeeds by @calmh in #10827
- chore(model): don't check existing file twice in rename detection by @imsodin in #10833
- chore(fs): optimise casefs caching performance by @calmh in #10830
- chore(model): optimise fsync calls by @calmh in #10831
- chore(syncthing): include local db entries in perfstats by @calmh in #10839
New Contributors
- @chenxiaolong made their first contribution in #10783
- @Finomosec made their first contribution in #10772
- @tbodt made their first contribution in #10809
- @rohitanwar made their first contribution in #10728
Full Changelog: v2.1.2...v2.1.3-rc.2
v2.1.3-rc.1
Major changes in 2.1
-
Devices and folders can now be grouped in the GUI by setting the new
groupattribute. -
HTTP and HTTPS proxies with support for CONNECT can now be used, in
addition to the existing support for SOCKS proxies (the environment
variableall_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 (theblockIndexingattribute 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. (ThesessionCookieDurationSandsessionCookiePath
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.1orghcr.io/syncthing/syncthing:2.1.3-rc.1
({docker,ghcr}.io/syncthing/syncthing:2to follow just the major version)
What's Changed
Fixes
- fix(ignore, fs): allow loading ignore patterns behind symlink (fixes #10785) by @calmh in #10786
- fix: avoid warning on does-not-exist scan error (fixes #10465) by @calmh in #10791
- fix(strelaypoolsrv): locking correctness by @calmh in #10801
- fix(model): properly health-check up-to-date folders (fixes #10546) by @calmh in #10773
- fix(gui): fix expanding one folder not collapsing others in group by @tbodt in #10809
Other
- chore(fs): use x/sys/windows where possible by @greatroar in #10766
- chore(model): simplify FileInfoBatch size computation by @calmh in #10776
- build: allow inotify on Android amd64 (ref #8710) by @chenxiaolong in #10783
- chore: fix a couple of unclosed http connections by @calmh in #10806
- chore(gui): lazy-render collapsed panels to reduce watcher count by @Finomosec in #10772
New Contributors
- @chenxiaolong made their first contribution in #10783
- @Finomosec made their first contribution in #10772
- @tbodt made their first contribution in #10809
Full Changelog: v2.1.2...v2.1.3-rc.1
v2.1.2
Major changes in 2.1
-
Devices and folders can now be grouped in the GUI by setting the new
groupattribute. -
HTTP and HTTPS proxies with support for CONNECT can now be used, in
addition to the existing support for SOCKS proxies (the environment
variableall_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 (theblockIndexingattribute 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. (ThesessionCookieDurationSandsessionCookiePath
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.2orghcr.io/syncthing/syncthing:2.1.2
({docker,ghcr}.io/syncthing/syncthing:2to follow just the major version)
What's Changed
Fixes
- fix: on Windows don't allocate console if not opened inside one by @Shablone in #10726
- fix(connections): do not report connection metrics for self (ref #10509) by @calmh in #10724
- fix: let umask do the thing by @calmh in #10723
- fix(fs, model): improve symlink resilience in file shortcut by @calmh in #10739
- fix(protocol): always expect & validate block hash in requests by @calmh in #10738
- fix(protocol): be more stringent about blocks in non-file entries by @calmh in #10737
- fix(protocol): loosen restriction on size of directory entries by @calmh in #10743
- fix(folder): check if context canceled when scanning (fixes #10363) by @henriksb1 in #10757
- fix(config): remove extraneous defaults setting while unmarshalling folder options (fixes #10746, fixes #10389) by @calmh in #10763
- fix(sqlite): update last migration to set schema version, counts by @calmh in #10768
Other
- chore(syncthing): open URLs via Windows API instead via cmd.exe by @Shablone in #10712
- chore(db, model): separate methods to drop a device vs its files by @imsodin in #10480
- build(deps): update dependencies by @calmh in #10740
- build: use Go 1.26 for Windows as well by @calmh in #10744
- chore(osutil): fixup test for symlinked folder root by @calmh in #10758
- chore(model): increase default value for num hashers by @calmh in #10761
- chore: stop treating dirs as having size 128 by @imsodin in #10750
- chore(versioner): attempt to prevent blatantly unsafe external versioner commands (fixes #10721) by @calmh in #10722
New Contributors
- @Shablone made their first contribution in #10712
- @henriksb1 made their first contribution in #10757
Full Changelog: v2.1.1...v2.1.2
v2.1.2-rc.4
Major changes in 2.1
-
Devices and folders can now be grouped in the GUI by setting the new
groupattribute. -
HTTP and HTTPS proxies with support for CONNECT can now be used, in
addition to the existing support for SOCKS proxies (the environment
variableall_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 (theblockIndexingattribute 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. (ThesessionCookieDurationSandsessionCookiePath
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.4orghcr.io/syncthing/syncthing:2.1.2-rc.4
({docker,ghcr}.io/syncthing/syncthing:2to follow just the major version)
What's Changed
Fixes
- fix: on Windows don't allocate console if not opened inside one by @Shablone in #10726
- fix(connections): do not report connection metrics for self (ref #10509) by @calmh in #10724
- fix: let umask do the thing by @calmh in #10723
- fix(fs, model): improve symlink resilience in file shortcut by @calmh in #10739
- fix(protocol): always expect & validate block hash in requests by @calmh in #10738
- fix(protocol): be more stringent about blocks in non-file entries by @calmh in #10737
- fix(protocol): loosen restriction on size of directory entries by @calmh in #10743
- fix(folder): check if context canceled when scanning (fixes #10363) by @henriksb1 in #10757
- fix(config): remove extraneous defaults setting while unmarshalling folder options (fixes #10746, fixes #10389) by @calmh in #10763
- fix(sqlite): update last migration to set schema version, counts by @calmh in #10768
Other
- chore(syncthing): open URLs via Windows API instead via cmd.exe by @Shablone in #10712
- chore(db, model): separate methods to drop a device vs its files by @imsodin in #10480
- build(deps): update dependencies by @calmh in #10740
- build: use Go 1.26 for Windows as well by @calmh in #10744
- chore(osutil): fixup test for symlinked folder root by @calmh in #10758
- chore(model): increase default value for num hashers by @calmh in #10761
- chore: stop treating dirs as having size 128 by @imsodin in #10750
- chore(versioner): attempt to prevent blatantly unsafe external versioner commands (fixes #10721) by @calmh in #10722
New Contributors
- @Shablone made their first contribution in #10712
- @henriksb1 made their first contribution in #10757
Full Changelog: v2.1.1...v2.1.2-rc.4
v2.1.2-rc.3
Major changes in 2.1
-
Devices and folders can now be grouped in the GUI by setting the new
groupattribute. -
HTTP and HTTPS proxies with support for CONNECT can now be used, in
addition to the existing support for SOCKS proxies (the environment
variableall_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 (theblockIndexingattribute 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. (ThesessionCookieDurationSandsessionCookiePath
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.3orghcr.io/syncthing/syncthing:2.1.2-rc.3
({docker,ghcr}.io/syncthing/syncthing:2to follow just the major version)
What's Changed
Fixes
- fix: on Windows don't allocate console if not opened inside one by @Shablone in #10726
- fix(connections): do not report connection metrics for self (ref #10509) by @calmh in #10724
- fix: let umask do the thing by @calmh in #10723
- fix(fs, model): improve symlink resilience in file shortcut by @calmh in #10739
- fix(protocol): always expect & validate block hash in requests by @calmh in #10738
- fix(protocol): be more stringent about blocks in non-file entries by @calmh in #10737
- fix(protocol): loosen restriction on size of directory entries by @calmh in #10743
- fix(folder): check if context canceled when scanning (fixes #10363) by @henriksb1 in #10757
- fix(config): remove extraneous defaults setting while unmarshalling folder options (fixes #10746, fixes #10389) by @calmh in #10763
Other
- chore(syncthing): open URLs via Windows API instead via cmd.exe by @Shablone in #10712
- chore(db, model): separate methods to drop a device vs its files by @imsodin in #10480
- build(deps): update dependencies by @calmh in #10740
- build: use Go 1.26 for Windows as well by @calmh in #10744
- chore(osutil): fixup test for symlinked folder root by @calmh in #10758
- chore(model): increase default value for num hashers by @calmh in #10761
- chore: stop treating dirs as having size 128 by @imsodin in #10750
- chore(versioner): attempt to prevent blatantly unsafe external versioner commands (fixes #10721) by @calmh in #10722
New Contributors
- @Shablone made their first contribution in #10712
- @henriksb1 made their first contribution in #10757
Full Changelog: v2.1.1...v2.1.2-rc.3
v2.1.2-rc.2
Major changes in 2.1
-
Devices and folders can now be grouped in the GUI by setting the new
groupattribute. -
HTTP and HTTPS proxies with support for CONNECT can now be used, in
addition to the existing support for SOCKS proxies (the environment
variableall_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 (theblockIndexingattribute 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. (ThesessionCookieDurationSandsessionCookiePath
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.2orghcr.io/syncthing/syncthing:2.1.2-rc.2
({docker,ghcr}.io/syncthing/syncthing:2to follow just the major version)
What's Changed
Fixes
- fix: on Windows don't allocate console if not opened inside one by @Shablone in #10726
- fix(connections): do not report connection metrics for self (ref #10509) by @calmh in #10724
- fix: let umask do the thing by @calmh in #10723
- fix(fs, model): improve symlink resilience in file shortcut by @calmh in #10739
- fix(protocol): always expect & validate block hash in requests by @calmh in #10738
- fix(protocol): be more stringent about blocks in non-file entries by @calmh in #10737
- fix(protocol): loosen restriction on size of directory entries by @calmh in #10743
Other
- chore(syncthing): open URLs via Windows API instead via cmd.exe by @Shablone in #10712
- chore(db, model): separate methods to drop a device vs its files by @imsodin in #10480
- build(deps): update dependencies by @calmh in #10740
New Contributors
Full Changelog: v2.1.1...v2.1.2-rc.2