All Versions
109
Latest Version
Avg Release Cycle
88 days
Latest Release
0 days ago

Changelog History
Page 1

  • v2.1.2-rc.2 Changes

    June 13, 2026

    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
      0๏ธโƒฃ 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 #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

  • v2.1.2-rc.1 Changes

    June 12, 2026

    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
      0๏ธโƒฃ 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 #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

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

  • v2.1.1 Changes

    June 02, 2026

    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
      0๏ธโƒฃ 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 #10699
    • ๐Ÿ›  fix(versioner): ensure user read/write/execute on archived dirs (fixes #10532) by @calmh in #10696
    • ๐Ÿ›  fix(discover): only announce wildcard for TCP punching when listening on wildcard address (fixes #10503) by @calmh in #10691
    • ๐Ÿ›  fix(stcrashreceiver): close source loader responses on errors by @mattn in #10704
    • ๐Ÿ›  fix(protocol): handle zero-size requests (fixes #10709) by @calmh in #10710

    Other

    • ๐Ÿ— build: be explicit about workflow permissions by @calmh in #10690
    • ๐Ÿ”€ chore(syncthing): include runtime context in GC crashes by @calmh in #10702
    • ๐Ÿ— build(deps): x/net for govulncheck by @calmh in #10703
    • ๐Ÿ”€ chore: use path/filepath for local file system paths by @mattn in #10705

    ๐Ÿ†• New Contributors

    Full Changelog : v2.1.0...v2.1.1

  • v2.1.1-rc.1 Changes

    May 25, 2026

    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
      0๏ธโƒฃ 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-rc.1 or ghcr.io/syncthing/syncthing:2.1.1-rc.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 #10699
    • ๐Ÿ›  fix(versioner): ensure user read/write/execute on archived dirs (fixes #10532) by @calmh in #10696
    • ๐Ÿ›  fix(discover): only announce wildcard for TCP punching when listening on wildcard address (fixes #10503) by @calmh in #10691
    • ๐Ÿ›  fix(stcrashreceiver): close source loader responses on errors by @mattn in #10704
    • ๐Ÿ›  fix(protocol): handle zero-size requests (fixes #10709) by @calmh in #10710

    Other

    • ๐Ÿ— build: be explicit about workflow permissions by @calmh in #10690
    • ๐Ÿ”€ chore(syncthing): include runtime context in GC crashes by @calmh in #10702
    • ๐Ÿ— build(deps): x/net for govulncheck by @calmh in #10703
    • ๐Ÿ”€ chore: use path/filepath for local file system paths by @mattn in #10705

    ๐Ÿ†• New Contributors

    Full Changelog : v2.1.0...v2.1.1-rc.1

  • v2.1.0 Changes

    May 12, 2026

    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
      0๏ธโƒฃ 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.0 or ghcr.io/syncthing/syncthing:2.1.0
      ๐Ÿณ ({docker,ghcr}.io/syncthing/syncthing:2 to follow just the major version)

    What's Changed

    ๐Ÿ›  Fixes

    • ๐Ÿ›  fix(stdiscosrv): close file descriptor on flush error in write by @cuiweixie in #10615
    • ๐Ÿ›  fix(gui): disable autocomplete for folder password by @bt90 in #10342
    • ๐Ÿ›  fix(protocol): limit size of incoming request messages by @calmh in #10629
    • ๐Ÿ›  fix(gui): don't show local device under remote devices (ref #10563) by @maen-bn in #10631
    • ๐Ÿ›  fix(gui): order folders alphabetically and ensure local device stays hidden (ref #10563, ref #10631) by @maen-bn in #10637
    • ๐Ÿ›  fix(gui): fallback to folder ID when label is empty in remove dialog by @RealCharlesChia in #10657
    • ๐Ÿ›  fix(gui): fix tabs visually disabled but still clickable during ignore patterns setup (fixes #10634) by @JRNitre in #10651
    • ๐Ÿ›  fix(strelaysrv): properly use bind address for outgoing requests (fixes #10658) by @calmh in #10659
    • ๐Ÿ›  fix(stdiscosrv): only read certificate proxy headers with --http by @calmh in #10674

    ๐Ÿ”‹ Features

    • ๐Ÿ”€ feat(gui, config): support simple folder grouping (fixes #2070) by @maen-bn in #10563
    • ๐Ÿ”ง feat: make http session cookie path & duration configurable by @vvaswani in #10632
    • ๐Ÿ”€ feat(dialer): add HTTP/HTTPS proxy support via CONNECT by @luizluca in #10572
    • ๐Ÿ”ง feat: make block indexing configurable by @calmh in #10608

    Other

    • ๐Ÿ”€ chore: remove tracking inode change time by @calmh in #10579
    • ๐Ÿ— build(deps): temporarily switch to fork of gateway discovery library (fixes #10593) by @marbens-arch in #10594
    • ๐Ÿ— build: extract github.ref_name expression to env mapping by @dagecko in #10624
    • ๐Ÿ— build: pin 20 third-party actions to immutable commit SHAs by @dagecko in #10625
    • ๐Ÿ— build: have dependabot group PRs and use cooldown by @calmh in #10630
    • ๐Ÿ”€ chore: trivial fixes by @calmh in #10650
    • ๐Ÿ”€ chore(model): more efficient tracking of renames during scan by @calmh in #10653
    • ๐Ÿ”€ chore(model): deflake cluster config tests by @calmh in #10662
    • ๐Ÿ”€ chore(model): deflake TestCompletionEmptyGlobal by @calmh in #10663
    • ๐Ÿ”€ chore(scanner): deflake TestStopWalk by @calmh in #10664
    • ๐Ÿง build: parallelise linux builds slightly by @calmh in #10666
    • ๐Ÿ chore(api): deflake TestHTTPLogin on Windows by @calmh in #10667
    • ๐Ÿ“ฆ chore(api): use ldap package escape functions by @calmh in #10672
    • ๐Ÿ— build: only run the periodic build jobs in the syncthing org by @calmh in #10675
    • โšก๏ธ build(deps): update dependencies by @calmh in #10683
    • ๐Ÿ”€ chore(model): slightly improve handling of pulling empty blocks by @calmh in #10679
    • โฌ†๏ธ chore(gui): upgrade jQuery to 3.7.1 to fix CVE-2020-11022, CVE-2020-11023, CVE-2015-9251 by @Umer-Azaz in #10673
    • ๐Ÿ”€ chore(fs): remove unused SymlinksSupported() method by @calmh in #10684

    ๐Ÿ†• New Contributors

    Full Changelog : v2.0.16...v2.1.0

  • v2.1.0-rc.2 Changes

    May 09, 2026

    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
      0๏ธโƒฃ 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.0-rc.2 or ghcr.io/syncthing/syncthing:2.1.0-rc.2
      ๐Ÿณ ({docker,ghcr}.io/syncthing/syncthing:2 to follow just the major version)

    What's Changed

    ๐Ÿ›  Fixes

    • ๐Ÿ›  fix(stdiscosrv): close file descriptor on flush error in write by @cuiweixie in #10615
    • ๐Ÿ›  fix(gui): disable autocomplete for folder password by @bt90 in #10342
    • ๐Ÿ›  fix(protocol): limit size of incoming request messages by @calmh in #10629
    • ๐Ÿ›  fix(gui): don't show local device under remote devices (ref #10563) by @maen-bn in #10631
    • ๐Ÿ›  fix(gui): order folders alphabetically and ensure local device stays hidden (ref #10563, ref #10631) by @maen-bn in #10637
    • ๐Ÿ›  fix(gui): fallback to folder ID when label is empty in remove dialog by @RealCharlesChia in #10657
    • ๐Ÿ›  fix(gui): fix tabs visually disabled but still clickable during ignore patterns setup (fixes #10634) by @JRNitre in #10651
    • ๐Ÿ›  fix(strelaysrv): properly use bind address for outgoing requests (fixes #10658) by @calmh in #10659
    • ๐Ÿ›  fix(stdiscosrv): only read certificate proxy headers with --http by @calmh in #10674

    ๐Ÿ”‹ Features

    • ๐Ÿ”€ feat(gui, config): support simple folder grouping (fixes #2070) by @maen-bn in #10563
    • ๐Ÿ”ง feat: make http session cookie path & duration configurable by @vvaswani in #10632
    • ๐Ÿ”€ feat(dialer): add HTTP/HTTPS proxy support via CONNECT by @luizluca in #10572
    • ๐Ÿ”ง feat: make block indexing configurable by @calmh in #10608

    Other

    • ๐Ÿ”€ chore: remove tracking inode change time by @calmh in #10579
    • ๐Ÿ— build(deps): temporarily switch to fork of gateway discovery library (fixes #10593) by @marbens-arch in #10594
    • ๐Ÿ— build: extract github.ref_name expression to env mapping by @dagecko in #10624
    • ๐Ÿ— build: pin 20 third-party actions to immutable commit SHAs by @dagecko in #10625
    • ๐Ÿ— build: have dependabot group PRs and use cooldown by @calmh in #10630
    • ๐Ÿ”€ chore: trivial fixes by @calmh in #10650
    • ๐Ÿ”€ chore(model): more efficient tracking of renames during scan by @calmh in #10653
    • ๐Ÿ”€ chore(model): deflake cluster config tests by @calmh in #10662
    • ๐Ÿ”€ chore(model): deflake TestCompletionEmptyGlobal by @calmh in #10663
    • ๐Ÿ”€ chore(scanner): deflake TestStopWalk by @calmh in #10664
    • ๐Ÿง build: parallelise linux builds slightly by @calmh in #10666
    • ๐Ÿ chore(api): deflake TestHTTPLogin on Windows by @calmh in #10667
    • ๐Ÿ“ฆ chore(api): use ldap package escape functions by @calmh in #10672
    • ๐Ÿ— build: only run the periodic build jobs in the syncthing org by @calmh in #10675
    • โšก๏ธ build(deps): update dependencies by @calmh in #10683
    • ๐Ÿ”€ chore(model): slightly improve handling of pulling empty blocks by @calmh in #10679
    • โฌ†๏ธ chore(gui): upgrade jQuery to 3.7.1 to fix CVE-2020-11022, CVE-2020-11023, CVE-2015-9251 by @Umer-Azaz in #10673
    • ๐Ÿ”€ chore(fs): remove unused SymlinksSupported() method by @calmh in #10684

    ๐Ÿ†• New Contributors

    Full Changelog : v2.0.16...v2.1.0-rc.2

  • v2.1.0-rc.1 Changes

    April 26, 2026

    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
      0๏ธโƒฃ 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.0-rc.1 or ghcr.io/syncthing/syncthing:2.1.0-rc.1
      ๐Ÿณ ({docker,ghcr}.io/syncthing/syncthing:2 to follow just the major version)

    What's Changed

    ๐Ÿ›  Fixes

    • ๐Ÿ›  fix(stdiscosrv): close file descriptor on flush error in write by @cuiweixie in #10615
    • ๐Ÿ›  fix(gui): disable autocomplete for folder password by @bt90 in #10342
    • ๐Ÿ›  fix(protocol): limit size of incoming request messages by @calmh in #10629
    • ๐Ÿ›  fix(gui): don't show local device under remote devices (ref #10563) by @maen-bn in #10631
    • ๐Ÿ›  fix(gui): order folders alphabetically and ensure local device stays hidden (ref #10563, ref #10631) by @maen-bn in #10637
    • ๐Ÿ›  fix(gui): fallback to folder ID when label is empty in remove dialog by @RealCharlesChia in #10657
    • ๐Ÿ›  fix(gui): fix tabs visually disabled but still clickable during ignore patterns setup (fixes #10634) by @JRNitre in #10651
    • ๐Ÿ›  fix(strelaysrv): properly use bind address for outgoing requests (fixes #10658) by @calmh in #10659

    ๐Ÿ”‹ Features

    • ๐Ÿ”€ feat(gui, config): support simple folder grouping (fixes #2070) by @maen-bn in #10563
    • ๐Ÿ”ง feat: make http session cookie path & duration configurable by @vvaswani in #10632
    • ๐Ÿ”€ feat(dialer): add HTTP/HTTPS proxy support via CONNECT by @luizluca in #10572
    • ๐Ÿ”ง feat: make block indexing configurable by @calmh in #10608

    Other

    • ๐Ÿ”€ chore: remove tracking inode change time by @calmh in #10579
    • ๐Ÿ— build(deps): temporarily switch to fork of gateway discovery library (fixes #10593) by @marbens-arch in #10594
    • ๐Ÿ— build: extract github.ref_name expression to env mapping by @dagecko in #10624
    • ๐Ÿ— build: pin 20 third-party actions to immutable commit SHAs by @dagecko in #10625
    • ๐Ÿ— build: have dependabot group PRs and use cooldown by @calmh in #10630
    • ๐Ÿ”€ chore: trivial fixes by @calmh in #10650
    • ๐Ÿ”€ chore(model): more efficient tracking of renames during scan by @calmh in #10653
    • ๐Ÿ”€ chore(model): deflake cluster config tests by @calmh in #10662
    • ๐Ÿ”€ chore(model): deflake TestCompletionEmptyGlobal by @calmh in #10663
    • ๐Ÿ”€ chore(scanner): deflake TestStopWalk by @calmh in #10664
    • ๐Ÿง build: parallelise linux builds slightly by @calmh in #10666
    • ๐Ÿ chore(api): deflake TestHTTPLogin on Windows by @calmh in #10667

    ๐Ÿ†• New Contributors

    Full Changelog : v2.0.16...v2.1.0-rc.1

  • v2.0.16 Changes

    April 07, 2026

    Major changes in 2.0

    • Database backend switched from LevelDB to SQLite. There is a migration on
      first launch which can be lengthy for larger setups. The new database is
      easier to understand and maintain and, hopefully, less buggy.

    • ๐ŸŒฒ The logging format has changed to use structured log entries (a message
      ๐ŸŒฒ plus several key-value pairs). Additionally, we can now control the log
      ๐Ÿ“ฆ level per package, and a new log level WARNING has been inserted between
      โš  INFO and ERROR (which was previously known as WARNING...). The INFO level
      ๐Ÿ”€ has become more verbose, indicating the sync actions taken by Syncthing. A
      ๐Ÿ†• new command line flag --log-level sets the default log level for all
      โšก๏ธ packages, and the STTRACE environment variable and GUI has been updated
      ๐Ÿ“ฆ to set log levels per package. The --verbose and --logflags command
      ๐Ÿšš line options have been removed and will be ignored if given.

    • โœ‚ Deleted items are no longer kept forever in the database, instead they are
      forgotten after fifteen months. If your use case require deletes to take
      effect after more than a fifteen month delay, set the
      ๐Ÿ’ป --db-delete-retention-interval command line option or corresponding
      environment variable to zero, or a longer time interval of your choosing.

    • ๐Ÿ“œ Modernised command line options parsing. Old single-dash long options are
      ๐Ÿ‘ no longer supported, e.g. -home must be given as --home. Some options
      have been renamed, others have become subcommands. All serve options are
      ๐Ÿ‘€ now also accepted as environment variables. See syncthing --help and
      ๐Ÿ”€ syncthing serve --help for details.

    • ๐Ÿ‘ Rolling hash detection of shifted data is no longer supported as this
      ๐Ÿ”€ effectively never helped. Instead, scanning and syncing is faster and more
      efficient without it.

    • 0๏ธโƒฃ A "default folder" is no longer created on first startup.

    • 0๏ธโƒฃ Multiple connections are now used by default between v2 devices. The new
      ๐Ÿ“‡ default value is to use three connections: one for index metadata and two
      for data exchange.

    • The following platforms unfortunately no longer get prebuilt binaries for
      ๐Ÿ”€ download at syncthing.net and on GitHub, due to complexities related to
      cross compilation with SQLite:

    • The handling of conflict resolution involving deleted files has changed. A
      โœ‚ delete can now be the winning outcome of conflict resolution, resulting in
      ๐Ÿšš the deleted file being moved to a conflict copy.

    ๐Ÿš€ This release is also available as:

    • ๐Ÿ”€ APT repository: https://apt.syncthing.net/

    • ๐Ÿณ Docker image: docker.io/syncthing/syncthing:2.0.16 or ghcr.io/syncthing/syncthing:2.0.16
      ๐Ÿณ ({docker,ghcr}.io/syncthing/syncthing:2 to follow just the major version)

    What's Changed

    ๐Ÿ›  Fixes

    • ๐Ÿ›  fix(protocol): verify compressed message length before decompression by @calmh in #10595
    • ๐Ÿ›  fix(systemd): support overrides for syncOwnership by @Valloric in #10602
    • ๐Ÿ›  fix(systemd): add back chown allowed syscalls by @Valloric in #10605

    Other

    • ๐Ÿ”€ chore(config, connections): use same reconnection interval for QUIC and TCP (fixes #10507) by @marbens-arch in #10573
    • โšก๏ธ build(deps): update dependencies by @calmh in #10588
    • ๐Ÿ”€ chore(sqlite): reduce max open connections, keep them open permanently (fixes #10592) by @calmh in #10596

    Full Changelog : v2.0.15...v2.0.16

  • v2.0.16-rc.2 Changes

    March 13, 2026

    Major changes in 2.0

    • Database backend switched from LevelDB to SQLite. There is a migration on
      first launch which can be lengthy for larger setups. The new database is
      easier to understand and maintain and, hopefully, less buggy.

    • ๐ŸŒฒ The logging format has changed to use structured log entries (a message
      ๐ŸŒฒ plus several key-value pairs). Additionally, we can now control the log
      ๐Ÿ“ฆ level per package, and a new log level WARNING has been inserted between
      โš  INFO and ERROR (which was previously known as WARNING...). The INFO level
      ๐Ÿ”€ has become more verbose, indicating the sync actions taken by Syncthing. A
      ๐Ÿ†• new command line flag --log-level sets the default log level for all
      โšก๏ธ packages, and the STTRACE environment variable and GUI has been updated
      ๐Ÿ“ฆ to set log levels per package. The --verbose and --logflags command
      ๐Ÿšš line options have been removed and will be ignored if given.

    • โœ‚ Deleted items are no longer kept forever in the database, instead they are
      forgotten after fifteen months. If your use case require deletes to take
      effect after more than a fifteen month delay, set the
      ๐Ÿ’ป --db-delete-retention-interval command line option or corresponding
      environment variable to zero, or a longer time interval of your choosing.

    • ๐Ÿ“œ Modernised command line options parsing. Old single-dash long options are
      ๐Ÿ‘ no longer supported, e.g. -home must be given as --home. Some options
      have been renamed, others have become subcommands. All serve options are
      ๐Ÿ‘€ now also accepted as environment variables. See syncthing --help and
      ๐Ÿ”€ syncthing serve --help for details.

    • ๐Ÿ‘ Rolling hash detection of shifted data is no longer supported as this
      ๐Ÿ”€ effectively never helped. Instead, scanning and syncing is faster and more
      efficient without it.

    • 0๏ธโƒฃ A "default folder" is no longer created on first startup.

    • 0๏ธโƒฃ Multiple connections are now used by default between v2 devices. The new
      ๐Ÿ“‡ default value is to use three connections: one for index metadata and two
      for data exchange.

    • The following platforms unfortunately no longer get prebuilt binaries for
      ๐Ÿ”€ download at syncthing.net and on GitHub, due to complexities related to
      cross compilation with SQLite:

    • The handling of conflict resolution involving deleted files has changed. A
      โœ‚ delete can now be the winning outcome of conflict resolution, resulting in
      ๐Ÿšš the deleted file being moved to a conflict copy.

    ๐Ÿš€ This release is also available as:

    • ๐Ÿ”€ APT repository: https://apt.syncthing.net/

    • ๐Ÿณ Docker image: docker.io/syncthing/syncthing:2.0.16-rc.2 or ghcr.io/syncthing/syncthing:2.0.16-rc.2
      ๐Ÿณ ({docker,ghcr}.io/syncthing/syncthing:2 to follow just the major version)

    What's Changed

    ๐Ÿ›  Fixes

    • ๐Ÿ›  fix(protocol): verify compressed message length before decompression by @calmh in #10595
    • ๐Ÿ›  fix(systemd): support overrides for syncOwnership by @Valloric in #10602
    • ๐Ÿ›  fix(systemd): add back chown allowed syscalls by @Valloric in #10605

    Other

    • ๐Ÿ”€ chore(config, connections): use same reconnection interval for QUIC and TCP (fixes #10507) by @marbens-arch in #10573
    • โšก๏ธ build(deps): update dependencies by @calmh in #10588
    • ๐Ÿ”€ chore(sqlite): reduce max open connections, keep them open permanently (fixes #10592) by @calmh in #10596

    Full Changelog : v2.0.15...v2.0.16-rc.2

  • v2.0.16-rc.1 Changes

    March 03, 2026

    Major changes in 2.0

    • Database backend switched from LevelDB to SQLite. There is a migration on
      first launch which can be lengthy for larger setups. The new database is
      easier to understand and maintain and, hopefully, less buggy.

    • ๐ŸŒฒ The logging format has changed to use structured log entries (a message
      ๐ŸŒฒ plus several key-value pairs). Additionally, we can now control the log
      ๐Ÿ“ฆ level per package, and a new log level WARNING has been inserted between
      โš  INFO and ERROR (which was previously known as WARNING...). The INFO level
      ๐Ÿ”€ has become more verbose, indicating the sync actions taken by Syncthing. A
      ๐Ÿ†• new command line flag --log-level sets the default log level for all
      โšก๏ธ packages, and the STTRACE environment variable and GUI has been updated
      ๐Ÿ“ฆ to set log levels per package. The --verbose and --logflags command
      ๐Ÿšš line options have been removed and will be ignored if given.

    • โœ‚ Deleted items are no longer kept forever in the database, instead they are
      forgotten after fifteen months. If your use case require deletes to take
      effect after more than a fifteen month delay, set the
      ๐Ÿ’ป --db-delete-retention-interval command line option or corresponding
      environment variable to zero, or a longer time interval of your choosing.

    • ๐Ÿ“œ Modernised command line options parsing. Old single-dash long options are
      ๐Ÿ‘ no longer supported, e.g. -home must be given as --home. Some options
      have been renamed, others have become subcommands. All serve options are
      ๐Ÿ‘€ now also accepted as environment variables. See syncthing --help and
      ๐Ÿ”€ syncthing serve --help for details.

    • ๐Ÿ‘ Rolling hash detection of shifted data is no longer supported as this
      ๐Ÿ”€ effectively never helped. Instead, scanning and syncing is faster and more
      efficient without it.

    • 0๏ธโƒฃ A "default folder" is no longer created on first startup.

    • 0๏ธโƒฃ Multiple connections are now used by default between v2 devices. The new
      ๐Ÿ“‡ default value is to use three connections: one for index metadata and two
      for data exchange.

    • The following platforms unfortunately no longer get prebuilt binaries for
      ๐Ÿ”€ download at syncthing.net and on GitHub, due to complexities related to
      cross compilation with SQLite:

    • The handling of conflict resolution involving deleted files has changed. A
      โœ‚ delete can now be the winning outcome of conflict resolution, resulting in
      ๐Ÿšš the deleted file being moved to a conflict copy.

    ๐Ÿš€ This release is also available as:

    • ๐Ÿ”€ APT repository: https://apt.syncthing.net/

    • ๐Ÿณ Docker image: docker.io/syncthing/syncthing:2.0.16-rc.1 or ghcr.io/syncthing/syncthing:2.0.16-rc.1
      ๐Ÿณ ({docker,ghcr}.io/syncthing/syncthing:2 to follow just the major version)

    What's Changed

    Other

    • ๐Ÿ”€ chore(config, connections): use same reconnection interval for QUIC and TCP (fixes #10507) by @marbens-arch in #10573

    Full Changelog : v2.0.15...v2.0.16-rc.1