diff --git a/.clang-format b/.clang-format
index c66172b1ec5..6e17f17def2 100644
--- a/.clang-format
+++ b/.clang-format
@@ -11,8 +11,8 @@
# Webkit style was loosely based on the Qt style
BasedOnStyle: WebKit
-Standard: Cpp11
-ColumnLimit: 0
+Standard: c++17
+ColumnLimit: 160
# Disable reflow of qdoc comments: indentation rules are different.
# Translation comments are also excluded
@@ -48,11 +48,7 @@ AlwaysBreakTemplateDeclarations: true
# clang-format does not handle that
AllowShortFunctionsOnASingleLine: Inline
-# The coding style specifies some include order categories, but also tells to
-# separate categories with an empty line. It does not specify the order within
-# the categories. Since the SortInclude feature of clang-format does not
-# re-order includes separated by empty lines, the feature is not used.
-SortIncludes: false
+SortIncludes: true
# macros for which the opening brace stays attached
ForEachMacros: [ foreach, Q_FOREACH, BOOST_FOREACH, forever, Q_FOREVER, QBENCHMARK, QBENCHMARK_ONCE ]
@@ -61,4 +57,6 @@ ForEachMacros: [ foreach, Q_FOREACH, BOOST_FOREACH, forever, Q_FOREVER, QBENCH
MaxEmptyLinesToKeep: 2
KeepEmptyLinesAtTheStartOfBlocks: false
-SortIncludes: true
+# Properly format c++11 initializer
+SpaceBeforeCpp11BracedList: false
+Cpp11BracedListStyle: true
\ No newline at end of file
diff --git a/.craft.ini b/.craft.ini
index 861a04e2ecf..b0935f7e6c2 100644
--- a/.craft.ini
+++ b/.craft.ini
@@ -1,23 +1,25 @@
[General]
Branch = master
ShallowClone = False
+# Cloned repo which contains blueprints for openssl 3.4.4 and 3.4.5
+CraftUrl=https://github.com/owncloud/craft.git
# Variables defined here override the default value
-# The variable names are casesensitive
+# The variable names are case-sensitive
[Variables]
-#Values need to be overwritten to create a chache
+#Values need to be overwritten to create a cache
UseCache = True
CreateCache = True
-ownCloudVersion = 2.10
+ownCloudVersion = 6.0
# this version must match the target in the blueprint
# update MacDeploymentTarget when updating Qt
-QtVersion = 5.15.2
-CachePatchLvl = 3
+QtVersion = 6.8.3
+CachePatchLvl = 0
# set WORKSPACE to cwd, override on ci
-# with legacy fallbac APPVEYOR_BUILD_FOLDER
+# with legacy fallback APPVEYOR_BUILD_FOLDER
WORKSPACE = ${Variables:APPVEYOR_BUILD_FOLDER}
APPVEYOR_BUILD_FOLDER = ${Variables:Root}
CiBuild = True
@@ -29,8 +31,9 @@ CiBuild = True
[GeneralSettings]
Version/ConfigVersion = 6
-#https://github.com/qt/qtbase/blob/5.15/mkspecs/common/macx.conf#L8
-General/MacDeploymentTarget = 10.13
+## Set the minimum supported MacOs version, this is also limited by Qt
+## https://github.com/qt/qtbase/blob/6.8/.cmake.conf#L54C5-L54C35
+#MacDeploymentTarget = 12
Packager/Destination=${Variables:WORKSPACE}/binaries
Paths/Python = C:/Python36
@@ -43,6 +46,7 @@ Packager/CacheDir = ${Variables:WORKSPACE}/cache
Packager/UseCache = ${Variables:UseCache}
Packager/CreateCache = ${Variables:CreateCache}
Packager/CacheVersion = ${Variables:ownCloudVersion}/Qt_${Variables:QtVersion}_${Variables:CachePatchLvl}
+Packager/PackageDebugSymbols = False
; Packager/RepositoryUrl = https://files.kde.org/craft/
Packager/RepositoryUrl = https://download.owncloud.com/desktop/craft/cache/
Compile/BuildType = RelWithDebInfo
@@ -57,28 +61,41 @@ CodeSigning/MacKeychainPath = sign-${Env:DRONE_BUILD_NUMBER}.keychain
[BlueprintSettings]
# skip msys in normal builds its only needed for the cache
+dev-utils/msys-base.ignored = True
dev-utils/msys.ignored = True
+# in the current cache that pulls in the uncached lxml which takes ages to build
+dev-utils/gtk-doc.ignored = True
+
binary/mysql.ignored = True
libs/dbus.ignored = True
libs/icu.ignored = True
-libs/llvm-meta.ignored = True
-
-libs/qt5.version = ${Variables:QtVersion}
-libs/qt5/qtbase.useLtcg = True
-libs/qt5/qtbase.withMysql = False
-libs/qt5/qtbase.withDBus = False
-[windows-msvc2019_64-cl]
-General/ABI = windows-msvc2019_64-cl
-
-[windows-msvc2019_64-cl-debug]
-General/ABI = windows-msvc2019_64-cl
+libs/qt6.version = ${Variables:QtVersion}
+libs/qt6/qtbase.withDBus = False
+qt-libs/qtkeychain.buildWithQt6 = True
+
+# pinning versions to fix security issues
+libs/libcurl.version = 7.84.0
+libs/openssl.version = 3.4.5
+libs/libpng.version = 1.6.45
+libs/freetype.version = 2.14.1
+
+# pinning versions to have a stable cache
+dev-utils/cmake-base.version = 3.31.9
+libs/glib.version = 2.81.0
+libs/libxml2.version = 2.12.7
+libs/libxslt.version = 1.1.42
+# 78.1 causes cache misses - libxml2 requires 78.x
+libs/icu.version = 76.1
+
+[windows-cl-msvc2022-x86_64]
+General/ABI = windows-cl-msvc2022-x86_64
+
+[windows-cl-msvc2022-x86_64-debug]
+General/ABI = windows-cl-msvc2022-x86_64
Compile/BuildType = Debug
-[windows-msvc2019_32-cl]
-General/ABI = windows-msvc2019_32-cl
-
[macos-64-clang]
General/ABI = macos-64-clang
# Packager/PackageType = MacPkgPackager
@@ -87,13 +104,20 @@ General/ABI = macos-64-clang
General/ABI = macos-64-clang
Compile/BuildType = Debug
+[macos-clang-arm64]
+General/ABI = macos-clang-arm64
+
+[macos-clang-arm64-debug]
+General/ABI = macos-clang-arm64
+Compile/BuildType = Debug
+
[linux-64-gcc]
General/ABI = linux-64-gcc
[linux-64-gcc-BlueprintSettings]
libs/dbus.ignored = False
-libs/qt5/qtbase.withDBus = True
-dev-utils/7zip.useCentosBasedBuild=True
+libs/icu.ignored = False
+libs/qt6/qtbase.withDBus = True
[linux-64-gcc-debug]
General/ABI = linux-64-gcc
@@ -101,8 +125,8 @@ Compile/BuildType = Debug
[linux-64-gcc-debug-BlueprintSettings]
libs/dbus.ignored = False
-libs/qt5/qtbase.withDBus = True
-dev-utils/7zip.useCentosBasedBuild=True
+libs/icu.ignored = False
+libs/qt6/qtbase.withDBus = True
[Env]
CRAFT_CODESIGN_CERTIFICATE =
diff --git a/.craft.shelf b/.craft.shelf
index 4b4ee9ab87c..b2b09f5a83d 100644
--- a/.craft.shelf
+++ b/.craft.shelf
@@ -1,3 +1,182 @@
[General]
version = 2
-blueprintrepositories = https://github.com/owncloud/craft-blueprints-owncloud.git|master|;https://invent.kde.org/packaging/craft-blueprints-kde.git|master|
+blueprintrepositories = https://invent.kde.org/packaging/craft-blueprints-kde.git|master|;https://github.com/owncloud/craft-blueprints-owncloud.git|master|
+
+[core/cacert]
+version = 2025-09-09
+
+[craft/craft-blueprints-kde]
+version = master
+revision = 945d9fa
+
+[craft/craft-blueprints-owncloud]
+version = master
+revision = d28bcaf
+
+[craft/craft-core]
+version = master
+revision = 6cf4d10fb3024c9038bbda0cd26a220ffefab3ff
+
+[dev-utils/7zip-base]
+version = 25.01
+
+[dev-utils/cmake]
+version = latest
+
+[dev-utils/cmake-base]
+version = 3.31.9
+
+[dev-utils/icoutils]
+version = 0.32.3
+
+[dev-utils/jom]
+version = 1_1_3
+
+[dev-utils/kshimgen]
+version = 0.6.1
+
+[dev-utils/nasm]
+version = 2.16.03
+
+[dev-utils/ninja]
+version = 1.13.1
+
+[dev-utils/perl]
+version = 5.40.1
+
+[dev-utils/pkgconf]
+version = 2.5.1
+
+[dev-utils/symsorter]
+version = 0.7.0
+
+[kde/frameworks/extra-cmake-modules]
+version = 6.20.0
+
+[kde/frameworks/tier1/syntax-highlighting]
+version = 6.20.0
+
+[libs/brotli]
+version = 1.1.0
+
+[libs/cairo]
+version = 1.18.4
+
+[libs/expat]
+version = 2.7.3
+
+[libs/freetype]
+version = 2.14.1
+
+[libs/gettext]
+version = 0.22.3
+
+[libs/giflib]
+version = 5.2.1
+
+[libs/glib]
+version = 2.81.0
+
+[libs/harfbuzz]
+version = 11.2.0
+
+[libs/kdsingleapplication]
+version = 1.2.0
+
+[libs/libb2]
+version = 0.98.1
+
+[libs/libbzip2]
+version = 1.0.8
+
+[libs/libffi]
+version = 3.4.7
+
+[libs/libjpeg-turbo]
+version = 3.0.3
+
+[libs/liblzma]
+version = 5.2.3
+
+[libs/libpng]
+version = 1.6.45
+
+[libs/libre-graph-api-cpp-qt-client]
+version = 1.0.4
+
+[libs/libunistring]
+version = 1.4.1
+
+[libs/libxml2]
+version = 2.12.7
+
+[libs/libzstd]
+version = 1.5.7
+
+[libs/llvm]
+version = 20.1.7
+
+[libs/nlohmann-json]
+version = 3.12.0
+
+[libs/openssl]
+version = 3.4.5
+
+[libs/pcre2]
+version = 10.44
+
+[libs/pixman]
+version = 0.46.4
+
+[libs/python]
+version = 3.11.11
+
+[libs/qt6/qtbase]
+version = 6.8.3
+
+[libs/qt6/qtdeclarative]
+version = 6.8.3
+
+[libs/qt6/qtimageformats]
+version = 6.8.3
+
+[libs/qt6/qtlanguageserver]
+version = 6.8.3
+
+[libs/qt6/qtscxml]
+version = 6.8.3
+
+[libs/qt6/qtshadertools]
+version = 6.8.3
+
+[libs/qt6/qtsvg]
+version = 6.8.3
+
+[libs/qt6/qttools]
+version = 6.8.3
+
+[libs/qt6/qttranslations]
+version = 6.8.3
+
+[libs/runtime]
+version = 17
+
+[libs/sqlite]
+version = 3.50.4
+
+[libs/tiff]
+version = 4.4.0
+
+[libs/webp]
+version = 1.3.2
+
+[libs/zlib]
+version = 1.3.1
+
+[owncloud/libcrashreporter-qt]
+version = master
+revision = 96da290
+
+[qt-libs/qtkeychain]
+version = 0.15.0
+
diff --git a/.drone.env b/.drone.env
deleted file mode 100644
index e54b074eb37..00000000000
--- a/.drone.env
+++ /dev/null
@@ -1,4 +0,0 @@
-# To run the GUI tests we use owncloud-test-middleware(https://github.com/owncloud/owncloud-test-middleware)
-# Set the commit id to use the correct version of the middleware
-
-MIDDLEWARE_COMMITID=078c01157006d4fc1bb7a4d466b6a93af9a47d1b
diff --git a/.drone.star b/.drone.star
deleted file mode 100644
index e5c224d2384..00000000000
--- a/.drone.star
+++ /dev/null
@@ -1,524 +0,0 @@
-#
-# We are building GCC with make and Clang with ninja, the combinations are more
-# or less arbitrarily chosen. We just want to check that both compilers and both
-# CMake generators work. It's unlikely that a specific generator only breaks
-# with a specific compiler.
-#
-
-dir = {
- "base": "/drone",
-}
-
-def main(ctx):
- build_trigger = {
- "ref": [
- "refs/heads/master",
- "refs/heads/2.**",
- "refs/tags/**",
- "refs/pull/**",
- ],
- }
- pipelines = [
- # check the format of gui test code
- gui_tests_format(build_trigger),
- # Check starlark
- check_starlark(
- ctx,
- build_trigger,
- ),
- # Build changelog
- changelog(
- ctx,
- trigger = build_trigger,
- depends_on = [],
- ),
- build_and_test_client(
- ctx,
- "clang",
- "clang++",
- "Debug",
- "Ninja",
- trigger = build_trigger,
- ),
- gui_tests(ctx, trigger = build_trigger, version = "latest"),
- notification(
- name = "build",
- trigger = build_trigger,
- depends_on = [
- "check-starlark",
- "changelog",
- "clang-debug-ninja",
- ],
- ),
- ]
- return pipelines
-
-def whenOnline(dict):
- if not "when" in dict:
- dict["when"] = {}
-
- if not "instance" in dict:
- dict["when"]["instance"] = []
-
- dict["when"]["instance"].append("drone.owncloud.com")
-
- return dict
-
-def whenPush(dict):
- if not "when" in dict:
- dict["when"] = {}
-
- if not "event" in dict:
- dict["when"]["event"] = []
-
- dict["when"]["event"].append("push")
-
- return dict
-
-def from_secret(name):
- return {
- "from_secret": name,
- }
-
-def check_starlark(ctx, trigger = {}, depends_on = []):
- return {
- "kind": "pipeline",
- "type": "docker",
- "name": "check-starlark",
- "steps": [
- {
- "name": "format-check-starlark",
- "image": "owncloudci/bazel-buildifier",
- "pull": "always",
- "commands": [
- "buildifier --mode=check .drone.star",
- ],
- },
- {
- "name": "show-diff",
- "image": "owncloudci/bazel-buildifier",
- "pull": "always",
- "commands": [
- "buildifier --mode=fix .drone.star",
- "git diff",
- ],
- "when": {
- "status": [
- "failure",
- ],
- },
- },
- ],
- "depends_on": depends_on,
- "trigger": trigger,
- }
-
-def build_and_test_client(ctx, c_compiler, cxx_compiler, build_type, generator, trigger = {}, depends_on = []):
- build_command = "ninja" if generator == "Ninja" else "make"
- pipeline_name = c_compiler + "-" + build_type.lower() + "-" + build_command
- build_dir = "build-" + pipeline_name
-
- return {
- "kind": "pipeline",
- "name": pipeline_name,
- "platform": {
- "os": "linux",
- "arch": "amd64",
- },
- "steps": [
- {
- "name": "submodules",
- "image": "docker:git",
- "commands": [
- "git submodule update --init --recursive",
- ],
- },
- ] +
- build_client(ctx, c_compiler, cxx_compiler, build_type, generator, build_command, build_dir) +
- [
- {
- "name": "ctest",
- "image": "owncloudci/client",
- "pull": "always",
- "environment": {
- "LC_ALL": "C.UTF-8",
- },
- "commands": [
- 'cd "' + build_dir + '"',
- "useradd -m -s /bin/bash tester",
- "chown -R tester:tester .",
- "su-exec tester ctest --output-on-failure -LE nodrone",
- ],
- },
- ],
- "trigger": trigger,
- "depends_on": depends_on,
- }
-
-def gui_tests(ctx, trigger = {}, depends_on = [], filterTags = [], version = "daily-master-qa"):
- pipeline_name = "GUI-tests"
- build_dir = "build-" + pipeline_name
- squish_parameters = "--retry 1 --reportgen stdout --reportgen json,/drone/src/test/guiTestReport"
-
- if (len(filterTags) > 0):
- for tags in filterTags:
- squish_parameters += " --tags " + tags
- pipeline_name += "-" + tags
-
- return {
- "kind": "pipeline",
- "name": pipeline_name,
- "platform": {
- "os": "linux",
- "arch": "amd64",
- },
- "steps": [
- {
- "name": "submodules",
- "image": "docker:git",
- "commands": [
- "git submodule update --init --recursive",
- ],
- },
- ] +
- installCore(version) +
- setupServerAndApp(2) +
- fixPermissions() +
- owncloudLog() +
- setGuiTestReportDir() +
- build_client(ctx, "gcc", "g++", "Debug", "Ninja", "ninja", build_dir) +
- [
- {
- "name": "GUItests",
- "image": "owncloudci/squish:latest",
- "pull": "always",
- "environment": {
- "LICENSEKEY": from_secret("squish_license_server"),
- "CLIENT_REPO": "/drone/src/",
- "MIDDLEWARE_URL": "http://testmiddleware:3000/",
- "BACKEND_HOST": "http://owncloud/",
- "SECURE_BACKEND_HOST": "https://owncloud/",
- "SERVER_INI": "/drone/src/test/gui/drone/server.ini",
- "SQUISH_PARAMETERS": squish_parameters,
- },
- },
- ] +
- showGuiTestResult(),
- "services": testMiddleware() +
- owncloudService() +
- databaseService(),
- "trigger": trigger,
- "depends_on": depends_on,
- }
-
-def build_client(ctx, c_compiler, cxx_compiler, build_type, generator, build_command, build_dir):
- return [
- {
- "name": "cmake",
- "image": "owncloudci/client",
- "pull": "always",
- "environment": {
- "LC_ALL": "C.UTF-8",
- },
- "commands": [
- 'mkdir -p "' + build_dir + '"',
- 'cd "' + build_dir + '"',
- 'cmake -G"' + generator + '" -DCMAKE_C_COMPILER="' + c_compiler + '" -DCMAKE_CXX_COMPILER="' + cxx_compiler + '" -DCMAKE_BUILD_TYPE="' + build_type + '" -DBUILD_TESTING=1 -DWITH_LIBCLOUDPROVIDERS=ON -S ..',
- ],
- },
- {
- "name": build_command,
- "image": "owncloudci/client",
- "pull": "always",
- "environment": {
- "LC_ALL": "C.UTF-8",
- },
- "commands": [
- 'cd "' + build_dir + '"',
- build_command + " -j4",
- ],
- },
- ]
-
-def gui_tests_format(trigger):
- return {
- "kind": "pipeline",
- "type": "docker",
- "name": "guitestformat",
- "steps": [
- {
- "name": "black",
- "image": "cytopia/black",
- "pull": "always",
- "commands": [
- "cd /drone/src/test/gui",
- "black --check --diff .",
- ],
- },
- ],
- "trigger": trigger,
- }
-
-def changelog(ctx, trigger = {}, depends_on = []):
- repo_slug = ctx.build.source_repo if ctx.build.source_repo else ctx.repo.slug
- result = {
- "kind": "pipeline",
- "type": "docker",
- "name": "changelog",
- "clone": {
- "disable": True,
- },
- "steps": [
- {
- "name": "clone",
- "image": "plugins/git-action:1",
- "pull": "always",
- "settings": {
- "actions": [
- "clone",
- ],
- "remote": "https://github.com/%s" % (repo_slug),
- "branch": ctx.build.source if ctx.build.event == "pull_request" else "master",
- "path": "/drone/src",
- "netrc_machine": "github.com",
- "netrc_username": from_secret("github_username"),
- "netrc_password": from_secret("github_token"),
- },
- },
- {
- "name": "generate",
- "image": "toolhippie/calens:latest",
- "pull": "always",
- "commands": [
- "calens >| CHANGELOG.md",
- ],
- },
- {
- "name": "diff",
- "image": "owncloudci/alpine:latest",
- "pull": "always",
- "commands": [
- "git diff",
- ],
- },
- {
- "name": "output",
- "image": "toolhippie/calens:latest",
- "pull": "always",
- "commands": [
- "cat CHANGELOG.md",
- ],
- },
- {
- "name": "publish",
- "image": "plugins/git-action:1",
- "pull": "always",
- "settings": {
- "actions": [
- "commit",
- "push",
- ],
- "message": "Automated changelog update [skip ci]",
- "branch": "master",
- "author_email": "devops@owncloud.com",
- "author_name": "ownClouders",
- "netrc_machine": "github.com",
- "netrc_username": from_secret("github_username"),
- "netrc_password": from_secret("github_token"),
- },
- "when": {
- "ref": {
- "exclude": [
- "refs/pull/**",
- "refs/tags/**",
- ],
- },
- },
- },
- ],
- "trigger": trigger,
- "depends_on": depends_on,
- }
-
- return result
-
-def make(target, path, image = "owncloudci/transifex:latest"):
- return {
- "name": target,
- "image": image,
- "pull": "always",
- "environment": {
- "TX_TOKEN": from_secret("tx_token"),
- },
- "commands": [
- 'cd "' + path + '"',
- "make " + target,
- ],
- }
-
-def notification(name, depends_on = [], trigger = {}):
- trigger = dict(trigger)
- if not "status" in trigger:
- trigger["status"] = []
-
- trigger["status"].append("success")
- trigger["status"].append("failure")
-
- return {
- "kind": "pipeline",
- "name": "notifications-" + name,
- "platform": {
- "os": "linux",
- "arch": "amd64",
- },
- "clone": {
- "disable": True,
- },
- "steps": [
- {
- "name": "notification",
- "image": "plugins/slack",
- "pull": "always",
- "settings": {
- "webhook": from_secret("slack_webhook"),
- "channel": "desktop-ci",
- },
- },
- ],
- "trigger": trigger,
- "depends_on": depends_on,
- }
-
-def databaseService():
- service = {
- "name": "mysql",
- "image": "mysql:8.0",
- "pull": "always",
- "environment": {
- "MYSQL_USER": "owncloud",
- "MYSQL_PASSWORD": "owncloud",
- "MYSQL_DATABASE": "owncloud",
- "MYSQL_ROOT_PASSWORD": "owncloud",
- },
- "command": ["--default-authentication-plugin=mysql_native_password"],
- }
- return [service]
-
-def installCore(version):
- stepDefinition = {
- "name": "install-core",
- "image": "owncloudci/core",
- "pull": "always",
- "settings": {
- "version": version,
- "core_path": "/drone/src/server",
- "db_type": "mysql",
- "db_name": "owncloud",
- "db_host": "mysql",
- "db_username": "owncloud",
- "db_password": "owncloud",
- },
- }
- return [stepDefinition]
-
-def setupServerAndApp(logLevel):
- return [{
- "name": "setup-owncloud-server",
- "image": "owncloudci/php:7.4",
- "pull": "always",
- "commands": [
- "cd /drone/src/server/",
- "php occ a:e testing",
- "php occ config:system:set trusted_domains 1 --value=owncloud",
- "php occ log:manage --level %s" % logLevel,
- "php occ config:list",
- "php occ config:system:set skeletondirectory --value=/var/www/owncloud/server/apps/testing/data/tinySkeleton",
- "php occ config:system:set sharing.federation.allowHttpFallback --value=true --type=bool",
- ],
- }]
-
-def owncloudService():
- return [{
- "name": "owncloud",
- "image": "owncloudci/php:7.4",
- "pull": "always",
- "environment": {
- "APACHE_WEBROOT": "/drone/src/server/",
- "APACHE_CONFIG_TEMPLATE": "ssl",
- "APACHE_SSL_CERT_CN": "server",
- "APACHE_SSL_CERT": "%s/%s.crt" % (dir["base"], "server"),
- "APACHE_SSL_KEY": "%s/%s.key" % (dir["base"], "server"),
- "APACHE_LOGGING_PATH": "/dev/null",
- },
- "commands": [
- "cat /etc/apache2/templates/base >> /etc/apache2/templates/ssl",
- "/usr/local/bin/apachectl -e debug -D FOREGROUND",
- ],
- }]
-
-def testMiddleware():
- return [{
- "name": "testmiddleware",
- "image": "owncloudci/nodejs:14",
- "pull": "always",
- "environment": {
- "MIDDLEWARE_HOST": "testmiddleware",
- "BACKEND_HOST": "http://owncloud",
- },
- "commands": [
- ". ./.drone.env",
- "git clone https://github.com/owncloud/owncloud-test-middleware.git /drone/src/middleware",
- "cd /drone/src/middleware",
- "git checkout $MIDDLEWARE_COMMITID",
- "yarn install",
- "yarn start",
- ],
- }]
-
-def owncloudLog():
- return [{
- "name": "owncloud-log",
- "image": "owncloud/ubuntu:16.04",
- "pull": "always",
- "detach": True,
- "commands": [
- "tail -f /drone/src/server/data/owncloud.log",
- ],
- }]
-
-def fixPermissions():
- return [{
- "name": "fix-permissions",
- "image": "owncloudci/php:7.4",
- "pull": "always",
- "commands": [
- "cd /drone/src/server",
- "chown www-data * -R",
- ],
- }]
-
-def setGuiTestReportDir():
- return [{
- "name": "create-gui-test-report-directory",
- "image": "owncloud/ubuntu:16.04",
- "pull": "always",
- "commands": [
- "mkdir /drone/src/test/guiTestReport",
- "chmod ugo+rwx /drone/src/test/guiTestReport",
- ],
- }]
-
-def showGuiTestResult():
- return [{
- "name": "show-gui-test-result",
- "image": "python",
- "pull": "always",
- "commands": [
- "python /drone/src/test/gui/TestLogParser.py /drone/src/test/guiTestReport/results.json",
- ],
- "when": {
- "status": [
- "failure",
- ],
- },
- }]
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
new file mode 100644
index 00000000000..508837c318c
--- /dev/null
+++ b/.github/CODEOWNERS
@@ -0,0 +1,6 @@
+# SPDX-FileCopyrightText: ownCloud GmbH - A Kiteworks Company and ownCloud contributors
+# SPDX-License-Identifier: Apache-2.0
+#
+# Managed by owncloud/admin — edit codeowners/ownership.yml, not this file.
+# Generated by scripts/sync-codeowners.py. Last matching pattern wins.
+* @owncloud/desktop-maintainers
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
new file mode 100644
index 00000000000..b3735ad5a91
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -0,0 +1,127 @@
+name: "Bug report"
+description: "Report a bug to help us improve the ownCloud desktop client"
+labels: ["bug"]
+
+body:
+- type: markdown
+ attributes:
+ value: |
+ We appreciate you taking the time to make the ownCloud desktop client better by reporting a bug. In order for us to quickly grasp the problem, please do not hesitate to provide as many details as possible. There is no need to be afraid of overloading the issue.
+
+ In case you have little experience in reporting bugs, we kindly ask you to read https://www.chiark.greenend.org.uk/~sgtatham/bugs.html, which provides a great introduction to the matter.
+
+ **Please note: this is an issue tracker.** Questions are best asked in our [**community forum**](https://central.owncloud.org) or our [**community chat**](https://talk.owncloud.org)!
+
+- type: checkboxes
+ id: presubmission-checks
+ attributes:
+ label: Pre-submission Checks
+ description: |
+ Before submitting your bug report, please make sure you fulfill the following criteria. Otherwise, your issue will most likely be dismissed.
+ options:
+ - label: I [checked for similar issues](https://github.com/owncloud/client/issues?q=), but could not find any. I also checked the closed issues. I could not contribute additional information to any existing issue.
+ required: true
+ - label: I will take the time to fill in all the required fields. I know that the bug report may be dismissed otherwise due to lack of information.
+ required: true
+
+- type: textarea
+ id: description
+ attributes:
+ label: Describe the bug
+ description: Please provide a detailed, precise description of the bug. Please do not hesitate to add as many details as possible, every information is relevant.
+ placeholder: While clicking on button [...], the application unexpectedly [...]
+ validations:
+ required: true
+
+- type: textarea
+ id: expected-behavior
+ attributes:
+ label: Expected behavior
+ description: Please explain which behavior you expected from the application. We need to know what you think should have happened.
+ placeholder: "I expected to see [...]"
+ validations:
+ required: true
+
+- type: textarea
+ id: reproduce
+ attributes:
+ label: Steps to reproduce the issue
+ description: |
+ Ideally, we can reproduce the issue using steps you describe to us. This allows us to perform our own tests and thus better understand the issue.
+ Please don't hesitate to add as many details as possible.
+ placeholder: |
+ 1. Enter [...] into [...]
+ 2. Click on [...]
+ 3. Scroll down to [...]
+ 4. See the error message
+
+- type: textarea
+ id: screenshots
+ attributes:
+ label: Screenshots
+ description: Please add screenshots if possible that visualize your problem and/or show how to reproduce the bug.
+ placeholder: Add your screenshots here!
+
+- type: textarea
+ id: logs
+ attributes:
+ label: Logs
+ description: |
+ Please add (complete) log contents or files to this section. Logs contain very valuable information. **Make sure to redact personal/private information!**
+ If your logs are longer than 10 lines, you should paste them on a pastebin service (e.g., [Gist](https://gist.github.com)) and insert links here.
+ placeholder: Add your logs here!
+
+- type: textarea
+ id: client-version
+ attributes:
+ label: Client version number
+ description: Please provide the **ownCloud desktop client and Qt version number** (see the *Version* tab in the *About* dialog, which can be found in the client settings).
+ placeholder: |
+ Example:
+ ownCloud 2.10.1 (build 7188) 82eefd Apr 5 2022 11:25:27
+ Libraries Qt 5.12.11, OpenSSL 1.1.1k 25 Mar 2021
+ Using virtual files plugin: suffix
+ ubuntu-5.4.0-109-generic
+ validations:
+ required: true
+
+- type: input
+ id: os-version
+ attributes:
+ label: Desktop environment (Linux only)
+ description: Please provide a precise description of the desktop environment version used on your Linux-based operating system.
+ placeholder: "Example: Fedora 36 with GNOME 3 version 42.0, ..."
+
+- type: input
+ id: linux-client-packaging
+ attributes:
+ label: Client package version and origin (Linux only)
+ description: In case you use a Linux-based operating system, please describe how you installed the ownCloud desktop client, and where you installed it from (e.g., from your distribution, from the ownCloud-provided mirrors, etc.).
+ placeholder: "Example: Installed from https://download.owncloud.com/desktop/ownCloud/stable/latest/"
+
+- type: input
+ id: windows-install-path
+ attributes:
+ label: Installation path (Windows only)
+ description: In case you use Windows, we'd like to know which path you installed the client into.
+ placeholder: "Example: C:\\Program Files\\ownCloud"
+
+- type: textarea
+ id: server-info
+ attributes:
+ label: Server information
+ description: |
+ Please include all relevant information (e.g., server operating system version, web server, database and PHP version (applicable to ownCloud 10 only), storage backend (in case external storage is used).
+ placeholder: |
+ ownCloud 10.9.1 (stable) on Ubuntu 20.04 using PHP 7.3
+
+ PHP 7.4.3 (cli) (built: Mar 2 2022 15:36:52) ( NTS )
+ Copyright (c) The PHP Group
+ Zend Engine v3.4.0, Copyright (c) Zend Technologies
+ with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies
+
+- type: textarea
+ id: additional-context
+ attributes:
+ label: Additional context
+ description: Any other information you'd like to include.
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
new file mode 100644
index 00000000000..7ed9749931c
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -0,0 +1,12 @@
+blank_issues_enabled: false
+
+contact_links:
+ - name: 📚 Official ownCloud Documentation
+ url: https://doc.owncloud.com/docs/next/client_releases.html
+ about: You can find a detailed user guide in our official documentation. Please refer to this document first before asking a question!
+ - name: 💡 Discussion Forum
+ url: https://central.owncloud.org/
+ about: Interact with our community. Feel free to ask questions there!
+ - name: 💬 ownCloud Talk
+ url: https://talk.owncloud.com
+ about: Chat with other users and the developers!
diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml
new file mode 100644
index 00000000000..5432c7a2d4a
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature_request.yml
@@ -0,0 +1,59 @@
+name: "Feature request"
+description: "Propose a new feature for the ownCloud desktop client"
+labels: ["enhancement"]
+
+body:
+- type: markdown
+ attributes:
+ value: |
+ Thank you for your interest in making the ownCloud desktop client better! Your feature proposals are highly welcome.
+
+ Please try to describe your feature as precisely as possible. If we fully understand a feature request, we can discuss it with you a lot better. Please don't hesitate to add screenshots or mockups, which greatly aide
+
+ **Please note: this is an issue tracker.** Questions are best asked in our [**community forum**](https://central.owncloud.org) or our [**community chat**](https://talk.owncloud.org)!
+
+- type: checkboxes
+ id: presubmission-checks
+ attributes:
+ label: Pre-submission Checks
+ description: |
+ Before submitting your feature proposal, please make sure you fulfill the following criteria. Otherwise, your issue will most likely be dismissed.
+ options:
+ - label: I [checked for similar issues](https://github.com/owncloud/client/issues?q=), but could not find any. I also checked the closed issues. I could not contribute additional information to any existing issue.
+ required: true
+ - label: I will take the time to fill in all the required fields. I know that the bug report may be dismissed otherwise due to lack of information.
+ required: true
+
+- type: textarea
+ id: description
+ attributes:
+ label: Feature description
+ description: |
+ Please describe your suggestion, including as many details as possible.
+ Is your feature request related to an existing issue? In this case, please describe the problem or provide a link to the issue.
+ placeholder: I would like to have another button that [...]
+ validations:
+ required: true
+
+- type: textarea
+ id: proposed-solution
+ attributes:
+ label: Proposed solution
+ description: Please explain the solution you have in mind.
+ placeholder: Instead of using a text field, I would like a dropdown containing a list of choices [...]
+ validations:
+ required: true
+
+- type: textarea
+ id: alternatives
+ attributes:
+ label: Alternative solutions you considered
+ description: |
+ Please list alternative solutions or features you considered to cover your use case. Feel free to discuss their pros and cons.
+
+- type: textarea
+ id: additional-context
+ attributes:
+ label: Additional context
+ description: Any other information you'd like to include, for instance, screenshots, mockups, etc.
+
diff --git a/.github/ISSUE_TEMPLATE/qa_issue.yml b/.github/ISSUE_TEMPLATE/qa_issue.yml
new file mode 100644
index 00000000000..811f8548923
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/qa_issue.yml
@@ -0,0 +1,78 @@
+name: "QA issue"
+description: "Issues created by the ownCloud desktop client QA team"
+labels: ["QA:team"]
+title: "[QA] "
+
+body:
+- type: markdown
+ attributes:
+ value: |
+ **This form is meant for the ownCloud desktop client QA team!** In case you want to report a bug or request a feature, please use the corresponding forms.
+
+ **Please note: this is an issue tracker.** Questions are best asked in our [**community forum**](https://central.owncloud.org) or our [**community chat**](https://talk.owncloud.org)!
+
+- type: checkboxes
+ id: presubmission-checks
+ attributes:
+ label: Pre-submission Checks
+ description: |
+ Before submitting your feature proposal, please make sure you fulfill the following criteria. Otherwise, your issue will most likely be dismissed.
+ options:
+ - label: I [checked for similar issues](https://github.com/owncloud/client/issues?q=), but could not find any. I also checked the closed issues. I could not contribute additional information to any existing issue.
+ required: true
+ - label: I will take the time to fill in all the required fields. I know that the bug report may be dismissed otherwise due to lack of information.
+ required: true
+
+- type: textarea
+ id: description
+ attributes:
+ label: Describe the QA issue
+ description: |
+ Please describe your issue, including as many details as possible.
+ Is your issue related to an existing issue? In this case, please describe the problem or provide a link to the issue.
+ placeholder: "While testing ..., I noticed the following problem: ..."
+ validations:
+ required: true
+
+- type: textarea
+ id: reproduce
+ attributes:
+ label: Steps to reproduce the issue
+ description: |
+ Ideally, we can reproduce the issue using steps you describe to us. This allows us to perform our own tests and thus better understand the issue.
+ Please don't hesitate to add as many details as possible.
+ placeholder: |
+ 1. Enter [...] into [...]
+ 2. Click on [...]
+ 3. Scroll down to [...]
+ 4. See the error message
+ validations:
+ required: true
+
+- type: textarea
+ id: screenshots
+ attributes:
+ label: Screenshots
+ description: Please add screenshots if possible that visualize your problem and/or show how to reproduce the bug.
+ placeholder: Add your screenshots here!
+ validations:
+ required: true
+
+- type: textarea
+ id: expected-behavior
+ attributes:
+ label: Expected behavior
+ description: Please explain which behavior you expected from the application. We need to know what you think should have happened.
+ placeholder: "I expected to see [...]"
+
+- type: textarea
+ id: actual-behavior
+ attributes:
+ label: Actual behavior
+ description: Please explain what behavior you actually experienced. Please do not hesitate to provide a detailed description. The better we understand what has happened, the easier we can solve the problem.
+ placeholder: "The client unexpectedly [...]"
+
+- type: markdown
+ attributes:
+ value: |
+ **This form is meant for the ownCloud desktop client QA team!** In case you want to report a bug or request a feature, please use the corresponding forms.
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
new file mode 100644
index 00000000000..ae63a0d0874
--- /dev/null
+++ b/.github/dependabot.yml
@@ -0,0 +1,15 @@
+version: 2
+updates:
+ - package-ecosystem: github-actions
+ directory: "/"
+ schedule:
+ interval: weekly
+ day: sunday
+ time: '22:00'
+ timezone: Etc/UTC
+ open-pull-requests-limit: 5
+ groups:
+ minor-and-patch:
+ update-types:
+ - minor
+ - patch
diff --git a/.github/issue_template.md b/.github/issue_template.md
deleted file mode 100644
index 8b5aa85a885..00000000000
--- a/.github/issue_template.md
+++ /dev/null
@@ -1,58 +0,0 @@
-
-
-
-### Expected behaviour
-Tell us what should happen
-
-### Actual behaviour
-Tell us what happens instead
-
-### Steps to reproduce
-1.
-2.
-3.
-
-### Server configuration
-Operating system:
-
-Web server:
-
-Database:
-
-PHP version:
-
-ownCloud version:
-
-Storage backend (external storage):
-
-### Client configuration
-Client version:
-
-Operating system:
-
-OS language:
-
-Qt version used by client package (Linux only, see also Settings dialog):
-
-Client package (From ownCloud or distro) (Linux only):
-
-Installation path of client:
-
-### Logs
-
-Please use Gist (https://gist.github.com/) or a similar code paster for longer
-logs.
-
-```Template for output < 10 lines```
-
-1. Client [logfile](https://doc.owncloud.com/desktop/latest/appendices/troubleshooting.html#log-files)
-
-2. Web server error log:
-
-3. Server logfile: ownCloud log (data/owncloud.log):
-
diff --git a/.github/patch_release_template.md b/.github/patch_release_template.md
deleted file mode 100644
index 706d5eaed67..00000000000
--- a/.github/patch_release_template.md
+++ /dev/null
@@ -1,78 +0,0 @@
-## Reason
-
-* Needed for branded client X.x.x release (link to branded release ticket)
-
-### Template
-[Patch Release Template](https://github.com/owncloud/client/blob/master/.github/patch_release_template.md)
-
-__TODO__: [patch_release_template.md](https://github.com/owncloud/client/blob/master/.github/patch_release_template.md) is used for this ticket because it's the newest, updated version for a release ticket template. Check if anything is missing from [release_template.md](https://github.com/owncloud/client/blob/master/.github/release_template.md) and merge here. So we can use the same template for a patch, minor or major release in future.
-
-### Prerequisites
-
-* [ ] QA: Update [Test Plans](https://confluence.owncloud.com/display/OG/Desktop+Client+Test+Plan+Maintenance)
-* [ ] QA: Inform the docu team on rocketchat ``#documentation-internal`` about an upcoming major or minor release
-* [ ] QA: Check the translations coming from https://github.com/owncloud/client/actions/workflows/translate.yml
-* [ ] QA: Make sure squish tests are running successfully on X.x branch: go to https://github.com/owncloud/client, click on 'commits' above the source tree, click on green checkmark of latest commit, click 'Details' on 'continious-integration/drone/push' and check GUI-tests-@smokeTest
-* [ ] DEV: Check for new OpenSSL version
-* [ ] DEV: Check [dependencies](https://confluence.owncloud.com/display/OG/Dependencies) for updates
-* [ ] DEV: Prepare the release in a `X.x` version branch (a patch release is maintained in the minor release branch)
-* [ ] DEV: bump VERSION.cmake in master to say 2.(x+1).x unless already done.
-
-### Build
-
-* [ ] DEV: Tag and build [builds](https://confluence.owncloud.com/display/OG/Build+and+Tags#BuildandTags-Sprintbuild) for theme 'ownCloud' and 'testpilotcloud' (includes ChangeLog for the tag on https://github.com/owncloud/client/releases/)
-* [ ] QA: Ping #documentation-internal: Changelog is ready. (open doc issues for already known doc-relevant items)
-* [ ] DEV: Provide 'testpilotcloud' on **Beta** update channel
-* [ ] Beta/RC [Communication](https://confluence.owncloud.com/display/OG/Marketing+and+Communication)
- * [ ] Website links for beta (needed for the following posts)
- * [ ] Central post https://central.owncloud.org/tags/c/news/desktop
- * [ ] All other stakeholders
-* [ ] QA: Check Crash reporter (WIN/Mac/Linux Appimage: start 'owncloud --debug' on cmd line, system tray right click menu: 'Crash now - qt fatal')
-
-### QA
-
-* [ ] DEV: [Smash box test](https://drone.owncloud.com/owncloud/smashbox-testing) Make sure tests run on latest version
-* [ ] QA: Run [automated tests](https://confluence.owncloud.com/display/OG/Automated+Tests) (includes [Smoke test](https://confluence.owncloud.com/display/OG/Manual+Tests#ManualTests-DEVSmokeTest))
- * [ ] All Linux platform install and gpg test ssh://git@gitea.owncloud.services:2222/client/linux-docker-install.git
- * [ ] manually deploy a linux download repo, or use a download repo from https://download.owncloud.com/desktop/ownCloud/testing/
- * [ ] in defs.sh edit `repo=` and update `platform_docker_images=`
- * [ ] RUN.sh -> paste the log/test_YYYYMMDD_hhmm.log file into the client release ticket.
- * [ ] TO DO: extend 08-appimage.sh ("xvfb-run")
-* [ ] QA: [Antivirus scan](https://confluence.owncloud.com/display/OG/Virus+Scanning)
-* [ ] QA: Create testplan according to release type (patch release: add tests in a comment, for minor release: create a separate ticket), for testplan templates see https://confluence.owncloud.com/display/OG/Desktop+Client+Release+Process and link here
-* [ ] QA: Add changelog testing as a comment (to above testplan ticket or here), changeLog issues see https://github.com/owncloud/client/releases/ and link here
-
-### Final Rebuild after QA Approval
-
-* [ ] DEV: Tag and build [builds](https://confluence.owncloud.com/display/OG/Build+and+Tags#BuildandTags-Sprintbuild) for theme 'ownCloud' and 'testpilotcloud' for final build
- * [ ] TODO: create confluence page with info about final DEV release steps [WIP: Final release steps](https://confluence.owncloud.com/display/OG/WIP%3A+Final+release+steps+-+check+outdated+pages+first)
-* [ ] DEV: Adjust [Linux Templates](https://confluence.owncloud.com/display/OG/Branching+Off#BranchingOff-Linuxtemplates) to support the next patch release version (e.g. 2.9.1) @dschmidt @fmoc
-* [ ] DEV: Ping ``#release-coordination`` so that marketing can do their [actions](https://confluence.owncloud.com/display/OG/Marketing+and+Communication#MarketingandCommunication-Marketingtasks)
-* [ ] DEV: Create [a (draft) release](https://github.com/owncloud/client/releases) with Download links - save as a draft until smoke tested
-* [ ] QA: Create a new release issue for a branded release if needed [Branded Client Release Template](https://confluence.owncloud.com/pages/viewpage.action?spaceKey=OG&title=Desktop+Client+Release+Process)
-* [ ] QA: Give [heads-up](https://confluence.owncloud.com/display/OG/Marketing+and+Communication#MarketingandCommunication-Heads-upbeforethefinalrelease) before the final release
-
-### Final QA
-
-* [ ] QA: [Smoke test](https://confluence.owncloud.com/display/OG/Manual+Tests#ManualTests-SmokeTest)
-* [ ] DEV: Publish the release in GitHub
-* [ ] QA: Check [documentation](https://confluence.owncloud.com/display/OG/Documentation)
-
-### Communicate the Availability
-
-* [ ] Final [Marketing and Communication](https://confluence.owncloud.com/display/OG/Marketing+and+Communication)
- * [ ] Website links for final release (needed for the following posts)
- * [ ] QA: Central post https://central.owncloud.org/tags/c/news/desktop
- * [ ] QA: Inform on ``#updates`` channel, so that marketing knows about the new release
- * [ ] QA: Inform [packagers](https://confluence.owncloud.com/display/OG/Marketing+and+Communication#MarketingandCommunication-Packagers) - ping @dragotin (openSUSE)
-
-
-### Final Infrastructure Check
-
-* [ ] QA/DEV: Update [stable channel](https://confluence.owncloud.com/display/OG/Online+Updater%2C+Crash+reporter%2C+Transifex#OnlineUpdater,Crashreporter,Transifex-UpdatetheUpdater) in the owncloud hosted auto updater
-* [ ] QA: Ensure that the [client patch release template](https://github.com/owncloud/client/blob/master/.github/patch_release_template.md) is up to date and in sync with other client templates
-* [ ] QA: Ensure that the [client test plan template](https://github.com/owncloud/QA/blob/master/Desktop/Regression_Test_Plan_Patch_Release.md) is up to date.
-
-### A Few Days After the Release
-
-* [ ] DEV: Check the [crash reporter](https://confluence.owncloud.com/display/OG/Online+Updater%2C+Crash+reporter%2C+Transifex#OnlineUpdater,Crashreporter,Transifex-CrashReporter) for bad/frequent crashes
diff --git a/.github/release_template.md b/.github/release_template.md
index ef95c8d14d5..69a4bfa14bf 100644
--- a/.github/release_template.md
+++ b/.github/release_template.md
@@ -1,115 +1,89 @@
-
-
-Open an issue called 'Release 2.x.0' in client repository and copy below text into a task and tick the items:
-
-
-Major/Minor release template. Enter here, when we have three estimated dates:
-
-* Date of feature freeze
-* Date of QA start
-* Date of final
-
-
-### Before Branching Off:
-
-* [ ] Dev: Make sure previous minor/major version's branch is merged into current master branch e.g. 2.6 into master "one flow" - @TheOneRing @guruz
-* [ ] Dev: Check [dependencies](https://handbook.owncloud.com/release_processes/client/dependencies.html) for updates - @TheOneRing @guruz
-* [ ] Dev: Update [ChangeLog](https://handbook.owncloud.com/release_processes/client/change_log.html) - @TheOneRing @guruz
-* [ ] QA: Update [Test Plans](https://handbook.owncloud.com/release_processes/client/testlink.html) - @HanaGemela @jnweiger
-* [ ] QA: Review list of [supported platforms](https://handbook.owncloud.com/release_processes/client/supported_platforms.html) - @HanaGemela @jnweiger @TheOneRing @guruz
-* [ ] QA: Update [documentation](https://handbook.owncloud.com/release_processes/client/documentation.html) - @HanaGemela @jnweiger
-* [ ] QA: Check Sprint Board for remaining issues - @HanaGemela @jnweiger
-
-### On the Day of the First Daily Build of the New Branch:
-
-* [ ] Dev: Internally announce it feature freeze - @TheOneRing @guruz
-* [ ] Dev: Edit [`VERSION.cmake`](https://handbook.owncloud.com/release_processes/client/branch.html#version-cmake) - @TheOneRing @guruz
-* [ ] QA: Adjust [Linux Templates](https://handbook.owncloud.com/release_processes/client/branch.html#linux-templates) - @HanaGemela @jnweiger
-* [ ] QA: Adjust [ownBrander](https://handbook.owncloud.com/release_processes/client/branch.html#ownbrander) - @HanaGemela @jnweiger
-* [ ] QA: Adjust [AppVeyor](https://handbook.owncloud.com/release_processes/client/branch.html#appveyor) - @HanaGemela @jnweiger
-* [ ] QA: Adjust [drone](https://handbook.owncloud.com/release_processes/client/branch.html#drone) - @HanaGemela @jnweiger
-* [ ] QA: Adjust [translation jobs](https://handbook.owncloud.com/release_processes/client/branch.html#translations) - @HanaGemela @jnweiger
-* [ ] QA: Use `obs-copyprj.sh` to backup the desktop project to `desktop:client-2.6.x` (unless already done) - @HanaGemela @jnweiger
-* [ ] Dev: Start running automated tests on the dailies - @TheOneRing @guruz
-
-### After the First Daily Build of the New Branch:
-
-* [ ] Announce the new branch to community and advertise dailies for public testing - marketing
-* [ ] QA: [Antivirus scan](https://handbook.owncloud.com/release_processes/client/virus.html) - @HanaGemela @jnweiger
-
-### For All Sprint Builds:
-
-* [ ] Add latest updates to Changelog in the client source repository
-* [ ] Branch off a release branch called VERSION-rcX or VERSION-betaX (without v, v is for tags)
-* [ ] Edit ```VERSION.cmake``` to set the suffix to beta1, beta2 etc in the release branch
-* [ ] (TODO: move to patch-release checklist) Make sure to increase the version number of the branched of release, e.g. if you release 2.3.2 then you should change VERSION.cmake in 2.3 to 2.3.3 since that branch now will be 2.3.3
-* [ ] Create [builds](https://handbook.owncloud.com/release_processes/client/build.html#sprint-build) for theme 'ownCloud' and 'testpilotcloud' @jnweiger @hvonreth
-* [ ] Check if *tar.xz.asc files are there. If not follow the [instructions](https://github.com/owncloud/enterprise/wiki/Desktop-Signing-Knowledge)
-* [ ] Run [the smoke test](https://handbook.owncloud.com/release_processes/client/smoke_test.html)
-* [ ] Linux: Run [test](https://gitea.owncloud.services/client/linux-docker-install/src/branch/master/RUN.sh) with repo=https://download.opensuse.org/repositories/isv:/ownCloud:/desktop:/testing
-* [ ] Linux: add/remove [build targets](https://handbook.owncloud.com/release_processes/client/supported_platforms.html) @hvonreth @jnweiger
-* [ ] Create a [signed tag](https://github.com/owncloud/enterprise/wiki/Desktop-Signing-Knowledge) using ```git tag -u E94E7B37 tagname``` @guruz @jnweiger (TODO: is this still needed?)
-* [ ] Update the wordpress content at owncloud.org/download @florian - marketing
-* [ ] Inform packagers: @dragotin (openSUSE) - marketing
-* [ ] Announce on [central](https://central.owncloud.org) (copy old announcement, link to changelog, download links etc) TODO: itemize what goes into the announcement: deprecation warnings. ... - marketing
-* [ ] Inform community mailinglists devel@owncloud.org and testpilots@owncloud.org (make sure to mention it is an rc). Link to the central post so discussion happens there. - marketing
-* [ ] Check crash reporter after some days @guruz @hvonreth
-* [ ] Update unstable channel in the owncloud hosted auto updater. Instructions [here](https://github.com/owncloud/enterprise/blob/master/client_update_checker/README.md#deploy) and [here](https://handbook.owncloud.com/release_processes/client/desktop.html#update-the-updater) @hgemela @jnweiger
-
-### One Week Before the Final Release (Skip this section for patch releases):
-
-* [ ] Communicate the release schedule on rocket-chat #release-coordination and mailinglist release-coordination@owncloud.com. Give a high level overview of the upcoming new features, changes etc.
-* [ ] Ensure marketing is aware (marketing@owncloud.com) and prepared for the release (social, .com website, cust.communications) - 1 week before minor, 2 weeks before major (minor/major is about impact)
-* [ ] Inform Achim (ageissel@owncloud.com) and GCX that the next version will be in 1 week (gcx@owncloud.com) - marketing
-
-### One Day Before the Final Release:
-* [ ] Check [crash reporter](https://handbook.owncloud.com/release_processes/client/desktop.html#crash-reporter) for bad crashes of this RC (same crash happening to many users) @guruz @hvonreth
-* [ ] Check the translations coming from transifex: All synchronized? TODO: (20181109jw: where? how?)
-* [ ] Review drone results: `make test` TODO: Mac, [Lin](https://drone.owncloud.services/client/build-linux), Win?
-* [ ] Run smashbox (20180719 jw: FIXME: add details, how?) (ask @dschmidt, put link to smashbox results here)
-* [ ] Inform product management and marketing and #general channel in rocker chat that we are 1 day out
-
-### On Release Day (for the Final Release):
-For major, minor, and patch releases, but skip this section for ALPHA/BETA
-
-* [ ] Add last updates to Changelog in the client source repository @hvonreth @hgemela
-* [ ] Branch off a release branch once QA is done, tag with a release vA.B.C (with v, as v is for tags) @hvonreth @guruz
-* [ ] Edit ```VERSION.cmake``` hange suffix from 'git' or 'rc' to empty string "". Commit the result to the release branch only @hvonreth @guruz
-* [ ] Create [builds](https://handbook.owncloud.com/release_processes/client/build.html#final-build) for theme 'ownCloud' and 'testpilotcloud' @jnweiger @hvonreth
-* [ ] Check if *tar.xz.asc files are [here](https://download.owncloud.com/desktop/testing). If not follow the [instructions](https://github.com/owncloud/enterprise/wiki/Desktop-Signing-Knowledge)
-* [ ] Branch isv:ownCloud:desktop to isv:ownCloud:desktop:client-X.Y.Z using [obs_integration](https://github.com/owncloud/administration/blob/master/jenkins/obs_integration/) the Linux packages will always land in the :testing repository - @jnweiger
- ```obs-deepcopy-prj.sh isv:ownCloud:desktop isv:ownCloud:desktop:client-2.5.1```
-* [ ] Run [the smoke test](https://handbook.owncloud.com/release_processes/client/smoke_test.html)
-* [ ] Linux: Run [test](https://gitea.owncloud.services/client/linux-docker-install/src/branch/master/RUN.sh) repo=https://download.opensuse.org/repositories/isv:/ownCloud:/desktop:/testing - @jnweiger
-* [ ] Win/Mac Copy builds from ```testing``` to ```stable``` on download.owncloud.com, double check the download links. (make sure the .asc is there too.
-* [ ] Linux: also copy the *.linux-repo.html files from ```testing``` to ```stable``` **and** edit away the `:testing` strings.
-* [ ] Linux: disable publishing on project isv:ownCloud:desktop
-* [ ] Linux: copy from testing to released in OBS:
- ```obs-deepcopy-prj.sh isv:ownCloud:desktop:testing isv:ownCloud:desktop```
- ```obs-deepcopy-prj.sh isv:ownCloud:testpilot:testing isv:ownCloud:testpilot```
-* [ ] Linux: Re-enable OBS publishing on the project after official release date and if all distros build (check for accidentially disabled packages too)
-* [ ] Test all advertised download links to have the expected version
-* [ ] Linux: Wait until everything is built and published, then disable publishing on project isv:ownCloud:desktop
-* [ ] Create git [signed](https://github.com/owncloud/enterprise/wiki/Desktop-Signing-Knowledge) tag in client repository using ```git tag -u E94E7B37 tagname```
-* [ ] Increment version number in daily builds. Special case: after the last release in a branch, jump forward to the 'next release branch'... That may mean, this is nightly is the same as edge then.
-* [ ] Create same tag for MSI code - @dschmidt
-* [ ] Create same tag for Windows toolchain - @dschmidt
-* [ ] Create same tag (actually a symlink) for macOS toolchain - @dschmidt
-* [ ] Create a (draft) release [here](https://github.com/owncloud/client/releases)
-* [ ] 1h later check [changelog on website](https://owncloud.org/changelog/desktop-client/) -> it pulls from the master branch ChangeLog file hourly. - @jnweiger
-* [ ] Update [org website](https://owncloud.org/download/#owncloud-desktop-client) -> Download ownCloud -> click open 'Desktop Client', edit win/mac/lin, each all three tabs "Production", "Technical Preview" [disabled], "Test pilot" enabled, edit the links.
-* [ ] Add the previous release to [older version](https://owncloud.org/download/older-versions/) @jnweiger + fwittek
-* [ ] Ping marketing to do their [actions](https://handbook.owncloud.com/release_processes/client/marketing.html)
-* [ ] Take pride and celebrate!
-* [ ] Tell GCX to increment the minimum supported version for enterprise customers - @mstingl
-* [ ] Check if [minimum.supported.desktop.version](https://github.com/owncloud/core/blob/master/config/config.sample.php#L1152) needs to be updated in server
- * [ ] Ensure that the [client release template](https://github.com/owncloud/client/edit/notes-from-the-etherpad/.github/release_template.md) is up to date
-* [ ] After OBS built everything, disable publishing in OBS to prevent that accidential rebuilds hit the end users.- @jnweiger
-
-## A few days after the release (for final release)
-
-* [ ] Check the crash reporter if auto update is a good idea or we need a new release
-* [ ] Update the owncloud hosted auto [updater](https://github.com/owncloud/enterprise/blob/master/client_update_checker/README.md#deploy)
+## Reason
+
+* Needed for branded client X.x.x release (link to branded release ticket)
+
+### Template
+[Release Template](https://github.com/owncloud/client/blob/master/.github/release_template.md)
+
+__TODO__:
+* Check if anything is missing from [release_template_outdated_2020.md](https://github.com/owncloud/client/blob/master/.github/release_template_outdated_2020.md) and merge here. We use the same template for a patch, minor or major release now.
+* For each item add a link to the respective action if available
+
+### Administration
+
+* [ ] QA: Update [Test Plans](https://infinite.owncloud.com/f/31e6d44f-f373-557c-9ab3-1748fc0c650d$4994cd9c-1c17-4254-829a-f5ef6e1ff7e3%21c0c0d47e-5da5-4254-8b02-bd8e97d43dfb)
+* [ ] Update [supported platforms](https://doc.owncloud.com/desktop/next/installing.html#system-requirements) @DeepDiver1975
+* [ ] QA: Check the translations coming from transifex: https://github.com/owncloud/client/commits/ -> Filter based on a release branch/tag and search for `[tx] updated client translations from transifex [skip ci]`
+* [ ] DEV: Check for new OpenSSL version
+* [ ] DEV: Update [dependencies](https://infinite.owncloud.com/f/31e6d44f-f373-557c-9ab3-1748fc0c650d$4994cd9c-1c17-4254-829a-f5ef6e1ff7e3%21d231d3ed-498f-42b8-87e0-87420e66e16c)
+* [ ] DEV: For a major release create `X` version branch
+ * [ ] QA: In drone adjust the branch for nightly [GUI tests](https://infinite.owncloud.com/f/31e6d44f-f373-557c-9ab3-1748fc0c650d$4994cd9c-1c17-4254-829a-f5ef6e1ff7e3%21be0a8bd0-0029-4335-9c4a-98303d89aa9f) @individual-it
+* [ ] QA: Communicate documentation changes
+ * [ ] Inform documentation team about the start of testing phase (latest a week before the release!). They'll prepare a PR with respective doc version
+ * [ ] Open issues in ``docs-client-desktop`` repo for already known doc-relevant items and mark them accordingly, e.g. backport to 2.X.x necessary
+* [ ] Decide if the prerelease stage will be public or internal @DeepDiver1975
+
+### Copy for Each Build (Beta/RC)
+
+* [ ] DEV: Tag (Beta or RC) and build [builds](https://gitea.owncloud.services/client/do_release) for theme 'ownCloud' and 'testpilotcloud'
+* [ ] QA: [Smoke test](https://infinite.owncloud.com/f/31e6d44f-f373-557c-9ab3-1748fc0c650d$4994cd9c-1c17-4254-829a-f5ef6e1ff7e3%21bc6b66c2-84e3-4a92-926c-c7fa2492f85e)
+* [ ] DEV: GitHub release
+* [ ] Beta/RC Communication
+ * [ ] TODO
+ * [ ] For public prerelease: Write/edit Central post https://central.owncloud.org/tags/c/news/desktop with link to GitHub release
+* [ ] DEV: Prepare the update server for new version (AppImages included)
+ * [ ] DEV: Provide 'testpilotcloud' on **Beta** update channel
+
+### QA
+
+* [ ] QA: [Antivirus scan](https://www.virustotal.com/) the first RC
+* [ ] QA: [Upload](https://confluence.owncloud.com/display/OG/Upload+linux+gpg+keys+to+key+server) linux gpg keys to key server
+* [ ] QA: Check Crash reporter: start 'owncloud --debug' on cmd line, system tray right click menu: 'Crash now - qt fatal' -> report window not empty, sending the report works
+ * [ ] Windows
+ * [ ] macOS
+ * [ ] AppImage (Linux)
+* [Automated tests](https://infinite.owncloud.com/f/31e6d44f-f373-557c-9ab3-1748fc0c650d$4994cd9c-1c17-4254-829a-f5ef6e1ff7e3%21073f546f-59af-42f2-8a47-1480a051b6cc) (for the first beta and the last RC):
+ * [ ] QA: GUI tests passed on a tag
+ * [ ] QA: All [Linux platform install](https://infinite.owncloud.com/f/31e6d44f-f373-557c-9ab3-1748fc0c650d$4994cd9c-1c17-4254-829a-f5ef6e1ff7e3%21bd275422-5fff-414e-aa67-23cad9b4aac8)
+* Manual tests:
+ * [ ] QA: [Changelog](https://github.com/owncloud/client/blob/master/CHANGELOG.md) test
+ * [ ] QA: Regression test
+ * [ ] QA: Branded regression test
+
+### Prerequisites for final release
+
+* [ ] DEV: Create vX.Y.Z release tag in client repo and everywhere else
+* [ ] DEV: bump VERSION.cmake in master to say X.(Y+1).Z unless already done.
+
+### Final Rebuild after QA Approval
+
+* [ ] QA: Inform documentation team that the tag for the final release will be set a day or at least half a day __before__ (only for a major/minor release). They'll merge docs PR before that.
+* [ ] DEV: Create final release tag (e.g., `vX.Y.Z`)
+* [ ] DEV: Create [builds](https://confluence.owncloud.com/display/OG/Build+and+Tags#BuildandTags-Tags) for themes 'ownCloud' and 'testpilotcloud' for final release tag
+* [ ] DEV: Update version for future builds
+* [ ] QA: Check [squish tests](https://infinite.owncloud.com/f/31e6d44f-f373-557c-9ab3-1748fc0c650d$4994cd9c-1c17-4254-829a-f5ef6e1ff7e3%21073f546f-59af-42f2-8a47-1480a051b6cc) running successfully on [drone](https://drone.owncloud.com/owncloud/client) for the final tag vX.Y.Z
+* [ ] QA: Create a new release issue for a branded release if needed [Branded Client Release Template](https://github.com/owncloud/enterprise/blob/master/internal_release_templates/internal_client_release_template.md)
+
+### Final Steps
+
+* [ ] QA: [Smoke test](https://infinite.owncloud.com/f/31e6d44f-f373-557c-9ab3-1748fc0c650d$4994cd9c-1c17-4254-829a-f5ef6e1ff7e3%21bc6b66c2-84e3-4a92-926c-c7fa2492f85e)
+* [ ] DEV: Publish the release in GitHub
+* [ ] QA: Update lines 4 and 5 of [install docs](https://github.com/owncloud/docs-client-desktop/blob/master/modules/ROOT/pages/installing.adoc) with the final build number. Merge into master and backport to the respective branch
+* [ ] QA: Check that [documentation](https://doc.owncloud.com/desktop/next/) offers the new version
+* [ ] DEV: Merge version branch into master
+* [ ] DEV: Update [SBOM](https://cloud.owncloud.com/f/6072843)
+
+### [Marketing and Communication](https://confluence.owncloud.com/display/OG/Marketing+and+Communication)
+
+* [ ] QA: Inform Kiteworks marketing to update links on https://owncloud.com/desktop-app/ (provide links from GitHub releases) and [wiki de](https://de.wikipedia.org/wiki/OwnCloud), [wiki en](https://en.wikipedia.org/wiki/OwnCloud), [wikidata](https://www.wikidata.org/wiki/Q20763576))
+* [ ] QA: Central post https://central.owncloud.org/tags/c/news/desktop
+
+### Infrastructure Check
+
+* [ ] QA/DEV: Update [stable channel](https://confluence.owncloud.com/display/OG/Online+Updater%2C+Crash+reporter%2C+Transifex#OnlineUpdater,Crashreporter,Transifex-UpdatetheUpdater) in the owncloud hosted auto updater
+* [ ] QA: Check the linux download pages whether the URLs are correct (e.g. contain stable, not testing)
+* [ ] QA: Ensure that the [client release template](https://github.com/owncloud/client/blob/master/.github/release_template.md) is up to date
+
+### A Few Days After the Release
+
+* [ ] DEV: Check the [crash reporter](https://confluence.owncloud.com/display/OG/Online+Updater%2C+Crash+reporter%2C+Transifex#OnlineUpdater,Crashreporter,Transifex-CrashReporter) for bad/frequent crashes
diff --git a/.github/release_template_outdated_2020.md b/.github/release_template_outdated_2020.md
new file mode 100644
index 00000000000..01d632f458e
--- /dev/null
+++ b/.github/release_template_outdated_2020.md
@@ -0,0 +1,116 @@
+
+
+Open an issue called 'Release 2.x.0' in client repository and copy below text into a task and tick the items:
+
+
+Major/Minor release template. Enter here, when we have three estimated dates:
+
+* Date of feature freeze
+* Date of QA start
+* Date of final
+
+
+### Before Branching Off:
+
+* [ ] Dev: Make sure previous minor/major version's branch is merged into current master branch e.g. 2.6 into master "one flow" - @TheOneRing @guruz
+* [ ] Dev: Check [dependencies](https://handbook.owncloud.com/release_processes/client/dependencies.html) for updates - @TheOneRing @guruz
+* [ ] Dev: Update [ChangeLog](https://handbook.owncloud.com/release_processes/client/change_log.html) - @TheOneRing @guruz
+* [ ] QA: Update [Test Plans](https://handbook.owncloud.com/release_processes/client/testlink.html) - @HanaGemela @jnweiger
+* [ ] QA: Review list of [supported platforms](https://handbook.owncloud.com/release_processes/client/supported_platforms.html) - @HanaGemela @jnweiger @TheOneRing @guruz
+* [ ] QA: Update [documentation](https://handbook.owncloud.com/release_processes/client/documentation.html) - @HanaGemela @jnweiger
+* [ ] QA: Check Sprint Board for remaining issues - @HanaGemela @jnweiger
+
+### On the Day of the First Daily Build of the New Branch:
+
+* [ ] Dev: Internally announce it feature freeze - @TheOneRing @guruz
+* [ ] Dev: Edit [`VERSION.cmake`](https://handbook.owncloud.com/release_processes/client/branch.html#version-cmake) - @TheOneRing @guruz
+* [ ] QA: Adjust [Linux Templates](https://handbook.owncloud.com/release_processes/client/branch.html#linux-templates) - @HanaGemela @jnweiger
+* [ ] QA: Adjust [ownBrander](https://handbook.owncloud.com/release_processes/client/branch.html#ownbrander) - @HanaGemela @jnweiger
+* [ ] QA: Adjust [AppVeyor](https://handbook.owncloud.com/release_processes/client/branch.html#appveyor) - @HanaGemela @jnweiger
+* [ ] QA: Adjust [drone](https://handbook.owncloud.com/release_processes/client/branch.html#drone) - @HanaGemela @jnweiger
+* [ ] QA: Adjust [translation jobs](https://handbook.owncloud.com/release_processes/client/branch.html#translations) - @HanaGemela @jnweiger
+* [ ] QA: Use `obs-copyprj.sh` to backup the desktop project to `desktop:client-2.6.x` (unless already done) - @HanaGemela @jnweiger
+* [ ] QA: Adjust branch of Cron Job `nightly-2-x` to the next release branch @HanaGemela @individual-it
+* [ ] Dev: Start running automated tests on the dailies - @TheOneRing @guruz
+
+### After the First Daily Build of the New Branch:
+
+* [ ] Announce the new branch to community and advertise dailies for public testing - marketing
+* [ ] QA: [Antivirus scan](https://handbook.owncloud.com/release_processes/client/virus.html) - @HanaGemela @jnweiger
+
+### For All Sprint Builds:
+
+* [ ] Add latest updates to Changelog in the client source repository
+* [ ] Branch off a release branch called VERSION-rcX or VERSION-betaX (without v, v is for tags)
+* [ ] Edit ```VERSION.cmake``` to set the suffix to beta1, beta2 etc in the release branch
+* [ ] (TODO: move to patch-release checklist) Make sure to increase the version number of the branched of release, e.g. if you release 2.3.2 then you should change VERSION.cmake in 2.3 to 2.3.3 since that branch now will be 2.3.3
+* [ ] Create [builds](https://handbook.owncloud.com/release_processes/client/build.html#sprint-build) for theme 'ownCloud' and 'testpilotcloud' @jnweiger @hvonreth
+* [ ] Check if *tar.xz.asc files are there. If not follow the [instructions](https://github.com/owncloud/enterprise/wiki/Desktop-Signing-Knowledge)
+* [ ] Run [the smoke test](https://handbook.owncloud.com/release_processes/client/smoke_test.html)
+* [ ] Linux: Run [test](https://gitea.owncloud.services/client/linux-docker-install/src/branch/master/RUN.sh) with repo=https://download.opensuse.org/repositories/isv:/ownCloud:/desktop:/testing
+* [ ] Linux: add/remove [build targets](https://handbook.owncloud.com/release_processes/client/supported_platforms.html) @hvonreth @jnweiger
+* [ ] Create a [signed tag](https://github.com/owncloud/enterprise/wiki/Desktop-Signing-Knowledge) using ```git tag -u E94E7B37 tagname``` @guruz @jnweiger (TODO: is this still needed?)
+* [ ] Update the wordpress content at owncloud.org/download @florian - marketing
+* [ ] Inform packagers: @dragotin (openSUSE) - marketing
+* [ ] Announce on [central](https://central.owncloud.org) (copy old announcement, link to changelog, download links etc) TODO: itemize what goes into the announcement: deprecation warnings. ... - marketing
+* [ ] Inform community mailinglists devel@owncloud.org and testpilots@owncloud.org (make sure to mention it is an rc). Link to the central post so discussion happens there. - marketing
+* [ ] Check crash reporter after some days @guruz @hvonreth
+* [ ] Update unstable channel in the owncloud hosted auto updater. Instructions [here](https://github.com/owncloud/enterprise/blob/master/client_update_checker/README.md#deploy) and [here](https://handbook.owncloud.com/release_processes/client/desktop.html#update-the-updater) @hgemela @jnweiger
+
+### One Week Before the Final Release (Skip this section for patch releases):
+
+* [ ] Communicate the release schedule on rocket-chat #release-coordination and mailinglist release-coordination@owncloud.com. Give a high level overview of the upcoming new features, changes etc.
+* [ ] Ensure marketing is aware (marketing@owncloud.com) and prepared for the release (social, .com website, cust.communications) - 1 week before minor, 2 weeks before major (minor/major is about impact)
+* [ ] Inform Achim (ageissel@owncloud.com) and GCX that the next version will be in 1 week (gcx@owncloud.com) - marketing
+
+### One Day Before the Final Release:
+* [ ] Check [crash reporter](https://handbook.owncloud.com/release_processes/client/desktop.html#crash-reporter) for bad crashes of this RC (same crash happening to many users) @guruz @hvonreth
+* [ ] Check the translations coming from transifex: All synchronized? TODO: (20181109jw: where? how?)
+* [ ] Review drone results: `make test` TODO: Mac, [Lin](https://drone.owncloud.services/client/build-linux), Win?
+* [ ] Run smashbox (20180719 jw: FIXME: add details, how?) (ask @dschmidt, put link to smashbox results here)
+* [ ] Inform product management and marketing and #general channel in rocker chat that we are 1 day out
+
+### On Release Day (for the Final Release):
+For major, minor, and patch releases, but skip this section for ALPHA/BETA
+
+* [ ] Add last updates to Changelog in the client source repository @hvonreth @hgemela
+* [ ] Branch off a release branch once QA is done, tag with a release vA.B.C (with v, as v is for tags) @hvonreth @guruz
+* [ ] Edit ```VERSION.cmake``` hange suffix from 'git' or 'rc' to empty string "". Commit the result to the release branch only @hvonreth @guruz
+* [ ] Create [builds](https://handbook.owncloud.com/release_processes/client/build.html#final-build) for theme 'ownCloud' and 'testpilotcloud' @jnweiger @hvonreth
+* [ ] Check if *tar.xz.asc files are [here](https://download.owncloud.com/desktop/testing). If not follow the [instructions](https://github.com/owncloud/enterprise/wiki/Desktop-Signing-Knowledge)
+* [ ] Branch isv:ownCloud:desktop to isv:ownCloud:desktop:client-X.Y.Z using [obs_integration](https://github.com/owncloud/administration/blob/master/jenkins/obs_integration/) the Linux packages will always land in the :testing repository - @jnweiger
+ ```obs-deepcopy-prj.sh isv:ownCloud:desktop isv:ownCloud:desktop:client-2.5.1```
+* [ ] Run [the smoke test](https://handbook.owncloud.com/release_processes/client/smoke_test.html)
+* [ ] Linux: Run [test](https://gitea.owncloud.services/client/linux-docker-install/src/branch/master/RUN.sh) repo=https://download.opensuse.org/repositories/isv:/ownCloud:/desktop:/testing - @jnweiger
+* [ ] Win/Mac Copy builds from ```testing``` to ```stable``` on download.owncloud.com, double check the download links. (make sure the .asc is there too.
+* [ ] Linux: also copy the *.linux-repo.html files from ```testing``` to ```stable``` **and** edit away the `:testing` strings.
+* [ ] Linux: disable publishing on project isv:ownCloud:desktop
+* [ ] Linux: copy from testing to released in OBS:
+ ```obs-deepcopy-prj.sh isv:ownCloud:desktop:testing isv:ownCloud:desktop```
+ ```obs-deepcopy-prj.sh isv:ownCloud:testpilot:testing isv:ownCloud:testpilot```
+* [ ] Linux: Re-enable OBS publishing on the project after official release date and if all distros build (check for accidentially disabled packages too)
+* [ ] Test all advertised download links to have the expected version
+* [ ] Linux: Wait until everything is built and published, then disable publishing on project isv:ownCloud:desktop
+* [ ] Create git [signed](https://github.com/owncloud/enterprise/wiki/Desktop-Signing-Knowledge) tag in client repository using ```git tag -u E94E7B37 tagname```
+* [ ] Increment version number in daily builds. Special case: after the last release in a branch, jump forward to the 'next release branch'... That may mean, this is nightly is the same as edge then.
+* [ ] Create same tag for MSI code - @dschmidt
+* [ ] Create same tag for Windows toolchain - @dschmidt
+* [ ] Create same tag (actually a symlink) for macOS toolchain - @dschmidt
+* [ ] Create a (draft) release [here](https://github.com/owncloud/client/releases)
+* [ ] 1h later check [changelog on website](https://owncloud.org/changelog/desktop-client/) -> it pulls from the master branch ChangeLog file hourly. - @jnweiger
+* [ ] Update [org website](https://owncloud.org/download/#owncloud-desktop-client) -> Download ownCloud -> click open 'Desktop Client', edit win/mac/lin, each all three tabs "Production", "Technical Preview" [disabled], "Test pilot" enabled, edit the links.
+* [ ] Add the previous release to [older version](https://owncloud.org/download/older-versions/) @jnweiger + fwittek
+* [ ] Ping marketing to do their [actions](https://handbook.owncloud.com/release_processes/client/marketing.html)
+* [ ] Take pride and celebrate!
+* [ ] Tell GCX to increment the minimum supported version for enterprise customers - @mstingl
+* [ ] Check if [minimum.supported.desktop.version](https://github.com/owncloud/core/blob/master/config/config.sample.php#L1152) needs to be updated in server
+ * [ ] Ensure that the [client release template](https://github.com/owncloud/client/edit/notes-from-the-etherpad/.github/release_template.md) is up to date
+* [ ] After OBS built everything, disable publishing in OBS to prevent that accidential rebuilds hit the end users.- @jnweiger
+
+## A few days after the release (for final release)
+
+* [ ] Check the crash reporter if auto update is a good idea or we need a new release
+* [ ] Update the owncloud hosted auto [updater](https://github.com/owncloud/enterprise/blob/master/client_update_checker/README.md#deploy)
diff --git a/.github/workflows/.craft.ps1 b/.github/workflows/.craft.ps1
index b1e5a31a946..5050ce56381 100644
--- a/.github/workflows/.craft.ps1
+++ b/.github/workflows/.craft.ps1
@@ -1,10 +1,20 @@
if ($IsWindows) {
- $python = (Get-Command py).Source
+ $python=(python -c "import sys; print(sys.executable)")
+ Write-Host "Python ${python}"
} else {
$python = (Get-Command python3).Source
}
-$command = @("${env:HOME}/craft/CraftMaster/CraftMaster/CraftMaster.py", "--config", "${env:GITHUB_WORKSPACE}/.craft.ini", "--target", "${env:CRAFT_TARGET}", "--variables", "WORKSPACE=${env:HOME}/craft") + $args
+
+$RepoRoot = "{0}/../../" -f ([System.IO.Path]::GetDirectoryName($myInvocation.MyCommand.Definition))
+$command = @("${env:HOME}/craft/CraftMaster/CraftMaster/CraftMaster.py",
+ "--config", "${RepoRoot}/.craft.ini",
+ "--config-override", "${RepoRoot}/.github/workflows/craft_override.ini",
+ "--target", "${env:CRAFT_TARGET}",
+ "--variables", "WORKSPACE=${env:HOME}/craft") + $args
Write-Host "Exec: ${python} ${command}"
& $python @command
+if ($LASTEXITCODE -ne 0) {
+ exit 1
+}
diff --git a/.github/workflows/.run-clang-tidy.ps1 b/.github/workflows/.run-clang-tidy.ps1
new file mode 100644
index 00000000000..a929252fc2c
--- /dev/null
+++ b/.github/workflows/.run-clang-tidy.ps1
@@ -0,0 +1,7 @@
+cd "${env:GITHUB_WORKSPACE}"
+
+# allow errors as some files can't be compiled on all platforms
+$oldErrorActio = $ErrorActionPreference
+$ErrorActionPreference="Continue"
+git ls-files *.cpp | ForEach-Object -Parallel {clang-tidy -p $env:BUILD_DIR/compile_commands.json $_ } -ThrottleLimit 5 | Tee-Object -Path $env:TMPDIR/clang-tidy.log
+$ErrorActionPreference = $oldErrorActio
diff --git a/.github/workflows/.sonar.ps1 b/.github/workflows/.sonar.ps1
index a7c865cb136..2ee049c9123 100644
--- a/.github/workflows/.sonar.ps1
+++ b/.github/workflows/.sonar.ps1
@@ -1,4 +1,4 @@
-$env:SONAR_SCANNER_VERSION = "4.4.0.2170"
+$env:SONAR_SCANNER_VERSION = "5.0.0.2966"
$env:SONAR_DIRECTORY = [System.IO.Path]::Combine($(get-location).Path,".sonar")
$env:SONAR_SCANNER_HOME = "$env:SONAR_DIRECTORY/sonar-scanner-$env:SONAR_SCANNER_VERSION-windows"
rm $env:SONAR_SCANNER_HOME -Force -Recurse -ErrorAction SilentlyContinue
diff --git a/.github/workflows/branded-client.yml b/.github/workflows/branded-client.yml
new file mode 100644
index 00000000000..ddef52a439c
--- /dev/null
+++ b/.github/workflows/branded-client.yml
@@ -0,0 +1,82 @@
+name: GUI Tests (Branded Client)
+
+on:
+ workflow_dispatch:
+ schedule:
+ - cron: "0 0 * * *"
+
+env:
+ NPM_GHERLINT: "@gherlint/gherlint@1.1.0"
+
+jobs:
+ gui-tests:
+ runs-on: ubuntu-latest
+ container: owncloudci/squish:fedora-42-8.1.0-qt68x-linux64
+ env:
+ PLAYWRIGHT_BROWSERS_PATH: /__w/client/client/test/gui/.playwright
+ GITHUB_REPO: ${{ github.repository }}
+ GITHUB_RUN_NUMBER: ${{ github.run_number }}
+ steps:
+ - name: Checkout
+ uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
+
+ - name: Build client
+ run: |
+ mkdir -p build
+ cd build
+ cmake -G"Ninja" \
+ -DWITH_EXTERNAL_BRANDING=https://x-access-token:${{ secrets.KW_THEME_PAT }}@github.com/owncloud/client-desktop-theme-kiteworks.git \
+ -DCMAKE_BUILD_TYPE=Debug \
+ -DBUILD_TESTING=OFF \
+ -S ..
+ ninja
+
+ - name: Install Python Modules
+ run: |
+ export PATH=$PATH:/github/home/.local/bin
+ make -C test/gui install
+ python3.10 -m pip list -v
+
+ - name: Create GUI test report directory
+ run: |
+ mkdir test/gui/guiReportUpload/screenshots -p
+ chmod 777 test/gui -R
+
+ - name: Map predefined users
+ run: echo "${{ secrets.PREDEFINED_USERS }}" | base64 -d > test/gui/users.json
+
+ - name: Run GUI tests
+ id: run_gui_test
+ env:
+ LICENSEKEY: ${{ secrets.SQUISH_LICENSEKEY }}
+ GUI_TEST_REPORT_DIR: /__w/client/client/test/gui/guiReportUpload
+ CLIENT_REPO: .
+ CLIENT_NAME: ${{ secrets.CLIENT_NAME }}
+ PERSONAL_SYNC_FOLDER: ${{ secrets.PERSONAL_SYNC_FOLDER }}
+ PREDEFINED_USERS: users.json
+ OCIS_URL: ${{secrets.BACKEND_HOST}}
+ BACKEND_HOST: ${{secrets.BACKEND_HOST}}
+ SECURE_BACKEND_HOST: ${{secrets.BACKEND_HOST}}
+ OCIS: true
+ SERVER_INI: test/gui/ci/client_server.ini
+ SQUISH_PARAMETERS: >
+ --testsuite test/gui
+ --reportgen html,test/gui/guiReportUpload
+ --envvar QT_LOGGING_RULES=sync.httplogger=true;gui.socketapi=false
+ --tags ~@skip --tags ~@skipOnLinux --tags @predefined_users
+ --abortOnFail
+ STACKTRACE_FILE: test/gui/guiReportUpload/stacktrace.log
+ OWNCLOUD_CORE_DUMP: 1
+ RECORD_VIDEO_ON_FAILURE: false
+ COREPACK_ENABLE_STRICT: 0
+ HOME: /home/headless
+ run: bash /dockerstartup/entrypoint.sh
+
+ - name: Upload GUI test result
+ if: ${{ failure() && steps.run_gui_test.outcome == 'failure' }}
+ uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
+ with:
+ name: gui-report-branded-client-${{ github.run_number }}
+ path: test/gui/guiReportUpload
+ if-no-files-found: warn
+ retention-days: 7
diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml
new file mode 100644
index 00000000000..cbffdb040ef
--- /dev/null
+++ b/.github/workflows/changelog.yml
@@ -0,0 +1,17 @@
+name: Changelog
+
+on:
+ pull_request:
+ push:
+ branches: [ master ]
+ tags: [ "*" ]
+
+permissions:
+ contents: read
+
+jobs:
+ changelog:
+ uses: owncloud/reusable-workflows/.github/workflows/calens.yml@main
+ secrets:
+ APP_ID: ${{ secrets.CALENS_APP_ID }}
+ APP_PRIVATE_KEY: ${{ secrets.CALENS_APP_PRIVATE_KEY }}
diff --git a/.github/workflows/clang-format.yml b/.github/workflows/clang-format.yml
deleted file mode 100644
index d32c3add942..00000000000
--- a/.github/workflows/clang-format.yml
+++ /dev/null
@@ -1,13 +0,0 @@
-name: test-clang-format
-
-on: [pull_request]
-
-jobs:
- build:
- runs-on: ubuntu-latest
-
- steps:
- - uses: actions/checkout@v2
- with:
- fetch-depth: 2
- - uses: owncloud-ci/git-clang-format-lint@master
diff --git a/.github/workflows/craft_override.ini b/.github/workflows/craft_override.ini
new file mode 100644
index 00000000000..c27c3412264
--- /dev/null
+++ b/.github/workflows/craft_override.ini
@@ -0,0 +1,8 @@
+[GeneralSettings]
+# creating cache files on github makes no sense
+Packager/CreateCache = False
+
+[BlueprintSettings]
+# no longer preinstalled on the github images and only required to build dev-utils/breakpad-tools
+dev-utils/python2.ignored = True
+dev-utils/breakpad-tools.ignored = True
diff --git a/.github/workflows/gui-tests.yml b/.github/workflows/gui-tests.yml
new file mode 100644
index 00000000000..1299cf7034d
--- /dev/null
+++ b/.github/workflows/gui-tests.yml
@@ -0,0 +1,152 @@
+name: GUI Tests
+
+on:
+ pull_request:
+ push:
+ branches: [ master ]
+ tags: [ "*" ]
+ schedule:
+ - cron: "0 0 * * *"
+
+env:
+ NPM_GHERLINT: "@gherlint/gherlint@1.1.0"
+
+jobs:
+ lint-gui-test:
+ runs-on: ubuntu-latest
+ if: github.event_name == 'pull_request'
+ container:
+ image: owncloudci/squish:fedora-42-8.1.0-qt68x-linux64
+ steps:
+ - name: Checkout
+ uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
+
+ - name: Setup NodeJs
+ uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
+ with:
+ node-version: 18
+
+ - name: Python lint
+ run: |
+ export PATH=$PATH:/github/home/.local/bin
+ make -C test/gui install
+ make -C test/gui python-lint
+
+ - name: Gherkin lint
+ run: |
+ npm install -g ${{ env.NPM_GHERLINT }}
+ make -C test/gui gherkin-lint
+
+ gui-tests:
+ runs-on: ubuntu-latest
+ container:
+ image: owncloudci/squish:fedora-42-8.1.0-qt68x-linux64
+ env:
+ PLAYWRIGHT_BROWSERS_PATH: /__w/client/client/test/gui/.playwright
+ GITHUB_REPO: ${{ github.repository }}
+ GITHUB_RUN_NUMBER: ${{ github.run_number }}
+ services:
+ ocis:
+ image: owncloud/ocis-rolling:20260610
+ ports:
+ - 9200:9200
+ env:
+ OCIS_URL: https://ocis:9200
+ OCIS_LOG_LEVEL: "error"
+ OCIS_LOG_PRETTY: "true"
+ OCIS_LOG_COLOR: "true"
+ OCIS_INSECURE: "true"
+ PROXY_ENABLE_BASIC_AUTH: "true"
+ OCIS_ADMIN_USER_ID: "some-admin-user-id-0000-000000000000"
+ IDM_ADMIN_PASSWORD: "admin"
+ OCIS_SYSTEM_USER_ID: "some-system-user-id-000-000000000000"
+ OCIS_SYSTEM_USER_API_KEY: "some-system-user-machine-auth-api-key"
+ OCIS_JWT_SECRET: "some-ocis-jwt-secret"
+ OCIS_MACHINE_AUTH_API_KEY: "some-ocis-machine-auth-api-key"
+ OCIS_TRANSFER_SECRET: "some-ocis-transfer-secret"
+ COLLABORATION_WOPIAPP_SECRET: "some-wopi-secret"
+ IDM_SVC_PASSWORD: "some-ldap-idm-password"
+ GRAPH_LDAP_BIND_PASSWORD: "some-ldap-idm-password"
+ IDM_REVASVC_PASSWORD: "some-ldap-reva-password"
+ GROUPS_LDAP_BIND_PASSWORD: "some-ldap-reva-password"
+ USERS_LDAP_BIND_PASSWORD: "some-ldap-reva-password"
+ AUTH_BASIC_LDAP_BIND_PASSWORD: "some-ldap-reva-password"
+ IDM_IDPSVC_PASSWORD: "some-ldap-idp-password"
+ IDP_LDAP_BIND_PASSWORD: "some-ldap-idp-password"
+ GATEWAY_STORAGE_USERS_MOUNT_ID: "storage-users-1"
+ STORAGE_USERS_MOUNT_ID: "storage-users-1"
+ GRAPH_APPLICATION_ID: "application-1"
+ OCIS_SERVICE_ACCOUNT_ID: "service-account-id"
+ OCIS_SERVICE_ACCOUNT_SECRET: "service-account-secret"
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
+
+ - name: Build client
+ run: |
+ mkdir -p build
+ cd build
+ cmake -G"Ninja" -DCMAKE_BUILD_TYPE=Debug -DBUILD_TESTING=OFF -S ..
+ ninja
+
+ - name: Install Python Modules
+ run: |
+ export PATH=$PATH:/github/home/.local/bin
+ make -C test/gui install
+ python3.10 -m pip list -v
+
+ - name: Create GUI test report directory
+ run: |
+ mkdir test/gui/guiReportUpload/screenshots -p
+ chmod 777 test/gui -R
+
+ - name: Wait for ocis service
+ run: |
+ echo "Waiting for ocis"
+ # 150s timeout
+ for i in {1..30}; do
+ if curl -kfsSL https://ocis:9200 > /dev/null; then
+ echo "ocis is up ✅"
+ exit 0
+ fi
+ echo "Retrying in 5s..."
+ sleep 5
+ done
+ echo "❌ ocis failed to start" && exit 1
+
+ - name: Run GUI test
+ id: run_gui_test
+ env:
+ LICENSEKEY: ${{ secrets.SQUISH_LICENSEKEY }}
+ GUI_TEST_REPORT_DIR: /__w/client/client/test/gui/guiReportUpload
+ CLIENT_REPO: .
+ OCIS_URL: https://ocis:9200
+ BACKEND_HOST: https://ocis:9200
+ SECURE_BACKEND_HOST: https://ocis:9200
+ OCIS: true
+ SERVER_INI: test/gui/ci/server.ini
+ SQUISH_PARAMETERS: >
+ --testsuite test/gui
+ --reportgen html,test/gui/guiReportUpload
+ --envvar QT_LOGGING_RULES=sync.httplogger=true;gui.socketapi=false
+ --tags ~@skip --tags ~@skipOnLinux
+ ${{
+ !contains(github.event.pull_request.title, 'full-ci')
+ && '--abortOnFail' || ''
+ }}
+ STACKTRACE_FILE: test/gui/guiReportUpload/stacktrace.log
+ OWNCLOUD_CORE_DUMP: 1
+ RECORD_VIDEO_ON_FAILURE: false
+ COREPACK_ENABLE_STRICT: 0
+ HOME: /home/headless
+ run: bash /dockerstartup/entrypoint.sh
+
+ - name: Upload GUI test result
+ if: ${{ failure() && steps.run_gui_test.outcome == 'failure' }}
+ uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
+ with:
+ name: gui-report-ocis-${{ github.run_number }}
+ path: test/gui/guiReportUpload
+ if-no-files-found: warn
+ retention-days: 7
diff --git a/.github/workflows/lint-pr-title.yml b/.github/workflows/lint-pr-title.yml
new file mode 100644
index 00000000000..94cdcf77b73
--- /dev/null
+++ b/.github/workflows/lint-pr-title.yml
@@ -0,0 +1,18 @@
+name: Lint PR title
+
+on:
+ pull_request:
+ types:
+ - opened
+ - edited
+ - synchronize
+
+permissions: {}
+
+jobs:
+ lint:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: amannn/action-semantic-pull-request@48f256284bd46cdaab1048c3721360e808335d50 # v6.1.1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 45fe44ae1b4..ee4da54fc67 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -4,8 +4,15 @@ on:
push:
branches:
- master
- - '[0-9]+.*'
+ - '[0-9]+'
pull_request:
+ workflow_dispatch:
+
+concurrency:
+ group: ${{ github.head_ref || github.run_id }}
+ cancel-in-progress: true
+
+permissions: {}
defaults:
run:
@@ -14,23 +21,37 @@ defaults:
jobs:
# ------------------------------------------------------------------------------------------------------------------------------------------
build:
- name: Build ownCloud
- runs-on: ${{ matrix.os }}
+ permissions:
+ # actions/upload-artifact doesn't need contents: write
+ contents: read
strategy:
+ fail-fast: true
matrix:
include:
- - target: windows-msvc2019_64-cl
- os: windows-latest
- fetch-depth: 0
+ - name: windows-cl-x86_64
+ target: windows-cl-msvc2022-x86_64
+ os: windows-2022
container:
- - target: macos-64-clang
- os: macos-latest
- fetch-depth: 1
+ useSonarCloud: ${{ github.event_name != 'pull_request' }}
+ testOptions: --options '[Compile]Jobs=1'
+ # TODO: align the target with the name
+ - name: macos-clang-arm64
+ target: macos-clang-arm64
+ os: macos-15
container:
- - target: linux-64-gcc
- os: ubuntu-18.04
- container: kdeorg/centos7-craft
- fetch-depth: 1
+ useSonarCloud:
+ testOptions:
+ - name: linux-gcc-x86_64
+ target: linux-64-gcc
+ os: ubuntu-latest
+ container: owncloudci/appimage-build:sles15-amd64
+ useSonarCloud:
+ testOptions:
+ name: ${{ matrix.name }}
+ #let the other builds run even if one fails
+ #continue-on-error: true
+ runs-on: ${{ matrix.os }}
+
env:
CRAFT_TARGET: ${{ matrix.target }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -39,14 +60,23 @@ jobs:
container: ${{ matrix.container }}
steps:
- - name: Check out source code
- uses: actions/checkout@v2
+ - name: Check out full source code for tooling
+ if: ${{ matrix.useSonarCloud || matrix.name == 'linux-gcc-x86_64' }}
+ uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
- fetch-depth: ${{ matrix.fetch-depth }}
- submodules: true
+ fetch-depth: 0
+
+ - name: Check out latest commit
+ if: ${{ !matrix.useSonarCloud && matrix.name != 'linux-gcc-x86_64' }}
+ uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
+
+ - uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0
+ if: matrix.name == 'windows-cl-x86_64'
+ with:
+ python-version: '3.12'
- name: Restore cache
- uses: actions/cache@v2
+ uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: ~/cache
key: ${{ runner.os }}-${{ matrix.target }}
@@ -65,55 +95,93 @@ jobs:
- name: Prepare
run: |
+ New-Item -ItemType Directory "${env:GITHUB_WORKSPACE}/binaries/"
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --set forceAsserts=true owncloud/owncloud-client
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --set srcDir="${env:GITHUB_WORKSPACE}" owncloud/owncloud-client
if ($IsWindows) {
& "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c dev-utils/nsis
} elseif($IsLinux) {
- sudo apt-get update -y
- sudo apt-get install -y mesa-common-dev libglu1-mesa-dev libmtdev1 libgl1-mesa-dev libmtdev1 libinput-dev libxkbcommon0 libxcb-icccm4 libxcb-image0 libxcb-render-util0 libxcb-xkb1 libxkbcommon-x11-0 libxcb-keysyms1 libxcb-xinerama0 libsm6
& "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c dev-utils/linuxdeploy
}
- name: Install dependencies
run: |
- & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --install-deps owncloud/owncloud-client
+ if ("${{ matrix.target }}" -eq "linux-64-gcc" ) {
+ # build with appimage updater and others
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --set enableAppImageUpdater=true owncloud-client
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --set enableCrashReporter=true owncloud/owncloud-client
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --set enableAutoUpdater=true owncloud/owncloud-client
+ }
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --install-deps owncloud/owncloud-client
+
+ - name: QML format lint
+ if: matrix.name == 'linux-gcc-x86_64'
+ run: |
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c libs/qt6/qttools
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --run pwsh -c "git ls-files *.qml | %{ qmlformat -i `$_}"
+ $diff = git diff
+ if ($diff) {
+ $diff
+ exit 1
+ }
- - name: Build
+ - name: clang-format format lint
+ if: matrix.name == 'linux-gcc-x86_64'
run: |
- if ("${{ matrix.target }}" -eq "windows-msvc2019_64-cl") {
- & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --no-cache --src-dir "${env:GITHUB_WORKSPACE}" --configure owncloud/owncloud-client
- $env:BUILD_DIR = $(& "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --get buildDir -q owncloud-client)
- & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --run pwsh "${env:GITHUB_WORKSPACE}/.github/workflows/.sonar.ps1" --build
- & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --no-cache --src-dir "${env:GITHUB_WORKSPACE}" --install --qmerge owncloud/owncloud-client
- } else {
- & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --no-cache --src-dir "${env:GITHUB_WORKSPACE}" owncloud/owncloud-client
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c libs/llvm
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --run git clang-format --force ${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }}
+ $diff = git diff
+ if ($diff) {
+ $diff
+ exit 1
}
- - name: Run tests
+ - name: Build
+ if: ${{ !matrix.useSonarCloud }}
run: |
- & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --no-cache --src-dir "${env:GITHUB_WORKSPACE}" --test owncloud/owncloud-client
+ if ("${{ matrix.target }}" -eq "macos-64-clang-debug" ) {
+ # https://api.kde.org/ecm/module/ECMEnableSanitizers.html
+ # address;leak;undefined
+ # clang: error: unsupported option '-fsanitize=leak' for target 'x86_64-apple-darwin21.6.0'
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --set args="-DECM_ENABLE_SANITIZERS='address;undefined'" owncloud/owncloud-client
+ }
+ if ("${{ matrix.target }}" -eq "linux-64-gcc" ) {
+ # build with appimage updater and others
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --set enableAppImageUpdater=true owncloud-client
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --set enableCrashReporter=true owncloud/owncloud-client
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --set enableAutoUpdater=true owncloud/owncloud-client
+ }
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --no-cache owncloud/owncloud-client
- - name: Sonarcloud
- if: ${{ matrix.target == 'windows-msvc2019_64-cl' }}
+ - name: Build for SonarCloud
+ if: ${{ matrix.useSonarCloud }}
run: |
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --no-cache --configure owncloud/owncloud-client
$env:BUILD_DIR = $(& "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --get buildDir -q owncloud-client)
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --run pwsh "${env:GITHUB_WORKSPACE}/.github/workflows/.sonar.ps1" --build
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --no-cache --install --qmerge owncloud/owncloud-client
& "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --run pwsh "${env:GITHUB_WORKSPACE}/.github/workflows/.sonar.ps1" --analyze
+ - name: Run tests
+ run: |
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --no-cache --test ${{ matrix.testOptions }} owncloud/owncloud-client
+
- name: Package
run: |
- & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --no-cache --src-dir "${env:GITHUB_WORKSPACE}" --package owncloud/owncloud-client
+ if ("${{ matrix.target }}" -eq "linux-64-gcc" ) {
+ # package without crash reporter
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --set enableCrashReporter=false owncloud/owncloud-client
+ }
+ & "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --no-cache --package owncloud/owncloud-client
- name: Prepare artifacts
run: |
- New-Item -ItemType Directory "${env:GITHUB_WORKSPACE}/binaries/" -ErrorAction SilentlyContinue
- Copy-Item "$env:HOME/craft/binaries/*" "${env:GITHUB_WORKSPACE}/binaries/"
+ Copy-Item "$env:HOME/craft/binaries/*" "${env:GITHUB_WORKSPACE}/binaries/" -ErrorAction SilentlyContinue
& "${env:GITHUB_WORKSPACE}/.github/workflows/.craft.ps1" -c --shelve "${env:GITHUB_WORKSPACE}/.craft.shelf"
Copy-Item "${env:GITHUB_WORKSPACE}/.craft.shelf" "${env:GITHUB_WORKSPACE}/binaries/"
- name: Upload artifacts
- uses: actions/upload-artifact@v2
+ uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
- name: ${{ matrix.os }} - ${{ matrix.target }}
+ name: ${{ matrix.name }}
path: ${{ github.workspace }}/binaries/*
-
-
-
diff --git a/.github/workflows/run-in-docker.sh b/.github/workflows/run-in-docker.sh
deleted file mode 100644
index e70c30bcca1..00000000000
--- a/.github/workflows/run-in-docker.sh
+++ /dev/null
@@ -1,32 +0,0 @@
-#! /bin/bash
-
-image="$1"
-shift
-
-commands="$@"
-
-if [[ "$image" == "" ]] || [[ "${commands[@]}" == "" ]]; then
- echo "Usage: bash $0 "
- exit 1
-fi
-
-set -exo pipefail
-
-extra_args=()
-
-if tty -s; then
- extra_args+=("-t")
-fi
-
-docker run \
- --rm \
- --user "$(id -u)" \
- -i "${extra_args[@]}" \
- -e TX_TOKEN \
- -e HOME \
- -v "$HOME:$HOME" \
- -v "$(readlink -f .)":/ws \
- --entrypoint sh \
- -w /ws \
- "$image" \
- -c "${commands[@]}"
diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml
deleted file mode 100644
index 2e4abd89e42..00000000000
--- a/.github/workflows/stale.yml
+++ /dev/null
@@ -1,20 +0,0 @@
-name: "Close stale issues"
-on:
- schedule:
- - cron: "0 0 * * *"
-
-jobs:
- stale:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/stale@v3
- with:
- repo-token: ${{ secrets.GITHUB_TOKEN }}
- debug-only: false
- exempt-all-milestones: true
- exempt-issue-labels: "blue-ticket, p1-urgent, p2-high, p3-medium, p4-low"
- days-before-stale: 30
- stale-issue-message: "This issue was marked stale because it has been open for 30 days with no activity. Remove the stale label or comment or this will be closed in 7 days."
- days-before-close: 7
- close-issue-message: "The issue was marked as stale for 7 days and closed automatically."
- start-date: "2021-01-01T00:00:00Z"
diff --git a/.github/workflows/translate.yml b/.github/workflows/translate.yml
index b88e438ae3a..ce95a807992 100644
--- a/.github/workflows/translate.yml
+++ b/.github/workflows/translate.yml
@@ -5,56 +5,87 @@ on:
schedule:
- cron: "0 3 * * *"
-defaults:
- run:
- shell: pwsh
+permissions: {}
jobs:
update-translations:
+ permissions:
+ contents: read
+ strategy:
+ matrix:
+ # current transifex plan only allows 1 additional branch
+ branch: ['master', '6']
+
runs-on: ubuntu-latest
env:
TX_TOKEN: ${{ secrets.TX_TOKEN }}
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
submodules: recursive
- ref: "2.10"
+ fetch-depth: 0
+ ref: ${{ matrix.branch }}
+ persist-credentials: false
+
+ - name: install-deps
+ run: sudo apt install -y qt6-l10n-tools
+
+ - name: l10n-remove-old
+ run: |
+ rm translations/*.ts
+ git checkout translations/client_en.ts
- name: l10n-read
- run: bash .github/workflows/run-in-docker.sh rabits/qt:5.12-desktop "cd translations && make l10n-read"
+ run: /usr/lib/qt6/bin/lupdate src -no-obsolete -ts translations/client_en.ts
- - name: l10n-push
- if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
- run: bash .github/workflows/run-in-docker.sh owncloudci/transifex:latest "cd translations && make l10n-push"
+ - name: l10n-push-source
+ if: ${{ matrix.branch != 'master' }}
+ uses: transifex/cli-action@584fd205cbe598773b5a81ce711fa44842678189 # v2
+ with:
+ token: ${{ secrets.TX_TOKEN }}
+ args: push -s --branch "${{ matrix.branch }}"
- - name: l10n-pull
- run: bash .github/workflows/run-in-docker.sh owncloudci/transifex:latest "cd translations && make l10n-pull"
+ - name: l10n-push-source
+ if: ${{ matrix.branch == 'master' }}
+ uses: transifex/cli-action@584fd205cbe598773b5a81ce711fa44842678189 # v2
+ with:
+ token: ${{ secrets.TX_TOKEN }}
+ args: push -s
+
+ - name: fix-transifex-action
+ run: rm -rf /tmp/tx
- - name: l10n-write
- run: bash .github/workflows/run-in-docker.sh owncloudci/transifex:latest "cd translations && make l10n-write"
+ - name: l10n-pull
+ if: ${{ matrix.branch != 'master' }}
+ uses: transifex/cli-action@584fd205cbe598773b5a81ce711fa44842678189 # v2
+ with:
+ token: ${{ secrets.TX_TOKEN }}
+ args: pull --force --all --silent --branch "${{ matrix.branch }}"
- - name: l10n-clean
- run: bash .github/workflows/run-in-docker.sh owncloudci/transifex:latest "cd translations && make l10n-clean"
+ - name: l10n-pull
+ if: ${{ matrix.branch == 'master' }}
+ uses: transifex/cli-action@584fd205cbe598773b5a81ce711fa44842678189 # v2
+ with:
+ token: ${{ secrets.TX_TOKEN }}
+ args: pull --force --all --silent
- - name: update-repo-before-commit
- run: |
- git status
- git stash
- git pull --ff-only origin
+ - name: Generate GitHub App token
+ id: app-token
+ uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
+ with:
+ app-id: ${{ secrets.TRANSLATION_APP_ID }}
+ private-key: ${{ secrets.TRANSLATION_APP_PRIVATE_KEY }}
- - name: commit and push
- if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
- run: |
- if( -not (git stash list)) {
- git stash pop
- install -d -m 0700 ~/.ssh
- Set-Content -Value "${{ secrets.DEPLOYMENT_SSH_KEY }}" -Path ~/.ssh/id_ed25519
- chmod 0600 ~/.ssh/id_ed25519
- git config user.name "ownClouders"
- git config user.email "devops@owncloud.com"
- git add translations/
- git commit -m "[tx] updated client translations from transifex [skip ci]"
- git push git@github.com:owncloud/client.git
- }
+ - name: Create or update translations PR
+ uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1
+ with:
+ token: ${{ steps.app-token.outputs.token }}
+ branch: chore/translations-update-${{ matrix.branch }}
+ base: ${{ matrix.branch }}
+ commit-message: "chore: update translations from transifex"
+ title: "chore: update translations from transifex"
+ body: "Automated translation update from Transifex. This pull request is updated on each sync run — merging it will close it and a fresh one will be opened on the next change."
+ delete-branch: true
+ sign-commits: true
diff --git a/.gitignore b/.gitignore
index 474a9f4ed54..3b8359b14af 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,10 @@
+/branding/
.gitmodules
*build*/
*flymake*
CMakeLists.txt.user*
+.vs/
+CMakeSettings.json
*~
*.autosave
doc/_build/*
@@ -174,4 +177,6 @@ FakesAssemblies/
# squish test
test/gui/config.ini
+test/gui/reports
*/**/__pycache__/
+test/gui/users.json
diff --git a/.gitmodules b/.gitmodules
index 1db1256f40d..e69de29bb2d 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +0,0 @@
-[submodule "src/3rdparty/libcrashreporter-qt"]
- path = src/3rdparty/libcrashreporter-qt
- url = git://github.com/dschmidt/libcrashreporter-qt.git
diff --git a/.tx/config b/.tx/config
new file mode 100644
index 00000000000..5e975d908f7
--- /dev/null
+++ b/.tx/config
@@ -0,0 +1,12 @@
+[main]
+host = https://www.transifex.com
+
+[o:owncloud-org:p:owncloud:r:client]
+source_file = translations/client_en.ts
+source_lang = en
+file_filter = translations/client_.ts
+type = QT
+minimum_perc = 75
+
+# de_DE holds the formal translation which we want as default
+lang_map = de_DE: de, de: de-informal, pt_PT: pt, cs_CZ: cs, et_EE: et, fi_FI: fi, ja_JP: ja, hu_HU: hu, sk_SK: client_sk, th_TH: th
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 30ccfb60a73..ccc0eb535de 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,51 +1,2564 @@
-Changelog for ownCloud Desktop Client [unreleased] (UNRELEASED)
-=======================================
+# Table of Contents
+
+* [Changelog for unreleased](#changelog-for-owncloud-desktop-client-unreleased-unreleased)
+* [Changelog for 6.0.3](#changelog-for-owncloud-desktop-client-603-2026-01-07)
+* [Changelog for 6.0.2](#changelog-for-owncloud-desktop-client-602-2025-11-03)
+* [Changelog for 6.0.1](#changelog-for-owncloud-desktop-client-601-2025-10-10)
+* [Changelog for 6.0.0](#changelog-for-owncloud-desktop-client-600-2025-09-08)
+* [Changelog for 5.3.2](#changelog-for-owncloud-desktop-client-532-2025-01-20)
+* [Changelog for 5.3.1](#changelog-for-owncloud-desktop-client-531-2024-06-11)
+* [Changelog for 5.3.0](#changelog-for-owncloud-desktop-client-530-2024-06-06)
+* [Changelog for 5.2.1](#changelog-for-owncloud-desktop-client-521-2024-01-04)
+* [Changelog for 5.2.0](#changelog-for-owncloud-desktop-client-520-2023-11-27)
+* [Changelog for 5.1.2](#changelog-for-owncloud-desktop-client-512-2023-11-10)
+* [Changelog for 5.1.1](#changelog-for-owncloud-desktop-client-511-2023-11-09)
+* [Changelog for 5.1.0](#changelog-for-owncloud-desktop-client-510-2023-11-02)
+* [Changelog for 5.0.0](#changelog-for-owncloud-desktop-client-500-2023-10-05)
+* [Changelog for 4.2.0](#changelog-for-owncloud-desktop-client-420-2023-08-07)
+* [Changelog for 4.1.0](#changelog-for-owncloud-desktop-client-410-2023-06-15)
+* [Changelog for 4.0.0](#changelog-for-owncloud-desktop-client-400-2023-05-11)
+* [Changelog for 3.2.1](#changelog-for-owncloud-desktop-client-321-2023-03-07)
+* [Changelog for 3.2.0](#changelog-for-owncloud-desktop-client-320-2023-02-15)
+* [Changelog for 3.1.0](#changelog-for-owncloud-desktop-client-310-2023-01-25)
+* [Changelog for 3.0.0](#changelog-for-owncloud-desktop-client-300-2022-11-30)
+* [Changelog for 2.11.1](#changelog-for-owncloud-desktop-client-2111-2022-08-31)
+* [Changelog for 2.11.0](#changelog-for-owncloud-desktop-client-2110-2022-08-18)
+* [Changelog for 2.10.1](#changelog-for-owncloud-desktop-client-2101-2022-04-05)
+* [Changelog for 2.10.0](#changelog-for-owncloud-desktop-client-2100-2022-01-17)
+* [Changelog for 2.9.2](#changelog-for-owncloud-desktop-client-292-2021-11-24)
+* [Changelog for 2.9.1](#changelog-for-owncloud-desktop-client-291-2021-10-13)
+* [Changelog for 2.9.0](#changelog-for-owncloud-desktop-client-290-2021-09-08)
+* [Changelog for 2.8.2](#changelog-for-owncloud-desktop-client-282-2021-05-28)
+* [Changelog for 2.8.1](#changelog-for-owncloud-desktop-client-281-2021-05-21)
+* [Changelog for 2.8.0](#changelog-for-owncloud-desktop-client-280-2021-05-06)
+* [Changelog for 2.7.6](#changelog-for-owncloud-desktop-client-276-2021-02-04)
+* [Changelog for 2.7.5](#changelog-for-owncloud-desktop-client-275-2021-01-28)
+* [Changelog for 2.7.4](#changelog-for-owncloud-desktop-client-274-2020-12-21)
+* [Changelog for 2.7.3](#changelog-for-owncloud-desktop-client-273-2020-12-11)
+* [Changelog for 2.7.2](#changelog-for-owncloud-desktop-client-272-2020-12-02)
+* [Changelog for 2.7.1](#changelog-for-owncloud-desktop-client-271-2020-11-18)
+* [Changelog for 2.7.0](#changelog-for-owncloud-desktop-client-270-2020-11-13)
+* [Changelog for 2.6.3](#changelog-for-owncloud-desktop-client-263-2020-06-10)
+* [Changelog for 2.6.2](#changelog-for-owncloud-desktop-client-262-2020-02-21)
+* [Changelog for 2.6.1 versions and below](#changelog-for-261-versions-and-below)
+# Changelog for ownCloud Desktop Client [unreleased] (UNRELEASED)
+
The following sections list the changes in ownCloud Desktop Client unreleased relevant to
ownCloud admins and users.
-[unreleased]: https://github.com/owncloud/client/compare/v2.9.2...master
+[unreleased]: https://github.com/owncloud/client/compare/v6.0.3...master
+
+## Summary
+
+* Bugfix - Fix compatibility with extra-cmake-modules-6.19.0: [#12374](https://github.com/owncloud/client/pull/12374)
+* Change - Remove capability to upload conflict files: [#12369](https://github.com/owncloud/client/pull/12369)
+
+## Details
+
+* Bugfix - Fix compatibility with extra-cmake-modules-6.19.0: [#12374](https://github.com/owncloud/client/pull/12374)
+
+ Fix runtime crash at startup with ECM 6.19.
+
+ https://github.com/owncloud/client/pull/12374
+
+* Change - Remove capability to upload conflict files: [#12369](https://github.com/owncloud/client/pull/12369)
+
+ None of the supported servers implements (or plans on implementing) this
+ feature. This removal includes the `OWNCLOUD_UPLOAD_CONFLICT_FILES` environment
+ variable.
+
+ https://github.com/owncloud/client/pull/12369
+
+# Changelog for ownCloud Desktop Client [6.0.3] (2026-01-07)
+
+The following sections list the changes in ownCloud Desktop Client 6.0.3 relevant to
+ownCloud admins and users.
+
+[6.0.3]: https://github.com/owncloud/client/compare/v6.0.2...v6.0.3
+
+## Summary
+
+* Security - Fixing medium security vulnerability in password input handling: [#12430](https://github.com/owncloud/client/pull/12430)
+* Change - Third party upgrades in distributed binaries: [#12364](https://github.com/owncloud/client/pull/12364)
+
+## Details
+
+* Security - Fixing medium security vulnerability in password input handling: [#12430](https://github.com/owncloud/client/pull/12430)
+
+ CVE and security advisory will follow.
+
+ https://github.com/owncloud/client/pull/12430
+ https://github.com/owncloud/client/pull/12431
+
+* Change - Third party upgrades in distributed binaries: [#12364](https://github.com/owncloud/client/pull/12364)
+
+ We updated OpenSSL to 3.4.3
+
+ https://github.com/owncloud/client/pull/12364
+ https://github.com/owncloud/client/pull/12432
+
+# Changelog for ownCloud Desktop Client [6.0.2] (2025-11-03)
+
+The following sections list the changes in ownCloud Desktop Client 6.0.2 relevant to
+ownCloud admins and users.
+
+[6.0.2]: https://github.com/owncloud/client/compare/v6.0.1...v6.0.2
+
+## Summary
+
+* Security - Fixing high security vulnerability in MacOS client: [#12379](https://github.com/owncloud/client/pull/12379)
+
+## Details
+
+* Security - Fixing high security vulnerability in MacOS client: [#12379](https://github.com/owncloud/client/pull/12379)
+
+ CVE: CVE-2025-64441
+
+ https://github.com/owncloud/client/pull/12379
+ https://github.com/owncloud/client/pull/12389
+ https://github.com/owncloud/client/pull/12390
+
+# Changelog for ownCloud Desktop Client [6.0.1] (2025-10-10)
+
+The following sections list the changes in ownCloud Desktop Client 6.0.1 relevant to
+ownCloud admins and users.
+
+[6.0.1]: https://github.com/owncloud/client/compare/v6.0.0...v6.0.1
+
+## Summary
+
+* Bugfix - Fix VFS checkbox in folder wizard: [#12305](https://github.com/owncloud/client/pull/12305)
+* Bugfix - Reverting UTF-8 normalisation change: [#12334](https://github.com/owncloud/client/pull/12334)
+* Change - Move to trash-bin is enabled now by default: [#12338](https://github.com/owncloud/client/pull/12338)
+
+## Details
+
+* Bugfix - Fix VFS checkbox in folder wizard: [#12305](https://github.com/owncloud/client/pull/12305)
+
+ On the last page of the folder wizard, there is a checkbox to select/deselect
+ VFS. By default this is checked. The bug was that after unchecking this
+ checkbox, it could not be checked again. This has now been fixed.
+
+ https://github.com/owncloud/client/pull/12305
+
+* Bugfix - Reverting UTF-8 normalisation change: [#12334](https://github.com/owncloud/client/pull/12334)
+
+ The UTF-8 normalization change as per #12039 has been reverted.
+
+ https://github.com/owncloud/client/pull/12334
+ https://github.com/owncloud/client/pull/12039
+
+* Change - Move to trash-bin is enabled now by default: [#12338](https://github.com/owncloud/client/pull/12338)
+
+ To protect users from data loss the "move to trash" option is now enabled by
+ default.
+
+ https://github.com/owncloud/client/pull/12338
+
+# Changelog for ownCloud Desktop Client [6.0.0] (2025-09-08)
+
+The following sections list the changes in ownCloud Desktop Client 6.0.0 relevant to
+ownCloud admins and users.
+
+[6.0.0]: https://github.com/owncloud/client/compare/v5.3.2...v6.0.0
+
+## Summary
+
+* Bugfix - Fix location loading on Mac: [#6761](https://github.com/owncloud/enterprise/issues/6761)
+* Bugfix - Schedule syncs after an abort: [#11396](https://github.com/owncloud/client/pull/11396)
+* Bugfix - Fix description of manage public links action: [#11450](https://github.com/owncloud/client/issues/11450)
+* Bugfix - Fix early-use crash in the folder watcher on Linux: [#11460](https://github.com/owncloud/client/issues/11460)
+* Bugfix - Properly encode scope and prompt items in OAuth URL: [#11472](https://github.com/owncloud/client/issues/11472)
+* Bugfix - Client stuck in reconnecting state after application start: [#11478](https://github.com/owncloud/client/pull/11478)
+* Bugfix - Strip user information from new-connection URL: [#11497](https://github.com/owncloud/client/issues/11497)
+* Bugfix - Support logging redirect: [#11581](https://github.com/owncloud/client/pull/11581)
+* Bugfix - Don't store null certificates in the account: [#11621](https://github.com/owncloud/client/issues/11621)
+* Bugfix - Fix crash for folders that could not be initialized: [#11664](https://github.com/owncloud/client/pull/11664)
+* Bugfix - Make open account in browser accessible for keyboard navigation: [#11772](https://github.com/owncloud/client/issues/11772)
+* Bugfix - Don't log misleading error if dynamic registration failed: [#11839](https://github.com/owncloud/client/pull/11839)
+* Bugfix - Fix crash after resource job fails: [#12045](https://github.com/owncloud/client/pull/12045)
+* Bugfix - Remove any existing ResourceCache directories for accounts: [#12214](https://github.com/owncloud/client/pull/12214)
+* Bugfix - Delete account-specific caches when an account is removed: [#12224](https://github.com/owncloud/client/pull/12224)
+* Change - Revert local folder name back to pre 3.0 behavior: [#6390](https://github.com/owncloud/enterprise/issues/6390)
+* Change - Make messages translatable that occur early in start-up: [#11142](https://github.com/owncloud/client/issues/11142)
+* Change - Remove unused command line option --language: [#11245](https://github.com/owncloud/client/issues/11245)
+* Change - Windows: always use fusion style: [#11275](https://github.com/owncloud/client/issues/11275)
+* Change - Deprecate suffix VFS: [#11325](https://github.com/owncloud/client/issues/11325)
+* Change - Removal of selective sync tree from account status page: [#11357](https://github.com/owncloud/client/issues/11357)
+* Change - Fix three badly styled warning messages: [#11412](https://github.com/owncloud/client/issues/11412)
+* Change - Removed support for limiting sync of big new folder & external storage: [#11517](https://github.com/owncloud/client/pull/11517)
+* Change - Set the 'No' button as default action in the Unknown Certificate dialog: [#11531](https://github.com/owncloud/client/issues/11531)
+* Change - Remove `Remove all files` dialog: [#11569](https://github.com/owncloud/client/issues/11569)
+* Change - Rewrite of the spaces browser: [#11595](https://github.com/owncloud/client/pull/11595)
+* Change - New update channel for ownCloud infinite scale: [#11742](https://github.com/owncloud/client/issues/11742)
+* Change - Remove support for branded shell extensions on Linux: [#11743](https://github.com/owncloud/client/issues/11743)
+* Change - Only allow to add un-synced spaces: [#11752](https://github.com/owncloud/client/issues/11752)
+* Change - Rewrite of the login widget in QML: [#11856](https://github.com/owncloud/client/pull/11856)
+* Change - Only support APFS on macOS: [#12044](https://github.com/owncloud/client/pull/12044)
+* Change - Bump minimum macOS version to 13.0: [#12245](https://github.com/owncloud/client/pull/12245)
+* Change - Update the sync exclude list for Infinite Scale: [#12262](https://github.com/owncloud/client/pull/12262)
+* Enhancement - Add option to pause synchronization on metered connections: [#4808](https://github.com/owncloud/client/issues/4808)
+* Enhancement - Add option to move files to trash instead of deleting: [#9001](https://github.com/owncloud/client/issues/9001)
+* Enhancement - Prevent same default sync folder for multiple accounts with Spaces: [#11204](https://github.com/owncloud/client/issues/11204)
+* Enhancement - Use less modal dialogs: [#11304](https://github.com/owncloud/client/issues/11304)
+* Enhancement - Include recent changes in scheduled syncs: [#11347](https://github.com/owncloud/client/pull/11347)
+* Enhancement - Improve handling of a server blocking an unsupported client: [#11424](https://github.com/owncloud/client/issues/11424)
+* Enhancement - Ask user to restart application when update is available on Windows: [#11442](https://github.com/owncloud/client/pull/11442)
+* Enhancement - New Folder status: [#11491](https://github.com/owncloud/client/pull/11491)
+* Enhancement - Pause sync when behind a captive portal: [#11533](https://github.com/owncloud/client/issues/11533)
+* Enhancement - Support for prompt_values_supported in openid-configuration: [#11729](https://github.com/owncloud/client/pull/11729)
+* Enhancement - New branding option: automatically sync new spaces: [#11751](https://github.com/owncloud/client/issues/11751)
+* Enhancement - Display how many spaces are un-synced: [#11760](https://github.com/owncloud/client/pull/11760)
+
+## Details
+
+* Bugfix - Fix location loading on Mac: [#6761](https://github.com/owncloud/enterprise/issues/6761)
+
+ https://github.com/owncloud/enterprise/issues/6761
+
+* Bugfix - Schedule syncs after an abort: [#11396](https://github.com/owncloud/client/pull/11396)
+
+ We fixed a bug where the client stopped scheduling syncs after a sync was
+ aborted.
+
+ https://github.com/owncloud/client/pull/11396
+
+* Bugfix - Fix description of manage public links action: [#11450](https://github.com/owncloud/client/issues/11450)
+
+ https://github.com/owncloud/client/issues/11450
+
+* Bugfix - Fix early-use crash in the folder watcher on Linux: [#11460](https://github.com/owncloud/client/issues/11460)
+
+ In a few error scenarios, the folder watcher on Linux shows a dialog with an
+ error message. A crash has been fixed where this occurred before the GUI was
+ fully initialised.
+
+ https://github.com/owncloud/client/issues/11460
+ https://github.com/owncloud/client/pull/11475
+
+* Bugfix - Properly encode scope and prompt items in OAuth URL: [#11472](https://github.com/owncloud/client/issues/11472)
+
+ Fixed a bug where the scope and prompt items of an OAuth query would not be
+ encoded, resulting in an invalid request.
+
+ https://github.com/owncloud/client/issues/11472
+ https://github.com/owncloud/client/pull/11479
+
+* Bugfix - Client stuck in reconnecting state after application start: [#11478](https://github.com/owncloud/client/pull/11478)
+
+ We fixed a bug where the client was starting OAuth authentication but did not
+ prompt the user properly to renew authentication. This resulted in the client
+ apparently getting stuck in the "reconnecting" state.
+
+ https://github.com/owncloud/client/pull/11478
+
+* Bugfix - Strip user information from new-connection URL: [#11497](https://github.com/owncloud/client/issues/11497)
+
+ Credentials in the URL are not supported for some time. This fix strips them
+ from the URL before storage and using it to authenticate the client to the
+ server.
+
+ https://github.com/owncloud/client/issues/11497
+ https://github.com/owncloud/client/pull/11509
+
+* Bugfix - Support logging redirect: [#11581](https://github.com/owncloud/client/pull/11581)
+
+ We now log when all urls when a request was redirected.
+
+ https://github.com/owncloud/client/pull/11581
+
+* Bugfix - Don't store null certificates in the account: [#11621](https://github.com/owncloud/client/issues/11621)
+
+ https://github.com/owncloud/client/issues/11621
+
+* Bugfix - Fix crash for folders that could not be initialized: [#11664](https://github.com/owncloud/client/pull/11664)
+
+ We fixed a bug where interacting with a folder in the file browser could lead to
+ a crash if the folder was not properly initialized.
+
+ https://github.com/owncloud/client/pull/11664
+
+* Bugfix - Make open account in browser accessible for keyboard navigation: [#11772](https://github.com/owncloud/client/issues/11772)
+
+ On the account settings page, the status label contained the URL of the server.
+ This URL was not accessible with keyboard navigation or when a screen-reader was
+ used. Now there is an "Open in Web Browser" action in the pop-up menu of the
+ "Manage Account" button (which is next to the status label), and the URL has
+ been removed from the status label.
+
+ https://github.com/owncloud/client/issues/11772
+ https://github.com/owncloud/client/issues/11800
+ https://github.com/owncloud/client/pull/11810
+
+* Bugfix - Don't log misleading error if dynamic registration failed: [#11839](https://github.com/owncloud/client/pull/11839)
+
+ https://github.com/owncloud/client/pull/11839
+
+* Bugfix - Fix crash after resource job fails: [#12045](https://github.com/owncloud/client/pull/12045)
+
+ When a network error occurs while fetching a resource (e.g. a space image), no
+ icon is available, and a crash would occur. This is fixed by returning an empty
+ icon.
+
+ https://github.com/owncloud/client/pull/12045
+
+* Bugfix - Remove any existing ResourceCache directories for accounts: [#12214](https://github.com/owncloud/client/pull/12214)
+
+ Some versions of the client failed to remove the temporary cache directory on
+ exit. This can result in multiple GB of cached space images. These cache
+ directories are now cleaned up before creating a new cache.
+
+ https://github.com/owncloud/client/pull/12214
+
+* Bugfix - Delete account-specific caches when an account is removed: [#12224](https://github.com/owncloud/client/pull/12224)
+
+ This includes the cache for space images, as well as certain cached network
+ jobs.
+
+ https://github.com/owncloud/client/pull/12224
+
+* Change - Revert local folder name back to pre 3.0 behavior: [#6390](https://github.com/owncloud/enterprise/issues/6390)
+
+ Due to user requests, we reverted the folder name from
+
+ ```
+ ownCloud - Albert@owncloud.com
+ ownCloud - Katherine@owncloud.org
+ ownCloud - Marie@owncloud.com
+ ```
+
+ Back to
+
+ ```
+ ownCloud
+ ownCloud (1)
+ ownCloud (2)
+ ```
+
+ https://github.com/owncloud/enterprise/issues/6390
+
+* Change - Make messages translatable that occur early in start-up: [#11142](https://github.com/owncloud/client/issues/11142)
+
+ These messages include the command-line messages (both errors and the help
+ text). To do this, the deprecated `--confdir` option has been removed. This
+ option was only used on windows before roaming profiles were supported.
+
+ https://github.com/owncloud/client/issues/11142
+ https://github.com/owncloud/client/issues/11246
+ https://github.com/owncloud/client/pull/11300
+
+* Change - Remove unused command line option --language: [#11245](https://github.com/owncloud/client/issues/11245)
+
+ This option was used before the UI language could be chosen in the settings. The
+ option --list-languages is also removed, as it no longer serves a purpose.
+
+ https://github.com/owncloud/client/issues/11245
+ https://github.com/owncloud/client/pull/11270
+
+* Change - Windows: always use fusion style: [#11275](https://github.com/owncloud/client/issues/11275)
+
+ We already used the fusion style on Windows for years if the system used dpi
+ scaling. Since Qt6.5 the fusion style also support the dark theme on Windows.
+ Those two reasons convinced us that always using the fusion style on Windows
+ will result in the best experience for the users.
+
+ https://github.com/owncloud/client/issues/11275
+
+* Change - Deprecate suffix VFS: [#11325](https://github.com/owncloud/client/issues/11325)
+
+ We decided to deprecate the suffix VFS implementations and thus prepare its
+ removal in 7.0.
+
+ https://github.com/owncloud/client/issues/11325
+
+* Change - Removal of selective sync tree from account status page: [#11357](https://github.com/owncloud/client/issues/11357)
+
+ We removed the selective sync support from the main widget and moved it to its
+ own dialog, available through the context menu of the sync folder.
+
+ Having both the sync status and the selective sync settings in the same widget
+ caused a lot of problems and overhead over the years. Additionally, it required
+ us to maintain a lot of special and basically duplicated code, as we already had
+ a dedicated widget to handle selective sync.
+
+ https://github.com/owncloud/client/issues/11357
+ https://github.com/owncloud/client/issues/11357
+ https://github.com/owncloud/client/issues/8102
+ https://github.com/owncloud/client/issues/5423
+ https://github.com/owncloud/client/issues/4080
+ https://github.com/owncloud/client/pull/11524
+
+* Change - Fix three badly styled warning messages: [#11412](https://github.com/owncloud/client/issues/11412)
+
+ There were 3 labels for warning messages that were nearly unreadable in dark
+ mode due to bad styling. These have been changed to only use a bold font, but
+ are now displayed with a big warning icon on their left. The places are: the
+ account settings page, the folder wizard remote path page, and the log browser.
+
+ https://github.com/owncloud/client/issues/11412
+ https://github.com/owncloud/client/pull/11470
+
+* Change - Removed support for limiting sync of big new folder & external storage: [#11517](https://github.com/owncloud/client/pull/11517)
+
+ We removed an option which allowed to block new folders bigger than a set limit,
+ from being synchronized automatically, when selective synchronization is used.
+ Additionally, we removed the option that allowed to block automatic
+ synchronization of external storage.
+
+ https://github.com/owncloud/client/pull/11517
+
+* Change - Set the 'No' button as default action in the Unknown Certificate dialog: [#11531](https://github.com/owncloud/client/issues/11531)
+
+ When an unknown certificate is used by the server, the safe action is to reject
+ this certificate. So the default action for this dialog should be not to accept
+ this unknown certificate.
+
+ https://github.com/owncloud/client/issues/11531
+
+* Change - Remove `Remove all files` dialog: [#11569](https://github.com/owncloud/client/issues/11569)
+
+ We no longer ask the user whether all files should be removed but just sync.
+
+ https://github.com/owncloud/client/issues/11569
+ https://github.com/owncloud/client/issues/7304
+
+* Change - Rewrite of the spaces browser: [#11595](https://github.com/owncloud/client/pull/11595)
+
+ https://github.com/owncloud/client/pull/11595
+
+* Change - New update channel for ownCloud infinite scale: [#11742](https://github.com/owncloud/client/issues/11742)
+
+ The release series 6 is a long term release. As version 7 will drop the support
+ for ownCloud 10, users will either have to select the ownCloud infinite scale
+ update channel in the about-dialog or manually install a newer release. This
+ change only affects the unbranded version.
+
+ https://github.com/owncloud/client/issues/11742
+
+* Change - Remove support for branded shell extensions on Linux: [#11743](https://github.com/owncloud/client/issues/11743)
+
+ From now on user will have to install dolphin-owncloud nautilus-owncloud instead
+ of a branded version.
+
+ https://github.com/owncloud/client/issues/11743
+
+* Change - Only allow to add un-synced spaces: [#11752](https://github.com/owncloud/client/issues/11752)
+
+ We now prevent users from syncing the same space multiple times.
+
+ https://github.com/owncloud/client/issues/11752
+ https://github.com/owncloud/client/pull/11759
+
+* Change - Rewrite of the login widget in QML: [#11856](https://github.com/owncloud/client/pull/11856)
+
+ https://github.com/owncloud/client/pull/11856
+
+* Change - Only support APFS on macOS: [#12044](https://github.com/owncloud/client/pull/12044)
+
+ Apple File System in contrary to HFS+ is Unicode normalization preserving. To
+ support this properly the upcoming version 6 of desktop client will support NFC
+ and NFD encoding on all client platforms based on the individual
+ characteristics.
+
+ https://github.com/owncloud/client/pull/12044
+
+* Change - Bump minimum macOS version to 13.0: [#12245](https://github.com/owncloud/client/pull/12245)
+
+ https://github.com/owncloud/client/pull/12245
+ https://github.com/owncloud/client/pull/12246
+
+* Change - Update the sync exclude list for Infinite Scale: [#12262](https://github.com/owncloud/client/pull/12262)
+
+ Files with the extension `.space` and `.psec` are now excluded from sync by
+ default.
+
+ https://github.com/owncloud/client/pull/12262
+ https://github.com/owncloud/client/pull/12093
+
+* Enhancement - Add option to pause synchronization on metered connections: [#4808](https://github.com/owncloud/client/issues/4808)
+
+ On platforms that support metered-connection detection, an option is now
+ available to pause folder synchronization when the network connection switches
+ to metered-connection. When synchronization is paused, force-syncing can still
+ be done.
+
+ https://github.com/owncloud/client/issues/4808
+ https://github.com/owncloud/client/pull/11305
+
+* Enhancement - Add option to move files to trash instead of deleting: [#9001](https://github.com/owncloud/client/issues/9001)
+
+ An option has been added that when files on the server are deleted, the client
+ will move them to the system trash bin instead of deleting those files.
+
+ https://github.com/owncloud/client/issues/9001
+ https://github.com/owncloud/client/pull/11320
+
+* Enhancement - Prevent same default sync folder for multiple accounts with Spaces: [#11204](https://github.com/owncloud/client/issues/11204)
+
+ This is done by tagging the sync folder by an extended attribute (Linux/macOS)
+ or an alternative data stream (Windows).
+
+ https://github.com/owncloud/client/issues/11204
+ https://github.com/owncloud/client/pull/11364
+
+* Enhancement - Use less modal dialogs: [#11304](https://github.com/owncloud/client/issues/11304)
+
+ As the rather high number of modal dialogs we used caused different issues on
+ different platforms, we decided to use them less often and try other concepts.
+
+ https://github.com/owncloud/client/issues/11304
+ https://github.com/owncloud/client/issues/11032
+ https://github.com/owncloud/client/issues/11208
+
+* Enhancement - Include recent changes in scheduled syncs: [#11347](https://github.com/owncloud/client/pull/11347)
+
+ When starting a new sync we now also include the recent change events in the
+ discovery.
+
+ https://github.com/owncloud/client/pull/11347
+
+* Enhancement - Improve handling of a server blocking an unsupported client: [#11424](https://github.com/owncloud/client/issues/11424)
+
+ We improved the handling of HTTP 403 status codes.
+
+ https://github.com/owncloud/client/issues/11424
+
+* Enhancement - Ask user to restart application when update is available on Windows: [#11442](https://github.com/owncloud/client/pull/11442)
+
+ Instead of a tray message, we now display a modal dialog on Windows to inform
+ the user about a downloaded update. Also, we now can prompt the user to restart
+ the application and apply the update immediately, adding a bit of user comfort.
+
+ https://github.com/owncloud/client/pull/11442
+
+* Enhancement - New Folder status: [#11491](https://github.com/owncloud/client/pull/11491)
+
+ We rewrote the Folder status page.
+
+ https://github.com/owncloud/client/issues/11527
+ https://github.com/owncloud/client/pull/11491
+
+* Enhancement - Pause sync when behind a captive portal: [#11533](https://github.com/owncloud/client/issues/11533)
+
+ When the operating system detects a captive portal, stop all outgoing network
+ requests. These requests will fail with an SSL certificate mismatch error. When
+ the captive portal is "gone", synchronisation will be restarted.
+
+ https://github.com/owncloud/client/issues/11533
+ https://github.com/owncloud/client/pull/11567
+
+* Enhancement - Support for prompt_values_supported in openid-configuration: [#11729](https://github.com/owncloud/client/pull/11729)
+
+ We implemented support for idP's to specify the supported prompt values.
+
+ https://github.com/owncloud/client/pull/11729
+ https://github.com/owncloud/client/pull/12163
+
+* Enhancement - New branding option: automatically sync new spaces: [#11751](https://github.com/owncloud/client/issues/11751)
+
+ A branding option was added to add new sync connections for newly discovered
+ spaces.
+
+ https://github.com/owncloud/client/issues/11751
+ https://github.com/owncloud/client/pull/11774
+
+* Enhancement - Display how many spaces are un-synced: [#11760](https://github.com/owncloud/client/pull/11760)
+
+ https://github.com/owncloud/client/pull/11760
+
+# Changelog for ownCloud Desktop Client [5.3.2] (2025-01-20)
+
+The following sections list the changes in ownCloud Desktop Client 5.3.2 relevant to
+ownCloud admins and users.
+
+[5.3.2]: https://github.com/owncloud/client/compare/v5.3.1...v5.3.2
+
+## Summary
+
+* Security - Fixing high security vulnerability in Windows Installer: [#12010](https://github.com/owncloud/client/issues/12010)
+* Bugfix - OAuth: Prevent logout when refreshing token: [#11980](https://github.com/owncloud/client/issues/11980)
+* Bugfix - Crash when checking the sync file status: [#11981](https://github.com/owncloud/client/issues/11981)
+
+## Details
+
+* Security - Fixing high security vulnerability in Windows Installer: [#12010](https://github.com/owncloud/client/issues/12010)
+
+ CVE: CVE-2025-24926
+
+ https://github.com/owncloud/client/issues/12010
+
+* Bugfix - OAuth: Prevent logout when refreshing token: [#11980](https://github.com/owncloud/client/issues/11980)
+
+ Prevent the user being logged out when the network disappears during OAuth token
+ refresh.
+
+ https://github.com/owncloud/client/issues/11980
+ https://github.com/owncloud/client/pull/11984
+ https://github.com/owncloud/client/pull/12005
+
+* Bugfix - Crash when checking the sync file status: [#11981](https://github.com/owncloud/client/issues/11981)
+
+ Sometimes a `Folder` is created for a local path that we cannot sync (e.g. it's
+ not writable). This folder will not have a sync engine. If the engine of this
+ `Folder` is accessed, this will lead to a crash.
+
+ The fix is to check for the existence of a sync engine in the
+ `Folder::canSync()` method.
+
+ https://github.com/owncloud/client/issues/11981
+ https://github.com/owncloud/client/pull/11982
+ https://github.com/owncloud/client/pull/12000
+
+# Changelog for ownCloud Desktop Client [5.3.1] (2024-06-11)
+
+The following sections list the changes in ownCloud Desktop Client 5.3.1 relevant to
+ownCloud admins and users.
+
+[5.3.1]: https://github.com/owncloud/client/compare/v5.3.0...v5.3.1
+
+## Summary
+
+* Bugfix - Ensure the Windows shell extension is linked statically: [#11691](https://github.com/owncloud/client/issues/11691)
+
+## Details
+
+* Bugfix - Ensure the Windows shell extension is linked statically: [#11691](https://github.com/owncloud/client/issues/11691)
+
+ We fixed a regression where
+ https://cmake.org/cmake/help/latest/policy/CMP0091.html caused our shell
+ extension no longer to be linked statically.
+
+ https://github.com/owncloud/client/issues/11691
+
+# Changelog for ownCloud Desktop Client [5.3.0] (2024-06-06)
+
+The following sections list the changes in ownCloud Desktop Client 5.3.0 relevant to
+ownCloud admins and users.
+
+[5.3.0]: https://github.com/owncloud/client/compare/v5.2.1...v5.3.0
+
+## Summary
+
+* Bugfix - Fix early-use crash in the folder watcher on Linux: [#11460](https://github.com/owncloud/client/issues/11460)
+* Bugfix - Client stuck in `reconnecting`: [#11467](https://github.com/owncloud/client/pull/11467)
+* Bugfix - Ensure folders are scheduled only once: [#11552](https://github.com/owncloud/client/issues/11552)
+* Change - Revert local folder name back to pre 3.0 behavior: [#6390](https://github.com/owncloud/enterprise/issues/6390)
+* Enhancement - Add support to provide a list of ports for the OAuth process: [#11276](https://github.com/owncloud/client/issues/11276)
+* Enhancement - Support `Active Directory Federation Service` as identity provider: [#11646](https://github.com/owncloud/client/issues/11646)
+
+## Details
+
+* Bugfix - Fix early-use crash in the folder watcher on Linux: [#11460](https://github.com/owncloud/client/issues/11460)
+
+ In a few error scenarios, the folder watcher on Linux shows a dialog with an
+ error message. A crash has been fixed where this occurred before the GUI was
+ fully initialised.
+
+ https://github.com/owncloud/client/issues/11460
+ https://github.com/owncloud/client/pull/11475
+
+* Bugfix - Client stuck in `reconnecting`: [#11467](https://github.com/owncloud/client/pull/11467)
+
+ Properly handle errors during the update of the server settings. Due to an
+ unhandled result, the client could get stuck in a `reconnecting` state.
+
+ https://github.com/owncloud/client/pull/11467
+
+* Bugfix - Ensure folders are scheduled only once: [#11552](https://github.com/owncloud/client/issues/11552)
+
+ We fixed a bug where a folder could be scheduled multiple times.
+
+ https://github.com/owncloud/client/issues/11552
+
+* Change - Revert local folder name back to pre 3.0 behavior: [#6390](https://github.com/owncloud/enterprise/issues/6390)
+
+ Due to user requests, we reverted the folder name from
+
+ ```
+ ownCloud - Albert@owncloud.com
+ ownCloud - Katherine@owncloud.org
+ ownCloud - Marie@owncloud.com
+ ```
+
+ Back to
+
+ ```
+ ownCloud
+ ownCloud (1)
+ ownCloud (2)
+ ```
+
+ https://github.com/owncloud/enterprise/issues/6390
+
+* Enhancement - Add support to provide a list of ports for the OAuth process: [#11276](https://github.com/owncloud/client/issues/11276)
+
+ We added a branding option that enables us to specify a list of ports that are
+ used for the local server during the OAuth process.
+
+ https://github.com/owncloud/client/issues/11276
+
+* Enhancement - Support `Active Directory Federation Service` as identity provider: [#11646](https://github.com/owncloud/client/issues/11646)
+
+ We changed the OAuth workflow to support `Active Directory Federation Service`
+
+ https://github.com/owncloud/client/issues/11646
+
+# Changelog for ownCloud Desktop Client [5.2.1] (2024-01-04)
+
+The following sections list the changes in ownCloud Desktop Client 5.2.1 relevant to
+ownCloud admins and users.
+
+[5.2.1]: https://github.com/owncloud/client/compare/v5.2.0...v5.2.1
+
+## Summary
+
+* Bugfix - Client stuck in reconnecting: [#11274](https://github.com/owncloud/client/issues/11274)
+* Enhancement - Improved reliability for persisting settings: [#11413](https://github.com/owncloud/client/pull/11413)
+
+## Details
+
+* Bugfix - Client stuck in reconnecting: [#11274](https://github.com/owncloud/client/issues/11274)
+
+ We fixed a bug where the client got stuck while reconnecting to the server.
+
+ https://github.com/owncloud/client/issues/11274
+
+* Enhancement - Improved reliability for persisting settings: [#11413](https://github.com/owncloud/client/pull/11413)
+
+ We improved the reliability of saving accounts. This might fix an issue where
+ sync connections were lost at random.
+
+ https://github.com/owncloud/client/issues/11411
+ https://github.com/owncloud/client/pull/11413
+
+# Changelog for ownCloud Desktop Client [5.2.0] (2023-11-27)
+
+The following sections list the changes in ownCloud Desktop Client 5.2.0 relevant to
+ownCloud admins and users.
+
+[5.2.0]: https://github.com/owncloud/client/compare/v5.1.2...v5.2.0
+
+## Summary
+
+* Bugfix - Fix URL resolution for app provider: [#11296](https://github.com/owncloud/client/issues/11296)
+* Bugfix - Fix crash on unhandled status code on rename check: [#11379](https://github.com/owncloud/client/issues/11379)
+
+## Details
+
+* Bugfix - Fix URL resolution for app provider: [#11296](https://github.com/owncloud/client/issues/11296)
+
+ We fixed a bug in the URL resolution for the app provider. If owncloud is
+ installed to a non-root directory we computed a wrong URL for the app provider
+ urls. This could trigger a connection validation in the client, which intern
+ triggered a request to the app provider. Resulting in an endless loop rendering
+ the client unusable.
+
+ https://github.com/owncloud/client/issues/11296
+
+* Bugfix - Fix crash on unhandled status code on rename check: [#11379](https://github.com/owncloud/client/issues/11379)
+
+ We fixed a bug that caused the application to crash instead of just aborting the
+ current sync.
+
+ https://github.com/owncloud/client/issues/11379
+
+# Changelog for ownCloud Desktop Client [5.1.2] (2023-11-10)
+
+The following sections list the changes in ownCloud Desktop Client 5.1.2 relevant to
+ownCloud admins and users.
+
+[5.1.2]: https://github.com/owncloud/client/compare/v5.1.1...v5.1.2
+
+## Summary
+
+* Bugfix - Fix crash when keychain job takes longer than expected: [#11361](https://github.com/owncloud/client/pull/11361)
+
+## Details
+
+* Bugfix - Fix crash when keychain job takes longer than expected: [#11361](https://github.com/owncloud/client/pull/11361)
+
+ In 5.1.1, we introduced a timeout for keychain jobs that killed them when their
+ execution time exceeded 5 seconds and log this to allow debugging of problems
+ related to secrets handling.
+
+ Apparently, there are valid cases in which these jobs can take longer than the
+ expected timeout, e.g., when the user needs to unlock their keychain first or
+ configure it otherwise.
+
+ We now let the jobs run indefinitely and log every 5 seconds whether the job is
+ still running.
+
+ https://github.com/owncloud/client/pull/11361
+
+# Changelog for ownCloud Desktop Client [5.1.1] (2023-11-09)
+
+The following sections list the changes in ownCloud Desktop Client 5.1.1 relevant to
+ownCloud admins and users.
+
+[5.1.1]: https://github.com/owncloud/client/compare/v5.1.0...v5.1.1
+
+## Summary
+
+* Bugfix - Prevent permanent deletion of files when disabling VFS: [#11331](https://github.com/owncloud/client/issues/11331)
+
+## Details
+
+* Bugfix - Prevent permanent deletion of files when disabling VFS: [#11331](https://github.com/owncloud/client/issues/11331)
+
+ When a user disabled the virtual files feature on Windows, all currently
+ dehydrated files were deleted accidentally. On the server those files where
+ still available in the trash bin. This regression was introduced in the previous
+ release 5.0.0.
+
+ https://github.com/owncloud/client/issues/11331
+
+# Changelog for ownCloud Desktop Client [5.1.0] (2023-11-02)
+
+The following sections list the changes in ownCloud Desktop Client 5.1.0 relevant to
+ownCloud admins and users.
+
+[5.1.0]: https://github.com/owncloud/client/compare/v5.0.0...v5.1.0
+
+## Summary
+
+* Bugfix - Crash when accepting a notification: [#11226](https://github.com/owncloud/client/issues/11226)
+* Bugfix - Fix crash on start-up when starting shell integration: [#11280](https://github.com/owncloud/client/issues/11280)
+* Bugfix - Properly schedule the sync after an account was added: [#11308](https://github.com/owncloud/client/issues/11308)
+* Bugfix - Don't start credentials save jobs during shutdown: [#11313](https://github.com/owncloud/client/pull/11313)
+
+## Details
+
+* Bugfix - Crash when accepting a notification: [#11226](https://github.com/owncloud/client/issues/11226)
+
+ We fixed a potential crash when clicking on a notification.
+
+ https://github.com/owncloud/client/issues/11226
+
+* Bugfix - Fix crash on start-up when starting shell integration: [#11280](https://github.com/owncloud/client/issues/11280)
+
+ A possible crash has been fixed that could occur during start-up, when the shell
+ integration started doing requests before the client itself completed starting
+ up.
+
+ https://github.com/owncloud/client/issues/11280
+ https://github.com/owncloud/client/pull/11288
+
+* Bugfix - Properly schedule the sync after an account was added: [#11308](https://github.com/owncloud/client/issues/11308)
+
+ We fixed a bug where a folder was scheduled to be synced before the account
+ reported it was ready. This resulted in the sync having no effect and the folder
+ was then only synced once we polled the etag.
+
+ https://github.com/owncloud/client/issues/11308
+
+* Bugfix - Don't start credentials save jobs during shutdown: [#11313](https://github.com/owncloud/client/pull/11313)
+
+ Due to a bug we "re-saved" the credentials during application shutdown. As the
+ application was quitting while the jobs where running we might have encountered
+ corrupted credentials or crashes.
+
+ https://github.com/owncloud/client/pull/11313
+
+# Changelog for ownCloud Desktop Client [5.0.0] (2023-10-05)
+
+The following sections list the changes in ownCloud Desktop Client 5.0.0 relevant to
+ownCloud admins and users.
+
+[5.0.0]: https://github.com/owncloud/client/compare/v4.2.0...v5.0.0
+
+## Summary
+
+* Bugfix - Avoid duplicate notifications when selective sync is enabled: [#5682](https://github.com/owncloud/enterprise/issues/5682)
+* Bugfix - VFS Placeholders can now be replaced with folders: [#10223](https://github.com/owncloud/client/issues/10223)
+* Bugfix - Authentication dialog no longer appears again and again: [#10351](https://github.com/owncloud/client/issues/10351)
+* Bugfix - Possible deadlock during log setup: [#10905](https://github.com/owncloud/client/pull/10905)
+* Bugfix - Do not create default sync root when loading accounts: [#10919](https://github.com/owncloud/client/issues/10919)
+* Bugfix - Update capabilities and other info after connect: [#10978](https://github.com/owncloud/client/issues/10978)
+* Bugfix - Account activity and crash after an account was removed: [#10990](https://github.com/owncloud/client/issues/10990)
+* Bugfix - Crash during application shutdown: [#11016](https://github.com/owncloud/client/issues/11016)
+* Bugfix - Hide hidden folders again in the selective sync view: [#11047](https://github.com/owncloud/client/issues/11047)
+* Bugfix - Fix check if a file is a placeholder: [#11107](https://github.com/owncloud/client/issues/11107)
+* Bugfix - Hydration state of file after a directory was replaced with a file: [#11162](https://github.com/owncloud/client/pull/11162)
+* Bugfix - Only synchronize after the server settings where refreshed: [#11168](https://github.com/owncloud/client/issues/11168)
+* Bugfix - Consistently use the same icon for folders: [#11190](https://github.com/owncloud/client/pull/11190)
+* Bugfix - Branding of folder status overlay: [#11192](https://github.com/owncloud/client/pull/11192)
+* Bugfix - Creation of folder on the server: [#11232](https://github.com/owncloud/client/issues/11232)
+* Bugfix - Selective sync when not the remote root is synced: [#11233](https://github.com/owncloud/client/issues/11233)
+* Change - Extract Nautilus: [#8991](https://github.com/owncloud/client/issues/8991)
+* Change - Remove support for sidebar entries for non-vfs setups on Windows: [#10788](https://github.com/owncloud/client/issues/10788)
+* Change - Remove support for client side system proxy credentials: [#10866](https://github.com/owncloud/client/pull/10866)
+* Change - Modernize systray menu: [#10939](https://github.com/owncloud/client/issues/10939)
+* Change - We removed the pre 2.9 credentials migration: [#11081](https://github.com/owncloud/client/pull/11081)
+* Change - Remove libcloudproviders integration: [#11148](https://github.com/owncloud/client/issues/11148)
+* Change - Disable context menu item to get a public link for a space: [#11242](https://github.com/owncloud/client/issues/11242)
+* Enhancement - Store proxy password securely: [#261](https://github.com/owncloud/client/issues/261)
+* Enhancement - Windows VFS: Prevent rename to ignored file name: [#8216](https://github.com/owncloud/client/issues/8216)
+* Enhancement - Change how all files deleted is handled: [#8360](https://github.com/owncloud/client/issues/8360)
+* Enhancement - Port from QtSingleApplication to KDSingleApplication: [#8432](https://github.com/owncloud/client/issues/8432)
+* Enhancement - Enable crash reporter in commandline client: [#8991](https://github.com/owncloud/client/issues/8991)
+* Enhancement - Make "Show files versions…" context menu action available: [#10197](https://github.com/owncloud/client/issues/10197)
+* Enhancement - Log http request when it is sent: [#10313](https://github.com/owncloud/client/issues/10313)
+* Enhancement - Allow selective sync of spaces in folder wizard: [#10596](https://github.com/owncloud/client/issues/10596)
+* Enhancement - Send a language header in all http requests: [#10619](https://github.com/owncloud/client/issues/10619)
+* Enhancement - Help user fix problems on the last setup wizard page: [#10680](https://github.com/owncloud/client/issues/10680)
+* Enhancement - Display a progress spinner during the initial setup: [#10751](https://github.com/owncloud/client/issues/10751)
+* Enhancement - Reduce how often file changes are handled: [#10825](https://github.com/owncloud/client/pull/10825)
+* Enhancement - Persist filter settings for Not Synced tab: [#10928](https://github.com/owncloud/client/pull/10928)
+* Enhancement - `--cmd` argument added to the GUI client: [#10976](https://github.com/owncloud/client/issues/10976)
+
+## Details
+
+* Bugfix - Avoid duplicate notifications when selective sync is enabled: [#5682](https://github.com/owncloud/enterprise/issues/5682)
+
+ We no longer show multiple messages about files which were excluded from the
+ sync because they were excluded by the users.
+
+ https://github.com/owncloud/enterprise/issues/5682
+
+* Bugfix - VFS Placeholders can now be replaced with folders: [#10223](https://github.com/owncloud/client/issues/10223)
+
+ If a local VFS placeholder is replaced with a folder on the server, the client
+ previously failed to populate the change.
+
+ https://github.com/owncloud/client/issues/10223
+
+* Bugfix - Authentication dialog no longer appears again and again: [#10351](https://github.com/owncloud/client/issues/10351)
+
+ https://github.com/owncloud/client/issues/10351
+
+* Bugfix - Possible deadlock during log setup: [#10905](https://github.com/owncloud/client/pull/10905)
+
+ If an error occurred during the setup of the log file, it was possible that the
+ client got deadlocked.
+
+ https://github.com/owncloud/client/pull/10905
+
+* Bugfix - Do not create default sync root when loading accounts: [#10919](https://github.com/owncloud/client/issues/10919)
+
+ Creating the default sync root is only needed at initial setup. If a user
+ chooses to point all folders for Spaces outside that default sync root, and
+ deletes the default sync root folder, it will now no longer be created.
+
+ https://github.com/owncloud/client/issues/10919
+ https://github.com/owncloud/client/pull/11128
+
+* Bugfix - Update capabilities and other info after connect: [#10978](https://github.com/owncloud/client/issues/10978)
+
+ We fixed a bug where server infos might have only been updated several minutes
+ after the client connected to the server.
+
+ https://github.com/owncloud/client/issues/10978
+
+* Bugfix - Account activity and crash after an account was removed: [#10990](https://github.com/owncloud/client/issues/10990)
+
+ We fixed a bug where an account performed actions after it was removed.
+
+ https://github.com/owncloud/client/issues/10990
+
+* Bugfix - Crash during application shutdown: [#11016](https://github.com/owncloud/client/issues/11016)
+
+ We fixed a where the main instance was accessed after it was destroyed.
+
+ https://github.com/owncloud/client/issues/11016
+
+* Bugfix - Hide hidden folders again in the selective sync view: [#11047](https://github.com/owncloud/client/issues/11047)
+
+ https://github.com/owncloud/client/issues/11047
+
+* Bugfix - Fix check if a file is a placeholder: [#11107](https://github.com/owncloud/client/issues/11107)
+
+ Previously, files with zero bytes in size were considered placeholders. This is
+ not correct, and has been fixed by using the correct API to check for
+ placeholders.
+
+ https://github.com/owncloud/client/issues/11107
+
+* Bugfix - Hydration state of file after a directory was replaced with a file: [#11162](https://github.com/owncloud/client/pull/11162)
+
+ If a synced directory was replaced with a file on the server, we downloaded it
+ instead of replacing the folder with a VirtualFile placeholder.
+
+ https://github.com/owncloud/client/pull/11162
+
+* Bugfix - Only synchronize after the server settings where refreshed: [#11168](https://github.com/owncloud/client/issues/11168)
+
+ We fixed an issue where the sync was started on outdated server settings.
+
+ https://github.com/owncloud/client/issues/11168
+
+* Bugfix - Consistently use the same icon for folders: [#11190](https://github.com/owncloud/client/pull/11190)
+
+ In 4.0 we introduced a new icon for sync connections. In some places however we
+ continued to use the system provided icon for folders, this resulted in an
+ inconsistent application look.
+
+ https://github.com/owncloud/client/pull/11190
+
+* Bugfix - Branding of folder status overlay: [#11192](https://github.com/owncloud/client/pull/11192)
+
+ We fixed a bug where branded overlay icons for the display of the sync status
+ where not used.
+
+ https://github.com/owncloud/client/pull/11192
+
+* Bugfix - Creation of folder on the server: [#11232](https://github.com/owncloud/client/issues/11232)
+
+ We fixed an issue in the FolderSyncWizard when the user provided a path with
+ multiple slashes (//folder).
+
+ https://github.com/owncloud/client/issues/11232
+
+* Bugfix - Selective sync when not the remote root is synced: [#11233](https://github.com/owncloud/client/issues/11233)
+
+ https://github.com/owncloud/client/issues/11233
+
+* Change - Extract Nautilus: [#8991](https://github.com/owncloud/client/issues/8991)
+
+ While the crash reporter still requires a graphical user interface to work, this
+ change nevertheless simplifies reporting crashes from the commandline client a
+ lot.
+
+ https://github.com/owncloud/client/issues/8991
+
+* Change - Remove support for sidebar entries for non-vfs setups on Windows: [#10788](https://github.com/owncloud/client/issues/10788)
+
+ For vfs setups, this is handled by Windows itself.
+
+ https://github.com/owncloud/client/issues/10788
+ https://github.com/owncloud/client/pull/10910
+
+* Change - Remove support for client side system proxy credentials: [#10866](https://github.com/owncloud/client/pull/10866)
+
+ We removed the support to query and store credentials for the system proxy.
+
+ https://github.com/owncloud/client/pull/10866
+
+* Change - Modernize systray menu: [#10939](https://github.com/owncloud/client/issues/10939)
+
+ We had a closer look on the system tray and cleaned it up.
+
+ https://github.com/owncloud/client/issues/10939
+ https://github.com/owncloud/client/pull/10949
+ https://github.com/owncloud/client/pull/10999
+
+* Change - We removed the pre 2.9 credentials migration: [#11081](https://github.com/owncloud/client/pull/11081)
+
+ Migrating credentials from a 2.8 or older client is no longer possible.
+
+ https://github.com/owncloud/client/pull/11081
+
+* Change - Remove libcloudproviders integration: [#11148](https://github.com/owncloud/client/issues/11148)
+
+ Since its implementation in 2019 our support our for it was 'limited'.
+ Additionally, as far as we can tell it was not picked up by any major Linux
+ distribution.
+
+ https://github.com/owncloud/client/issues/11148
+ https://github.com/owncloud/client/pull/11157
+
+* Change - Disable context menu item to get a public link for a space: [#11242](https://github.com/owncloud/client/issues/11242)
+
+ The context menu item "Create and copy public link to clipboard" didn't work
+ correctly when used with Spaces: users were always redirected to the web
+ frontend. This menu item is now disabled, waiting for a server-side changes.
+
+ https://github.com/owncloud/client/issues/11242
+ https://github.com/owncloud/client/pull/11079
+
+* Enhancement - Store proxy password securely: [#261](https://github.com/owncloud/client/issues/261)
+
+ https://github.com/owncloud/client/issues/261
+
+* Enhancement - Windows VFS: Prevent rename to ignored file name: [#8216](https://github.com/owncloud/client/issues/8216)
+
+ We now prevent renaming of virtual files to ignored file names. This basically
+ resulted in deletion on the server and a local placeholder that pointed to a
+ non-existing file.
+
+ https://github.com/owncloud/client/issues/8216
+ https://github.com/owncloud/client-desktop-vfs-win/pull/63
+
+* Enhancement - Change how all files deleted is handled: [#8360](https://github.com/owncloud/client/issues/8360)
+
+ When the client detects that all files are deleted on either side of the sync,
+ the client now aborts the sync and asks for a user decision. Afterwords a new
+ sync is started.
+
+ Previously we blocked the current sync until the user responded which could lead
+ to unwanted side effects.
+
+ https://github.com/owncloud/client/issues/8360
+
+* Enhancement - Port from QtSingleApplication to KDSingleApplication: [#8432](https://github.com/owncloud/client/issues/8432)
+
+ Instead of relying on an old copy of QtSingleApplication we use
+ https://github.com/KDAB/KDSingleApplication
+
+ https://github.com/owncloud/client/issues/8432
+ https://github.com/owncloud/client/pull/10754
+ https://github.com/owncloud/client/pull/10758
+
+* Enhancement - Enable crash reporter in commandline client: [#8991](https://github.com/owncloud/client/issues/8991)
+
+ While the crash reporter still requires a graphical user interface to work, this
+ change nevertheless simplifies reporting crashes from the commandline client a
+ lot.
+
+ https://github.com/owncloud/client/issues/8991
+
+* Enhancement - Make "Show files versions…" context menu action available: [#10197](https://github.com/owncloud/client/issues/10197)
+
+ https://github.com/owncloud/client/issues/10197
+
+* Enhancement - Log http request when it is sent: [#10313](https://github.com/owncloud/client/issues/10313)
+
+ We now log the http request when it is sent, not when it is created. This will
+ enable us to print more headers set by the platform and measure the request time
+ more accurately.
+
+ https://github.com/owncloud/client/issues/10313
+
+* Enhancement - Allow selective sync of spaces in folder wizard: [#10596](https://github.com/owncloud/client/issues/10596)
+
+ When manually configuring the synchronization of spaces, we now show the
+ selective sync page again to allow users to selectively disable the
+ synchronization of remote directories.
+
+ This prevents the unnecessary synchronization of files until the user can use
+ the account settings dialog to configure selective sync.
+
+ https://github.com/owncloud/client/issues/10596
+ https://github.com/owncloud/client/pull/11044
+
+* Enhancement - Send a language header in all http requests: [#10619](https://github.com/owncloud/client/issues/10619)
+
+ All http requests to the server will now contain the language for the client.
+ This can be used by the server to localize responses like error messages.
+
+ https://github.com/owncloud/client/issues/10619
+ https://github.com/owncloud/client/pull/11020
+
+* Enhancement - Help user fix problems on the last setup wizard page: [#10680](https://github.com/owncloud/client/issues/10680)
+
+ When there are problems within the advanced configuration on the last setup
+ wizard page, we no longer just show an error message but also "un-hide" those
+ settings to give the user a chance of fixing the problem.
+
+ https://github.com/owncloud/client/issues/10680
+ https://github.com/owncloud/client/pull/11029
+
+* Enhancement - Display a progress spinner during the initial setup: [#10751](https://github.com/owncloud/client/issues/10751)
+
+ We now display a progress spinner after the setup wizard, until the client is
+ done setting the account up.
+
+ https://github.com/owncloud/client/issues/10751
+
+* Enhancement - Reduce how often file changes are handled: [#10825](https://github.com/owncloud/client/pull/10825)
+
+ We no longer handle file changes every 1s but gather them for 10s and handle
+ them then.
+
+ This should reduce the amount of unnecessary checksum computations and attempted
+ syncs.
+
+ https://github.com/owncloud/client/pull/10825
+
+* Enhancement - Persist filter settings for Not Synced tab: [#10928](https://github.com/owncloud/client/pull/10928)
+
+ We now store the filter settings in the Not Synced tab. So after a restart of
+ the client, the filter will still be the same as the last time.
+
+ https://github.com/owncloud/client/issues/10884
+ https://github.com/owncloud/client/pull/10928
+
+* Enhancement - `--cmd` argument added to the GUI client: [#10976](https://github.com/owncloud/client/issues/10976)
+
+ In 4.1 we added a `--cmd` argument to the AppImage to allow users to use the
+ commandline client contained in the AppImage more easily.
+
+ The `--cmd` argument is now supported on all platforms to support consistency.
+
+ https://github.com/owncloud/client/issues/10976
+
+# Changelog for ownCloud Desktop Client [4.2.0] (2023-08-07)
+
+The following sections list the changes in ownCloud Desktop Client 4.2.0 relevant to
+ownCloud admins and users.
+
+[4.2.0]: https://github.com/owncloud/client/compare/v4.1.0...v4.2.0
+
+## Summary
+
+* Bugfix - Wrong davUser in cmd client: [#10946](https://github.com/owncloud/client/issues/10946)
+* Bugfix - Missing mtime in oCIS uploads: [#10950](https://github.com/owncloud/client/issues/10950)
+
+## Details
+
+* Bugfix - Wrong davUser in cmd client: [#10946](https://github.com/owncloud/client/issues/10946)
+
+ We fixed a bug where the wrong dav user was used in the URL, when the username
+ from the credentials differed from the username used on the server.
+
+ https://github.com/owncloud/client/issues/10946
+
+* Bugfix - Missing mtime in oCIS uploads: [#10950](https://github.com/owncloud/client/issues/10950)
+
+ When uploading a file to oCIS the server ignores the X-OC-Mtime header and
+ expects the mtime to be part of the Upload-Metadata header. We now provide both.
+
+ https://github.com/owncloud/client/issues/10950
+
+# Changelog for ownCloud Desktop Client [4.1.0] (2023-06-15)
+
+The following sections list the changes in ownCloud Desktop Client 4.1.0 relevant to
+ownCloud admins and users.
+
+[4.1.0]: https://github.com/owncloud/client/compare/v4.0.0...v4.1.0
+
+## Summary
+
+* Bugfix - Follow same site redirects in the Wizard: [#5743](https://github.com/owncloud/enterprise/issues/5743)
+* Bugfix - Show systray status when a sync error occurred: [#10834](https://github.com/owncloud/client/issues/10834)
+* Bugfix - Owncloudcmd: Ensure plugin path is initialized on Linux: [#10842](https://github.com/owncloud/client/issues/10842)
+* Bugfix - Use correct username with basic auth and LDAP: [#10856](https://github.com/owncloud/client/issues/10856)
+* Enhancement - Allow users to call commandline client from AppImage: [#10888](https://github.com/owncloud/client/issues/10888)
+
+## Details
+
+* Bugfix - Follow same site redirects in the Wizard: [#5743](https://github.com/owncloud/enterprise/issues/5743)
+
+ We fixed a bug where the client did not follow same site redirects during the
+ setup. If the used URL https://test.com/owncloud redirected to https://test.com
+ the new URL was not correctly used for the newly created account.
+
+ https://github.com/owncloud/enterprise/issues/5743
+
+* Bugfix - Show systray status when a sync error occurred: [#10834](https://github.com/owncloud/client/issues/10834)
+
+ The systray menu for the ownCloud icon has an entry that shows the sync status.
+ However, when a sync error occurred, the entry would have no text in it. This
+ has now been fixed.
+
+ https://github.com/owncloud/client/issues/10834
+
+* Bugfix - Owncloudcmd: Ensure plugin path is initialized on Linux: [#10842](https://github.com/owncloud/client/issues/10842)
+
+ https://github.com/owncloud/client/issues/10842
+
+* Bugfix - Use correct username with basic auth and LDAP: [#10856](https://github.com/owncloud/client/issues/10856)
+
+ With basic auth the name from the login credentials might not align with the
+ name on the server. We corrected the assumption and no longer change the
+ username.
+
+ https://github.com/owncloud/client/issues/10856
+
+* Enhancement - Allow users to call commandline client from AppImage: [#10888](https://github.com/owncloud/client/issues/10888)
+
+ When the AppImage is called with the new commandline parameter --cmd, it will
+ internally dispatch the call to the contained owncloudcmd binary. Otherwise, the
+ call will be forwarded to the regular owncloud GUI binary as before.
+
+ https://github.com/owncloud/client/issues/10888
+
+# Changelog for ownCloud Desktop Client [4.0.0] (2023-05-11)
+
+The following sections list the changes in ownCloud Desktop Client 4.0.0 relevant to
+ownCloud admins and users.
+
+[4.0.0]: https://github.com/owncloud/client/compare/v3.2.1...v4.0.0
+
+## Summary
+
+* Bugfix - Display sync date in system tray context menu when files where ignored: [#8953](https://github.com/owncloud/client/issues/8953)
+* Bugfix - Fix computation of sync status when multiple folders are synced: [#9270](https://github.com/owncloud/client/issues/9270)
+* Bugfix - Don't abort local folder deletions on unrelated errors: [#9311](https://github.com/owncloud/client/issues/9311)
+* Bugfix - Fix update channel dropdown: [#10251](https://github.com/owncloud/client/issues/10251)
+* Bugfix - Select keep files as default action in all files removed dialog: [#10254](https://github.com/owncloud/client/issues/10254)
+* Bugfix - Undefined client state after fetching credentials failed: [#10408](https://github.com/owncloud/client/issues/10408)
+* Bugfix - Escape navigation elements from user name: [#10427](https://github.com/owncloud/client/issues/10427)
+* Bugfix - Under certain conditions the folder watcher could drop events: [#10458](https://github.com/owncloud/client/pull/10458)
+* Bugfix - Properly handle OAuth invalidation: [#10494](https://github.com/owncloud/client/issues/10494)
+* Bugfix - Clear conflict errors after they were resolved: [#10569](https://github.com/owncloud/client/issues/10569)
+* Bugfix - Set the expected download content length in the job properly: [#10607](https://github.com/owncloud/client/pull/10607)
+* Bugfix - UI freeze when multiple modal dialogs displayed on macOS: [#10621](https://github.com/owncloud/client/issues/10621)
+* Bugfix - Ensure the account state is properly persisted: [#10648](https://github.com/owncloud/client/issues/10648)
+* Bugfix - Reconnect got stuck if the server supports app providers: [#10666](https://github.com/owncloud/client/issues/10666)
+* Change - Implement server guided migration to spaces: [#9945](https://github.com/owncloud/client/issues/9945)
+* Enhancement - Display `This space is either disabled or deleted` for gone spaces: [#9700](https://github.com/owncloud/client/issues/9700)
+* Enhancement - Sync virtual files that are locked by office etc: [#9829](https://github.com/owncloud/client/issues/9829)
+* Enhancement - Replace term (un)pause with a more suitable one: [#10231](https://github.com/owncloud/client/issues/10231)
+* Enhancement - Check for long paths when these are not enabled on Windows: [#10264](https://github.com/owncloud/client/issues/10264)
+* Enhancement - Implement a possibility to Desktop.ini icon updates on Windows: [#10361](https://github.com/owncloud/client/issues/10361)
+* Enhancement - Disable DPI scaling factor rounding on Windows: [#10406](https://github.com/owncloud/client/issues/10406)
+* Enhancement - Display quota for Spaces: [#10453](https://github.com/owncloud/client/issues/10453)
+* Enhancement - New WebFinger workflow: [#10517](https://github.com/owncloud/client/issues/10517)
+* Enhancement - Branding: Allow the addition of buttons to open a URL: [#10518](https://github.com/owncloud/client/issues/10518)
+* Enhancement - Build the client without the auto updater by default: [#10537](https://github.com/owncloud/client/issues/10537)
+* Enhancement - Improve presentation of connection state: [#10557](https://github.com/owncloud/client/issues/10557)
+* Enhancement - Display open in web in file browser context menu, on sync roots: [#10572](https://github.com/owncloud/client/issues/10572)
+* Enhancement - Display space subtitle if available: [#10577](https://github.com/owncloud/client/issues/10577)
+* Enhancement - Open sharing options in Web: [#10590](https://github.com/owncloud/client/pull/10590)
+* Enhancement - Display the space name provided by the server: [#10602](https://github.com/owncloud/client/pull/10602)
+* Enhancement - Always point to the latest documentation: [#10634](https://github.com/owncloud/client/issues/10634)
+* Enhancement - More user-friendly error handling in the cmd client: [#10637](https://github.com/owncloud/client/pull/10637)
+* Enhancement - Don't invalidate OAuth refresh token on ConnectionRefusedError: [#10654](https://github.com/owncloud/client/issues/10654)
+
+## Details
+
+* Bugfix - Display sync date in system tray context menu when files where ignored: [#8953](https://github.com/owncloud/client/issues/8953)
+
+ https://github.com/owncloud/client/issues/8953
+
+* Bugfix - Fix computation of sync status when multiple folders are synced: [#9270](https://github.com/owncloud/client/issues/9270)
+
+ https://github.com/owncloud/client/issues/9270
+ https://github.com/owncloud/client/pull/10536
+ https://github.com/owncloud/client/pull/10642
+
+* Bugfix - Don't abort local folder deletions on unrelated errors: [#9311](https://github.com/owncloud/client/issues/9311)
+
+ We fixed a bug where folder deletions where not performed if any sync error
+ occurred anywhere in the sync tree.
+
+ https://github.com/owncloud/client/issues/9311
+
+* Bugfix - Fix update channel dropdown: [#10251](https://github.com/owncloud/client/issues/10251)
+
+ When switching to the beta update channel in testpilotcloud, a warning will pop
+ up. When canceled, the selection should reset. This did not work reliably in
+ localized clients due to the use of string comparisons. Using a numeric index to
+ keep track of the old value fixes the problem.
+
+ https://github.com/owncloud/client/issues/10251
+ https://github.com/owncloud/client/pull/10609
+ https://github.com/owncloud/client/pull/10627
+
+* Bugfix - Select keep files as default action in all files removed dialog: [#10254](https://github.com/owncloud/client/issues/10254)
+
+ https://github.com/owncloud/client/issues/10254
+
+* Bugfix - Undefined client state after fetching credentials failed: [#10408](https://github.com/owncloud/client/issues/10408)
+
+ We fixed a bug where the client got stuck in a "No connection configured" state
+ if an error occurred during the retrieval of the credentials from the system's
+ keychain. The client then required a manual log out and log in.
+
+ https://github.com/owncloud/client/issues/10408
+ https://github.com/owncloud/client/pull/10505
+
+* Bugfix - Escape navigation elements from user name: [#10427](https://github.com/owncloud/client/issues/10427)
+
+ We use the user name as folder name, if a user name contains path navigation
+ elements we now escape them.
+
+ https://github.com/owncloud/client/issues/10427
+
+* Bugfix - Under certain conditions the folder watcher could drop events: [#10458](https://github.com/owncloud/client/pull/10458)
+
+ https://github.com/owncloud/client/pull/10458
+
+* Bugfix - Properly handle OAuth invalidation: [#10494](https://github.com/owncloud/client/issues/10494)
+
+ https://github.com/owncloud/client/issues/10494
+ https://github.com/owncloud/client/issues/10495
+
+* Bugfix - Clear conflict errors after they were resolved: [#10569](https://github.com/owncloud/client/issues/10569)
+
+ https://github.com/owncloud/client/issues/10569
+
+* Bugfix - Set the expected download content length in the job properly: [#10607](https://github.com/owncloud/client/pull/10607)
+
+ https://github.com/owncloud/client/pull/10607
+
+* Bugfix - UI freeze when multiple modal dialogs displayed on macOS: [#10621](https://github.com/owncloud/client/issues/10621)
+
+ Due to incorrect handling of the dialogs, the UI could freeze.
+
+ https://github.com/owncloud/client/issues/10621
+
+* Bugfix - Ensure the account state is properly persisted: [#10648](https://github.com/owncloud/client/issues/10648)
+
+ We didn't properly persist the login/logout state.
+
+ https://github.com/owncloud/client/issues/10648
+
+* Bugfix - Reconnect got stuck if the server supports app providers: [#10666](https://github.com/owncloud/client/issues/10666)
+
+ https://github.com/owncloud/client/issues/10666
+
+* Change - Implement server guided migration to spaces: [#9945](https://github.com/owncloud/client/issues/9945)
+
+ We added a feature that allows limited automatic migration of existing syncs to
+ oCIS spaces.
+
+ https://github.com/owncloud/client/issues/9945
+ https://github.com/owncloud/ocis/issues/3574
+
+* Enhancement - Display `This space is either disabled or deleted` for gone spaces: [#9700](https://github.com/owncloud/client/issues/9700)
+
+ We now provide a less technical error when a space was disabled or deleted.
+
+ https://github.com/owncloud/client/issues/9700
+
+* Enhancement - Sync virtual files that are locked by office etc: [#9829](https://github.com/owncloud/client/issues/9829)
+
+ We now upload locked files again when Windows virtual files are used. This was
+ disabled in 2.9.0 as it caused the file metadata and the locked files to get out
+ of sync. The new solution implements explicit handling of outdated placeholders.
+
+ https://github.com/owncloud/client/issues/9829
+
+* Enhancement - Replace term (un)pause with a more suitable one: [#10231](https://github.com/owncloud/client/issues/10231)
+
+ We used the terms pause and unpause synchronization where the synchronization
+ was actually terminated and restarted.
+
+ Now, we use the terms stop and start synchronization, which better communicate
+ the actual behavior.
+
+ https://github.com/owncloud/client/issues/10231
+ https://github.com/owncloud/client/issues/10529
+
+* Enhancement - Check for long paths when these are not enabled on Windows: [#10264](https://github.com/owncloud/client/issues/10264)
+
+ https://github.com/owncloud/client/issues/10264
+ https://github.com/owncloud/client/issues/10677
+ https://github.com/owncloud/client/pull/10352
+ https://github.com/owncloud/client/pull/10679
+
+* Enhancement - Implement a possibility to Desktop.ini icon updates on Windows: [#10361](https://github.com/owncloud/client/issues/10361)
+
+ We implemented an option which allows to disable the automatic update of the
+ folder icon for sync folders on Windows.
+
+ https://github.com/owncloud/client/issues/10361
+
+* Enhancement - Disable DPI scaling factor rounding on Windows: [#10406](https://github.com/owncloud/client/issues/10406)
+
+ Qt5 By default rounds up the selected scale for values > .5 We now use the
+ actual scale factor.
+
+ https://github.com/owncloud/client/issues/10406
+
+* Enhancement - Display quota for Spaces: [#10453](https://github.com/owncloud/client/issues/10453)
+
+ Quota is now displayed for all folders.
+
+ https://github.com/owncloud/client/issues/10453
+
+* Enhancement - New WebFinger workflow: [#10517](https://github.com/owncloud/client/issues/10517)
+
+ OwnCloud Infinite Scale servers may provide a new WebFinger service which
+ clients can use to discover an actual instance they should connect to.
+
+ This is useful when a large organization operates multiple instances to
+ distribute the load on multiple servers, or single departments operate their own
+ servers, but they all use a common entrypoint URL and authentication system.
+
+ https://github.com/owncloud/client/issues/10517
+ https://github.com/owncloud/client/pull/10665
+ https://owncloud.dev/services/webfinger/
+
+* Enhancement - Branding: Allow the addition of buttons to open a URL: [#10518](https://github.com/owncloud/client/issues/10518)
+
+ We added a branding option that allows to add buttons to the toolbar. Those
+ buttons will then open a hardcoded web page.
+
+ https://github.com/owncloud/client/issues/10518
+
+* Enhancement - Build the client without the auto updater by default: [#10537](https://github.com/owncloud/client/issues/10537)
+
+ https://github.com/owncloud/client/issues/10537
+
+* Enhancement - Improve presentation of connection state: [#10557](https://github.com/owncloud/client/issues/10557)
+
+ Don't display `No connection configured` when disconnected but `Disconnected
+ from:`. Introduce new state, `Connecting to`.
+
+ https://github.com/owncloud/client/issues/10557
+
+* Enhancement - Display open in web in file browser context menu, on sync roots: [#10572](https://github.com/owncloud/client/issues/10572)
+
+ https://github.com/owncloud/client/issues/10572
+
+* Enhancement - Display space subtitle if available: [#10577](https://github.com/owncloud/client/issues/10577)
+
+ If a subtitle is set on a spaced we now display it instead of the local path.
+
+ https://github.com/owncloud/client/issues/10577
+
+* Enhancement - Open sharing options in Web: [#10590](https://github.com/owncloud/client/pull/10590)
+
+ When selecting "Share…" in the file browser context menu, we now not only
+ display that file in the web view but also directly show the sharing options.
+
+ https://github.com/owncloud/client/pull/10590
+
+* Enhancement - Display the space name provided by the server: [#10602](https://github.com/owncloud/client/pull/10602)
+
+ If a space is renamed on the server, this change is now displayed in the client.
+
+ https://github.com/owncloud/client/pull/10602
+
+* Enhancement - Always point to the latest documentation: [#10634](https://github.com/owncloud/client/issues/10634)
+
+ We used a URL for the documentation that contained the client version. While
+ this ensured a used would get the documentation matching to their client, this
+ only worked with the last two released clients. So users of a pre-release or of
+ a very old client where served a 404.
+
+ https://github.com/owncloud/client/issues/10634
+
+* Enhancement - More user-friendly error handling in the cmd client: [#10637](https://github.com/owncloud/client/pull/10637)
+
+ https://github.com/owncloud/client/pull/10637
+
+* Enhancement - Don't invalidate OAuth refresh token on ConnectionRefusedError: [#10654](https://github.com/owncloud/client/issues/10654)
+
+ https://github.com/owncloud/client/issues/10654
+
+# Changelog for ownCloud Desktop Client [3.2.1] (2023-03-07)
+
+The following sections list the changes in ownCloud Desktop Client 3.2.1 relevant to
+ownCloud admins and users.
+
+[3.2.1]: https://github.com/owncloud/client/compare/v3.2.0...v3.2.1
+
+## Summary
+
+* Bugfix - Handle hide VirtualFiles options as disable VirtualFiles: [#5612](https://github.com/owncloud/enterprise/issues/5612)
+* Bugfix - Fix crash in Linux AppImage updater: [#10552](https://github.com/owncloud/client/issues/10552)
+* Bugfix - Fix encoding issue with basic authentication: [#10564](https://github.com/owncloud/client/issues/10564)
+
+## Details
+
+* Bugfix - Handle hide VirtualFiles options as disable VirtualFiles: [#5612](https://github.com/owncloud/enterprise/issues/5612)
+
+ Due to legacy reasons the branding flag and its function differ.
+
+ https://github.com/owncloud/enterprise/issues/5612
+
+* Bugfix - Fix crash in Linux AppImage updater: [#10552](https://github.com/owncloud/client/issues/10552)
+
+ In between the releases 3.0.0 and 3.1.0, a dependency was updated, causing an
+ ABI incompatibility with another library. We resolved this by rebuilding both
+ libraries.
+
+ https://github.com/owncloud/client/issues/10552
+
+* Bugfix - Fix encoding issue with basic authentication: [#10564](https://github.com/owncloud/client/issues/10564)
+
+ In 3.0 we introduced an encoding issue for basic authentication.
+
+ https://github.com/owncloud/client/issues/10564
+
+# Changelog for ownCloud Desktop Client [3.2.0] (2023-02-15)
+
+The following sections list the changes in ownCloud Desktop Client 3.2.0 relevant to
+ownCloud admins and users.
+
+[3.2.0]: https://github.com/owncloud/client/compare/v3.1.0...v3.2.0
+
+## Summary
+
+* Bugfix - Enable next button upon user input on WebFinger setup wizard page: [#10441](https://github.com/owncloud/client/issues/10441)
+* Bugfix - Only hide non VFS settings when enforced and on Windows: [#10456](https://github.com/owncloud/client/issues/10456)
+* Bugfix - Use selective sync settings from FolderWizard dialog: [#10468](https://github.com/owncloud/client/issues/10468)
+* Bugfix - ShowVirtualFilesOption no longer influences the use of VFS: [#10472](https://github.com/owncloud/client/issues/10472)
+* Bugfix - Fix generation of Windows sidebar entry when VFS is disabled: [#10481](https://github.com/owncloud/client/pull/10481)
+* Bugfix - Empty credentials for signed out accounts: [#10500](https://github.com/owncloud/client/issues/10500)
+
+## Details
+
+* Bugfix - Enable next button upon user input on WebFinger setup wizard page: [#10441](https://github.com/owncloud/client/issues/10441)
+
+ After a change to how the next button is controlled by user input on the page,
+ we forgot to make this change on the WebFinger page, too.
+
+ https://github.com/owncloud/client/issues/10441
+
+* Bugfix - Only hide non VFS settings when enforced and on Windows: [#10456](https://github.com/owncloud/client/issues/10456)
+
+ https://github.com/owncloud/client/issues/10456
+
+* Bugfix - Use selective sync settings from FolderWizard dialog: [#10468](https://github.com/owncloud/client/issues/10468)
+
+ Due to a bug the user selection was not persisted.
+
+ https://github.com/owncloud/client/issues/10468
+
+* Bugfix - ShowVirtualFilesOption no longer influences the use of VFS: [#10472](https://github.com/owncloud/client/issues/10472)
+
+ https://github.com/owncloud/client/issues/10472
+
+* Bugfix - Fix generation of Windows sidebar entry when VFS is disabled: [#10481](https://github.com/owncloud/client/pull/10481)
+
+ https://github.com/owncloud/client/pull/10481
+
+* Bugfix - Empty credentials for signed out accounts: [#10500](https://github.com/owncloud/client/issues/10500)
+
+ We fixed a bug where we saved empty credentials for logged out accounts. Under
+ certain conditions we now tried access the server without any authentication.
+
+ https://github.com/owncloud/client/issues/10500
+
+# Changelog for ownCloud Desktop Client [3.1.0] (2023-01-25)
+
+The following sections list the changes in ownCloud Desktop Client 3.1.0 relevant to
+ownCloud admins and users.
+
+[3.1.0]: https://github.com/owncloud/client/compare/v3.0.0...v3.1.0
+
+## Summary
+
+* Bugfix - Fix the display of the version string for released builds: [#10329](https://github.com/owncloud/client/pull/10329)
+* Bugfix - Only clear cookies if enabled in theme, clear cookies before OAuth2: [#10338](https://github.com/owncloud/client/pull/10338)
+* Bugfix - Display `Add a Space` instead of `Add Folder Sync Connection` with oCIS: [#10340](https://github.com/owncloud/client/pull/10340)
+* Bugfix - Mac: Don't inherit the environment of the installer after an update: [#10346](https://github.com/owncloud/client/issues/10346)
+* Bugfix - Correctly detect timeouts during token refresh: [#10373](https://github.com/owncloud/client/pull/10373)
+* Bugfix - Open in web if debug logs are turned off: [#10387](https://github.com/owncloud/client/pull/10387)
+* Bugfix - We fixed building the client on non linux unix systems: [#10398](https://github.com/owncloud/client/issues/10398)
+* Enhancement - Add a `Reconnect` option to the account menu, when disconnected: [#10294](https://github.com/owncloud/client/issues/10294)
+* Enhancement - (Re)introduce "sync hidden files" parameter in owncloudcmd: [#10390](https://github.com/owncloud/client/issues/10390)
+
+## Details
+
+* Bugfix - Fix the display of the version string for released builds: [#10329](https://github.com/owncloud/client/pull/10329)
+
+ We removed a trailing `-` in the version string of released clients.
+
+ https://github.com/owncloud/client/pull/10329
+
+* Bugfix - Only clear cookies if enabled in theme, clear cookies before OAuth2: [#10338](https://github.com/owncloud/client/pull/10338)
+
+ We fixed a bug that enabled the explicit cookie clearing required for F5 BIG-IP
+ setups unconditionally. We fixed a bug where the cookie clearing was not
+ performed during OAuth2.
+
+ https://github.com/owncloud/client/pull/10338
+
+* Bugfix - Display `Add a Space` instead of `Add Folder Sync Connection` with oCIS: [#10340](https://github.com/owncloud/client/pull/10340)
+
+ We fixed a bug where the wrong text was displayed on the "add" button.
+
+ https://github.com/owncloud/client/pull/10340
+
+* Bugfix - Mac: Don't inherit the environment of the installer after an update: [#10346](https://github.com/owncloud/client/issues/10346)
+
+ https://github.com/owncloud/client/issues/10346
+
+* Bugfix - Correctly detect timeouts during token refresh: [#10373](https://github.com/owncloud/client/pull/10373)
+
+ https://github.com/owncloud/client/pull/10373
+
+* Bugfix - Open in web if debug logs are turned off: [#10387](https://github.com/owncloud/client/pull/10387)
+
+ Due to a bug opening the browser only worked if logging was enabled.
+
+ https://github.com/owncloud/client/pull/10387
+
+* Bugfix - We fixed building the client on non linux unix systems: [#10398](https://github.com/owncloud/client/issues/10398)
+
+ https://github.com/owncloud/client/issues/10398
+
+* Enhancement - Add a `Reconnect` option to the account menu, when disconnected: [#10294](https://github.com/owncloud/client/issues/10294)
+
+ We added a `Reconnect` button to the account menu, this allows to trigger a
+ manual reconnect try. Note: The client would try to reconnect by itself at some
+ point.
+
+ https://github.com/owncloud/client/issues/10294
+
+* Enhancement - (Re)introduce "sync hidden files" parameter in owncloudcmd: [#10390](https://github.com/owncloud/client/issues/10390)
+
+ There used to be an option to enable the synchronization of hidden files using
+ the -h parameter which collided with the --help option and subsequently was
+ removed. A new --sync-hidden-files parameter was introduced to fill in the
+ missing feature.
+
+ https://github.com/owncloud/client/issues/10390
+
+# Changelog for ownCloud Desktop Client [3.0.0] (2022-11-30)
+
+The following sections list the changes in ownCloud Desktop Client 3.0.0 relevant to
+ownCloud admins and users.
+
+[3.0.0]: https://github.com/owncloud/client/compare/v2.11.1...v3.0.0
+
+## Summary
+
+* Bugfix - Windows VFS fixed some failing downloads: [#49](https://github.com/owncloud/client-desktop-vfs-win/pull/49)
+* Bugfix - Don't trigger ignore list when files are locked on the server: [#5382](https://github.com/owncloud/enterprise/issues/5382)
+* Bugfix - Properly resume upload with a partial local discovery: [#5382](https://github.com/owncloud/enterprise/issues/5382)
+* Bugfix - Add request time and other missing data to .owncloudsync.log: [#7348](https://github.com/owncloud/client/issues/7348)
+* Bugfix - Don't display a context-menu on the root folder: [#8595](https://github.com/owncloud/client/issues/8595)
+* Bugfix - Fix copy URL location for private links: [#9048](https://github.com/owncloud/client/issues/9048)
+* Bugfix - Fix status of files uploaded with TUS: [#9472](https://github.com/owncloud/client/pull/9472)
+* Bugfix - Don't unset implicit log flush: [#9515](https://github.com/owncloud/client/pull/9515)
+* Bugfix - The condition for the read only files menu was inverted: [#9574](https://github.com/owncloud/client/issues/9574)
+* Bugfix - Deadlock in folder context menu in a folder selection dialog: [#9681](https://github.com/owncloud/client/issues/9681)
+* Bugfix - Fix never ending sync: [#9725](https://github.com/owncloud/client/issues/9725)
+* Bugfix - Fix adding bookmarks on Gtk+ 3 based desktops: [#9752](https://github.com/owncloud/client/pull/9752)
+* Bugfix - Stop the activity spinner when the request failed: [#9798](https://github.com/owncloud/client/issues/9798)
+* Bugfix - Changes during upload of a file could still trigger the ignore list: [#9924](https://github.com/owncloud/client/issues/9924)
+* Bugfix - We fixed a crash: [#10017](https://github.com/owncloud/client/pull/10017)
+* Bugfix - Sync status changes are now directly displayed: [#10101](https://github.com/owncloud/client/issues/10101)
+* Change - Make share-dialog preview be more resilient: [#8938](https://github.com/owncloud/client/issues/8938)
+* Change - We no longer persist cookies: [#9495](https://github.com/owncloud/client/issues/9495)
+* Change - We removed support for ownCloud servers < 10.0: [#9578](https://github.com/owncloud/client/issues/9578)
+* Change - Drop socket upload job: [#9585](https://github.com/owncloud/client/issues/9585)
+* Change - Remove support for Windows 7 sidebar links: [#9618](https://github.com/owncloud/client/pull/9618)
+* Change - Rewrote TLS error handling: [#9655](https://github.com/owncloud/client/issues/9655)
+* Change - We removed the TLS certificate button from the account page: [#9675](https://github.com/owncloud/client/pull/9675)
+* Change - Add "open in web editor" feature: [#9724](https://github.com/owncloud/client/issues/9724)
+* Change - Don't display error state when server is unreachable: [#9790](https://github.com/owncloud/client/issues/9790)
+* Change - Windows: Update the folder icon on every start: [#10184](https://github.com/owncloud/client/issues/10184)
+* Change - Don't guess remote folder in owncloudcmd: [#10193](https://github.com/owncloud/client/issues/10193)
+* Change - When connected to oCIS, open the browser instead of the sharing dialog: [#10206](https://github.com/owncloud/client/issues/10206)
+* Change - Owncloudcmd oCIS support: [#10239](https://github.com/owncloud/client/pull/10239)
+* Enhancement - Display `Show ownCloud` instead of `Settings` in systray: [#8234](https://github.com/owncloud/client/issues/8234)
+* Enhancement - Built-in AppImage self-updater: [#8923](https://github.com/owncloud/client/issues/8923)
+* Enhancement - Don't query private links if disabled on the server: [#8998](https://github.com/owncloud/client/issues/8998)
+* Enhancement - Add CMakeOption WITH_AUTO_UPDATER: [#9082](https://github.com/owncloud/client/issues/9082)
+* Enhancement - Support for oCIS Spaces: [#9154](https://github.com/owncloud/client/pull/9154)
+* Enhancement - Rewrite wizard from scratch: [#9249](https://github.com/owncloud/client/issues/9249)
+* Enhancement - Remove use of legacy DAV endpoint: [#9538](https://github.com/owncloud/client/pull/9538)
+* Enhancement - Set Windows VFS placeholders readonly if needed: [#9598](https://github.com/owncloud/client/issues/9598)
+* Enhancement - Create continuous log files: [#9731](https://github.com/owncloud/client/issues/9731)
+* Enhancement - Display a correct error when the wrong user was authenticated: [#9772](https://github.com/owncloud/client/issues/9772)
+* Enhancement - We improved the performance for local filesystem actions: [#9910](https://github.com/owncloud/client/pull/9910)
+* Enhancement - We improved the performance of db access: [#9918](https://github.com/owncloud/client/pull/9918)
+* Enhancement - Reduce CPU load during discovery: [#9919](https://github.com/owncloud/client/pull/9919)
+* Enhancement - Remove app name from connection error message: [#9923](https://github.com/owncloud/client/issues/9923)
+* Enhancement - Allow HTTP/1.1 pipelining: [#9930](https://github.com/owncloud/client/pull/9930/)
+* Enhancement - Improve look and feel of many dialogs on macOS: [#9995](https://github.com/owncloud/client/issues/9995)
+* Enhancement - Windows VFS download speed improvement: [#10031](https://github.com/owncloud/client/issues/10031)
+* Enhancement - Add a `prefer: minimal` header to PROPFIND: [#10104](https://github.com/owncloud/client/pull/10104)
+* Enhancement - Allow creation of sync roots with long paths: [#10135](https://github.com/owncloud/client/pull/10135/)
+* Enhancement - Windows add longPath awareness: [#10136](https://github.com/owncloud/client/pull/10136)
+* Enhancement - Estimate duration of network requests in httplogger: [#10142](https://github.com/owncloud/client/pull/10142)
+* Enhancement - Tweak logging format: [#10310](https://github.com/owncloud/client/pull/10310)
+
+## Details
+
+* Bugfix - Windows VFS fixed some failing downloads: [#49](https://github.com/owncloud/client-desktop-vfs-win/pull/49)
+
+ We fixed an api issue where some downloads in the Explorer caused infinite
+ download restarts.
+
+ https://github.com/owncloud/client-desktop-vfs-win/pull/49
+
+* Bugfix - Don't trigger ignore list when files are locked on the server: [#5382](https://github.com/owncloud/enterprise/issues/5382)
+
+ https://github.com/owncloud/enterprise/issues/5382
+
+* Bugfix - Properly resume upload with a partial local discovery: [#5382](https://github.com/owncloud/enterprise/issues/5382)
+
+ https://github.com/owncloud/enterprise/issues/5382
+ https://github.com/owncloud/client/pull/10200
+
+* Bugfix - Add request time and other missing data to .owncloudsync.log: [#7348](https://github.com/owncloud/client/issues/7348)
+
+ Some parameters were missing for some operations. This fix makes the log more
+ complete and more useful as a result.
+
+ https://github.com/owncloud/client/issues/7348
+
+* Bugfix - Don't display a context-menu on the root folder: [#8595](https://github.com/owncloud/client/issues/8595)
+
+ https://github.com/owncloud/client/issues/8595
+
+* Bugfix - Fix copy URL location for private links: [#9048](https://github.com/owncloud/client/issues/9048)
+
+ We fixed a bug where a placeholder was copied to the clipboard instead of the
+ URL.
+
+ https://github.com/owncloud/client/issues/9048
+
+* Bugfix - Fix status of files uploaded with TUS: [#9472](https://github.com/owncloud/client/pull/9472)
+
+ Setting the upload status of files uploaded with TUS failed as we were still
+ using the file.
+
+ https://github.com/owncloud/client/pull/9472
+
+* Bugfix - Don't unset implicit log flush: [#9515](https://github.com/owncloud/client/pull/9515)
+
+ Since https://github.com/owncloud/client/pull/9515 we flush the log if the
+ output is stdout. We fixed a bug which disabled it again.
+
+ https://github.com/owncloud/client/pull/9515
+
+* Bugfix - The condition for the read only files menu was inverted: [#9574](https://github.com/owncloud/client/issues/9574)
+
+ We fixed a bug where we displayed solutions to fix issues with read only files
+ for readable files and vise versa.
+
+ https://github.com/owncloud/client/issues/9574
+
+* Bugfix - Deadlock in folder context menu in a folder selection dialog: [#9681](https://github.com/owncloud/client/issues/9681)
+
+ We fixed a deadlock when a user requested a context menu in a folder selection
+ dialog on Windows.
+
+ https://github.com/owncloud/client/issues/9681
+
+* Bugfix - Fix never ending sync: [#9725](https://github.com/owncloud/client/issues/9725)
+
+ Under certain conditions an upload could enter a state were it would never
+ finish. The client would wait for that upload so only a restart of the client or
+ a manual abort of the sync could resolve the issue.
+
+ https://github.com/owncloud/client/issues/9725
+
+* Bugfix - Fix adding bookmarks on Gtk+ 3 based desktops: [#9752](https://github.com/owncloud/client/pull/9752)
+
+ We used to add those bookmarks in a Gtk+ 2 compatible way only. Now, bookmarks
+ are added to the file belonging to Gtk+ 3, dropping support for end-of-life Gtk+
+ 2. The bookmarks are now shown again for all Gtk+ 3 compatible file browsers,
+ including Thunar, Nautilus, Nemo, Caja, etc.
+
+ https://github.com/owncloud/client/pull/9752
+
+* Bugfix - Stop the activity spinner when the request failed: [#9798](https://github.com/owncloud/client/issues/9798)
+
+ If the server did not provide the activity endpoint we always displayed a
+ progress spinner.
+
+ https://github.com/owncloud/client/issues/9798
+
+* Bugfix - Changes during upload of a file could still trigger the ignore list: [#9924](https://github.com/owncloud/client/issues/9924)
+
+ We fixed another issue where changes during an upload could cause the file to be
+ ignored for an increasing amount of time.
+
+ https://github.com/owncloud/client/issues/9924
+
+* Bugfix - We fixed a crash: [#10017](https://github.com/owncloud/client/pull/10017)
+
+ We fixed a crash that could occur after a folder reported a setup error
+
+ https://github.com/owncloud/client/pull/10017
+
+* Bugfix - Sync status changes are now directly displayed: [#10101](https://github.com/owncloud/client/issues/10101)
+
+ https://github.com/owncloud/client/issues/10101
+
+* Change - Make share-dialog preview be more resilient: [#8938](https://github.com/owncloud/client/issues/8938)
+
+ We no longer enforce png thumbnails. We no longer replace the file icon if the
+ thumbnail is invalid.
+
+ https://github.com/owncloud/client/issues/8938
+ https://github.com/owncloud/client/pull/8939
+
+* Change - We no longer persist cookies: [#9495](https://github.com/owncloud/client/issues/9495)
+
+ We no longer persist cookies over multiple client sessions.
+
+ https://github.com/owncloud/client/issues/9495
+
+* Change - We removed support for ownCloud servers < 10.0: [#9578](https://github.com/owncloud/client/issues/9578)
+
+ https://github.com/owncloud/client/issues/9578
+
+* Change - Drop socket upload job: [#9585](https://github.com/owncloud/client/issues/9585)
+
+ https://github.com/owncloud/client/issues/9585
+
+* Change - Remove support for Windows 7 sidebar links: [#9618](https://github.com/owncloud/client/pull/9618)
+
+ We removed the support for Windows < 10 sidebar links.
+
+ https://github.com/owncloud/client/pull/9618
+
+* Change - Rewrote TLS error handling: [#9655](https://github.com/owncloud/client/issues/9655)
+
+ We rewrote the way we handle TLS errors.
+
+ https://github.com/owncloud/client/issues/9655
+ https://github.com/owncloud/client/pull/9643
+ https://github.com/owncloud/client/pull/9667
+
+* Change - We removed the TLS certificate button from the account page: [#9675](https://github.com/owncloud/client/pull/9675)
+
+ https://github.com/owncloud/client/pull/9675
+
+* Change - Add "open in web editor" feature: [#9724](https://github.com/owncloud/client/issues/9724)
+
+ We now provide the option to open files in an online office suite from the local
+ file browser context menu, provided the server offers integration with one of
+ the supported services.
+
+ https://github.com/owncloud/client/issues/9724
+
+* Change - Don't display error state when server is unreachable: [#9790](https://github.com/owncloud/client/issues/9790)
+
+ We no longer display a network error if the server is currently unavailable.
+
+ https://github.com/owncloud/client/issues/9790
+
+* Change - Windows: Update the folder icon on every start: [#10184](https://github.com/owncloud/client/issues/10184)
+
+ The ownCloud installation path might have changed, causing the desktop.ini to
+ point at the wrong path. We now update the icon location on every application
+ start.
+
+ https://github.com/owncloud/client/issues/10184
+
+* Change - Don't guess remote folder in owncloudcmd: [#10193](https://github.com/owncloud/client/issues/10193)
+
+ The commandline client was modified to explicitly accept remote folder, the
+ remote folder must no longer be encoded in the server URL.
+
+ https://github.com/owncloud/client/issues/10193
+
+* Change - When connected to oCIS, open the browser instead of the sharing dialog: [#10206](https://github.com/owncloud/client/issues/10206)
+
+ When connected to oCIS, we now open the browser and navigate to the file the
+ user wanted to share instead of opening the legacy sharing dialog.
+
+ https://github.com/owncloud/client/issues/10206
+
+* Change - Owncloudcmd oCIS support: [#10239](https://github.com/owncloud/client/pull/10239)
+
+ When using oCIS and spaces with the cmd client the additional parameter
+ `--server` is required. `--server` specifies the URL to the server, while the
+ positional parameter 'server_url' specifies the WebDAV URL.
+
+ https://github.com/owncloud/client/pull/10239
+
+* Enhancement - Display `Show ownCloud` instead of `Settings` in systray: [#8234](https://github.com/owncloud/client/issues/8234)
+
+ We changed the menu entry to align its name with is function.
+
+ https://github.com/owncloud/client/issues/8234
+
+* Enhancement - Built-in AppImage self-updater: [#8923](https://github.com/owncloud/client/issues/8923)
+
+ In release 2.10, we introduced a preview on our future AppImage packaging for
+ Linux distributions. Now, these AppImages can self-update using a built-in
+ `libappimageupdate` based updater and ownCloud's update infrastructure.
+
+ https://github.com/owncloud/client/issues/8923
+ https://github.com/owncloud/client/pull/9376
+
+* Enhancement - Don't query private links if disabled on the server: [#8998](https://github.com/owncloud/client/issues/8998)
+
+ https://github.com/owncloud/client/issues/8998
+ https://github.com/owncloud/client/pull/9840
+ https://github.com/owncloud/client/pull/9964
+
+* Enhancement - Add CMakeOption WITH_AUTO_UPDATER: [#9082](https://github.com/owncloud/client/issues/9082)
+
+ WITH_AUTO_UPDATER allows to build the client without the auto updater.
+
+ https://github.com/owncloud/client/issues/9082
+
+* Enhancement - Support for oCIS Spaces: [#9154](https://github.com/owncloud/client/pull/9154)
+
+ We added support to sync oCIS Spaces.
+
+ https://github.com/owncloud/client/pull/9154
+ https://github.com/owncloud/client/pull/9575/
+
+* Enhancement - Rewrite wizard from scratch: [#9249](https://github.com/owncloud/client/issues/9249)
+
+ We completely rewrote the wizard from scratch. The new wizard provides greater
+ flexibility and makes adding new features easier in the future. It has also been
+ redesigned to improve the user experience.
+
+ https://github.com/owncloud/client/issues/9249
+ https://github.com/owncloud/client/pull/9482
+ https://github.com/owncloud/client/pull/9563
+ https://github.com/owncloud/client/pull/9566
+ https://github.com/owncloud/client/pull/9577
+ https://github.com/owncloud/client/pull/9596
+ https://github.com/owncloud/client/pull/9606
+ https://github.com/owncloud/client/pull/9621
+ https://github.com/owncloud/client/pull/9629
+ https://github.com/owncloud/client/pull/9636
+ https://github.com/owncloud/client/pull/9637
+ https://github.com/owncloud/client/pull/9642
+ https://github.com/owncloud/client/pull/9643
+ https://github.com/owncloud/client/pull/9697
+ https://github.com/owncloud/client/pull/9720
+ https://github.com/owncloud/client/pull/9746
+
+* Enhancement - Remove use of legacy DAV endpoint: [#9538](https://github.com/owncloud/client/pull/9538)
+
+ We no longer guess the DAV endpoint depending on the chunking-ng feature.
+
+ https://github.com/owncloud/client/pull/9538
+
+* Enhancement - Set Windows VFS placeholders readonly if needed: [#9598](https://github.com/owncloud/client/issues/9598)
+
+ We now properly set the read only flag on Windows virtual files.
+
+ https://github.com/owncloud/client/issues/9598
+ https://github.com/owncloud/client-desktop-vfs-win/issues/24
+
+* Enhancement - Create continuous log files: [#9731](https://github.com/owncloud/client/issues/9731)
+
+ Previously, when logging was enabled, we started a new log file for every sync.
+ This worked quite well if you sync a single account and a single folder. With
+ spaces however we have a multitude of sync folders, which resulted in hundreds
+ of tiny log files.
+
+ Now, as soon as a log file's size exceeds 100 MiB, a new log file is started,
+ and the old one is moved and compressed. The option to delete log files older
+ than 4h was replaced by an option to keep a number of log files.
+
+ https://github.com/owncloud/client/issues/9731
+
+* Enhancement - Display a correct error when the wrong user was authenticated: [#9772](https://github.com/owncloud/client/issues/9772)
+
+ When the wrong user was authenticated using OAuth we used to display a
+ misleading message. We now also style the html response the client provides to
+ the file browser.
+
+ https://github.com/owncloud/client/issues/9772
+ https://github.com/owncloud/client/pull/9813
+
+* Enhancement - We improved the performance for local filesystem actions: [#9910](https://github.com/owncloud/client/pull/9910)
+
+ https://github.com/owncloud/client/pull/9910
+
+* Enhancement - We improved the performance of db access: [#9918](https://github.com/owncloud/client/pull/9918)
+
+ We removed a check for the existence of the db that was executed before every
+ access to the db.
+
+ The check was introduced in #6049 to prevent crashes if the db does not exist or
+ is removed during runtime. We nowadays gracefully handle missing dbs on startup,
+ removing the db at runtime is too much of a corner case to sacrifice that much
+ performance, however.
+
+ https://github.com/owncloud/client/pull/9918
+
+* Enhancement - Reduce CPU load during discovery: [#9919](https://github.com/owncloud/client/pull/9919)
+
+ https://github.com/owncloud/client/pull/9919
+
+* Enhancement - Remove app name from connection error message: [#9923](https://github.com/owncloud/client/issues/9923)
+
+ We removed the app name from some connection messages. `No connection to
+ ownCloud at http://..` was misleading as the server could have any other
+ branding.
+
+ https://github.com/owncloud/client/issues/9923
+
+* Enhancement - Allow HTTP/1.1 pipelining: [#9930](https://github.com/owncloud/client/pull/9930/)
+
+ Under certain conditions, this change can result in a better network
+ utilization.
+
+ https://github.com/owncloud/client/pull/9930/
+
+* Enhancement - Improve look and feel of many dialogs on macOS: [#9995](https://github.com/owncloud/client/issues/9995)
+
+ https://github.com/owncloud/client/issues/9995
+
+* Enhancement - Windows VFS download speed improvement: [#10031](https://github.com/owncloud/client/issues/10031)
+
+ We improved the performance of downloads performed on virtual files in the
+ Windows Explorer.
+
+ https://github.com/owncloud/client/issues/10031
+
+* Enhancement - Add a `prefer: minimal` header to PROPFIND: [#10104](https://github.com/owncloud/client/pull/10104)
+
+ This will not return missing attribs in the reply in a 404 not found status
+ propset. That reduces the amount of transferred data significant.
+
+ https://github.com/owncloud/client/pull/10104
+
+* Enhancement - Allow creation of sync roots with long paths: [#10135](https://github.com/owncloud/client/pull/10135/)
+
+ Until now, we were only able to create a .sync_journal.db in a path with less
+ than 260 characters.
+
+ https://github.com/owncloud/client/pull/10135/
+
+* Enhancement - Windows add longPath awareness: [#10136](https://github.com/owncloud/client/pull/10136)
+
+ Requires Windows 10 newer than 1607 and the registry key to be enabled see:
+ https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation?tabs=registry#enable-long-paths-in-windows-10-version-1607-and-later
+
+ https://github.com/owncloud/client/pull/10136
+
+* Enhancement - Estimate duration of network requests in httplogger: [#10142](https://github.com/owncloud/client/pull/10142)
+
+ We now include an estimated duration in the httplogger.
+
+ https://github.com/owncloud/client/pull/10142
+
+* Enhancement - Tweak logging format: [#10310](https://github.com/owncloud/client/pull/10310)
+
+ The logging format is now better parseable for 3rdparty apps that ease
+ debugging.
+
+ https://github.com/owncloud/client/pull/10310
+
+# Changelog for ownCloud Desktop Client [2.11.1] (2022-08-31)
+
+The following sections list the changes in ownCloud Desktop Client 2.11.1 relevant to
+ownCloud admins and users.
+
+[2.11.1]: https://github.com/owncloud/client/compare/v2.11.0...v2.11.1
+
+## Summary
+
+* Bugfix - Fix configuration of selective sync from account settings: [#10058](https://github.com/owncloud/client/pull/10058)
+
+## Details
+
+* Bugfix - Fix configuration of selective sync from account settings: [#10058](https://github.com/owncloud/client/pull/10058)
+
+ We fixed a bug that prevented the directory tree in the account settings window
+ from being expanded beyond the root directory level. The problem was introduced
+ in 8d0dd36d2.
+
+ https://github.com/owncloud/client/pull/10058
+ https://github.com/owncloud/client/pull/10065
+
+# Changelog for ownCloud Desktop Client [2.11.0] (2022-08-18)
+
+The following sections list the changes in ownCloud Desktop Client 2.11.0 relevant to
+ownCloud admins and users.
+
+[2.11.0]: https://github.com/owncloud/client/compare/v2.10.1...v2.11.0
+
+## Summary
+
+* Bugfix - Windows VFS: Keep file attributes and pin state: [#34](https://github.com/owncloud/client-desktop-vfs-win/pull/34)
+* Bugfix - Compare usernames case-insensitive: [#5174](https://github.com/owncloud/enterprise/issues/5174)
+* Bugfix - Use UTF-8 for .owncloudsync.log: [#9571](https://github.com/owncloud/client/pull/9571)
+* Bugfix - Crash when interacting with a folder in an error state: [#9600](https://github.com/owncloud/client/issues/9600)
+* Bugfix - Database was recreated after its removal: [#9791](https://github.com/owncloud/client/issues/9791)
+* Bugfix - We fixed a potential crash: [#9864](https://github.com/owncloud/client/issues/9864)
+* Bugfix - Windows VFS: Files in an existing folder are dehydrated: [#9966](https://github.com/owncloud/client/pull/9966)
+* Bugfix - Run next scheduled sync after a folder was removed: [#9969](https://github.com/owncloud/client/issues/9969)
+* Enhancement - Throttle the UI updates during sync: [#9832](https://github.com/owncloud/client/issues/9832)
+* Enhancement - Run vfs downloads with a high priority: [#9836](https://github.com/owncloud/client/pull/9836)
+* Enhancement - Don't abort sync if a user requests a file: [#9956](https://github.com/owncloud/client/pull/9956)
+
+## Details
+
+* Bugfix - Windows VFS: Keep file attributes and pin state: [#34](https://github.com/owncloud/client-desktop-vfs-win/pull/34)
+
+ When a user selected "Always keep on this device" on a cloud only file, we lost
+ that information. "Always keep on this device" only worked on already present
+ files.
+
+ https://github.com/owncloud/client-desktop-vfs-win/pull/34
+
+* Bugfix - Compare usernames case-insensitive: [#5174](https://github.com/owncloud/enterprise/issues/5174)
+
+ We fixed a bug where the user name was compared with the name provided by the
+ server in a case-sensitive way.
+
+ https://github.com/owncloud/enterprise/issues/5174
+
+* Bugfix - Use UTF-8 for .owncloudsync.log: [#9571](https://github.com/owncloud/client/pull/9571)
+
+ We fixed a bug where Unicode file names were not correctly displayed in
+ .owncloudsync.log.
+
+ https://github.com/owncloud/client/pull/9571
+
+* Bugfix - Crash when interacting with a folder in an error state: [#9600](https://github.com/owncloud/client/issues/9600)
+
+ We fixed a crash when using the context menu on a folder that encountered an
+ error and was not using virtual files.
+
+ https://github.com/owncloud/client/issues/9600
+
+* Bugfix - Database was recreated after its removal: [#9791](https://github.com/owncloud/client/issues/9791)
+
+ We fixed a bug where the database was recreated during the removal of a sync
+ folder connection.
+
+ https://github.com/owncloud/client/issues/9791
+
+* Bugfix - We fixed a potential crash: [#9864](https://github.com/owncloud/client/issues/9864)
+
+ https://github.com/owncloud/client/issues/9864
+
+* Bugfix - Windows VFS: Files in an existing folder are dehydrated: [#9966](https://github.com/owncloud/client/pull/9966)
+
+ We fixed a bug, when a user selects an existing folder as sync root we
+ previously dehydrated all existing files.
+
+ https://github.com/owncloud/client/pull/9966
+
+* Bugfix - Run next scheduled sync after a folder was removed: [#9969](https://github.com/owncloud/client/issues/9969)
+
+ We fixed a bug where we did not start another sync when a folder that was
+ currently syncing was removed.
+
+ https://github.com/owncloud/client/issues/9969
+
+* Enhancement - Throttle the UI updates during sync: [#9832](https://github.com/owncloud/client/issues/9832)
+
+ We reduced the number of UI updates during the sync, especially with Windows vfs
+ files this should improve the performance by a lot.
+
+ https://github.com/owncloud/client/issues/9832
+ https://github.com/owncloud/client/pull/9863
+
+* Enhancement - Run vfs downloads with a high priority: [#9836](https://github.com/owncloud/client/pull/9836)
+
+ This should reduce the probability for timeouts when downloading vfs files in
+ the Windows explorer.
+
+ https://github.com/owncloud/client/issues/9832
+ https://github.com/owncloud/client/pull/9836
+
+* Enhancement - Don't abort sync if a user requests a file: [#9956](https://github.com/owncloud/client/pull/9956)
+
+ Previously we aborted any running sync if a user requested a file that was not
+ yet available locally. This was done to ensure the user does not need to wait
+ for the current sync to finish. However, in today's code both actions the
+ download and the sync can run in parallel.
+
+ https://github.com/owncloud/client/issues/9832
+ https://github.com/owncloud/client/pull/9956
+
+# Changelog for ownCloud Desktop Client [2.10.1] (2022-04-05)
+
+The following sections list the changes in ownCloud Desktop Client 2.10.1 relevant to
+ownCloud admins and users.
+
+[2.10.1]: https://github.com/owncloud/client/compare/v2.10.0...v2.10.1
+
+## Summary
+
+* Bugfix - Fix potential download failure for renamed file with Windows VFS: [#18](https://github.com/owncloud/client-desktop-vfs-win/pull/18)
+* Bugfix - Possible crash when downloading a virtual file on Windows: [#21](https://github.com/owncloud/client-desktop-vfs-win/pull/21)
+* Bugfix - Don't publish upload if we can't finish the transaction in the client: [#5052](https://github.com/owncloud/enterprise/issues/5052)
+* Bugfix - Do not strip trailing whitespace from a file or folder name: [#9030](https://github.com/owncloud/client/issues/9030)
+* Bugfix - Remove outdated translations: [#9105](https://github.com/owncloud/client/issues/9105)
+* Bugfix - Progress reporting for TUS uploads: [#9121](https://github.com/owncloud/client/issues/9121)
+* Bugfix - Fix crash if a database error occurs: [#9147](https://github.com/owncloud/client/issues/9147)
+* Bugfix - --version showed incorrect information about VFS support: [#9155](https://github.com/owncloud/client/issues/9155)
+* Bugfix - Client warns about non-existing files: [#9236](https://github.com/owncloud/client/issues/9236)
+* Bugfix - Mention source file in activity tab when renaming: [#9238](https://github.com/owncloud/client/issues/9238)
+* Bugfix - Fix crash on remove account: [#9367](https://github.com/owncloud/client/issues/9367)
+* Bugfix - Raise ssl issue dialog above the wizard: [#9375](https://github.com/owncloud/client/pull/9375)
+* Bugfix - Fallback to ownCloud sidebar icons on Mac if none provided in branding: [#9381](https://github.com/owncloud/client/pull/9381)
+* Bugfix - Immediately retry upload if file changed during sync: [#9382](https://github.com/owncloud/client/issues/9382)
+* Bugfix - Don't reset change time on upload: [#9383](https://github.com/owncloud/client/issues/9383)
+* Bugfix - Fix toggling launch-on-login for macOS: [#9387](https://github.com/owncloud/client/issues/9387)
+* Bugfix - Fix translated icon names in desktop file with ownBrander themes: [#9390](https://github.com/owncloud/client/pull/9390)
+* Bugfix - Add open local/remote folder options: [#9405](https://github.com/owncloud/client/issues/9405)
+* Bugfix - Fix possible crash: [#9417](https://github.com/owncloud/client/issues/9417)
+* Bugfix - Improve filter pop-up menu and button: [#9425](https://github.com/owncloud/client/issues/9425)
+* Bugfix - Ensure proper setup of network jobs on retries: [#9437](https://github.com/owncloud/client/pull/9437)
+* Bugfix - Fix Account Filter for Server Activity tab: [#9481](https://github.com/owncloud/client/pull/9481)
+* Bugfix - If required clear cookies in more scenarios: [#9489](https://github.com/owncloud/client/pull/9489)
+* Bugfix - Possible crash when removing non-existing folder: [#9533](https://github.com/owncloud/client/issues/9533)
+* Bugfix - Can't stop basic auth login: [#9545](https://github.com/owncloud/client/issues/9545)
+* Enhancement - Retry token refresh multiple times before logout: [#9245](https://github.com/owncloud/client/issues/9245)
+* Enhancement - Don't log error when checking removed file for changes: [#9304](https://github.com/owncloud/client/issues/9304)
+* Enhancement - Leave password field in share dialog enabled on errors: [#9336](https://github.com/owncloud/client/issues/9336)
+* Enhancement - Provide informal German translations: [#9460](https://github.com/owncloud/client/issues/9460)
+* Enhancement - Always flush log when logging to stdout: [#9515](https://github.com/owncloud/client/pull/9515)
+* Enhancement - Retry update after 10 minutes: [#9522](https://github.com/owncloud/client/issues/9522)
+* Enhancement - Added branding parameter to disallow duplicated folder sync pairs: [#9523](https://github.com/owncloud/client/issues/9523)
+
+## Details
+
+* Bugfix - Fix potential download failure for renamed file with Windows VFS: [#18](https://github.com/owncloud/client-desktop-vfs-win/pull/18)
+
+ When a dehydrated file is renamed and immediately opened, the subsequent
+ download might try to create a file with the original (un-renamed) name.
+
+ https://github.com/owncloud/client-desktop-vfs-win/pull/18
+
+* Bugfix - Possible crash when downloading a virtual file on Windows: [#21](https://github.com/owncloud/client-desktop-vfs-win/pull/21)
+
+ We fixed a bug that might have caused crashes when working with virtual files on
+ Windows.
+
+ https://github.com/owncloud/client-desktop-vfs-win/pull/21
+
+* Bugfix - Don't publish upload if we can't finish the transaction in the client: [#5052](https://github.com/owncloud/enterprise/issues/5052)
+
+ When a file gets locked during an upload we aborted after the upload finished on
+ the server. Resulting in a divergence of the local and remote state which could
+ lead to conflicts.
+
+ https://github.com/owncloud/enterprise/issues/5052
+
+* Bugfix - Do not strip trailing whitespace from a file or folder name: [#9030](https://github.com/owncloud/client/issues/9030)
+
+ https://github.com/owncloud/client/issues/9030
+ https://github.com/owncloud/client/pull/9452
+
+* Bugfix - Remove outdated translations: [#9105](https://github.com/owncloud/client/issues/9105)
+
+ Due to a bug we were not removing the translations that fell below a required
+ quality margin, we only stopped updating them. Resulting in even worse
+ translations in some cases.
+
+ https://github.com/owncloud/client/issues/9105
+
+* Bugfix - Progress reporting for TUS uploads: [#9121](https://github.com/owncloud/client/issues/9121)
+
+ We fixed a bug with missing progress reporting in TUS uploads
+
+ https://github.com/owncloud/client/issues/9121
+
+* Bugfix - Fix crash if a database error occurs: [#9147](https://github.com/owncloud/client/issues/9147)
+
+ We no longer crash if a database error occurs on startup, instead the folder
+ will enter an error sate similar to the case that the folder does not exist.
+
+ https://github.com/owncloud/client/issues/9147
+
+* Bugfix - --version showed incorrect information about VFS support: [#9155](https://github.com/owncloud/client/issues/9155)
+
+ --version used to always show "Off", even when a VFS plugin was available. This
+ has been fixed now.
+
+ https://github.com/owncloud/client/issues/9155
+ https://github.com/owncloud/client/pull/9457
+
+* Bugfix - Client warns about non-existing files: [#9236](https://github.com/owncloud/client/issues/9236)
+
+ We fixed a bug where the client warns about ignored files that where added to
+ the DB in previous versions of the client and do no longer exist.
+
+ https://github.com/owncloud/client/issues/9236
+
+* Bugfix - Mention source file in activity tab when renaming: [#9238](https://github.com/owncloud/client/issues/9238)
+
+ https://github.com/owncloud/client/issues/9238
+ https://github.com/owncloud/client/pull/9453
+
+* Bugfix - Fix crash on remove account: [#9367](https://github.com/owncloud/client/issues/9367)
+
+ We fixed a potential reference to a deleted item, when an account was removed.
+
+ https://github.com/owncloud/client/issues/9367
+
+* Bugfix - Raise ssl issue dialog above the wizard: [#9375](https://github.com/owncloud/client/pull/9375)
+
+ Under certain conditions it was possible that the ssl dialog was hidden behind
+ the wizard.
+
+ https://github.com/owncloud/client/pull/9375
+
+* Bugfix - Fallback to ownCloud sidebar icons on Mac if none provided in branding: [#9381](https://github.com/owncloud/client/pull/9381)
+
+ If a customer does not provide sidebar icons we use the ownCloud sidebar icons.
+
+ https://github.com/owncloud/client/pull/9381
+
+* Bugfix - Immediately retry upload if file changed during sync: [#9382](https://github.com/owncloud/client/issues/9382)
+
+ If a file changed during discovery and the actual upload for multiple retries in
+ a row, changes of it were ignored for a period of time.
+
+ https://github.com/owncloud/client/issues/9382
+
+* Bugfix - Don't reset change time on upload: [#9383](https://github.com/owncloud/client/issues/9383)
+
+ We fixed a bug where we reset the change time of Windows placeholder files to
+ the value in the database during uploads. This cold cause other applications to
+ detect non-existing changes in that file.
+
+ https://github.com/owncloud/client/issues/9383
+ https://github.com/owncloud/client-desktop-vfs-win/pull/16
+
+* Bugfix - Fix toggling launch-on-login for macOS: [#9387](https://github.com/owncloud/client/issues/9387)
+
+ This would fail when upgrading the application, and the upgraded version has one
+ or more letters in the name changed from/to upper-case.
+
+ https://github.com/owncloud/client/issues/9387
+ https://github.com/owncloud/client/pull/9433
+
+* Bugfix - Fix translated icon names in desktop file with ownBrander themes: [#9390](https://github.com/owncloud/client/pull/9390)
+
+ Fixes broken translated icon reference in desktop entries for some branded build
+ themes.
+
+ https://github.com/owncloud/client/pull/9390
+
+* Bugfix - Add open local/remote folder options: [#9405](https://github.com/owncloud/client/issues/9405)
+
+ Add the "open local/remote folder" context menu items for non-sync-root items
+ back into the accounts tab in the settings dialog.
+
+ https://github.com/owncloud/client/issues/9405
+ https://github.com/owncloud/client/pull/9420
+
+* Bugfix - Fix possible crash: [#9417](https://github.com/owncloud/client/issues/9417)
+
+ We change the initialisation of a Windows icon to prevent a possible crash.
+
+ https://github.com/owncloud/client/issues/9417
+
+* Bugfix - Improve filter pop-up menu and button: [#9425](https://github.com/owncloud/client/issues/9425)
+
+ - replaced "No filter" option text with "All", to avoid the "No filter is not
+ enabled" situation - replace the "Filter" label on the button with "1 Filter"/"2
+ Filters" when a filter is active, so a user can immediately see that without
+ having to open the filter pop-up
+
+ https://github.com/owncloud/client/issues/9425
+ https://github.com/owncloud/client/pull/9513
+
+* Bugfix - Ensure proper setup of network jobs on retries: [#9437](https://github.com/owncloud/client/pull/9437)
+
+ On retries network jobs where not properly setup which could lead to undefined
+ behaviour.
+
+ https://github.com/owncloud/client/pull/9437
+
+* Bugfix - Fix Account Filter for Server Activity tab: [#9481](https://github.com/owncloud/client/pull/9481)
+
+ https://github.com/owncloud/client/pull/9481
+
+* Bugfix - If required clear cookies in more scenarios: [#9489](https://github.com/owncloud/client/pull/9489)
+
+ BigIp F5 requires special cookie handling on our side. We only explicitly
+ cleared the cookies when we hit an unexpected redirect, now we will clear them
+ also when refreshing our OAuth token.
+
+ https://github.com/owncloud/client/pull/9489
+
+* Bugfix - Possible crash when removing non-existing folder: [#9533](https://github.com/owncloud/client/issues/9533)
+
+ https://github.com/owncloud/client/issues/9533
+
+* Bugfix - Can't stop basic auth login: [#9545](https://github.com/owncloud/client/issues/9545)
+
+ We fixed a bug where the user was asked for their credentials again and again
+ with no chance to abort.
+
+ https://github.com/owncloud/client/issues/9545
+
+* Enhancement - Retry token refresh multiple times before logout: [#9245](https://github.com/owncloud/client/issues/9245)
+
+ https://github.com/owncloud/client/issues/9245
+ https://github.com/owncloud/client/pull/9380
+
+* Enhancement - Don't log error when checking removed file for changes: [#9304](https://github.com/owncloud/client/issues/9304)
+
+ We removed some misleading error messages from the log.
+
+ https://github.com/owncloud/client/issues/9304
+
+* Enhancement - Leave password field in share dialog enabled on errors: [#9336](https://github.com/owncloud/client/issues/9336)
+
+ The password line edit used to be disabled because the related checkbox was
+ unchecked upon errors such as failing to satisfy the requirements imposed by the
+ "password policy" server app.
+
+ Now, the checkbox will not be unchecked, leaving the line edit enabled and
+ keeping the focus on it. This allows users to enter a new password and try again
+ without having to enable the checkbox and clicking into the line edit again.
+
+ https://github.com/owncloud/client/issues/9336
+ https://github.com/owncloud/client/pull/9508
+
+* Enhancement - Provide informal German translations: [#9460](https://github.com/owncloud/client/issues/9460)
+
+ The community was maintaining an informal German translation for years but we
+ were only able to provide a single version of German in the client. We now ship
+ both versions, the informal can be selected in the combobox in the advanced
+ settings. To be able to distinguish between formal and informal locales, we also
+ include the locale identifier in the dropdown (e.g., "Deutsch (de-informal)").
+
+ https://github.com/owncloud/client/issues/9460
+ https://github.com/owncloud/client/pull/9502
+
+* Enhancement - Always flush log when logging to stdout: [#9515](https://github.com/owncloud/client/pull/9515)
+
+ We improved the behaviour of logging to a terminal.
+
+ https://github.com/owncloud/client/pull/9515
+
+* Enhancement - Retry update after 10 minutes: [#9522](https://github.com/owncloud/client/issues/9522)
+
+ When an update (check) fails, it is currently retried only when the regular
+ timeout (10 hours by default) is triggered. With this change, we retry the
+ update (check) after 10 minutes already.
+
+ https://github.com/owncloud/client/issues/9522
+ https://github.com/owncloud/client/pull/9525
+
+* Enhancement - Added branding parameter to disallow duplicated folder sync pairs: [#9523](https://github.com/owncloud/client/issues/9523)
+
+ We added a branding parameter to disallow the addition of duplicated folder sync
+ pairs in the add folder wizard.
+
+ https://github.com/owncloud/client/issues/9523
+
+# Changelog for ownCloud Desktop Client [2.10.0] (2022-01-17)
+
+The following sections list the changes in ownCloud Desktop Client 2.10.0 relevant to
+ownCloud admins and users.
+
+[2.10.0]: https://github.com/owncloud/client/compare/v2.9.2...v2.10.0
-Summary
--------
+## Summary
-* Bugfix - Add request time and other missing data to .owncloudsync.log: [#7348](https://github.com/owncloud/client/issues/7348)
-* Bugfix - Do not ask for credentails at start-up when the user logged out: [#8924](https://github.com/owncloud/client/issues/8924)
-* Bugfix - Fix copy url location for private links: [#9048](https://github.com/owncloud/client/issues/9048)
+* Bugfix - We fixed a possible crash: [#13](https://github.com/owncloud/client-desktop-vfs-win/pull/13)
+* Bugfix - Issues with long file path: [#4896](https://github.com/owncloud/enterprise/issues/4896)
+* Bugfix - Do not ask for credentials at start-up when the user logged out: [#8924](https://github.com/owncloud/client/issues/8924)
* Bugfix - Immediately propagate changes to the ignore list: [#8975](https://github.com/owncloud/client/issues/8975)
* Bugfix - Fix icon name in desktop file with ownBrander themes: [#8992](https://github.com/owncloud/client/issues/8992)
+* Bugfix - A folder moved on the server was displayed as outdated: [#9071](https://github.com/owncloud/client/issues/9071)
+* Bugfix - Do not sync when `unsyncedfolders` file cannot be read: [#9165](https://github.com/owncloud/client/issues/9165)
* Bugfix - Crash when handling locked files: [#9170](https://github.com/owncloud/client/issues/9170)
-* Bugfix - Display correct error message for files containign `\:?*"<>|`: [#9223](https://github.com/owncloud/client/pull/9223/)
-* Change - Make sharedialog preview be more resilient: [#8938](https://github.com/owncloud/client/issues/8938)
+* Bugfix - Don't abort upload if chunk is locked: [#9194](https://github.com/owncloud/client/issues/9194)
+* Bugfix - Always restart OAuth2 on error: [#9196](https://github.com/owncloud/client/issues/9196)
+* Bugfix - Display correct error message for files containing `\:?*"<>|`: [#9223](https://github.com/owncloud/client/pull/9223/)
+* Bugfix - Fix failing dehydration causing files to be moved to trash: [#9257](https://github.com/owncloud/client/pull/9257)
+* Bugfix - Do not show Activity tab if server app is disabled or uninstalled: [#9260](https://github.com/owncloud/client/issues/9260)
+* Bugfix - Handle file locks for delete jobs: [#9293](https://github.com/owncloud/client/issues/9293)
+* Bugfix - Run a full local discovery after we were paused or on a forced sync: [#9341](https://github.com/owncloud/client/issues/9341)
+* Bugfix - Infinite sync loop if folder is locked: [#9342](https://github.com/owncloud/client/issues/9342)
+* Enhancement - Add the syncroot to the search indexed with Windows VFS: [#12](https://github.com/owncloud/client-desktop-vfs-win/pull/12)
+* Enhancement - Reintroduce issue filtering: [#9000](https://github.com/owncloud/client/issues/9000)
* Enhancement - Allow to remove broken sync folders: [#9099](https://github.com/owncloud/client/pull/9099)
+* Enhancement - Also ignore local repeating errors for a period of time: [#9208](https://github.com/owncloud/client/issues/9208)
+* Enhancement - Remove the availability menu from the ui: [#9291](https://github.com/owncloud/client/pull/9291)
-Details
--------
+## Details
-* Bugfix - Add request time and other missing data to .owncloudsync.log: [#7348](https://github.com/owncloud/client/issues/7348)
+* Bugfix - We fixed a possible crash: [#13](https://github.com/owncloud/client-desktop-vfs-win/pull/13)
- Some parameters were missing for some operations. This fix makes the log more complete and more
- useful as a result.
+ We fixed a possible crash that could happen during the initialisation of the vfs
+ plugin.
- https://github.com/owncloud/client/issues/7348
+ https://github.com/owncloud/client-desktop-vfs-win/pull/13
-* Bugfix - Do not ask for credentails at start-up when the user logged out: [#8924](https://github.com/owncloud/client/issues/8924)
+* Bugfix - Issues with long file path: [#4896](https://github.com/owncloud/enterprise/issues/4896)
- When a user would logout, and quit the client, then on the next start the client would
- immediately ask for credentials. This has been fixed by storing the fact that the user logged
- out before in the account settings.
+ We fixed another issue with long Windows paths.
- https://github.com/owncloud/client/issues/8924
+ https://github.com/owncloud/enterprise/issues/4896
-* Bugfix - Fix copy url location for private links: [#9048](https://github.com/owncloud/client/issues/9048)
+* Bugfix - Do not ask for credentials at start-up when the user logged out: [#8924](https://github.com/owncloud/client/issues/8924)
- We fixed a bug where a placholder was copied to the clipboard instead of the url.
+ When a user would log out, and quit the client, then on the next start the
+ client would immediately ask for credentials. This has been fixed by storing the
+ fact that the user logged out before in the account settings.
- https://github.com/owncloud/client/issues/9048
+ https://github.com/owncloud/client/issues/8924
* Bugfix - Immediately propagate changes to the ignore list: [#8975](https://github.com/owncloud/client/issues/8975)
- Previously, when changing the ignore list, those changes would not be propagated to existing
- sync folders. Only after restarting the client, would these changes be applied.
+ Previously, when changing the ignore list, those changes would not be propagated
+ to existing sync folders. Only after restarting the client, would these changes
+ be applied.
https://github.com/owncloud/client/issues/8975
https://github.com/owncloud/client/pull/9149
@@ -57,55 +2570,151 @@ Details
https://github.com/owncloud/client/issues/8992
https://github.com/owncloud/client/pull/9150
+* Bugfix - A folder moved on the server was displayed as outdated: [#9071](https://github.com/owncloud/client/issues/9071)
+
+ We fixed a bug where a folder moved on the server was displayed as outdated.
+
+ https://github.com/owncloud/client/issues/9071
+
+* Bugfix - Do not sync when `unsyncedfolders` file cannot be read: [#9165](https://github.com/owncloud/client/issues/9165)
+
+ Owncloudcmd now checks if the file specified by --unsyncedfolders exists and can
+ be read, before starting the sync. If it does not exist, show an error message
+ and quit immediately.
+
+ https://github.com/owncloud/client/issues/9165
+ https://github.com/owncloud/client/pull/9241
+
* Bugfix - Crash when handling locked files: [#9170](https://github.com/owncloud/client/issues/9170)
- We fixed a crash that could occur when trying to add a locked folder to the databse.
+ We fixed a crash that could occur when trying to add a locked folder to the
+ database.
https://github.com/owncloud/client/issues/9170
-* Bugfix - Display correct error message for files containign `\:?*"<>|`: [#9223](https://github.com/owncloud/client/pull/9223/)
+* Bugfix - Don't abort upload if chunk is locked: [#9194](https://github.com/owncloud/client/issues/9194)
+
+ Since 2.9 we know that we need exclusive file access to a file to properly
+ handle it with Windows virtual files. Therefore, we checked for the locked state
+ before we start the upload. Due to a bug we checked that for each file chunk,
+ now we only check when the upload starts and when it finished completely.
+
+ https://github.com/owncloud/client/issues/9194
+ https://github.com/owncloud/client/pull/9264
+ https://github.com/owncloud/client/pull/9296
+
+* Bugfix - Always restart OAuth2 on error: [#9196](https://github.com/owncloud/client/issues/9196)
+
+ We now always restart the OAuth2 process once we got a result. This will ensure
+ that a second try after an error occurred can succeed.
+
+ https://github.com/owncloud/client/issues/9196
- While the error message was supposed to be: `File names containing the character '%1' are not
- supported on this file system.`
+* Bugfix - Display correct error message for files containing `\:?*"<>|`: [#9223](https://github.com/owncloud/client/pull/9223/)
+
+ While the error message was supposed to be: `File names containing the character
+ '%1' are not supported on this file system.`
We displayed: `The file name is a reserved name on this file system.`
https://github.com/owncloud/client/pull/9223/
-* Change - Make sharedialog preview be more resilient: [#8938](https://github.com/owncloud/client/issues/8938)
+* Bugfix - Fix failing dehydration causing files to be moved to trash: [#9257](https://github.com/owncloud/client/pull/9257)
- We no longer enforce png thumbnails. We no longer replace the file icon if the thumbnail is
- invalid.
+ If files where dehydrated by the user the action could fail under certain
+ conditions which caused a deletion of the file.
- https://github.com/owncloud/client/issues/8938
- https://github.com/owncloud/client/pull/8939
+ https://github.com/owncloud/client/pull/9257
+ https://github.com/owncloud/client-desktop-vfs-win/pull/9
+
+* Bugfix - Do not show Activity tab if server app is disabled or uninstalled: [#9260](https://github.com/owncloud/client/issues/9260)
+
+ The Activity app API nowadays returns error responses in case the app is
+ disabled or uninstalled. This new behavior is now supported in the client.
+
+ https://github.com/owncloud/client/issues/9260
+ https://github.com/owncloud/client/pull/9266
+
+* Bugfix - Handle file locks for delete jobs: [#9293](https://github.com/owncloud/client/issues/9293)
+
+ We no longer report an error when the client tries to delete a locked file but
+ wait for the lock to be removed.
+
+ This only works when a file is deleted not on folders.
+
+ https://github.com/owncloud/client/issues/9293
+ https://github.com/owncloud/client/pull/9295
+
+* Bugfix - Run a full local discovery after we were paused or on a forced sync: [#9341](https://github.com/owncloud/client/issues/9341)
+
+ Previously we did an incremental search which might have skipped some local
+ changes.
+
+ https://github.com/owncloud/client/issues/9341
+
+* Bugfix - Infinite sync loop if folder is locked: [#9342](https://github.com/owncloud/client/issues/9342)
+
+ We fixed a bug that caused an infinite sync loop if an error occurred.
+
+ https://github.com/owncloud/client/issues/9342
+ https://github.com/owncloud/client-desktop-vfs-win/pull/14
+
+* Enhancement - Add the syncroot to the search indexed with Windows VFS: [#12](https://github.com/owncloud/client-desktop-vfs-win/pull/12)
+
+ Microsoft recommends adding the syncroot to search indexer to improve the
+ performance with the file status icons.
+
+ https://github.com/owncloud/client-desktop-vfs-win/pull/12
+
+* Enhancement - Reintroduce issue filtering: [#9000](https://github.com/owncloud/client/issues/9000)
+
+ We reintroduced a filtering option to the issue table. With the addition of a
+ Filter button we also made the existing filter by account feature more
+ accessible.
+
+ https://github.com/owncloud/client/issues/9000
+ https://github.com/owncloud/client/pull/9023
* Enhancement - Allow to remove broken sync folders: [#9099](https://github.com/owncloud/client/pull/9099)
- In case a folder is no longer available it was not possible to remove the folder. We now made the
- remove action available in that case.
+ In case a folder is no longer available it was not possible to remove the
+ folder. We now made the remove action available in that case.
https://github.com/owncloud/client/pull/9099
-Changelog for ownCloud Desktop Client [2.9.2] (2021-11-24)
-=======================================
+* Enhancement - Also ignore local repeating errors for a period of time: [#9208](https://github.com/owncloud/client/issues/9208)
+
+ If an error occurs on the server (a URL is not reachable) we try a couple of
+ times, then we ignore that file for a period of time. We now do the same with
+ errors that occur locally.
+
+ https://github.com/owncloud/client/issues/9208
+ https://github.com/owncloud/client/issues/9133
+
+* Enhancement - Remove the availability menu from the ui: [#9291](https://github.com/owncloud/client/pull/9291)
+
+ The availability options should be handled on a folder base and in the file
+ browser.
+
+ https://github.com/owncloud/client/pull/9291
+
+# Changelog for ownCloud Desktop Client [2.9.2] (2021-11-24)
+
The following sections list the changes in ownCloud Desktop Client 2.9.2 relevant to
ownCloud admins and users.
[2.9.2]: https://github.com/owncloud/client/compare/v2.9.1...v2.9.2
-Summary
--------
+## Summary
* Bugfix - Properly handle Windows log off: [#8979](https://github.com/owncloud/client/issues/8979)
* Bugfix - Disable vfs option is ignored: [#9159](https://github.com/owncloud/client/issues/9159)
-* Bugfix - The client no longer idles after a minor url change: [#9202](https://github.com/owncloud/client/pull/9202)
+* Bugfix - The client no longer idles after a minor URL change: [#9202](https://github.com/owncloud/client/pull/9202)
* Bugfix - Config migration on systems with a 2.4 and a 2.8 config: [#9224](https://github.com/owncloud/client/issues/9224)
* Enhancement - Add branding option to disable icons in the file explorer: [#9167](https://github.com/owncloud/client/issues/9167)
* Enhancement - Branding option to disable warning for multiple sync_journal.db's: [#9216](https://github.com/owncloud/client/pull/9216)
-Details
--------
+## Details
* Bugfix - Properly handle Windows log off: [#8979](https://github.com/owncloud/client/issues/8979)
@@ -118,57 +2727,58 @@ Details
* Bugfix - Disable vfs option is ignored: [#9159](https://github.com/owncloud/client/issues/9159)
- We fixed a branding issue where vfs was used even when the parameter was set to disabled.
+ We fixed a branding issue where vfs was used even when the parameter was not
+ enabled.
https://github.com/owncloud/client/issues/9159
https://github.com/owncloud/enterprise/issues/4820
-* Bugfix - The client no longer idles after a minor url change: [#9202](https://github.com/owncloud/client/pull/9202)
+* Bugfix - The client no longer idles after a minor URL change: [#9202](https://github.com/owncloud/client/pull/9202)
- When the client detects a change of the url we ask the user to accept the change or if it was only
- representational change (demo.com vs demo.com/) we directly accept the change. Due to a bug
- the we aborted the sync only after we updated the url. This caused the client to idle for one
- minute.
+ When the client detects a change of the URL we ask the user to accept the change
+ or if it was only representational change (demo.com vs demo.com/) we directly
+ accept the change. Due to a bug we aborted the sync only after we updated the
+ URL. This caused the client to idle for one minute.
https://github.com/owncloud/client/pull/9202
* Bugfix - Config migration on systems with a 2.4 and a 2.8 config: [#9224](https://github.com/owncloud/client/issues/9224)
- We fixed a bug where the client migrated the old settings from 2.4 to 2.9 instead of the 2.8
- settings. Only branded clients where affected by the issue.
+ We fixed a bug where the client migrated the old settings from 2.4 to 2.9
+ instead of the 2.8 settings. Only branded clients where affected by the issue.
https://github.com/owncloud/client/issues/9224
https://github.com/owncloud/client/pull/9226
* Enhancement - Add branding option to disable icons in the file explorer: [#9167](https://github.com/owncloud/client/issues/9167)
- We implemented a branding parameter to disable the display of icons in the file explorer
- context menu, this only affects Windows and Linux.
+ We implemented a branding parameter to disable the display of icons in the file
+ explorer context menu, this only affects Windows and Linux.
https://github.com/owncloud/client/issues/9167
* Enhancement - Branding option to disable warning for multiple sync_journal.db's: [#9216](https://github.com/owncloud/client/pull/9216)
- We added a branding option that disables the `Multiple accounts are sharing the folder`
- warning. In previous client versions a bug caused the creation of new sync journals, causing
- false positives in the detection. While this can be handled by the individual user, companies
- with multiple hundreds of users may opt to disable the warning.
+ We added a branding option that disables the `Multiple accounts are sharing the
+ folder` warning. In previous client versions a bug caused the creation of new
+ sync journals, causing false positives in the detection. While this can be
+ handled by the individual user, companies with multiple hundreds of users may
+ opt to disable the warning.
https://github.com/owncloud/client/pull/9216
-Changelog for ownCloud Desktop Client [2.9.1] (2021-10-13)
-=======================================
+# Changelog for ownCloud Desktop Client [2.9.1] (2021-10-13)
+
The following sections list the changes in ownCloud Desktop Client 2.9.1 relevant to
ownCloud admins and users.
[2.9.1]: https://github.com/owncloud/client/compare/v2.9.0...v2.9.1
-Summary
--------
+## Summary
* Bugfix - Mac multiple dialogs block all input: [#8421](https://github.com/owncloud/client/issues/8421)
* Bugfix - Enforce rtl layout with rtl languages: [#8806](https://github.com/owncloud/client/issues/8806)
-* Bugfix - Broken url in branded builds: [#8920](https://github.com/owncloud/client/issues/8920)
+* Bugfix - Broken URL in branded builds: [#8920](https://github.com/owncloud/client/issues/8920)
* Bugfix - Handle use of directory of another Windows VFS sync client: [#8994](https://github.com/owncloud/client/issues/8994)
* Bugfix - Building libcloudprovider support fails: [#8996](https://github.com/owncloud/client/issues/8996)
* Bugfix - Tables now display local time: [#9006](https://github.com/owncloud/client/issues/9006)
@@ -183,12 +2793,12 @@ Summary
* Bugfix - Downgrades could trigger deletion of virtual files: [#9114](https://github.com/owncloud/client/issues/9114)
* Enhancement - Display the error type in the issue protocol to allow sorting: [#9010](https://github.com/owncloud/client/pull/9010)
-Details
--------
+## Details
* Bugfix - Mac multiple dialogs block all input: [#8421](https://github.com/owncloud/client/issues/8421)
- We back ported a fix to a Qt bug which causes multiple dialogs on Mac to block all input.
+ We back ported a fix to a Qt bug which causes multiple dialogs on Mac to block
+ all input.
https://github.com/owncloud/client/issues/8421
https://bugreports.qt.io/browse/QTBUG-91059
@@ -196,13 +2806,13 @@ Details
* Bugfix - Enforce rtl layout with rtl languages: [#8806](https://github.com/owncloud/client/issues/8806)
- We fixed a bug where setting the language to a right to left language on mac did not change the
- layout of the application.
+ We fixed a bug where setting the language to a right to left language on Mac did
+ not change the layout of the application.
https://github.com/owncloud/client/issues/8806
https://github.com/owncloud/client/pull/8981
-* Bugfix - Broken url in branded builds: [#8920](https://github.com/owncloud/client/issues/8920)
+* Bugfix - Broken URL in branded builds: [#8920](https://github.com/owncloud/client/issues/8920)
We fixed a string issue with branded builds resulting in invalid urls.
@@ -210,9 +2820,9 @@ Details
* Bugfix - Handle use of directory of another Windows VFS sync client: [#8994](https://github.com/owncloud/client/issues/8994)
- We now better handle setup issues during the initialisation of virtual files support.
- Especially the case that a user tries to use a directory managed by a competitor which until now
- caused a crash.
+ We now better handle setup issues during the initialisation of virtual files
+ support. Especially the case that a user tries to use a directory managed by a
+ competitor which until now caused a crash.
https://github.com/owncloud/client/issues/8994
@@ -243,8 +2853,8 @@ Details
* Bugfix - Crash on missing or unreadable sync root: [#9016](https://github.com/owncloud/client/issues/9016)
- We fixed an issue where the client crashed after a user deleted the sync root or lost access to the
- directory.
+ We fixed an issue where the client crashed after a user deleted the sync root or
+ lost access to the directory.
https://github.com/owncloud/client/issues/9016
https://github.com/owncloud/client/pull/9017
@@ -252,17 +2862,21 @@ Details
* Bugfix - A upgrade to 2.9 causes the usage of a new journal file: [#9019](https://github.com/owncloud/client/issues/9019)
- We fixed a bug where the name of the sync journal was not properly saved to the settings. This
- caused a bug when migration to 2.9, so a new a new sync journal was created.
+ We fixed a bug where the name of the sync journal was not properly saved to the
+ settings. This caused a bug when migration to 2.9, so a new sync journal was
+ created.
- This not only caused the loss of some selective sync settings, but also caused the display of the
- following warning message:
+ This not only caused the loss of some selective sync settings, but also caused
+ the display of the following warning message:
- ``` Multiple accounts are sharing the folder. This configuration is know to lead to dataloss
- and is no longer supported. Please consider removing this folder from the account and adding it
- again. ```
+ ```
+ Multiple accounts are sharing the folder.
+ This configuration is know to lead to dataloss and is no longer supported.
+ Please consider removing this folder from the account and adding it again.
+ ```
- We also removed the account info infix from the sync db used with the cmd client.
+ We also removed the account info infix from the sync db used with the cmd
+ client.
https://github.com/owncloud/client/issues/9019
https://github.com/owncloud/client/pull/9028
@@ -271,7 +2885,8 @@ Details
* Bugfix - Properly deployment of Qt translations Mac and Window: [#9022](https://github.com/owncloud/client/issues/9022)
- We fixed a deployment bug which prevented the translation of some components to be loaded.
+ We fixed a deployment bug which prevented the translation of some components to
+ be loaded.
https://github.com/owncloud/client/issues/9022
https://invent.kde.org/packaging/craft/-/commit/77c114917826480f294d0432f147c9e9f7d19e21
@@ -284,15 +2899,17 @@ Details
* Bugfix - When a folder is removed we leave a database behind: [#9057](https://github.com/owncloud/client/issues/9057)
- We fixed a bug where we left an empty `sync_journal.db` behind, when we removed a
- folder/account. As we use the presence of `sync_journal.db` to determine whether the folder
- is used by a sync client this prevented using an old folder in a new setup.
+ We fixed a bug where we left an empty `sync_journal.db` behind, when we removed
+ a folder/account. As we use the presence of `sync_journal.db` to determine
+ whether the folder is used by a sync client this prevented using an old folder
+ in a new setup.
https://github.com/owncloud/client/issues/9057
* Bugfix - Dehydrating placeholders failed if the file is read only: [#9093](https://github.com/owncloud/client/issues/9093)
- We fixed a bug where dehydrating a read only file failed without any apparent reason.
+ We fixed a bug where dehydrating a read only file failed without any apparent
+ reason.
https://github.com/owncloud/client/issues/9093
https://gitea.owncloud.services/client/client-plugin-vfs-win/pulls/33
@@ -305,20 +2922,20 @@ Details
* Enhancement - Display the error type in the issue protocol to allow sorting: [#9010](https://github.com/owncloud/client/pull/9010)
- We now display the error type in the not synced protocol and allow to sort by the error type.
+ We now display the error type in the not synced protocol and allow to sort by
+ the error type.
https://github.com/owncloud/client/issues/9000
https://github.com/owncloud/client/pull/9010
-Changelog for ownCloud Desktop Client [2.9.0] (2021-09-08)
-=======================================
+# Changelog for ownCloud Desktop Client [2.9.0] (2021-09-08)
+
The following sections list the changes in ownCloud Desktop Client 2.9.0 relevant to
ownCloud admins and users.
[2.9.0]: https://github.com/owncloud/client/compare/v2.8.2...v2.9.0
-Summary
--------
+## Summary
* Bugfix - Settings migration from v2.4: [#4597](https://github.com/owncloud/enterprise/issues/4597)
* Bugfix - VFS support for folders in the drive root: [#4639](https://github.com/owncloud/enterprise/issues/4639)
@@ -328,45 +2945,44 @@ Summary
* Bugfix - Don't recommend non default sync option: [#8317](https://github.com/owncloud/client/issues/8317)
* Bugfix - Limit min window size to 2/3 available: [#8366](https://github.com/owncloud/client/issues/8366)
* Bugfix - Set up default locale correctly: [#8367](https://github.com/owncloud/client/issues/8367)
+* Bugfix - Relaunching the client on macOS will show the settings dialog: [#8377](https://github.com/owncloud/client/issues/8377)
* Bugfix - Only show the settings if they are explicitly requested on start: [#8590](https://github.com/owncloud/client/issues/8590)
-* Bugfix - Ignore consecutive errors for a pereiode of time: [#8672](https://github.com/owncloud/client/issues/8672)
+* Bugfix - Ignore consecutive errors for a period of time: [#8672](https://github.com/owncloud/client/issues/8672)
* Bugfix - Properly print the sync events in .owncloudsync.log: [#8729](https://github.com/owncloud/client/issues/8729)
* Bugfix - Correctly handle file path comparison on Windows: [#8732](https://github.com/owncloud/client/issues/8732)
* Bugfix - Locked files are not correctly synced: [#8761](https://github.com/owncloud/client/issues/8761)
* Bugfix - Prompt the user of the cmd client what to do if all files where removed: [#8804](https://github.com/owncloud/client/issues/8804)
-* Bugfix - Relaunching the client on macOS will show the settings dialog: [#8377](https://github.com/owncloud/client/issues/8377)
* Bugfix - Fix config migrations from versions 2.8 to 2.9: [#8824](https://github.com/owncloud/client/issues/8824)
* Bugfix - Always exclude .owncloud files: [#8836](https://github.com/owncloud/client/pull/8836)
* Bugfix - Don't crash if a certain move is undone: [#8837](https://github.com/owncloud/client/issues/8837)
* Bugfix - Prevent sync root sharing: [#8849](https://github.com/owncloud/client/issues/8849)
* Bugfix - Removed support for client side certificates: [#8864](https://github.com/owncloud/client/pull/8864)
* Bugfix - The `Re-open Browser` now always does what it says: [#8866](https://github.com/owncloud/client/pull/8866)
-* Bugfix - Start oauth/password prompt if password is wrong during start up: [#8901](https://github.com/owncloud/client/issues/8901)
-* Bugfix - Handle timeouts occurring during oauth: [#8940](https://github.com/owncloud/client/pull/8940)
+* Bugfix - Start OAuth/password prompt if password is wrong during start up: [#8901](https://github.com/owncloud/client/issues/8901)
+* Bugfix - Handle timeouts occurring during OAuth: [#8940](https://github.com/owncloud/client/pull/8940)
* Change - Don't ask the user to switch to http: [#8231](https://github.com/owncloud/client/issues/8231)
-* Change - Remove support for http redirects: [#8293](https://github.com/owncloud/client/pull/8293)
* Change - We no longer try to locate an ownCloud install at /owncloud: [#8273](https://github.com/owncloud/client/issues/8273)
+* Change - Remove support for http redirects: [#8293](https://github.com/owncloud/client/pull/8293)
* Change - Ignore the desktop.ini file in every directory, not only in top dir: [#8298](https://github.com/owncloud/client/issues/8298)
* Change - Add support for dynamic client registration with OIDC: [#8350](https://github.com/owncloud/client/pull/8350/)
-* Change - Include full os version in the about dialog: [#8374](https://github.com/owncloud/client/pull/8374)
+* Change - Include full os version in the about-dialog: [#8374](https://github.com/owncloud/client/pull/8374)
* Change - We removed the support for async jobs using OC-JobStatus-Location: [#8398](https://github.com/owncloud/client/pull/8398)
* Change - Add a branding option to skip the advanced setup page: [#8665](https://github.com/owncloud/client/issues/8665)
-* Enhancement - Prefer 127.0.0.1 as oauth redirect url: [#4542](https://github.com/owncloud/enterprise/issues/4542)
+* Enhancement - Make crash report IDs easy to copy: [#25](https://github.com/dschmidt/libcrashreporter-qt/pull/25)
+* Enhancement - Prefer 127.0.0.1 as OAuth redirect URL: [#4542](https://github.com/owncloud/enterprise/issues/4542)
* Enhancement - Display an icon in the Windows explorer context menu: [#4627](https://github.com/owncloud/client/issues/4627)
* Enhancement - Show last sync date in tray menu: [#5644](https://github.com/owncloud/client/issues/5644)
-* Enhancement - Display the information state in case we encountered ignored errors: [#8858](https://github.com/owncloud/client/pull/8858)
-* Enhancement - Make crash report IDs easy to copy: [#25](https://github.com/dschmidt/libcrashreporter-qt/pull/25)
+* Enhancement - Consider a remote poll interval coming with the server capabilities: [#5947](https://github.com/owncloud/client/issues/5947)
* Enhancement - We reworked the tables: [#8158](https://github.com/owncloud/client/issues/8158)
* Enhancement - Provide a socket api call to get the client icon and: [#8464](https://github.com/owncloud/client/issues/8464)
* Enhancement - Add language picker to general settings: [#8466](https://github.com/owncloud/client/issues/8466)
* Enhancement - Attach the last 20 log lines to a crash report: [#8467](https://github.com/owncloud/client/issues/8467)
* Enhancement - Mention the local file name when a file name clash occurs: [#8609](https://github.com/owncloud/client/issues/8609)
-* Enhancement - Consider a remote poll interval coming with the server capabilities: [#5947](https://github.com/owncloud/client/issues/5947)
* Enhancement - Improved handling of errors during local file updates: [#8787](https://github.com/owncloud/client/pull/8787)
* Enhancement - Retry sync on `502 Bad Gateway`: [#8811](https://github.com/owncloud/client/issues/8811)
+* Enhancement - Display the information state in case we encountered ignored errors: [#8858](https://github.com/owncloud/client/pull/8858)
-Details
--------
+## Details
* Bugfix - Settings migration from v2.4: [#4597](https://github.com/owncloud/enterprise/issues/4597)
@@ -382,16 +2998,16 @@ Details
* Bugfix - Keep share link names in sync with server: [#7549](https://github.com/owncloud/client/issues/7549)
- When the name of a share link is changed, e.g., to an empty string, the server may not apply this,
- but assign a fallback value (e.g., the link ID). The client therefore needs to re-check the name
- after sending a change request.
+ When the name of a share link is changed, e.g., to an empty string, the server
+ may not apply this, but assign a fallback value (e.g., the link ID). The client
+ therefore needs to re-check the name after sending a change request.
https://github.com/owncloud/client/issues/7549
https://github.com/owncloud/client/pull/8546
* Bugfix - SQLite wal file grows to several gigabyte: [#7646](https://github.com/owncloud/client/issues/7646)
- We fixed a bug where the SQLite wal file growed until the client was quit.
+ We fixed a bug where the SQLite wal file grew until the client was quit.
https://github.com/owncloud/client/issues/7646
@@ -409,28 +3025,37 @@ Details
* Bugfix - Limit min window size to 2/3 available: [#8366](https://github.com/owncloud/client/issues/8366)
- When scaling was used the window could become bigger than the screen. The size is now limited to
- 2/3 of the screen.
+ When scaling was used the window could become bigger than the screen. The size
+ is now limited to 2/3 of the screen.
https://github.com/owncloud/client/issues/8366
* Bugfix - Set up default locale correctly: [#8367](https://github.com/owncloud/client/issues/8367)
- Fixes the formatting in locale-dependent widgets, e.g., date pickers, like the one in the
- "share link" window.
+ Fixes the formatting in locale-dependent widgets, e.g., date pickers, like the
+ one in the "share link" window.
https://github.com/owncloud/client/issues/8367
https://github.com/owncloud/client/pull/8541
https://github.com/owncloud/client/pull/8617
+* Bugfix - Relaunching the client on macOS will show the settings dialog: [#8377](https://github.com/owncloud/client/issues/8377)
+
+ Relaunching the ownCloud client when it is already running, would seemingly do
+ nothing at all. To make this more consistent with other macOS applications,
+ relaunching will now open the settings dialog.
+
+ https://github.com/owncloud/client/issues/8377
+ https://github.com/owncloud/client/pull/8812
+
* Bugfix - Only show the settings if they are explicitly requested on start: [#8590](https://github.com/owncloud/client/issues/8590)
- We now only display the settings when the user requested it on start and not every time the
- application is started a second time.
+ We now only display the settings when the user requested it on start and not
+ every time the application is started a second time.
https://github.com/owncloud/client/issues/8590
-* Bugfix - Ignore consecutive errors for a pereiode of time: [#8672](https://github.com/owncloud/client/issues/8672)
+* Bugfix - Ignore consecutive errors for a period of time: [#8672](https://github.com/owncloud/client/issues/8672)
We fixed a bug where certain errors caused a sync run every 30 seconds
@@ -438,21 +3063,22 @@ Details
* Bugfix - Properly print the sync events in .owncloudsync.log: [#8729](https://github.com/owncloud/client/issues/8729)
- We fixed a bug in the .owncloudsync.log logger which caused enum values to be printed as a number
- rather than a string.
+ We fixed a bug in the .owncloudsync.log logger which caused enum values to be
+ printed as a number rather than a string.
https://github.com/owncloud/client/issues/8729
* Bugfix - Correctly handle file path comparison on Windows: [#8732](https://github.com/owncloud/client/issues/8732)
- We fixed a bug in which a change in the casing og the sync root made the client ignore changes in it.
+ We fixed a bug in which a change in the casing og the sync root made the client
+ ignore changes in it.
https://github.com/owncloud/client/issues/8732
* Bugfix - Locked files are not correctly synced: [#8761](https://github.com/owncloud/client/issues/8761)
- We fixed an issue where files locked by office etc, where not correctly synced, when Windows
- Virtual files are enabled.
+ We fixed an issue where files locked by office etc., where not correctly synced,
+ when Windows Virtual files are enabled.
https://github.com/owncloud/client/issues/8761
https://github.com/owncloud/client/issues/8765
@@ -466,31 +3092,25 @@ Details
https://github.com/owncloud/client/issues/8804
-* Bugfix - Relaunching the client on macOS will show the settings dialog: [#8377](https://github.com/owncloud/client/issues/8377)
-
- Relaunching the ownCloud client when it is already running, would seemingly do nothing at all.
- To make this more consistent with other macOS applications, relaunching will now open the
- settings dialog.
-
- https://github.com/owncloud/client/issues/8377
- https://github.com/owncloud/client/pull/8812
-
* Bugfix - Fix config migrations from versions 2.8 to 2.9: [#8824](https://github.com/owncloud/client/issues/8824)
- Due to a value change of an internal Qt configuration variable, the configuration data could
- not be migrated on many systems. We fixed this by implementing an additional migration path.
+ Due to a value change of an internal Qt configuration variable, the
+ configuration data could not be migrated on many systems. We fixed this by
+ implementing an additional migration path.
- Furthermore, we removed the dependency on said value within the GUI, and use the values
- explicitly from the theme to display the correct values on UI elements such as buttons.
+ Furthermore, we removed the dependency on said value within the GUI, and use the
+ values explicitly from the theme to display the correct values on UI elements
+ such as buttons.
https://github.com/owncloud/client/issues/8824
https://github.com/owncloud/client/pull/8860
* Bugfix - Always exclude .owncloud files: [#8836](https://github.com/owncloud/client/pull/8836)
- Our Linux virtual files implementation is using the file name extension .owncloud those files
- where only ignored if the Linux VFS was enabled. Under some circumstances it could lead to
- undefined client states. We now always ignore those files as system reserved.
+ Our Linux virtual files implementation is using the file name extension
+ .owncloud those files where only ignored if the Linux VFS was enabled. Under
+ some circumstances it could lead to undefined client states. We now always
+ ignore those files as system reserved.
https://github.com/owncloud/client/pull/8836
@@ -502,78 +3122,83 @@ Details
* Bugfix - Prevent sync root sharing: [#8849](https://github.com/owncloud/client/issues/8849)
- Due to legacy reasons it is possible to let two sync connections use the same directory. In
- combination with virtual files this was leading to dataloss however.
+ Due to legacy reasons it is possible to let two sync connections use the same
+ directory. In combination with virtual files this was leading to data-loss,
+ however.
https://github.com/owncloud/client/issues/8849
https://github.com/owncloud/client/issues/8512
* Bugfix - Removed support for client side certificates: [#8864](https://github.com/owncloud/client/pull/8864)
- Client side certificates where never officially supported and where untested in many
- scenarios.
+ Client side certificates where never officially supported and where untested in
+ many scenarios.
https://github.com/owncloud/client/pull/8864
* Bugfix - The `Re-open Browser` now always does what it says: [#8866](https://github.com/owncloud/client/pull/8866)
- Under certain conditions the previous authentication run might have failed and the button
- became unresponsive, we now start a new authentication in that case.
+ Under certain conditions the previous authentication run might have failed and
+ the button became unresponsive, we now start a new authentication in that case.
https://github.com/owncloud/client/pull/8866
-* Bugfix - Start oauth/password prompt if password is wrong during start up: [#8901](https://github.com/owncloud/client/issues/8901)
+* Bugfix - Start OAuth/password prompt if password is wrong during start up: [#8901](https://github.com/owncloud/client/issues/8901)
- If the oauth token was invalid during start up we didn't start the oauth process and the user
- needed to manually log out in order to log in again.
+ If the OAuth token was invalid during start up we didn't start the OAuth process
+ and the user needed to manually log out in order to log in again.
https://github.com/owncloud/client/issues/8901
-* Bugfix - Handle timeouts occurring during oauth: [#8940](https://github.com/owncloud/client/pull/8940)
+* Bugfix - Handle timeouts occurring during OAuth: [#8940](https://github.com/owncloud/client/pull/8940)
- We now handle timeouts occurring during oauth.
+ We now handle timeouts occurring during OAuth.
https://github.com/owncloud/client/pull/8940
* Change - Don't ask the user to switch to http: [#8231](https://github.com/owncloud/client/issues/8231)
- We no longer recommend to use a http connection if a https url was not found.
+ We no longer recommend to use a http connection if a https URL was not found.
https://github.com/owncloud/client/issues/8231
-* Change - Remove support for http redirects: [#8293](https://github.com/owncloud/client/pull/8293)
+* Change - We no longer try to locate an ownCloud install at /owncloud: [#8273](https://github.com/owncloud/client/issues/8273)
- We no longer follow redirects, when a redirect is detected we will start a connection
- validation process that does follow redirects. This change improves the support of APM
- solutions which apply special redirects to provide cookie sessions to the client.
+ We no longer try to locate an ownCloud install in /owncloud if we failed to
+ connect to a server.
- https://github.com/owncloud/client/pull/8293
- https://github.com/owncloud/client/pull/8253
+ https://github.com/owncloud/client/issues/8273
-* Change - We no longer try to locate an ownCloud install at /owncloud: [#8273](https://github.com/owncloud/client/issues/8273)
+* Change - Remove support for http redirects: [#8293](https://github.com/owncloud/client/pull/8293)
- We no longer try to locate an ownCloud install in /owncloud if we failed to connect to a server.
+ We no longer follow redirects, when a redirect is detected we will start a
+ connection validation process that does follow redirects. This change improves
+ the support of APM solutions which apply special redirects to provide cookie
+ sessions to the client.
- https://github.com/owncloud/client/issues/8273
+ https://github.com/owncloud/client/pull/8293
+ https://github.com/owncloud/client/pull/8253
* Change - Ignore the desktop.ini file in every directory, not only in top dir: [#8298](https://github.com/owncloud/client/issues/8298)
- The windows explorer files called desktop.ini were ignored only in the top sync dir so far. They
- are now ignored in the sync in all directory levels of the file tree.
+ The Windows explorer files called desktop.ini were ignored only in the top sync
+ dir so far. They are now ignored in the sync in all directory levels of the file
+ tree.
https://github.com/owncloud/client/issues/8298
https://github.com/owncloud/client/pull/8299
* Change - Add support for dynamic client registration with OIDC: [#8350](https://github.com/owncloud/client/pull/8350/)
- We implemented support for dynamic client registration with an OpenID Connect provider.
+ We implemented support for dynamic client registration with an OpenID Connect
+ provider.
https://github.com/owncloud/client/pull/8350/
-* Change - Include full os version in the about dialog: [#8374](https://github.com/owncloud/client/pull/8374)
+* Change - Include full os version in the about-dialog: [#8374](https://github.com/owncloud/client/pull/8374)
- We now include the os version in the about dialog, this might help us to faster pin down os related
- issues.
+ We now include the os version in the about-dialog, this might help us to faster
+ pin down os related issues.
https://github.com/owncloud/client/pull/8374
@@ -589,12 +3214,21 @@ Details
https://github.com/owncloud/client/issues/8665
-* Enhancement - Prefer 127.0.0.1 as oauth redirect url: [#4542](https://github.com/owncloud/enterprise/issues/4542)
+* Enhancement - Make crash report IDs easy to copy: [#25](https://github.com/dschmidt/libcrashreporter-qt/pull/25)
+
+ Users can now click on crash report IDs to copy them to their personal
+ clipboard. This way, they can easily reference them in bug reports.
+
+ https://github.com/owncloud/client/issues/8130
+ https://github.com/dschmidt/libcrashreporter-qt/pull/25
+ https://github.com/owncloud/client/pull/8540
- When using OpenID Connect we now always use http://127.0.0.1 as redirect url instead of
- http://localhost, following the recommendations in RFC 8252
- (https://tools.ietf.org/html/rfc8252). For OAuth2 we added a branding parameter which
- allows to specify http://127.0.0.1 instead of http://localhost.
+* Enhancement - Prefer 127.0.0.1 as OAuth redirect URL: [#4542](https://github.com/owncloud/enterprise/issues/4542)
+
+ When using OpenID Connect we now always use http://127.0.0.1 as redirect URL
+ instead of http://localhost, following the recommendations in RFC 8252
+ (https://tools.ietf.org/html/rfc8252). For OAuth2 we added a branding parameter
+ which allows to specify http://127.0.0.1 instead of http://localhost.
https://github.com/owncloud/enterprise/issues/4542
@@ -611,34 +3245,20 @@ Details
https://github.com/owncloud/client/issues/5644
https://github.com/owncloud/client/pull/8547
-* Enhancement - Display the information state in case we encountered ignored errors: [#8858](https://github.com/owncloud/client/pull/8858)
-
- If syncing a file fails multiple times we mark it as ignored to skip it for a certain amount of
- time. If we have ignored files we are not in sync, we now don't display the green icon.
-
- Additionally this change aligns the icon displayed in the system tray with the icon displayed
- in the app.
-
- Https://github.com/owncloud/client/issues/7715
- https://github.com/owncloud/client/issues/7365
- https://github.com/owncloud/client/issues/7200
- https://github.com/owncloud/client/issues/5860
-
- https://github.com/owncloud/client/pull/8858
-
-* Enhancement - Make crash report IDs easy to copy: [#25](https://github.com/dschmidt/libcrashreporter-qt/pull/25)
+* Enhancement - Consider a remote poll interval coming with the server capabilities: [#5947](https://github.com/owncloud/client/issues/5947)
- Users can now click on crash report IDs to copy them to their personal clipboard. This way, they
- can easily reference them in bug reports.
+ This way, admins can configure the remote sync poll interval of clients through
+ the capabilities settings of the server. Note that the setting in the server
+ capabilities needs to be done in milliseconds. Default is 30 seconds.
- https://github.com/owncloud/client/issues/8130
- https://github.com/dschmidt/libcrashreporter-qt/pull/25
- https://github.com/owncloud/client/pull/8540
+ https://github.com/owncloud/client/issues/5947
+ https://github.com/owncloud/client/issues/8780
+ https://github.com/owncloud/client/pull/8777
* Enhancement - We reworked the tables: [#8158](https://github.com/owncloud/client/issues/8158)
- We reworked all the tables in the application to unify their behaviour and improve their
- performance.
+ We reworked all the tables in the application to unify their behaviour and
+ improve their performance.
https://github.com/owncloud/client/issues/8158
https://github.com/owncloud/client/issues/4336
@@ -652,23 +3272,24 @@ Details
Add the icon to the dolphin right click menu
- We added support to get the ownCloud client icon of the current theme to the socket api. We show
- the client icon in the dolphin file browser context menu.
+ We added support to get the ownCloud client icon of the current theme to the
+ socket api. We show the client icon in the dolphin file browser context menu.
https://github.com/owncloud/client/issues/8464
* Enhancement - Add language picker to general settings: [#8466](https://github.com/owncloud/client/issues/8466)
- Users can override the automatically chosen language by selecting a custom language in a
- dropdown in the general settings. Furthermore, a --language CLI parameter was added that
- serves the same purpose.
+ Users can override the automatically chosen language by selecting a custom
+ language in a dropdown in the general settings. Furthermore, a --language CLI
+ parameter was added that serves the same purpose.
https://github.com/owncloud/client/issues/8466
https://github.com/owncloud/client/pull/8493
* Enhancement - Attach the last 20 log lines to a crash report: [#8467](https://github.com/owncloud/client/issues/8467)
- We now save the last 20 lines of log to a tempoary file. This file is then part of a crash report.
+ We now save the last 20 lines of log to a temporary file. This file is then part
+ of a crash report.
https://github.com/owncloud/client/issues/8467
https://github.com/owncloud/client/pull/8469
@@ -680,49 +3301,54 @@ Details
https://github.com/owncloud/client/issues/8609
https://github.com/owncloud/client/pull/8630
-* Enhancement - Consider a remote poll interval coming with the server capabilities: [#5947](https://github.com/owncloud/client/issues/5947)
-
- This way, admins can configure the remote sync poll interval of clients through the
- capabilities settings of the server. Note that the setting in the server capabilities needs to
- be done in milliseconds. Default is 30 seconds.
-
- https://github.com/owncloud/client/issues/5947
- https://github.com/owncloud/client/issues/8780
- https://github.com/owncloud/client/pull/8777
-
* Enhancement - Improved handling of errors during local file updates: [#8787](https://github.com/owncloud/client/pull/8787)
- If a local metadata update fails we now provide the proper error in the ui. In case that the error
- was caused by a locked file we now retry the operation.
+ If a local metadata update fails we now provide the proper error in the ui. In
+ case that the error was caused by a locked file we now retry the operation.
https://github.com/owncloud/client/pull/8787
* Enhancement - Retry sync on `502 Bad Gateway`: [#8811](https://github.com/owncloud/client/issues/8811)
- We now treat a `502 Bad Gateway` as an less severer error and directly initialise a retry.
+ We now treat a `502 Bad Gateway` as a less severe error and directly initialise
+ a retry.
https://github.com/owncloud/client/issues/8811
-Changelog for ownCloud Desktop Client [2.8.2] (2021-05-28)
-=======================================
+* Enhancement - Display the information state in case we encountered ignored errors: [#8858](https://github.com/owncloud/client/pull/8858)
+
+ If syncing a file fails multiple times we mark it as ignored to skip it for a
+ certain amount of time. If we have ignored files we are not in sync, we now
+ don't display the green icon.
+
+ Additionally, this change aligns the icon displayed in the system tray with the
+ icon displayed in the app.
+
+ Https://github.com/owncloud/client/issues/7715
+ https://github.com/owncloud/client/issues/7365
+ https://github.com/owncloud/client/issues/7200
+ https://github.com/owncloud/client/issues/5860
+
+ https://github.com/owncloud/client/pull/8858
+
+# Changelog for ownCloud Desktop Client [2.8.2] (2021-05-28)
+
The following sections list the changes in ownCloud Desktop Client 2.8.2 relevant to
ownCloud admins and users.
[2.8.2]: https://github.com/owncloud/client/compare/v2.8.1...v2.8.2
-Summary
--------
+## Summary
* Bugfix - Correctly detect network drives: [#8272](https://github.com/owncloud/client/issues/8272)
* Bugfix - We fixed a potential crash in the socket api: [#8664](https://github.com/owncloud/client/pull/8664)
-Details
--------
+## Details
* Bugfix - Correctly detect network drives: [#8272](https://github.com/owncloud/client/issues/8272)
- We fixed a bug which allowed to use Virtual files on Windows network drives, which is not
- supported by Windows.
+ We fixed a bug which allowed to use Virtual files on Windows network drives,
+ which is not supported by Windows.
https://github.com/owncloud/client/issues/8272
@@ -732,21 +3358,19 @@ Details
https://github.com/owncloud/client/pull/8664
-Changelog for ownCloud Desktop Client [2.8.1] (2021-05-21)
-=======================================
+# Changelog for ownCloud Desktop Client [2.8.1] (2021-05-21)
+
The following sections list the changes in ownCloud Desktop Client 2.8.1 relevant to
ownCloud admins and users.
[2.8.1]: https://github.com/owncloud/client/compare/v2.8.0...v2.8.1
-Summary
--------
+## Summary
* Bugfix - We fixed an issue with the assignment of tags: [#8633](https://github.com/owncloud/client/pull/8633/)
* Enhancement - Prevent user from setting up a VFS sync to the root of a drive: [#8615](https://github.com/owncloud/client/pull/8615)
-Details
--------
+## Details
* Bugfix - We fixed an issue with the assignment of tags: [#8633](https://github.com/owncloud/client/pull/8633/)
@@ -756,43 +3380,42 @@ Details
* Enhancement - Prevent user from setting up a VFS sync to the root of a drive: [#8615](https://github.com/owncloud/client/pull/8615)
- We now display a warning when a user tries to sync to a drive like D:\ instead of a folder and
- prevent this. Previous versions of the client used to crash.
+ We now display a warning when a user tries to sync to a drive like D:\ instead
+ of a folder and prevent this. Previous versions of the client used to crash.
https://github.com/owncloud/client/pull/8615
-Changelog for ownCloud Desktop Client [2.8.0] (2021-05-06)
-=======================================
+# Changelog for ownCloud Desktop Client [2.8.0] (2021-05-06)
+
The following sections list the changes in ownCloud Desktop Client 2.8.0 relevant to
ownCloud admins and users.
[2.8.0]: https://github.com/owncloud/client/compare/v2.7.6...v2.8.0
-Summary
--------
+## Summary
* Bugfix - Fix issues with long path: [#4405](https://github.com/owncloud/enterprise/issues/4405)
* Bugfix - Moves in folder sync connections where executed as a delete and upload: [#7838](https://github.com/owncloud/client/issues/7838)
-* Bugfix - Fix brandings with space in the name: [#8482](https://github.com/owncloud/client/pull/8482)
+* Bugfix - Fix branding with space in the name: [#8482](https://github.com/owncloud/client/pull/8482)
* Bugfix - We fixed an issue with the promptDeleteAllFiles setting: [#8484](https://github.com/owncloud/client/issues/8484)
* Enhancement - Added branding option to enforce VFS: [#4144](https://github.com/owncloud/enterprise/issues/4144)
* Enhancement - Add initial support for backups triggered by an external tool: [#8437](https://github.com/owncloud/client/pull/8437)
* Enhancement - Add an icon to the Windows system tray notification: [#8539](https://github.com/owncloud/client/pull/8539)
* Enhancement - Encode the log file as UTF-8: [#8550](https://github.com/owncloud/client/pull/8550)
-Details
--------
+## Details
* Bugfix - Fix issues with long path: [#4405](https://github.com/owncloud/enterprise/issues/4405)
- We fixed an issue introduced in dd641fae997d71c8396b77def2fa25ad96fdf47f with some
- functions and files paths > 260 characters.
+ We fixed an issue introduced in dd641fae997d71c8396b77def2fa25ad96fdf47f with
+ some functions and files paths > 260 characters.
https://github.com/owncloud/enterprise/issues/4405
* Bugfix - Moves in folder sync connections where executed as a delete and upload: [#7838](https://github.com/owncloud/client/issues/7838)
- We fixed a bug where moves in folder sync connections where executed as a delete and upload.
+ We fixed a bug where moves in folder sync connections where executed as a delete
+ and upload.
https://github.com/owncloud/client/issues/7838
https://github.com/owncloud/enterprise/issues/4428
@@ -800,15 +3423,16 @@ Details
https://github.com/owncloud/client/pull/8456
https://github.com/owncloud/client/pull/8459
-* Bugfix - Fix brandings with space in the name: [#8482](https://github.com/owncloud/client/pull/8482)
+* Bugfix - Fix branding with space in the name: [#8482](https://github.com/owncloud/client/pull/8482)
- We fix a build system issue with brandings containing spaces.
+ We fix a build system issue with branding containing spaces.
https://github.com/owncloud/client/pull/8482
* Bugfix - We fixed an issue with the promptDeleteAllFiles setting: [#8484](https://github.com/owncloud/client/issues/8484)
- When promptDeleteAllFiles=false is set the client will now correctly delete all files.
+ When promptDeleteAllFiles=false is set the client will now correctly delete all
+ files.
https://github.com/owncloud/client/issues/8484
@@ -836,26 +3460,24 @@ Details
* Enhancement - Encode the log file as UTF-8: [#8550](https://github.com/owncloud/client/pull/8550)
- We fixed an issue where the log file might not have been encoded as UTF-8 and thus scrambled file
- names.
+ We fixed an issue where the log file might not have been encoded as UTF-8 and
+ thus scrambled file names.
https://github.com/owncloud/client/pull/8550
-Changelog for ownCloud Desktop Client [2.7.6] (2021-02-04)
-=======================================
+# Changelog for ownCloud Desktop Client [2.7.6] (2021-02-04)
+
The following sections list the changes in ownCloud Desktop Client 2.7.6 relevant to
ownCloud admins and users.
[2.7.6]: https://github.com/owncloud/client/compare/v2.7.5...v2.7.6
-Summary
--------
+## Summary
* Bugfix - Fix missing sidebar icons on Mac with branded builds: [#4387](https://github.com/owncloud/enterprise/issues/4387)
-* Bugfix - Case sensitive comparison of checksum algorithm: [#8371](https://github.com/owncloud/client/pull/8371)
+* Bugfix - Case-sensitive comparison of checksum algorithm: [#8371](https://github.com/owncloud/client/pull/8371)
-Details
--------
+## Details
* Bugfix - Fix missing sidebar icons on Mac with branded builds: [#4387](https://github.com/owncloud/enterprise/issues/4387)
@@ -863,23 +3485,22 @@ Details
https://github.com/owncloud/enterprise/issues/4387
-* Bugfix - Case sensitive comparison of checksum algorithm: [#8371](https://github.com/owncloud/client/pull/8371)
+* Bugfix - Case-sensitive comparison of checksum algorithm: [#8371](https://github.com/owncloud/client/pull/8371)
- We fixed a bug where the checksum detection was case sensitive and used a different casing than
- the server.
+ We fixed a bug where the checksum detection was case-sensitive and used a
+ different casing than the server.
https://github.com/owncloud/client/pull/8371
https://github.com/owncloud/client/pull/8376
-Changelog for ownCloud Desktop Client [2.7.5] (2021-01-28)
-=======================================
+# Changelog for ownCloud Desktop Client [2.7.5] (2021-01-28)
+
The following sections list the changes in ownCloud Desktop Client 2.7.5 relevant to
ownCloud admins and users.
[2.7.5]: https://github.com/owncloud/client/compare/v2.7.4...v2.7.5
-Summary
--------
+## Summary
* Bugfix - Support dark theme with branded client and vanilla icons: [#4363](https://github.com/owncloud/enterprise/issues/4363)
* Bugfix - Mac tray icon is scaled wrong: [#8149](https://github.com/owncloud/client/issues/8149)
@@ -889,8 +3510,7 @@ Summary
* Bugfix - Fix wrong option provided to OIDC: [#8390](https://github.com/owncloud/client/issues/8390)
* Change - Third party upgrades in distributed binaries: [#8349](https://github.com/owncloud/client/issues/8349)
-Details
--------
+## Details
* Bugfix - Support dark theme with branded client and vanilla icons: [#4363](https://github.com/owncloud/enterprise/issues/4363)
@@ -900,26 +3520,29 @@ Details
* Bugfix - Mac tray icon is scaled wrong: [#8149](https://github.com/owncloud/client/issues/8149)
- We backported a change to Qt 5.12.10 which fixed the scaling of the system tray icon on Big Sur.
+ We backported a change to Qt 5.12.10 which fixed the scaling of the system tray
+ icon on Big Sur.
https://github.com/owncloud/client/issues/8149
* Bugfix - Fix potential crashes with the remove all dialog: [#8314](https://github.com/owncloud/client/pull/8314)
- We fixed a bug a dialog window belonging to a removed account could still be visible. User action
- on that dialog would then cause a crash.
+ We fixed a bug a dialog window belonging to a removed account could still be
+ visible. User action on that dialog would then cause a crash.
https://github.com/owncloud/client/pull/8314
* Bugfix - Detect file name clash with VirtualFiles enabled: [#8323](https://github.com/owncloud/client/issues/8323)
- We fixed an issue where the file name clash detection was not run with VirtualFiles enabled.
+ We fixed an issue where the file name clash detection was not run with
+ VirtualFiles enabled.
https://github.com/owncloud/client/issues/8323
* Bugfix - Remove stray placeholders: [#8326](https://github.com/owncloud/client/issues/8326)
- We fixed a bug where Windows Virtual Files where not handled as such and thus not removed.
+ We fixed a bug where Windows Virtual Files where not handled as such and thus
+ not removed.
https://github.com/owncloud/client/issues/8326
@@ -931,39 +3554,38 @@ Details
* Change - Third party upgrades in distributed binaries: [#8349](https://github.com/owncloud/client/issues/8349)
- We updated Qt from 5.12.9 to 5.12.10. We updated OpenSSL from 1.1.1g to 1.1.1i. Linux
- dependencies: QtKeychain was updated from 0.10.0 to 0.12.0
+ We updated Qt from 5.12.9 to 5.12.10. We updated OpenSSL from 1.1.1g to 1.1.1i.
+ Linux dependencies: QtKeychain was updated from 0.10.0 to 0.12.0
https://github.com/owncloud/client/issues/8349
-Changelog for ownCloud Desktop Client [2.7.4] (2020-12-21)
-=======================================
+# Changelog for ownCloud Desktop Client [2.7.4] (2020-12-21)
+
The following sections list the changes in ownCloud Desktop Client 2.7.4 relevant to
ownCloud admins and users.
[2.7.4]: https://github.com/owncloud/client/compare/v2.7.3...v2.7.4
-Summary
--------
+## Summary
* Bugfix - Fix crash when a download is cancelled: [#4329](https://github.com/owncloud/enterprise/issues/4329)
* Bugfix - Update Windows launch on start entry: [#7672](https://github.com/owncloud/client/issues/7672)
* Bugfix - Log the final http request: [#8289](https://github.com/owncloud/client/pull/8289)
* Bugfix - Properly display parent Window when displaying a dialog: [#8313](https://github.com/owncloud/client/issues/8313)
-Details
--------
+## Details
* Bugfix - Fix crash when a download is cancelled: [#4329](https://github.com/owncloud/enterprise/issues/4329)
- We fixed a crash, on Windows, when a user cancelled a download of a VirtualFile using the Windows
- explorer.
+ We fixed a crash, on Windows, when a user cancelled a download of a VirtualFile
+ using the Windows explorer.
https://github.com/owncloud/enterprise/issues/4329
* Bugfix - Update Windows launch on start entry: [#7672](https://github.com/owncloud/client/issues/7672)
- We fixed a bug where launch on start did not work after a re install to a new location.
+ We fixed a bug where launch on start did not work after a re-install to a new
+ location.
https://github.com/owncloud/client/issues/7672
@@ -979,46 +3601,42 @@ Details
https://github.com/owncloud/client/issues/8313
-Changelog for ownCloud Desktop Client [2.7.3] (2020-12-11)
-=======================================
+# Changelog for ownCloud Desktop Client [2.7.3] (2020-12-11)
+
The following sections list the changes in ownCloud Desktop Client 2.7.3 relevant to
ownCloud admins and users.
[2.7.3]: https://github.com/owncloud/client/compare/v2.7.2...v2.7.3
-Summary
--------
+## Summary
* Bugfix - Fix handling of errors with the Windows Cloud Filter API: [#8294](https://github.com/owncloud/client/issues/8294)
-Details
--------
+## Details
* Bugfix - Fix handling of errors with the Windows Cloud Filter API: [#8294](https://github.com/owncloud/client/issues/8294)
- We fixed a bug where errors during the creation of placeholder files where not correctly
- handled. The missing files where than falsely detected as deleted and thus removed from the
- server.
+ We fixed a bug where errors during the creation of placeholder files where not
+ correctly handled. The missing files where than falsely detected as deleted and
+ thus removed from the server.
https://github.com/owncloud/client/issues/8294
-Changelog for ownCloud Desktop Client [2.7.2] (2020-12-02)
-=======================================
+# Changelog for ownCloud Desktop Client [2.7.2] (2020-12-02)
+
The following sections list the changes in ownCloud Desktop Client 2.7.2 relevant to
ownCloud admins and users.
[2.7.2]: https://github.com/owncloud/client/compare/v2.7.1...v2.7.2
-Summary
--------
+## Summary
* Bugfix - Correctly detect Windows 10 taskbar theme: [#8244](https://github.com/owncloud/client/issues/8244)
* Bugfix - Sync small plaintext files with Windows VFS: [#8248](https://github.com/owncloud/client/issues/8248)
* Bugfix - Update "Sync hidden files" button: [#8258](https://github.com/owncloud/client/issues/8258)
* Bugfix - Pause sync when displaying remove all dialog: [#8263](https://github.com/owncloud/client/issues/8263)
-Details
--------
+## Details
* Bugfix - Correctly detect Windows 10 taskbar theme: [#8244](https://github.com/owncloud/client/issues/8244)
@@ -1028,62 +3646,62 @@ Details
* Bugfix - Sync small plaintext files with Windows VFS: [#8248](https://github.com/owncloud/client/issues/8248)
- We fixed a bug where small plaintext files where not synced due to a broken interity check.
+ We fixed a bug where small plaintext files where not synced due to a broken
+ integrity check.
https://github.com/owncloud/client/issues/8248
* Bugfix - Update "Sync hidden files" button: [#8258](https://github.com/owncloud/client/issues/8258)
- We fixed a bug that prevented the "Sync hidden files" from displaying the correct value.
+ We fixed a bug that prevented the "Sync hidden files" from displaying the
+ correct value.
https://github.com/owncloud/client/issues/8258
* Bugfix - Pause sync when displaying remove all dialog: [#8263](https://github.com/owncloud/client/issues/8263)
- We now pause the syn process when the all files where removed dialog is displayed. This prevents
- multiple dialogs from being displayed.
+ We now pause the syn process when the all files where removed dialog is
+ displayed. This prevents multiple dialogs from being displayed.
https://github.com/owncloud/client/issues/8263
-Changelog for ownCloud Desktop Client [2.7.1] (2020-11-18)
-=======================================
+# Changelog for ownCloud Desktop Client [2.7.1] (2020-11-18)
+
The following sections list the changes in ownCloud Desktop Client 2.7.1 relevant to
ownCloud admins and users.
[2.7.1]: https://github.com/owncloud/client/compare/v2.7.0...v2.7.1
-Summary
--------
+## Summary
* Bugfix - Fix client forgetting VirtualFiles mode: [#8229](https://github.com/owncloud/client/pull/8229)
* Bugfix - Don't follow redirects on .well-known/openid-configuration: [#8232](https://github.com/owncloud/client/pull/8232)
-Details
--------
+## Details
* Bugfix - Fix client forgetting VirtualFiles mode: [#8229](https://github.com/owncloud/client/pull/8229)
- We fixed a migration issue where 2.5 based settings where the client was forgetting the
- VirtualFiles settings.
+ We fixed a migration issue where 2.5 based settings where the client was
+ forgetting the VirtualFiles settings.
https://github.com/owncloud/client/pull/8229
* Bugfix - Don't follow redirects on .well-known/openid-configuration: [#8232](https://github.com/owncloud/client/pull/8232)
- We fixed a bug where the client followed redirects for .well-known/openid-configuration.
+ We fixed a bug where the client followed redirects for
+ .well-known/openid-configuration.
https://github.com/owncloud/openidconnect/issues/20
https://github.com/owncloud/client/pull/8232
-Changelog for ownCloud Desktop Client [2.7.0] (2020-11-13)
-=======================================
+# Changelog for ownCloud Desktop Client [2.7.0] (2020-11-13)
+
The following sections list the changes in ownCloud Desktop Client 2.7.0 relevant to
ownCloud admins and users.
[2.7.0]: https://github.com/owncloud/client/compare/v2.6.3...v2.7.0
-Summary
--------
+## Summary
* Bugfix - Legacy config migration reverted files to online only: [#7779](https://github.com/owncloud/client/issues/7779)
* Bugfix - Some check boxes in the sharing dialog are disabled: [#7877](https://github.com/owncloud/client/issues/7877)
@@ -1097,20 +3715,22 @@ Summary
* Bugfix - Check whether the local folder supports the virtual file system: [#8131](https://github.com/owncloud/client/issues/8131)
* Bugfix - "All Files removed" dialog no longer blocks the application: [#8170](https://github.com/owncloud/client/issues/8170)
* Bugfix - We fixed the permissions check for local folders on NTFS: [#8187](https://github.com/owncloud/client/issues/8187)
+* Change - Add support for the TUS resume-able upload protocol: [#19](https://github.com/owncloud/product/issues/19)
* Change - Don't hardcode a plugin location: [#3839](https://github.com/owncloud/enterprise/issues/3839)
* Change - Detect the Windows 10 theme for the system tray: [#7356](https://github.com/owncloud/client/issues/7356)
+* Change - Support for OpenID Connect: [#7509](https://github.com/owncloud/client/pull/7509)
* Change - When manually adding a folder sync connection, don't display 404 errors: [#7724](https://github.com/owncloud/client/issues/7724)
* Change - Enabling native VFS on Windows create two shortcuts in the Explorer: [#7748](https://github.com/owncloud/client/issues/7748)
* Change - Redesign the About dialog: [#7749](https://github.com/owncloud/client/issues/7749)
* Change - The password dialog is hidden behind a window: [#7833](https://github.com/owncloud/client/issues/7833)
-* Change - The client uploads chunks even though the server repports lack of support: [#7862](https://github.com/owncloud/client/issues/7862)
+* Change - The client uploads chunks even though the server reports lack of support: [#7862](https://github.com/owncloud/client/issues/7862)
* Change - Mac does not display a dock entry: [#7868](https://github.com/owncloud/client/issues/7868)
* Change - Option to log HTTP requests and responses: [#7873](https://github.com/owncloud/client/issues/7873)
* Change - Add button for `Log Settings` to advanced settings: [#7881](https://github.com/owncloud/client/issues/7881)
-* Change - The layout of serveral ui elements is broken: [#7920](https://github.com/owncloud/client/issues/7920)
+* Change - The layout of several ui elements is broken: [#7920](https://github.com/owncloud/client/issues/7920)
* Change - The client hides the window during the authentication process: [#7922](https://github.com/owncloud/client/pull/7922)
* Change - The settings ui shows a prompt for a few seconds: [#7925](https://github.com/owncloud/client/pull/7925)
-* Change - Reorgenize Settings: [#7962](https://github.com/owncloud/client/pull/7962)
+* Change - Reorganize Settings: [#7962](https://github.com/owncloud/client/pull/7962)
* Change - Use the checksum type specified by the server by default: [#7989](https://github.com/owncloud/client/pull/7989)
* Change - Move "Choose what to sync" to sync everything settings: [#8018](https://github.com/owncloud/client/pull/8018)
* Change - Enable Windows Virtual files by default: [#8019](https://github.com/owncloud/client/pull/8019)
@@ -1121,36 +3741,34 @@ Summary
* Change - Account display name `servername (username)` to `username@servername`: [#8104](https://github.com/owncloud/client/issues/8104)
* Change - Remove update channels from the ownCloud client: [#8127](https://github.com/owncloud/client/issues/8127)
* Change - Display the users avatar in the activity list: [#8169](https://github.com/owncloud/client/issues/8169)
-* Change - Support for OpenID Connect: [#7509](https://github.com/owncloud/client/pull/7509)
-* Change - Add support for the TUS resumeable upload protocol: [#19](https://github.com/owncloud/product/issues/19)
-Details
--------
+## Details
* Bugfix - Legacy config migration reverted files to online only: [#7779](https://github.com/owncloud/client/issues/7779)
- We fixed a legacy config migration which reverted all files to online only on every start.
+ We fixed a legacy config migration which reverted all files to online only on
+ every start.
https://github.com/owncloud/client/issues/7779
* Bugfix - Some check boxes in the sharing dialog are disabled: [#7877](https://github.com/owncloud/client/issues/7877)
- We fixed a bug where the servers default sharing permissions where used as limiting factor
- instead of a defualt selection.
+ We fixed a bug where the servers default sharing permissions where used as
+ limiting factor instead of a default selection.
https://github.com/owncloud/client/issues/7877
* Bugfix - Selective sync dialog is displayed when virtual files are enabled: [#7976](https://github.com/owncloud/client/issues/7976)
- We hide that dialog now so that it is no longer possible to remove files from synchronisation
- when virtual files are enabled.
+ We hide that dialog now so that it is no longer possible to remove files from
+ synchronisation when virtual files are enabled.
https://github.com/owncloud/client/issues/7976
* Bugfix - Fix support of adler32 checksums with Windows virtual files support: [#7999](https://github.com/owncloud/client/issues/7999)
- The validation device reported a size of 0 and thus the computations of the checksums was
- aborted.
+ The validation device reported a size of 0 and thus the computations of the
+ checksums was aborted.
https://github.com/owncloud/client/issues/7999
https://github.com/owncloud/client/pull/8015
@@ -1169,28 +3787,29 @@ Details
* Bugfix - The back button on the advanced wizard page no longer gets enabled: [#8051](https://github.com/owncloud/client/issues/8051)
- We fixed a bug where the back button in the advanced wizard page get re enabled.
+ We fixed a bug where the back button in the advanced wizard page get re-enabled.
https://github.com/owncloud/client/issues/8051
* Bugfix - Ensure permissions for newly added files are available: [#8066](https://github.com/owncloud/client/issues/8066)
- We fixed a bug where newly added files had no server permissions set. Under certain conditions
- that was leading to an undefined behaviour.
+ We fixed a bug where newly added files had no server permissions set. Under
+ certain conditions that was leading to an undefined behaviour.
https://github.com/owncloud/client/issues/8066
https://github.com/owncloud/client/issues/7967
* Bugfix - Remove notifications when the account they belong to was removed: [#8085](https://github.com/owncloud/client/issues/8085)
- We fixed a bug where notifications where still displayed after an account was removed.
+ We fixed a bug where notifications where still displayed after an account was
+ removed.
https://github.com/owncloud/client/issues/8085
* Bugfix - Check whether the local folder supports the virtual file system: [#8131](https://github.com/owncloud/client/issues/8131)
- The Windows virtual file system requires NTFS, we now ensure that the folder is using NTFS
- before we continue.
+ The Windows virtual file system requires NTFS, we now ensure that the folder is
+ using NTFS before we continue.
https://github.com/owncloud/client/issues/8131
@@ -1202,15 +3821,23 @@ Details
* Bugfix - We fixed the permissions check for local folders on NTFS: [#8187](https://github.com/owncloud/client/issues/8187)
- We fixed a bug where the check whether the local folder is writeable returned a wrong result.
- This could cause a crash with the virtual file system plugin.
+ We fixed a bug where the check whether the local folder is writeable returned a
+ wrong result. This could cause a crash with the virtual file system plugin.
https://github.com/owncloud/client/issues/8187
+* Change - Add support for the TUS resume-able upload protocol: [#19](https://github.com/owncloud/product/issues/19)
+
+ With the support of the TUS protocol we are now able to easily and reliably
+ upload files to oCIS.
+
+ https://github.com/owncloud/product/issues/19
+
* Change - Don't hardcode a plugin location: [#3839](https://github.com/owncloud/enterprise/issues/3839)
- We no longer hardcode a plugin location only available on the build system. If a setup uses a non
- default plugin location, please consider setting the environment variable QT_PLUGIN_PATH.
+ We no longer hardcode a plugin location only available on the build system. If a
+ setup uses a non default plugin location, please consider setting the
+ environment variable QT_PLUGIN_PATH.
https://github.com/owncloud/enterprise/issues/3839
@@ -1220,10 +3847,30 @@ Details
https://github.com/owncloud/client/issues/7356
+* Change - Support for OpenID Connect: [#7509](https://github.com/owncloud/client/pull/7509)
+
+ The ownCloud desktop client now supports OpenID Connect. OpenID Connect 1.0 is a
+ simple identity layer on top of the OAuth 2.0 protocol. It allows clients to
+ verify the identity of the end-user based on the authentication performed by an
+ authorization server, as well as to obtain basic profile information about the
+ end-user in an interoperable and REST-like manner.
+
+ OpenID Connect allows clients of all types, including web-based, mobile, and
+ JavaScript clients, to request and receive information about authenticated
+ sessions and end-users. The specification suite is extensible, allowing
+ participants to use optional features such as encryption of identity data,
+ discovery of OpenID providers, and session management, when it makes sense for
+ them.
+
+ See http://openid.net/connect/faq/ for a set of answers to frequently asked
+ questions about OpenID Connect.
+
+ https://github.com/owncloud/client/pull/7509
+
* Change - When manually adding a folder sync connection, don't display 404 errors: [#7724](https://github.com/owncloud/client/issues/7724)
- We no longer display 404 errors when exploring the folders. A user might not have access to the
- full file tree on the server.
+ We no longer display 404 errors when exploring the folders. A user might not
+ have access to the full file tree on the server.
https://github.com/owncloud/client/issues/7724
@@ -1235,8 +3882,8 @@ Details
* Change - Redesign the About dialog: [#7749](https://github.com/owncloud/client/issues/7749)
- We redesigned the way the About information is displayed and unified it with the "--version"
- switch.
+ We redesigned the way the About information is displayed and unified it with the
+ "--version" switch.
https://github.com/owncloud/client/issues/7749
https://github.com/owncloud/enterprise/issues/3787
@@ -1248,15 +3895,16 @@ Details
https://github.com/owncloud/client/issues/7833
-* Change - The client uploads chunks even though the server repports lack of support: [#7862](https://github.com/owncloud/client/issues/7862)
+* Change - The client uploads chunks even though the server reports lack of support: [#7862](https://github.com/owncloud/client/issues/7862)
- We now correctly handle the bigfilechunking capability
+ We now correctly handle the `bigfilechunking` capability
https://github.com/owncloud/client/issues/7862
* Change - Mac does not display a dock entry: [#7868](https://github.com/owncloud/client/issues/7868)
- We changed the behaviour of the client to display a dock entry when we have a window open.
+ We changed the behaviour of the client to display a dock entry when we have a
+ window open.
https://github.com/owncloud/client/issues/7868
@@ -1272,7 +3920,7 @@ Details
https://github.com/owncloud/client/issues/7881
-* Change - The layout of serveral ui elements is broken: [#7920](https://github.com/owncloud/client/issues/7920)
+* Change - The layout of several ui elements is broken: [#7920](https://github.com/owncloud/client/issues/7920)
We replace an old layout mechanism with a more advanced one.
@@ -1281,8 +3929,8 @@ Details
* Change - The client hides the window during the authentication process: [#7922](https://github.com/owncloud/client/pull/7922)
- We changed the confusing behavioir and now minimize ownCloud instead. This ensures that the
- window stays accessible.
+ We changed the confusing behaviour and now minimize ownCloud instead. This
+ ensures that the window stays accessible.
https://github.com/owncloud/client/pull/7922
@@ -1292,7 +3940,7 @@ Details
https://github.com/owncloud/client/pull/7925
-* Change - Reorgenize Settings: [#7962](https://github.com/owncloud/client/pull/7962)
+* Change - Reorganize Settings: [#7962](https://github.com/owncloud/client/pull/7962)
We rename "General" to "Settings" and move the "Network" into "Settings"
@@ -1300,15 +3948,17 @@ Details
* Change - Use the checksum type specified by the server by default: [#7989](https://github.com/owncloud/client/pull/7989)
- The default type for computation of the checksum was sha1 independent of the type specified by
- the server. Under certain conditions that caused multiple computations of the checksum.
+ The default type for computation of the checksum was sha1 independent of the
+ type specified by the server. Under certain conditions that caused multiple
+ computations of the checksum.
https://github.com/owncloud/client/pull/7989
* Change - Move "Choose what to sync" to sync everything settings: [#8018](https://github.com/owncloud/client/pull/8018)
- While selective sync is a feature only available when everything is synced, the the option had
- its own radio button. We now moved the button to the other sync everything related settings.
+ While selective sync is a feature only available when everything is synced, the
+ option had its own radio button. We now moved the button to the other sync
+ everything related settings.
https://github.com/owncloud/client/pull/8018
@@ -1321,28 +3971,30 @@ Details
* Change - Move sync hidden files to advanced settings: [#8020](https://github.com/owncloud/client/issues/8020)
- We moved the option to sync hidden files from the "Edit ignored Files" dialog into the advanced
- settings.
+ We moved the option to sync hidden files from the "Edit ignored Files" dialog
+ into the advanced settings.
https://github.com/owncloud/client/issues/8020
* Change - Replace the old icons with a unified look: [#8038](https://github.com/owncloud/client/pull/8038)
- We replaced the different styles and colors of the icons with a new unified look.
+ We replaced the different styles and colors of the icons with a new unified
+ look.
https://github.com/owncloud/client/pull/8038
* Change - Sharing dialog is now always on top of the settings dialog: [#8050](https://github.com/owncloud/client/pull/8050)
- The sharing dialog is now a sub dialog, so it will be easier to continue sharing a folder.
+ The sharing dialog is now a sub dialog, so it will be easier to continue sharing
+ a folder.
https://github.com/owncloud/client/pull/8050
* Change - Remove the branding option `wizardSelectiveSyncDefaultNothing`: [#8064](https://github.com/owncloud/client/pull/8064)
- The branding option was removed as believe that it did not provide a good user experience. We
- recommend `newBigFolderSizeLimit` together with `wizardHideFolderSizeLimitCheckbox`
- as a replacement.
+ The branding option was removed as believe that it did not provide a good user
+ experience. We recommend `newBigFolderSizeLimit` together with
+ `wizardHideFolderSizeLimitCheckbox` as a replacement.
https://github.com/owncloud/client/pull/8064
@@ -1354,11 +4006,12 @@ Details
* Change - Remove update channels from the ownCloud client: [#8127](https://github.com/owncloud/client/issues/8127)
- To ensure a maximum of stability user should not replace their productive client with a preview
- build. For that exact reason we offer tespilotcloud clients, they can be installed in parallel
- and updated via the beta channel.
+ To ensure a maximum of stability user should not replace their productive client
+ with a preview build. For that exact reason we offer testpilotcloud clients,
+ they can be installed in parallel and updated via the beta channel.
- If a user is more adventures than the average a manual install of a preview is always possible.
+ If a user is more adventurous than the average a manual installation of a
+ preview is always possible.
https://github.com/owncloud/client/issues/8127
@@ -1368,40 +4021,14 @@ Details
https://github.com/owncloud/client/issues/8169
-* Change - Support for OpenID Connect: [#7509](https://github.com/owncloud/client/pull/7509)
-
- The ownCloud desktop client now supports OpenID Connect. OpenID Connect 1.0 is a simple
- identity layer on top of the OAuth 2.0 protocol. It allows clients to verify the identity of the
- end-user based on the authentication performed by an authorization server, as well as to
- obtain basic profile information about the end-user in an interoperable and REST-like
- manner.
-
- OpenID Connect allows clients of all types, including web-based, mobile, and JavaScript
- clients, to request and receive information about authenticated sessions and end-users. The
- specification suite is extensible, allowing participants to use optional features such as
- encryption of identity data, discovery of OpenID providers, and session management, when it
- makes sense for them.
+# Changelog for ownCloud Desktop Client [2.6.3] (2020-06-10)
- See http://openid.net/connect/faq/ for a set of answers to frequently asked questions about
- OpenID Connect.
-
- https://github.com/owncloud/client/pull/7509
-
-* Change - Add support for the TUS resumeable upload protocol: [#19](https://github.com/owncloud/product/issues/19)
-
- With the support of the TUS protocol we are now able to easily and reliably upload files to ocis.
-
- https://github.com/owncloud/product/issues/19
-
-Changelog for ownCloud Desktop Client [2.6.3] (2020-06-10)
-=======================================
The following sections list the changes in ownCloud Desktop Client 2.6.3 relevant to
ownCloud admins and users.
[2.6.3]: https://github.com/owncloud/client/compare/v2.6.2...v2.6.3
-Summary
--------
+## Summary
* Bugfix - Client sometimes does not show up when started by a user: [#7018](https://github.com/owncloud/client/issues/7018)
* Bugfix - Fix several wrong colored icons in dark mode: [#7043](https://github.com/owncloud/client/issues/7043)
@@ -1415,7 +4042,7 @@ Summary
* Bugfix - Add Folder Sync Connection sometimes does not warn: [#7741](https://github.com/owncloud/client/issues/7741)
* Bugfix - Resize the buttons in the settings view dynamically: [#7744](https://github.com/owncloud/client/issues/7744)
* Bugfix - Fix status icon after move errors: [#7759](https://github.com/owncloud/client/issues/7759)
-* Bugfix - Fixed a potential crash on cancelation of discovery jobs: [#7760](https://github.com/owncloud/client/pull/7760)
+* Bugfix - Fixed a potential crash on cancellation of discovery jobs: [#7760](https://github.com/owncloud/client/pull/7760)
* Bugfix - Fix a potential crash on Windows VFS: [#7761](https://github.com/owncloud/client/issues/7761)
* Bugfix - Fixed OAuth2 login of user with `+`: [#7762](https://github.com/owncloud/client/issues/7762)
* Bugfix - On Windows the share dialog does not open as the top most window: [#7774](https://github.com/owncloud/client/issues/7774)
@@ -1426,38 +4053,40 @@ Summary
* Change - Restart the client after an update: [#3922](https://github.com/owncloud/enterprise/issues/3922)
* Change - Wizard is hidden behind the browser: [#7856](https://github.com/owncloud/client/issues/7856)
-Details
--------
+## Details
* Bugfix - Client sometimes does not show up when started by a user: [#7018](https://github.com/owncloud/client/issues/7018)
- We fixed a bug where a client sometimes does not show up when a user request a start.
+ We fixed a bug where a client sometimes does not show up when a user request a
+ start.
https://github.com/owncloud/client/issues/7018
* Bugfix - Fix several wrong colored icons in dark mode: [#7043](https://github.com/owncloud/client/issues/7043)
- We fixed multiple issues where monochrome icons where not converted to match the current
- theme.
+ We fixed multiple issues where monochrome icons where not converted to match the
+ current theme.
https://github.com/owncloud/client/issues/7043
* Bugfix - Fixed bug in public link with password required: [#7247](https://github.com/owncloud/client/issues/7247)
- In the sharing dialog, "password required" capabilities lead to incorrect behaviour
+ In the sharing dialog, "password required" capabilities lead to incorrect
+ behaviour
https://github.com/owncloud/client/issues/7247
* Bugfix - Fixed editing public link expiration date: [#7313](https://github.com/owncloud/client/issues/7313)
- In the sharing dialog, allow editing public link expiration date when it is enforced
+ In the sharing dialog, allow editing public link expiration date when it is
+ enforced
https://github.com/owncloud/client/issues/7313
* Bugfix - Expand file tree also when no folders are synced: [#7336](https://github.com/owncloud/client/issues/7336)
- We have fixed the behaviour of the folder Widget, when a account was added and none of its folders
- was selected to be synced, the tree was not expanded.
+ We have fixed the behaviour of the folder Widget, when an account was added and
+ none of its folders was selected to be synced, the tree was not expanded.
https://github.com/owncloud/client/issues/7336
@@ -1469,15 +4098,17 @@ Details
* Bugfix - Fixed crash in the setup wizard: [#7709](https://github.com/owncloud/client/issues/7709)
- Fixe crash if setup wizard is closed while the virtual file system dialog is open
+ Fixe crash if setup wizard is closed while the virtual file system dialog is
+ open
https://github.com/owncloud/client/issues/7709
https://github.com/owncloud/client/issues/7711
* Bugfix - Fixed bug in the Virtual File warning dialog: [#7710](https://github.com/owncloud/client/issues/7710)
- Don't show virtual file system warning again when the radio button is triggered a second time.
- Declining the dialog had no effect as the radio button was already checked
+ Don't show virtual file system warning again when the radio button is triggered
+ a second time. Declining the dialog had no effect as the radio button was
+ already checked
https://github.com/owncloud/client/issues/7710
https://github.com/owncloud/client/issues/7712
@@ -1488,15 +4119,15 @@ Details
* Bugfix - Add Folder Sync Connection sometimes does not warn: [#7741](https://github.com/owncloud/client/issues/7741)
- Warn when adding a folder sync connection of a remote folder for which a subdir is already
- synchronized
+ Warn when adding a folder sync connection of a remote folder for which a subdir
+ is already synchronized
https://github.com/owncloud/client/issues/7741
* Bugfix - Resize the buttons in the settings view dynamically: [#7744](https://github.com/owncloud/client/issues/7744)
- Since Qt 5.12 the button text gets elided automatically if the button text would exceed the
- button width.
+ Since Qt 5.12 the button text gets elided automatically if the button text would
+ exceed the button width.
https://github.com/owncloud/client/issues/7744
@@ -1506,27 +4137,27 @@ Details
https://github.com/owncloud/client/issues/7759
-* Bugfix - Fixed a potential crash on cancelation of discovery jobs: [#7760](https://github.com/owncloud/client/pull/7760)
+* Bugfix - Fixed a potential crash on cancellation of discovery jobs: [#7760](https://github.com/owncloud/client/pull/7760)
https://github.com/owncloud/client/pull/7760
* Bugfix - Fix a potential crash on Windows VFS: [#7761](https://github.com/owncloud/client/issues/7761)
- We've fixed a potential crash where marking a file as "Always keep on this device" caused the
- client to crash.
+ We've fixed a potential crash where marking a file as "Always keep on this
+ device" caused the client to crash.
https://github.com/owncloud/client/issues/7761
* Bugfix - Fixed OAuth2 login of user with `+`: [#7762](https://github.com/owncloud/client/issues/7762)
- Make sure that the `+` in the user name is properly encoded in the URL opened by the browser when
- doing an OAuth2 authentication.
+ Make sure that the `+` in the user name is properly encoded in the URL opened by
+ the browser when doing an OAuth2 authentication.
https://github.com/owncloud/client/issues/7762
* Bugfix - On Windows the share dialog does not open as the top most window: [#7774](https://github.com/owncloud/client/issues/7774)
- We now ensure that the our dialogs are correctly raised.
+ We now ensure that our dialogs are correctly raised.
https://github.com/owncloud/client/issues/7774
@@ -1538,8 +4169,8 @@ Details
* Bugfix - Don't override cookies with old values: [#7831](https://github.com/owncloud/client/pull/7831)
- We fixed a bug where a client somteimes overrode the content of the cookie jar with outdated or
- corrupted values
+ We fixed a bug where a client sometimes overrode the content of the cookie jar
+ with outdated or corrupted values
https://github.com/owncloud/client/pull/7831
@@ -1557,7 +4188,8 @@ Details
* Change - Restart the client after an update: [#3922](https://github.com/owncloud/enterprise/issues/3922)
- We now start the client after an update, if the client was running before the update.
+ We now start the client after an update, if the client was running before the
+ update.
https://github.com/owncloud/enterprise/issues/3922
@@ -1567,27 +4199,24 @@ Details
https://github.com/owncloud/client/issues/7856
-Changelog for ownCloud Desktop Client [2.6.2] (2020-02-21)
-=======================================
+# Changelog for ownCloud Desktop Client [2.6.2] (2020-02-21)
+
The following sections list the changes in ownCloud Desktop Client 2.6.2 relevant to
ownCloud admins and users.
[2.6.2]: https://github.com/owncloud/client/compare/v2.6.1...v2.6.2
-Summary
--------
+## Summary
* Change - Add branding option to disable experimental features: [#7755](https://github.com/owncloud/client/issues/7755)
-Details
--------
+## Details
* Change - Add branding option to disable experimental features: [#7755](https://github.com/owncloud/client/issues/7755)
https://github.com/owncloud/client/issues/7755
-ChangeLog
-=========
+# Changelog for 2.6.1 versions and below
version 2.6.1 (2020-01-17)
(last updated on de0d330c002436454f3fe4929bd707e5f0425949)
@@ -1682,7 +4311,7 @@ Some small changes and bug fixes:
* GUI: Improve help text in ignore editor (#7162)
* GUI: Show restoration items in protocol
* Sharing: Fix issues with enforced passwords and expiry (#7246, #7245)
-* Sharing: Fix resharing an item in a share with limited permissions (#7275)
+* Sharing: Fix re-sharing an item in a share with limited permissions (#7275)
* Sharing: Use the default expiration date even when not enforced (#7256)
* Sharing: When sharing from context menu, show dialog if share creation fails (#7286)
* Sharing: Always show at least readonly permissions (#7429)
@@ -1695,7 +4324,7 @@ Some small changes and bug fixes:
* Updater: Set correct state on network error (#3933)
* Updater: Provide more useful options on update failure (#7217)
* Updater: Improve logging (#3475, #7388)
-* Updater: Fix Version numer not shown in the user visible string (#7288)
+* Updater: Fix Version number not shown in the user visible string (#7288)
* DB: Database path for new folders now starts with ".sync_", avoiding the "._" (#5904)
* File hashes: Add support for SHA256 and SHA3
* Cmd: Respect chunk sizing environment variables (#7078)
@@ -1705,7 +4334,7 @@ Some small changes and bug fixes:
* Log: Print critical and fatal messages to stderr
* Doc: Migrate the documentation to Antora (#6785)
* Doc: Update Windows build instructions
-* Doc: Add explanation of how to manually change server url (#6579)
+* Doc: Add explanation of how to manually change server URL (#6579)
* Doc: List more environment variables
* Doc: List more config file options (owncloud/docs#1365)
* Build: Fix KDEInstallDirs deprecation warnings (#6922)
@@ -1785,7 +4414,7 @@ version 2.5.1 (2018-11-09)
* macOS: Improve macdeployqt.py
* Discovery: Include path in error message (#6826)
* Database: Allow downgrade from 2.6
-* Migration from 2.4: fallback to move file by file if directory move failled (#6807)
+* Migration from 2.4: fallback to move file by file if directory move failed (#6807)
* owncloudcmd: Read server version and dav user id from the server (#6830)
version 2.5.0 (2018-09-18)
@@ -1850,12 +4479,12 @@ version 2.5.0 (2018-09-18)
* Sync: When detecting a local move, keep the local mtime (#6629)
* Sync: Better error handling for local directory parsing (#6610)
* Sync: Error if properties are missing (#6317)
-* Sync: Recover when the PUT reply (or chunkin's MOVE) is lost (#5106)
+* Sync: Recover when the PUT reply (or chunking MOVE) is lost (#5106)
* Sync: Do not abort a sync if the server closes the connection (#6516)
* Sync: Increase the timeout for the last MOVE/PUT for huge files (#6527)
* Sync: Fix renames making hierarchy inversion (#6694)
* Sync: RemotePermissions: Fix empty vs null (#4608)
-* Sync: Fix the "direction" of the "all file delted" message when the server is reset (#6317)
+* Sync: Fix the "direction" of the "all file deleted" message when the server is reset (#6317)
* Data-Fingerprint: Fix backup detection when fingerprint is empty
* propagateuploadv1: Fixed an assert with ownCloud 5
* Download: Use the from the reply in the error message (#6459, #6459)
@@ -2058,9 +4687,9 @@ version 2.3.3 (2017-08-29)
* Overlay Icons: Fix potential hangs on Windows
* SyncJournalDB: Don't use ._ as filename pattern if that does not work because of SMB storage settings (#5844)
* SyncJournalDB: Log reason for sqlite3 opening errors
-* Notifications: Proapgate "Dismiss" button action to server (#5922)
+* Notifications: Propagate "Dismiss" button action to server (#5922)
* Switch Linux build also to Qt 5.6.2 (#5470)
-* Stopped maintaining Qt 4 buildability
+* Stopped maintaining Qt 4 build ability
version 2.3.2 (2017-05-08)
* Fix more crashes (thanks to everyone submitting to our crash reporter!)
@@ -2082,21 +4711,21 @@ version 2.3.0 (2017-03-03)
* Allow to not sync the server's external storages by default
* Switch Windows and OS X build to Qt 5.6.2
* Switch to new ownCloud server WebDAV endpoint
-* Chunking NG: New file upload chunking algorithmn for ownCloud server 9.2
+* Chunking NG: New file upload chunking algorithm for ownCloud server 9.2
* Allow to sync a folder to multiple different servers (Filename change from .csync_journal.db to _sync_$HASH.db)
* Conflicts: Use the local mtime for the conflict file name (#5273)
* "Sync now" menu item
* SSL Client certificate support improved (Show UI, Store keys in keychain)
* Propagator: Upload more small files in parallel
* Sync Engine: Read data-fingerprint property to detect backups (#2325)
-* GUI: Show link to ceate an app password/token for syncing
+* GUI: Show link to create an app password/token for syncing
* Share dialog: Add 'Mail link' button
* Caja file manager plugin
* Make "backup detected" message to not trigger in wrong cases
* SyncEngine: Fix renaming of folder when file are changed (#5192)
* Fix reconnect bug if status.php intermittently returns wrong data (#5188)
* Improve sync scheduling (#5317)
-* Overlay icons: Improvements in correctnes
+* Overlay icons: Improvements in correctness
* Tray menu: Only update on demand to fix Linux desktop integration glitches
* Progress: Better time/bandwidth estimations
* Network: Follow certain HTTP redirects (#2791)
@@ -2170,7 +4799,7 @@ version 2.2.0 (release 2016-05-12)
* Improved netrc parser (#4691)
* Improved user notifications about ignored files and conflicts (#4761, #3222)
* Add warnings for old server versions (#4523)
- * Enable tranportation checksums if the server supports based on server capabilities (#3735)
+ * Enable transportation checksums if the server supports based on server capabilities (#3735)
* Default Chunk-size changed to 10MB (#4354)
* Documentation Improvements, ie. about overlay icons
@@ -2181,7 +4810,7 @@ version 2.2.0 (release 2016-05-12)
version 2.1.1 (release 2016-02-10)
* UI improvements for HiDPI screens, error messages, RTL languages
- * Fix occurences of "Connection Closed" when a new unauthenticated TCP socket is used
+ * Fix occurrences of "Connection Closed" when a new unauthenticated TCP socket is used
* Fix undeliberate WiFi scanning done by Qt Network classes
* Several fixes/improvements to the sharing dialog
* Several fixes/improvements to the server activity tab
@@ -2212,12 +4841,12 @@ version 2.1 (release 2015-12-03)
* Improved reconnecting after network change/disconnect (#4167 #3969 ...)
* Improved performance in Windows file system discovery
* Removed libneon-based propagator. As a consequence, The client can no
- longer provide bandwith limiting on Linux-distributions where it is
+ longer provide bandwidth limiting on Linux-distributions where it is
using Qt < 5.4
* Performance improvements in the logging functions
* Ensured that local disk space problems are handled gracefully (#2939)
* Improved handling of checksums: transport validation, db (#3735)
- * For *eml-files don't reupload if size and checksum are unchanged (#3235)
+ * For *eml-files don't re-upload if size and checksum are unchanged (#3235)
* Ensured 403 reply code is handled properly (File Firewall) (#3490)
* Reduced number of PROPFIND requests to server(#3964)
* GUI: Added Account toolbox widget to keep account actions (#4139)
@@ -2225,14 +4854,14 @@ version 2.1 (release 2015-12-03)
* FolderMan: Fixed infinite wait on pause (#4093)
* Renamed env variables to include unit (#2939)
* FolderStatusModel: Attempt to detect removed undecided files (#3612)
- * SyncEngine: Don't whipe the white list if the sync was aborted (#4018)
+ * SyncEngine: Don't wipe the white list if the sync was aborted (#4018)
* Quota: Handle special negative value for the quota (#3940)
* State app name in update notification (#4020)
* PropagateUpload: Fixed double-emission of finished (#3844)
* GUI: Ensured folder names which are excluded from sync can be clicked
* Shell Integration: Dolphin support, requires KF 5.16 and KDE Application 15.12
* FolderStatusModel: Ensured reset also if a folder was renamed (#4011)
- * GUI: Fixed accessiblity of remaing items in full settings toolbar (#3795)
+ * GUI: Fixed accessibility of remaining items in full settings toolbar (#3795)
* Introduced the term "folder sync connection" in more places (#3757)
* AccountSettings: Don't disable pause when offline (#4010)
* Fixed handling of hidden files (#3980)
@@ -2245,7 +4874,7 @@ version 2.1 (release 2015-12-03)
* owncloudcmd: Don't do a check that file are older than 2s (#4160)
* Fixed getting size for selective sync (#3986)
* Re-added close button in the settings window (#3713)
- * Added abililty to handle storage limitations gracefully (#3736)
+ * Added ability to handle storage limitations gracefully (#3736)
* Organized patches to our base Qt version into admin/qt/patches
* Plus: A lot of unmentioned improvements and fixes
@@ -2344,7 +4973,7 @@ version 1.8.2 (release 2015-06-08)
* Win32: Allow concurrent OEM (un-)installers (#3272)
* Win32: Make Setup/Update Mutex theme-unique (#3272)
* HTTP: Add the branding name to the UserAgent string
- * ConnectonValidator: Always run with new credentials (#3266)
+ * ConnectionValidator: Always run with new credentials (#3266)
* Recall Feature: Admins can trigger an upload of a file from
client to server again (#3246)
* Propagator: Add 'Content-Length: 0' header to MKCOL request (#3256)
@@ -2353,7 +4982,7 @@ version 1.8.2 (release 2015-06-08)
* Fix opening external links for some labels (#3135)
* AccountState: Run only a single validator, allow error message
overriding (#3236, #3153)
- * SyncJournalDB: Minor fixes and simplificatons
+ * SyncJournalDB: Minor fixes and simplifications
* SyncEngine: Force re-read of folder Etags for upgrades from
1.8.0 and 1.8.1
* Propagator: Limit length of temporary file name (#2789)
@@ -2417,7 +5046,7 @@ version 1.8.1 (release 2015-05-07)
* AccountWizard: Fix auth error handling. #3155
* Documentation fixes
* Infrastructure/build fixes
- * Win32/OS X: Apply patch from OpenSSL to handle oudated intermediates gracefully #3087
+ * Win32/OS X: Apply patch from OpenSSL to handle outdated intermediates gracefully #3087
version 1.8.0 (release 2015-03-17)
* Mac OS: HIDPI support
@@ -2427,7 +5056,7 @@ version 1.8.0 (release 2015-03-17)
* Enhanced usage of parallel HTTP requests for ownCloud 8 servers
* Renamed github repository from mirall to client.
* Mac OS: Use native notification support
- * Selective Sync: allow to enforce selective sync in brandings.
+ * Selective Sync: allow to enforce selective sync in branding.
* Added ability to build on Windows utilizing MingGW
* SQLite database fixes if running on FAT filesystems
* Improved detection of changing files to upload from local
@@ -2449,12 +5078,12 @@ version 1.7.1 (release 2014-12-18)
* Documentation fixes and updates
* Nautilus Python plugin fixed for Python 3
* GUI wording fixes plus improved log messages
- * Fix hidning of the database files in the sync directories
+ * Fix hiding of the database files in the sync directories
* Compare http download size with the header value to avoid broken
downloads, bug #2528
* Avoid initial ETag fetch job at startup, which is not needed.
* Add chunk size http header to PUT requests
- * Fixed deteteCookie method of our CookieJar, fix for Shibboleth
+ * Fixed detectCookie method of our CookieJar, fix for Shibboleth
* Added fallback for distros where XDG_RUNTIME_DIR is undefined
* Fix the setup wizard, bug #1989, #2264
* Fix scheduling of ETag check jobs, bug #2553
@@ -2535,7 +5164,7 @@ version 1.6.2 (release 2014-07-28 )
* Fix data corruption while trying to resume and the server does
not support it.
* HTTP Credentials: Read password from legacy place if not found.
- * Shibboleth: Fix the waiting curser that would not disapear (#1915)
+ * Shibboleth: Fix the waiting cursor that would not disappear (#1915)
* Limit memory usage to avoid mem wasting and crashes
* Propagator: Fix crash when logging out during upload (#1957)
* Propagator_qnam: Fix signal slot connection (#1963)
@@ -2566,14 +5195,14 @@ version 1.6.1 (release 2014-06-26 )
version 1.6.0 (release 2014-05-30 )
* Minor GUI improvements
* Qt5 compile issues fixed
- * Ignore sync log file in filewatcher
+ * Ignore sync log file in file-watcher
* Install libocsync to private library dir and use rpath to localize
* Fix reconnect after server disconnect
* Fix "unknown action" display in Activity window
* Fix memory leaks
* Respect XDG_CONFIG_HOME environment var
* Handle empty fileids in the journal correctly
- * Add abilility to compile libowncloudsync without GUI dependendy
+ * Add ability to compile libowncloudsync without GUI dependency
* Fix SSL error with previously-expired CAs on Windows
* Fix incorrect folder pause state after start
* Fix a couple of actual potential crashes
@@ -2620,7 +5249,7 @@ version 1.5.2 (release 2014-02-26 )
* Fix online state handling (#1441, #1459)
* Fix potential crash in c_iconv on Mac OS
* Fix certificate chain display in SSLButton
- * Fix sporadicly appearing multiple auth prompts on sign-in
+ * Fix sporadically appearing multiple auth prompts on sign-in
* Show correct state icon in Account Settings right away
* Re-fetch content that gets deleted from read only shared directories
* Do not store the password in the config file, erase existing ones (#1469)
@@ -2673,7 +5302,7 @@ version 1.5.0 (release 2013-12-12 ), csync 0.91.4 required
* Ask for password if missing
* Introduce activity view
* Introduce black list for files which could not be synced
- * Enabling accessbility by shipping accessibility enables on OS X (#736)
+ * Enabling accessibility by shipping accessibility enables on OS X (#736)
* Toggle Settings window when clicking on systray icon on Win and KDE (#896)
* FolderWizard: Sanitize error detection (#1201)
* Set proper enable state of blacklist button after the dialog was opened
@@ -2705,7 +5334,7 @@ version 1.4.2 (release 2013-10-18 ), csync 0.90.4 required
* Fix high CPU load (#1073)
* Reconnect if network is unavailable after startup (#1080)
* Ensure paused folder stays paused when syncing with more than one folder (#1083)
- * Don't show desktop notification when the user doesn't want to (#1093)
+ * Don't show desktop notification when the user does not want to (#1093)
* System tray: Avoid quick flickering up of the ok-icon for the sync prepare state
* Progress: Do not show progress if nothing is transmitted
* Progress: Show number of deletes.
@@ -2726,10 +5355,10 @@ version 1.4.1 (release 2013-09-24 ), csync 0.90.1 required
* Fixed various folder wizard issues, bug #992
* Made "Sync started" message optional, fixes bug #934
* Fixed shutdown, avoid crashed config on win32, fixes bug #945
- * Pop up config wizard if no server url is configured, fixes bug #1018
+ * Pop up config wizard if no server URL is configured, fixes bug #1018
* Settings: calculate sidebar width dynamically, fixes bug #1020
* Fixed a crash if sync folders were removed, fixes bug #713
- * Do proper resync after network disconnect, fixes bug #1007
+ * Do proper re-sync after network disconnect, fixes bug #1007
* Various minor code fixes
version 1.4.0 (release 2013-09-04 ), csync 0.90.0 required
@@ -2743,15 +5372,15 @@ version 1.4.0 (release 2013-09-04 ), csync 0.90.0 required
* Introduce a sync history, persisting results across syncs
* Move ability to switch to mono icons from a switch to a Settings option
* Add "Launch on System Startup" GUI option
- * Add "Show Desktop Nofications"GUI option (enabled by default)
+ * Add "Show Desktop Notifications" GUI option (enabled by default)
top optionally disable sync notifications
* Add Help item, pointing to online reference
* Implement graphical selection of remote folders in FolderWizard
* Allow custom ignore patterns
- * Add an editor for ingore patterns
- * ALlow to flag certain ignore patterns as discardable
+ * Add an editor for ignore patterns
+ * Allow to flag certain ignore patterns as discard-able
* Ensure to ship with all valid translations
- * Progress Dialog now preserves the last syncned items across sync runs
+ * Progress Dialog now preserves the last synced items across sync runs
* Split Setup Wizard into multiple pages again
* Implement "--logfile -" to log to stdout
* Add preliminary support for Shibboleth authentication
@@ -2810,7 +5439,7 @@ version 1.2.4 (release 2013-04-11 ), csync 0.70.6 required
* [Fixes] Allow setting the configuration directory on command line
version 1.2.3 (release 2013-04-02 ), csync 0.70.5 required
- * [Fixes] Unbreak self-signed certificate handling
+ * [Fixes] Un-break self-signed certificate handling
version 1.2.2 (release 2013-04-02 ), csync 0.70.5 required
* [Fixes] Do not crash when local file tree contains symlinks
@@ -2829,7 +5458,7 @@ version 1.2.1 (release 2013-02-26 ), csync 0.70.4 required
* [Fixes] Stop sync scheduling when configuration wizard starts.
* [Fixes] Clear pending network requests when stepping back in config wizard.
* [Fixes] User password dialog asynchronous issues.
- * [Fixes] Make folderman starting and stoping the scheduling.
+ * [Fixes] Make folderman starting and stopping the scheduling.
* [Fixes] Various minor fixes and cleanups.
* [Fixes] Crash on pausing sync
* [Fixes] Stale lock file after pausing sync
@@ -2840,16 +5469,16 @@ version 1.2.1 (release 2013-02-26 ), csync 0.70.4 required
* [Platform] Simplified/fixed credential store usage and custom configs.
* [Platform] Added soname version to libowncloudsync.
* [Platform] Pull in Qt translations
- * [Gui] Make sync result popups less annoyingq
+ * [Gui] Make sync result popups less annoying
* [Gui] Fix for result popup
version 1.2.0 (release 2013-01-24 ), csync 0.70.2 required
* [GUI] New status dialog to show a detailed list of synced files.
* [GUI] New tray notifications about synced files.
* [GUI] New platform specific icon set.
- * [App] Using cross platform QtKeychain library to store credentials crypted.
+ * [App] Using cross platform QtKeychain library to store credentials encrypted.
* [App] Use cross platform notification for changes in the local file system rather than regular poll.
- * [Fixes] Improved SSL Certificate handling and SSL fixes troughout syncing.
+ * [Fixes] Improved SSL Certificate handling and SSL fixes throughout syncing.
* [Fixes] Fixed proxy authentication.
* [Fixes] Allow brackets in folder name alias.
* [Fixes] Lots of other minor fixes.
@@ -2870,13 +5499,13 @@ version 1.1.2 (release 2012-11-26 ), csync 0.60.2 required
* [Fixes] lots of other minor fixes.
* [GUI] Display error messages in status dialog.
* [GUI] GUI fixes for the connection wizard.
- * [GUI] Show username for connection in statusdialog.
+ * [GUI] Show username for connection in status-dialog.
* [GUI] Show intro wizard on new connection setup.
* [APP] Use CredentialStore to better support various credential
backends.
* [APP] Handle missing local folder more robust: Create it if
missing instead of ignoring.
- * [APP] Simplify treewalk code.
+ * [APP] Simplify tree-walk code.
* [Platform] Fix Mac building
version 1.1.1 (release 2012-10-18), csync 0.60.1 required
@@ -2921,7 +5550,7 @@ version 1.0.5 (release 2012-08-14), csync 0.50.8 required
version 1.0.4 (release 2012-08-10), csync 0.50.8 required
* [APP] ownCloud is now a single instance app, can not start twice any more.
* [APP] Proxy support
- * [APP] Handle HTTP redirection correctly, note new url.
+ * [APP] Handle HTTP redirection correctly, note new URL.
* [APP] More relaxed handling of read only directories in the sync paths.
* [APP] Started to split off a library with sync functionality, eg for KDE
* [APP] Make ownCloud Info class a singleton, more robust.
@@ -2934,7 +5563,7 @@ version 1.0.4 (release 2012-08-10), csync 0.50.8 required
Portuguese (Brazil), German, Greek, Spanish, Czech, Italian, Slovak,
French, Russian, Japanese, Swedish, Portuguese (Portugal)
all with translation rate >90%.
- * [Fixes] Loading of self signed certs into Networkmanager (#oc-843)
+ * [Fixes] Loading of self signed certs into NetworkManager (#oc-843)
* [Fixes] Win32: Handle SSL dll loading correctly.
* [Fixes] Many other small fixes and improvements.
@@ -2960,7 +5589,7 @@ version 1.0.2 (release 2012-05-18), csync 0.50.6 required
* [GUI] New icon set for ownCloud client
* [GUI] No splashscreen any more (oC Bug #498)
* [GUI] Russian translation added
- * [GUI] Added 'open ownCloud' to traymenu
+ * [GUI] Added 'open ownCloud' to tray-menu
* [GUI] "Pause" and "Resume" instead of Enable/Disable
* [Fixes] Long running syncs can be interrupted now.
* [Fixes] Dialogs comes to front on click
@@ -2985,7 +5614,7 @@ version 1.0.1 (release 2012-04-18), csync 0.50.5 required
* [Intern] Backport to Qt Version 4.6 for compat. with older distros.
* [Platform] MacOSX porting efforts
* [Platform] MacOSX Bundle creation added
- * [Platform] Enabled ranslations on Windows.
+ * [Platform] Enabled translations on Windows.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 678047fff0e..c7f937934e5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,11 +1,17 @@
-cmake_minimum_required(VERSION 3.6)
+cmake_minimum_required(VERSION 3.18)
+# ensure that project() sets PROJECT_VERSION etc.
+cmake_policy(SET CMP0048 NEW)
set(CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
+# Set this before the first project definition
+set(CMAKE_OSX_DEPLOYMENT_TARGET "13.0" CACHE STRING "Minimum macOS deployment version" FORCE)
include(VERSION.cmake)
-project(client LANGUAGES CXX C VERSION ${MIRALL_VERSION_MAJOR}.${MIRALL_VERSION_MINOR}.${MIRALL_VERSION_PATCH})
+project(owncloud-client LANGUAGES CXX C VERSION ${MIRALL_VERSION_MAJOR}.${MIRALL_VERSION_MINOR}.${MIRALL_VERSION_PATCH})
include(FeatureSummary)
-find_package(ECM 5.50.0 REQUIRED NO_MODULE)
+find_package(ECM 6.0.0 REQUIRED NO_MODULE)
set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://projects.kde.org/projects/kdesupport/extra-cmake-modules")
feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES)
@@ -15,15 +21,30 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules ${ECM_MODULE_PAT
# disable pointless warning in KDECMakeSettings
set(APPLE_SUPPRESS_X11_WARNING ON)
+set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+
+find_package(QT 6.8 NAMES Qt6 COMPONENTS Core REQUIRED)
+
+find_package(Qt6 COMPONENTS Core Concurrent Network Widgets Xml Quick QuickWidgets QuickControls2 REQUIRED)
+find_package(Qt6LinguistTools REQUIRED)
+get_target_property (QT_QMAKE_EXECUTABLE Qt::qmake IMPORTED_LOCATION)
+message(STATUS "Using Qt ${QT_VERSION} (${QT_QMAKE_EXECUTABLE})")
+
+if (UNIX AND NOT APPLE)
+ find_package(Qt6 REQUIRED COMPONENTS DBus)
+endif()
+
include(KDEInstallDirs)
include(KDECMakeSettings)
include(ECMMarkNonGuiExecutable)
+include(ECMSetupVersion)
include(KDECompilerSettings NO_POLICY_SCOPE)
+include(ECMEnableSanitizers)
-set(CMAKE_POSITION_INDEPENDENT_CODE ON)
-
-find_package(Qt5 REQUIRED COMPONENTS Core)
+# while we use qt_add_qml_module instead of ecm_add_qml_module
+# include ECMQmlModule to set up the policies
+include(ECMQmlModule)
if(UNIT_TESTING)
message(DEPRECATION "Setting UNIT_TESTING is deprecated please use BUILD_TESTING")
@@ -31,50 +52,27 @@ if(UNIT_TESTING)
endif()
include(CTest)
-
-include(OCConfigPluginDir)
include(OCBundleResources)
+include(OCApplyCommonSettings)
-if (EXISTS "${PROJECT_SOURCE_DIR}/branding")
- set(OEM_THEME_DIR "${PROJECT_SOURCE_DIR}/branding" CACHE STRING "The directory containing a custom theme")
-else()
- set(OEM_THEME_DIR "${PROJECT_SOURCE_DIR}" CACHE STRING "Define directory containing a custom theme")
-endif()
include("${CMAKE_CURRENT_LIST_DIR}/THEME.cmake")
-set(synclib_NAME "${APPLICATION_EXECUTABLE}sync")
-
-
-# For config.h
-include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR})
-# Allows includes based on src/ like #include "common/utility.h" or #include "csync/csync.h"
-include_directories(
- ${CMAKE_CURRENT_SOURCE_DIR}/src
- ${CMAKE_CURRENT_BINARY_DIR}/src
-)
-
-# disable the crashreporter if libcrashreporter-qt is not available or we're building for ARM
-if( CMAKE_SYSTEM_PROCESSOR MATCHES "arm" OR NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/3rdparty/libcrashreporter-qt/CMakeLists.txt")
- set( WITH_CRASHREPORTER OFF )
-endif()
-
if(NOT WITH_CRASHREPORTER)
message(STATUS "Build of crashreporter disabled.")
+else()
+ # obviously, a crash reported without the URL set is pretty pointless and won't work
+ if(NOT DEFINED CRASHREPORTER_SUBMIT_URL)
+ message(FATAL_ERROR "No crash reporter submit URL provided")
+ endif()
endif()
include(GenerateExportHeader)
include(GetGitRevisionDescription)
+# used in src/csync/CMakeLists.txt
get_git_head_revision(GIT_REFSPEC GIT_SHA1)
-add_definitions(
- -DQT_USE_QSTRINGBUILDER
- -DQT_MESSAGELOGCONTEXT #enable function name and line number in debug output
- -DQT_DEPRECATED_WARNINGS
- -DQT_NO_FOREACH
-)
-
# if we cannot get it from git, directly try .tag (packages)
# this will work if the tar balls have been properly created
# via git-archive.
@@ -88,67 +86,45 @@ if ("${GIT_SHA1}" STREQUAL "GITDIR-NOTFOUND")
endif()
message(STATUS "GIT_SHA1 ${GIT_SHA1}")
-set(SYSCONFDIR ${SYSCONF_INSTALL_DIR})
-
-# this option removes Http authentication, keychain, shibboleth etc and is intended for
-# external authentication mechanisms
-option(TOKEN_AUTH_ONLY "TOKEN_AUTH_ONLY" OFF)
-if(TOKEN_AUTH_ONLY)
- message("Compiling with token authentication")
- add_definitions(-DTOKEN_AUTH_ONLY=1)
-endif()
-
option(NO_MSG_HANDLER "Don't redirect QDebug outputs to the log window/file" OFF)
-if(NO_MSG_HANDLER)
- add_definitions(-DNO_MSG_HANDLER=1)
-endif()
# this option builds the shell integration
option(BUILD_SHELL_INTEGRATION "BUILD_SHELL_INTEGRATION" ON)
-# this option builds/installs the generic shell integration icons
-option(BUILD_SHELL_INTEGRATION_ICONS "BUILD_SHELL_INTEGRATION_ICONS" ON)
-
-# this options builds the dolphin integration plugin
-option(BUILD_SHELL_INTEGRATION_DOLPHIN "BUILD_SHELL_INTEGRATION_DOLPHIN" ON)
-
-# this options builds the nautilus (like) integration plugins
-option(BUILD_SHELL_INTEGRATION_NAUTILUS "BUILD_SHELL_INTEGRATION_NAUTILUS" ON)
+# build the auto updater component
+option(WITH_AUTO_UPDATER "WITH_AUTO_UPDATER" OFF)
-# this option builds the client
-option(BUILD_CLIENT "BUILD_CLIENT" ON)
+# build with -DQT_FORCE_ASSERTS
+option(FORCE_ASSERTS "FORCE_ASSERTS" OFF)
-# this option builds the client documentation
-option(BUILD_DOCS "BUILD_DOCS" OFF)
+option(WITH_APPIMAGEUPDATER OFF "Enable built-in libappimageupdate based updater on Linux")
+add_feature_info(AppImageUpdate WITH_APPIMAGEUPDATER "Built-in libappimageupdate based updater")
-# this option creates only libocsync and libowncloudsync (NOTE: BUILD_CLIENT needs to be on)
-option(BUILD_LIBRARIES_ONLY "BUILD_LIBRARIES_ONLY" OFF)
+option(WITH_EXTERNAL_BRANDING "A URL to an external branding repo" "")
+set(WITH_EXTERNAL_BRANDING_TAG "" CACHE STRING "Tag, branch, or commit in the external branding repo to use")
-# build the GUI component, when disabled only owncloudcmd is built
-option(BUILD_GUI "BUILD_GUI" ON)
-
-# specify additional vfs plugins
-set(VIRTUAL_FILE_SYSTEM_PLUGINS suffix win CACHE STRING "Name of internal plugin in src/libsync/vfs or the locations of virtual file plugins")
+# specify additional vfs plugin
+set(VIRTUAL_FILE_SYSTEM_PLUGINS off win CACHE STRING "Name of internal plugin in src/libsync/vfs or the locations of virtual file plugins")
if(APPLE)
set( SOCKETAPI_TEAM_IDENTIFIER_PREFIX "" CACHE STRING "SocketApi prefix (including a following dot) that must match the codesign key's TeamIdentifier/Organizational Unit" )
endif()
-if(BUILD_CLIENT)
- OPTION(GUI_TESTING "Build with gui introspection features of socket api" OFF)
-
- if(APPLE)
- find_package(Sparkle REQUIRED)
- endif(APPLE)
+if(APPLE)
+ find_package(Sparkle REQUIRED)
+endif(APPLE)
- if(UNIX AND NOT APPLE)
- find_package(Inotify REQUIRED)
- endif()
+if(WITH_APPIMAGEUPDATER)
+ find_package(AppImageUpdate REQUIRED)
+endif()
- find_package(ZLIB REQUIRED)
- find_package(SQLite3 3.9.0 REQUIRED)
+if(UNIX AND NOT APPLE)
+ find_package(Inotify REQUIRED)
endif()
+find_package(ZLIB REQUIRED)
+find_package(SQLite3 3.9.0 REQUIRED)
+
# in the ownBrander themes, the icon files are named after the shortname
# the theme included in this repository defines a custom icon name, therefore we set the shortname as a fallback if the
# theme does not define the variable
@@ -156,45 +132,16 @@ if (NOT DEFINED APPLICATION_ICON_NAME)
set(APPLICATION_ICON_NAME "${APPLICATION_SHORTNAME}")
endif()
-if( WIN32 )
- add_definitions( -D__USE_MINGW_ANSI_STDIO=1 )
- add_definitions( -DNOMINMAX )
- # Get APIs from from Vista onwards.
- add_definitions(-D_WIN32_WINNT=0x0600)
- add_definitions(-DWINVER=0x0600)
- add_definitions(-DNTDDI_VERSION=0x0A000003)
-endif()
-
file(GLOB_RECURSE OWNCLOUD_ICONS "${OEM_THEME_DIR}/theme/colored/*-${APPLICATION_ICON_NAME}-icon.png")
if (NOT OWNCLOUD_ICONS)
generate_legacy_icons(${OEM_THEME_DIR}/theme OWNCLOUD_ICONS)
endif()
MESSAGE(STATUS "OWNCLOUD_ICONS: ${APPLICATION_ICON_NAME}: ${OWNCLOUD_ICONS}")
-if(APPLE)
- list(APPEND OWNCLOUD_BUNDLED_RESOURCES "${CMAKE_CURRENT_SOURCE_DIR}/sync-exclude.lst")
-elseif(BUILD_CLIENT)
- configure_file(sync-exclude.lst bin/sync-exclude.lst COPYONLY)
- if(WIN32)
- install(FILES sync-exclude.lst DESTINATION bin)
- else()
- install(FILES sync-exclude.lst DESTINATION ${SYSCONFDIR}/${APPLICATION_SHORTNAME})
- endif()
-endif()
-
-if(BUILD_CLIENT)
- add_subdirectory(src)
- if(NOT BUILD_LIBRARIES_ONLY)
- if(IS_DIRECTORY ${CMAKE_SOURCE_DIR}/admin)
- add_subdirectory(admin)
- endif(IS_DIRECTORY ${CMAKE_SOURCE_DIR}/admin)
- endif(NOT BUILD_LIBRARIES_ONLY)
-endif()
-
-if(BUILD_DOCS)
- add_subdirectory(docs)
-endif()
-
+add_subdirectory(src)
+if(IS_DIRECTORY ${CMAKE_SOURCE_DIR}/admin)
+ add_subdirectory(admin)
+endif(IS_DIRECTORY ${CMAKE_SOURCE_DIR}/admin)
if(BUILD_SHELL_INTEGRATION)
add_subdirectory(shell_integration)
@@ -204,14 +151,5 @@ if(BUILD_TESTING)
add_subdirectory(test)
endif()
-configure_file(config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
-
feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
-if(ECM_VERSION VERSION_GREATER_EQUAL 5.79)
- message(STATUS "Suitable ECM ${ECM_VERSION} found, installing clang-format git hook")
- include(KDEGitCommitHooks)
- kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT)
-else()
- message(WARNING "ECM ${ECM_VERSION} too old, cannot install clang-format git hook")
-endif()
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index c7715be71cf..faf949afd60 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,20 +1,21 @@
## Submitting Desktop Client issues
If you have questions about how to use the ownCloud Desktop Client, please
-join our [rocket chat channel][rocketchat] or our [forum][forum].
+join our [forum][forum].
We are also available on [IRC][irc].
### Bug Reporting Guidelines
-* __Important__: When reporting an issue provide as much requested information as possible, we :heart: log files.
-* __SECURITY__: Report any potential security bug to security@owncloud.com following our [security policy](https://owncloud.org/security/) instead of filing an issue in our bug tracker
-* This repository is *only* for issues within the ownCloud desktop client.
- Issues in other components should be reported in their own repositores:
+
+- **Important**: When reporting an issue provide as much requested information as possible, we :heart: log files.
+- **SECURITY**: Report any potential security bug to security@owncloud.com following our [security policy](https://owncloud.com/security/) instead of filing an issue in our bug tracker
+- This repository is _only_ for issues within the ownCloud desktop client.
+ Issues in other components should be reported in their own repositories:
- [ownCloud server](https://github.com/owncloud/core/issues)
- [ownCloud apps](https://github.com/owncloud/apps/issues) (e.g. Calendar,
Contacts...)
- [Android client](https://github.com/owncloud/android/issues)
- [iOS client](https://github.com/owncloud/ios-issues/issues)
-* Search the existing issues first, it's likely that your issue was already
+- Search the existing issues first, it's likely that your issue was already
reported.
If your issue appears to be a bug, and hasn't been reported, open a new issue.
@@ -22,7 +23,6 @@ If your issue appears to be a bug, and hasn't been reported, open a new issue.
Help us to maximize the effort we can spend fixing issues and adding new
features, by not reporting duplicate issues.
-[rocketchat]: https://talk.owncloud.com/channel/desktop
[forum]: https://central.owncloud.org/
[irc]: https://web.libera.chat/?channels=#owncloud
@@ -33,15 +33,13 @@ Thanks for wanting to contribute source code to ownCloud. That's great!
Before we're able to merge your code to ownCloud Desktop Client, you need to sign
our [Contributor Agreement][agreement].
-Please read the [Desktop Client Manual][desktopman] and the [Developer
-Manuals][devmanual] to get useful info like how to create your first
-application or how to test the ownCloud code with phpunit.
+Please read the [Desktop Client Manual][desktopman] to get useful info about the client.
-[agreement]: http://owncloud.org/about/contributor-agreement/
-[devmanual]: https://doc.owncloud.com/desktop/latest/appendices/building.html
-[desktopman]: http://doc.owncloud.org/desktop
+[agreement]: https://owncloud.com/contribute/join-the-development/contributor-agreement/
+[desktopman]: https://doc.owncloud.com/desktop
## Translations
+
Please submit translations via [Transifex][transifex].
[transifex]: https://www.transifex.com/projects/p/owncloud/
diff --git a/OWNCLOUD.cmake b/OWNCLOUD.cmake
index 67748a68de4..3b86996a2f0 100644
--- a/OWNCLOUD.cmake
+++ b/OWNCLOUD.cmake
@@ -15,6 +15,8 @@ set( WIN_SETUP_BITMAP_PATH "${CMAKE_SOURCE_DIR}/admin/win/nsi" )
set( MAC_INSTALLER_BACKGROUND_FILE "${CMAKE_SOURCE_DIR}/admin/osx/installer-background.png" CACHE STRING "The MacOSX installer background image")
+set( THEME_INCLUDE "owncloudtheme.h" )
+
# set( THEME_INCLUDE "${OEM_THEME_DIR}/mytheme.h" )
# set( APPLICATION_LICENSE "${OEM_THEME_DIR}/license.txt )
diff --git a/PACKAGING.md b/PACKAGING.md
new file mode 100644
index 00000000000..98542e3be10
--- /dev/null
+++ b/PACKAGING.md
@@ -0,0 +1,40 @@
+# Shipping
+
+This readme file is for distribution packagers and provides some reasoning and hints about shipping the desktop client for a seamless experience on the Linux desktop.
+
+For that, ownCloud and the distributions need to collaborate.
+
+Note that this information is valid for the ownCloud Desktop App 6.0 and subsequent releases only and does not apply for releases 5.x and below.
+## Integration Problems
+
+The ownCloud desktop client gets shipped as AppImage because it is effortless to create, independent of the underlying distro and easy to install, as long as the distribution is not providing a package on their own which is frequently updated.
+
+With AppImage, there comes one problem: For the integration into the desktop file managers which are provided by the distribution (such as Dolphin for KDE and Nautilus), icons and partly also binary code is needed. That is needed to provide the necessary information to enable the file managers to show for example icon overlays.
+
+So far, the necessary code and resources were bundled with the desktop client code, but now the desktop shell integrations resources were split off, so that they can be released and shipped separately.
+
+## Solution
+
+The idea is that everything that is needed to integrate into the desktop apps such as dolphin are part of the Linux distribution that any user chooses to use. Ideally they are packages maintained downstream in the Linux distributions and can be installed via the native package management.
+
+Since these parts are very rarely changing, these packages are very stable and thus, packaging efforts a very, very low.
+
+The actual client code, which changes far more often, is either also provided by the Linux distro downstream or by ownCloud as an AppImage. ownCloud chooses to deliver an AppImage because that reduces the effort to package for all distros out there, it is "one fits all".
+
+User now only have to install the AppImage with the latest client, and the shell integrations from their Linux distro package management. The AppImage based client automagically connects to the shell integration code and the overlay icons and menu additions in the file managers work.
+
+With that, the user gets on the one hand very frequently updated desktop clients directly from the project, and nice integration with the desktop technology that is delivered from the distribution.
+
+## Packaging Hints
+
+Here are some hints for packager of the linux distributions which we kindly ask to change their packages in the distros to help us to provide the best ownCloud client integration experience:
+
+The shell integrations are available for [KDE Dolphin](https://github.com/owncloud/client-desktop-shell-integration-dolphin), [Nautilus and Caja](https://github.com/owncloud/client-desktop-shell-integration-nautilus). While KDE Dolphin needs compiled code, the latter two are using python.
+Each of them should be available as separate distro package, so that they can be suggested to complement "their" file manager.
+
+All of these packages should depend on the [client-extension-resources](https://github.com/owncloud/client-desktop-shell-integration-resources) package, which basically only contains the overlay icons. They can optionally be branded with a distro specific theme, to maintain a cool desktop experience.
+
+None of the three file manager integration packages (for Dolphin, Nautilus or Caja) need a dependency on the "big" ownCloud desktop client package anymore, so that they do not change in foreseeable times.
+
+If the distro decides to ship an own package of the client or lets their user install the provided AppImage, the experience will be perfect in any case.
+
diff --git a/README.md b/README.md
index d72ab63f07c..d81876322a8 100644
--- a/README.md
+++ b/README.md
@@ -2,17 +2,16 @@
[](https://drone.owncloud.com/owncloud/client) [](https://github.com/owncloud/client/actions)
-
## Introduction
-The ownCloud Desktop Client is a tool to synchronize files from ownCloud Server
+The ownCloud Desktop Client is a tool to synchronize files from ownCloud Infinite Scale
with your computer.
## Download
### Binary packages
-* Refer to the download page https://owncloud.com/desktop-app/
+- Refer to the download page https://owncloud.com/desktop-app/
### Source code
@@ -22,10 +21,16 @@ can be found on the Internet, in particular on GitHub. However, the
authoritative repository maintained by the developers is located at
https://github.com/owncloud/client.
-## Building the source code
+### Building from source
+
+This project uses CMake as build system. Please refer to the cmake documentation
+for general instructions on how to use CMake: https://cmake.org/documentation/.
+
+Further more as meta build system KDE Craft is used. Please refer to the KDE Craft
+documentation for instructions on how to use Craft: https://community.kde.org/Craft.
-[Building the Client](https://doc.owncloud.org/desktop/building.html)
-in the ownCloud Desktop Client manual.
+For easy to use instructions on how to build the ownCloud Desktop Client please have
+a look at https://github.com/owncloud/ownbuild.
## Reporting issues and contributing
@@ -37,32 +42,24 @@ of your report being lost.
If you created a patch, please submit a [Pull
Request](https://github.com/owncloud/client/pulls). For non-trivial
patches, we need you to sign the [Contributor
-Agreement](https://owncloud.org/contribute/agreement) before
+Agreement](https://owncloud.com/contribute/join-the-development/contributor-agreement/) before
we can accept your patch.
-If you want to contact us, e.g. before starting a more complex feature,
-you can join us at
-[RocketChat](https://talk.owncloud.com/channel/desktop).
## Maintainers and Contributors
-The current maintainers of this repository are:
-
-* Hannah von Reth
-* Dominik Schmidt
-
ownCloud Desktop Client is developed by the ownCloud community and [receives
patches from a variety of authors](https://github.com/owncloud/client/graphs/contributors).
Past maintainers:
-* Markus Goetz
-* Olivier Goffart
-* Christian Kamm
-* Thomas Müller
-* Klaas Freitag
-* Daniel Molkentin
-* Andreas Schneider
+- Markus Goetz
+- Olivier Goffart
+- Christian Kamm
+- Thomas Müller
+- Klaas Freitag
+- Daniel Molkentin
+- Andreas Schneider
## License
@@ -76,4 +73,3 @@ Past maintainers:
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
-
diff --git a/THEME.cmake b/THEME.cmake
index ee316c628cf..cedc9c49f47 100644
--- a/THEME.cmake
+++ b/THEME.cmake
@@ -1,24 +1,39 @@
+if(WITH_EXTERNAL_BRANDING)
+ include(FetchContent)
+
+ if(NOT WITH_EXTERNAL_BRANDING_TAG)
+ set(WITH_EXTERNAL_BRANDING_TAG "master")
+ endif()
+
+ FetchContent_Declare(branding
+ GIT_REPOSITORY ${WITH_EXTERNAL_BRANDING}
+ GIT_TAG ${WITH_EXTERNAL_BRANDING_TAG}
+ )
+ FetchContent_MakeAvailable(branding)
+
+ set(OEM_THEME_DIR ${branding_SOURCE_DIR} CACHE STRING "The directory containing a custom theme")
+else()
+ if (EXISTS "${PROJECT_SOURCE_DIR}/branding")
+ set(OEM_THEME_DIR "${PROJECT_SOURCE_DIR}/branding" CACHE STRING "The directory containing a custom theme")
+ else()
+ set(OEM_THEME_DIR "${PROJECT_SOURCE_DIR}/src/resources/" CACHE STRING "Define directory containing a custom theme")
+ endif()
+endif()
+
if (EXISTS "${OEM_THEME_DIR}/OEM.cmake")
include("${OEM_THEME_DIR}/OEM.cmake")
+ if (DEFINED WITHOUT_AUTO_UPDATER)
+ set(WITH_AUTO_UPDATER OFF)
+ MESSAGE(STATUS "Branding: WITHOUT_AUTO_UPDATER was defined in the theme and therefore the auto updater has been disabled")
+ endif ()
+
else()
include ("${CMAKE_CURRENT_LIST_DIR}/OWNCLOUD.cmake")
endif()
message(STATUS "Branding: ${APPLICATION_NAME}")
-# Default suffix if the theme doesn't define one
-if(NOT DEFINED APPLICATION_VIRTUALFILE_SUFFIX)
- set(APPLICATION_VIRTUALFILE_SUFFIX "${APPLICATION_SHORTNAME}_virtual" CACHE STRING "Virtual file suffix (not including the .)")
-endif()
-
-# Default dbus name and path
-if(NOT DEFINED APPLICATION_CLOUDPROVIDERS_DBUS_NAME)
- set(APPLICATION_CLOUDPROVIDERS_DBUS_NAME ${APPLICATION_REV_DOMAIN})
-endif()
-if(NOT DEFINED APPLICATION_CLOUDPROVIDERS_DBUS_PATH)
- set(APPLICATION_CLOUDPROVIDERS_DBUS_PATH "/${APPLICATION_CLOUDPROVIDERS_DBUS_NAME}")
- string(REPLACE "." "/" APPLICATION_CLOUDPROVIDERS_DBUS_PATH ${APPLICATION_CLOUDPROVIDERS_DBUS_PATH})
-endif()
+set(APPLICATION_REV_DOMAIN_INSTALLER ${APPLICATION_REV_DOMAIN})
# need this logic to not mess with re/uninstallations via macosx.pkgproj
if(${APPLICATION_REV_DOMAIN} STREQUAL "com.owncloud.desktopclient")
@@ -40,8 +55,6 @@ if (NOT DEFINED PACKAGE)
set(PACKAGE "${LINUX_PACKAGE_SHORTNAME}-client")
endif()
-set(PROJECT_NAME "${PACKAGE}")
-
if(NOT CRASHREPORTER_EXECUTABLE)
set(CRASHREPORTER_EXECUTABLE "${APPLICATION_EXECUTABLE}_crash_reporter")
endif()
diff --git a/VERSION.cmake b/VERSION.cmake
index 18ca974821d..5620fbede23 100644
--- a/VERSION.cmake
+++ b/VERSION.cmake
@@ -1,7 +1,7 @@
-set( MIRALL_VERSION_MAJOR 2 )
-set( MIRALL_VERSION_MINOR 11 )
+set( MIRALL_VERSION_MAJOR 7 )
+set( MIRALL_VERSION_MINOR 2 )
set( MIRALL_VERSION_PATCH 0 )
-set( MIRALL_VERSION_YEAR 2021 )
+set( MIRALL_VERSION_YEAR 2026 )
set( MIRALL_SOVERSION 0 )
if ( NOT DEFINED MIRALL_VERSION_SUFFIX )
@@ -15,10 +15,12 @@ endif( NOT DEFINED MIRALL_VERSION_BUILD )
# Used e.g. for libraries Keep at x.y.z.
set( MIRALL_VERSION "${MIRALL_VERSION_MAJOR}.${MIRALL_VERSION_MINOR}.${MIRALL_VERSION_PATCH}" )
# Version with Build ID. Used in the installer
-set( MIRALL_VERSION_FULL "${MIRALL_VERSION}.${MIRALL_VERSION_BUILD}" )
-
-set( MIRALL_VERSION_STRING "${MIRALL_VERSION}${MIRALL_VERSION_SUFFIX}" )
-
+set( MIRALL_VERSION_FULL "${MIRALL_VERSION}" )
if( MIRALL_VERSION_BUILD )
- set( MIRALL_VERSION_STRING "${MIRALL_VERSION_STRING} (build ${MIRALL_VERSION_BUILD})" )
+ set( MIRALL_VERSION_FULL "${MIRALL_VERSION_FULL}.${MIRALL_VERSION_BUILD}" )
endif( MIRALL_VERSION_BUILD )
+
+set( MIRALL_VERSION_STRING "${MIRALL_VERSION_FULL}" )
+if(NOT MIRALL_VERSION_SUFFIX STREQUAL "")
+ set( MIRALL_VERSION_STRING "${MIRALL_VERSION_STRING}-${MIRALL_VERSION_SUFFIX}" )
+endif()
diff --git a/admin/clean-leftovers.ps1 b/admin/clean-leftovers.ps1
new file mode 100644
index 00000000000..faf6c40294d
--- /dev/null
+++ b/admin/clean-leftovers.ps1
@@ -0,0 +1,31 @@
+Param
+(
+ [Parameter(Mandatory=$true)]
+ [string]$ProductName
+)
+
+# https://github.com/MicrosoftDocs/winrt-api/issues/1130
+$SyncRootManager = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SyncRootManager"
+$GetRootItem = Get-Item $SyncRootManager
+Get-ChildItem -Path $SyncRootManager | ForEach-Object {
+ # legacy clients always used that prefix owncloud_
+
+ $name = $_.Name.Substring($GetRootItem.Name.Length + 1)
+ if ($name.StartsWith("OC-TEST", "CurrentCultureIgnoreCase") -or $name.StartsWith("owncloud_", "CurrentCultureIgnoreCase") -or $name.StartsWith("$ProductName", "CurrentCultureIgnoreCase")) {
+ Write-Host $_
+ Remove-Item -Recurse $_.PsPath
+ }
+}
+
+Get-ChildItem -Path "HKCU:\Software\Classes\CLSID\" | ForEach-Object {
+ $key = (get-itemproperty $_.PsPath)."(default)"
+ if ($key) {
+ # unit tests (OC-TEST) leave stuff behind
+ if ($key.StartsWith("OC-TEST", "CurrentCultureIgnoreCase") -or $key.StartsWith("$ProductName", "CurrentCultureIgnoreCase")) {
+ Write-Host $key, $_
+ Remove-Item -Recurse $_.PsPath
+ }
+ }
+}
+Get-Process explorer | Stop-Process
+Pause
diff --git a/admin/osx/CMakeLists.txt b/admin/osx/CMakeLists.txt
index 720015c0dd9..93c1d7229e6 100644
--- a/admin/osx/CMakeLists.txt
+++ b/admin/osx/CMakeLists.txt
@@ -1,5 +1,5 @@
-# Check if varialbe MAC_INSTALLER_BACKGROUND_FILE is defined. That might come
+# Check if variable MAC_INSTALLER_BACKGROUND_FILE is defined. That might come
# from the OEM.cmake for branded clients or from OWNCLOUD.cmake for the non
# branded client.
# Make sure that the MAC_INSTALLER_BACKGROUND_FILE contains the full path, ie.
@@ -11,7 +11,6 @@ else()
set(MAC_INSTALLER_DO_CUSTOM_BACKGROUND "false")
endif()
-find_package(Qt5 5.6 COMPONENTS Core REQUIRED)
configure_file(create_mac.sh.cmake ${CMAKE_CURRENT_BINARY_DIR}/create_mac.sh @ONLY)
configure_file(macosx.pkgproj.cmake ${CMAKE_CURRENT_BINARY_DIR}/macosx.pkgproj @ONLY)
configure_file(pre_install.sh.cmake ${CMAKE_CURRENT_BINARY_DIR}/pre_install.sh @ONLY)
diff --git a/admin/osx/post_install.sh.cmake b/admin/osx/post_install.sh.cmake
index 65040078358..8044ca29249 100644
--- a/admin/osx/post_install.sh.cmake
+++ b/admin/osx/post_install.sh.cmake
@@ -20,7 +20,7 @@ fi
if [[ -f "${INSTALLER_TEMP}/OC_RESTART_NEEDED" ]]; then
if [[ "${COMMAND_LINE_INSTALL}" = "" ]]; then
- /bin/launchctl asuser "${LOGGED_IN_USER_ID}" /usr/bin/open -g "/Applications/@APPLICATION_EXECUTABLE@.app"
+ /bin/launchctl kickstart "gui/${LOGGED_IN_USER_ID}/@APPLICATION_REV_DOMAIN@"
fi
fi
diff --git a/changelog/2.10.0_2022-01-17/4896.md b/changelog/2.10.0_2022-01-17/4896.md
new file mode 100644
index 00000000000..cc22d357097
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/4896.md
@@ -0,0 +1,6 @@
+Bugfix: Issues with long file path
+
+We fixed another issue with long Windows paths.
+
+
+https://github.com/owncloud/enterprise/issues/4896
diff --git a/changelog/2.10.0_2022-01-17/8924.md b/changelog/2.10.0_2022-01-17/8924.md
new file mode 100644
index 00000000000..155f3555566
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/8924.md
@@ -0,0 +1,9 @@
+Bugfix: Do not ask for credentials at start-up when the user logged out
+
+When a user would log out, and quit the client, then on the next start
+the client would immediately ask for credentials. This has been fixed by
+storing the fact that the user logged out before in the account
+settings.
+
+https://github.com/owncloud/client/issues/8924
+
diff --git a/changelog/2.10.0_2022-01-17/9000.md b/changelog/2.10.0_2022-01-17/9000.md
new file mode 100644
index 00000000000..d7b2c903abe
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9000.md
@@ -0,0 +1,7 @@
+Enhancement: Reintroduce issue filtering
+
+We reintroduced a filtering option to the issue table.
+With the addition of a Filter button we also made the existing filter by account feature more accessible.
+
+https://github.com/owncloud/client/issues/9000
+https://github.com/owncloud/client/pull/9023
diff --git a/changelog/2.10.0_2022-01-17/9071.md b/changelog/2.10.0_2022-01-17/9071.md
new file mode 100644
index 00000000000..7f06ad929cc
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9071.md
@@ -0,0 +1,5 @@
+Bugfix: A folder moved on the server was displayed as outdated
+
+We fixed a bug where a folder moved on the server was displayed as outdated.
+
+https://github.com/owncloud/client/issues/9071
diff --git a/changelog/unreleased/9099 b/changelog/2.10.0_2022-01-17/9099.md
similarity index 100%
rename from changelog/unreleased/9099
rename to changelog/2.10.0_2022-01-17/9099.md
diff --git a/changelog/unreleased/9149 b/changelog/2.10.0_2022-01-17/9149.md
similarity index 100%
rename from changelog/unreleased/9149
rename to changelog/2.10.0_2022-01-17/9149.md
diff --git a/changelog/unreleased/9150 b/changelog/2.10.0_2022-01-17/9150.md
similarity index 100%
rename from changelog/unreleased/9150
rename to changelog/2.10.0_2022-01-17/9150.md
diff --git a/changelog/2.10.0_2022-01-17/9170.md b/changelog/2.10.0_2022-01-17/9170.md
new file mode 100644
index 00000000000..22c9f2d6e38
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9170.md
@@ -0,0 +1,6 @@
+Bugfix: Crash when handling locked files
+
+We fixed a crash that could occur when trying to add a locked folder to the database.
+
+
+https://github.com/owncloud/client/issues/9170
diff --git a/changelog/2.10.0_2022-01-17/9194.md b/changelog/2.10.0_2022-01-17/9194.md
new file mode 100644
index 00000000000..6af7377dd3c
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9194.md
@@ -0,0 +1,9 @@
+Bugfix: Don't abort upload if chunk is locked
+
+Since 2.9 we know that we need exclusive file access to a file to properly handle it with Windows virtual files.
+Therefore, we checked for the locked state before we start the upload.
+Due to a bug we checked that for each file chunk, now we only check when the upload starts and when it finished completely.
+
+https://github.com/owncloud/client/issues/9194
+https://github.com/owncloud/client/pull/9264
+https://github.com/owncloud/client/pull/9296
diff --git a/changelog/2.10.0_2022-01-17/9196.md b/changelog/2.10.0_2022-01-17/9196.md
new file mode 100644
index 00000000000..18503f1df1e
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9196.md
@@ -0,0 +1,6 @@
+Bugfix: Always restart OAuth2 on error
+
+We now always restart the OAuth2 process once we got a result.
+This will ensure that a second try after an error occurred can succeed.
+
+https://github.com/owncloud/client/issues/9196
diff --git a/changelog/2.10.0_2022-01-17/9208.md b/changelog/2.10.0_2022-01-17/9208.md
new file mode 100644
index 00000000000..c6db7aa811b
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9208.md
@@ -0,0 +1,7 @@
+Enhancement: Also ignore local repeating errors for a period of time
+
+If an error occurs on the server (a URL is not reachable) we try a couple of times, then we ignore that file for a period of time.
+We now do the same with errors that occur locally.
+
+https://github.com/owncloud/client/issues/9208
+https://github.com/owncloud/client/issues/9133
diff --git a/changelog/2.10.0_2022-01-17/9223.md b/changelog/2.10.0_2022-01-17/9223.md
new file mode 100644
index 00000000000..28c698b8815
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9223.md
@@ -0,0 +1,10 @@
+Bugfix: Display correct error message for files containing `\:?*"<>|`
+
+While the error message was supposed to be:
+`File names containing the character '%1' are not supported on this file system.`
+
+We displayed:
+`The file name is a reserved name on this file system.`
+
+https://github.com/owncloud/client/pull/9223/
+
diff --git a/changelog/2.10.0_2022-01-17/9241.md b/changelog/2.10.0_2022-01-17/9241.md
new file mode 100644
index 00000000000..541279e55a5
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9241.md
@@ -0,0 +1,8 @@
+Bugfix: Do not sync when `unsyncedfolders` file cannot be read
+
+owncloudcmd now checks if the file specified by --unsyncedfolders exists
+and can be read, before starting the sync. If it does not exist, show an
+error message and quit immediately.
+
+https://github.com/owncloud/client/issues/9165
+https://github.com/owncloud/client/pull/9241
diff --git a/changelog/2.10.0_2022-01-17/9257.md b/changelog/2.10.0_2022-01-17/9257.md
new file mode 100644
index 00000000000..56626eee627
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9257.md
@@ -0,0 +1,7 @@
+Bugfix: Fix failing dehydration causing files to be moved to trash
+
+If files where dehydrated by the user the action could fail under certain conditions
+which caused a deletion of the file.
+
+https://github.com/owncloud/client/pull/9257
+https://github.com/owncloud/client-desktop-vfs-win/pull/9
diff --git a/changelog/2.10.0_2022-01-17/9266.md b/changelog/2.10.0_2022-01-17/9266.md
new file mode 100644
index 00000000000..af394474673
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9266.md
@@ -0,0 +1,7 @@
+Bugfix: Do not show Activity tab if server app is disabled or uninstalled
+
+The Activity app API nowadays returns error responses in case the app is disabled or uninstalled.
+This new behavior is now supported in the client.
+
+https://github.com/owncloud/client/issues/9260
+https://github.com/owncloud/client/pull/9266
diff --git a/changelog/2.10.0_2022-01-17/9291.md b/changelog/2.10.0_2022-01-17/9291.md
new file mode 100644
index 00000000000..e12db36ca1b
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9291.md
@@ -0,0 +1,6 @@
+Enhancement: Remove the availability menu from the ui
+
+The availability options should be handled on a folder base and in the file browser.
+
+
+https://github.com/owncloud/client/pull/9291
\ No newline at end of file
diff --git a/changelog/2.10.0_2022-01-17/9293.md b/changelog/2.10.0_2022-01-17/9293.md
new file mode 100644
index 00000000000..515f55ba276
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9293.md
@@ -0,0 +1,9 @@
+Bugfix: Handle file locks for delete jobs
+
+We no longer report an error when the client tries to delete a locked file
+but wait for the lock to be removed.
+
+This only works when a file is deleted not on folders.
+
+https://github.com/owncloud/client/issues/9293
+https://github.com/owncloud/client/pull/9295
diff --git a/changelog/2.10.0_2022-01-17/9341.md b/changelog/2.10.0_2022-01-17/9341.md
new file mode 100644
index 00000000000..20996c04a72
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9341.md
@@ -0,0 +1,5 @@
+Bugfix: Run a full local discovery after we were paused or on a forced sync
+
+Previously we did an incremental search which might have skipped some local changes.
+
+https://github.com/owncloud/client/issues/9341
diff --git a/changelog/2.10.0_2022-01-17/9342.md b/changelog/2.10.0_2022-01-17/9342.md
new file mode 100644
index 00000000000..b9b57a62c47
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/9342.md
@@ -0,0 +1,6 @@
+Bugfix: Infinite sync loop if folder is locked
+
+We fixed a bug that caused an infinite sync loop if an error occurred.
+
+https://github.com/owncloud/client/issues/9342
+https://github.com/owncloud/client-desktop-vfs-win/pull/14
diff --git a/changelog/2.10.0_2022-01-17/client-desktop-vfs-win-12.md b/changelog/2.10.0_2022-01-17/client-desktop-vfs-win-12.md
new file mode 100644
index 00000000000..aa7c3aae0e5
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/client-desktop-vfs-win-12.md
@@ -0,0 +1,6 @@
+Enhancement: Add the syncroot to the search indexed with Windows VFS
+
+Microsoft recommends adding the syncroot to search indexer to improve
+the performance with the file status icons.
+
+https://github.com/owncloud/client-desktop-vfs-win/pull/12
diff --git a/changelog/2.10.0_2022-01-17/client-desktop-vfs-win-13.md b/changelog/2.10.0_2022-01-17/client-desktop-vfs-win-13.md
new file mode 100644
index 00000000000..8d17c2789b5
--- /dev/null
+++ b/changelog/2.10.0_2022-01-17/client-desktop-vfs-win-13.md
@@ -0,0 +1,6 @@
+Bugfix: We fixed a possible crash
+
+We fixed a possible crash that could happen during the
+initialisation of the vfs plugin.
+
+https://github.com/owncloud/client-desktop-vfs-win/pull/13
diff --git a/changelog/2.10.1_2022-04-05/9030.md b/changelog/2.10.1_2022-04-05/9030.md
new file mode 100644
index 00000000000..9a94738e1f2
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9030.md
@@ -0,0 +1,4 @@
+Bugfix: Do not strip trailing whitespace from a file or folder name
+
+https://github.com/owncloud/client/issues/9030
+https://github.com/owncloud/client/pull/9452
diff --git a/changelog/2.10.1_2022-04-05/9105.md b/changelog/2.10.1_2022-04-05/9105.md
new file mode 100644
index 00000000000..a7a24718f63
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9105.md
@@ -0,0 +1,7 @@
+Bugfix: Remove outdated translations
+
+Due to a bug we were not removing the translations that fell below
+a required quality margin, we only stopped updating them.
+Resulting in even worse translations in some cases.
+
+https://github.com/owncloud/client/issues/9105
diff --git a/changelog/2.10.1_2022-04-05/9121.md b/changelog/2.10.1_2022-04-05/9121.md
new file mode 100644
index 00000000000..0286285df1e
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9121.md
@@ -0,0 +1,5 @@
+Bugfix: Progress reporting for TUS uploads
+
+We fixed a bug with missing progress reporting in TUS uploads
+
+https://github.com/owncloud/client/issues/9121
diff --git a/changelog/2.10.1_2022-04-05/9147.md b/changelog/2.10.1_2022-04-05/9147.md
new file mode 100644
index 00000000000..588345ff514
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9147.md
@@ -0,0 +1,7 @@
+Bugfix: Fix crash if a database error occurs
+
+We no longer crash if a database error occurs on startup,
+instead the folder will enter an error sate similar to the case
+that the folder does not exist.
+
+https://github.com/owncloud/client/issues/9147
diff --git a/changelog/2.10.1_2022-04-05/9155.md b/changelog/2.10.1_2022-04-05/9155.md
new file mode 100644
index 00000000000..bd2e8310164
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9155.md
@@ -0,0 +1,7 @@
+Bugfix: --version showed incorrect information about VFS support
+
+--version used to always show "Off", even when a VFS plugin was available.
+This has been fixed now.
+
+https://github.com/owncloud/client/issues/9155
+https://github.com/owncloud/client/pull/9457
diff --git a/changelog/2.10.1_2022-04-05/9236.md b/changelog/2.10.1_2022-04-05/9236.md
new file mode 100644
index 00000000000..4aab7f8d565
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9236.md
@@ -0,0 +1,6 @@
+Bugfix: Client warns about non-existing files
+
+We fixed a bug where the client warns about ignored files that where added to the DB in previous versions of the client
+and do no longer exist.
+
+https://github.com/owncloud/client/issues/9236
diff --git a/changelog/2.10.1_2022-04-05/9238.md b/changelog/2.10.1_2022-04-05/9238.md
new file mode 100644
index 00000000000..9558e568826
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9238.md
@@ -0,0 +1,4 @@
+Bugfix: mention source file in activity tab when renaming
+
+https://github.com/owncloud/client/issues/9238
+https://github.com/owncloud/client/pull/9453
diff --git a/changelog/2.10.1_2022-04-05/9245.md b/changelog/2.10.1_2022-04-05/9245.md
new file mode 100644
index 00000000000..fbc66d6cee6
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9245.md
@@ -0,0 +1,4 @@
+Enhancement: Retry token refresh multiple times before logout
+
+https://github.com/owncloud/client/issues/9245
+https://github.com/owncloud/client/pull/9380
diff --git a/changelog/2.10.1_2022-04-05/9304.md b/changelog/2.10.1_2022-04-05/9304.md
new file mode 100644
index 00000000000..0621fd00088
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9304.md
@@ -0,0 +1,5 @@
+Enhancement: Don't log error when checking removed file for changes
+
+We removed some misleading error messages from the log.
+
+https://github.com/owncloud/client/issues/9304
diff --git a/changelog/2.10.1_2022-04-05/9336.md b/changelog/2.10.1_2022-04-05/9336.md
new file mode 100644
index 00000000000..9e91b6364df
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9336.md
@@ -0,0 +1,11 @@
+Enhancement: Leave password field in share dialog enabled on errors
+
+The password line edit used to be disabled because the related checkbox was unchecked upon errors
+such as failing to satisfy the requirements imposed by the "password policy" server app.
+
+Now, the checkbox will not be unchecked, leaving the line edit enabled and keeping the focus on
+it. This allows users to enter a new password and try again without having to enable the checkbox
+and clicking into the line edit again.
+
+https://github.com/owncloud/client/issues/9336
+https://github.com/owncloud/client/pull/9508
diff --git a/changelog/2.10.1_2022-04-05/9367.md b/changelog/2.10.1_2022-04-05/9367.md
new file mode 100644
index 00000000000..e56db6c2b16
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9367.md
@@ -0,0 +1,5 @@
+Bugfix: Fix crash on remove account
+
+We fixed a potential reference to a deleted item, when an account was removed.
+
+https://github.com/owncloud/client/issues/9367
diff --git a/changelog/2.10.1_2022-04-05/9375.md b/changelog/2.10.1_2022-04-05/9375.md
new file mode 100644
index 00000000000..cbf99d53cf0
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9375.md
@@ -0,0 +1,5 @@
+Bugfix: Raise ssl issue dialog above the wizard
+
+Under certain conditions it was possible that the ssl dialog was hidden behind the wizard.
+
+https://github.com/owncloud/client/pull/9375
diff --git a/changelog/2.10.1_2022-04-05/9381.md b/changelog/2.10.1_2022-04-05/9381.md
new file mode 100644
index 00000000000..75db35677a8
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9381.md
@@ -0,0 +1,6 @@
+Bugfix: Fallback to ownCloud sidebar icons on Mac if none provided in branding
+
+If a customer does not provide sidebar icons we use the ownCloud sidebar icons.
+
+
+https://github.com/owncloud/client/pull/9381
diff --git a/changelog/2.10.1_2022-04-05/9382.md b/changelog/2.10.1_2022-04-05/9382.md
new file mode 100644
index 00000000000..ba5f5bc2d6e
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9382.md
@@ -0,0 +1,5 @@
+Bugfix: Immediately retry upload if file changed during sync
+
+If a file changed during discovery and the actual upload for multiple retries in a row, changes of it were ignored for a period of time.
+
+https://github.com/owncloud/client/issues/9382
diff --git a/changelog/2.10.1_2022-04-05/9383.md b/changelog/2.10.1_2022-04-05/9383.md
new file mode 100644
index 00000000000..ed58d537c0c
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9383.md
@@ -0,0 +1,7 @@
+Bugfix: Don't reset change time on upload
+
+We fixed a bug where we reset the change time of Windows placeholder files to the value in the database during uploads.
+This cold cause other applications to detect non-existing changes in that file.
+
+https://github.com/owncloud/client/issues/9383
+https://github.com/owncloud/client-desktop-vfs-win/pull/16
diff --git a/changelog/2.10.1_2022-04-05/9387.md b/changelog/2.10.1_2022-04-05/9387.md
new file mode 100644
index 00000000000..86f51164667
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9387.md
@@ -0,0 +1,7 @@
+Bugfix: Fix toggling launch-on-login for macOS
+
+This would fail when upgrading the application, and the upgraded version
+has one or more letters in the name changed from/to upper-case.
+
+https://github.com/owncloud/client/issues/9387
+https://github.com/owncloud/client/pull/9433
diff --git a/changelog/2.10.1_2022-04-05/9390.md b/changelog/2.10.1_2022-04-05/9390.md
new file mode 100644
index 00000000000..f8c51f718b6
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9390.md
@@ -0,0 +1,6 @@
+Bugfix: Fix translated icon names in desktop file with ownBrander themes
+
+Fixes broken translated icon reference in desktop entries for some branded build themes.
+
+https://github.com/owncloud/client/pull/9390
+
diff --git a/changelog/2.10.1_2022-04-05/9417.md b/changelog/2.10.1_2022-04-05/9417.md
new file mode 100644
index 00000000000..61aa80d6537
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9417.md
@@ -0,0 +1,5 @@
+Bugfix: Fix possible crash
+
+We change the initialisation of a Windows icon to prevent a possible crash.
+
+https://github.com/owncloud/client/issues/9417
diff --git a/changelog/2.10.1_2022-04-05/9420.md b/changelog/2.10.1_2022-04-05/9420.md
new file mode 100644
index 00000000000..e7babf24bd8
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9420.md
@@ -0,0 +1,7 @@
+Bugfix: add open local/remote folder options
+
+Add the "open local/remote folder" context menu items for non-sync-root
+items back into the accounts tab in the settings dialog.
+
+https://github.com/owncloud/client/issues/9405
+https://github.com/owncloud/client/pull/9420
diff --git a/changelog/2.10.1_2022-04-05/9425.md b/changelog/2.10.1_2022-04-05/9425.md
new file mode 100644
index 00000000000..1c6ca9d4de3
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9425.md
@@ -0,0 +1,3 @@
+Bugfix: Fix Account Filter for Server Activity tab
+
+https://github.com/owncloud/client/pull/9481
diff --git a/changelog/2.10.1_2022-04-05/9437.md b/changelog/2.10.1_2022-04-05/9437.md
new file mode 100644
index 00000000000..2cf859ce96a
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9437.md
@@ -0,0 +1,6 @@
+Bugfix: Ensure proper setup of network jobs on retries
+
+On retries network jobs where not properly setup which could
+lead to undefined behaviour.
+
+https://github.com/owncloud/client/pull/9437
diff --git a/changelog/2.10.1_2022-04-05/9460.md b/changelog/2.10.1_2022-04-05/9460.md
new file mode 100644
index 00000000000..b707e090f5d
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9460.md
@@ -0,0 +1,10 @@
+Enhancement: Provide informal German translations
+
+The community was maintaining an informal German translation for years but we were only able to
+provide a single version of German in the client.
+We now ship both versions, the informal can be selected in the combobox in the advanced settings.
+To be able to distinguish between formal and informal locales, we also include the locale
+identifier in the dropdown (e.g., "Deutsch (de-informal)").
+
+https://github.com/owncloud/client/issues/9460
+https://github.com/owncloud/client/pull/9502
diff --git a/changelog/2.10.1_2022-04-05/9489.md b/changelog/2.10.1_2022-04-05/9489.md
new file mode 100644
index 00000000000..5951a12fb31
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9489.md
@@ -0,0 +1,7 @@
+Bugfix: If required clear cookies in more scenarios
+
+BigIp F5 requires special cookie handling on our side.
+We only explicitly cleared the cookies when we hit an unexpected redirect,
+now we will clear them also when refreshing our OAuth token.
+
+https://github.com/owncloud/client/pull/9489
diff --git a/changelog/2.10.1_2022-04-05/9513.md b/changelog/2.10.1_2022-04-05/9513.md
new file mode 100644
index 00000000000..837d7dc994b
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9513.md
@@ -0,0 +1,7 @@
+Bugfix: improve filter pop-up menu and button
+
+- replaced "No filter" option text with "All", to avoid the "No filter is not enabled" situation
+- replace the "Filter" label on the button with "1 Filter"/"2 Filters" when a filter is active, so a user can immediately see that without having to open the filter pop-up
+
+https://github.com/owncloud/client/issues/9425
+https://github.com/owncloud/client/pull/9513
diff --git a/changelog/2.10.1_2022-04-05/9515.md b/changelog/2.10.1_2022-04-05/9515.md
new file mode 100644
index 00000000000..e75aecf2baf
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9515.md
@@ -0,0 +1,5 @@
+Enhancement: Always flush log when logging to stdout
+
+We improved the behaviour of logging to a terminal.
+
+https://github.com/owncloud/client/pull/9515
diff --git a/changelog/2.10.1_2022-04-05/9523.md b/changelog/2.10.1_2022-04-05/9523.md
new file mode 100644
index 00000000000..3d53d1045f4
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9523.md
@@ -0,0 +1,6 @@
+Enhancement: Added branding parameter to disallow duplicated folder sync pairs
+
+We added a branding parameter to disallow the addition of duplicated folder sync pairs in
+the add folder wizard.
+
+https://github.com/owncloud/client/issues/9523
diff --git a/changelog/2.10.1_2022-04-05/9525.md b/changelog/2.10.1_2022-04-05/9525.md
new file mode 100644
index 00000000000..a3744dad2a4
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9525.md
@@ -0,0 +1,7 @@
+Enhancement: Retry update after 10 minutes
+
+When an update (check) fails, it is currently retried only when the regular timeout (10 hours
+by default) is triggered. With this change, we retry the update (check) after 10 minutes already.
+
+https://github.com/owncloud/client/issues/9522
+https://github.com/owncloud/client/pull/9525
diff --git a/changelog/2.10.1_2022-04-05/9533.md b/changelog/2.10.1_2022-04-05/9533.md
new file mode 100644
index 00000000000..4bb8fc43931
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9533.md
@@ -0,0 +1,4 @@
+Bugfix: Possible crash when removing non-existing folder
+
+
+https://github.com/owncloud/client/issues/9533
diff --git a/changelog/2.10.1_2022-04-05/9545.md b/changelog/2.10.1_2022-04-05/9545.md
new file mode 100644
index 00000000000..e7c3835f9b0
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/9545.md
@@ -0,0 +1,5 @@
+Bugfix: Can't stop basic auth login
+
+We fixed a bug where the user was asked for their credentials again and again with no chance to abort.
+
+https://github.com/owncloud/client/issues/9545
diff --git a/changelog/2.10.1_2022-04-05/client-desktop-vfs-win-18.md b/changelog/2.10.1_2022-04-05/client-desktop-vfs-win-18.md
new file mode 100644
index 00000000000..51f48061050
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/client-desktop-vfs-win-18.md
@@ -0,0 +1,5 @@
+Bugfix: Fix potential download failure for renamed file with Windows VFS
+
+When a dehydrated file is renamed and immediately opened, the subsequent download might try to create a file with the original (un-renamed) name.
+
+https://github.com/owncloud/client-desktop-vfs-win/pull/18
diff --git a/changelog/2.10.1_2022-04-05/client-desktop-vfs-win-21.md b/changelog/2.10.1_2022-04-05/client-desktop-vfs-win-21.md
new file mode 100644
index 00000000000..a3a693d8e0a
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/client-desktop-vfs-win-21.md
@@ -0,0 +1,5 @@
+Bugfix: Possible crash when downloading a virtual file on Windows
+
+We fixed a bug that might have caused crashes when working with virtual files on Windows.
+
+https://github.com/owncloud/client-desktop-vfs-win/pull/21
diff --git a/changelog/2.10.1_2022-04-05/enterprise-5052.md b/changelog/2.10.1_2022-04-05/enterprise-5052.md
new file mode 100644
index 00000000000..57728bc5c6f
--- /dev/null
+++ b/changelog/2.10.1_2022-04-05/enterprise-5052.md
@@ -0,0 +1,6 @@
+Bugfix: Don't publish upload if we can't finish the transaction in the client
+
+When a file gets locked during an upload we aborted after the upload finished on the server.
+Resulting in a divergence of the local and remote state which could lead to conflicts.
+
+https://github.com/owncloud/enterprise/issues/5052
diff --git a/changelog/2.11.0_2022-08-18/5174.md b/changelog/2.11.0_2022-08-18/5174.md
new file mode 100644
index 00000000000..fd7d9c3a4b0
--- /dev/null
+++ b/changelog/2.11.0_2022-08-18/5174.md
@@ -0,0 +1,5 @@
+Bugfix: Compare usernames case-insensitive
+
+We fixed a bug where the user name was compared with the name provided by the server in a case-sensitive way.
+
+https://github.com/owncloud/enterprise/issues/5174
diff --git a/changelog/2.11.0_2022-08-18/9571.md b/changelog/2.11.0_2022-08-18/9571.md
new file mode 100644
index 00000000000..07f5f5a2326
--- /dev/null
+++ b/changelog/2.11.0_2022-08-18/9571.md
@@ -0,0 +1,5 @@
+Bugfix: Use UTF-8 for .owncloudsync.log
+
+We fixed a bug where Unicode file names were not correctly displayed in .owncloudsync.log.
+
+https://github.com/owncloud/client/pull/9571
diff --git a/changelog/2.11.0_2022-08-18/9600.md b/changelog/2.11.0_2022-08-18/9600.md
new file mode 100644
index 00000000000..f78da0a9e8c
--- /dev/null
+++ b/changelog/2.11.0_2022-08-18/9600.md
@@ -0,0 +1,5 @@
+Bugfix: Crash when interacting with a folder in an error state
+
+We fixed a crash when using the context menu on a folder that encountered an error and was not using virtual files.
+
+https://github.com/owncloud/client/issues/9600
diff --git a/changelog/2.11.0_2022-08-18/9791.md b/changelog/2.11.0_2022-08-18/9791.md
new file mode 100644
index 00000000000..d8506bd65ba
--- /dev/null
+++ b/changelog/2.11.0_2022-08-18/9791.md
@@ -0,0 +1,5 @@
+Bugfix: Database was recreated after its removal
+
+We fixed a bug where the database was recreated during the removal of a sync folder connection.
+
+https://github.com/owncloud/client/issues/9791
diff --git a/changelog/2.11.0_2022-08-18/9832.md b/changelog/2.11.0_2022-08-18/9832.md
new file mode 100644
index 00000000000..c4ad20ca6c8
--- /dev/null
+++ b/changelog/2.11.0_2022-08-18/9832.md
@@ -0,0 +1,7 @@
+Enhancement: Throttle the UI updates during sync
+
+We reduced the number of UI updates during the sync,
+especially with Windows vfs files this should improve the performance by a lot.
+
+https://github.com/owncloud/client/issues/9832
+https://github.com/owncloud/client/pull/9863
diff --git a/changelog/2.11.0_2022-08-18/9836.md b/changelog/2.11.0_2022-08-18/9836.md
new file mode 100644
index 00000000000..f66399aa476
--- /dev/null
+++ b/changelog/2.11.0_2022-08-18/9836.md
@@ -0,0 +1,6 @@
+Enhancement: Run vfs downloads with a high priority
+
+This should reduce the probability for timeouts when downloading vfs files in the Windows explorer.
+
+https://github.com/owncloud/client/pull/9836
+https://github.com/owncloud/client/issues/9832
diff --git a/changelog/2.11.0_2022-08-18/9864.md b/changelog/2.11.0_2022-08-18/9864.md
new file mode 100644
index 00000000000..08dcd8fb5ee
--- /dev/null
+++ b/changelog/2.11.0_2022-08-18/9864.md
@@ -0,0 +1,3 @@
+Bugfix: We fixed a potential crash
+
+https://github.com/owncloud/client/issues/9864
diff --git a/changelog/2.11.0_2022-08-18/9956.md b/changelog/2.11.0_2022-08-18/9956.md
new file mode 100644
index 00000000000..58a9107a432
--- /dev/null
+++ b/changelog/2.11.0_2022-08-18/9956.md
@@ -0,0 +1,8 @@
+Enhancement: Don't abort sync if a user requests a file
+
+Previously we aborted any running sync if a user requested a file that was not yet available locally.
+This was done to ensure the user does not need to wait for the current sync to finish.
+However, in today's code both actions the download and the sync can run in parallel.
+
+https://github.com/owncloud/client/pull/9956
+https://github.com/owncloud/client/issues/9832
diff --git a/changelog/2.11.0_2022-08-18/9966.md b/changelog/2.11.0_2022-08-18/9966.md
new file mode 100644
index 00000000000..8cb42ae162c
--- /dev/null
+++ b/changelog/2.11.0_2022-08-18/9966.md
@@ -0,0 +1,5 @@
+Bugfix: Windows VFS: Files in an existing folder are dehydrated
+
+We fixed a bug, when a user selects an existing folder as sync root we previously dehydrated all existing files.
+
+https://github.com/owncloud/client/pull/9966
diff --git a/changelog/2.11.0_2022-08-18/9969.md b/changelog/2.11.0_2022-08-18/9969.md
new file mode 100644
index 00000000000..fa7afbfde4e
--- /dev/null
+++ b/changelog/2.11.0_2022-08-18/9969.md
@@ -0,0 +1,5 @@
+Bugfix: Run next scheduled sync after a folder was removed
+
+We fixed a bug where we did not start another sync when a folder that was currently syncing was removed.
+
+https://github.com/owncloud/client/issues/9969
diff --git a/changelog/2.11.0_2022-08-18/client-desktop-vfs-win-34.md b/changelog/2.11.0_2022-08-18/client-desktop-vfs-win-34.md
new file mode 100644
index 00000000000..5ed7e873ee7
--- /dev/null
+++ b/changelog/2.11.0_2022-08-18/client-desktop-vfs-win-34.md
@@ -0,0 +1,6 @@
+Bugfix: Windows VFS: Keep file attributes and pin state
+
+When a user selected "Always keep on this device" on a cloud only file, we lost that information.
+"Always keep on this device" only worked on already present files.
+
+https://github.com/owncloud/client-desktop-vfs-win/pull/34
diff --git a/changelog/2.11.1_2022-08-31/10058.md b/changelog/2.11.1_2022-08-31/10058.md
new file mode 100644
index 00000000000..22520018ee3
--- /dev/null
+++ b/changelog/2.11.1_2022-08-31/10058.md
@@ -0,0 +1,7 @@
+Bugfix: Fix configuration of selective sync from account settings
+
+We fixed a bug that prevented the directory tree in the account settings window from being expanded beyond the root directory level.
+The problem was introduced in 8d0dd36d2.
+
+https://github.com/owncloud/client/pull/10058
+https://github.com/owncloud/client/pull/10065
diff --git a/changelog/2.6.2_2020-02-21/7755 b/changelog/2.6.2_2020-02-21/7755.md
similarity index 100%
rename from changelog/2.6.2_2020-02-21/7755
rename to changelog/2.6.2_2020-02-21/7755.md
diff --git a/changelog/2.6.3_2020-06-10/3922 b/changelog/2.6.3_2020-06-10/3922.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/3922
rename to changelog/2.6.3_2020-06-10/3922.md
diff --git a/changelog/2.6.3_2020-06-10/7018 b/changelog/2.6.3_2020-06-10/7018.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7018
rename to changelog/2.6.3_2020-06-10/7018.md
diff --git a/changelog/2.6.3_2020-06-10/7043 b/changelog/2.6.3_2020-06-10/7043.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7043
rename to changelog/2.6.3_2020-06-10/7043.md
diff --git a/changelog/2.6.3_2020-06-10/7247 b/changelog/2.6.3_2020-06-10/7247.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7247
rename to changelog/2.6.3_2020-06-10/7247.md
diff --git a/changelog/2.6.3_2020-06-10/7313 b/changelog/2.6.3_2020-06-10/7313.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7313
rename to changelog/2.6.3_2020-06-10/7313.md
diff --git a/changelog/2.6.3_2020-06-10/7336 b/changelog/2.6.3_2020-06-10/7336
deleted file mode 100644
index 2ceeeffbab1..00000000000
--- a/changelog/2.6.3_2020-06-10/7336
+++ /dev/null
@@ -1,6 +0,0 @@
-Bugfix: Expand file tree also when no folders are synced
-
-We have fixed the behaviour of the folder Widget,
-when a account was added and none of its folders was selected to be synced, the tree was not expanded.
-
-https://github.com/owncloud/client/issues/7336
diff --git a/changelog/2.6.3_2020-06-10/7336.md b/changelog/2.6.3_2020-06-10/7336.md
new file mode 100644
index 00000000000..9a852cd0294
--- /dev/null
+++ b/changelog/2.6.3_2020-06-10/7336.md
@@ -0,0 +1,6 @@
+Bugfix: Expand file tree also when no folders are synced
+
+We have fixed the behaviour of the folder Widget,
+when an account was added and none of its folders was selected to be synced, the tree was not expanded.
+
+https://github.com/owncloud/client/issues/7336
diff --git a/changelog/2.6.3_2020-06-10/7700 b/changelog/2.6.3_2020-06-10/7700.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7700
rename to changelog/2.6.3_2020-06-10/7700.md
diff --git a/changelog/2.6.3_2020-06-10/7709 b/changelog/2.6.3_2020-06-10/7709.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7709
rename to changelog/2.6.3_2020-06-10/7709.md
diff --git a/changelog/2.6.3_2020-06-10/7710 b/changelog/2.6.3_2020-06-10/7710.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7710
rename to changelog/2.6.3_2020-06-10/7710.md
diff --git a/changelog/2.6.3_2020-06-10/7722 b/changelog/2.6.3_2020-06-10/7722.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7722
rename to changelog/2.6.3_2020-06-10/7722.md
diff --git a/changelog/2.6.3_2020-06-10/7741 b/changelog/2.6.3_2020-06-10/7741.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7741
rename to changelog/2.6.3_2020-06-10/7741.md
diff --git a/changelog/2.6.3_2020-06-10/7744 b/changelog/2.6.3_2020-06-10/7744.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7744
rename to changelog/2.6.3_2020-06-10/7744.md
diff --git a/changelog/2.6.3_2020-06-10/7759 b/changelog/2.6.3_2020-06-10/7759.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7759
rename to changelog/2.6.3_2020-06-10/7759.md
diff --git a/changelog/2.6.3_2020-06-10/7760 b/changelog/2.6.3_2020-06-10/7760
deleted file mode 100644
index 6f50007518b..00000000000
--- a/changelog/2.6.3_2020-06-10/7760
+++ /dev/null
@@ -1,4 +0,0 @@
-Bugfix: Fixed a potential crash on cancelation of discovery jobs
-
-
-https://github.com/owncloud/client/pull/7760
diff --git a/changelog/2.6.3_2020-06-10/7760.md b/changelog/2.6.3_2020-06-10/7760.md
new file mode 100644
index 00000000000..6dc8999f0c4
--- /dev/null
+++ b/changelog/2.6.3_2020-06-10/7760.md
@@ -0,0 +1,4 @@
+Bugfix: Fixed a potential crash on cancellation of discovery jobs
+
+
+https://github.com/owncloud/client/pull/7760
diff --git a/changelog/2.6.3_2020-06-10/7761 b/changelog/2.6.3_2020-06-10/7761.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7761
rename to changelog/2.6.3_2020-06-10/7761.md
diff --git a/changelog/2.6.3_2020-06-10/7762 b/changelog/2.6.3_2020-06-10/7762.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7762
rename to changelog/2.6.3_2020-06-10/7762.md
diff --git a/changelog/2.6.3_2020-06-10/7774 b/changelog/2.6.3_2020-06-10/7774
deleted file mode 100644
index 041cf3772ef..00000000000
--- a/changelog/2.6.3_2020-06-10/7774
+++ /dev/null
@@ -1,5 +0,0 @@
-Bugfix: On Windows the share dialog does not open as the top most window
-
-We now ensure that the our dialogs are correctly raised.
-
-https://github.com/owncloud/client/issues/7774
diff --git a/changelog/2.6.3_2020-06-10/7774.md b/changelog/2.6.3_2020-06-10/7774.md
new file mode 100644
index 00000000000..c849fbc47be
--- /dev/null
+++ b/changelog/2.6.3_2020-06-10/7774.md
@@ -0,0 +1,5 @@
+Bugfix: On Windows the share dialog does not open as the top most window
+
+We now ensure that our dialogs are correctly raised.
+
+https://github.com/owncloud/client/issues/7774
diff --git a/changelog/2.6.3_2020-06-10/7799 b/changelog/2.6.3_2020-06-10/7799.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7799
rename to changelog/2.6.3_2020-06-10/7799.md
diff --git a/changelog/2.6.3_2020-06-10/7831 b/changelog/2.6.3_2020-06-10/7831
deleted file mode 100644
index 56a11bd2925..00000000000
--- a/changelog/2.6.3_2020-06-10/7831
+++ /dev/null
@@ -1,6 +0,0 @@
-Bugfix: Don't override cookies with old values
-
-We fixed a bug where a client somteimes overrode the content of the cookie jar
-with outdated or corrupted values
-
-https://github.com/owncloud/client/pull/7831
diff --git a/changelog/2.6.3_2020-06-10/7831.md b/changelog/2.6.3_2020-06-10/7831.md
new file mode 100644
index 00000000000..e1234630b3b
--- /dev/null
+++ b/changelog/2.6.3_2020-06-10/7831.md
@@ -0,0 +1,6 @@
+Bugfix: Don't override cookies with old values
+
+We fixed a bug where a client sometimes overrode the content of the cookie jar
+with outdated or corrupted values
+
+https://github.com/owncloud/client/pull/7831
diff --git a/changelog/2.6.3_2020-06-10/7856 b/changelog/2.6.3_2020-06-10/7856.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7856
rename to changelog/2.6.3_2020-06-10/7856.md
diff --git a/changelog/2.6.3_2020-06-10/7874 b/changelog/2.6.3_2020-06-10/7874.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7874
rename to changelog/2.6.3_2020-06-10/7874.md
diff --git a/changelog/2.6.3_2020-06-10/7878 b/changelog/2.6.3_2020-06-10/7878.md
similarity index 100%
rename from changelog/2.6.3_2020-06-10/7878
rename to changelog/2.6.3_2020-06-10/7878.md
diff --git a/changelog/2.7.0_2020-11-13/3839 b/changelog/2.7.0_2020-11-13/3839.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/3839
rename to changelog/2.7.0_2020-11-13/3839.md
diff --git a/changelog/2.7.0_2020-11-13/7356 b/changelog/2.7.0_2020-11-13/7356.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7356
rename to changelog/2.7.0_2020-11-13/7356.md
diff --git a/changelog/2.7.0_2020-11-13/7724 b/changelog/2.7.0_2020-11-13/7724.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7724
rename to changelog/2.7.0_2020-11-13/7724.md
diff --git a/changelog/2.7.0_2020-11-13/7748 b/changelog/2.7.0_2020-11-13/7748.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7748
rename to changelog/2.7.0_2020-11-13/7748.md
diff --git a/changelog/2.7.0_2020-11-13/7749 b/changelog/2.7.0_2020-11-13/7749.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7749
rename to changelog/2.7.0_2020-11-13/7749.md
diff --git a/changelog/2.7.0_2020-11-13/7779 b/changelog/2.7.0_2020-11-13/7779.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7779
rename to changelog/2.7.0_2020-11-13/7779.md
diff --git a/changelog/2.7.0_2020-11-13/7833 b/changelog/2.7.0_2020-11-13/7833.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7833
rename to changelog/2.7.0_2020-11-13/7833.md
diff --git a/changelog/2.7.0_2020-11-13/7862 b/changelog/2.7.0_2020-11-13/7862
deleted file mode 100644
index 22498681bfd..00000000000
--- a/changelog/2.7.0_2020-11-13/7862
+++ /dev/null
@@ -1,5 +0,0 @@
-Change: The client uploads chunks even though the server repports lack of support
-
-We now correctly handle the bigfilechunking capability
-
-https://github.com/owncloud/client/issues/7862
diff --git a/changelog/2.7.0_2020-11-13/7862.md b/changelog/2.7.0_2020-11-13/7862.md
new file mode 100644
index 00000000000..46a902820a1
--- /dev/null
+++ b/changelog/2.7.0_2020-11-13/7862.md
@@ -0,0 +1,5 @@
+Change: The client uploads chunks even though the server reports lack of support
+
+We now correctly handle the `bigfilechunking` capability
+
+https://github.com/owncloud/client/issues/7862
diff --git a/changelog/2.7.0_2020-11-13/7868 b/changelog/2.7.0_2020-11-13/7868.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7868
rename to changelog/2.7.0_2020-11-13/7868.md
diff --git a/changelog/2.7.0_2020-11-13/7873 b/changelog/2.7.0_2020-11-13/7873.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7873
rename to changelog/2.7.0_2020-11-13/7873.md
diff --git a/changelog/2.7.0_2020-11-13/7877 b/changelog/2.7.0_2020-11-13/7877
deleted file mode 100644
index 15b28c1bb2e..00000000000
--- a/changelog/2.7.0_2020-11-13/7877
+++ /dev/null
@@ -1,6 +0,0 @@
-Bugfix: Some check boxes in the sharing dialog are disabled
-
-We fixed a bug where the servers default sharing permissions
-where used as limiting factor instead of a defualt selection.
-
-https://github.com/owncloud/client/issues/7877
diff --git a/changelog/2.7.0_2020-11-13/7877.md b/changelog/2.7.0_2020-11-13/7877.md
new file mode 100644
index 00000000000..d2a37740f4a
--- /dev/null
+++ b/changelog/2.7.0_2020-11-13/7877.md
@@ -0,0 +1,6 @@
+Bugfix: Some check boxes in the sharing dialog are disabled
+
+We fixed a bug where the servers default sharing permissions
+where used as limiting factor instead of a default selection.
+
+https://github.com/owncloud/client/issues/7877
diff --git a/changelog/2.7.0_2020-11-13/7881 b/changelog/2.7.0_2020-11-13/7881.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7881
rename to changelog/2.7.0_2020-11-13/7881.md
diff --git a/changelog/2.7.0_2020-11-13/7920 b/changelog/2.7.0_2020-11-13/7920
deleted file mode 100644
index 7193323b75f..00000000000
--- a/changelog/2.7.0_2020-11-13/7920
+++ /dev/null
@@ -1,6 +0,0 @@
-Change: The layout of serveral ui elements is broken
-
-We replace an old layout mechanism with a more advanced one.
-
-https://github.com/owncloud/client/issues/7920
-https://github.com/owncloud/client/issues/7941
diff --git a/changelog/2.7.0_2020-11-13/7920.md b/changelog/2.7.0_2020-11-13/7920.md
new file mode 100644
index 00000000000..c00a21a4ae6
--- /dev/null
+++ b/changelog/2.7.0_2020-11-13/7920.md
@@ -0,0 +1,6 @@
+Change: The layout of several ui elements is broken
+
+We replace an old layout mechanism with a more advanced one.
+
+https://github.com/owncloud/client/issues/7920
+https://github.com/owncloud/client/issues/7941
diff --git a/changelog/2.7.0_2020-11-13/7922 b/changelog/2.7.0_2020-11-13/7922
deleted file mode 100644
index c7a06af3a3a..00000000000
--- a/changelog/2.7.0_2020-11-13/7922
+++ /dev/null
@@ -1,6 +0,0 @@
-Change: The client hides the window during the authentication process
-
-We changed the confusing behavioir and now minimize ownCloud instead.
-This ensures that the window stays accessible.
-
-https://github.com/owncloud/client/pull/7922
diff --git a/changelog/2.7.0_2020-11-13/7922.md b/changelog/2.7.0_2020-11-13/7922.md
new file mode 100644
index 00000000000..ec6c8af798a
--- /dev/null
+++ b/changelog/2.7.0_2020-11-13/7922.md
@@ -0,0 +1,6 @@
+Change: The client hides the window during the authentication process
+
+We changed the confusing behaviour and now minimize ownCloud instead.
+This ensures that the window stays accessible.
+
+https://github.com/owncloud/client/pull/7922
diff --git a/changelog/2.7.0_2020-11-13/7925 b/changelog/2.7.0_2020-11-13/7925.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7925
rename to changelog/2.7.0_2020-11-13/7925.md
diff --git a/changelog/2.7.0_2020-11-13/7962 b/changelog/2.7.0_2020-11-13/7962
deleted file mode 100644
index fdb197bc6a0..00000000000
--- a/changelog/2.7.0_2020-11-13/7962
+++ /dev/null
@@ -1,5 +0,0 @@
-Change: Reorgenize Settings
-
-We rename "General" to "Settings" and move the "Network" into "Settings"
-
-https://github.com/owncloud/client/pull/7962
diff --git a/changelog/2.7.0_2020-11-13/7962.md b/changelog/2.7.0_2020-11-13/7962.md
new file mode 100644
index 00000000000..760f8f941b8
--- /dev/null
+++ b/changelog/2.7.0_2020-11-13/7962.md
@@ -0,0 +1,5 @@
+Change: Reorganize Settings
+
+We rename "General" to "Settings" and move the "Network" into "Settings"
+
+https://github.com/owncloud/client/pull/7962
diff --git a/changelog/2.7.0_2020-11-13/7976 b/changelog/2.7.0_2020-11-13/7976.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7976
rename to changelog/2.7.0_2020-11-13/7976.md
diff --git a/changelog/2.7.0_2020-11-13/7989 b/changelog/2.7.0_2020-11-13/7989.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7989
rename to changelog/2.7.0_2020-11-13/7989.md
diff --git a/changelog/2.7.0_2020-11-13/7999 b/changelog/2.7.0_2020-11-13/7999.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/7999
rename to changelog/2.7.0_2020-11-13/7999.md
diff --git a/changelog/2.7.0_2020-11-13/8018 b/changelog/2.7.0_2020-11-13/8018
deleted file mode 100644
index 0015fb35af4..00000000000
--- a/changelog/2.7.0_2020-11-13/8018
+++ /dev/null
@@ -1,7 +0,0 @@
-Change: Move "Choose what to sync" to sync everything settings
-
-While selective sync is a feature only available when everything is synced,
-the the option had its own radio button.
-We now moved the button to the other sync everything related settings.
-
-https://github.com/owncloud/client/pull/8018
diff --git a/changelog/2.7.0_2020-11-13/8018.md b/changelog/2.7.0_2020-11-13/8018.md
new file mode 100644
index 00000000000..d9dad3abe6d
--- /dev/null
+++ b/changelog/2.7.0_2020-11-13/8018.md
@@ -0,0 +1,7 @@
+Change: Move "Choose what to sync" to sync everything settings
+
+While selective sync is a feature only available when everything is synced,
+the option had its own radio button.
+We now moved the button to the other sync everything related settings.
+
+https://github.com/owncloud/client/pull/8018
diff --git a/changelog/2.7.0_2020-11-13/8019 b/changelog/2.7.0_2020-11-13/8019.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8019
rename to changelog/2.7.0_2020-11-13/8019.md
diff --git a/changelog/2.7.0_2020-11-13/8020 b/changelog/2.7.0_2020-11-13/8020.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8020
rename to changelog/2.7.0_2020-11-13/8020.md
diff --git a/changelog/2.7.0_2020-11-13/8027 b/changelog/2.7.0_2020-11-13/8027.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8027
rename to changelog/2.7.0_2020-11-13/8027.md
diff --git a/changelog/2.7.0_2020-11-13/8038 b/changelog/2.7.0_2020-11-13/8038.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8038
rename to changelog/2.7.0_2020-11-13/8038.md
diff --git a/changelog/2.7.0_2020-11-13/8042 b/changelog/2.7.0_2020-11-13/8042.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8042
rename to changelog/2.7.0_2020-11-13/8042.md
diff --git a/changelog/2.7.0_2020-11-13/8050 b/changelog/2.7.0_2020-11-13/8050.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8050
rename to changelog/2.7.0_2020-11-13/8050.md
diff --git a/changelog/2.7.0_2020-11-13/8051 b/changelog/2.7.0_2020-11-13/8051
deleted file mode 100644
index d3963f9c242..00000000000
--- a/changelog/2.7.0_2020-11-13/8051
+++ /dev/null
@@ -1,5 +0,0 @@
-Bugfix: The back button on the advanced wizard page no longer gets enabled
-
-We fixed a bug where the back button in the advanced wizard page get re enabled.
-
-https://github.com/owncloud/client/issues/8051
diff --git a/changelog/2.7.0_2020-11-13/8051.md b/changelog/2.7.0_2020-11-13/8051.md
new file mode 100644
index 00000000000..4465db391d0
--- /dev/null
+++ b/changelog/2.7.0_2020-11-13/8051.md
@@ -0,0 +1,5 @@
+Bugfix: The back button on the advanced wizard page no longer gets enabled
+
+We fixed a bug where the back button in the advanced wizard page get re-enabled.
+
+https://github.com/owncloud/client/issues/8051
diff --git a/changelog/2.7.0_2020-11-13/8064 b/changelog/2.7.0_2020-11-13/8064.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8064
rename to changelog/2.7.0_2020-11-13/8064.md
diff --git a/changelog/2.7.0_2020-11-13/8066 b/changelog/2.7.0_2020-11-13/8066.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8066
rename to changelog/2.7.0_2020-11-13/8066.md
diff --git a/changelog/2.7.0_2020-11-13/8085 b/changelog/2.7.0_2020-11-13/8085.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8085
rename to changelog/2.7.0_2020-11-13/8085.md
diff --git a/changelog/2.7.0_2020-11-13/8104 b/changelog/2.7.0_2020-11-13/8104.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8104
rename to changelog/2.7.0_2020-11-13/8104.md
diff --git a/changelog/2.7.0_2020-11-13/8127 b/changelog/2.7.0_2020-11-13/8127
deleted file mode 100644
index 5c8ecaea876..00000000000
--- a/changelog/2.7.0_2020-11-13/8127
+++ /dev/null
@@ -1,8 +0,0 @@
-Change: Remove update channels from the ownCloud client
-
-To ensure a maximum of stability user should not replace their productive client with a preview build.
-For that exact reason we offer tespilotcloud clients, they can be installed in parallel and updated via the beta channel.
-
-If a user is more adventures than the average a manual install of a preview is always possible.
-
-https://github.com/owncloud/client/issues/8127
diff --git a/changelog/2.7.0_2020-11-13/8127.md b/changelog/2.7.0_2020-11-13/8127.md
new file mode 100644
index 00000000000..09bbe66f2dd
--- /dev/null
+++ b/changelog/2.7.0_2020-11-13/8127.md
@@ -0,0 +1,8 @@
+Change: Remove update channels from the ownCloud client
+
+To ensure a maximum of stability user should not replace their productive client with a preview build.
+For that exact reason we offer testpilotcloud clients, they can be installed in parallel and updated via the beta channel.
+
+If a user is more adventurous than the average a manual installation of a preview is always possible.
+
+https://github.com/owncloud/client/issues/8127
diff --git a/changelog/2.7.0_2020-11-13/8131 b/changelog/2.7.0_2020-11-13/8131.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8131
rename to changelog/2.7.0_2020-11-13/8131.md
diff --git a/changelog/2.7.0_2020-11-13/8169 b/changelog/2.7.0_2020-11-13/8169.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8169
rename to changelog/2.7.0_2020-11-13/8169.md
diff --git a/changelog/2.7.0_2020-11-13/8170 b/changelog/2.7.0_2020-11-13/8170.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8170
rename to changelog/2.7.0_2020-11-13/8170.md
diff --git a/changelog/2.7.0_2020-11-13/8187 b/changelog/2.7.0_2020-11-13/8187.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/8187
rename to changelog/2.7.0_2020-11-13/8187.md
diff --git a/changelog/2.7.0_2020-11-13/pr-7509 b/changelog/2.7.0_2020-11-13/pr-7509.md
similarity index 100%
rename from changelog/2.7.0_2020-11-13/pr-7509
rename to changelog/2.7.0_2020-11-13/pr-7509.md
diff --git a/changelog/2.7.0_2020-11-13/product-19 b/changelog/2.7.0_2020-11-13/product-19
deleted file mode 100644
index 4a36145dff8..00000000000
--- a/changelog/2.7.0_2020-11-13/product-19
+++ /dev/null
@@ -1,7 +0,0 @@
-Change: Add support for the TUS resumeable upload protocol
-
-With the support of the TUS protocol we are now able to easily and reliably
-upload files to ocis.
-
-
-https://github.com/owncloud/product/issues/19
diff --git a/changelog/2.7.0_2020-11-13/product-19.md b/changelog/2.7.0_2020-11-13/product-19.md
new file mode 100644
index 00000000000..cf5e5028567
--- /dev/null
+++ b/changelog/2.7.0_2020-11-13/product-19.md
@@ -0,0 +1,7 @@
+Change: Add support for the TUS resume-able upload protocol
+
+With the support of the TUS protocol we are now able to easily and reliably
+upload files to oCIS.
+
+
+https://github.com/owncloud/product/issues/19
diff --git a/changelog/2.7.1_2020-11-18/8229 b/changelog/2.7.1_2020-11-18/8229.md
similarity index 100%
rename from changelog/2.7.1_2020-11-18/8229
rename to changelog/2.7.1_2020-11-18/8229.md
diff --git a/changelog/2.7.1_2020-11-18/8232 b/changelog/2.7.1_2020-11-18/8232.md
similarity index 100%
rename from changelog/2.7.1_2020-11-18/8232
rename to changelog/2.7.1_2020-11-18/8232.md
diff --git a/changelog/2.7.2_2020-12-02/8244 b/changelog/2.7.2_2020-12-02/8244.md
similarity index 100%
rename from changelog/2.7.2_2020-12-02/8244
rename to changelog/2.7.2_2020-12-02/8244.md
diff --git a/changelog/2.7.2_2020-12-02/8248 b/changelog/2.7.2_2020-12-02/8248
deleted file mode 100644
index dec7ebd57fe..00000000000
--- a/changelog/2.7.2_2020-12-02/8248
+++ /dev/null
@@ -1,6 +0,0 @@
-Bugfix: Sync small plaintext files with Windows VFS
-
-We fixed a bug where small plaintext files where not synced
-due to a broken interity check.
-
-https://github.com/owncloud/client/issues/8248
diff --git a/changelog/2.7.2_2020-12-02/8248.md b/changelog/2.7.2_2020-12-02/8248.md
new file mode 100644
index 00000000000..ad0f2b5cdfd
--- /dev/null
+++ b/changelog/2.7.2_2020-12-02/8248.md
@@ -0,0 +1,6 @@
+Bugfix: Sync small plaintext files with Windows VFS
+
+We fixed a bug where small plaintext files where not synced
+due to a broken integrity check.
+
+https://github.com/owncloud/client/issues/8248
diff --git a/changelog/2.7.2_2020-12-02/8258 b/changelog/2.7.2_2020-12-02/8258.md
similarity index 100%
rename from changelog/2.7.2_2020-12-02/8258
rename to changelog/2.7.2_2020-12-02/8258.md
diff --git a/changelog/2.7.2_2020-12-02/8263 b/changelog/2.7.2_2020-12-02/8263.md
similarity index 100%
rename from changelog/2.7.2_2020-12-02/8263
rename to changelog/2.7.2_2020-12-02/8263.md
diff --git a/changelog/2.7.3_2020-12-11/8294 b/changelog/2.7.3_2020-12-11/8294.md
similarity index 100%
rename from changelog/2.7.3_2020-12-11/8294
rename to changelog/2.7.3_2020-12-11/8294.md
diff --git a/changelog/2.7.4_2020-12-21/4329 b/changelog/2.7.4_2020-12-21/4329.md
similarity index 100%
rename from changelog/2.7.4_2020-12-21/4329
rename to changelog/2.7.4_2020-12-21/4329.md
diff --git a/changelog/2.7.4_2020-12-21/7672 b/changelog/2.7.4_2020-12-21/7672
deleted file mode 100644
index cd6caadac5b..00000000000
--- a/changelog/2.7.4_2020-12-21/7672
+++ /dev/null
@@ -1,6 +0,0 @@
-Bugfix: Update Windows launch on start entry
-
-We fixed a bug where launch on start did not work after a re install
-to a new location.
-
-https://github.com/owncloud/client/issues/7672
diff --git a/changelog/2.7.4_2020-12-21/7672.md b/changelog/2.7.4_2020-12-21/7672.md
new file mode 100644
index 00000000000..9cb80e16f91
--- /dev/null
+++ b/changelog/2.7.4_2020-12-21/7672.md
@@ -0,0 +1,6 @@
+Bugfix: Update Windows launch on start entry
+
+We fixed a bug where launch on start did not work after a re-install
+to a new location.
+
+https://github.com/owncloud/client/issues/7672
diff --git a/changelog/2.7.4_2020-12-21/8289 b/changelog/2.7.4_2020-12-21/8289.md
similarity index 100%
rename from changelog/2.7.4_2020-12-21/8289
rename to changelog/2.7.4_2020-12-21/8289.md
diff --git a/changelog/2.7.4_2020-12-21/8313 b/changelog/2.7.4_2020-12-21/8313.md
similarity index 100%
rename from changelog/2.7.4_2020-12-21/8313
rename to changelog/2.7.4_2020-12-21/8313.md
diff --git a/changelog/2.7.5_2021-01-28/4363 b/changelog/2.7.5_2021-01-28/4363.md
similarity index 100%
rename from changelog/2.7.5_2021-01-28/4363
rename to changelog/2.7.5_2021-01-28/4363.md
diff --git a/changelog/2.7.5_2021-01-28/8149 b/changelog/2.7.5_2021-01-28/8149.md
similarity index 100%
rename from changelog/2.7.5_2021-01-28/8149
rename to changelog/2.7.5_2021-01-28/8149.md
diff --git a/changelog/2.7.5_2021-01-28/8314 b/changelog/2.7.5_2021-01-28/8314.md
similarity index 100%
rename from changelog/2.7.5_2021-01-28/8314
rename to changelog/2.7.5_2021-01-28/8314.md
diff --git a/changelog/2.7.5_2021-01-28/8323 b/changelog/2.7.5_2021-01-28/8323.md
similarity index 100%
rename from changelog/2.7.5_2021-01-28/8323
rename to changelog/2.7.5_2021-01-28/8323.md
diff --git a/changelog/2.7.5_2021-01-28/8326 b/changelog/2.7.5_2021-01-28/8326.md
similarity index 100%
rename from changelog/2.7.5_2021-01-28/8326
rename to changelog/2.7.5_2021-01-28/8326.md
diff --git a/changelog/2.7.5_2021-01-28/8349 b/changelog/2.7.5_2021-01-28/8349.md
similarity index 100%
rename from changelog/2.7.5_2021-01-28/8349
rename to changelog/2.7.5_2021-01-28/8349.md
diff --git a/changelog/2.7.5_2021-01-28/8390 b/changelog/2.7.5_2021-01-28/8390.md
similarity index 100%
rename from changelog/2.7.5_2021-01-28/8390
rename to changelog/2.7.5_2021-01-28/8390.md
diff --git a/changelog/2.7.6_2021-02-04/4387 b/changelog/2.7.6_2021-02-04/4387.md
similarity index 100%
rename from changelog/2.7.6_2021-02-04/4387
rename to changelog/2.7.6_2021-02-04/4387.md
diff --git a/changelog/2.7.6_2021-02-04/8371 b/changelog/2.7.6_2021-02-04/8371
deleted file mode 100644
index 7849dfb1ce2..00000000000
--- a/changelog/2.7.6_2021-02-04/8371
+++ /dev/null
@@ -1,7 +0,0 @@
-Bugfix: Case sensitive comparison of checksum algorithm
-
-We fixed a bug where the checksum detection was case sensitive
-and used a different casing than the server.
-
-https://github.com/owncloud/client/pull/8371
-https://github.com/owncloud/client/pull/8376
diff --git a/changelog/2.7.6_2021-02-04/8371.md b/changelog/2.7.6_2021-02-04/8371.md
new file mode 100644
index 00000000000..cd16eebd4e5
--- /dev/null
+++ b/changelog/2.7.6_2021-02-04/8371.md
@@ -0,0 +1,7 @@
+Bugfix: Case-sensitive comparison of checksum algorithm
+
+We fixed a bug where the checksum detection was case-sensitive
+and used a different casing than the server.
+
+https://github.com/owncloud/client/pull/8371
+https://github.com/owncloud/client/pull/8376
diff --git a/changelog/2.8.0_2021-05-06/4405 b/changelog/2.8.0_2021-05-06/4405.md
similarity index 100%
rename from changelog/2.8.0_2021-05-06/4405
rename to changelog/2.8.0_2021-05-06/4405.md
diff --git a/changelog/2.8.0_2021-05-06/7838 b/changelog/2.8.0_2021-05-06/7838.md
similarity index 100%
rename from changelog/2.8.0_2021-05-06/7838
rename to changelog/2.8.0_2021-05-06/7838.md
diff --git a/changelog/2.8.0_2021-05-06/8179 b/changelog/2.8.0_2021-05-06/8179.md
similarity index 100%
rename from changelog/2.8.0_2021-05-06/8179
rename to changelog/2.8.0_2021-05-06/8179.md
diff --git a/changelog/2.8.0_2021-05-06/8437 b/changelog/2.8.0_2021-05-06/8437.md
similarity index 100%
rename from changelog/2.8.0_2021-05-06/8437
rename to changelog/2.8.0_2021-05-06/8437.md
diff --git a/changelog/2.8.0_2021-05-06/8482 b/changelog/2.8.0_2021-05-06/8482
deleted file mode 100644
index 68b173eb399..00000000000
--- a/changelog/2.8.0_2021-05-06/8482
+++ /dev/null
@@ -1,5 +0,0 @@
-Bugfix: Fix brandings with space in the name
-
-We fix a build system issue with brandings containing spaces.
-
-https://github.com/owncloud/client/pull/8482
diff --git a/changelog/2.8.0_2021-05-06/8482.md b/changelog/2.8.0_2021-05-06/8482.md
new file mode 100644
index 00000000000..3c5212f4647
--- /dev/null
+++ b/changelog/2.8.0_2021-05-06/8482.md
@@ -0,0 +1,5 @@
+Bugfix: Fix branding with space in the name
+
+We fix a build system issue with branding containing spaces.
+
+https://github.com/owncloud/client/pull/8482
diff --git a/changelog/2.8.0_2021-05-06/8484 b/changelog/2.8.0_2021-05-06/8484.md
similarity index 100%
rename from changelog/2.8.0_2021-05-06/8484
rename to changelog/2.8.0_2021-05-06/8484.md
diff --git a/changelog/2.8.0_2021-05-06/8539 b/changelog/2.8.0_2021-05-06/8539.md
similarity index 100%
rename from changelog/2.8.0_2021-05-06/8539
rename to changelog/2.8.0_2021-05-06/8539.md
diff --git a/changelog/2.8.0_2021-05-06/8550 b/changelog/2.8.0_2021-05-06/8550.md
similarity index 100%
rename from changelog/2.8.0_2021-05-06/8550
rename to changelog/2.8.0_2021-05-06/8550.md
diff --git a/changelog/2.8.1_2021-05-21/8615 b/changelog/2.8.1_2021-05-21/8615.md
similarity index 100%
rename from changelog/2.8.1_2021-05-21/8615
rename to changelog/2.8.1_2021-05-21/8615.md
diff --git a/changelog/2.8.1_2021-05-21/8633 b/changelog/2.8.1_2021-05-21/8633.md
similarity index 100%
rename from changelog/2.8.1_2021-05-21/8633
rename to changelog/2.8.1_2021-05-21/8633.md
diff --git a/changelog/2.8.2_2021-05-28/8272 b/changelog/2.8.2_2021-05-28/8272.md
similarity index 100%
rename from changelog/2.8.2_2021-05-28/8272
rename to changelog/2.8.2_2021-05-28/8272.md
diff --git a/changelog/2.8.2_2021-05-28/8664 b/changelog/2.8.2_2021-05-28/8664.md
similarity index 100%
rename from changelog/2.8.2_2021-05-28/8664
rename to changelog/2.8.2_2021-05-28/8664.md
diff --git a/changelog/2.9.0_2021-09-08/4542 b/changelog/2.9.0_2021-09-08/4542
deleted file mode 100644
index dc52c48247a..00000000000
--- a/changelog/2.9.0_2021-09-08/4542
+++ /dev/null
@@ -1,8 +0,0 @@
-Enhancement: Prefer 127.0.0.1 as oauth redirect url
-
-When using OpenID Connect we now always use http://127.0.0.1
-as redirect url instead of http://localhost, following the recommendations in RFC 8252 (https://tools.ietf.org/html/rfc8252).
-For OAuth2 we added a branding parameter which allows to specify http://127.0.0.1 instead
-of http://localhost.
-
-https://github.com/owncloud/enterprise/issues/4542
diff --git a/changelog/2.9.0_2021-09-08/4542.md b/changelog/2.9.0_2021-09-08/4542.md
new file mode 100644
index 00000000000..b9cba74e602
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/4542.md
@@ -0,0 +1,8 @@
+Enhancement: Prefer 127.0.0.1 as OAuth redirect URL
+
+When using OpenID Connect we now always use http://127.0.0.1
+as redirect URL instead of http://localhost, following the recommendations in RFC 8252 (https://tools.ietf.org/html/rfc8252).
+For OAuth2 we added a branding parameter which allows to specify http://127.0.0.1 instead
+of http://localhost.
+
+https://github.com/owncloud/enterprise/issues/4542
diff --git a/changelog/2.9.0_2021-09-08/4597 b/changelog/2.9.0_2021-09-08/4597.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/4597
rename to changelog/2.9.0_2021-09-08/4597.md
diff --git a/changelog/2.9.0_2021-09-08/4627 b/changelog/2.9.0_2021-09-08/4627.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/4627
rename to changelog/2.9.0_2021-09-08/4627.md
diff --git a/changelog/2.9.0_2021-09-08/4639 b/changelog/2.9.0_2021-09-08/4639.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/4639
rename to changelog/2.9.0_2021-09-08/4639.md
diff --git a/changelog/2.9.0_2021-09-08/5644 b/changelog/2.9.0_2021-09-08/5644.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/5644
rename to changelog/2.9.0_2021-09-08/5644.md
diff --git a/changelog/2.9.0_2021-09-08/7549 b/changelog/2.9.0_2021-09-08/7549.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/7549
rename to changelog/2.9.0_2021-09-08/7549.md
diff --git a/changelog/2.9.0_2021-09-08/7646 b/changelog/2.9.0_2021-09-08/7646
deleted file mode 100644
index e80453ed8b9..00000000000
--- a/changelog/2.9.0_2021-09-08/7646
+++ /dev/null
@@ -1,5 +0,0 @@
-Bugfix: SQLite wal file grows to several gigabyte
-
-We fixed a bug where the SQLite wal file growed until the client was quit.
-
-https://github.com/owncloud/client/issues/7646
diff --git a/changelog/2.9.0_2021-09-08/7646.md b/changelog/2.9.0_2021-09-08/7646.md
new file mode 100644
index 00000000000..79c4f24943f
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/7646.md
@@ -0,0 +1,5 @@
+Bugfix: SQLite wal file grows to several gigabyte
+
+We fixed a bug where the SQLite wal file grew until the client was quit.
+
+https://github.com/owncloud/client/issues/7646
diff --git a/changelog/2.9.0_2021-09-08/7715 b/changelog/2.9.0_2021-09-08/7715
deleted file mode 100644
index 96618ed1c91..00000000000
--- a/changelog/2.9.0_2021-09-08/7715
+++ /dev/null
@@ -1,13 +0,0 @@
-Enhancement: Display the information state in case we encountered ignored errors
-
-If syncing a file fails multiple times we mark it as ignored to skip it for a certain amount of time.
-If we have ignored files we are not in sync, we now don't display the green icon.
-
-Additionally this change aligns the icon displayed in the system tray with the icon displayed in the app.
-
-https://github.com/owncloud/client/issues/7715
-https://github.com/owncloud/client/issues/7365
-https://github.com/owncloud/client/issues/7200
-https://github.com/owncloud/client/issues/5860
-
-https://github.com/owncloud/client/pull/8858
diff --git a/changelog/2.9.0_2021-09-08/7715.md b/changelog/2.9.0_2021-09-08/7715.md
new file mode 100644
index 00000000000..5d22face547
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/7715.md
@@ -0,0 +1,13 @@
+Enhancement: Display the information state in case we encountered ignored errors
+
+If syncing a file fails multiple times we mark it as ignored to skip it for a certain amount of time.
+If we have ignored files we are not in sync, we now don't display the green icon.
+
+Additionally, this change aligns the icon displayed in the system tray with the icon displayed in the app.
+
+https://github.com/owncloud/client/issues/7715
+https://github.com/owncloud/client/issues/7365
+https://github.com/owncloud/client/issues/7200
+https://github.com/owncloud/client/issues/5860
+
+https://github.com/owncloud/client/pull/8858
diff --git a/changelog/2.9.0_2021-09-08/8076 b/changelog/2.9.0_2021-09-08/8076.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8076
rename to changelog/2.9.0_2021-09-08/8076.md
diff --git a/changelog/2.9.0_2021-09-08/8130 b/changelog/2.9.0_2021-09-08/8130.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8130
rename to changelog/2.9.0_2021-09-08/8130.md
diff --git a/changelog/2.9.0_2021-09-08/8158 b/changelog/2.9.0_2021-09-08/8158.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8158
rename to changelog/2.9.0_2021-09-08/8158.md
diff --git a/changelog/2.9.0_2021-09-08/8231 b/changelog/2.9.0_2021-09-08/8231
deleted file mode 100644
index 44b4c198f9f..00000000000
--- a/changelog/2.9.0_2021-09-08/8231
+++ /dev/null
@@ -1,6 +0,0 @@
-Change: Don't ask the user to switch to http
-
-We no longer recommend to use a http connection if a https url
-was not found.
-
-https://github.com/owncloud/client/issues/8231
diff --git a/changelog/2.9.0_2021-09-08/8231.md b/changelog/2.9.0_2021-09-08/8231.md
new file mode 100644
index 00000000000..1eb97f3c2eb
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/8231.md
@@ -0,0 +1,6 @@
+Change: Don't ask the user to switch to http
+
+We no longer recommend to use a http connection if a https URL
+was not found.
+
+https://github.com/owncloud/client/issues/8231
diff --git a/changelog/2.9.0_2021-09-08/8253 b/changelog/2.9.0_2021-09-08/8253.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8253
rename to changelog/2.9.0_2021-09-08/8253.md
diff --git a/changelog/2.9.0_2021-09-08/8273 b/changelog/2.9.0_2021-09-08/8273.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8273
rename to changelog/2.9.0_2021-09-08/8273.md
diff --git a/changelog/2.9.0_2021-09-08/8299 b/changelog/2.9.0_2021-09-08/8299
deleted file mode 100644
index 4b747b5a275..00000000000
--- a/changelog/2.9.0_2021-09-08/8299
+++ /dev/null
@@ -1,8 +0,0 @@
-Change: Ignore the desktop.ini file in every directory, not only in top dir
-
-The windows explorer files called desktop.ini were ignored only in the top
-sync dir so far. They are now ignored in the sync in all directory levels
-of the file tree.
-
-https://github.com/owncloud/client/issues/8298
-https://github.com/owncloud/client/pull/8299
diff --git a/changelog/2.9.0_2021-09-08/8299.md b/changelog/2.9.0_2021-09-08/8299.md
new file mode 100644
index 00000000000..070ba2a1ddb
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/8299.md
@@ -0,0 +1,8 @@
+Change: Ignore the desktop.ini file in every directory, not only in top dir
+
+The Windows explorer files called desktop.ini were ignored only in the top
+sync dir so far. They are now ignored in the sync in all directory levels
+of the file tree.
+
+https://github.com/owncloud/client/issues/8298
+https://github.com/owncloud/client/pull/8299
diff --git a/changelog/2.9.0_2021-09-08/8317 b/changelog/2.9.0_2021-09-08/8317.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8317
rename to changelog/2.9.0_2021-09-08/8317.md
diff --git a/changelog/2.9.0_2021-09-08/8350 b/changelog/2.9.0_2021-09-08/8350.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8350
rename to changelog/2.9.0_2021-09-08/8350.md
diff --git a/changelog/2.9.0_2021-09-08/8366 b/changelog/2.9.0_2021-09-08/8366.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8366
rename to changelog/2.9.0_2021-09-08/8366.md
diff --git a/changelog/2.9.0_2021-09-08/8367 b/changelog/2.9.0_2021-09-08/8367.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8367
rename to changelog/2.9.0_2021-09-08/8367.md
diff --git a/changelog/2.9.0_2021-09-08/8374 b/changelog/2.9.0_2021-09-08/8374
deleted file mode 100644
index 5f87c21c59b..00000000000
--- a/changelog/2.9.0_2021-09-08/8374
+++ /dev/null
@@ -1,6 +0,0 @@
-Change: Include full os version in the about dialog
-
-We now include the os version in the about dialog, this might help us to faster
-pin down os related issues.
-
-https://github.com/owncloud/client/pull/8374
diff --git a/changelog/2.9.0_2021-09-08/8374.md b/changelog/2.9.0_2021-09-08/8374.md
new file mode 100644
index 00000000000..30b991ad334
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/8374.md
@@ -0,0 +1,6 @@
+Change: Include full os version in the about-dialog
+
+We now include the os version in the about-dialog, this might help us to faster
+pin down os related issues.
+
+https://github.com/owncloud/client/pull/8374
diff --git a/changelog/2.9.0_2021-09-08/8398 b/changelog/2.9.0_2021-09-08/8398.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8398
rename to changelog/2.9.0_2021-09-08/8398.md
diff --git a/changelog/2.9.0_2021-09-08/8464 b/changelog/2.9.0_2021-09-08/8464.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8464
rename to changelog/2.9.0_2021-09-08/8464.md
diff --git a/changelog/2.9.0_2021-09-08/8466 b/changelog/2.9.0_2021-09-08/8466.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8466
rename to changelog/2.9.0_2021-09-08/8466.md
diff --git a/changelog/2.9.0_2021-09-08/8467 b/changelog/2.9.0_2021-09-08/8467
deleted file mode 100644
index e3b4e76fc5f..00000000000
--- a/changelog/2.9.0_2021-09-08/8467
+++ /dev/null
@@ -1,7 +0,0 @@
-Enhancement: Attach the last 20 log lines to a crash report
-
-We now save the last 20 lines of log to a tempoary file.
-This file is then part of a crash report.
-
-https://github.com/owncloud/client/issues/8467
-https://github.com/owncloud/client/pull/8469
diff --git a/changelog/2.9.0_2021-09-08/8467.md b/changelog/2.9.0_2021-09-08/8467.md
new file mode 100644
index 00000000000..05b52ba4ce0
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/8467.md
@@ -0,0 +1,7 @@
+Enhancement: Attach the last 20 log lines to a crash report
+
+We now save the last 20 lines of log to a temporary file.
+This file is then part of a crash report.
+
+https://github.com/owncloud/client/issues/8467
+https://github.com/owncloud/client/pull/8469
diff --git a/changelog/2.9.0_2021-09-08/8590 b/changelog/2.9.0_2021-09-08/8590.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8590
rename to changelog/2.9.0_2021-09-08/8590.md
diff --git a/changelog/2.9.0_2021-09-08/8609 b/changelog/2.9.0_2021-09-08/8609.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8609
rename to changelog/2.9.0_2021-09-08/8609.md
diff --git a/changelog/2.9.0_2021-09-08/8665 b/changelog/2.9.0_2021-09-08/8665.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8665
rename to changelog/2.9.0_2021-09-08/8665.md
diff --git a/changelog/2.9.0_2021-09-08/8672 b/changelog/2.9.0_2021-09-08/8672
deleted file mode 100644
index f164cdec116..00000000000
--- a/changelog/2.9.0_2021-09-08/8672
+++ /dev/null
@@ -1,5 +0,0 @@
-Bugfix: Ignore consecutive errors for a pereiode of time
-
-We fixed a bug where certain errors caused a sync run every 30 seconds
-
-https://github.com/owncloud/client/issues/8672
diff --git a/changelog/2.9.0_2021-09-08/8672.md b/changelog/2.9.0_2021-09-08/8672.md
new file mode 100644
index 00000000000..0fae0ea2a76
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/8672.md
@@ -0,0 +1,5 @@
+Bugfix: Ignore consecutive errors for a period of time
+
+We fixed a bug where certain errors caused a sync run every 30 seconds
+
+https://github.com/owncloud/client/issues/8672
diff --git a/changelog/2.9.0_2021-09-08/8729 b/changelog/2.9.0_2021-09-08/8729.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8729
rename to changelog/2.9.0_2021-09-08/8729.md
diff --git a/changelog/2.9.0_2021-09-08/8732 b/changelog/2.9.0_2021-09-08/8732.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8732
rename to changelog/2.9.0_2021-09-08/8732.md
diff --git a/changelog/2.9.0_2021-09-08/8761 b/changelog/2.9.0_2021-09-08/8761
deleted file mode 100644
index 112e851c9d1..00000000000
--- a/changelog/2.9.0_2021-09-08/8761
+++ /dev/null
@@ -1,10 +0,0 @@
-Bugfix: Locked files are not correctly synced
-
-We fixed an issue where files locked by office etc, where not correctly synced,
-when Windows Virtual files are enabled.
-
-https://github.com/owncloud/client/issues/8761
-https://github.com/owncloud/client/issues/8765
-https://github.com/owncloud/client/issues/8766
-https://github.com/owncloud/client/pull/8763
-https://github.com/owncloud/client/pull/8768
diff --git a/changelog/2.9.0_2021-09-08/8761.md b/changelog/2.9.0_2021-09-08/8761.md
new file mode 100644
index 00000000000..0f195865e13
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/8761.md
@@ -0,0 +1,10 @@
+Bugfix: Locked files are not correctly synced
+
+We fixed an issue where files locked by office etc., where not correctly synced,
+when Windows Virtual files are enabled.
+
+https://github.com/owncloud/client/issues/8761
+https://github.com/owncloud/client/issues/8765
+https://github.com/owncloud/client/issues/8766
+https://github.com/owncloud/client/pull/8763
+https://github.com/owncloud/client/pull/8768
diff --git a/changelog/2.9.0_2021-09-08/8780 b/changelog/2.9.0_2021-09-08/8780.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8780
rename to changelog/2.9.0_2021-09-08/8780.md
diff --git a/changelog/2.9.0_2021-09-08/8787 b/changelog/2.9.0_2021-09-08/8787.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8787
rename to changelog/2.9.0_2021-09-08/8787.md
diff --git a/changelog/2.9.0_2021-09-08/8804 b/changelog/2.9.0_2021-09-08/8804.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8804
rename to changelog/2.9.0_2021-09-08/8804.md
diff --git a/changelog/2.9.0_2021-09-08/8811 b/changelog/2.9.0_2021-09-08/8811
deleted file mode 100644
index a8005341a14..00000000000
--- a/changelog/2.9.0_2021-09-08/8811
+++ /dev/null
@@ -1,5 +0,0 @@
-Enhancement: Retry sync on `502 Bad Gateway`
-
-We now treat a `502 Bad Gateway` as an less severer error and directly initialise a retry.
-
-https://github.com/owncloud/client/issues/8811
diff --git a/changelog/2.9.0_2021-09-08/8811.md b/changelog/2.9.0_2021-09-08/8811.md
new file mode 100644
index 00000000000..c5deff90c0e
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/8811.md
@@ -0,0 +1,5 @@
+Enhancement: Retry sync on `502 Bad Gateway`
+
+We now treat a `502 Bad Gateway` as a less severe error and directly initialise a retry.
+
+https://github.com/owncloud/client/issues/8811
diff --git a/changelog/2.9.0_2021-09-08/8812 b/changelog/2.9.0_2021-09-08/8812.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8812
rename to changelog/2.9.0_2021-09-08/8812.md
diff --git a/changelog/2.9.0_2021-09-08/8824 b/changelog/2.9.0_2021-09-08/8824.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8824
rename to changelog/2.9.0_2021-09-08/8824.md
diff --git a/changelog/2.9.0_2021-09-08/8836 b/changelog/2.9.0_2021-09-08/8836.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8836
rename to changelog/2.9.0_2021-09-08/8836.md
diff --git a/changelog/2.9.0_2021-09-08/8837 b/changelog/2.9.0_2021-09-08/8837.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8837
rename to changelog/2.9.0_2021-09-08/8837.md
diff --git a/changelog/2.9.0_2021-09-08/8849 b/changelog/2.9.0_2021-09-08/8849
deleted file mode 100644
index 72ef2ffcc7c..00000000000
--- a/changelog/2.9.0_2021-09-08/8849
+++ /dev/null
@@ -1,8 +0,0 @@
-Bugfix: Prevent sync root sharing
-
-Due to legacy reasons it is possible to let two sync connections
-use the same directory.
-In combination with virtual files this was leading to dataloss however.
-
-https://github.com/owncloud/client/issues/8849
-https://github.com/owncloud/client/issues/8512
diff --git a/changelog/2.9.0_2021-09-08/8849.md b/changelog/2.9.0_2021-09-08/8849.md
new file mode 100644
index 00000000000..7ec954111fa
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/8849.md
@@ -0,0 +1,8 @@
+Bugfix: Prevent sync root sharing
+
+Due to legacy reasons it is possible to let two sync connections
+use the same directory.
+In combination with virtual files this was leading to data-loss, however.
+
+https://github.com/owncloud/client/issues/8849
+https://github.com/owncloud/client/issues/8512
diff --git a/changelog/2.9.0_2021-09-08/8864 b/changelog/2.9.0_2021-09-08/8864.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8864
rename to changelog/2.9.0_2021-09-08/8864.md
diff --git a/changelog/2.9.0_2021-09-08/8866 b/changelog/2.9.0_2021-09-08/8866.md
similarity index 100%
rename from changelog/2.9.0_2021-09-08/8866
rename to changelog/2.9.0_2021-09-08/8866.md
diff --git a/changelog/2.9.0_2021-09-08/8901 b/changelog/2.9.0_2021-09-08/8901
deleted file mode 100644
index 9bfcddb93a1..00000000000
--- a/changelog/2.9.0_2021-09-08/8901
+++ /dev/null
@@ -1,6 +0,0 @@
-Bugfix: Start oauth/password prompt if password is wrong during start up
-
-If the oauth token was invalid during start up we didn't start the oauth process
-and the user needed to manually log out in order to log in again.
-
-https://github.com/owncloud/client/issues/8901
diff --git a/changelog/2.9.0_2021-09-08/8901.md b/changelog/2.9.0_2021-09-08/8901.md
new file mode 100644
index 00000000000..cc72edc28e2
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/8901.md
@@ -0,0 +1,6 @@
+Bugfix: Start OAuth/password prompt if password is wrong during start up
+
+If the OAuth token was invalid during start up we didn't start the OAuth process
+and the user needed to manually log out in order to log in again.
+
+https://github.com/owncloud/client/issues/8901
diff --git a/changelog/2.9.0_2021-09-08/8940 b/changelog/2.9.0_2021-09-08/8940
deleted file mode 100644
index 2e25cbbb083..00000000000
--- a/changelog/2.9.0_2021-09-08/8940
+++ /dev/null
@@ -1,5 +0,0 @@
-Bugfix: Handle timeouts occurring during oauth
-
-We now handle timeouts occurring during oauth.
-
-https://github.com/owncloud/client/pull/8940
diff --git a/changelog/2.9.0_2021-09-08/8940.md b/changelog/2.9.0_2021-09-08/8940.md
new file mode 100644
index 00000000000..e076d9a7af6
--- /dev/null
+++ b/changelog/2.9.0_2021-09-08/8940.md
@@ -0,0 +1,5 @@
+Bugfix: Handle timeouts occurring during OAuth
+
+We now handle timeouts occurring during OAuth.
+
+https://github.com/owncloud/client/pull/8940
diff --git a/changelog/2.9.1_2021-10-13/8421 b/changelog/2.9.1_2021-10-13/8421.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/8421
rename to changelog/2.9.1_2021-10-13/8421.md
diff --git a/changelog/2.9.1_2021-10-13/8806 b/changelog/2.9.1_2021-10-13/8806
deleted file mode 100644
index 927e89536ca..00000000000
--- a/changelog/2.9.1_2021-10-13/8806
+++ /dev/null
@@ -1,7 +0,0 @@
-Bugfix: Enforce rtl layout with rtl languages
-
-We fixed a bug where setting the language to a right to left language on mac
-did not change the layout of the application.
-
-https://github.com/owncloud/client/issues/8806
-https://github.com/owncloud/client/pull/8981
diff --git a/changelog/2.9.1_2021-10-13/8806.md b/changelog/2.9.1_2021-10-13/8806.md
new file mode 100644
index 00000000000..9534fccafa6
--- /dev/null
+++ b/changelog/2.9.1_2021-10-13/8806.md
@@ -0,0 +1,7 @@
+Bugfix: Enforce rtl layout with rtl languages
+
+We fixed a bug where setting the language to a right to left language on Mac
+did not change the layout of the application.
+
+https://github.com/owncloud/client/issues/8806
+https://github.com/owncloud/client/pull/8981
diff --git a/changelog/2.9.1_2021-10-13/8920 b/changelog/2.9.1_2021-10-13/8920
deleted file mode 100644
index e5a2519046d..00000000000
--- a/changelog/2.9.1_2021-10-13/8920
+++ /dev/null
@@ -1,5 +0,0 @@
-Bugfix: Broken url in branded builds
-
-We fixed a string issue with branded builds resulting in invalid urls.
-
-https://github.com/owncloud/client/issues/8920
diff --git a/changelog/2.9.1_2021-10-13/8920.md b/changelog/2.9.1_2021-10-13/8920.md
new file mode 100644
index 00000000000..ca66797ecbf
--- /dev/null
+++ b/changelog/2.9.1_2021-10-13/8920.md
@@ -0,0 +1,5 @@
+Bugfix: Broken URL in branded builds
+
+We fixed a string issue with branded builds resulting in invalid urls.
+
+https://github.com/owncloud/client/issues/8920
diff --git a/changelog/2.9.1_2021-10-13/8994 b/changelog/2.9.1_2021-10-13/8994.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/8994
rename to changelog/2.9.1_2021-10-13/8994.md
diff --git a/changelog/2.9.1_2021-10-13/8996 b/changelog/2.9.1_2021-10-13/8996.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/8996
rename to changelog/2.9.1_2021-10-13/8996.md
diff --git a/changelog/2.9.1_2021-10-13/9006 b/changelog/2.9.1_2021-10-13/9006.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/9006
rename to changelog/2.9.1_2021-10-13/9006.md
diff --git a/changelog/2.9.1_2021-10-13/9010 b/changelog/2.9.1_2021-10-13/9010.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/9010
rename to changelog/2.9.1_2021-10-13/9010.md
diff --git a/changelog/2.9.1_2021-10-13/9012 b/changelog/2.9.1_2021-10-13/9012.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/9012
rename to changelog/2.9.1_2021-10-13/9012.md
diff --git a/changelog/2.9.1_2021-10-13/9014 b/changelog/2.9.1_2021-10-13/9014.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/9014
rename to changelog/2.9.1_2021-10-13/9014.md
diff --git a/changelog/2.9.1_2021-10-13/9016 b/changelog/2.9.1_2021-10-13/9016.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/9016
rename to changelog/2.9.1_2021-10-13/9016.md
diff --git a/changelog/2.9.1_2021-10-13/9019 b/changelog/2.9.1_2021-10-13/9019
deleted file mode 100644
index a4058229f17..00000000000
--- a/changelog/2.9.1_2021-10-13/9019
+++ /dev/null
@@ -1,19 +0,0 @@
-Bugfix: A upgrade to 2.9 causes the usage of a new journal file
-
-We fixed a bug where the name of the sync journal was not properly saved to the settings.
-This caused a bug when migration to 2.9, so a new a new sync journal was created.
-
-This not only caused the loss of some selective sync settings, but also caused the display of the following warning message:
-
-```
-Multiple accounts are sharing the folder.
-This configuration is know to lead to dataloss and is no longer supported.
-Please consider removing this folder from the account and adding it again.
-```
-
-We also removed the account info infix from the sync db used with the cmd client.
-
-https://github.com/owncloud/client/issues/9019
-https://github.com/owncloud/client/pull/9028
-https://github.com/owncloud/client/pull/9046
-https://github.com/owncloud/client/pull/9054
diff --git a/changelog/2.9.1_2021-10-13/9019.md b/changelog/2.9.1_2021-10-13/9019.md
new file mode 100644
index 00000000000..87edf40389f
--- /dev/null
+++ b/changelog/2.9.1_2021-10-13/9019.md
@@ -0,0 +1,19 @@
+Bugfix: A upgrade to 2.9 causes the usage of a new journal file
+
+We fixed a bug where the name of the sync journal was not properly saved to the settings.
+This caused a bug when migration to 2.9, so a new sync journal was created.
+
+This not only caused the loss of some selective sync settings, but also caused the display of the following warning message:
+
+```
+Multiple accounts are sharing the folder.
+This configuration is know to lead to dataloss and is no longer supported.
+Please consider removing this folder from the account and adding it again.
+```
+
+We also removed the account info infix from the sync db used with the cmd client.
+
+https://github.com/owncloud/client/issues/9019
+https://github.com/owncloud/client/pull/9028
+https://github.com/owncloud/client/pull/9046
+https://github.com/owncloud/client/pull/9054
diff --git a/changelog/2.9.1_2021-10-13/9022 b/changelog/2.9.1_2021-10-13/9022.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/9022
rename to changelog/2.9.1_2021-10-13/9022.md
diff --git a/changelog/2.9.1_2021-10-13/9026 b/changelog/2.9.1_2021-10-13/9026.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/9026
rename to changelog/2.9.1_2021-10-13/9026.md
diff --git a/changelog/2.9.1_2021-10-13/9057 b/changelog/2.9.1_2021-10-13/9057.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/9057
rename to changelog/2.9.1_2021-10-13/9057.md
diff --git a/changelog/2.9.1_2021-10-13/9093 b/changelog/2.9.1_2021-10-13/9093.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/9093
rename to changelog/2.9.1_2021-10-13/9093.md
diff --git a/changelog/2.9.1_2021-10-13/9114 b/changelog/2.9.1_2021-10-13/9114.md
similarity index 100%
rename from changelog/2.9.1_2021-10-13/9114
rename to changelog/2.9.1_2021-10-13/9114.md
diff --git a/changelog/2.9.2_2021-11-24/8979 b/changelog/2.9.2_2021-11-24/8979.md
similarity index 100%
rename from changelog/2.9.2_2021-11-24/8979
rename to changelog/2.9.2_2021-11-24/8979.md
diff --git a/changelog/2.9.2_2021-11-24/9159 b/changelog/2.9.2_2021-11-24/9159
deleted file mode 100644
index 88b89bf2823..00000000000
--- a/changelog/2.9.2_2021-11-24/9159
+++ /dev/null
@@ -1,6 +0,0 @@
-Bugfix: Disable vfs option is ignored
-
-We fixed a branding issue where vfs was used even when the parameter was set to disabled.
-
-https://github.com/owncloud/client/issues/9159
-https://github.com/owncloud/enterprise/issues/4820
diff --git a/changelog/2.9.2_2021-11-24/9159.md b/changelog/2.9.2_2021-11-24/9159.md
new file mode 100644
index 00000000000..e67f122efc2
--- /dev/null
+++ b/changelog/2.9.2_2021-11-24/9159.md
@@ -0,0 +1,6 @@
+Bugfix: Disable vfs option is ignored
+
+We fixed a branding issue where vfs was used even when the parameter was not enabled.
+
+https://github.com/owncloud/client/issues/9159
+https://github.com/owncloud/enterprise/issues/4820
diff --git a/changelog/2.9.2_2021-11-24/9167 b/changelog/2.9.2_2021-11-24/9167.md
similarity index 100%
rename from changelog/2.9.2_2021-11-24/9167
rename to changelog/2.9.2_2021-11-24/9167.md
diff --git a/changelog/2.9.2_2021-11-24/9202 b/changelog/2.9.2_2021-11-24/9202
deleted file mode 100644
index ee2326afd4d..00000000000
--- a/changelog/2.9.2_2021-11-24/9202
+++ /dev/null
@@ -1,8 +0,0 @@
-Bugfix: The client no longer idles after a minor url change
-
-When the client detects a change of the url we ask the user to accept
-the change or if it was only representational change (demo.com vs demo.com/) we directly accept the change.
-Due to a bug the we aborted the sync only after we updated the url.
-This caused the client to idle for one minute.
-
-https://github.com/owncloud/client/pull/9202
diff --git a/changelog/2.9.2_2021-11-24/9202.md b/changelog/2.9.2_2021-11-24/9202.md
new file mode 100644
index 00000000000..e402a4ea69d
--- /dev/null
+++ b/changelog/2.9.2_2021-11-24/9202.md
@@ -0,0 +1,8 @@
+Bugfix: The client no longer idles after a minor URL change
+
+When the client detects a change of the URL we ask the user to accept
+the change or if it was only representational change (demo.com vs demo.com/) we directly accept the change.
+Due to a bug we aborted the sync only after we updated the URL.
+This caused the client to idle for one minute.
+
+https://github.com/owncloud/client/pull/9202
diff --git a/changelog/2.9.2_2021-11-24/9216 b/changelog/2.9.2_2021-11-24/9216.md
similarity index 100%
rename from changelog/2.9.2_2021-11-24/9216
rename to changelog/2.9.2_2021-11-24/9216.md
diff --git a/changelog/2.9.2_2021-11-24/9224 b/changelog/2.9.2_2021-11-24/9224.md
similarity index 100%
rename from changelog/2.9.2_2021-11-24/9224
rename to changelog/2.9.2_2021-11-24/9224.md
diff --git a/changelog/3.0.0_2022-11-30/10007.md b/changelog/3.0.0_2022-11-30/10007.md
new file mode 100644
index 00000000000..544b29c212c
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10007.md
@@ -0,0 +1,6 @@
+Bugfix: Don't unset implicit log flush
+
+Since https://github.com/owncloud/client/pull/9515 we flush the log if the output is stdout.
+We fixed a bug which disabled it again.
+
+https://github.com/owncloud/client/pull/9515
diff --git a/changelog/3.0.0_2022-11-30/10017.md b/changelog/3.0.0_2022-11-30/10017.md
new file mode 100644
index 00000000000..09f061aef9e
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10017.md
@@ -0,0 +1,5 @@
+Bugfix: We fixed a crash
+
+We fixed a crash that could occur after a folder reported a setup error
+
+https://github.com/owncloud/client/pull/10017
diff --git a/changelog/3.0.0_2022-11-30/10031.md b/changelog/3.0.0_2022-11-30/10031.md
new file mode 100644
index 00000000000..08af859ca57
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10031.md
@@ -0,0 +1,5 @@
+Enhancement: Windows VFS download speed improvement
+
+We improved the performance of downloads performed on virtual files in the Windows Explorer.
+
+https://github.com/owncloud/client/issues/10031
diff --git a/changelog/3.0.0_2022-11-30/10101.md b/changelog/3.0.0_2022-11-30/10101.md
new file mode 100644
index 00000000000..84b8b564f69
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10101.md
@@ -0,0 +1,4 @@
+Bugfix: Sync status changes are now directly displayed
+
+
+https://github.com/owncloud/client/issues/10101
diff --git a/changelog/3.0.0_2022-11-30/10104.md b/changelog/3.0.0_2022-11-30/10104.md
new file mode 100644
index 00000000000..24540e6094c
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10104.md
@@ -0,0 +1,6 @@
+Enhancement: Add a `prefer: minimal` header to PROPFIND
+
+This will not return missing attribs in the reply in a 404 not found status propset.
+That reduces the amount of transferred data significant.
+
+https://github.com/owncloud/client/pull/10104
diff --git a/changelog/3.0.0_2022-11-30/10135.md b/changelog/3.0.0_2022-11-30/10135.md
new file mode 100644
index 00000000000..45f114d2359
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10135.md
@@ -0,0 +1,5 @@
+Enhancement: Allow creation of sync roots with long paths
+
+Until now, we were only able to create a .sync_journal.db in a path with less than 260 characters.
+
+https://github.com/owncloud/client/pull/10135/
diff --git a/changelog/3.0.0_2022-11-30/10136.md b/changelog/3.0.0_2022-11-30/10136.md
new file mode 100644
index 00000000000..452350dbcbd
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10136.md
@@ -0,0 +1,6 @@
+Enhancement: Windows add longPath awareness
+
+Requires Windows 10 newer than 1607 and the registry key to be enabled see:
+https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation?tabs=registry#enable-long-paths-in-windows-10-version-1607-and-later
+
+https://github.com/owncloud/client/pull/10136
diff --git a/changelog/3.0.0_2022-11-30/10142.md b/changelog/3.0.0_2022-11-30/10142.md
new file mode 100644
index 00000000000..9359491194e
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10142.md
@@ -0,0 +1,5 @@
+Enhancement: Estimate duration of network requests in httplogger
+
+We now include an estimated duration in the httplogger.
+
+https://github.com/owncloud/client/pull/10142
diff --git a/changelog/3.0.0_2022-11-30/10184.md b/changelog/3.0.0_2022-11-30/10184.md
new file mode 100644
index 00000000000..181a92f02fb
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10184.md
@@ -0,0 +1,6 @@
+Change: Windows: Update the folder icon on every start
+
+The ownCloud installation path might have changed, causing the desktop.ini to point at the wrong path.
+We now update the icon location on every application start.
+
+https://github.com/owncloud/client/issues/10184
diff --git a/changelog/3.0.0_2022-11-30/10193.md b/changelog/3.0.0_2022-11-30/10193.md
new file mode 100644
index 00000000000..5021e9b5a20
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10193.md
@@ -0,0 +1,5 @@
+Change: Don't guess remote folder in owncloudcmd
+
+The commandline client was modified to explicitly accept remote folder, the remote folder must no longer be encoded in the server URL.
+
+https://github.com/owncloud/client/issues/10193
diff --git a/changelog/3.0.0_2022-11-30/10206.md b/changelog/3.0.0_2022-11-30/10206.md
new file mode 100644
index 00000000000..71bbd3b5b82
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10206.md
@@ -0,0 +1,5 @@
+Change: When connected to oCIS, open the browser instead of the sharing dialog
+
+When connected to oCIS, we now open the browser and navigate to the file the user wanted to share instead of opening the legacy sharing dialog.
+
+https://github.com/owncloud/client/issues/10206
diff --git a/changelog/3.0.0_2022-11-30/10239.md b/changelog/3.0.0_2022-11-30/10239.md
new file mode 100644
index 00000000000..10ba6a528e4
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10239.md
@@ -0,0 +1,6 @@
+Change: owncloudcmd oCIS support
+
+When using oCIS and spaces with the cmd client the additional parameter `--server` is required.
+`--server` specifies the URL to the server, while the positional parameter 'server_url' specifies the WebDAV URL.
+
+https://github.com/owncloud/client/pull/10239
diff --git a/changelog/3.0.0_2022-11-30/10310.md b/changelog/3.0.0_2022-11-30/10310.md
new file mode 100644
index 00000000000..e6a84228c53
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/10310.md
@@ -0,0 +1,6 @@
+Enhancement: Tweak logging format
+
+The logging format is now better parseable for 3rdparty apps
+that ease debugging.
+
+https://github.com/owncloud/client/pull/10310
diff --git a/changelog/3.0.0_2022-11-30/49.md b/changelog/3.0.0_2022-11-30/49.md
new file mode 100644
index 00000000000..ef2e80aaa44
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/49.md
@@ -0,0 +1,5 @@
+Bugfix: Windows VFS fixed some failing downloads
+
+We fixed an api issue where some downloads in the Explorer caused infinite download restarts.
+
+https://github.com/owncloud/client-desktop-vfs-win/pull/49
diff --git a/changelog/3.0.0_2022-11-30/5382.md b/changelog/3.0.0_2022-11-30/5382.md
new file mode 100644
index 00000000000..8d2447de681
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/5382.md
@@ -0,0 +1,3 @@
+Bugfix: Don't trigger ignore list when files are locked on the server
+
+https://github.com/owncloud/enterprise/issues/5382
diff --git a/changelog/3.0.0_2022-11-30/5382_2.md b/changelog/3.0.0_2022-11-30/5382_2.md
new file mode 100644
index 00000000000..a1559ee9b92
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/5382_2.md
@@ -0,0 +1,4 @@
+Bugfix: Properly resume upload with a partial local discovery
+
+https://github.com/owncloud/enterprise/issues/5382
+https://github.com/owncloud/client/pull/10200
diff --git a/changelog/unreleased/7348 b/changelog/3.0.0_2022-11-30/7348.md
similarity index 100%
rename from changelog/unreleased/7348
rename to changelog/3.0.0_2022-11-30/7348.md
diff --git a/changelog/3.0.0_2022-11-30/8234.md b/changelog/3.0.0_2022-11-30/8234.md
new file mode 100644
index 00000000000..b9fe403991c
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/8234.md
@@ -0,0 +1,5 @@
+Enhancement: Display `Show ownCloud` instead of `Settings` in systray
+
+We changed the menu entry to align its name with is function.
+
+https://github.com/owncloud/client/issues/8234
diff --git a/changelog/3.0.0_2022-11-30/8595.md b/changelog/3.0.0_2022-11-30/8595.md
new file mode 100644
index 00000000000..f146f7dd284
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/8595.md
@@ -0,0 +1,4 @@
+Bugfix: Don't display a context-menu on the root folder
+
+
+https://github.com/owncloud/client/issues/8595
diff --git a/changelog/3.0.0_2022-11-30/8923.md b/changelog/3.0.0_2022-11-30/8923.md
new file mode 100644
index 00000000000..143523aa326
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/8923.md
@@ -0,0 +1,8 @@
+Enhancement: Built-in AppImage self-updater
+
+In release 2.10, we introduced a preview on our future AppImage packaging for Linux distributions.
+Now, these AppImages can self-update using a built-in `libappimageupdate` based updater and
+ownCloud's update infrastructure.
+
+https://github.com/owncloud/client/issues/8923
+https://github.com/owncloud/client/pull/9376
diff --git a/changelog/3.0.0_2022-11-30/8938.md b/changelog/3.0.0_2022-11-30/8938.md
new file mode 100644
index 00000000000..d0f2184d444
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/8938.md
@@ -0,0 +1,7 @@
+Change: Make share-dialog preview be more resilient
+
+We no longer enforce png thumbnails.
+We no longer replace the file icon if the thumbnail is invalid.
+
+https://github.com/owncloud/client/issues/8938
+https://github.com/owncloud/client/pull/8939
diff --git a/changelog/3.0.0_2022-11-30/8998.md b/changelog/3.0.0_2022-11-30/8998.md
new file mode 100644
index 00000000000..e851ae4b71a
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/8998.md
@@ -0,0 +1,5 @@
+Enhancement: Don't query private links if disabled on the server
+
+https://github.com/owncloud/client/issues/8998
+https://github.com/owncloud/client/pull/9840
+https://github.com/owncloud/client/pull/9964
diff --git a/changelog/3.0.0_2022-11-30/9048.md b/changelog/3.0.0_2022-11-30/9048.md
new file mode 100644
index 00000000000..67a28daf41f
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9048.md
@@ -0,0 +1,5 @@
+Bugfix: Fix copy URL location for private links
+
+We fixed a bug where a placeholder was copied to the clipboard instead of the URL.
+
+https://github.com/owncloud/client/issues/9048
diff --git a/changelog/3.0.0_2022-11-30/9082.md b/changelog/3.0.0_2022-11-30/9082.md
new file mode 100644
index 00000000000..97cf81b1527
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9082.md
@@ -0,0 +1,5 @@
+Enhancement: Add CMakeOption WITH_AUTO_UPDATER
+
+WITH_AUTO_UPDATER allows to build the client without the auto updater.
+
+https://github.com/owncloud/client/issues/9082
diff --git a/changelog/3.0.0_2022-11-30/9472.md b/changelog/3.0.0_2022-11-30/9472.md
new file mode 100644
index 00000000000..463fe6da16a
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9472.md
@@ -0,0 +1,6 @@
+Bugfix: Fix status of files uploaded with TUS
+
+Setting the upload status of files uploaded with TUS failed as we
+were still using the file.
+
+https://github.com/owncloud/client/pull/9472
diff --git a/changelog/3.0.0_2022-11-30/9482.md b/changelog/3.0.0_2022-11-30/9482.md
new file mode 100644
index 00000000000..606cd0804fa
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9482.md
@@ -0,0 +1,22 @@
+Enhancement: Rewrite wizard from scratch
+
+We completely rewrote the wizard from scratch. The new wizard provides greater
+flexibility and makes adding new features easier in the future. It has also
+been redesigned to improve the user experience.
+
+https://github.com/owncloud/client/issues/9249
+https://github.com/owncloud/client/pull/9482
+https://github.com/owncloud/client/pull/9563
+https://github.com/owncloud/client/pull/9566
+https://github.com/owncloud/client/pull/9577
+https://github.com/owncloud/client/pull/9596
+https://github.com/owncloud/client/pull/9606
+https://github.com/owncloud/client/pull/9621
+https://github.com/owncloud/client/pull/9629
+https://github.com/owncloud/client/pull/9636
+https://github.com/owncloud/client/pull/9637
+https://github.com/owncloud/client/pull/9642
+https://github.com/owncloud/client/pull/9643
+https://github.com/owncloud/client/pull/9697
+https://github.com/owncloud/client/pull/9720
+https://github.com/owncloud/client/pull/9746
diff --git a/changelog/3.0.0_2022-11-30/9495.md b/changelog/3.0.0_2022-11-30/9495.md
new file mode 100644
index 00000000000..e6bab9ed7c1
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9495.md
@@ -0,0 +1,5 @@
+Change: We no longer persist cookies
+
+We no longer persist cookies over multiple client sessions.
+
+https://github.com/owncloud/client/issues/9495
diff --git a/changelog/3.0.0_2022-11-30/9538.md b/changelog/3.0.0_2022-11-30/9538.md
new file mode 100644
index 00000000000..ae73b3bc43e
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9538.md
@@ -0,0 +1,5 @@
+Enhancement: Remove use of legacy DAV endpoint
+
+We no longer guess the DAV endpoint depending on the chunking-ng feature.
+
+https://github.com/owncloud/client/pull/9538
diff --git a/changelog/3.0.0_2022-11-30/9574.md b/changelog/3.0.0_2022-11-30/9574.md
new file mode 100644
index 00000000000..eb332605672
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9574.md
@@ -0,0 +1,6 @@
+Bugfix: The condition for the read only files menu was inverted
+
+We fixed a bug where we displayed solutions to fix issues with
+read only files for readable files and vise versa.
+
+https://github.com/owncloud/client/issues/9574
diff --git a/changelog/3.0.0_2022-11-30/9575.md b/changelog/3.0.0_2022-11-30/9575.md
new file mode 100644
index 00000000000..7e3bdf6f08c
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9575.md
@@ -0,0 +1,6 @@
+Enhancement: Support for oCIS Spaces
+
+We added support to sync oCIS Spaces.
+
+https://github.com/owncloud/client/pull/9154
+https://github.com/owncloud/client/pull/9575/
diff --git a/changelog/3.0.0_2022-11-30/9578.md b/changelog/3.0.0_2022-11-30/9578.md
new file mode 100644
index 00000000000..2cfde962f8e
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9578.md
@@ -0,0 +1,3 @@
+Change: We removed support for ownCloud servers < 10.0
+
+https://github.com/owncloud/client/issues/9578
diff --git a/changelog/3.0.0_2022-11-30/9585.md b/changelog/3.0.0_2022-11-30/9585.md
new file mode 100644
index 00000000000..2c8e33787ca
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9585.md
@@ -0,0 +1,3 @@
+Change: Drop socket upload job
+
+https://github.com/owncloud/client/issues/9585
diff --git a/changelog/3.0.0_2022-11-30/9598.md b/changelog/3.0.0_2022-11-30/9598.md
new file mode 100644
index 00000000000..acdb7d27bf0
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9598.md
@@ -0,0 +1,6 @@
+Enhancement: Set Windows VFS placeholders readonly if needed
+
+We now properly set the read only flag on Windows virtual files.
+
+https://github.com/owncloud/client/issues/9598
+https://github.com/owncloud/client-desktop-vfs-win/issues/24
diff --git a/changelog/3.0.0_2022-11-30/9618.md b/changelog/3.0.0_2022-11-30/9618.md
new file mode 100644
index 00000000000..0d956cd9518
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9618.md
@@ -0,0 +1,5 @@
+Change: Remove support for Windows 7 sidebar links
+
+We removed the support for Windows < 10 sidebar links.
+
+https://github.com/owncloud/client/pull/9618
diff --git a/changelog/3.0.0_2022-11-30/9655.md b/changelog/3.0.0_2022-11-30/9655.md
new file mode 100644
index 00000000000..1b2dcda8c9e
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9655.md
@@ -0,0 +1,7 @@
+Change: Rewrote TLS error handling
+
+We rewrote the way we handle TLS errors.
+
+https://github.com/owncloud/client/issues/9655
+https://github.com/owncloud/client/pull/9643
+https://github.com/owncloud/client/pull/9667
diff --git a/changelog/3.0.0_2022-11-30/9675.md b/changelog/3.0.0_2022-11-30/9675.md
new file mode 100644
index 00000000000..23ac73ac419
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9675.md
@@ -0,0 +1,3 @@
+Change: We removed the TLS certificate button from the account page
+
+https://github.com/owncloud/client/pull/9675
diff --git a/changelog/3.0.0_2022-11-30/9681.md b/changelog/3.0.0_2022-11-30/9681.md
new file mode 100644
index 00000000000..f56edc43eca
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9681.md
@@ -0,0 +1,5 @@
+Bugfix: Deadlock in folder context menu in a folder selection dialog
+
+We fixed a deadlock when a user requested a context menu in a folder selection dialog on Windows.
+
+https://github.com/owncloud/client/issues/9681
diff --git a/changelog/3.0.0_2022-11-30/9724.md b/changelog/3.0.0_2022-11-30/9724.md
new file mode 100644
index 00000000000..17bc5eb30e8
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9724.md
@@ -0,0 +1,5 @@
+Change: Add "open in web editor" feature
+
+We now provide the option to open files in an online office suite from the local file browser context menu, provided the server offers integration with one of the supported services.
+
+https://github.com/owncloud/client/issues/9724
diff --git a/changelog/3.0.0_2022-11-30/9725.md b/changelog/3.0.0_2022-11-30/9725.md
new file mode 100644
index 00000000000..53c5e821a99
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9725.md
@@ -0,0 +1,6 @@
+Bugfix: Fix never ending sync
+
+Under certain conditions an upload could enter a state were it would never finish.
+The client would wait for that upload so only a restart of the client or a manual abort of the sync could resolve the issue.
+
+https://github.com/owncloud/client/issues/9725
diff --git a/changelog/3.0.0_2022-11-30/9731.md b/changelog/3.0.0_2022-11-30/9731.md
new file mode 100644
index 00000000000..e41997bb2ab
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9731.md
@@ -0,0 +1,10 @@
+Enhancement: Create continuous log files
+
+Previously, when logging was enabled, we started a new log file for every sync.
+This worked quite well if you sync a single account and a single folder.
+With spaces however we have a multitude of sync folders, which resulted in hundreds of tiny log files.
+
+Now, as soon as a log file's size exceeds 100 MiB, a new log file is started, and the old one is moved and compressed.
+The option to delete log files older than 4h was replaced by an option to keep a number of log files.
+
+https://github.com/owncloud/client/issues/9731
diff --git a/changelog/3.0.0_2022-11-30/9752.md b/changelog/3.0.0_2022-11-30/9752.md
new file mode 100644
index 00000000000..222be1acbf5
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9752.md
@@ -0,0 +1,7 @@
+Bugfix: Fix adding bookmarks on Gtk+ 3 based desktops
+
+We used to add those bookmarks in a Gtk+ 2 compatible way only.
+Now, bookmarks are added to the file belonging to Gtk+ 3, dropping support for end-of-life Gtk+ 2.
+The bookmarks are now shown again for all Gtk+ 3 compatible file browsers, including Thunar, Nautilus, Nemo, Caja, etc.
+
+https://github.com/owncloud/client/pull/9752
diff --git a/changelog/3.0.0_2022-11-30/9772.md b/changelog/3.0.0_2022-11-30/9772.md
new file mode 100644
index 00000000000..1a1d44c2057
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9772.md
@@ -0,0 +1,7 @@
+Enhancement: Display a correct error when the wrong user was authenticated
+
+When the wrong user was authenticated using OAuth we used to display a misleading message.
+We now also style the html response the client provides to the file browser.
+
+https://github.com/owncloud/client/issues/9772
+https://github.com/owncloud/client/pull/9813
diff --git a/changelog/3.0.0_2022-11-30/9790.md b/changelog/3.0.0_2022-11-30/9790.md
new file mode 100644
index 00000000000..de0f1614195
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9790.md
@@ -0,0 +1,5 @@
+Change: Don't display error state when server is unreachable
+
+We no longer display a network error if the server is currently unavailable.
+
+https://github.com/owncloud/client/issues/9790
diff --git a/changelog/3.0.0_2022-11-30/9798.md b/changelog/3.0.0_2022-11-30/9798.md
new file mode 100644
index 00000000000..82a364ae08d
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9798.md
@@ -0,0 +1,5 @@
+Bugfix: Stop the activity spinner when the request failed
+
+If the server did not provide the activity endpoint we always displayed a progress spinner.
+
+https://github.com/owncloud/client/issues/9798
diff --git a/changelog/3.0.0_2022-11-30/9910.md b/changelog/3.0.0_2022-11-30/9910.md
new file mode 100644
index 00000000000..68b9c021210
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9910.md
@@ -0,0 +1,3 @@
+Enhancement: We improved the performance for local filesystem actions
+
+https://github.com/owncloud/client/pull/9910
diff --git a/changelog/3.0.0_2022-11-30/9918.md b/changelog/3.0.0_2022-11-30/9918.md
new file mode 100644
index 00000000000..5e06076be10
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9918.md
@@ -0,0 +1,9 @@
+Enhancement: We improved the performance of db access
+
+We removed a check for the existence of the db that was executed before every access to the db.
+
+The check was introduced in #6049 to prevent crashes if the db does not exist or is removed during runtime.
+We nowadays gracefully handle missing dbs on startup, removing the db at runtime is too much of a corner case
+to sacrifice that much performance, however.
+
+https://github.com/owncloud/client/pull/9918
diff --git a/changelog/3.0.0_2022-11-30/9919.md b/changelog/3.0.0_2022-11-30/9919.md
new file mode 100644
index 00000000000..e093798ba7f
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9919.md
@@ -0,0 +1,3 @@
+Enhancement: Reduce CPU load during discovery
+
+https://github.com/owncloud/client/pull/9919
diff --git a/changelog/3.0.0_2022-11-30/9923.md b/changelog/3.0.0_2022-11-30/9923.md
new file mode 100644
index 00000000000..256ca829c48
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9923.md
@@ -0,0 +1,6 @@
+Enhancement: Remove app name from connection error message
+
+We removed the app name from some connection messages.
+`No connection to ownCloud at http://..` was misleading as the server could have any other branding.
+
+https://github.com/owncloud/client/issues/9923
diff --git a/changelog/3.0.0_2022-11-30/9924.md b/changelog/3.0.0_2022-11-30/9924.md
new file mode 100644
index 00000000000..3a93901d1d4
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9924.md
@@ -0,0 +1,5 @@
+Bugfix: Changes during upload of a file could still trigger the ignore list
+
+We fixed another issue where changes during an upload could cause the file to be ignored for an increasing amount of time.
+
+https://github.com/owncloud/client/issues/9924
diff --git a/changelog/3.0.0_2022-11-30/9930.md b/changelog/3.0.0_2022-11-30/9930.md
new file mode 100644
index 00000000000..3cc3deef49f
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9930.md
@@ -0,0 +1,5 @@
+Enhancement: Allow HTTP/1.1 pipelining
+
+Under certain conditions, this change can result in a better network utilization.
+
+https://github.com/owncloud/client/pull/9930/
diff --git a/changelog/3.0.0_2022-11-30/9995.md b/changelog/3.0.0_2022-11-30/9995.md
new file mode 100644
index 00000000000..bdf9ffcda25
--- /dev/null
+++ b/changelog/3.0.0_2022-11-30/9995.md
@@ -0,0 +1,3 @@
+Enhancement: Improve look and feel of many dialogs on macOS
+
+https://github.com/owncloud/client/issues/9995
diff --git a/changelog/3.1.0_2023-01-25/10294.md b/changelog/3.1.0_2023-01-25/10294.md
new file mode 100644
index 00000000000..1c28976f2f2
--- /dev/null
+++ b/changelog/3.1.0_2023-01-25/10294.md
@@ -0,0 +1,6 @@
+Enhancement: Add a `Reconnect` option to the account menu, when disconnected
+
+We added a `Reconnect` button to the account menu, this allows to trigger a manual reconnect try.
+Note: The client would try to reconnect by itself at some point.
+
+https://github.com/owncloud/client/issues/10294
diff --git a/changelog/3.1.0_2023-01-25/10329.md b/changelog/3.1.0_2023-01-25/10329.md
new file mode 100644
index 00000000000..d16b62d836f
--- /dev/null
+++ b/changelog/3.1.0_2023-01-25/10329.md
@@ -0,0 +1,5 @@
+Bugfix: Fix the display of the version string for released builds
+
+We removed a trailing `-` in the version string of released clients.
+
+https://github.com/owncloud/client/pull/10329
diff --git a/changelog/3.1.0_2023-01-25/10338.md b/changelog/3.1.0_2023-01-25/10338.md
new file mode 100644
index 00000000000..f5d968b46a3
--- /dev/null
+++ b/changelog/3.1.0_2023-01-25/10338.md
@@ -0,0 +1,6 @@
+Bugfix: Only clear cookies if enabled in theme, clear cookies before OAuth2
+
+We fixed a bug that enabled the explicit cookie clearing required for F5 BIG-IP setups unconditionally.
+We fixed a bug where the cookie clearing was not performed during OAuth2.
+
+https://github.com/owncloud/client/pull/10338
diff --git a/changelog/3.1.0_2023-01-25/10340.md b/changelog/3.1.0_2023-01-25/10340.md
new file mode 100644
index 00000000000..ecce923e3cf
--- /dev/null
+++ b/changelog/3.1.0_2023-01-25/10340.md
@@ -0,0 +1,5 @@
+Bugfix: Display `Add a Space` instead of `Add Folder Sync Connection` with oCIS
+
+We fixed a bug where the wrong text was displayed on the "add" button.
+
+https://github.com/owncloud/client/pull/10340
diff --git a/changelog/3.1.0_2023-01-25/10346.md b/changelog/3.1.0_2023-01-25/10346.md
new file mode 100644
index 00000000000..aecbb6e5df2
--- /dev/null
+++ b/changelog/3.1.0_2023-01-25/10346.md
@@ -0,0 +1,3 @@
+Bugfix: Mac: Don't inherit the environment of the installer after an update
+
+https://github.com/owncloud/client/issues/10346
diff --git a/changelog/3.1.0_2023-01-25/10373.md b/changelog/3.1.0_2023-01-25/10373.md
new file mode 100644
index 00000000000..86c0994d44b
--- /dev/null
+++ b/changelog/3.1.0_2023-01-25/10373.md
@@ -0,0 +1,3 @@
+Bugfix: Correctly detect timeouts during token refresh
+
+https://github.com/owncloud/client/pull/10373
diff --git a/changelog/3.1.0_2023-01-25/10387.md b/changelog/3.1.0_2023-01-25/10387.md
new file mode 100644
index 00000000000..610cee3b7f1
--- /dev/null
+++ b/changelog/3.1.0_2023-01-25/10387.md
@@ -0,0 +1,5 @@
+Bugfix: Open in web if debug logs are turned off
+
+Due to a bug opening the browser only worked if logging was enabled.
+
+https://github.com/owncloud/client/pull/10387
diff --git a/changelog/3.1.0_2023-01-25/10390.md b/changelog/3.1.0_2023-01-25/10390.md
new file mode 100644
index 00000000000..72e96b63d08
--- /dev/null
+++ b/changelog/3.1.0_2023-01-25/10390.md
@@ -0,0 +1,6 @@
+Enhancement: (Re)introduce "sync hidden files" parameter in owncloudcmd
+
+There used to be an option to enable the synchronization of hidden files using the -h parameter which collided with the --help option and subsequently was removed.
+A new --sync-hidden-files parameter was introduced to fill in the missing feature.
+
+https://github.com/owncloud/client/issues/10390
diff --git a/changelog/3.1.0_2023-01-25/10398.md b/changelog/3.1.0_2023-01-25/10398.md
new file mode 100644
index 00000000000..eb73e75dbb4
--- /dev/null
+++ b/changelog/3.1.0_2023-01-25/10398.md
@@ -0,0 +1,3 @@
+Bugfix: We fixed building the client on non linux unix systems
+
+https://github.com/owncloud/client/issues/10398
diff --git a/changelog/3.2.0_2023-02-15/10441.md b/changelog/3.2.0_2023-02-15/10441.md
new file mode 100644
index 00000000000..4a614e293f7
--- /dev/null
+++ b/changelog/3.2.0_2023-02-15/10441.md
@@ -0,0 +1,6 @@
+Bugfix: Enable next button upon user input on WebFinger setup wizard page
+
+After a change to how the next button is controlled by user input on the page,
+we forgot to make this change on the WebFinger page, too.
+
+https://github.com/owncloud/client/issues/10441
diff --git a/changelog/3.2.0_2023-02-15/10456.md b/changelog/3.2.0_2023-02-15/10456.md
new file mode 100644
index 00000000000..28bb4501b78
--- /dev/null
+++ b/changelog/3.2.0_2023-02-15/10456.md
@@ -0,0 +1,3 @@
+Bugfix: Only hide non VFS settings when enforced and on Windows
+
+https://github.com/owncloud/client/issues/10456
diff --git a/changelog/3.2.0_2023-02-15/10468.md b/changelog/3.2.0_2023-02-15/10468.md
new file mode 100644
index 00000000000..9b370e6a507
--- /dev/null
+++ b/changelog/3.2.0_2023-02-15/10468.md
@@ -0,0 +1,5 @@
+Bugfix: Use selective sync settings from FolderWizard dialog
+
+Due to a bug the user selection was not persisted.
+
+https://github.com/owncloud/client/issues/10468
diff --git a/changelog/3.2.0_2023-02-15/10472.md b/changelog/3.2.0_2023-02-15/10472.md
new file mode 100644
index 00000000000..191ded376b8
--- /dev/null
+++ b/changelog/3.2.0_2023-02-15/10472.md
@@ -0,0 +1,3 @@
+Bugfix: showVirtualFilesOption no longer influences the use of VFS
+
+https://github.com/owncloud/client/issues/10472
diff --git a/changelog/3.2.0_2023-02-15/10481.md b/changelog/3.2.0_2023-02-15/10481.md
new file mode 100644
index 00000000000..2a6ecb131d1
--- /dev/null
+++ b/changelog/3.2.0_2023-02-15/10481.md
@@ -0,0 +1,3 @@
+Bugfix: Fix generation of Windows sidebar entry when VFS is disabled
+
+https://github.com/owncloud/client/pull/10481
diff --git a/changelog/3.2.0_2023-02-15/10500.md b/changelog/3.2.0_2023-02-15/10500.md
new file mode 100644
index 00000000000..40c8ca4bfd6
--- /dev/null
+++ b/changelog/3.2.0_2023-02-15/10500.md
@@ -0,0 +1,6 @@
+Bugfix: Empty credentials for signed out accounts
+
+We fixed a bug where we saved empty credentials for logged out accounts.
+Under certain conditions we now tried access the server without any authentication.
+
+https://github.com/owncloud/client/issues/10500
diff --git a/changelog/3.2.1_2023-03-07/10552.md b/changelog/3.2.1_2023-03-07/10552.md
new file mode 100644
index 00000000000..10e43d04906
--- /dev/null
+++ b/changelog/3.2.1_2023-03-07/10552.md
@@ -0,0 +1,6 @@
+Bugfix: Fix crash in Linux AppImage updater
+
+In between the releases 3.0.0 and 3.1.0, a dependency was updated, causing an ABI
+incompatibility with another library. We resolved this by rebuilding both libraries.
+
+https://github.com/owncloud/client/issues/10552
diff --git a/changelog/3.2.1_2023-03-07/10564.md b/changelog/3.2.1_2023-03-07/10564.md
new file mode 100644
index 00000000000..2233e14d17e
--- /dev/null
+++ b/changelog/3.2.1_2023-03-07/10564.md
@@ -0,0 +1,5 @@
+Bugfix: Fix encoding issue with basic authentication
+
+In 3.0 we introduced an encoding issue for basic authentication.
+
+https://github.com/owncloud/client/issues/10564
diff --git a/changelog/3.2.1_2023-03-07/enterprise-5612.md b/changelog/3.2.1_2023-03-07/enterprise-5612.md
new file mode 100644
index 00000000000..ff7f5ebe31a
--- /dev/null
+++ b/changelog/3.2.1_2023-03-07/enterprise-5612.md
@@ -0,0 +1,5 @@
+Bugfix: Handle hide VirtualFiles options as disable VirtualFiles
+
+Due to legacy reasons the branding flag and its function differ.
+
+https://github.com/owncloud/enterprise/issues/5612
diff --git a/changelog/4.0.0_2023-05-11/10231.md b/changelog/4.0.0_2023-05-11/10231.md
new file mode 100644
index 00000000000..4a7549680f4
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10231.md
@@ -0,0 +1,10 @@
+Enhancement: Replace term (un)pause with a more suitable one
+
+We used the terms pause and unpause synchronization where the synchronization was actually
+terminated and restarted.
+
+Now, we use the terms stop and start synchronization, which better communicate the actual
+behavior.
+
+https://github.com/owncloud/client/issues/10231
+https://github.com/owncloud/client/issues/10529
diff --git a/changelog/4.0.0_2023-05-11/10251.md b/changelog/4.0.0_2023-05-11/10251.md
new file mode 100644
index 00000000000..014274e276d
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10251.md
@@ -0,0 +1,10 @@
+Bugfix: Fix update channel dropdown
+
+When switching to the beta update channel in testpilotcloud, a warning will
+pop up. When canceled, the selection should reset. This did not work reliably
+in localized clients due to the use of string comparisons. Using a numeric
+index to keep track of the old value fixes the problem.
+
+https://github.com/owncloud/client/issues/10251
+https://github.com/owncloud/client/pull/10609
+https://github.com/owncloud/client/pull/10627
diff --git a/changelog/4.0.0_2023-05-11/10254.md b/changelog/4.0.0_2023-05-11/10254.md
new file mode 100644
index 00000000000..35dc141fa0d
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10254.md
@@ -0,0 +1,3 @@
+Bugfix: Select keep files as default action in all files removed dialog
+
+https://github.com/owncloud/client/issues/10254
diff --git a/changelog/4.0.0_2023-05-11/10352.md b/changelog/4.0.0_2023-05-11/10352.md
new file mode 100644
index 00000000000..c6b12d554ac
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10352.md
@@ -0,0 +1,6 @@
+Enhancement: Check for long paths when these are not enabled on Windows
+
+https://github.com/owncloud/client/issues/10264
+https://github.com/owncloud/client/pull/10352
+https://github.com/owncloud/client/issues/10677
+https://github.com/owncloud/client/pull/10679
diff --git a/changelog/4.0.0_2023-05-11/10361.md b/changelog/4.0.0_2023-05-11/10361.md
new file mode 100644
index 00000000000..d23c6b9cd19
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10361.md
@@ -0,0 +1,6 @@
+Enhancement: Implement a possibility to Desktop.ini icon updates on Windows
+
+We implemented an option which allows to disable the automatic update of the folder icon for
+sync folders on Windows.
+
+https://github.com/owncloud/client/issues/10361
diff --git a/changelog/4.0.0_2023-05-11/10406.md b/changelog/4.0.0_2023-05-11/10406.md
new file mode 100644
index 00000000000..7cbe472f32c
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10406.md
@@ -0,0 +1,6 @@
+Enhancement: Disable DPI scaling factor rounding on Windows
+
+Qt5 By default rounds up the selected scale for values > .5
+We now use the actual scale factor.
+
+https://github.com/owncloud/client/issues/10406
diff --git a/changelog/4.0.0_2023-05-11/10408.md b/changelog/4.0.0_2023-05-11/10408.md
new file mode 100644
index 00000000000..646b6e16eea
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10408.md
@@ -0,0 +1,8 @@
+Bugfix: Undefined client state after fetching credentials failed
+
+We fixed a bug where the client got stuck in a "No connection configured" state if an
+error occurred during the retrieval of the credentials from the system's keychain.
+The client then required a manual log out and log in.
+
+https://github.com/owncloud/client/issues/10408
+https://github.com/owncloud/client/pull/10505
diff --git a/changelog/4.0.0_2023-05-11/10427.md b/changelog/4.0.0_2023-05-11/10427.md
new file mode 100644
index 00000000000..06120dbd2df
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10427.md
@@ -0,0 +1,5 @@
+Bugfix: Escape navigation elements from user name
+
+We use the user name as folder name, if a user name contains path navigation elements we now escape them.
+
+https://github.com/owncloud/client/issues/10427
diff --git a/changelog/4.0.0_2023-05-11/10453.md b/changelog/4.0.0_2023-05-11/10453.md
new file mode 100644
index 00000000000..2ce1684b576
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10453.md
@@ -0,0 +1,5 @@
+Enhancement: Display quota for Spaces
+
+Quota is now displayed for all folders.
+
+https://github.com/owncloud/client/issues/10453
diff --git a/changelog/4.0.0_2023-05-11/10458.md b/changelog/4.0.0_2023-05-11/10458.md
new file mode 100644
index 00000000000..815d906eace
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10458.md
@@ -0,0 +1,3 @@
+Bugfix: Under certain conditions the folder watcher could drop events
+
+https://github.com/owncloud/client/pull/10458
diff --git a/changelog/4.0.0_2023-05-11/10494.md b/changelog/4.0.0_2023-05-11/10494.md
new file mode 100644
index 00000000000..6db774844b4
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10494.md
@@ -0,0 +1,4 @@
+Bugfix: Properly handle OAuth invalidation
+
+https://github.com/owncloud/client/issues/10494
+https://github.com/owncloud/client/issues/10495
diff --git a/changelog/4.0.0_2023-05-11/10517.md b/changelog/4.0.0_2023-05-11/10517.md
new file mode 100644
index 00000000000..7292b22a459
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10517.md
@@ -0,0 +1,13 @@
+Enhancement: New WebFinger workflow
+
+ownCloud Infinite Scale servers may provide a new WebFinger service which
+clients can use to discover an actual instance they should connect to.
+
+This is useful when a large organization operates multiple instances to
+distribute the load on multiple servers, or single departments operate their
+own servers, but they all use a common entrypoint URL and authentication
+system.
+
+https://github.com/owncloud/client/issues/10517
+https://github.com/owncloud/client/pull/10665
+https://owncloud.dev/services/webfinger/
diff --git a/changelog/4.0.0_2023-05-11/10518.md b/changelog/4.0.0_2023-05-11/10518.md
new file mode 100644
index 00000000000..2a7bb4cd1fb
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10518.md
@@ -0,0 +1,6 @@
+Enhancement: Branding: Allow the addition of buttons to open a URL
+
+We added a branding option that allows to add buttons to the toolbar.
+Those buttons will then open a hardcoded web page.
+
+https://github.com/owncloud/client/issues/10518
diff --git a/changelog/4.0.0_2023-05-11/10537.md b/changelog/4.0.0_2023-05-11/10537.md
new file mode 100644
index 00000000000..b39831ddcae
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10537.md
@@ -0,0 +1,3 @@
+Enhancement: Build the client without the auto updater by default
+
+https://github.com/owncloud/client/issues/10537
diff --git a/changelog/4.0.0_2023-05-11/10557.md b/changelog/4.0.0_2023-05-11/10557.md
new file mode 100644
index 00000000000..e9c687f6c0b
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10557.md
@@ -0,0 +1,6 @@
+Enhancement: Improve presentation of connection state
+
+Don't display `No connection configured` when disconnected but `Disconnected from:`.
+Introduce new state, `Connecting to`.
+
+https://github.com/owncloud/client/issues/10557
diff --git a/changelog/4.0.0_2023-05-11/10569.md b/changelog/4.0.0_2023-05-11/10569.md
new file mode 100644
index 00000000000..6033de18637
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10569.md
@@ -0,0 +1,3 @@
+Bugfix: Clear conflict errors after they were resolved
+
+https://github.com/owncloud/client/issues/10569
diff --git a/changelog/4.0.0_2023-05-11/10572.md b/changelog/4.0.0_2023-05-11/10572.md
new file mode 100644
index 00000000000..8cdcfe985dd
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10572.md
@@ -0,0 +1,3 @@
+Enhancement: Display open in web in file browser context menu, on sync roots
+
+https://github.com/owncloud/client/issues/10572
diff --git a/changelog/4.0.0_2023-05-11/10577.md b/changelog/4.0.0_2023-05-11/10577.md
new file mode 100644
index 00000000000..9e073a35305
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10577.md
@@ -0,0 +1,5 @@
+Enhancement: Display space subtitle if available
+
+If a subtitle is set on a spaced we now display it instead of the local path.
+
+https://github.com/owncloud/client/issues/10577
diff --git a/changelog/4.0.0_2023-05-11/10590.md b/changelog/4.0.0_2023-05-11/10590.md
new file mode 100644
index 00000000000..8b62866b0f0
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10590.md
@@ -0,0 +1,6 @@
+Enhancement: Open sharing options in Web
+
+When selecting "Share…" in the file browser context menu, we now
+not only display that file in the web view but also directly show the sharing options.
+
+https://github.com/owncloud/client/pull/10590
diff --git a/changelog/4.0.0_2023-05-11/10602.md b/changelog/4.0.0_2023-05-11/10602.md
new file mode 100644
index 00000000000..9f4f5b060f9
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10602.md
@@ -0,0 +1,5 @@
+Enhancement: Display the space name provided by the server
+
+If a space is renamed on the server, this change is now displayed in the client.
+
+https://github.com/owncloud/client/pull/10602
diff --git a/changelog/4.0.0_2023-05-11/10607.md b/changelog/4.0.0_2023-05-11/10607.md
new file mode 100644
index 00000000000..fbc59164063
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10607.md
@@ -0,0 +1,3 @@
+Bugfix: Set the expected download content length in the job properly
+
+https://github.com/owncloud/client/pull/10607
diff --git a/changelog/4.0.0_2023-05-11/10621.md b/changelog/4.0.0_2023-05-11/10621.md
new file mode 100644
index 00000000000..91b43b656e3
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10621.md
@@ -0,0 +1,5 @@
+Bugfix: UI freeze when multiple modal dialogs displayed on macOS
+
+Due to incorrect handling of the dialogs, the UI could freeze.
+
+https://github.com/owncloud/client/issues/10621
diff --git a/changelog/4.0.0_2023-05-11/10634.md b/changelog/4.0.0_2023-05-11/10634.md
new file mode 100644
index 00000000000..78bdd626bb0
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10634.md
@@ -0,0 +1,7 @@
+Enhancement: Always point to the latest documentation
+
+We used a URL for the documentation that contained the client version.
+While this ensured a used would get the documentation matching to their client, this only worked with the last two released clients.
+So users of a pre-release or of a very old client where served a 404.
+
+https://github.com/owncloud/client/issues/10634
diff --git a/changelog/4.0.0_2023-05-11/10637.md b/changelog/4.0.0_2023-05-11/10637.md
new file mode 100644
index 00000000000..41ec3580cdf
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10637.md
@@ -0,0 +1,3 @@
+Enhancement: More user-friendly error handling in the cmd client
+
+https://github.com/owncloud/client/pull/10637
diff --git a/changelog/4.0.0_2023-05-11/10648.md b/changelog/4.0.0_2023-05-11/10648.md
new file mode 100644
index 00000000000..71c27cb79bd
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10648.md
@@ -0,0 +1,5 @@
+Bugfix: Ensure the account state is properly persisted
+
+We didn't properly persist the login/logout state.
+
+https://github.com/owncloud/client/issues/10648
diff --git a/changelog/4.0.0_2023-05-11/10654.md b/changelog/4.0.0_2023-05-11/10654.md
new file mode 100644
index 00000000000..76dd2926834
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10654.md
@@ -0,0 +1,3 @@
+Enhancement: Don't invalidate OAuth refresh token on ConnectionRefusedError
+
+https://github.com/owncloud/client/issues/10654
diff --git a/changelog/4.0.0_2023-05-11/10666.md b/changelog/4.0.0_2023-05-11/10666.md
new file mode 100644
index 00000000000..a5951e279dc
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/10666.md
@@ -0,0 +1,3 @@
+Bugfix: Reconnect got stuck if the server supports app providers
+
+https://github.com/owncloud/client/issues/10666
diff --git a/changelog/4.0.0_2023-05-11/8953.md b/changelog/4.0.0_2023-05-11/8953.md
new file mode 100644
index 00000000000..33f4c505c17
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/8953.md
@@ -0,0 +1,3 @@
+Bugfix: Display sync date in system tray context menu when files where ignored
+
+https://github.com/owncloud/client/issues/8953
diff --git a/changelog/4.0.0_2023-05-11/9270.md b/changelog/4.0.0_2023-05-11/9270.md
new file mode 100644
index 00000000000..65972e6f473
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/9270.md
@@ -0,0 +1,5 @@
+Bugfix: Fix computation of sync status when multiple folders are synced
+
+https://github.com/owncloud/client/issues/9270
+https://github.com/owncloud/client/pull/10536
+https://github.com/owncloud/client/pull/10642
diff --git a/changelog/4.0.0_2023-05-11/9311.md b/changelog/4.0.0_2023-05-11/9311.md
new file mode 100644
index 00000000000..7dfea7e8c11
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/9311.md
@@ -0,0 +1,6 @@
+Bugfix: Don't abort local folder deletions on unrelated errors
+
+We fixed a bug where folder deletions where not performed if any sync error
+occurred anywhere in the sync tree.
+
+https://github.com/owncloud/client/issues/9311
diff --git a/changelog/4.0.0_2023-05-11/9700.md b/changelog/4.0.0_2023-05-11/9700.md
new file mode 100644
index 00000000000..7b79bddf146
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/9700.md
@@ -0,0 +1,5 @@
+Enhancement: Display `This space is either disabled or deleted` for gone spaces
+
+We now provide a less technical error when a space was disabled or deleted.
+
+https://github.com/owncloud/client/issues/9700
diff --git a/changelog/4.0.0_2023-05-11/9829.md b/changelog/4.0.0_2023-05-11/9829.md
new file mode 100644
index 00000000000..652dfc59c15
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/9829.md
@@ -0,0 +1,7 @@
+Enhancement: Sync virtual files that are locked by office etc
+
+We now upload locked files again when Windows virtual files are used.
+This was disabled in 2.9.0 as it caused the file metadata and the locked files to get out of sync.
+The new solution implements explicit handling of outdated placeholders.
+
+https://github.com/owncloud/client/issues/9829
\ No newline at end of file
diff --git a/changelog/4.0.0_2023-05-11/9945.md b/changelog/4.0.0_2023-05-11/9945.md
new file mode 100644
index 00000000000..5e5ea61596d
--- /dev/null
+++ b/changelog/4.0.0_2023-05-11/9945.md
@@ -0,0 +1,6 @@
+Change: Implement server guided migration to spaces
+
+We added a feature that allows limited automatic migration of existing syncs to oCIS spaces.
+
+https://github.com/owncloud/client/issues/9945
+https://github.com/owncloud/ocis/issues/3574
diff --git a/changelog/4.1.0_2023-06-15/10842.md b/changelog/4.1.0_2023-06-15/10842.md
new file mode 100644
index 00000000000..ebbb0a62325
--- /dev/null
+++ b/changelog/4.1.0_2023-06-15/10842.md
@@ -0,0 +1,3 @@
+Bugfix: owncloudcmd: Ensure plugin path is initialized on Linux
+
+https://github.com/owncloud/client/issues/10842
diff --git a/changelog/4.1.0_2023-06-15/10856.md b/changelog/4.1.0_2023-06-15/10856.md
new file mode 100644
index 00000000000..e1d68e3c4f4
--- /dev/null
+++ b/changelog/4.1.0_2023-06-15/10856.md
@@ -0,0 +1,6 @@
+Bugfix: Use correct username with basic auth and LDAP
+
+With basic auth the name from the login credentials might not align with the name on the server.
+We corrected the assumption and no longer change the username.
+
+https://github.com/owncloud/client/issues/10856
diff --git a/changelog/4.1.0_2023-06-15/10860.md b/changelog/4.1.0_2023-06-15/10860.md
new file mode 100644
index 00000000000..677ad5cca6d
--- /dev/null
+++ b/changelog/4.1.0_2023-06-15/10860.md
@@ -0,0 +1,8 @@
+Bugfix: Show systray status when a sync error occurred
+
+The systray menu for the ownCloud icon has an entry that shows the sync
+status. However, when a sync error occurred, the entry would have no
+text in it. This has now been fixed.
+
+https://github.com/owncloud/client/issues/10834
+
diff --git a/changelog/4.1.0_2023-06-15/10888.md b/changelog/4.1.0_2023-06-15/10888.md
new file mode 100644
index 00000000000..c0d481bc0dc
--- /dev/null
+++ b/changelog/4.1.0_2023-06-15/10888.md
@@ -0,0 +1,7 @@
+Enhancement: Allow users to call commandline client from AppImage
+
+When the AppImage is called with the new commandline parameter --cmd, it will
+internally dispatch the call to the contained owncloudcmd binary. Otherwise,
+the call will be forwarded to the regular owncloud GUI binary as before.
+
+https://github.com/owncloud/client/issues/10888
diff --git a/changelog/4.1.0_2023-06-15/enterprise-5743.md b/changelog/4.1.0_2023-06-15/enterprise-5743.md
new file mode 100644
index 00000000000..cb3a83086dd
--- /dev/null
+++ b/changelog/4.1.0_2023-06-15/enterprise-5743.md
@@ -0,0 +1,6 @@
+Bugfix: Follow same site redirects in the Wizard
+
+We fixed a bug where the client did not follow same site redirects during the setup.
+If the used URL https://test.com/owncloud redirected to https://test.com the new URL was not correctly used for the newly created account.
+
+https://github.com/owncloud/enterprise/issues/5743
diff --git a/changelog/4.2.0_2023-08-07/10946.md b/changelog/4.2.0_2023-08-07/10946.md
new file mode 100644
index 00000000000..e87fa1daef0
--- /dev/null
+++ b/changelog/4.2.0_2023-08-07/10946.md
@@ -0,0 +1,5 @@
+Bugfix: Wrong davUser in cmd client
+
+We fixed a bug where the wrong dav user was used in the URL, when the username from the credentials differed from the username used on the server.
+
+https://github.com/owncloud/client/issues/10946
diff --git a/changelog/4.2.0_2023-08-07/10950.md b/changelog/4.2.0_2023-08-07/10950.md
new file mode 100644
index 00000000000..ce59a975f7d
--- /dev/null
+++ b/changelog/4.2.0_2023-08-07/10950.md
@@ -0,0 +1,7 @@
+Bugfix: Missing mtime in oCIS uploads
+
+When uploading a file to oCIS the server ignores the X-OC-Mtime header
+and expects the mtime to be part of the Upload-Metadata header.
+We now provide both.
+
+https://github.com/owncloud/client/issues/10950
diff --git a/changelog/5.0.0_2023-10-05/10197.md b/changelog/5.0.0_2023-10-05/10197.md
new file mode 100644
index 00000000000..9e56a03c445
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10197.md
@@ -0,0 +1,3 @@
+Enhancement: Make "Show files versions…" context menu action available
+
+https://github.com/owncloud/client/issues/10197
diff --git a/changelog/5.0.0_2023-10-05/10223.md b/changelog/5.0.0_2023-10-05/10223.md
new file mode 100644
index 00000000000..67520e2a089
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10223.md
@@ -0,0 +1,5 @@
+Bugfix: VFS Placeholders can now be replaced with folders
+
+If a local VFS placeholder is replaced with a folder on the server, the client previously failed to populate the change.
+
+https://github.com/owncloud/client/issues/10223
diff --git a/changelog/5.0.0_2023-10-05/10313.md b/changelog/5.0.0_2023-10-05/10313.md
new file mode 100644
index 00000000000..30316f3b7fc
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10313.md
@@ -0,0 +1,6 @@
+Enhancement: Log http request when it is sent
+
+We now log the http request when it is sent, not when it is created.
+This will enable us to print more headers set by the platform and measure the request time more accurately.
+
+https://github.com/owncloud/client/issues/10313
diff --git a/changelog/5.0.0_2023-10-05/10351.md b/changelog/5.0.0_2023-10-05/10351.md
new file mode 100644
index 00000000000..4c2842333a2
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10351.md
@@ -0,0 +1,3 @@
+Bugfix: Authentication dialog no longer appears again and again
+
+https://github.com/owncloud/client/issues/10351
diff --git a/changelog/5.0.0_2023-10-05/10596.md b/changelog/5.0.0_2023-10-05/10596.md
new file mode 100644
index 00000000000..a201ad002e8
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10596.md
@@ -0,0 +1,11 @@
+Enhancement: Allow selective sync of spaces in folder wizard
+
+When manually configuring the synchronization of spaces, we now show the
+selective sync page again to allow users to selectively disable the
+synchronization of remote directories.
+
+This prevents the unnecessary synchronization of files until the user can use
+the account settings dialog to configure selective sync.
+
+https://github.com/owncloud/client/issues/10596
+https://github.com/owncloud/client/pull/11044
diff --git a/changelog/5.0.0_2023-10-05/10619.md b/changelog/5.0.0_2023-10-05/10619.md
new file mode 100644
index 00000000000..95ba0bec353
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10619.md
@@ -0,0 +1,8 @@
+Enhancement: send a language header in all http requests
+
+All http requests to the server will now contain the language for the
+client. This can be used by the server to localize responses like error
+messages.
+
+https://github.com/owncloud/client/issues/10619
+https://github.com/owncloud/client/pull/11020
diff --git a/changelog/5.0.0_2023-10-05/10680.md b/changelog/5.0.0_2023-10-05/10680.md
new file mode 100644
index 00000000000..1b0cfd47df2
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10680.md
@@ -0,0 +1,8 @@
+Enhancement: Help user fix problems on the last setup wizard page
+
+When there are problems within the advanced configuration on the last setup
+wizard page, we no longer just show an error message but also "un-hide" those
+settings to give the user a chance of fixing the problem.
+
+https://github.com/owncloud/client/issues/10680
+https://github.com/owncloud/client/pull/11029
diff --git a/changelog/5.0.0_2023-10-05/10751.md b/changelog/5.0.0_2023-10-05/10751.md
new file mode 100644
index 00000000000..7168e91d100
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10751.md
@@ -0,0 +1,6 @@
+Enhancement: Display a progress spinner during the initial setup
+
+We now display a progress spinner after the setup wizard, until
+the client is done setting the account up.
+
+https://github.com/owncloud/client/issues/10751
diff --git a/changelog/5.0.0_2023-10-05/10788.md b/changelog/5.0.0_2023-10-05/10788.md
new file mode 100644
index 00000000000..e12d42ee019
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10788.md
@@ -0,0 +1,6 @@
+Change: Remove support for sidebar entries for non-vfs setups on Windows
+
+For vfs setups, this is handled by Windows itself.
+
+https://github.com/owncloud/client/issues/10788
+https://github.com/owncloud/client/pull/10910
diff --git a/changelog/5.0.0_2023-10-05/10825.md b/changelog/5.0.0_2023-10-05/10825.md
new file mode 100644
index 00000000000..d7be3663e6f
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10825.md
@@ -0,0 +1,7 @@
+Enhancement: Reduce how often file changes are handled
+
+We no longer handle file changes every 1s but gather them for 10s and handle them then.
+
+This should reduce the amount of unnecessary checksum computations and attempted syncs.
+
+https://github.com/owncloud/client/pull/10825
diff --git a/changelog/5.0.0_2023-10-05/10866.md b/changelog/5.0.0_2023-10-05/10866.md
new file mode 100644
index 00000000000..d87959cc6d9
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10866.md
@@ -0,0 +1,5 @@
+Change: Remove support for client side system proxy credentials
+
+We removed the support to query and store credentials for the system proxy.
+
+https://github.com/owncloud/client/pull/10866
diff --git a/changelog/5.0.0_2023-10-05/10905.md b/changelog/5.0.0_2023-10-05/10905.md
new file mode 100644
index 00000000000..41664de0f7b
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10905.md
@@ -0,0 +1,5 @@
+Bugfix: Possible deadlock during log setup
+
+If an error occurred during the setup of the log file, it was possible that the client got deadlocked.
+
+https://github.com/owncloud/client/pull/10905
diff --git a/changelog/5.0.0_2023-10-05/10919.md b/changelog/5.0.0_2023-10-05/10919.md
new file mode 100644
index 00000000000..a2f42be89a6
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10919.md
@@ -0,0 +1,9 @@
+Bugfix: Do not create default sync root when loading accounts
+
+Creating the default sync root is only needed at initial setup. If a
+user chooses to point all folders for Spaces outside that default sync
+root, and deletes the default sync root folder, it will now no longer be
+created.
+
+https://github.com/owncloud/client/issues/10919
+https://github.com/owncloud/client/pull/11128
diff --git a/changelog/5.0.0_2023-10-05/10928.md b/changelog/5.0.0_2023-10-05/10928.md
new file mode 100644
index 00000000000..fb8f3e04ded
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10928.md
@@ -0,0 +1,8 @@
+Enhancement: Persist filter settings for Not Synced tab
+
+We now store the filter settings in the Not Synced tab. So after a
+restart of the client, the filter will still be the same as the last
+time.
+
+https://github.com/owncloud/client/pull/10928
+https://github.com/owncloud/client/issues/10884
diff --git a/changelog/5.0.0_2023-10-05/10939.md b/changelog/5.0.0_2023-10-05/10939.md
new file mode 100644
index 00000000000..b1f228d4d41
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10939.md
@@ -0,0 +1,7 @@
+Change: Modernize systray menu
+
+We had a closer look on the system tray and cleaned it up.
+
+https://github.com/owncloud/client/issues/10939
+https://github.com/owncloud/client/pull/10949
+https://github.com/owncloud/client/pull/10999
diff --git a/changelog/5.0.0_2023-10-05/10976.md b/changelog/5.0.0_2023-10-05/10976.md
new file mode 100644
index 00000000000..a079c4bd381
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10976.md
@@ -0,0 +1,7 @@
+Enhancement: `--cmd` argument added to the GUI client
+
+In 4.1 we added a `--cmd` argument to the AppImage to allow users to use the commandline client contained in the AppImage more easily.
+
+The `--cmd` argument is now supported on all platforms to support consistency.
+
+https://github.com/owncloud/client/issues/10976
diff --git a/changelog/5.0.0_2023-10-05/10978.md b/changelog/5.0.0_2023-10-05/10978.md
new file mode 100644
index 00000000000..09d7f292d0e
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10978.md
@@ -0,0 +1,6 @@
+Bugfix: Update capabilities and other info after connect
+
+We fixed a bug where server infos might have only been updated several minutes
+after the client connected to the server.
+
+https://github.com/owncloud/client/issues/10978
diff --git a/changelog/5.0.0_2023-10-05/10990.md b/changelog/5.0.0_2023-10-05/10990.md
new file mode 100644
index 00000000000..f0b2356b065
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/10990.md
@@ -0,0 +1,5 @@
+Bugfix: Account activity and crash after an account was removed
+
+We fixed a bug where an account performed actions after it was removed.
+
+https://github.com/owncloud/client/issues/10990
diff --git a/changelog/5.0.0_2023-10-05/11016.md b/changelog/5.0.0_2023-10-05/11016.md
new file mode 100644
index 00000000000..6e38fca8397
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/11016.md
@@ -0,0 +1,5 @@
+Bugfix: Crash during application shutdown
+
+We fixed a where the main instance was accessed after it was destroyed.
+
+https://github.com/owncloud/client/issues/11016
diff --git a/changelog/5.0.0_2023-10-05/11047.md b/changelog/5.0.0_2023-10-05/11047.md
new file mode 100644
index 00000000000..01fd57c8450
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/11047.md
@@ -0,0 +1,3 @@
+Bugfix: Hide hidden folders again in the selective sync view
+
+https://github.com/owncloud/client/issues/11047
diff --git a/changelog/5.0.0_2023-10-05/11081.md b/changelog/5.0.0_2023-10-05/11081.md
new file mode 100644
index 00000000000..e4c678f828d
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/11081.md
@@ -0,0 +1,5 @@
+Change: We removed the pre 2.9 credentials migration
+
+Migrating credentials from a 2.8 or older client is no longer possible.
+
+https://github.com/owncloud/client/pull/11081
diff --git a/changelog/5.0.0_2023-10-05/11150.md b/changelog/5.0.0_2023-10-05/11150.md
new file mode 100644
index 00000000000..75243162f22
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/11150.md
@@ -0,0 +1,7 @@
+Change: Extract Nautilus
+
+While the crash reporter still requires a graphical user interface to work, this
+change nevertheless simplifies reporting crashes from the commandline client
+a lot.
+
+https://github.com/owncloud/client/issues/8991
diff --git a/changelog/5.0.0_2023-10-05/11157.md b/changelog/5.0.0_2023-10-05/11157.md
new file mode 100644
index 00000000000..76fc6f8e04b
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/11157.md
@@ -0,0 +1,7 @@
+Change: Remove libcloudproviders integration
+
+Since its implementation in 2019 our support our for it was 'limited'.
+Additionally, as far as we can tell it was not picked up by any major Linux distribution.
+
+https://github.com/owncloud/client/issues/11148
+https://github.com/owncloud/client/pull/11157
diff --git a/changelog/5.0.0_2023-10-05/11162.md b/changelog/5.0.0_2023-10-05/11162.md
new file mode 100644
index 00000000000..d826e56e9e2
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/11162.md
@@ -0,0 +1,6 @@
+Bugfix: Hydration state of file after a directory was replaced with a file
+
+If a synced directory was replaced with a file on the server, we downloaded it instead of
+replacing the folder with a VirtualFile placeholder.
+
+https://github.com/owncloud/client/pull/11162
diff --git a/changelog/5.0.0_2023-10-05/11168.md b/changelog/5.0.0_2023-10-05/11168.md
new file mode 100644
index 00000000000..e7acdfb1b1a
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/11168.md
@@ -0,0 +1,5 @@
+Bugfix: Only synchronize after the server settings where refreshed
+
+We fixed an issue where the sync was started on outdated server settings.
+
+https://github.com/owncloud/client/issues/11168
diff --git a/changelog/5.0.0_2023-10-05/11190.md b/changelog/5.0.0_2023-10-05/11190.md
new file mode 100644
index 00000000000..2e200584197
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/11190.md
@@ -0,0 +1,7 @@
+Bugfix: Consistently use the same icon for folders
+
+In 4.0 we introduced a new icon for sync connections.
+In some places however we continued to use the system provided icon for folders,
+this resulted in an inconsistent application look.
+
+https://github.com/owncloud/client/pull/11190
diff --git a/changelog/5.0.0_2023-10-05/11192.md b/changelog/5.0.0_2023-10-05/11192.md
new file mode 100644
index 00000000000..a1b6f1fcbcb
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/11192.md
@@ -0,0 +1,5 @@
+Bugfix: Branding of folder status overlay
+
+We fixed a bug where branded overlay icons for the display of the sync status where not used.
+
+https://github.com/owncloud/client/pull/11192
diff --git a/changelog/5.0.0_2023-10-05/11232.md b/changelog/5.0.0_2023-10-05/11232.md
new file mode 100644
index 00000000000..131c483dbf6
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/11232.md
@@ -0,0 +1,5 @@
+Bugfix: Creation of folder on the server
+
+We fixed an issue in the FolderSyncWizard when the user provided a path with multiple slashes (//folder).
+
+https://github.com/owncloud/client/issues/11232
diff --git a/changelog/5.0.0_2023-10-05/11233.md b/changelog/5.0.0_2023-10-05/11233.md
new file mode 100644
index 00000000000..4ac5ff4a683
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/11233.md
@@ -0,0 +1,3 @@
+Bugfix: Selective sync when not the remote root is synced
+
+https://github.com/owncloud/client/issues/11233
diff --git a/changelog/5.0.0_2023-10-05/11242.md b/changelog/5.0.0_2023-10-05/11242.md
new file mode 100644
index 00000000000..ee7c6adb7f5
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/11242.md
@@ -0,0 +1,9 @@
+Change: Disable context menu item to get a public link for a space
+
+The context menu item "Create and copy public link to clipboard" didn't
+work correctly when used with Spaces: users were always redirected to
+the web frontend. This menu item is now disabled, waiting for a
+server-side changes.
+
+https://github.com/owncloud/client/issues/11242
+https://github.com/owncloud/client/pull/11079
diff --git a/changelog/5.0.0_2023-10-05/261.md b/changelog/5.0.0_2023-10-05/261.md
new file mode 100644
index 00000000000..f5b1125721b
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/261.md
@@ -0,0 +1,3 @@
+Enhancement: Store proxy password securely
+
+https://github.com/owncloud/client/issues/261
diff --git a/changelog/5.0.0_2023-10-05/8216.md b/changelog/5.0.0_2023-10-05/8216.md
new file mode 100644
index 00000000000..1fae8e749de
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/8216.md
@@ -0,0 +1,7 @@
+Enhancement: Windows VFS: Prevent rename to ignored file name
+
+We now prevent renaming of virtual files to ignored file names.
+This basically resulted in deletion on the server and a local placeholder that pointed to a non-existing file.
+
+https://github.com/owncloud/client/issues/8216
+https://github.com/owncloud/client-desktop-vfs-win/pull/63
diff --git a/changelog/5.0.0_2023-10-05/8360.md b/changelog/5.0.0_2023-10-05/8360.md
new file mode 100644
index 00000000000..46aa8903dfa
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/8360.md
@@ -0,0 +1,9 @@
+Enhancement: Change how all files deleted is handled
+
+When the client detects that all files are deleted on either side of the sync,
+the client now aborts the sync and asks for a user decision.
+Afterwords a new sync is started.
+
+Previously we blocked the current sync until the user responded which could lead to unwanted side effects.
+
+https://github.com/owncloud/client/issues/8360
diff --git a/changelog/5.0.0_2023-10-05/8432.md b/changelog/5.0.0_2023-10-05/8432.md
new file mode 100644
index 00000000000..dba4099951f
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/8432.md
@@ -0,0 +1,7 @@
+Enhancement: Port from QtSingleApplication to KDSingleApplication
+
+Instead of relying on an old copy of QtSingleApplication we use https://github.com/KDAB/KDSingleApplication
+
+https://github.com/owncloud/client/issues/8432
+https://github.com/owncloud/client/pull/10754
+https://github.com/owncloud/client/pull/10758
diff --git a/changelog/5.0.0_2023-10-05/8991.md b/changelog/5.0.0_2023-10-05/8991.md
new file mode 100644
index 00000000000..63b2c070c53
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/8991.md
@@ -0,0 +1,7 @@
+Enhancement: Enable crash reporter in commandline client
+
+While the crash reporter still requires a graphical user interface to work, this
+change nevertheless simplifies reporting crashes from the commandline client
+a lot.
+
+https://github.com/owncloud/client/issues/8991
diff --git a/changelog/5.0.0_2023-10-05/client-desktop-vfs-win-19.md b/changelog/5.0.0_2023-10-05/client-desktop-vfs-win-19.md
new file mode 100644
index 00000000000..ae943589bb5
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/client-desktop-vfs-win-19.md
@@ -0,0 +1,7 @@
+Bugfix: Fix check if a file is a placeholder
+
+Previously, files with zero bytes in size were considered placeholders.
+This is not correct, and has been fixed by using the correct API to
+check for placeholders.
+
+https://github.com/owncloud/client/issues/11107
diff --git a/changelog/5.0.0_2023-10-05/enterprise-5682.md b/changelog/5.0.0_2023-10-05/enterprise-5682.md
new file mode 100644
index 00000000000..577aafd8ca0
--- /dev/null
+++ b/changelog/5.0.0_2023-10-05/enterprise-5682.md
@@ -0,0 +1,5 @@
+Bugfix: Avoid duplicate notifications when selective sync is enabled
+
+We no longer show multiple messages about files which were excluded from the sync because they were excluded by the users.
+
+https://github.com/owncloud/enterprise/issues/5682
diff --git a/changelog/5.1.0_2023-11-02/11226.md b/changelog/5.1.0_2023-11-02/11226.md
new file mode 100644
index 00000000000..0ba258d0d1b
--- /dev/null
+++ b/changelog/5.1.0_2023-11-02/11226.md
@@ -0,0 +1,5 @@
+Bugfix: Crash when accepting a notification
+
+We fixed a potential crash when clicking on a notification.
+
+https://github.com/owncloud/client/issues/11226
diff --git a/changelog/5.1.0_2023-11-02/11288.md b/changelog/5.1.0_2023-11-02/11288.md
new file mode 100644
index 00000000000..a7fe47e890a
--- /dev/null
+++ b/changelog/5.1.0_2023-11-02/11288.md
@@ -0,0 +1,8 @@
+Bugfix: Fix crash on start-up when starting shell integration
+
+A possible crash has been fixed that could occur during start-up, when
+the shell integration started doing requests before the client itself
+completed starting up.
+
+https://github.com/owncloud/client/issues/11280
+https://github.com/owncloud/client/pull/11288
diff --git a/changelog/5.1.0_2023-11-02/11308.md b/changelog/5.1.0_2023-11-02/11308.md
new file mode 100644
index 00000000000..7508d38fe7d
--- /dev/null
+++ b/changelog/5.1.0_2023-11-02/11308.md
@@ -0,0 +1,6 @@
+Bugfix: Properly schedule the sync after an account was added
+
+We fixed a bug where a folder was scheduled to be synced before the account reported it was ready.
+This resulted in the sync having no effect and the folder was then only synced once we polled the etag.
+
+https://github.com/owncloud/client/issues/11308
diff --git a/changelog/5.1.0_2023-11-02/11313.md b/changelog/5.1.0_2023-11-02/11313.md
new file mode 100644
index 00000000000..c0f90d79ea4
--- /dev/null
+++ b/changelog/5.1.0_2023-11-02/11313.md
@@ -0,0 +1,6 @@
+Bugfix: Don't start credentials save jobs during shutdown
+
+Due to a bug we "re-saved" the credentials during application shutdown.
+As the application was quitting while the jobs where running we might have encountered corrupted credentials or crashes.
+
+https://github.com/owncloud/client/pull/11313
diff --git a/changelog/5.1.1_2023-11-09/11331.md b/changelog/5.1.1_2023-11-09/11331.md
new file mode 100644
index 00000000000..464b319ef2c
--- /dev/null
+++ b/changelog/5.1.1_2023-11-09/11331.md
@@ -0,0 +1,7 @@
+Bugfix: Prevent permanent deletion of files when disabling VFS
+
+When a user disabled the virtual files feature on Windows, all currently dehydrated files were deleted accidentally.
+On the server those files where still available in the trash bin.
+This regression was introduced in the previous release 5.0.0.
+
+https://github.com/owncloud/client/issues/11331
diff --git a/changelog/5.1.2_2023-11-10/11361.md b/changelog/5.1.2_2023-11-10/11361.md
new file mode 100644
index 00000000000..444a6a80f5a
--- /dev/null
+++ b/changelog/5.1.2_2023-11-10/11361.md
@@ -0,0 +1,11 @@
+Bugfix: Fix crash when keychain job takes longer than expected
+
+In 5.1.1, we introduced a timeout for keychain jobs that killed them when their execution time exceeded 5 seconds and
+log this to allow debugging of problems related to secrets handling.
+
+Apparently, there are valid cases in which these jobs can take longer than the expected timeout, e.g., when the user
+needs to unlock their keychain first or configure it otherwise.
+
+We now let the jobs run indefinitely and log every 5 seconds whether the job is still running.
+
+https://github.com/owncloud/client/pull/11361
diff --git a/changelog/5.2.0_2023-11-27/11296.md b/changelog/5.2.0_2023-11-27/11296.md
new file mode 100644
index 00000000000..74770dd9b0d
--- /dev/null
+++ b/changelog/5.2.0_2023-11-27/11296.md
@@ -0,0 +1,8 @@
+Bugfix: Fix URL resolution for app provider
+
+We fixed a bug in the URL resolution for the app provider.
+If owncloud is installed to a non-root directory we computed a wrong URL for the app provider urls.
+This could trigger a connection validation in the client, which intern triggered a request to the app provider.
+Resulting in an endless loop rendering the client unusable.
+
+https://github.com/owncloud/client/issues/11296
diff --git a/changelog/5.2.0_2023-11-27/11379.md b/changelog/5.2.0_2023-11-27/11379.md
new file mode 100644
index 00000000000..26f55bd5943
--- /dev/null
+++ b/changelog/5.2.0_2023-11-27/11379.md
@@ -0,0 +1,5 @@
+Bugfix: Fix crash on unhandled status code on rename check
+
+We fixed a bug that caused the application to crash instead of just aborting the current sync.
+
+https://github.com/owncloud/client/issues/11379
diff --git a/changelog/5.2.1_2024-01-04/11274.md b/changelog/5.2.1_2024-01-04/11274.md
new file mode 100644
index 00000000000..2eb2016cf3f
--- /dev/null
+++ b/changelog/5.2.1_2024-01-04/11274.md
@@ -0,0 +1,5 @@
+Bugfix: Client stuck in reconnecting
+
+We fixed a bug where the client got stuck while reconnecting to the server.
+
+https://github.com/owncloud/client/issues/11274
diff --git a/changelog/5.2.1_2024-01-04/11413.md b/changelog/5.2.1_2024-01-04/11413.md
new file mode 100644
index 00000000000..40d6612e02b
--- /dev/null
+++ b/changelog/5.2.1_2024-01-04/11413.md
@@ -0,0 +1,7 @@
+Enhancement: Improved reliability for persisting settings
+
+We improved the reliability of saving accounts.
+This might fix an issue where sync connections were lost at random.
+
+https://github.com/owncloud/client/pull/11413
+https://github.com/owncloud/client/issues/11411
diff --git a/changelog/5.3.0_2024-06-06/11276.md b/changelog/5.3.0_2024-06-06/11276.md
new file mode 100644
index 00000000000..d5179ab10cf
--- /dev/null
+++ b/changelog/5.3.0_2024-06-06/11276.md
@@ -0,0 +1,5 @@
+Enhancement: Add support to provide a list of ports for the OAuth process
+
+We added a branding option that enables us to specify a list of ports that are used for the local server during the OAuth process.
+
+https://github.com/owncloud/client/issues/11276
diff --git a/changelog/5.3.0_2024-06-06/11460.md b/changelog/5.3.0_2024-06-06/11460.md
new file mode 100644
index 00000000000..8d8b3aa97b7
--- /dev/null
+++ b/changelog/5.3.0_2024-06-06/11460.md
@@ -0,0 +1,8 @@
+Bugfix: Fix early-use crash in the folder watcher on Linux
+
+In a few error scenarios, the folder watcher on Linux shows a dialog
+with an error message. A crash has been fixed where this occurred before
+the GUI was fully initialised.
+
+https://github.com/owncloud/client/issues/11460
+https://github.com/owncloud/client/pull/11475
diff --git a/changelog/5.3.0_2024-06-06/11467.md b/changelog/5.3.0_2024-06-06/11467.md
new file mode 100644
index 00000000000..0d5986b66d9
--- /dev/null
+++ b/changelog/5.3.0_2024-06-06/11467.md
@@ -0,0 +1,6 @@
+Bugfix: Client stuck in `reconnecting`
+
+Properly handle errors during the update of the server settings.
+Due to an unhandled result, the client could get stuck in a `reconnecting` state.
+
+https://github.com/owncloud/client/pull/11467
diff --git a/changelog/5.3.0_2024-06-06/11552.md b/changelog/5.3.0_2024-06-06/11552.md
new file mode 100644
index 00000000000..20baa751a9f
--- /dev/null
+++ b/changelog/5.3.0_2024-06-06/11552.md
@@ -0,0 +1,5 @@
+Bugfix: Ensure folders are scheduled only once
+
+We fixed a bug where a folder could be scheduled multiple times.
+
+https://github.com/owncloud/client/issues/11552
diff --git a/changelog/5.3.0_2024-06-06/11646.md b/changelog/5.3.0_2024-06-06/11646.md
new file mode 100644
index 00000000000..5030a79d160
--- /dev/null
+++ b/changelog/5.3.0_2024-06-06/11646.md
@@ -0,0 +1,5 @@
+Enhancement: Support `Active Directory Federation Service` as identity provider
+
+We changed the OAuth workflow to support `Active Directory Federation Service`
+
+https://github.com/owncloud/client/issues/11646
diff --git a/changelog/5.3.0_2024-06-06/enterprise-6390.md b/changelog/5.3.0_2024-06-06/enterprise-6390.md
new file mode 100644
index 00000000000..c1bcabac07b
--- /dev/null
+++ b/changelog/5.3.0_2024-06-06/enterprise-6390.md
@@ -0,0 +1,18 @@
+Change: Revert local folder name back to pre 3.0 behavior
+
+Due to user requests, we reverted the folder name from
+```
+ownCloud - Albert@owncloud.com
+ownCloud - Katherine@owncloud.org
+ownCloud - Marie@owncloud.com
+```
+
+back to
+
+ ```
+ownCloud
+ownCloud (1)
+ownCloud (2)
+```
+
+https://github.com/owncloud/enterprise/issues/6390
diff --git a/changelog/5.3.1_2024-06-11/11691.md b/changelog/5.3.1_2024-06-11/11691.md
new file mode 100644
index 00000000000..2b09d7cbcc7
--- /dev/null
+++ b/changelog/5.3.1_2024-06-11/11691.md
@@ -0,0 +1,5 @@
+Bugfix: Ensure the Windows shell extension is linked statically
+
+We fixed a regression where https://cmake.org/cmake/help/latest/policy/CMP0091.html caused our shell extension no longer to be linked statically.
+
+https://github.com/owncloud/client/issues/11691
diff --git a/changelog/5.3.2_2025-01-20/12000.md b/changelog/5.3.2_2025-01-20/12000.md
new file mode 100644
index 00000000000..1ac50869b99
--- /dev/null
+++ b/changelog/5.3.2_2025-01-20/12000.md
@@ -0,0 +1,12 @@
+Bugfix: crash when checking the sync file status
+
+Sometimes a `Folder` is created for a local path that we cannot sync
+(e.g. it's not writable). This folder will not have a sync engine. If
+the engine of this `Folder` is accessed, this will lead to a crash.
+
+The fix is to check for the existence of a sync engine in the
+`Folder::canSync()` method.
+
+https://github.com/owncloud/client/issues/11981
+https://github.com/owncloud/client/pull/11982
+https://github.com/owncloud/client/pull/12000
diff --git a/changelog/5.3.2_2025-01-20/12005.md b/changelog/5.3.2_2025-01-20/12005.md
new file mode 100644
index 00000000000..5e9a540dd99
--- /dev/null
+++ b/changelog/5.3.2_2025-01-20/12005.md
@@ -0,0 +1,7 @@
+Bugfix: OAuth: Prevent logout when refreshing token
+
+Prevent the user being logged out when the network disappears during OAuth token refresh.
+
+https://github.com/owncloud/client/issues/11980
+https://github.com/owncloud/client/pull/11984
+https://github.com/owncloud/client/pull/12005
diff --git a/changelog/5.3.2_2025-01-20/installer-5.3.2.md b/changelog/5.3.2_2025-01-20/installer-5.3.2.md
new file mode 100644
index 00000000000..bdfd49a16a3
--- /dev/null
+++ b/changelog/5.3.2_2025-01-20/installer-5.3.2.md
@@ -0,0 +1,5 @@
+Security: Fixing high security vulnerability in Windows Installer
+
+CVE: CVE-2025-24926
+
+https://github.com/owncloud/client/issues/12010
diff --git a/changelog/6.0.0_2025-09-08/10980.md b/changelog/6.0.0_2025-09-08/10980.md
new file mode 100644
index 00000000000..69ba31b075b
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/10980.md
@@ -0,0 +1,8 @@
+Enhancement: Ask user to restart application when update is available on Windows
+
+Instead of a tray message, we now display a modal dialog on Windows to inform
+the user about a downloaded update. Also, we now can prompt the user to
+restart the application and apply the update immediately, adding a bit of user
+comfort.
+
+https://github.com/owncloud/client/pull/11442
diff --git a/changelog/6.0.0_2025-09-08/11204.md b/changelog/6.0.0_2025-09-08/11204.md
new file mode 100644
index 00000000000..90e3fa9a2cc
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11204.md
@@ -0,0 +1,7 @@
+Enhancement: Prevent same default sync folder for multiple accounts with Spaces
+
+This is done by tagging the sync folder by an extended attribute
+(Linux/macOS) or an alternative data stream (Windows).
+
+https://github.com/owncloud/client/issues/11204
+https://github.com/owncloud/client/pull/11364
diff --git a/changelog/6.0.0_2025-09-08/11245.md b/changelog/6.0.0_2025-09-08/11245.md
new file mode 100644
index 00000000000..f5ccffa47d5
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11245.md
@@ -0,0 +1,8 @@
+Change: Remove unused command line option --language
+
+This option was used before the UI language could be chosen in the
+settings. The option --list-languages is also removed, as it no longer
+serves a purpose.
+
+https://github.com/owncloud/client/issues/11245
+https://github.com/owncloud/client/pull/11270
diff --git a/changelog/6.0.0_2025-09-08/11275.md b/changelog/6.0.0_2025-09-08/11275.md
new file mode 100644
index 00000000000..7138e519044
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11275.md
@@ -0,0 +1,8 @@
+Change: Windows: always use fusion style
+
+We already used the fusion style on Windows for years if the system used dpi scaling.
+Since Qt6.5 the fusion style also support the dark theme on Windows.
+Those two reasons convinced us that always using the fusion style on Windows will result
+in the best experience for the users.
+
+https://github.com/owncloud/client/issues/11275
diff --git a/changelog/6.0.0_2025-09-08/11300.md b/changelog/6.0.0_2025-09-08/11300.md
new file mode 100644
index 00000000000..94f935affe5
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11300.md
@@ -0,0 +1,10 @@
+Change: Make messages translatable that occur early in start-up
+
+These messages include the command-line messages (both errors and the
+help text). To do this, the deprecated `--confdir` option has been
+removed. This option was only used on windows before roaming profiles
+were supported.
+
+https://github.com/owncloud/client/issues/11142
+https://github.com/owncloud/client/issues/11246
+https://github.com/owncloud/client/pull/11300
diff --git a/changelog/6.0.0_2025-09-08/11304.md b/changelog/6.0.0_2025-09-08/11304.md
new file mode 100644
index 00000000000..f9314fb95b2
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11304.md
@@ -0,0 +1,8 @@
+Enhancement: Use less modal dialogs
+
+As the rather high number of modal dialogs we used caused different issues on different platforms,
+we decided to use them less often and try other concepts.
+
+https://github.com/owncloud/client/issues/11304
+https://github.com/owncloud/client/issues/11032
+https://github.com/owncloud/client/issues/11208
diff --git a/changelog/6.0.0_2025-09-08/11320.md b/changelog/6.0.0_2025-09-08/11320.md
new file mode 100644
index 00000000000..c2186afbfe7
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11320.md
@@ -0,0 +1,8 @@
+Enhancement: Add option to move files to trash instead of deleting
+
+An option has been added that when files on the server are deleted,
+the client will move them to the system trash bin instead of deleting
+those files.
+
+https://github.com/owncloud/client/issues/9001
+https://github.com/owncloud/client/pull/11320
diff --git a/changelog/6.0.0_2025-09-08/11325.md b/changelog/6.0.0_2025-09-08/11325.md
new file mode 100644
index 00000000000..9d82e069d6f
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11325.md
@@ -0,0 +1,5 @@
+Change: Deprecate suffix VFS
+
+We decided to deprecate the suffix VFS implementations and thus prepare its removal in 7.0.
+
+https://github.com/owncloud/client/issues/11325
diff --git a/changelog/6.0.0_2025-09-08/11347.md b/changelog/6.0.0_2025-09-08/11347.md
new file mode 100644
index 00000000000..a58729274cf
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11347.md
@@ -0,0 +1,5 @@
+Enhancement: Include recent changes in scheduled syncs
+
+When starting a new sync we now also include the recent change events in the discovery.
+
+https://github.com/owncloud/client/pull/11347
diff --git a/changelog/6.0.0_2025-09-08/11357.md b/changelog/6.0.0_2025-09-08/11357.md
new file mode 100644
index 00000000000..7b8ab8ab488
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11357.md
@@ -0,0 +1,14 @@
+Change: Removal of selective sync tree from account status page
+
+We removed the selective sync support from the main widget and moved it to its own dialog,
+available through the context menu of the sync folder.
+
+Having both the sync status and the selective sync settings in the same widget caused a lot of problems and overhead over the years.
+Additionally, it required us to maintain a lot of special and basically duplicated code, as we already had a dedicated widget to handle selective sync.
+
+https://github.com/owncloud/client/issues/11357
+https://github.com/owncloud/client/issues/11357
+https://github.com/owncloud/client/issues/8102
+https://github.com/owncloud/client/issues/5423
+https://github.com/owncloud/client/issues/4080
+https://github.com/owncloud/client/pull/11524
diff --git a/changelog/6.0.0_2025-09-08/11396.md b/changelog/6.0.0_2025-09-08/11396.md
new file mode 100644
index 00000000000..0152740990c
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11396.md
@@ -0,0 +1,5 @@
+Bugfix: Schedule syncs after an abort
+
+We fixed a bug where the client stopped scheduling syncs after a sync was aborted.
+
+https://github.com/owncloud/client/pull/11396
diff --git a/changelog/6.0.0_2025-09-08/11412.md b/changelog/6.0.0_2025-09-08/11412.md
new file mode 100644
index 00000000000..0d1cf3beb64
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11412.md
@@ -0,0 +1,10 @@
+Change: Fix three badly styled warning messages
+
+There were 3 labels for warning messages that were nearly unreadable in
+dark mode due to bad styling. These have been changed to only use a bold
+font, but are now displayed with a big warning icon on their left. The
+places are: the account settings page, the folder wizard remote path
+page, and the log browser.
+
+https://github.com/owncloud/client/issues/11412
+https://github.com/owncloud/client/pull/11470
diff --git a/changelog/6.0.0_2025-09-08/11424.md b/changelog/6.0.0_2025-09-08/11424.md
new file mode 100644
index 00000000000..cab7fa30339
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11424.md
@@ -0,0 +1,5 @@
+Enhancement: Improve handling of a server blocking an unsupported client
+
+We improved the handling of HTTP 403 status codes.
+
+https://github.com/owncloud/client/issues/11424
diff --git a/changelog/6.0.0_2025-09-08/11450.md b/changelog/6.0.0_2025-09-08/11450.md
new file mode 100644
index 00000000000..b714fa8bd88
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11450.md
@@ -0,0 +1,3 @@
+Bugfix: Fix description of manage public links action
+
+https://github.com/owncloud/client/issues/11450
diff --git a/changelog/6.0.0_2025-09-08/11460.md b/changelog/6.0.0_2025-09-08/11460.md
new file mode 100644
index 00000000000..8d8b3aa97b7
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11460.md
@@ -0,0 +1,8 @@
+Bugfix: Fix early-use crash in the folder watcher on Linux
+
+In a few error scenarios, the folder watcher on Linux shows a dialog
+with an error message. A crash has been fixed where this occurred before
+the GUI was fully initialised.
+
+https://github.com/owncloud/client/issues/11460
+https://github.com/owncloud/client/pull/11475
diff --git a/changelog/6.0.0_2025-09-08/11472.md b/changelog/6.0.0_2025-09-08/11472.md
new file mode 100644
index 00000000000..0083cf6cc66
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11472.md
@@ -0,0 +1,7 @@
+Bugfix: Properly encode scope and prompt items in OAuth URL
+
+Fixed a bug where the scope and prompt items of an OAuth query would not
+be encoded, resulting in an invalid request.
+
+https://github.com/owncloud/client/issues/11472
+https://github.com/owncloud/client/pull/11479
diff --git a/changelog/6.0.0_2025-09-08/11478.md b/changelog/6.0.0_2025-09-08/11478.md
new file mode 100644
index 00000000000..4044bf53c9a
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11478.md
@@ -0,0 +1,7 @@
+Bugfix: Client stuck in reconnecting state after application start
+
+We fixed a bug where the client was starting OAuth authentication but
+did not prompt the user properly to renew authentication.
+This resulted in the client apparently getting stuck in the "reconnecting" state.
+
+https://github.com/owncloud/client/pull/11478
diff --git a/changelog/6.0.0_2025-09-08/11491.md b/changelog/6.0.0_2025-09-08/11491.md
new file mode 100644
index 00000000000..645e9498b8b
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11491.md
@@ -0,0 +1,6 @@
+Enhancement: New Folder status
+
+We rewrote the Folder status page.
+
+https://github.com/owncloud/client/pull/11491
+https://github.com/owncloud/client/issues/11527
diff --git a/changelog/6.0.0_2025-09-08/11497.md b/changelog/6.0.0_2025-09-08/11497.md
new file mode 100644
index 00000000000..ca8cc85f496
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11497.md
@@ -0,0 +1,8 @@
+Bugfix: strip user information from new-connection URL
+
+Credentials in the URL are not supported for some time. This fix strips
+them from the URL before storage and using it to authenticate the client
+to the server.
+
+https://github.com/owncloud/client/issues/11497
+https://github.com/owncloud/client/pull/11509
diff --git a/changelog/6.0.0_2025-09-08/11517.md b/changelog/6.0.0_2025-09-08/11517.md
new file mode 100644
index 00000000000..06aed724d56
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11517.md
@@ -0,0 +1,6 @@
+Change: Removed support for limiting sync of big new folder & external storage
+
+We removed an option which allowed to block new folders bigger than a set limit, from being synchronized automatically, when selective synchronization is used.
+Additionally, we removed the option that allowed to block automatic synchronization of external storage.
+
+https://github.com/owncloud/client/pull/11517
diff --git a/changelog/6.0.0_2025-09-08/11531.md b/changelog/6.0.0_2025-09-08/11531.md
new file mode 100644
index 00000000000..7afaf8b8c35
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11531.md
@@ -0,0 +1,7 @@
+Change: Set the 'No' button as default action in the Unknown Certificate dialog
+
+When an unknown certificate is used by the server, the safe action is to
+reject this certificate. So the default action for this dialog should be
+not to accept this unknown certificate.
+
+https://github.com/owncloud/client/issues/11531
diff --git a/changelog/6.0.0_2025-09-08/11533.md b/changelog/6.0.0_2025-09-08/11533.md
new file mode 100644
index 00000000000..1e0a45aa212
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11533.md
@@ -0,0 +1,9 @@
+Enhancement: Pause sync when behind a captive portal
+
+When the operating system detects a captive portal, stop all outgoing
+network requests. These requests will fail with an SSL certificate
+mismatch error. When the captive portal is "gone", synchronisation will
+be restarted.
+
+https://github.com/owncloud/client/issues/11533
+https://github.com/owncloud/client/pull/11567
diff --git a/changelog/6.0.0_2025-09-08/11569.md b/changelog/6.0.0_2025-09-08/11569.md
new file mode 100644
index 00000000000..6fb236b2d12
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11569.md
@@ -0,0 +1,6 @@
+Change: Remove `Remove all files` dialog
+
+We no longer ask the user whether all files should be removed but just sync.
+
+https://github.com/owncloud/client/issues/11569
+https://github.com/owncloud/client/issues/7304
diff --git a/changelog/6.0.0_2025-09-08/11581.md b/changelog/6.0.0_2025-09-08/11581.md
new file mode 100644
index 00000000000..993a189beef
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11581.md
@@ -0,0 +1,5 @@
+Bugfix: Support logging redirect
+
+We now log when all urls when a request was redirected.
+
+https://github.com/owncloud/client/pull/11581
diff --git a/changelog/6.0.0_2025-09-08/11595.md b/changelog/6.0.0_2025-09-08/11595.md
new file mode 100644
index 00000000000..743979fbd32
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11595.md
@@ -0,0 +1,3 @@
+Change: Rewrite of the spaces browser
+
+https://github.com/owncloud/client/pull/11595
diff --git a/changelog/6.0.0_2025-09-08/11621.md b/changelog/6.0.0_2025-09-08/11621.md
new file mode 100644
index 00000000000..eb6bdc85910
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11621.md
@@ -0,0 +1,3 @@
+Bugfix: Don't store null certificates in the account
+
+https://github.com/owncloud/client/issues/11621
diff --git a/changelog/6.0.0_2025-09-08/11664.md b/changelog/6.0.0_2025-09-08/11664.md
new file mode 100644
index 00000000000..065f8a4bfac
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11664.md
@@ -0,0 +1,5 @@
+Bugfix: Fix crash for folders that could not be initialized
+
+We fixed a bug where interacting with a folder in the file browser could lead to a crash if the folder was not properly initialized.
+
+https://github.com/owncloud/client/pull/11664
diff --git a/changelog/6.0.0_2025-09-08/11729.md b/changelog/6.0.0_2025-09-08/11729.md
new file mode 100644
index 00000000000..0de8cec04bd
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11729.md
@@ -0,0 +1,6 @@
+Enhancement: Support for prompt_values_supported in openid-configuration
+
+We implemented support for idP's to specify the supported prompt values.
+
+https://github.com/owncloud/client/pull/11729
+https://github.com/owncloud/client/pull/12163
diff --git a/changelog/6.0.0_2025-09-08/11742.md b/changelog/6.0.0_2025-09-08/11742.md
new file mode 100644
index 00000000000..31dd4c711f1
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11742.md
@@ -0,0 +1,7 @@
+Change: New update channel for ownCloud infinite scale
+
+The release series 6 is a long term release.
+As version 7 will drop the support for ownCloud 10, users will either have to select the ownCloud infinite scale update channel in the about-dialog or manually install a newer release.
+This change only affects the unbranded version.
+
+https://github.com/owncloud/client/issues/11742
diff --git a/changelog/6.0.0_2025-09-08/11743.md b/changelog/6.0.0_2025-09-08/11743.md
new file mode 100644
index 00000000000..539eef3a2f5
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11743.md
@@ -0,0 +1,6 @@
+Change: Remove support for branded shell extensions on Linux
+
+From now on user will have to install dolphin-owncloud nautilus-owncloud
+instead of a branded version.
+
+https://github.com/owncloud/client/issues/11743
diff --git a/changelog/6.0.0_2025-09-08/11752.md b/changelog/6.0.0_2025-09-08/11752.md
new file mode 100644
index 00000000000..277d596f626
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11752.md
@@ -0,0 +1,7 @@
+Change: Only allow to add un-synced spaces
+
+We now prevent users from syncing the same space multiple times.
+
+
+https://github.com/owncloud/client/issues/11752
+https://github.com/owncloud/client/pull/11759
diff --git a/changelog/6.0.0_2025-09-08/11760.md b/changelog/6.0.0_2025-09-08/11760.md
new file mode 100644
index 00000000000..63f2111f7e1
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11760.md
@@ -0,0 +1,3 @@
+Enhancement: Display how many spaces are un-synced
+
+https://github.com/owncloud/client/pull/11760
diff --git a/changelog/6.0.0_2025-09-08/11774.md b/changelog/6.0.0_2025-09-08/11774.md
new file mode 100644
index 00000000000..3bd534d8a5d
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11774.md
@@ -0,0 +1,7 @@
+Enhancement: New branding option: automatically sync new spaces
+
+A branding option was added to add new sync connections for newly
+discovered spaces.
+
+https://github.com/owncloud/client/issues/11751
+https://github.com/owncloud/client/pull/11774
diff --git a/changelog/6.0.0_2025-09-08/11810.md b/changelog/6.0.0_2025-09-08/11810.md
new file mode 100644
index 00000000000..337bd6b839f
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11810.md
@@ -0,0 +1,11 @@
+Bugfix: Make open account in browser accessible for keyboard navigation
+
+On the account settings page, the status label contained the URL of the
+server. This URL was not accessible with keyboard navigation or when a
+screen-reader was used. Now there is an "Open in Web Browser" action in
+the pop-up menu of the "Manage Account" button (which is next to the
+status label), and the URL has been removed from the status label.
+
+https://github.com/owncloud/client/issues/11772
+https://github.com/owncloud/client/issues/11800
+https://github.com/owncloud/client/pull/11810
diff --git a/changelog/6.0.0_2025-09-08/11839.md b/changelog/6.0.0_2025-09-08/11839.md
new file mode 100644
index 00000000000..79cbdeef7ff
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11839.md
@@ -0,0 +1,3 @@
+Bugfix: Don't log misleading error if dynamic registration failed
+
+https://github.com/owncloud/client/pull/11839
diff --git a/changelog/6.0.0_2025-09-08/11856.md b/changelog/6.0.0_2025-09-08/11856.md
new file mode 100644
index 00000000000..a73353d02f2
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/11856.md
@@ -0,0 +1,3 @@
+Change: Rewrite of the login widget in QML
+
+https://github.com/owncloud/client/pull/11856
diff --git a/changelog/6.0.0_2025-09-08/12044.md b/changelog/6.0.0_2025-09-08/12044.md
new file mode 100644
index 00000000000..eb715b8a924
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/12044.md
@@ -0,0 +1,7 @@
+Change: Only support APFS on macOS
+
+Apple File System in contrary to HFS+ is Unicode normalization preserving.
+To support this properly the upcoming version 6 of desktop client will support
+NFC and NFD encoding on all client platforms based on the individual characteristics.
+
+https://github.com/owncloud/client/pull/12044
diff --git a/changelog/6.0.0_2025-09-08/12045.md b/changelog/6.0.0_2025-09-08/12045.md
new file mode 100644
index 00000000000..3569b1436ec
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/12045.md
@@ -0,0 +1,7 @@
+Bugfix: Fix crash after resource job fails
+
+When a network error occurs while fetching a resource (e.g. a space
+image), no icon is available, and a crash would occur. This is fixed by
+returning an empty icon.
+
+https://github.com/owncloud/client/pull/12045
diff --git a/changelog/6.0.0_2025-09-08/12093.md b/changelog/6.0.0_2025-09-08/12093.md
new file mode 100644
index 00000000000..dd3f0de352f
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/12093.md
@@ -0,0 +1,6 @@
+Change: Update the sync exclude list for Infinite Scale
+
+Files with the extension `.space` and `.psec` are now excluded from sync by default.
+
+https://github.com/owncloud/client/pull/12262
+https://github.com/owncloud/client/pull/12093
\ No newline at end of file
diff --git a/changelog/6.0.0_2025-09-08/12214.md b/changelog/6.0.0_2025-09-08/12214.md
new file mode 100644
index 00000000000..c0a3ccdcd51
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/12214.md
@@ -0,0 +1,8 @@
+Bugfix: Remove any existing ResourceCache directories for accounts
+
+Some versions of the client failed to remove the temporary cache
+directory on exit. This can result in multiple GB of cached space
+images. These cache directories are now cleaned up before creating a new
+cache.
+
+https://github.com/owncloud/client/pull/12214
diff --git a/changelog/6.0.0_2025-09-08/12224.md b/changelog/6.0.0_2025-09-08/12224.md
new file mode 100644
index 00000000000..053f08667bd
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/12224.md
@@ -0,0 +1,5 @@
+Bugfix: Delete account-specific caches when an account is removed
+
+This includes the cache for space images, as well as certain cached network jobs.
+
+https://github.com/owncloud/client/pull/12224
diff --git a/changelog/6.0.0_2025-09-08/12245.md b/changelog/6.0.0_2025-09-08/12245.md
new file mode 100644
index 00000000000..5d4d2e342d1
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/12245.md
@@ -0,0 +1,4 @@
+Change: Bump minimum macOS version to 13.0
+
+https://github.com/owncloud/client/pull/12245
+https://github.com/owncloud/client/pull/12246
\ No newline at end of file
diff --git a/changelog/6.0.0_2025-09-08/4808.md b/changelog/6.0.0_2025-09-08/4808.md
new file mode 100644
index 00000000000..4ca761fa4c0
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/4808.md
@@ -0,0 +1,9 @@
+Enhancement: Add option to pause synchronization on metered connections
+
+On platforms that support metered-connection detection, an option is now
+available to pause folder synchronization when the network connection
+switches to metered-connection. When synchronization is paused, force-syncing can
+still be done.
+
+https://github.com/owncloud/client/issues/4808
+https://github.com/owncloud/client/pull/11305
diff --git a/changelog/6.0.0_2025-09-08/enterprise-6390.md b/changelog/6.0.0_2025-09-08/enterprise-6390.md
new file mode 100644
index 00000000000..c1bcabac07b
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/enterprise-6390.md
@@ -0,0 +1,18 @@
+Change: Revert local folder name back to pre 3.0 behavior
+
+Due to user requests, we reverted the folder name from
+```
+ownCloud - Albert@owncloud.com
+ownCloud - Katherine@owncloud.org
+ownCloud - Marie@owncloud.com
+```
+
+back to
+
+ ```
+ownCloud
+ownCloud (1)
+ownCloud (2)
+```
+
+https://github.com/owncloud/enterprise/issues/6390
diff --git a/changelog/6.0.0_2025-09-08/enterprise-6761.md b/changelog/6.0.0_2025-09-08/enterprise-6761.md
new file mode 100644
index 00000000000..7c18b5b0c6b
--- /dev/null
+++ b/changelog/6.0.0_2025-09-08/enterprise-6761.md
@@ -0,0 +1,3 @@
+Bugfix: Fix location loading on Mac
+
+https://github.com/owncloud/enterprise/issues/6761
diff --git a/changelog/6.0.1_2025-10-10/.gitkeep b/changelog/6.0.1_2025-10-10/.gitkeep
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/changelog/6.0.1_2025-10-10/12305.md b/changelog/6.0.1_2025-10-10/12305.md
new file mode 100644
index 00000000000..a334fdeee44
--- /dev/null
+++ b/changelog/6.0.1_2025-10-10/12305.md
@@ -0,0 +1,8 @@
+Bugfix: Fix VFS checkbox in folder wizard
+
+On the last page of the folder wizard, there is a checkbox to
+select/deselect VFS. By default this is checked. The bug was that
+after unchecking this checkbox, it could not be checked again.
+This has now been fixed.
+
+https://github.com/owncloud/client/pull/12305
diff --git a/changelog/6.0.1_2025-10-10/12334.md b/changelog/6.0.1_2025-10-10/12334.md
new file mode 100644
index 00000000000..c775d84b5e4
--- /dev/null
+++ b/changelog/6.0.1_2025-10-10/12334.md
@@ -0,0 +1,6 @@
+Bugfix: reverting UTF-8 normalisation change
+
+The UTF-8 normalization change as per #12039 has been reverted.
+
+https://github.com/owncloud/client/pull/12334
+https://github.com/owncloud/client/pull/12039
\ No newline at end of file
diff --git a/changelog/6.0.1_2025-10-10/12338.md b/changelog/6.0.1_2025-10-10/12338.md
new file mode 100644
index 00000000000..b847ac3da4a
--- /dev/null
+++ b/changelog/6.0.1_2025-10-10/12338.md
@@ -0,0 +1,6 @@
+Change: move to trash-bin is enabled now by default
+
+To protect users from data loss the "move to trash" option is now
+enabled by default.
+
+https://github.com/owncloud/client/pull/12338
\ No newline at end of file
diff --git a/changelog/6.0.2_2025-11-03/12379.md b/changelog/6.0.2_2025-11-03/12379.md
new file mode 100644
index 00000000000..eb9022d24fb
--- /dev/null
+++ b/changelog/6.0.2_2025-11-03/12379.md
@@ -0,0 +1,7 @@
+Security: Fixing high security vulnerability in MacOS client
+
+CVE: CVE-2025-64441
+
+https://github.com/owncloud/client/pull/12379
+https://github.com/owncloud/client/pull/12389
+https://github.com/owncloud/client/pull/12390
diff --git a/changelog/6.0.3_2026-01-07/12364.md b/changelog/6.0.3_2026-01-07/12364.md
new file mode 100644
index 00000000000..7ddc8484582
--- /dev/null
+++ b/changelog/6.0.3_2026-01-07/12364.md
@@ -0,0 +1,6 @@
+Change: Third party upgrades in distributed binaries
+
+We updated OpenSSL to 3.4.3
+
+https://github.com/owncloud/client/pull/12364
+https://github.com/owncloud/client/pull/12432
\ No newline at end of file
diff --git a/changelog/6.0.3_2026-01-07/12431.md b/changelog/6.0.3_2026-01-07/12431.md
new file mode 100644
index 00000000000..04072400d67
--- /dev/null
+++ b/changelog/6.0.3_2026-01-07/12431.md
@@ -0,0 +1,7 @@
+Security: Fixing medium security vulnerability in password input handling
+
+CVE and security advisory will follow.
+
+
+https://github.com/owncloud/client/pull/12430
+https://github.com/owncloud/client/pull/12431
diff --git a/changelog/CHANGELOG.md b/changelog/CHANGELOG.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/changelog/CHANGELOG.tmpl b/changelog/CHANGELOG.tmpl
index e0f90ef9e67..fcbde4a1059 100644
--- a/changelog/CHANGELOG.tmpl
+++ b/changelog/CHANGELOG.tmpl
@@ -1,7 +1,13 @@
+# Table of Contents
+
+{{ range . -}}
+ * [Changelog for {{ .Version }}](#changelog-for-owncloud-desktop-client-{{ .Version | replace "." ""}}-{{ .Date | lower -}})
+{{ end -}}
+ * [Changelog for 2.6.1 versions and below](#changelog-for-261-versions-and-below)
{{ $allVersions := . }}
{{- range $index, $changes := . }}{{ with $changes -}}
-Changelog for ownCloud Desktop Client [{{ .Version }}] ({{ .Date }})
-=======================================
+# Changelog for ownCloud Desktop Client [{{ .Version }}] ({{ .Date }})
+
The following sections list the changes in ownCloud Desktop Client {{ .Version }} relevant to
ownCloud admins and users.
@@ -21,14 +27,12 @@ ownCloud admins and users.
[{{ .Version }}]: https://github.com/owncloud/client/compare/v2.6.1...v{{ .Version }}
{{- end }}
-Summary
--------
+## Summary
{{ range $entry := .Entries }}{{ with $entry }}
* {{ .Type }} - {{ .Title }}: [#{{ .PrimaryID }}]({{ .PrimaryURL }})
{{- end }}{{ end }}
-Details
--------
+## Details
{{ range $entry := .Entries }}{{ with $entry }}
* {{ .Type }} - {{ .Title }}: [#{{ .PrimaryID }}]({{ .PrimaryURL }})
{{ range $par := .Paragraphs }}
@@ -47,8 +51,7 @@ Details
{{ end }}{{ end -}}
{{/* Start of old changelog */ -}}
-ChangeLog
-=========
+# Changelog for 2.6.1 versions and below
version 2.6.1 (2020-01-17)
(last updated on de0d330c002436454f3fe4929bd707e5f0425949)
@@ -143,7 +146,7 @@ Some small changes and bug fixes:
* GUI: Improve help text in ignore editor (#7162)
* GUI: Show restoration items in protocol
* Sharing: Fix issues with enforced passwords and expiry (#7246, #7245)
-* Sharing: Fix resharing an item in a share with limited permissions (#7275)
+* Sharing: Fix re-sharing an item in a share with limited permissions (#7275)
* Sharing: Use the default expiration date even when not enforced (#7256)
* Sharing: When sharing from context menu, show dialog if share creation fails (#7286)
* Sharing: Always show at least readonly permissions (#7429)
@@ -156,7 +159,7 @@ Some small changes and bug fixes:
* Updater: Set correct state on network error (#3933)
* Updater: Provide more useful options on update failure (#7217)
* Updater: Improve logging (#3475, #7388)
-* Updater: Fix Version numer not shown in the user visible string (#7288)
+* Updater: Fix Version number not shown in the user visible string (#7288)
* DB: Database path for new folders now starts with ".sync_", avoiding the "._" (#5904)
* File hashes: Add support for SHA256 and SHA3
* Cmd: Respect chunk sizing environment variables (#7078)
@@ -166,7 +169,7 @@ Some small changes and bug fixes:
* Log: Print critical and fatal messages to stderr
* Doc: Migrate the documentation to Antora (#6785)
* Doc: Update Windows build instructions
-* Doc: Add explanation of how to manually change server url (#6579)
+* Doc: Add explanation of how to manually change server URL (#6579)
* Doc: List more environment variables
* Doc: List more config file options (owncloud/docs#1365)
* Build: Fix KDEInstallDirs deprecation warnings (#6922)
@@ -246,7 +249,7 @@ version 2.5.1 (2018-11-09)
* macOS: Improve macdeployqt.py
* Discovery: Include path in error message (#6826)
* Database: Allow downgrade from 2.6
-* Migration from 2.4: fallback to move file by file if directory move failled (#6807)
+* Migration from 2.4: fallback to move file by file if directory move failed (#6807)
* owncloudcmd: Read server version and dav user id from the server (#6830)
version 2.5.0 (2018-09-18)
@@ -311,12 +314,12 @@ version 2.5.0 (2018-09-18)
* Sync: When detecting a local move, keep the local mtime (#6629)
* Sync: Better error handling for local directory parsing (#6610)
* Sync: Error if properties are missing (#6317)
-* Sync: Recover when the PUT reply (or chunkin's MOVE) is lost (#5106)
+* Sync: Recover when the PUT reply (or chunking MOVE) is lost (#5106)
* Sync: Do not abort a sync if the server closes the connection (#6516)
* Sync: Increase the timeout for the last MOVE/PUT for huge files (#6527)
* Sync: Fix renames making hierarchy inversion (#6694)
* Sync: RemotePermissions: Fix empty vs null (#4608)
-* Sync: Fix the "direction" of the "all file delted" message when the server is reset (#6317)
+* Sync: Fix the "direction" of the "all file deleted" message when the server is reset (#6317)
* Data-Fingerprint: Fix backup detection when fingerprint is empty
* propagateuploadv1: Fixed an assert with ownCloud 5
* Download: Use the from the reply in the error message (#6459, #6459)
@@ -519,9 +522,9 @@ version 2.3.3 (2017-08-29)
* Overlay Icons: Fix potential hangs on Windows
* SyncJournalDB: Don't use ._ as filename pattern if that does not work because of SMB storage settings (#5844)
* SyncJournalDB: Log reason for sqlite3 opening errors
-* Notifications: Proapgate "Dismiss" button action to server (#5922)
+* Notifications: Propagate "Dismiss" button action to server (#5922)
* Switch Linux build also to Qt 5.6.2 (#5470)
-* Stopped maintaining Qt 4 buildability
+* Stopped maintaining Qt 4 build ability
version 2.3.2 (2017-05-08)
* Fix more crashes (thanks to everyone submitting to our crash reporter!)
@@ -543,21 +546,21 @@ version 2.3.0 (2017-03-03)
* Allow to not sync the server's external storages by default
* Switch Windows and OS X build to Qt 5.6.2
* Switch to new ownCloud server WebDAV endpoint
-* Chunking NG: New file upload chunking algorithmn for ownCloud server 9.2
+* Chunking NG: New file upload chunking algorithm for ownCloud server 9.2
* Allow to sync a folder to multiple different servers (Filename change from .csync_journal.db to _sync_$HASH.db)
* Conflicts: Use the local mtime for the conflict file name (#5273)
* "Sync now" menu item
* SSL Client certificate support improved (Show UI, Store keys in keychain)
* Propagator: Upload more small files in parallel
* Sync Engine: Read data-fingerprint property to detect backups (#2325)
-* GUI: Show link to ceate an app password/token for syncing
+* GUI: Show link to create an app password/token for syncing
* Share dialog: Add 'Mail link' button
* Caja file manager plugin
* Make "backup detected" message to not trigger in wrong cases
* SyncEngine: Fix renaming of folder when file are changed (#5192)
* Fix reconnect bug if status.php intermittently returns wrong data (#5188)
* Improve sync scheduling (#5317)
-* Overlay icons: Improvements in correctnes
+* Overlay icons: Improvements in correctness
* Tray menu: Only update on demand to fix Linux desktop integration glitches
* Progress: Better time/bandwidth estimations
* Network: Follow certain HTTP redirects (#2791)
@@ -631,7 +634,7 @@ version 2.2.0 (release 2016-05-12)
* Improved netrc parser (#4691)
* Improved user notifications about ignored files and conflicts (#4761, #3222)
* Add warnings for old server versions (#4523)
- * Enable tranportation checksums if the server supports based on server capabilities (#3735)
+ * Enable transportation checksums if the server supports based on server capabilities (#3735)
* Default Chunk-size changed to 10MB (#4354)
* Documentation Improvements, ie. about overlay icons
@@ -642,7 +645,7 @@ version 2.2.0 (release 2016-05-12)
version 2.1.1 (release 2016-02-10)
* UI improvements for HiDPI screens, error messages, RTL languages
- * Fix occurences of "Connection Closed" when a new unauthenticated TCP socket is used
+ * Fix occurrences of "Connection Closed" when a new unauthenticated TCP socket is used
* Fix undeliberate WiFi scanning done by Qt Network classes
* Several fixes/improvements to the sharing dialog
* Several fixes/improvements to the server activity tab
@@ -673,12 +676,12 @@ version 2.1 (release 2015-12-03)
* Improved reconnecting after network change/disconnect (#4167 #3969 ...)
* Improved performance in Windows file system discovery
* Removed libneon-based propagator. As a consequence, The client can no
- longer provide bandwith limiting on Linux-distributions where it is
+ longer provide bandwidth limiting on Linux-distributions where it is
using Qt < 5.4
* Performance improvements in the logging functions
* Ensured that local disk space problems are handled gracefully (#2939)
* Improved handling of checksums: transport validation, db (#3735)
- * For *eml-files don't reupload if size and checksum are unchanged (#3235)
+ * For *eml-files don't re-upload if size and checksum are unchanged (#3235)
* Ensured 403 reply code is handled properly (File Firewall) (#3490)
* Reduced number of PROPFIND requests to server(#3964)
* GUI: Added Account toolbox widget to keep account actions (#4139)
@@ -686,14 +689,14 @@ version 2.1 (release 2015-12-03)
* FolderMan: Fixed infinite wait on pause (#4093)
* Renamed env variables to include unit (#2939)
* FolderStatusModel: Attempt to detect removed undecided files (#3612)
- * SyncEngine: Don't whipe the white list if the sync was aborted (#4018)
+ * SyncEngine: Don't wipe the white list if the sync was aborted (#4018)
* Quota: Handle special negative value for the quota (#3940)
* State app name in update notification (#4020)
* PropagateUpload: Fixed double-emission of finished (#3844)
* GUI: Ensured folder names which are excluded from sync can be clicked
* Shell Integration: Dolphin support, requires KF 5.16 and KDE Application 15.12
* FolderStatusModel: Ensured reset also if a folder was renamed (#4011)
- * GUI: Fixed accessiblity of remaing items in full settings toolbar (#3795)
+ * GUI: Fixed accessibility of remaining items in full settings toolbar (#3795)
* Introduced the term "folder sync connection" in more places (#3757)
* AccountSettings: Don't disable pause when offline (#4010)
* Fixed handling of hidden files (#3980)
@@ -706,7 +709,7 @@ version 2.1 (release 2015-12-03)
* owncloudcmd: Don't do a check that file are older than 2s (#4160)
* Fixed getting size for selective sync (#3986)
* Re-added close button in the settings window (#3713)
- * Added abililty to handle storage limitations gracefully (#3736)
+ * Added ability to handle storage limitations gracefully (#3736)
* Organized patches to our base Qt version into admin/qt/patches
* Plus: A lot of unmentioned improvements and fixes
@@ -805,7 +808,7 @@ version 1.8.2 (release 2015-06-08)
* Win32: Allow concurrent OEM (un-)installers (#3272)
* Win32: Make Setup/Update Mutex theme-unique (#3272)
* HTTP: Add the branding name to the UserAgent string
- * ConnectonValidator: Always run with new credentials (#3266)
+ * ConnectionValidator: Always run with new credentials (#3266)
* Recall Feature: Admins can trigger an upload of a file from
client to server again (#3246)
* Propagator: Add 'Content-Length: 0' header to MKCOL request (#3256)
@@ -814,7 +817,7 @@ version 1.8.2 (release 2015-06-08)
* Fix opening external links for some labels (#3135)
* AccountState: Run only a single validator, allow error message
overriding (#3236, #3153)
- * SyncJournalDB: Minor fixes and simplificatons
+ * SyncJournalDB: Minor fixes and simplifications
* SyncEngine: Force re-read of folder Etags for upgrades from
1.8.0 and 1.8.1
* Propagator: Limit length of temporary file name (#2789)
@@ -878,7 +881,7 @@ version 1.8.1 (release 2015-05-07)
* AccountWizard: Fix auth error handling. #3155
* Documentation fixes
* Infrastructure/build fixes
- * Win32/OS X: Apply patch from OpenSSL to handle oudated intermediates gracefully #3087
+ * Win32/OS X: Apply patch from OpenSSL to handle outdated intermediates gracefully #3087
version 1.8.0 (release 2015-03-17)
* Mac OS: HIDPI support
@@ -888,7 +891,7 @@ version 1.8.0 (release 2015-03-17)
* Enhanced usage of parallel HTTP requests for ownCloud 8 servers
* Renamed github repository from mirall to client.
* Mac OS: Use native notification support
- * Selective Sync: allow to enforce selective sync in brandings.
+ * Selective Sync: allow to enforce selective sync in branding.
* Added ability to build on Windows utilizing MingGW
* SQLite database fixes if running on FAT filesystems
* Improved detection of changing files to upload from local
@@ -910,12 +913,12 @@ version 1.7.1 (release 2014-12-18)
* Documentation fixes and updates
* Nautilus Python plugin fixed for Python 3
* GUI wording fixes plus improved log messages
- * Fix hidning of the database files in the sync directories
+ * Fix hiding of the database files in the sync directories
* Compare http download size with the header value to avoid broken
downloads, bug #2528
* Avoid initial ETag fetch job at startup, which is not needed.
* Add chunk size http header to PUT requests
- * Fixed deteteCookie method of our CookieJar, fix for Shibboleth
+ * Fixed detectCookie method of our CookieJar, fix for Shibboleth
* Added fallback for distros where XDG_RUNTIME_DIR is undefined
* Fix the setup wizard, bug #1989, #2264
* Fix scheduling of ETag check jobs, bug #2553
@@ -996,7 +999,7 @@ version 1.6.2 (release 2014-07-28 )
* Fix data corruption while trying to resume and the server does
not support it.
* HTTP Credentials: Read password from legacy place if not found.
- * Shibboleth: Fix the waiting curser that would not disapear (#1915)
+ * Shibboleth: Fix the waiting cursor that would not disappear (#1915)
* Limit memory usage to avoid mem wasting and crashes
* Propagator: Fix crash when logging out during upload (#1957)
* Propagator_qnam: Fix signal slot connection (#1963)
@@ -1027,14 +1030,14 @@ version 1.6.1 (release 2014-06-26 )
version 1.6.0 (release 2014-05-30 )
* Minor GUI improvements
* Qt5 compile issues fixed
- * Ignore sync log file in filewatcher
+ * Ignore sync log file in file-watcher
* Install libocsync to private library dir and use rpath to localize
* Fix reconnect after server disconnect
* Fix "unknown action" display in Activity window
* Fix memory leaks
* Respect XDG_CONFIG_HOME environment var
* Handle empty fileids in the journal correctly
- * Add abilility to compile libowncloudsync without GUI dependendy
+ * Add ability to compile libowncloudsync without GUI dependency
* Fix SSL error with previously-expired CAs on Windows
* Fix incorrect folder pause state after start
* Fix a couple of actual potential crashes
@@ -1081,7 +1084,7 @@ version 1.5.2 (release 2014-02-26 )
* Fix online state handling (#1441, #1459)
* Fix potential crash in c_iconv on Mac OS
* Fix certificate chain display in SSLButton
- * Fix sporadicly appearing multiple auth prompts on sign-in
+ * Fix sporadically appearing multiple auth prompts on sign-in
* Show correct state icon in Account Settings right away
* Re-fetch content that gets deleted from read only shared directories
* Do not store the password in the config file, erase existing ones (#1469)
@@ -1134,7 +1137,7 @@ version 1.5.0 (release 2013-12-12 ), csync 0.91.4 required
* Ask for password if missing
* Introduce activity view
* Introduce black list for files which could not be synced
- * Enabling accessbility by shipping accessibility enables on OS X (#736)
+ * Enabling accessibility by shipping accessibility enables on OS X (#736)
* Toggle Settings window when clicking on systray icon on Win and KDE (#896)
* FolderWizard: Sanitize error detection (#1201)
* Set proper enable state of blacklist button after the dialog was opened
@@ -1166,7 +1169,7 @@ version 1.4.2 (release 2013-10-18 ), csync 0.90.4 required
* Fix high CPU load (#1073)
* Reconnect if network is unavailable after startup (#1080)
* Ensure paused folder stays paused when syncing with more than one folder (#1083)
- * Don't show desktop notification when the user doesn't want to (#1093)
+ * Don't show desktop notification when the user does not want to (#1093)
* System tray: Avoid quick flickering up of the ok-icon for the sync prepare state
* Progress: Do not show progress if nothing is transmitted
* Progress: Show number of deletes.
@@ -1187,10 +1190,10 @@ version 1.4.1 (release 2013-09-24 ), csync 0.90.1 required
* Fixed various folder wizard issues, bug #992
* Made "Sync started" message optional, fixes bug #934
* Fixed shutdown, avoid crashed config on win32, fixes bug #945
- * Pop up config wizard if no server url is configured, fixes bug #1018
+ * Pop up config wizard if no server URL is configured, fixes bug #1018
* Settings: calculate sidebar width dynamically, fixes bug #1020
* Fixed a crash if sync folders were removed, fixes bug #713
- * Do proper resync after network disconnect, fixes bug #1007
+ * Do proper re-sync after network disconnect, fixes bug #1007
* Various minor code fixes
version 1.4.0 (release 2013-09-04 ), csync 0.90.0 required
@@ -1204,15 +1207,15 @@ version 1.4.0 (release 2013-09-04 ), csync 0.90.0 required
* Introduce a sync history, persisting results across syncs
* Move ability to switch to mono icons from a switch to a Settings option
* Add "Launch on System Startup" GUI option
- * Add "Show Desktop Nofications"GUI option (enabled by default)
+ * Add "Show Desktop Notifications" GUI option (enabled by default)
top optionally disable sync notifications
* Add Help item, pointing to online reference
* Implement graphical selection of remote folders in FolderWizard
* Allow custom ignore patterns
- * Add an editor for ingore patterns
- * ALlow to flag certain ignore patterns as discardable
+ * Add an editor for ignore patterns
+ * Allow to flag certain ignore patterns as discard-able
* Ensure to ship with all valid translations
- * Progress Dialog now preserves the last syncned items across sync runs
+ * Progress Dialog now preserves the last synced items across sync runs
* Split Setup Wizard into multiple pages again
* Implement "--logfile -" to log to stdout
* Add preliminary support for Shibboleth authentication
@@ -1271,7 +1274,7 @@ version 1.2.4 (release 2013-04-11 ), csync 0.70.6 required
* [Fixes] Allow setting the configuration directory on command line
version 1.2.3 (release 2013-04-02 ), csync 0.70.5 required
- * [Fixes] Unbreak self-signed certificate handling
+ * [Fixes] Un-break self-signed certificate handling
version 1.2.2 (release 2013-04-02 ), csync 0.70.5 required
* [Fixes] Do not crash when local file tree contains symlinks
@@ -1290,7 +1293,7 @@ version 1.2.1 (release 2013-02-26 ), csync 0.70.4 required
* [Fixes] Stop sync scheduling when configuration wizard starts.
* [Fixes] Clear pending network requests when stepping back in config wizard.
* [Fixes] User password dialog asynchronous issues.
- * [Fixes] Make folderman starting and stoping the scheduling.
+ * [Fixes] Make folderman starting and stopping the scheduling.
* [Fixes] Various minor fixes and cleanups.
* [Fixes] Crash on pausing sync
* [Fixes] Stale lock file after pausing sync
@@ -1301,16 +1304,16 @@ version 1.2.1 (release 2013-02-26 ), csync 0.70.4 required
* [Platform] Simplified/fixed credential store usage and custom configs.
* [Platform] Added soname version to libowncloudsync.
* [Platform] Pull in Qt translations
- * [Gui] Make sync result popups less annoyingq
+ * [Gui] Make sync result popups less annoying
* [Gui] Fix for result popup
version 1.2.0 (release 2013-01-24 ), csync 0.70.2 required
* [GUI] New status dialog to show a detailed list of synced files.
* [GUI] New tray notifications about synced files.
* [GUI] New platform specific icon set.
- * [App] Using cross platform QtKeychain library to store credentials crypted.
+ * [App] Using cross platform QtKeychain library to store credentials encrypted.
* [App] Use cross platform notification for changes in the local file system rather than regular poll.
- * [Fixes] Improved SSL Certificate handling and SSL fixes troughout syncing.
+ * [Fixes] Improved SSL Certificate handling and SSL fixes throughout syncing.
* [Fixes] Fixed proxy authentication.
* [Fixes] Allow brackets in folder name alias.
* [Fixes] Lots of other minor fixes.
@@ -1331,13 +1334,13 @@ version 1.1.2 (release 2012-11-26 ), csync 0.60.2 required
* [Fixes] lots of other minor fixes.
* [GUI] Display error messages in status dialog.
* [GUI] GUI fixes for the connection wizard.
- * [GUI] Show username for connection in statusdialog.
+ * [GUI] Show username for connection in status-dialog.
* [GUI] Show intro wizard on new connection setup.
* [APP] Use CredentialStore to better support various credential
backends.
* [APP] Handle missing local folder more robust: Create it if
missing instead of ignoring.
- * [APP] Simplify treewalk code.
+ * [APP] Simplify tree-walk code.
* [Platform] Fix Mac building
version 1.1.1 (release 2012-10-18), csync 0.60.1 required
@@ -1382,7 +1385,7 @@ version 1.0.5 (release 2012-08-14), csync 0.50.8 required
version 1.0.4 (release 2012-08-10), csync 0.50.8 required
* [APP] ownCloud is now a single instance app, can not start twice any more.
* [APP] Proxy support
- * [APP] Handle HTTP redirection correctly, note new url.
+ * [APP] Handle HTTP redirection correctly, note new URL.
* [APP] More relaxed handling of read only directories in the sync paths.
* [APP] Started to split off a library with sync functionality, eg for KDE
* [APP] Make ownCloud Info class a singleton, more robust.
@@ -1395,7 +1398,7 @@ version 1.0.4 (release 2012-08-10), csync 0.50.8 required
Portuguese (Brazil), German, Greek, Spanish, Czech, Italian, Slovak,
French, Russian, Japanese, Swedish, Portuguese (Portugal)
all with translation rate >90%.
- * [Fixes] Loading of self signed certs into Networkmanager (#oc-843)
+ * [Fixes] Loading of self signed certs into NetworkManager (#oc-843)
* [Fixes] Win32: Handle SSL dll loading correctly.
* [Fixes] Many other small fixes and improvements.
@@ -1421,7 +1424,7 @@ version 1.0.2 (release 2012-05-18), csync 0.50.6 required
* [GUI] New icon set for ownCloud client
* [GUI] No splashscreen any more (oC Bug #498)
* [GUI] Russian translation added
- * [GUI] Added 'open ownCloud' to traymenu
+ * [GUI] Added 'open ownCloud' to tray-menu
* [GUI] "Pause" and "Resume" instead of Enable/Disable
* [Fixes] Long running syncs can be interrupted now.
* [Fixes] Dialogs comes to front on click
@@ -1446,7 +1449,7 @@ version 1.0.1 (release 2012-04-18), csync 0.50.5 required
* [Intern] Backport to Qt Version 4.6 for compat. with older distros.
* [Platform] MacOSX porting efforts
* [Platform] MacOSX Bundle creation added
- * [Platform] Enabled ranslations on Windows.
+ * [Platform] Enabled translations on Windows.
diff --git a/changelog/unreleased/12369.md b/changelog/unreleased/12369.md
new file mode 100644
index 00000000000..cd1eb15785d
--- /dev/null
+++ b/changelog/unreleased/12369.md
@@ -0,0 +1,7 @@
+Change: Remove capability to upload conflict files
+
+None of the supported servers implements (or plans on implementing) this
+feature. This removal includes the `OWNCLOUD_UPLOAD_CONFLICT_FILES`
+environment variable.
+
+https://github.com/owncloud/client/pull/12369
diff --git a/changelog/unreleased/12374.md b/changelog/unreleased/12374.md
new file mode 100644
index 00000000000..5b7e47ce23e
--- /dev/null
+++ b/changelog/unreleased/12374.md
@@ -0,0 +1,5 @@
+Bugfix: Fix compatibility with extra-cmake-modules-6.19.0
+
+Fix runtime crash at startup with ECM 6.19.
+
+https://github.com/owncloud/client/pull/12374
diff --git a/changelog/unreleased/8924 b/changelog/unreleased/8924
deleted file mode 100644
index f912bf333ce..00000000000
--- a/changelog/unreleased/8924
+++ /dev/null
@@ -1,9 +0,0 @@
-Bugfix: Do not ask for credentails at start-up when the user logged out
-
-When a user would logout, and quit the client, then on the next start
-the client would immediately ask for credentials. This has been fixed by
-storing the fact that the user logged out before in the account
-settings.
-
-https://github.com/owncloud/client/issues/8924
-
diff --git a/changelog/unreleased/8938 b/changelog/unreleased/8938
deleted file mode 100644
index 38cc724a319..00000000000
--- a/changelog/unreleased/8938
+++ /dev/null
@@ -1,7 +0,0 @@
-Change: Make sharedialog preview be more resilient
-
-We no longer enforce png thumbnails.
-We no longer replace the file icon if the thumbnail is invalid.
-
-https://github.com/owncloud/client/issues/8938
-https://github.com/owncloud/client/pull/8939
diff --git a/changelog/unreleased/9048 b/changelog/unreleased/9048
deleted file mode 100644
index e939f859925..00000000000
--- a/changelog/unreleased/9048
+++ /dev/null
@@ -1,5 +0,0 @@
-Bugfix: Fix copy url location for private links
-
-We fixed a bug where a placholder was copied to the clipboard instead of the url.
-
-https://github.com/owncloud/client/issues/9048
diff --git a/changelog/unreleased/9170 b/changelog/unreleased/9170
deleted file mode 100644
index baf7102acad..00000000000
--- a/changelog/unreleased/9170
+++ /dev/null
@@ -1,6 +0,0 @@
-Bugfix: Crash when handling locked files
-
-We fixed a crash that could occur when trying to add a locked folder to the databse.
-
-
-https://github.com/owncloud/client/issues/9170
diff --git a/changelog/unreleased/9223 b/changelog/unreleased/9223
deleted file mode 100644
index e8411e96dba..00000000000
--- a/changelog/unreleased/9223
+++ /dev/null
@@ -1,10 +0,0 @@
-Bugfix: Display correct error message for files containign `\:?*"<>|`
-
-While the error message was supposed to be:
-`File names containing the character '%1' are not supported on this file system.`
-
-We displayed:
-`The file name is a reserved name on this file system.`
-
-https://github.com/owncloud/client/pull/9223/
-
diff --git a/client.qrc b/client.qrc
deleted file mode 100644
index 56da8b519ee..00000000000
--- a/client.qrc
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
- resources/font-awesome/light/folder-solid.svg
- resources/font-awesome/light/cog-solid.svg
- resources/font-awesome/light/bolt-solid.svg
- resources/font-awesome/light/lock-solid.svg
- resources/font-awesome/light/lock-open-solid.svg
- resources/font-awesome/light/user-solid.svg
- resources/font-awesome/light/ellipsis-h-solid.svg
- resources/font-awesome/light/trash-solid.svg
- resources/font-awesome/light/bell-solid.svg
- resources/font-awesome/light/power-off-solid.svg
- resources/font-awesome/light/plus-solid.svg
- resources/font-awesome/light/exclamation-triangle-solid.svg
-
- resources/font-awesome/dark/folder-solid.svg
- resources/font-awesome/dark/cog-solid.svg
- resources/font-awesome/dark/bolt-solid.svg
- resources/font-awesome/dark/lock-solid.svg
- resources/font-awesome/dark/lock-open-solid.svg
- resources/font-awesome/dark/user-solid.svg
- resources/font-awesome/dark/ellipsis-h-solid.svg
- resources/font-awesome/dark/trash-solid.svg
- resources/font-awesome/dark/bell-solid.svg
- resources/font-awesome/dark/power-off-solid.svg
- resources/font-awesome/dark/plus-solid.svg
- resources/font-awesome/dark/exclamation-triangle-solid.svg
-
-
diff --git a/cmake/modules/AddCMockaTest.cmake b/cmake/modules/AddCMockaTest.cmake
deleted file mode 100644
index df5af0a79ba..00000000000
--- a/cmake/modules/AddCMockaTest.cmake
+++ /dev/null
@@ -1,25 +0,0 @@
-# - ADD_CHECK_TEST(test_name test_source linklib1 ... linklibN)
-
-# Copyright (c) 2007 Daniel Gollub
-# Copyright (c) 2007-2010 Andreas Schneider
-#
-# Redistribution and use is allowed according to the terms of the BSD license.
-# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-
-enable_testing()
-include(CTest)
-
-if(CMAKE_COMPILER_IS_GNUCC AND NOT MINGW)
- set(CMAKE_C_FLAGS_PROFILING "-g -O0 -Wall -W -Wshadow -Wunused-variable -Wunused-parameter -Wunused-function -Wunused -Wno-system-headers -Wwrite-strings -fprofile-arcs -ftest-coverage" CACHE STRING "Profiling Compiler Flags")
- set(CMAKE_SHARED_LINKER_FLAGS_PROFILING " -fprofile-arcs -ftest-coverage" CACHE STRING "Profiling Linker Flags")
- set(CMAKE_MODULE_LINKER_FLAGS_PROFILING " -fprofile-arcs -ftest-coverage" CACHE STRING "Profiling Linker Flags")
- set(CMAKE_EXEC_LINKER_FLAGS_PROFILING " -fprofile-arcs -ftest-coverage" CACHE STRING "Profiling Linker Flags")
-endif(CMAKE_COMPILER_IS_GNUCC AND NOT MINGW)
-
-function (ADD_CMOCKA_TEST _testName _testSource)
- add_executable(${_testName} ${_testSource})
- set_target_properties(${_testName} PROPERTIES C_STANDARD 99)
- ecm_mark_nongui_executable(${_testName})
- target_link_libraries(${_testName} ${ARGN})
- add_test(NAME ${_testName} COMMAND $)
-endfunction (ADD_CMOCKA_TEST)
diff --git a/cmake/modules/FindCMocka.cmake b/cmake/modules/FindCMocka.cmake
deleted file mode 100644
index 65a13a76d20..00000000000
--- a/cmake/modules/FindCMocka.cmake
+++ /dev/null
@@ -1,49 +0,0 @@
-# - Try to find CMocka
-# Once done this will define
-#
-# CMOCKA_ROOT_DIR - Set this variable to the root installation of CMocka
-#
-# Read-Only variables:
-# CMOCKA_FOUND - system has CMocka
-# CMOCKA_INCLUDE_DIR - the CMocka include directory
-# CMOCKA_LIBRARIES - Link these to use CMocka
-# CMOCKA_DEFINITIONS - Compiler switches required for using CMocka
-#
-#=============================================================================
-# Copyright (c) 2011-2012 Andreas Schneider
-#
-# Distributed under the OSI-approved BSD License (the "License");
-# see accompanying file Copyright.txt for details.
-#
-# This software is distributed WITHOUT ANY WARRANTY; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the License for more information.
-#=============================================================================
-#
-
-find_path(CMOCKA_INCLUDE_DIR
- NAMES
- cmocka.h
- PATHS
- ${CMOCKA_ROOT_DIR}/include
-)
-
-find_library(CMOCKA_LIBRARY
- NAMES
- cmocka
- PATHS
- ${CMOCKA_ROOT_DIR}/lib
-)
-
-if (CMOCKA_LIBRARY)
- set(CMOCKA_LIBRARIES
- ${CMOCKA_LIBRARIES}
- ${CMOCKA_LIBRARY}
- )
-endif (CMOCKA_LIBRARY)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(CMocka DEFAULT_MSG CMOCKA_LIBRARIES CMOCKA_INCLUDE_DIR)
-
-# show the CMOCKA_INCLUDE_DIR and CMOCKA_LIBRARIES variables only in the advanced view
-mark_as_advanced(CMOCKA_INCLUDE_DIR CMOCKA_LIBRARIES)
diff --git a/cmake/modules/FindSMBClient.cmake b/cmake/modules/FindSMBClient.cmake
deleted file mode 100644
index 730498eddc7..00000000000
--- a/cmake/modules/FindSMBClient.cmake
+++ /dev/null
@@ -1,66 +0,0 @@
-# - Try to find SMBClient
-# Once done this will define
-#
-# SMBCLIENT_FOUND - system has SMBClient
-# SMBCLIENT_INCLUDE_DIRS - the SMBClient include directory
-# SMBCLIENT_LIBRARIES - Link these to use SMBClient
-# SMBCLIENT_DEFINITIONS - Compiler switches required for using SMBClient
-#
-# Copyright (c) 2013 Andreas Schneider
-#
-# Redistribution and use is allowed according to the terms of the New
-# BSD license.
-# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-#
-
-
-if (SMBCLIENT_LIBRARIES AND SMBCLIENT_INCLUDE_DIRS)
- # in cache already
- set(SMBCLIENT_FOUND TRUE)
-else (SMBCLIENT_LIBRARIES AND SMBCLIENT_INCLUDE_DIRS)
- find_package(PkgConfig)
- if (PKG_CONFIG_FOUND)
- pkg_check_modules(_SMBCLIENT smbclient)
- endif (PKG_CONFIG_FOUND)
-
- find_path(SMBCLIENT_INCLUDE_DIR
- NAMES
- libsmbclient.h
- PATHS
- ${_SMBCLIENT_INCLUDEDIR}
- /usr/include
- /usr/local/include
- /opt/local/include
- /sw/include
- )
-
- find_library(SMBCLIENT_LIBRARY
- NAMES
- smbclient
- PATHS
- ${_SMBCLIENT_LIBDIR}
- /usr/lib
- /usr/local/lib
- /opt/local/lib
- /sw/lib
- )
-
- set(SMBCLIENT_INCLUDE_DIRS
- ${SMBCLIENT_INCLUDE_DIR}
- )
-
- if (SMBCLIENT_LIBRARY)
- set(SMBCLIENT_LIBRARIES
- ${SMBCLIENT_LIBRARIES}
- ${SMBCLIENT_LIBRARY}
- )
- endif (SMBCLIENT_LIBRARY)
-
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args(SMBClient DEFAULT_MSG SMBCLIENT_LIBRARIES SMBCLIENT_INCLUDE_DIRS)
-
- # show the SMBCLIENT_INCLUDE_DIRS and SMBCLIENT_LIBRARIES variables only in the advanced view
- mark_as_advanced(SMBCLIENT_INCLUDE_DIRS SMBCLIENT_LIBRARIES)
-
-endif (SMBCLIENT_LIBRARIES AND SMBCLIENT_INCLUDE_DIRS)
-
diff --git a/cmake/modules/OCAddVfsPlugin.cmake b/cmake/modules/OCAddVfsPlugin.cmake
new file mode 100644
index 00000000000..aa081421a4a
--- /dev/null
+++ b/cmake/modules/OCAddVfsPlugin.cmake
@@ -0,0 +1,37 @@
+include(OCApplyCommonSettings)
+
+function(add_vfs_plugin)
+ set(options "")
+ set(oneValueArgs NAME)
+ set(multiValueArgs SRC LIBS)
+ cmake_parse_arguments(__PLUGIN "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
+
+ add_library(vfs_${__PLUGIN_NAME} MODULE
+ ${__PLUGIN_SRC}
+ )
+ apply_common_target_settings(vfs_${__PLUGIN_NAME})
+
+
+ set_target_properties(vfs_${__PLUGIN_NAME} PROPERTIES OUTPUT_NAME "ownCloud_vfs_${__PLUGIN_NAME}")
+
+ target_link_libraries(vfs_${__PLUGIN_NAME}
+ libsync
+ ${__PLUGIN_LIBS}
+ )
+ if(APPLE)
+ set_target_properties(vfs_${__PLUGIN_NAME} PROPERTIES LIBRARY_OUTPUT_DIRECTORY "$/../PlugIns/")
+ # make the plugins available to the tests
+ add_custom_command(TARGET vfs_${__PLUGIN_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND}
+ ARGS -E create_symlink "$" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/$" MAIN_DEPENDENCY "vfs_${__PLUGIN_NAME}")
+
+ else()
+ install(TARGETS vfs_${__PLUGIN_NAME} DESTINATION "${KDE_INSTALL_PLUGINDIR}")
+ endif()
+
+ if (TARGET owncloud)
+ add_dependencies(owncloud vfs_${__PLUGIN_NAME})
+ endif()
+ if (TARGET cmd)
+ add_dependencies(cmd vfs_${__PLUGIN_NAME})
+ endif()
+endfunction()
diff --git a/cmake/modules/OCApplyCommonSettings.cmake b/cmake/modules/OCApplyCommonSettings.cmake
new file mode 100644
index 00000000000..0d35cbb10a4
--- /dev/null
+++ b/cmake/modules/OCApplyCommonSettings.cmake
@@ -0,0 +1,73 @@
+include(OCRcVersion)
+
+if (MSVC)
+ # ecm sets /W3 we set /W4
+ string(REGEX REPLACE "/W3" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+endif()
+
+# common target settings that are used by all important targets
+function(apply_common_target_settings targetName)
+ add_windows_version_info(${targetName})
+ if(FORCE_ASSERTS)
+ target_compile_definitions(${targetName}
+ PRIVATE
+ QT_FORCE_ASSERTS
+ )
+ endif()
+
+ target_compile_definitions(${targetName}
+ PRIVATE
+ QT_NO_CAST_TO_ASCII
+ QT_NO_URL_CAST_FROM_STRING
+ QT_NO_CAST_FROM_BYTEARRAY
+ QT_USE_QSTRINGBUILDER
+ QT_MESSAGELOGCONTEXT # enable function name and line number in debug output
+ QT_NO_FOREACH
+ QT_DISABLE_DEPRECATED_BEFORE=0x060200
+ )
+ # These are added by ECM:
+ remove_definitions(-DQT_NO_KEYWORDS) # We are not a library, and we don't use a 3th party signal/slot library.
+ remove_definitions(-DQT_NO_CAST_FROM_ASCII) # Our source code is UTF-8
+
+ if(WIN32)
+ target_compile_definitions(${targetName}
+ PRIVATE
+ # Get APIs from from Win8 onwards.
+ _WIN32_WINNT=_WIN32_WINNT_WIN8
+ WINVER=_WIN32_WINNT_WIN8
+ NTDDI_VERSION=NTDDI_WIN10_RS2
+ )
+ endif()
+
+ if(MSVC)
+ target_compile_options(${targetName}
+ PRIVATE
+ # enable linter like warnings with msvc
+ # this includes deprecations
+ # https://learn.microsoft.com/en-us/cpp/build/reference/compiler-option-warning-level?view=msvc-170
+ /W4
+ # treat unhandled switch cases as error
+ /we4062
+ # Worder
+ /w15038
+ # werror on unused function
+ # The given function is local and not referenced in the body of the module; therefore, the function is dead code.
+ /we4505
+ # 4505 for anonymous namespaces, apparently undocumented https://developercommunity.visualstudio.com/t/warning-C4505-missing-on-anonymous-names/10413660
+ /we5245
+ /we4930
+ # A variable is declared and initialized but not used.
+ /we4189
+ # Our source code is UTF-8, so is the log file (the only file we write)
+ /utf-8
+ )
+ elseif(CMAKE_C_COMPILER_ID STREQUAL "GNU" OR CMAKE_C_COMPILER_ID MATCHES "Clang")
+ target_compile_options(${targetName}
+ PRIVATE
+ # treat unhandled switch cases as error
+ -Werror=switch
+ -Werror=unused-function
+ -Werror=unused-but-set-variable
+ )
+ endif()
+endfunction()
diff --git a/cmake/modules/OCBundleResources.cmake b/cmake/modules/OCBundleResources.cmake
index d205549d84b..e5bfc351c9f 100644
--- a/cmake/modules/OCBundleResources.cmake
+++ b/cmake/modules/OCBundleResources.cmake
@@ -21,7 +21,7 @@ endfunction()
function(__addIcon QRC_PATH THEME ICON_NAME)
- set(options)
+ set(options "REQUIRED")
set(oneValueArgs SRC_PATH)
set(multiValueArgs)
cmake_parse_arguments(_ICON "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
@@ -44,6 +44,8 @@ function(__addIcon QRC_PATH THEME ICON_NAME)
ALIAS ${iconAlias}
)
else()
+ message(STATUS "Icon not found: ${OEM_THEME_DIR}/${icon}")
+
set(SIZES "16;22;32;48;64;128;256;512;1024")
foreach(size ${SIZES})
set(icon "theme/${_ICON_SRC_PATH}/${ICON_NAME}-${size}.png")
@@ -54,6 +56,10 @@ function(__addIcon QRC_PATH THEME ICON_NAME)
FILE_PATH ${OEM_THEME_DIR}/${icon}
ALIAS ${iconAlias}
)
+ else()
+ if (_ICON_REQUIRED)
+ message(FATAL_ERROR "Icon ${ICON_NAME} not found in ${THEME} theme at ${OEM_THEME_DIR}")
+ endif()
endif()
endforeach()
endif()
@@ -70,31 +76,51 @@ function(__write_qrc_file_footer QRC_PATH)
file(APPEND ${QRC_PATH} "\n")
endfunction()
+# add the icons for url buttons to the theme
+function(__addUrlIcons QRC_PATH)
+ file(GLOB_RECURSE OWNCLOUD_URL_ICONS "${OEM_THEME_DIR}/theme/universal/urlIcons/*")
+ foreach(icon ${OWNCLOUD_URL_ICONS})
+ get_filename_component(iconName ${icon} NAME_WE)
+ __addIcon(${QRC_PATH} "universal" "urlIcons/${iconName}")
+ endforeach()
+endfunction()
+
function(generate_theme TARGET OWNCLOUD_SIDEBAR_ICONS_OUT)
- if(NOT "${OEM_THEME_DIR}" STREQUAL "${PROJECT_SOURCE_DIR}")
+ if(NOT "${OEM_THEME_DIR}" STREQUAL "${PROJECT_SOURCE_DIR}/src/resources/")
set(QRC_PATH ${CMAKE_CURRENT_BINARY_DIR}/theme.qrc)
__write_qrc_file_header(${QRC_PATH} theme)
+ # ownbrander
__addIcon(${QRC_PATH} "universal" "${APPLICATION_ICON_NAME}-icon" SRC_PATH "colored")
__addIcon(${QRC_PATH} "universal" "wizard_logo" SRC_PATH "colored")
+ # full theme
+ __addIcon(${QRC_PATH} "universal" "${APPLICATION_ICON_NAME}-icon")
+ __addIcon(${QRC_PATH} "universal" "wizard_logo")
+ __addIcon(${QRC_PATH} "universal" "wizard_logo_dark")
+ __addIcon(${QRC_PATH} "universal" "wizard_footer_logo")
+
+ __addUrlIcons(${QRC_PATH})
- set(STATES "ok;error;information;offline;pause;sync")
- set(THEMES "colored;dark;black;white")
- foreach(theme ${THEMES})
- foreach(state ${STATES})
- __addIcon(${QRC_PATH} ${theme} "state-${state}")
+ foreach(theme IN ITEMS colored dark black white)
+ foreach(state IN ITEMS ok error information offline pause sync)
+ __addIcon(${QRC_PATH} ${theme} "state-${state}" REQUIRED)
endforeach()
endforeach()
__write_qrc_file_footer(${QRC_PATH})
target_sources(${TARGET} PRIVATE ${QRC_PATH})
+ target_compile_definitions(${TARGET} PRIVATE BRANDING_AVAILABLE)
# add executable icon on windows and osx
file(GLOB_RECURSE OWNCLOUD_SIDEBAR_ICONS "${OEM_THEME_DIR}/theme/colored/*-${APPLICATION_ICON_NAME}-sidebar.png")
else()
file(GLOB_RECURSE OWNCLOUD_SIDEBAR_ICONS "${OEM_THEME_DIR}/theme/colored/*-${APPLICATION_ICON_NAME}-icon-sidebar.png")
endif()
+ if (NOT OWNCLOUD_SIDEBAR_ICONS)
+ message(WARNING "The branding does not provide sidebar icons falling back to vanilla icons")
+ file(GLOB_RECURSE OWNCLOUD_SIDEBAR_ICONS "${PROJECT_SOURCE_DIR}/src/resources/theme/colored/*-owncloud-icon-sidebar.png")
+ endif()
set(${OWNCLOUD_SIDEBAR_ICONS_OUT} ${OWNCLOUD_SIDEBAR_ICONS} PARENT_SCOPE)
endfunction()
diff --git a/cmake/modules/OCConfigPluginDir.cmake b/cmake/modules/OCConfigPluginDir.cmake
deleted file mode 100644
index af6421833e1..00000000000
--- a/cmake/modules/OCConfigPluginDir.cmake
+++ /dev/null
@@ -1,35 +0,0 @@
-function(IS_SUBDIR ROOT CHILD OUT)
- file(RELATIVE_PATH REL_PATH "${ROOT}" "${CHILD}")
- string(REGEX MATCH "^\.\./" NOT_SUBDIR "${REL_PATH}")
- if (NOT_SUBDIR)
- set(${OUT} FALSE PARENT_SCOPE)
- else()
- set(${OUT} TRUE PARENT_SCOPE)
- endif()
-endfunction()
-
-
-if (UNIX AND NOT APPLE)
- set(OC_PLUGIN_DIR ${KDE_INSTALL_FULL_PLUGINDIR})
- IS_SUBDIR("${CMAKE_INSTALL_PREFIX}" "${OC_PLUGIN_DIR}" _is_subdir)
- if (NOT _is_subdir)
- if (KDE_INSTALL_USE_QT_SYS_PATHS)
- message(FATAL_ERROR "Using KDE_INSTALL_USE_QT_SYS_PATHS with a non bundled Qt is not supported.")
- else()
- message(FATAL_ERROR "KDE_INSTALL_PLUGINDIR must be located in CMAKE_INSTALL_PREFIX")
- endif()
- endif()
-
- include(ECMQueryQmake)
- query_qmake(_qt_plugin_dir QT_INSTALL_PLUGINS TRY)
- # any sub dir of _qt_plugin_dir is sufficient
- IS_SUBDIR("${_qt_plugin_dir}" "${OC_PLUGIN_DIR}" _is_subdir)
- if (_is_subdir)
- # no need to add a additional plugin dir
- unset(OC_PLUGIN_DIR)
- else()
- # set plugin dir to a path relative to the binary
- file(RELATIVE_PATH OC_PLUGIN_DIR "${CMAKE_INSTALL_FULL_BINDIR}" "${OC_PLUGIN_DIR}")
- message(STATUS "Adding additional plugin path: ${OC_PLUGIN_DIR}")
- endif()
-endif()
diff --git a/cmake/modules/OCRcVersion.cmake b/cmake/modules/OCRcVersion.cmake
new file mode 100644
index 00000000000..379cf0b1030
--- /dev/null
+++ b/cmake/modules/OCRcVersion.cmake
@@ -0,0 +1,31 @@
+set(_VERSION_SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR})
+
+include(${PROJECT_SOURCE_DIR}/VERSION.cmake)
+include(${PROJECT_SOURCE_DIR}/THEME.cmake)
+
+function(add_windows_version_info targetName)
+ if(NOT WIN32)
+ return()
+ endif()
+
+ if(MIRALL_VERSION_BUILD)
+ set(OC_RC_VERSION_BUILD ${MIRALL_VERSION_BUILD})
+ else()
+ set(OC_RC_VERSION_BUILD 0)
+ endif()
+
+ get_target_property(TARGET_TYPE ${targetName} TYPE)
+ if(${TARGET_TYPE} STREQUAL "EXECUTABLE")
+ set(OC_RC_TYPE "VFT_APP")
+ elseif(${TARGET_TYPE} STREQUAL "SHARED_LIBRARY" OR ${TARGET_TYPE} STREQUAL "MODULE_LIBRARY")
+ set(OC_RC_TYPE "VFT_DLL")
+ else()
+ # only create version.rc for dll's and executables
+ return()
+ endif()
+
+ set(OC_RC_OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${targetName}-oc_rc_version.rc)
+ configure_file(${_VERSION_SOURCE_DIR}/version.rc.in ${OC_RC_OUTPUT} @ONLY)
+
+ target_sources(${targetName} PRIVATE ${OC_RC_OUTPUT})
+endfunction()
diff --git a/cmake/modules/version.rc.in b/cmake/modules/version.rc.in
new file mode 100644
index 00000000000..f77e3091d0c
--- /dev/null
+++ b/cmake/modules/version.rc.in
@@ -0,0 +1,34 @@
+#include
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION @MIRALL_VERSION_MAJOR@,@MIRALL_VERSION_MINOR@,@MIRALL_VERSION_PATCH@,@OC_RC_VERSION_BUILD@
+ PRODUCTVERSION @MIRALL_VERSION_MAJOR@,@MIRALL_VERSION_MINOR@,@MIRALL_VERSION_PATCH@,@OC_RC_VERSION_BUILD@
+ FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
+#ifdef _DEBUG
+ FILEFLAGS VS_FF_DEBUG
+#else
+ FILEFLAGS 0x0L
+#endif
+ FILEOS VOS__WINDOWS32
+ FILETYPE @OC_RC_TYPE@
+ FILESUBTYPE VFT2_UNKNOWN
+ BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904E4"
+ BEGIN
+ VALUE "CompanyName", "@APPLICATION_VENDOR@\0"
+ VALUE "LegalCopyright", "Copyright (C) 2014-@MIRALL_VERSION_YEAR@ @APPLICATION_VENDOR@\0"
+ VALUE "FileVersion", "@MIRALL_VERSION_FULL@\0"
+ VALUE "Comments", "@MIRALL_VERSION_STRING@\0"
+ VALUE "FileDescription", "@APPLICATION_NAME@\0"
+ VALUE "ProductName", "@APPLICATION_NAME@\0"
+ VALUE "ProductVersion", "@MIRALL_VERSION_STRING@\0"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ // English US, Unicode
+ VALUE "Translation", 0x0409, 1200
+ END
+END
diff --git a/config.h.in b/config.h.in
deleted file mode 100644
index 14061ba5fc5..00000000000
--- a/config.h.in
+++ /dev/null
@@ -1,31 +0,0 @@
-#ifndef CONFIG_H
-#define CONFIG_H
-
-#cmakedefine USE_INOTIFY 1
-#cmakedefine WITH_QTKEYCHAIN 1
-#cmakedefine WITH_CRASHREPORTER
-#cmakedefine CRASHREPORTER_EXECUTABLE "@CRASHREPORTER_EXECUTABLE@"
-#define SOCKETAPI_TEAM_IDENTIFIER_PREFIX "@SOCKETAPI_TEAM_IDENTIFIER_PREFIX@"
-
-#cmakedefine APPLICATION_DOMAIN "@APPLICATION_DOMAIN@"
-#cmakedefine THEME_CLASS @THEME_CLASS@
-#cmakedefine THEME_INCLUDE "@THEME_INCLUDE@"
-
-#cmakedefine APPLICATION_NAME "@APPLICATION_NAME@"
-#cmakedefine APPLICATION_VENDOR "@APPLICATION_VENDOR@"
-#cmakedefine APPLICATION_REV_DOMAIN "@APPLICATION_REV_DOMAIN@"
-#cmakedefine APPLICATION_SHORTNAME "@APPLICATION_SHORTNAME@"
-#cmakedefine APPLICATION_EXECUTABLE "@APPLICATION_EXECUTABLE@"
-#cmakedefine APPLICATION_UPDATE_URL "@APPLICATION_UPDATE_URL@"
-#cmakedefine APPLICATION_ICON_NAME "@APPLICATION_ICON_NAME@"
-#cmakedefine APPLICATION_VIRTUALFILE_SUFFIX "@APPLICATION_VIRTUALFILE_SUFFIX@"
-#define APPLICATION_DOTVIRTUALFILE_SUFFIX "." APPLICATION_VIRTUALFILE_SUFFIX
-#cmakedefine APPLICATION_CLOUDPROVIDERS_DBUS_NAME "@APPLICATION_CLOUDPROVIDERS_DBUS_NAME@"
-#cmakedefine APPLICATION_CLOUDPROVIDERS_DBUS_PATH "@APPLICATION_CLOUDPROVIDERS_DBUS_PATH@"
-
-#cmakedefine SYSCONFDIR "@SYSCONFDIR@"
-#cmakedefine OC_PLUGIN_DIR "@OC_PLUGIN_DIR@"
-
-#cmakedefine01 GUI_TESTING
-
-#endif
diff --git a/mirall.desktop.in b/mirall.desktop.in
deleted file mode 100644
index 4f9722efb8e..00000000000
--- a/mirall.desktop.in
+++ /dev/null
@@ -1,218 +0,0 @@
-[Desktop Entry]
-Categories=Utility;X-SuSE-SyncUtility;
-Type=Application
-Exec=@APPLICATION_EXECUTABLE@ --showsettings
-Name=@APPLICATION_NAME@ desktop sync client
-Comment=@APPLICATION_NAME@ desktop synchronization client
-GenericName=Folder Sync
-Icon=@APPLICATION_ICON_NAME@
-Keywords=@APPLICATION_NAME@;syncing;file;sharing;
-X-GNOME-Autostart-Delay=3
-MimeType=application/vnd.@APPLICATION_EXECUTABLE@;
-Actions=Settings;Quit;
-
-# Translations
-Comment[oc]=@APPLICATION_NAME@ sincronizacion del client
-GenericName[oc]=Dorsièr de Sincronizacion
-Name[oc]=@APPLICATION_NAME@ sincronizacion del client
-Icon[oc]=@APPLICATION_EXECUTABLE@
-Comment[ar]=@APPLICATION_NAME@ زبون مزامنة مكتبي
-GenericName[ar]=مزامنة المجلد
-Name[ar]=@APPLICATION_NAME@ زبون مزامنة مكتبي
-Icon[ar]=@APPLICATION_EXECUTABLE@
-Comment[bg_BG]=@APPLICATION_NAME@ клиент за десктоп синхронизация
-GenericName[bg_BG]=Синхронизиране на папката
-Name[bg_BG]=@APPLICATION_NAME@ клиент десктоп синхронизация
-Icon[bg_BG]=@APPLICATION_EXECUTABLE@
-Comment[ca]=Client de sincronització d'escriptori @APPLICATION_NAME@
-GenericName[ca]=Sincronització de carpetes
-Name[ca]=Client de sincronització d'escriptori @APPLICATION_NAME@
-Icon[ca]=@APPLICATION_EXECUTABLE@
-Comment[da]=@APPLICATION_NAME@ skrivebordsklient til synkronisering
-GenericName[da]=Mappesynkronisering
-Name[da]=@APPLICATION_NAME@ skrivebordsklient til synk
-Icon[da]=@APPLICATION_EXECUTABLE@
-Comment[de]=@APPLICATION_NAME@ Desktop-Synchronisationsclient
-GenericName[de]=Ordner-Synchronisation
-Name[de]=@APPLICATION_NAME@ Desktop-Synchronisationsclient
-Icon[de]=@APPLICATION_EXECUTABLE@
-Comment[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
-GenericName[ja_JP]=フォルダー同期
-Name[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
-Icon[ja_JP]=@APPLICATION_EXECUTABLE@
-Comment[el]=@ΟΝΟΜΑ_ΕΦΑΡΜΟΓΗΣ@ συγχρονισμός επιφάνειας εργασίας πελάτη
-GenericName[el]=Συγχρονισμός φακέλου
-Name[el]=@ΟΝΟΜΑ_ΕΦΑΡΜΟΓΗΣ@ συγχρονισμός επιφάνειας εργασίας πελάτη
-Icon[el]=@APPLICATION_EXECUTABLE@
-Comment[en_GB]=@APPLICATION_NAME@ desktop synchronisation client
-GenericName[en_GB]=Folder Sync
-Name[en_GB]=@APPLICATION_NAME@ desktop sync client
-Icon[en_GB]=@APPLICATION_EXECUTABLE@
-Comment[es]=@APPLICATION_NAME@ cliente de sincronización de escritorio
-GenericName[es]=Sincronización de carpeta
-Name[es]=@APPLICATION_NAME@ cliente de sincronización de escritorio
-Icon[es]=@APPLICATION_EXECUTABLE@
-Comment[de_DE]=@APPLICATION_NAME@ Desktop-Synchronisationsclient
-GenericName[de_DE]=Ordner-Synchronisation
-Name[de_DE]=@APPLICATION_NAME@ Desktop-Synchronisationsclient
-Icon[de_DE]=@APPLICATION_EXECUTABLE@
-Comment[eu]=@APPLICATION_NAME@ mahaigaineko sinkronizazio bezeroa
-GenericName[eu]=Karpetaren sinkronizazioa
-Name[eu]=@APPLICATION_NAME@ mahaigaineko sinkronizazio bezeroa
-Icon[eu]=@APPLICATION_EXECUTABLE@
-GenericName[fa]=همسان سازی پوشهها
-Name[fa]=@APPLICATION_EXECUTABLE@ نسخهی همسان سازی مشتری
-Icon[fa]=@APPLICATION_EXECUTABLE@
-Comment[fr]=Client de synchronisation @APPLICATION_NAME@
-GenericName[fr]=Synchronisation de dossier
-Name[fr]=Client de synchronisation @APPLICATION_NAME@
-Icon[fr]=@APPLICATION_EXECUTABLE@
-Comment[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
-GenericName[gl]=Sincronizar Cartafol
-Name[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
-Icon[gl]=@APPLICATION_EXECUTABLE@
-Comment[he]=@APPLICATION_NAME@ לקוח סנכון שולחן עבודה
-GenericName[he]=סנכון תיקייה
-Name[he]=@APPLICATION_NAME@ לקוח סנכרון שולחן עבודה
-Icon[he]=@APPLICATION_EXECUTABLE@
-Comment[ia]=@APPLICATION_NAME@ cliente de synchronisation pro scriptorio
-GenericName[ia]=Synchronisar Dossier
-Name[ia]=@APPLICATION_NAME@ cliente de synchronisation pro scriptorio
-Icon[ia]=@APPLICATION_EXECUTABLE@
-Comment[id]=Klien sinkronisasi desktop @APPLICATION_NAME@
-GenericName[id]=Folder Sync
-Name[id]=Klien sync desktop @APPLICATION_NAME@
-Icon[id]=@APPLICATION_EXECUTABLE@
-Comment[is]=@APPLICATION_NAME@ skjáborðsforrit samstillingar
-GenericName[is]=Samstilling möppu
-Name[is]=@APPLICATION_NAME@ skjáborðsforrit samstillingar
-Icon[is]=@APPLICATION_EXECUTABLE@
-Comment[it]=Client di sincronizzazione del desktop di @APPLICATION_NAME@
-GenericName[it]=Sincronizzazione cartella
-Name[it]=Client di sincronizzazione del desktop di @APPLICATION_NAME@
-Icon[it]=@APPLICATION_EXECUTABLE@
-Comment[ko]=@APPLICATION_NAME@ 데스크톱 동기화 클라이언트
-GenericName[ko]=폴더 동기화
-Name[ko]=@APPLICATION_NAME@ 데스크톱 동기화 클라이언트
-Icon[ko]=@APPLICATION_EXECUTABLE@
-Comment[lo]=@APPLICATION_NAME@ ການປະສານຂໍ້ມູນຄອມພິວເຕີລູກຂ່າຍ
-GenericName[lo]=ໂຟນເດີຊິງ
-Name[lo]=@APPLICATION_NAME@ ຊິງຄອມພິວເຕີລູກຂ່າຍ
-Icon[lo]=@APPLICATION_EXECUTABLE@
-Comment[mk]=@APPLICATION_NAME@ десктор клиент за синхронизација
-GenericName[mk]=Папка за синхронизација
-Name[mk]=@APPLICATION_NAME@ десктор клиент за синхронизација
-Icon[mk]=@APPLICATION_EXECUTABLE@
-Comment[hu_HU]=@APPLICATION_NAME@ asztali szinkronizációs kliens
-GenericName[hu_HU]=Mappaszinkronizálás
-Name[hu_HU]=@APPLICATION_NAME@ asztali szinkronizációs kliens
-Icon[hu_HU]=@APPLICATION_EXECUTABLE@
-Comment[af_ZA]=@APPLICATION_NAME@ werkskermsinchroniseerkliënt
-GenericName[af_ZA]=Vouersinchronisering
-Name[af_ZA]=@APPLICATION_NAME@ werkskermsinchroniseerkliënt
-Icon[af_ZA]=@APPLICATION_EXECUTABLE@
-Comment[nl]=@APPLICATION_NAME@ desktop synchronisatie client
-GenericName[nl]=Mappen sync
-Name[nl]=@APPLICATION_NAME@ desktop sync client
-Icon[nl]=@APPLICATION_EXECUTABLE@
-Comment[et_EE]=@APPLICATION_NAME@ sünkroonimise klient töölauale
-GenericName[et_EE]=Kaustade sünkroonimine
-Name[et_EE]=@APPLICATION_NAME@ sünkroonimise klient töölauale
-Icon[et_EE]=@APPLICATION_EXECUTABLE@
-Comment[pl]=@APPLICATION_NAME@ klient synchronizacji dla komputerów stacjonarnych
-GenericName[pl]=Folder Synchronizacji
-Name[pl]=@APPLICATION_NAME@ klient synchronizacji dla komputerów stacjonarnych
-Icon[pl]=@APPLICATION_EXECUTABLE@
-Comment[pt_BR]=@APPLICATION_NAME@ cliente de sincronização do computador
-GenericName[pt_BR]=Sincronização de Pasta
-Name[pt_BR]=@APPLICATION_NAME@ cliente de sincronização de desktop
-Icon[pt_BR]=@APPLICATION_EXECUTABLE@
-Comment[cs_CZ]=@APPLICATION_NAME@ počítačový synchronizační klient
-GenericName[cs_CZ]=Synchronizace adresáře
-Name[cs_CZ]=@APPLICATION_NAME@ počítačový synchronizační klient
-Icon[cs_CZ]=@APPLICATION_EXECUTABLE@
-Comment[ru]=Настольный клиент синхронизации @APPLICATION_NAME@
-GenericName[ru]=Синхронизация каталогов
-Name[ru]=Настольный клиент синхронизации @APPLICATION_NAME@
-Icon[ru]=@APPLICATION_EXECUTABLE@
-Comment[sl]=@APPLICATION_NAME@ ‒ Program za usklajevanje datotek z namizjem
-GenericName[sl]=Usklajevanje map
-Name[sl]=@APPLICATION_NAME@ ‒ Program za usklajevanje datotek z namizjem
-Icon[sl]=@APPLICATION_EXECUTABLE@
-Comment[sq]=Klient njëkohësimesh @APPLICATION_NAME@ për desktop
-GenericName[sq]=Njëkohësim Dosjesh
-Name[sq]=Klient njëkohësimesh @APPLICATION_NAME@ për desktop
-Icon[sq]=@APPLICATION_EXECUTABLE@
-Comment[fi_FI]=@APPLICATION_NAME@ työpöytäsynkronointisovellus
-GenericName[fi_FI]=Kansion synkronointi
-Name[fi_FI]=@APPLICATION_NAME@ työpöytäsynkronointisovellus
-Icon[fi_FI]=@APPLICATION_EXECUTABLE@
-Comment[sv]=@APPLICATION_NAME@ desktop synkroniseringsklient
-GenericName[sv]=Mappsynk
-Name[sv]=@APPLICATION_NAME@ desktop synk-klient
-Icon[sv]=@APPLICATION_EXECUTABLE@
-Comment[tr]=@APPLICATION_NAME@ masaüstü eşitleme istemcisi
-GenericName[tr]=Dosya Eşitleme
-Name[tr]=@APPLICATION_NAME@ masaüstü eşitleme istemcisi
-Icon[tr]=@APPLICATION_EXECUTABLE@
-Comment[uk]=Настільний клієнт синхронізації @APPLICATION_NAME@
-GenericName[uk]=Синхронізація теки
-Name[uk]=Настільний клієнт синхронізації @APPLICATION_NAME@
-Icon[uk]=@APPLICATION_EXECUTABLE@
-Comment[ro]=@APPLICATION_NAME@ client de sincronizare pe desktop
-GenericName[ro]=Sincronizare director
-Name[ro]=@APPLICATION_NAME@ client de sincronizare pe desktop
-Icon[ro]=@APPLICATION_EXECUTABLE@
-Comment[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
-GenericName[zh_CN]=文件夹同步
-Name[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
-Icon[zh_CN]=@APPLICATION_EXECUTABLE@
-Comment[zh_HK]=桌面版同步客户端
-Comment[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
-GenericName[zh_TW]=資料夾同步
-Name[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
-Icon[zh_TW]=@APPLICATION_EXECUTABLE@
-Comment[es_AR]=Cliente de sincronización para escritorio @APPLICATION_NAME@
-GenericName[es_AR]=Sincronización de directorio
-Name[es_AR]=Cliente de sincronización para escritorio @APPLICATION_NAME@
-Icon[es_AR]=@APPLICATION_EXECUTABLE@
-Comment[lt_LT]=@APPLICATION_NAME@ darbalaukio sinchronizavimo programa
-GenericName[lt_LT]=Katalogo sinchnorizacija
-Name[lt_LT]=@APPLICATION_NAME@ darbalaukio programa
-Icon[lt_LT]=@APPLICATION_EXECUTABLE@
-Comment[th_TH]=@APPLICATION_NAME@ ประสานข้อมูลด้วยโปรแกรมบนเดสก์ท็อป
-GenericName[th_TH]=ประสานข้อมูลโฟลเดอร์
-Name[th_TH]= @APPLICATION_NAME@ ประสานข้อมูลด้วยโปรแกรมบนเดสก์ท็อป
-Icon[th_TH]=@APPLICATION_EXECUTABLE@
-Comment[es_MX]=Cliente de escritorio para sincronziación de @APPLICATION_NAME@
-GenericName[es_MX]=Sincronización de Carpetas
-Name[es_MX]=Cliente de escritorio para sincronziación de @APPLICATION_NAME@
-Icon[es_MX]=@APPLICATION_EXECUTABLE@
-Comment[nb_NO]=@APPLICATION_NAME@ skrivebordssynkroniseringsklient
-GenericName[nb_NO]=Mappesynkronisering
-Name[nb_NO]=@APPLICATION_NAME@ skrivebordssynkroniseringsklient
-Icon[nb_NO]=@APPLICATION_EXECUTABLE@
-Comment[nn_NO]=@APPLICATION_NAME@ klient for å synkronisera frå skrivebord
-GenericName[nn_NO]=Mappe synkronisering
-Name[nn_NO]=@APPLICATION_NAME@ klient for å synkronisera frå skrivebord
-Icon[nn_NO]=@APPLICATION_EXECUTABLE@
-Comment[pt_PT]=@APPLICATION_NAME@ - Cliente de Sincronização para PC
-GenericName[pt_PT]=Sincronizar Pasta
-Name[pt_PT]=@APPLICATION_NAME@ - Cliente de Sincronização para PC
-Icon[pt_PT]=@APPLICATION_EXECUTABLE@
-Icon[km]=@APPLICATION_EXECUTABLE@
-Comment[lb]=@APPLICATION_NAME@ Desktop Synchronisatioun Client
-GenericName[lb]=Dossier Dync
-Name[lb]=@APPLICATION_NAME@ Desktop Sync Client
-Icon[lb]=@APPLICATION_EXECUTABLE@
-
-
-[Desktop Action Settings]
-Exec=@APPLICATION_EXECUTABLE@ --showsettings
-Name=Show @APPLICATION_NAME@ settings
-Icon=@APPLICATION_ICON_NAME@
-
-[Desktop Action Quit]
-Exec=@APPLICATION_EXECUTABLE@ --quit
-Name=Quit @APPLICATION_NAME@
-Icon=@APPLICATION_ICON_NAME@
diff --git a/owncloud.desktop.in b/owncloud.desktop.in
new file mode 100644
index 00000000000..8137aa02134
--- /dev/null
+++ b/owncloud.desktop.in
@@ -0,0 +1,170 @@
+[Desktop Entry]
+Categories=Utility;X-SuSE-SyncUtility;
+Type=Application
+Exec=@APPLICATION_EXECUTABLE@ --showsettings
+Name=@APPLICATION_NAME@ desktop sync client
+Comment=@APPLICATION_NAME@ desktop synchronization client
+GenericName=Folder Sync
+Icon=@APPLICATION_ICON_NAME@
+Keywords=@APPLICATION_NAME@;syncing;file;sharing;
+X-GNOME-Autostart-Delay=3
+MimeType=application/vnd.@APPLICATION_EXECUTABLE@;
+Actions=Settings;Quit;
+StartupWMClass=@APPLICATION_EXECUTABLE@
+
+# Translations
+Comment[oc]=@APPLICATION_NAME@ sincronizacion del client
+GenericName[oc]=Dorsièr de Sincronizacion
+Name[oc]=@APPLICATION_NAME@ sincronizacion del client
+Comment[ar]=@APPLICATION_NAME@ زبون مزامنة مكتبي
+GenericName[ar]=مزامنة المجلد
+Name[ar]=@APPLICATION_NAME@ زبون مزامنة مكتبي
+Comment[bg_BG]=@APPLICATION_NAME@ клиент за десктоп синхронизация
+GenericName[bg_BG]=Синхронизиране на папката
+Name[bg_BG]=@APPLICATION_NAME@ клиент десктоп синхронизация
+Comment[ca]=Client de sincronització d'escriptori @APPLICATION_NAME@
+GenericName[ca]=Sincronització de carpetes
+Name[ca]=Client de sincronització d'escriptori @APPLICATION_NAME@
+Comment[da]=@APPLICATION_NAME@ skrivebordsklient til synkronisering
+GenericName[da]=Mappesynkronisering
+Name[da]=@APPLICATION_NAME@ skrivebordsklient til synk
+Comment[de]=@APPLICATION_NAME@ Desktop-Synchronisationsclient
+GenericName[de]=Ordner-Synchronisation
+Name[de]=@APPLICATION_NAME@ Desktop-Synchronisationsclient
+Comment[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
+GenericName[ja_JP]=フォルダー同期
+Name[ja_JP]=@APPLICATION_NAME@ デスクトップ同期クライアント
+Comment[el]=@APPLICATION_NAME@ συγχρονισμός επιφάνειας εργασίας πελάτη
+GenericName[el]=Συγχρονισμός φακέλου
+Name[el]=@APPLICATION_NAME@ συγχρονισμός επιφάνειας εργασίας πελάτη
+Comment[en_GB]=@APPLICATION_NAME@ desktop synchronisation client
+GenericName[en_GB]=Folder Sync
+Name[en_GB]=@APPLICATION_NAME@ desktop sync client
+Comment[es]=@APPLICATION_NAME@ cliente de sincronización de escritorio
+GenericName[es]=Sincronización de carpeta
+Name[es]=@APPLICATION_NAME@ cliente de sincronización de escritorio
+Comment[de_DE]=@APPLICATION_NAME@ Desktop-Synchronisationsclient
+GenericName[de_DE]=Ordner-Synchronisation
+Name[de_DE]=@APPLICATION_NAME@ Desktop-Synchronisationsclient
+Comment[eu]=@APPLICATION_NAME@ mahaigaineko sinkronizazio bezeroa
+GenericName[eu]=Karpetaren sinkronizazioa
+Name[eu]=@APPLICATION_NAME@ mahaigaineko sinkronizazio bezeroa
+GenericName[fa]=همسان سازی پوشهها
+Name[fa]=@APPLICATION_EXECUTABLE@ نسخهی همسان سازی مشتری
+Comment[fr]=Client de synchronisation @APPLICATION_NAME@
+GenericName[fr]=Synchronisation de dossier
+Name[fr]=Client de synchronisation @APPLICATION_NAME@
+Comment[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
+GenericName[gl]=Sincronizar Cartafol
+Name[gl]=@APPLICATION_NAME@ cliente de sincronización para escritorio
+Comment[he]=@APPLICATION_NAME@ לקוח סנכון שולחן עבודה
+GenericName[he]=סנכון תיקייה
+Name[he]=@APPLICATION_NAME@ לקוח סנכרון שולחן עבודה
+Comment[ia]=@APPLICATION_NAME@ cliente de synchronisation pro scriptorio
+GenericName[ia]=Synchronisar Dossier
+Name[ia]=@APPLICATION_NAME@ cliente de synchronisation pro scriptorio
+Comment[id]=Klien sinkronisasi desktop @APPLICATION_NAME@
+GenericName[id]=Folder Sync
+Name[id]=Klien sync desktop @APPLICATION_NAME@
+Comment[is]=@APPLICATION_NAME@ skjáborðsforrit samstillingar
+GenericName[is]=Samstilling möppu
+Name[is]=@APPLICATION_NAME@ skjáborðsforrit samstillingar
+Comment[it]=Client di sincronizzazione del desktop di @APPLICATION_NAME@
+GenericName[it]=Sincronizzazione cartella
+Name[it]=Client di sincronizzazione del desktop di @APPLICATION_NAME@
+Comment[ko]=@APPLICATION_NAME@ 데스크톱 동기화 클라이언트
+GenericName[ko]=폴더 동기화
+Name[ko]=@APPLICATION_NAME@ 데스크톱 동기화 클라이언트
+Comment[lo]=@APPLICATION_NAME@ ການປະສານຂໍ້ມູນຄອມພິວເຕີລູກຂ່າຍ
+GenericName[lo]=ໂຟນເດີຊິງ
+Name[lo]=@APPLICATION_NAME@ ຊິງຄອມພິວເຕີລູກຂ່າຍ
+Comment[mk]=@APPLICATION_NAME@ десктор клиент за синхронизација
+GenericName[mk]=Папка за синхронизација
+Name[mk]=@APPLICATION_NAME@ десктор клиент за синхронизација
+Comment[hu_HU]=@APPLICATION_NAME@ asztali szinkronizációs kliens
+GenericName[hu_HU]=Mappaszinkronizálás
+Name[hu_HU]=@APPLICATION_NAME@ asztali szinkronizációs kliens
+Comment[af_ZA]=@APPLICATION_NAME@ werkskermsinchroniseerkliënt
+GenericName[af_ZA]=Vouersinchronisering
+Name[af_ZA]=@APPLICATION_NAME@ werkskermsinchroniseerkliënt
+Comment[nl]=@APPLICATION_NAME@ desktop synchronisatie client
+GenericName[nl]=Mappen sync
+Name[nl]=@APPLICATION_NAME@ desktop sync client
+Comment[et_EE]=@APPLICATION_NAME@ sünkroonimise klient töölauale
+GenericName[et_EE]=Kaustade sünkroonimine
+Name[et_EE]=@APPLICATION_NAME@ sünkroonimise klient töölauale
+Comment[pl]=@APPLICATION_NAME@ klient synchronizacji dla komputerów stacjonarnych
+GenericName[pl]=Folder Synchronizacji
+Name[pl]=@APPLICATION_NAME@ klient synchronizacji dla komputerów stacjonarnych
+Comment[pt_BR]=@APPLICATION_NAME@ cliente de sincronização do computador
+GenericName[pt_BR]=Sincronização de Pasta
+Name[pt_BR]=@APPLICATION_NAME@ cliente de sincronização de desktop
+Comment[cs_CZ]=@APPLICATION_NAME@ počítačový synchronizační klient
+GenericName[cs_CZ]=Synchronizace adresáře
+Name[cs_CZ]=@APPLICATION_NAME@ počítačový synchronizační klient
+Comment[ru]=Настольный клиент синхронизации @APPLICATION_NAME@
+GenericName[ru]=Синхронизация каталогов
+Name[ru]=Настольный клиент синхронизации @APPLICATION_NAME@
+Comment[sl]=@APPLICATION_NAME@ ‒ Program za usklajevanje datotek z namizjem
+GenericName[sl]=Usklajevanje map
+Name[sl]=@APPLICATION_NAME@ ‒ Program za usklajevanje datotek z namizjem
+Comment[sq]=Klient njëkohësimesh @APPLICATION_NAME@ për desktop
+GenericName[sq]=Njëkohësim Dosjesh
+Name[sq]=Klient njëkohësimesh @APPLICATION_NAME@ për desktop
+Comment[fi_FI]=@APPLICATION_NAME@ työpöytäsynkronointisovellus
+GenericName[fi_FI]=Kansion synkronointi
+Name[fi_FI]=@APPLICATION_NAME@ työpöytäsynkronointisovellus
+Comment[sv]=@APPLICATION_NAME@ desktop synkroniseringsklient
+GenericName[sv]=Mappsynk
+Name[sv]=@APPLICATION_NAME@ desktop synk-klient
+Comment[tr]=@APPLICATION_NAME@ masaüstü eşitleme istemcisi
+GenericName[tr]=Dosya Eşitleme
+Name[tr]=@APPLICATION_NAME@ masaüstü eşitleme istemcisi
+Comment[uk]=Настільний клієнт синхронізації @APPLICATION_NAME@
+GenericName[uk]=Синхронізація теки
+Name[uk]=Настільний клієнт синхронізації @APPLICATION_NAME@
+Comment[ro]=@APPLICATION_NAME@ client de sincronizare pe desktop
+GenericName[ro]=Sincronizare director
+Name[ro]=@APPLICATION_NAME@ client de sincronizare pe desktop
+Comment[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
+GenericName[zh_CN]=文件夹同步
+Name[zh_CN]=@APPLICATION_NAME@ 桌面同步客户端
+Comment[zh_HK]=桌面版同步客户端
+Comment[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
+GenericName[zh_TW]=資料夾同步
+Name[zh_TW]=@APPLICATION_NAME@ 桌面同步客戶端
+Comment[es_AR]=Cliente de sincronización para escritorio @APPLICATION_NAME@
+GenericName[es_AR]=Sincronización de directorio
+Name[es_AR]=Cliente de sincronización para escritorio @APPLICATION_NAME@
+Comment[lt_LT]=@APPLICATION_NAME@ darbalaukio sinchronizavimo programa
+GenericName[lt_LT]=Katalogo sinchnorizacija
+Name[lt_LT]=@APPLICATION_NAME@ darbalaukio programa
+Comment[th_TH]=@APPLICATION_NAME@ ประสานข้อมูลด้วยโปรแกรมบนเดสก์ท็อป
+GenericName[th_TH]=ประสานข้อมูลโฟลเดอร์
+Name[th_TH]= @APPLICATION_NAME@ ประสานข้อมูลด้วยโปรแกรมบนเดสก์ท็อป
+Comment[es_MX]=Cliente de escritorio para sincronziación de @APPLICATION_NAME@
+GenericName[es_MX]=Sincronización de Carpetas
+Name[es_MX]=Cliente de escritorio para sincronziación de @APPLICATION_NAME@
+Comment[nb_NO]=@APPLICATION_NAME@ skrivebordssynkroniseringsklient
+GenericName[nb_NO]=Mappesynkronisering
+Name[nb_NO]=@APPLICATION_NAME@ skrivebordssynkroniseringsklient
+Comment[nn_NO]=@APPLICATION_NAME@ klient for å synkronisera frå skrivebord
+GenericName[nn_NO]=Mappe synkronisering
+Name[nn_NO]=@APPLICATION_NAME@ klient for å synkronisera frå skrivebord
+Comment[pt_PT]=@APPLICATION_NAME@ - Cliente de Sincronização para PC
+GenericName[pt_PT]=Sincronizar Pasta
+Name[pt_PT]=@APPLICATION_NAME@ - Cliente de Sincronização para PC
+Comment[lb]=@APPLICATION_NAME@ Desktop Synchronisatioun Client
+GenericName[lb]=Dossier Dync
+Name[lb]=@APPLICATION_NAME@ Desktop Sync Client
+
+
+[Desktop Action Settings]
+Exec=@APPLICATION_EXECUTABLE@ --showsettings
+Name=Show @APPLICATION_NAME@ settings
+Icon=@APPLICATION_ICON_NAME@
+
+[Desktop Action Quit]
+Exec=@APPLICATION_EXECUTABLE@ --quit
+Name=Quit @APPLICATION_NAME@
+Icon=@APPLICATION_ICON_NAME@
diff --git a/owncloudcmd.desktop.in b/owncloudcmd.desktop.in
new file mode 100644
index 00000000000..26a6eed02f2
--- /dev/null
+++ b/owncloudcmd.desktop.in
@@ -0,0 +1,12 @@
+[Desktop Entry]
+Categories=Utility;X-SuSE-SyncUtility;
+Type=Application
+Terminal=true
+Exec=@APPLICATION_EXECUTABLE@cmd
+Name=@APPLICATION_NAME@ commandline sync client
+Comment=@APPLICATION_NAME@ commandline synchronization client
+GenericName=Folder Sync Commandline
+Icon=@APPLICATION_ICON_NAME@
+Keywords=@APPLICATION_NAME@;syncing;file;sharing;
+X-AppImage-Integrate=false
+NoDisplay=true
diff --git a/resources/font-awesome/dark/bell-solid.svg b/resources/font-awesome/dark/bell-solid.svg
deleted file mode 100644
index e5f2f535ebb..00000000000
--- a/resources/font-awesome/dark/bell-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/dark/bolt-solid.svg b/resources/font-awesome/dark/bolt-solid.svg
deleted file mode 100644
index 6aa1c1edc2f..00000000000
--- a/resources/font-awesome/dark/bolt-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/dark/cog-solid.svg b/resources/font-awesome/dark/cog-solid.svg
deleted file mode 100644
index 956c337cac6..00000000000
--- a/resources/font-awesome/dark/cog-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/dark/ellipsis-h-solid.svg b/resources/font-awesome/dark/ellipsis-h-solid.svg
deleted file mode 100644
index a2e36e3c143..00000000000
--- a/resources/font-awesome/dark/ellipsis-h-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/dark/exclamation-triangle-solid.svg b/resources/font-awesome/dark/exclamation-triangle-solid.svg
deleted file mode 100644
index 4d53f45aa4d..00000000000
--- a/resources/font-awesome/dark/exclamation-triangle-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/dark/folder-solid.svg b/resources/font-awesome/dark/folder-solid.svg
deleted file mode 100644
index 7642e349fb5..00000000000
--- a/resources/font-awesome/dark/folder-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/dark/lock-open-solid.svg b/resources/font-awesome/dark/lock-open-solid.svg
deleted file mode 100644
index c3a547e2403..00000000000
--- a/resources/font-awesome/dark/lock-open-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/dark/lock-solid.svg b/resources/font-awesome/dark/lock-solid.svg
deleted file mode 100644
index 94c5e7d77c6..00000000000
--- a/resources/font-awesome/dark/lock-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/dark/plus-solid.svg b/resources/font-awesome/dark/plus-solid.svg
deleted file mode 100644
index 44e1f858b2c..00000000000
--- a/resources/font-awesome/dark/plus-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/dark/power-off-solid.svg b/resources/font-awesome/dark/power-off-solid.svg
deleted file mode 100644
index 28baa2ec97f..00000000000
--- a/resources/font-awesome/dark/power-off-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/dark/trash-solid.svg b/resources/font-awesome/dark/trash-solid.svg
deleted file mode 100644
index 2190928cf30..00000000000
--- a/resources/font-awesome/dark/trash-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/dark/user-solid.svg b/resources/font-awesome/dark/user-solid.svg
deleted file mode 100644
index 5a4de015c77..00000000000
--- a/resources/font-awesome/dark/user-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/light/bell-solid.svg b/resources/font-awesome/light/bell-solid.svg
deleted file mode 100644
index 57216ba94f0..00000000000
--- a/resources/font-awesome/light/bell-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/light/bolt-solid.svg b/resources/font-awesome/light/bolt-solid.svg
deleted file mode 100644
index 04351727e4b..00000000000
--- a/resources/font-awesome/light/bolt-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/light/cog-solid.svg b/resources/font-awesome/light/cog-solid.svg
deleted file mode 100644
index 1daa61e1e4b..00000000000
--- a/resources/font-awesome/light/cog-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/light/ellipsis-h-solid.svg b/resources/font-awesome/light/ellipsis-h-solid.svg
deleted file mode 100644
index 6583cbcbcad..00000000000
--- a/resources/font-awesome/light/ellipsis-h-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/light/exclamation-triangle-solid.svg b/resources/font-awesome/light/exclamation-triangle-solid.svg
deleted file mode 100644
index 630af9961b1..00000000000
--- a/resources/font-awesome/light/exclamation-triangle-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/light/folder-solid.svg b/resources/font-awesome/light/folder-solid.svg
deleted file mode 100644
index 1b7d671395b..00000000000
--- a/resources/font-awesome/light/folder-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/light/lock-open-solid.svg b/resources/font-awesome/light/lock-open-solid.svg
deleted file mode 100644
index 83395d26371..00000000000
--- a/resources/font-awesome/light/lock-open-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/light/lock-solid.svg b/resources/font-awesome/light/lock-solid.svg
deleted file mode 100644
index 4c1822deff4..00000000000
--- a/resources/font-awesome/light/lock-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/light/plus-solid.svg b/resources/font-awesome/light/plus-solid.svg
deleted file mode 100644
index 2499ffba23b..00000000000
--- a/resources/font-awesome/light/plus-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/light/power-off-solid.svg b/resources/font-awesome/light/power-off-solid.svg
deleted file mode 100644
index ec12e78db4a..00000000000
--- a/resources/font-awesome/light/power-off-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/light/trash-solid.svg b/resources/font-awesome/light/trash-solid.svg
deleted file mode 100644
index 9c525044820..00000000000
--- a/resources/font-awesome/light/trash-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/light/user-solid.svg b/resources/font-awesome/light/user-solid.svg
deleted file mode 100644
index 6ae817ff29a..00000000000
--- a/resources/font-awesome/light/user-solid.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources/font-awesome/update_color.ps1 b/resources/font-awesome/update_color.ps1
deleted file mode 100644
index b1fe755e069..00000000000
--- a/resources/font-awesome/update_color.ps1
+++ /dev/null
@@ -1,17 +0,0 @@
-<#
- .SYNOPSIS
- This script replaces the color in all svg files in this folder
-#>
-$COLOR=$Args[0]
-Write-Host "Color:" $COLOR
-if (-not $COLOR) {
- Write-Host "Please specify color"
- Write-Host "update_corlor.ps1 `"#B5B6BB`""
- exit(1)
-}
-Get-ChildItem "*.svg" | % {
- $tmp = Get-Content $_
- $tmp = $tmp -replace "fill=`"\S+`"", "fill=`"$COLOR`""
- Set-Content -Path $_ -Value $tmp
-
-}
diff --git a/shell_integration/CMakeLists.txt b/shell_integration/CMakeLists.txt
index 2ad9e86aba7..f4c270ccdfa 100644
--- a/shell_integration/CMakeLists.txt
+++ b/shell_integration/CMakeLists.txt
@@ -1,24 +1,6 @@
if (APPLE)
add_subdirectory(MacOSX)
endif()
-if(BUILD_SHELL_INTEGRATION_ICONS)
- add_subdirectory(icons)
-endif()
-
-if( UNIX AND NOT APPLE )
- if(BUILD_SHELL_INTEGRATION_NAUTILUS)
- add_subdirectory(nautilus)
- endif()
-
- if(BUILD_SHELL_INTEGRATION_DOLPHIN)
- find_package(KF5 "5.16" COMPONENTS KIO)
- if(KF5_FOUND)
- add_subdirectory(dolphin)
- else()
- message("Dolphin plugin disabled: KDE Frameworks 5.16 not found")
- endif()
- endif()
-endif()
if(MSVC)
add_subdirectory(windows)
diff --git a/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/FinderSync.h b/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/FinderSync.h
index 803c5270ffb..01333b74408 100644
--- a/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/FinderSync.h
+++ b/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/FinderSync.h
@@ -13,17 +13,16 @@
*/
+#import "SyncClientProxy.h"
#import
#import
-#import "SyncClientProxy.h"
-@interface FinderSync : FIFinderSync
-{
- SyncClientProxy *_syncClientProxy;
- NSMutableSet *_registeredDirectories;
- NSString *_shareMenuTitle;
- NSMutableDictionary *_strings;
- NSMutableArray *_menuItems;
+@interface FinderSync : FIFinderSync {
+ SyncClientProxy *_syncClientProxy;
+ NSMutableSet *_registeredDirectories;
+ NSString *_shareMenuTitle;
+ NSMutableDictionary *_strings;
+ NSMutableArray *_menuItems;
}
@end
diff --git a/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/FinderSync.m b/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/FinderSync.m
index a0f791882c2..d1ebeac566a 100644
--- a/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/FinderSync.m
+++ b/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/FinderSync.m
@@ -20,190 +20,175 @@ @implementation FinderSync
- (instancetype)init
{
- self = [super init];
-
- FIFinderSyncController *syncController = [FIFinderSyncController defaultController];
- NSBundle *extBundle = [NSBundle bundleForClass:[self class]];
- // This was added to the bundle's Info.plist to get it from the build system
- NSString *socketApiPrefix = [extBundle objectForInfoDictionaryKey:@"SocketApiPrefix"];
-
- NSImage *ok = [extBundle imageForResource:@"ok.icns"];
- NSImage *ok_swm = [extBundle imageForResource:@"ok_swm.icns"];
- NSImage *sync = [extBundle imageForResource:@"sync.icns"];
- NSImage *warning = [extBundle imageForResource:@"warning.icns"];
- NSImage *error = [extBundle imageForResource:@"error.icns"];
-
- [syncController setBadgeImage:ok label:@"Up to date" forBadgeIdentifier:@"OK"];
- [syncController setBadgeImage:sync label:@"Synchronizing" forBadgeIdentifier:@"SYNC"];
- [syncController setBadgeImage:sync label:@"Synchronizing" forBadgeIdentifier:@"NEW"];
- [syncController setBadgeImage:warning label:@"Ignored" forBadgeIdentifier:@"IGNORE"];
- [syncController setBadgeImage:error label:@"Error" forBadgeIdentifier:@"ERROR"];
- [syncController setBadgeImage:ok_swm label:@"Shared" forBadgeIdentifier:@"OK+SWM"];
- [syncController setBadgeImage:sync label:@"Synchronizing" forBadgeIdentifier:@"SYNC+SWM"];
- [syncController setBadgeImage:sync label:@"Synchronizing" forBadgeIdentifier:@"NEW+SWM"];
- [syncController setBadgeImage:warning label:@"Ignored" forBadgeIdentifier:@"IGNORE+SWM"];
- [syncController setBadgeImage:error label:@"Error" forBadgeIdentifier:@"ERROR+SWM"];
-
- // The Mach port name needs to:
- // - Be prefixed with the code signing Team ID
- // - Then infixed with the sandbox App Group
- // - The App Group itself must be a prefix of (or equal to) the application bundle identifier
- // We end up in the official signed client with: 9B5WD74GWJ.com.owncloud.desktopclient.socketApi
- // With ad-hoc signing (the '-' signing identity) we must drop the Team ID.
- // When the code isn't sandboxed (e.g. the OC client or the legacy overlay icon extension)
- // the OS doesn't seem to put any restriction on the port name, so we just follow what
- // the sandboxed App Extension needs.
- // https://developer.apple.com/library/mac/documentation/Security/Conceptual/AppSandboxDesignGuide/AppSandboxInDepth/AppSandboxInDepth.html#//apple_ref/doc/uid/TP40011183-CH3-SW24
- NSString *serverName = [socketApiPrefix stringByAppendingString:@".socketApi"];
- //NSLog(@"FinderSync serverName %@", serverName);
-
- _syncClientProxy = [[SyncClientProxy alloc] initWithDelegate:self serverName:serverName];
- _registeredDirectories = [[NSMutableSet alloc] init];
- _strings = [[NSMutableDictionary alloc] init];
-
- [_syncClientProxy start];
- return self;
+ self = [super init];
+
+ FIFinderSyncController *syncController = [FIFinderSyncController defaultController];
+ NSBundle *extBundle = [NSBundle bundleForClass:[self class]];
+ // This was added to the bundle's Info.plist to get it from the build system
+ NSString *socketApiPrefix = [extBundle objectForInfoDictionaryKey:@"SocketApiPrefix"];
+
+ NSImage *ok = [extBundle imageForResource:@"ok.icns"];
+ NSImage *ok_swm = [extBundle imageForResource:@"ok_swm.icns"];
+ NSImage *sync = [extBundle imageForResource:@"sync.icns"];
+ NSImage *warning = [extBundle imageForResource:@"warning.icns"];
+ NSImage *error = [extBundle imageForResource:@"error.icns"];
+
+ [syncController setBadgeImage:ok label:@"Up to date" forBadgeIdentifier:@"OK"];
+ [syncController setBadgeImage:sync label:@"Synchronizing" forBadgeIdentifier:@"SYNC"];
+ [syncController setBadgeImage:sync label:@"Synchronizing" forBadgeIdentifier:@"NEW"];
+ [syncController setBadgeImage:warning label:@"Ignored" forBadgeIdentifier:@"IGNORE"];
+ [syncController setBadgeImage:error label:@"Error" forBadgeIdentifier:@"ERROR"];
+ [syncController setBadgeImage:ok_swm label:@"Shared" forBadgeIdentifier:@"OK+SWM"];
+ [syncController setBadgeImage:sync label:@"Synchronizing" forBadgeIdentifier:@"SYNC+SWM"];
+ [syncController setBadgeImage:sync label:@"Synchronizing" forBadgeIdentifier:@"NEW+SWM"];
+ [syncController setBadgeImage:warning label:@"Ignored" forBadgeIdentifier:@"IGNORE+SWM"];
+ [syncController setBadgeImage:error label:@"Error" forBadgeIdentifier:@"ERROR+SWM"];
+
+ // The Mach port name needs to:
+ // - Be prefixed with the code signing Team ID
+ // - Then infixed with the sandbox App Group
+ // - The App Group itself must be a prefix of (or equal to) the application bundle identifier
+ // We end up in the official signed client with: 9B5WD74GWJ.com.owncloud.desktopclient.socketApi
+ // With ad-hoc signing (the '-' signing identity) we must drop the Team ID.
+ // When the code isn't sandboxed (e.g. the OC client or the legacy overlay icon extension)
+ // the OS doesn't seem to put any restriction on the port name, so we just follow what
+ // the sandboxed App Extension needs.
+ // https://developer.apple.com/library/mac/documentation/Security/Conceptual/AppSandboxDesignGuide/AppSandboxInDepth/AppSandboxInDepth.html#//apple_ref/doc/uid/TP40011183-CH3-SW24
+ NSString *serverName = [socketApiPrefix stringByAppendingString:@".socketApi"];
+ // NSLog(@"FinderSync serverName %@", serverName);
+
+ _syncClientProxy = [[SyncClientProxy alloc] initWithDelegate:self serverName:serverName];
+ _registeredDirectories = [[NSMutableSet alloc] init];
+ _strings = [[NSMutableDictionary alloc] init];
+
+ [_syncClientProxy start];
+ return self;
}
#pragma mark - Primary Finder Sync protocol methods
- (void)requestBadgeIdentifierForURL:(NSURL *)url
{
- BOOL isDir;
- if ([[NSFileManager defaultManager] fileExistsAtPath:[url path] isDirectory: &isDir] == NO) {
- NSLog(@"ERROR: Could not determine file type of %@", [url path]);
- isDir = NO;
- }
-
- NSString* normalizedPath = [[url path] decomposedStringWithCanonicalMapping];
- [_syncClientProxy askForIcon:normalizedPath isDirectory:isDir];
+ BOOL isDir;
+ if ([[NSFileManager defaultManager] fileExistsAtPath:[url path] isDirectory:&isDir] == NO) {
+ NSLog(@"ERROR: Could not determine file type of %@", [url path]);
+ isDir = NO;
+ }
+
+ NSString *normalizedPath = [[url path] decomposedStringWithCanonicalMapping];
+ [_syncClientProxy askForIcon:normalizedPath isDirectory:isDir];
}
#pragma mark - Menu and toolbar item support
-- (NSString*) selectedPathsSeparatedByRecordSeparator
+- (NSString *)selectedPathsSeparatedByRecordSeparator
{
- FIFinderSyncController *syncController = [FIFinderSyncController defaultController];
- NSMutableString *string = [[NSMutableString alloc] init];
- [syncController.selectedItemURLs enumerateObjectsUsingBlock: ^(id obj, NSUInteger idx, BOOL *stop) {
- if (string.length > 0) {
- [string appendString:@"\x1e"]; // record separator
- }
- NSString* normalizedPath = [[obj path] decomposedStringWithCanonicalMapping];
- [string appendString:normalizedPath];
- }];
- return string;
+ FIFinderSyncController *syncController = [FIFinderSyncController defaultController];
+ NSMutableString *string = [[NSMutableString alloc] init];
+ [syncController.selectedItemURLs enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
+ if (string.length > 0) {
+ [string appendString:@"\x1e"]; // record separator
+ }
+ NSString *normalizedPath = [[obj path] decomposedStringWithCanonicalMapping];
+ [string appendString:normalizedPath];
+ }];
+ return string;
}
- (NSMenu *)menuForMenuKind:(FIMenuKind)whichMenu
{
- FIFinderSyncController *syncController = [FIFinderSyncController defaultController];
- NSMutableSet *rootPaths = [[NSMutableSet alloc] init];
- [syncController.directoryURLs enumerateObjectsUsingBlock: ^(id obj, BOOL *stop) {
- [rootPaths addObject:[obj path]];
- }];
-
- // The server doesn't support sharing a root directory so do not show the option in this case.
- // It is still possible to get a problematic sharing by selecting both the root and a child,
- // but this is so complicated to do and meaningless that it's not worth putting this check
- // also in shareMenuAction.
- __block BOOL onlyRootsSelected = YES;
- [syncController.selectedItemURLs enumerateObjectsUsingBlock: ^(id obj, NSUInteger idx, BOOL *stop) {
- if (![rootPaths member:[obj path]]) {
- onlyRootsSelected = NO;
- *stop = YES;
- }
- }];
-
- NSString *paths = [self selectedPathsSeparatedByRecordSeparator];
- // calling this IPC calls us back from client with several MENU_ITEM entries and then our askOnSocket returns again
- [_syncClientProxy askOnSocket:paths query:@"GET_MENU_ITEMS"];
-
- id contextMenuTitle = [_strings objectForKey:@"CONTEXT_MENU_TITLE"];
- if (contextMenuTitle && !onlyRootsSelected) {
- NSMenu *menu = [[NSMenu alloc] initWithTitle:@""];
- NSMenu *subMenu = [[NSMenu alloc] initWithTitle:@""];
- NSMenuItem *subMenuItem = [menu addItemWithTitle:contextMenuTitle action:nil keyEquivalent:@""];
- subMenuItem.submenu = subMenu;
- subMenuItem.image = [[NSBundle mainBundle] imageForResource:@"app.icns"];
-
- // There is an annoying bug in macOS (at least 10.13.3), it does not use/copy over the representedObject of a menu item
- // So we have to use tag instead.
- int idx = 0;
- for (NSArray* item in _menuItems) {
- NSMenuItem *actionItem = [subMenu addItemWithTitle:[item valueForKey:@"text"]
- action:@selector(subMenuActionClicked:)
- keyEquivalent:@""];
- [actionItem setTag:idx];
- [actionItem setTarget:self];
- NSString *flags = [item valueForKey:@"flags"]; // e.g. "d"
- if ([flags rangeOfString:@"d"].location != NSNotFound) {
- [actionItem setEnabled:false];
- }
- idx++;
- }
- return menu;
- }
- return nil;
+ FIFinderSyncController *syncController = [FIFinderSyncController defaultController];
+ NSMutableSet *rootPaths = [[NSMutableSet alloc] init];
+ [syncController.directoryURLs enumerateObjectsUsingBlock:^(id obj, BOOL *stop) { [rootPaths addObject:[obj path]]; }];
+
+ NSString *paths = [self selectedPathsSeparatedByRecordSeparator];
+ // calling this IPC calls us back from client with several MENU_ITEM entries and then our askOnSocket returns again
+ [_syncClientProxy askOnSocket:paths query:@"GET_MENU_ITEMS"];
+
+ id contextMenuTitle = [_strings objectForKey:@"CONTEXT_MENU_TITLE"];
+ if (contextMenuTitle && _menuItems.count != 0) {
+ NSMenu *menu = [[NSMenu alloc] initWithTitle:@""];
+ NSMenu *subMenu = [[NSMenu alloc] initWithTitle:@""];
+ NSMenuItem *subMenuItem = [menu addItemWithTitle:contextMenuTitle action:nil keyEquivalent:@""];
+ subMenuItem.submenu = subMenu;
+ subMenuItem.image = [[NSBundle mainBundle] imageForResource:@"app.icns"];
+
+ // There is an annoying bug in macOS (at least 10.13.3), it does not use/copy over the representedObject of a menu item
+ // So we have to use tag instead.
+ int idx = 0;
+ for (NSArray *item in _menuItems) {
+ NSMenuItem *actionItem = [subMenu addItemWithTitle:[item valueForKey:@"text"] action:@selector(subMenuActionClicked:) keyEquivalent:@""];
+ [actionItem setTag:idx];
+ [actionItem setTarget:self];
+ NSString *flags = [item valueForKey:@"flags"]; // e.g. "d"
+ if ([flags rangeOfString:@"d"].location != NSNotFound) {
+ [actionItem setEnabled:false];
+ }
+ idx++;
+ }
+ return menu;
+ }
+ return nil;
}
-- (void)subMenuActionClicked:(id)sender {
- long idx = [(NSMenuItem*)sender tag];
- NSString *command = [[_menuItems objectAtIndex:idx] valueForKey:@"command"];
- NSString *paths = [self selectedPathsSeparatedByRecordSeparator];
- [_syncClientProxy askOnSocket:paths query:command];
+- (void)subMenuActionClicked:(id)sender
+{
+ long idx = [(NSMenuItem *)sender tag];
+ NSString *command = [[_menuItems objectAtIndex:idx] valueForKey:@"command"];
+ NSString *paths = [self selectedPathsSeparatedByRecordSeparator];
+ [_syncClientProxy askOnSocket:paths query:command];
}
#pragma mark - SyncClientProxyDelegate implementation
-- (void)setResultForPath:(NSString*)path result:(NSString*)result
+- (void)setResultForPath:(NSString *)path result:(NSString *)result
{
- NSString *normalizedPath = [path decomposedStringWithCanonicalMapping];
- [[FIFinderSyncController defaultController] setBadgeIdentifier:result forURL:[NSURL fileURLWithPath:normalizedPath]];
+ NSString *normalizedPath = [path decomposedStringWithCanonicalMapping];
+ [[FIFinderSyncController defaultController] setBadgeIdentifier:result forURL:[NSURL fileURLWithPath:normalizedPath]];
}
-- (void)reFetchFileNameCacheForPath:(NSString*)path
+- (void)reFetchFileNameCacheForPath:(NSString *)path
{
}
-- (void)registerPath:(NSString*)path
+- (void)registerPath:(NSString *)path
{
- assert(_registeredDirectories);
- [_registeredDirectories addObject:[NSURL fileURLWithPath:path]];
- [FIFinderSyncController defaultController].directoryURLs = _registeredDirectories;
+ assert(_registeredDirectories);
+ [_registeredDirectories addObject:[NSURL fileURLWithPath:path]];
+ [FIFinderSyncController defaultController].directoryURLs = _registeredDirectories;
}
-- (void)unregisterPath:(NSString*)path
+- (void)unregisterPath:(NSString *)path
{
- [_registeredDirectories removeObject:[NSURL fileURLWithPath:path]];
- [FIFinderSyncController defaultController].directoryURLs = _registeredDirectories;
+ [_registeredDirectories removeObject:[NSURL fileURLWithPath:path]];
+ [FIFinderSyncController defaultController].directoryURLs = _registeredDirectories;
}
-- (void)setString:(NSString*)key value:(NSString*)value
+- (void)setString:(NSString *)key value:(NSString *)value
{
- [_strings setObject:value forKey:key];
+ [_strings setObject:value forKey:key];
}
- (void)resetMenuItems
{
- _menuItems = [[NSMutableArray alloc] init];
+ _menuItems = [[NSMutableArray alloc] init];
}
-- (void)addMenuItem:(NSDictionary *)item {
- [_menuItems addObject:item];
+- (void)addMenuItem:(NSDictionary *)item
+{
+ [_menuItems addObject:item];
}
- (void)connectionDidDie
{
- [_strings removeAllObjects];
- [_registeredDirectories removeAllObjects];
- // For some reason the FIFinderSync cache doesn't seem to be cleared for the root item when
- // we reset the directoryURLs (seen on macOS 10.12 at least).
- // First setting it to the FS root and then setting it to nil seems to work around the issue.
- [FIFinderSyncController defaultController].directoryURLs = [NSSet setWithObject:[NSURL fileURLWithPath:@"/"]];
- // This will tell Finder that this extension isn't attached to any directory
- // until we can reconnect to the sync client.
- [FIFinderSyncController defaultController].directoryURLs = nil;
+ [_strings removeAllObjects];
+ [_registeredDirectories removeAllObjects];
+ // For some reason the FIFinderSync cache doesn't seem to be cleared for the root item when
+ // we reset the directoryURLs (seen on macOS 10.12 at least).
+ // First setting it to the FS root and then setting it to nil seems to work around the issue.
+ [FIFinderSyncController defaultController].directoryURLs = [NSSet setWithObject:[NSURL fileURLWithPath:@"/"]];
+ // This will tell Finder that this extension isn't attached to any directory
+ // until we can reconnect to the sync client.
+ [FIFinderSyncController defaultController].directoryURLs = nil;
}
@end
-
diff --git a/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/SyncClientProxy.h b/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/SyncClientProxy.h
index 1d0fd74b858..027aaef726b 100644
--- a/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/SyncClientProxy.h
+++ b/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/SyncClientProxy.h
@@ -16,30 +16,29 @@
@protocol SyncClientProxyDelegate
-- (void)setResultForPath:(NSString*)path result:(NSString*)result;
-- (void)reFetchFileNameCacheForPath:(NSString*)path;
-- (void)registerPath:(NSString*)path;
-- (void)unregisterPath:(NSString*)path;
-- (void)setString:(NSString*)key value:(NSString*)value;
+- (void)setResultForPath:(NSString *)path result:(NSString *)result;
+- (void)reFetchFileNameCacheForPath:(NSString *)path;
+- (void)registerPath:(NSString *)path;
+- (void)unregisterPath:(NSString *)path;
+- (void)setString:(NSString *)key value:(NSString *)value;
- (void)resetMenuItems;
- (void)addMenuItem:(NSDictionary *)item;
- (void)connectionDidDie;
@end
@protocol ChannelProtocol
-- (void)sendMessage:(NSData*)msg;
+- (void)sendMessage:(NSData *)msg;
@end
-@interface SyncClientProxy : NSObject
-{
- NSString *_serverName;
- NSDistantObject *_remoteEnd;
+@interface SyncClientProxy : NSObject {
+ NSString *_serverName;
+ NSDistantObject *_remoteEnd;
}
-@property (weak) id delegate;
+@property (weak) id delegate;
-- (instancetype)initWithDelegate:(id)arg1 serverName:(NSString*)serverName;
+- (instancetype)initWithDelegate:(id)arg1 serverName:(NSString *)serverName;
- (void)start;
-- (void)askOnSocket:(NSString*)path query:(NSString*)verb;
-- (void)askForIcon:(NSString*)path isDirectory:(BOOL)isDir;
+- (void)askOnSocket:(NSString *)path query:(NSString *)verb;
+- (void)askForIcon:(NSString *)path isDirectory:(BOOL)isDir;
@end
diff --git a/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/SyncClientProxy.m b/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/SyncClientProxy.m
index 656f7700328..e92759ea9c0 100644
--- a/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/SyncClientProxy.m
+++ b/shell_integration/MacOSX/OwnCloudFinderSync/FinderSyncExt/SyncClientProxy.m
@@ -24,138 +24,133 @@ - (void)registerTransmitter:(id)tx;
@implementation SyncClientProxy
-- (instancetype)initWithDelegate:(id)arg1 serverName:(NSString*)serverName
+- (instancetype)initWithDelegate:(id)arg1 serverName:(NSString *)serverName
{
- self = [super init];
-
- self.delegate = arg1;
- _serverName = serverName;
- _remoteEnd = nil;
+ self = [super init];
- return self;
+ self.delegate = arg1;
+ _serverName = serverName;
+ _remoteEnd = nil;
+
+ return self;
}
#pragma mark - Connection setup
- (void)start
{
- if (_remoteEnd)
- return;
-
- // Lookup the server connection
- NSConnection *conn = [NSConnection connectionWithRegisteredName:_serverName host:nil];
-
- if (!conn) {
- // Could not connect to the sync client
- [self scheduleRetry];
- return;
- }
-
- [[NSNotificationCenter defaultCenter] addObserver:self
- selector:@selector(connectionDidDie:)
- name:NSConnectionDidDieNotification
- object:conn];
-
- NSDistantObject *server = (NSDistantObject *)[conn rootProxy];
- assert(server);
-
- // This saves a few Mach messages, enable "Distributed Objects" in the scheme's Run diagnostics to watch
- [server setProtocolForProxy:@protocol(ServerProtocol)];
-
- // Send an object to the server to act as the channel rx, we'll receive the tx through registerTransmitter
- [server registerClient:self];
+ if (_remoteEnd)
+ return;
+
+ // Lookup the server connection
+ NSConnection *conn = [NSConnection connectionWithRegisteredName:_serverName host:nil];
+
+ if (!conn) {
+ // Could not connect to the sync client
+ [self scheduleRetry];
+ return;
+ }
+
+ [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(connectionDidDie:) name:NSConnectionDidDieNotification object:conn];
+
+ NSDistantObject *server = (NSDistantObject *)[conn rootProxy];
+ assert(server);
+
+ // This saves a few Mach messages, enable "Distributed Objects" in the scheme's Run diagnostics to watch
+ [server setProtocolForProxy:@protocol(ServerProtocol)];
+
+ // Send an object to the server to act as the channel rx, we'll receive the tx through registerTransmitter
+ [server registerClient:self];
}
- (void)registerTransmitter:(id)tx;
{
- // The server replied with the distant object that we will use for tx
- _remoteEnd = (NSDistantObject *)tx;
- [_remoteEnd setProtocolForProxy:@protocol(ChannelProtocol)];
-
- // Everything is set up, start querying
- [self askOnSocket:@"" query:@"GET_STRINGS"];
+ // The server replied with the distant object that we will use for tx
+ _remoteEnd = (NSDistantObject *)tx;
+ [_remoteEnd setProtocolForProxy:@protocol(ChannelProtocol)];
+
+ // Everything is set up, start querying
+ [self askOnSocket:@"" query:@"GET_STRINGS"];
}
- (void)scheduleRetry
{
- [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(start) userInfo:nil repeats:NO];
+ [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(start) userInfo:nil repeats:NO];
}
-- (void)connectionDidDie:(NSNotification*)notification
+- (void)connectionDidDie:(NSNotification *)notification
{
-#pragma unused(notification)
- _remoteEnd = nil;
- [_delegate connectionDidDie];
-
- [self scheduleRetry];
+#pragma unused(notification)
+ _remoteEnd = nil;
+ [_delegate connectionDidDie];
+
+ [self scheduleRetry];
}
#pragma mark - Communication logic
-- (void)sendMessage:(NSData*)msg
+- (void)sendMessage:(NSData *)msg
{
- NSString *answer = [[NSString alloc] initWithData:msg encoding:NSUTF8StringEncoding];
-
- // Cut the trailing newline. We always only receive one line from the client.
- answer = [answer substringToIndex:[answer length] - 1];
- NSArray *chunks = [answer componentsSeparatedByString: @":"];
-
- if( [[chunks objectAtIndex:0] isEqualToString:@"STATUS"] ) {
- NSString *result = [chunks objectAtIndex:1];
- NSString *path = [chunks objectAtIndex:2];
- if( [chunks count] > 3 ) {
- for( int i = 2; i < [chunks count]-1; i++ ) {
- path = [NSString stringWithFormat:@"%@:%@",
- path, [chunks objectAtIndex:i+1] ];
- }
- }
- [_delegate setResultForPath:path result:result];
- } else if( [[chunks objectAtIndex:0] isEqualToString:@"UPDATE_VIEW"] ) {
- NSString *path = [chunks objectAtIndex:1];
- [_delegate reFetchFileNameCacheForPath:path];
- } else if( [[chunks objectAtIndex:0 ] isEqualToString:@"REGISTER_PATH"] ) {
- NSString *path = [chunks objectAtIndex:1];
- [_delegate registerPath:path];
- } else if( [[chunks objectAtIndex:0 ] isEqualToString:@"UNREGISTER_PATH"] ) {
- NSString *path = [chunks objectAtIndex:1];
- [_delegate unregisterPath:path];
- } else if( [[chunks objectAtIndex:0 ] isEqualToString:@"GET_STRINGS"] ) {
- // BEGIN and END messages, do nothing.
- } else if( [[chunks objectAtIndex:0 ] isEqualToString:@"STRING"] ) {
- [_delegate setString:[chunks objectAtIndex:1] value:[chunks objectAtIndex:2]];
- } else if( [[chunks objectAtIndex:0 ] isEqualToString:@"GET_MENU_ITEMS"] ) {
- if ([[chunks objectAtIndex:1] isEqualToString:@"BEGIN"]) {
- [_delegate resetMenuItems];
- } else if ([[chunks objectAtIndex:1] isEqualToString:@"END"]) {
- // Don't do anything special, the askOnSocket call in FinderSync menuForMenuKind will return after this line
- }
- } else if( [[chunks objectAtIndex:0 ] isEqualToString:@"MENU_ITEM"] ) {
- NSMutableDictionary *item = [[NSMutableDictionary alloc] init];
- [item setValue:[chunks objectAtIndex:1] forKey:@"command"]; // e.g. "COPY_PRIVATE_LINK"
- [item setValue:[chunks objectAtIndex:2] forKey:@"flags"]; // e.g. "d"
- [item setValue:[chunks objectAtIndex:3] forKey:@"text"]; // e.g. "Copy private link to clipboard"
- [_delegate addMenuItem:item];
- } else {
- NSLog(@"SyncState: Unknown command %@", [chunks objectAtIndex:0]);
- }
+ NSString *answer = [[NSString alloc] initWithData:msg encoding:NSUTF8StringEncoding];
+
+ // Cut the trailing newline. We always only receive one line from the client.
+ answer = [answer substringToIndex:[answer length] - 1];
+ NSArray *chunks = [answer componentsSeparatedByString:@":"];
+
+ if ([[chunks objectAtIndex:0] isEqualToString:@"STATUS"]) {
+ NSString *result = [chunks objectAtIndex:1];
+ NSString *path = [chunks objectAtIndex:2];
+ if ([chunks count] > 3) {
+ for (int i = 2; i < [chunks count] - 1; i++) {
+ path = [NSString stringWithFormat:@"%@:%@", path, [chunks objectAtIndex:i + 1]];
+ }
+ }
+ [_delegate setResultForPath:path result:result];
+ } else if ([[chunks objectAtIndex:0] isEqualToString:@"UPDATE_VIEW"]) {
+ NSString *path = [chunks objectAtIndex:1];
+ [_delegate reFetchFileNameCacheForPath:path];
+ } else if ([[chunks objectAtIndex:0] isEqualToString:@"REGISTER_PATH"]) {
+ NSString *path = [chunks objectAtIndex:1];
+ [_delegate registerPath:path];
+ } else if ([[chunks objectAtIndex:0] isEqualToString:@"UNREGISTER_PATH"]) {
+ NSString *path = [chunks objectAtIndex:1];
+ [_delegate unregisterPath:path];
+ } else if ([[chunks objectAtIndex:0] isEqualToString:@"GET_STRINGS"]) {
+ // BEGIN and END messages, do nothing.
+ } else if ([[chunks objectAtIndex:0] isEqualToString:@"STRING"]) {
+ [_delegate setString:[chunks objectAtIndex:1] value:[chunks objectAtIndex:2]];
+ } else if ([[chunks objectAtIndex:0] isEqualToString:@"GET_MENU_ITEMS"]) {
+ if ([[chunks objectAtIndex:1] isEqualToString:@"BEGIN"]) {
+ [_delegate resetMenuItems];
+ } else if ([[chunks objectAtIndex:1] isEqualToString:@"END"]) {
+ // Don't do anything special, the askOnSocket call in FinderSync menuForMenuKind will return after this line
+ }
+ } else if ([[chunks objectAtIndex:0] isEqualToString:@"MENU_ITEM"]) {
+ NSMutableDictionary *item = [[NSMutableDictionary alloc] init];
+ [item setValue:[chunks objectAtIndex:1] forKey:@"command"]; // e.g. "COPY_PRIVATE_LINK"
+ [item setValue:[chunks objectAtIndex:2] forKey:@"flags"]; // e.g. "d"
+ [item setValue:[chunks objectAtIndex:3] forKey:@"text"]; // e.g. "Copy private link to clipboard"
+ [_delegate addMenuItem:item];
+ } else {
+ NSLog(@"SyncState: Unknown command %@", [chunks objectAtIndex:0]);
+ }
}
-- (void)askOnSocket:(NSString*)path query:(NSString*)verb
+- (void)askOnSocket:(NSString *)path query:(NSString *)verb
{
- NSString *query = [NSString stringWithFormat:@"%@:%@\n", verb,path];
-
- @try {
- [_remoteEnd sendMessage:[query dataUsingEncoding:NSUTF8StringEncoding]];
- } @catch(NSException* e) {
- // Do nothing and wait for connectionDidDie
- }
+ NSString *query = [NSString stringWithFormat:@"%@:%@\n", verb, path];
+
+ @try {
+ [_remoteEnd sendMessage:[query dataUsingEncoding:NSUTF8StringEncoding]];
+ } @catch (NSException *e) {
+ // Do nothing and wait for connectionDidDie
+ }
}
-- (void)askForIcon:(NSString*)path isDirectory:(BOOL)isDir
+- (void)askForIcon:(NSString *)path isDirectory:(BOOL)isDir
{
- NSString *verb = isDir ? @"RETRIEVE_FOLDER_STATUS" : @"RETRIEVE_FILE_STATUS";
- [self askOnSocket:path query:verb];
+ NSString *verb = isDir ? @"RETRIEVE_FOLDER_STATUS" : @"RETRIEVE_FILE_STATUS";
+ [self askOnSocket:path query:verb];
}
@end
-
diff --git a/shell_integration/MacOSX/OwnCloudFinderSync/OwnCloudFinderSync.xcodeproj/project.pbxproj b/shell_integration/MacOSX/OwnCloudFinderSync/OwnCloudFinderSync.xcodeproj/project.pbxproj
index 5d987c86f2b..4e46f194068 100644
--- a/shell_integration/MacOSX/OwnCloudFinderSync/OwnCloudFinderSync.xcodeproj/project.pbxproj
+++ b/shell_integration/MacOSX/OwnCloudFinderSync/OwnCloudFinderSync.xcodeproj/project.pbxproj
@@ -343,7 +343,7 @@
GCC_WARN_UNUSED_VARIABLE = YES;
INFOPLIST_FILE = desktopclient/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
- MACOSX_DEPLOYMENT_TARGET = 10.10;
+ MACOSX_DEPLOYMENT_TARGET = 10.15;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
PRODUCT_NAME = "$(TARGET_NAME)";
@@ -386,7 +386,7 @@
GCC_WARN_UNUSED_VARIABLE = YES;
INFOPLIST_FILE = desktopclient/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
- MACOSX_DEPLOYMENT_TARGET = 10.10;
+ MACOSX_DEPLOYMENT_TARGET = 10.15;
MTL_ENABLE_DEBUG_INFO = NO;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE = "";
@@ -434,7 +434,7 @@
GCC_WARN_UNUSED_VARIABLE = YES;
INFOPLIST_FILE = FinderSyncExt/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @executable_path/../../../../Frameworks";
- MACOSX_DEPLOYMENT_TARGET = 10.10;
+ MACOSX_DEPLOYMENT_TARGET = 10.15;
MTL_ENABLE_DEBUG_INFO = YES;
OC_APPLICATION_NAME = ownCloud;
OC_APPLICATION_REV_DOMAIN = com.owncloud.desktopclient;
@@ -483,7 +483,7 @@
GCC_WARN_UNUSED_VARIABLE = YES;
INFOPLIST_FILE = FinderSyncExt/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @executable_path/../../../../Frameworks";
- MACOSX_DEPLOYMENT_TARGET = 10.10;
+ MACOSX_DEPLOYMENT_TARGET = 10.15;
MTL_ENABLE_DEBUG_INFO = NO;
OC_APPLICATION_NAME = ownCloud;
OC_APPLICATION_REV_DOMAIN = com.owncloud.desktopclient;
diff --git a/shell_integration/MacOSX/OwnCloudFinderSync/OwnCloudFinderSync.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/shell_integration/MacOSX/OwnCloudFinderSync/OwnCloudFinderSync.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 00000000000..18d981003d6
--- /dev/null
+++ b/shell_integration/MacOSX/OwnCloudFinderSync/OwnCloudFinderSync.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEDidComputeMac32BitWarning
+
+
+
diff --git a/shell_integration/dolphin/CMakeLists.txt b/shell_integration/dolphin/CMakeLists.txt
deleted file mode 100644
index 6a06517c29e..00000000000
--- a/shell_integration/dolphin/CMakeLists.txt
+++ /dev/null
@@ -1,59 +0,0 @@
-project(dolphin-owncloud)
-
-cmake_minimum_required(VERSION 2.8.12)
-include(FeatureSummary)
-set(QT_MIN_VERSION "5.3.0")
-set(KF5_MIN_VERSION "5.16.0")
-
-find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core Network)
-
-find_package(ECM 1.2.0 REQUIRED CONFIG)
-set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
-
-find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS CoreAddons KIO)
-
-set_package_properties(DolphinVcs PROPERTIES
- DESCRIPTION "the Dolphin plugin library"
- URL "http://dolphin.kde.org/"
- TYPE REQUIRED
- PURPOSE "Provides plugin interfaces for Dolphin."
-)
-
-set(KDE_INSTALL_DIRS_NO_DEPRECATED TRUE)
-include(KDEInstallDirs)
-# kcoreaddons_add_plugin uses deprecated VAR PLUGIN_INSTALL_DIR
-# when that is fixed and you want to remove this workaround,
-# you need to _require_ the new enough kcoreaddons
-set(PLUGIN_INSTALL_DIR "${KDE_INSTALL_PLUGINDIR}")
-include(KDECMakeSettings)
-include(KDECompilerSettings)
-include(ECMMarkNonGuiExecutable)
-include(GenerateExportHeader)
-
-include_directories(${CMAKE_CURRENT_BINARY_DIR})
-add_definitions(-DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS)
-
-if (NOT DEFINED APPLICATION_EXECUTABLE )
- set ( APPLICATION_EXECUTABLE "owncloud" )
-endif()
-
-#---HELPER---
-set(OWNCLOUDDOLPHINHELPER ${APPLICATION_EXECUTABLE}dolphinpluginhelper)
-add_library(${OWNCLOUDDOLPHINHELPER} SHARED ownclouddolphinpluginhelper.cpp)
-target_link_libraries(${OWNCLOUDDOLPHINHELPER} Qt5::Network Qt5::Gui)
-generate_export_header(${OWNCLOUDDOLPHINHELPER} BASE_NAME ownclouddolphinpluginhelper)
-install(TARGETS ${OWNCLOUDDOLPHINHELPER} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
-
-#---OVERLAY PLUGIN---
-set(OWNCLOUDDOLPHINOVERLAYPLUGIN ${APPLICATION_EXECUTABLE}dolphinoverlayplugin)
-kcoreaddons_add_plugin(${OWNCLOUDDOLPHINOVERLAYPLUGIN} INSTALL_NAMESPACE "kf5/overlayicon"
- JSON ownclouddolphinoverlayplugin.json SOURCES ownclouddolphinoverlayplugin.cpp)
-target_link_libraries(${OWNCLOUDDOLPHINOVERLAYPLUGIN} KF5::CoreAddons KF5::KIOCore KF5::KIOWidgets ${OWNCLOUDDOLPHINHELPER})
-
-#---ACTION PLUGIN---
-set(OWNCLOUDDOLPHINACTIONPLUGIN ${APPLICATION_EXECUTABLE}dolphinactionplugin)
-add_library(${OWNCLOUDDOLPHINACTIONPLUGIN} MODULE ownclouddolphinactionplugin.cpp)
-target_link_libraries(${OWNCLOUDDOLPHINACTIONPLUGIN} KF5::CoreAddons KF5::KIOCore KF5::KIOWidgets ${OWNCLOUDDOLPHINHELPER})
-configure_file(ownclouddolphinactionplugin.desktop.in ${OWNCLOUDDOLPHINACTIONPLUGIN}.desktop ESCAPE_QUOTES @ONLY)
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${OWNCLOUDDOLPHINACTIONPLUGIN}.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR})
-install(TARGETS ${OWNCLOUDDOLPHINACTIONPLUGIN} DESTINATION ${KDE_INSTALL_PLUGINDIR})
diff --git a/shell_integration/dolphin/README b/shell_integration/dolphin/README
deleted file mode 100644
index f79615c0a6e..00000000000
--- a/shell_integration/dolphin/README
+++ /dev/null
@@ -1,11 +0,0 @@
-- Recompile and install recent enough version of dolphin and kio (git from oct 2015)
-
-- Build and install the plugin
-
-- Make sure to set XDG_DATA_DIRS=$PREFIX/share, QT_PLUGIN_PATH=$PREFIX/lib64/plugins/
-
-- After installing, run
- kdeinit5 --noincremental
-
-- restart dolphin (make sure to kill all instances)
-
diff --git a/shell_integration/dolphin/ownclouddolphinactionplugin.cpp b/shell_integration/dolphin/ownclouddolphinactionplugin.cpp
deleted file mode 100644
index 016968115fc..00000000000
--- a/shell_integration/dolphin/ownclouddolphinactionplugin.cpp
+++ /dev/null
@@ -1,146 +0,0 @@
-/******************************************************************************
- * Copyright (C) 2014 by Olivier Goffart
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include "ownclouddolphinpluginhelper.h"
-
-class OwncloudDolphinPluginAction : public KAbstractFileItemActionPlugin
-{
- Q_OBJECT
-public:
- explicit OwncloudDolphinPluginAction(QObject* parent, const QList&)
- : KAbstractFileItemActionPlugin(parent) { }
-
- QList actions(const KFileItemListProperties& fileItemInfos, QWidget* parentWidget) override
- {
- auto helper = OwncloudDolphinPluginHelper::instance();
- if (!helper->isConnected() || !fileItemInfos.isLocal())
- return {};
-
- // If any of the url is outside of a sync folder, return an empty menu.
- const QList urls = fileItemInfos.urlList();
- const auto paths = helper->paths();
- QByteArray files;
- for (const auto &url : urls) {
- QDir localPath(url.toLocalFile());
- auto localFile = localPath.canonicalPath();
- if (!std::any_of(paths.begin(), paths.end(), [&](const QString &s) {
- return localFile.startsWith(s);
- }))
- return {};
-
- if (!files.isEmpty())
- files += '\x1e'; // Record separator
- files += localFile.toUtf8();
- }
-
- if (helper->version() < "1.1") { // in this case, lexicographic order works
- return legacyActions(fileItemInfos, parentWidget);
- }
-
- auto menu = new QMenu(parentWidget);
- QEventLoop loop;
- auto con = connect(helper, &OwncloudDolphinPluginHelper::commandRecieved, this, [&](const QByteArray &cmd) {
- if (cmd.startsWith("GET_MENU_ITEMS:END")) {
- loop.quit();
- } else if (cmd.startsWith("MENU_ITEM:")) {
- auto args = QString::fromUtf8(cmd).split(QLatin1Char(':'));
- if (args.size() < 4)
- return;
- auto action = menu->addAction(args.mid(3).join(QLatin1Char(':')));
- if (args.value(2).contains(QLatin1Char('d')))
- action->setDisabled(true);
- auto call = args.value(1).toLatin1();
- connect(action, &QAction::triggered, [helper, call, files] {
- helper->sendCommand(QByteArray(call + ":" + files + "\n"));
- });
- } else if (cmd.startsWith("MENU_SEPARATOR:")) {
- menu->addSeparator();
- }
- });
- QTimer::singleShot(500, &loop, SLOT(quit())); // add a timeout to be sure we don't freeze dolphin
- helper->sendCommand(QByteArray("GET_MENU_ITEMS:" + files + "\n"));
-
- helper->sendGetClientIconCommand(16); // get client icon with size 16x16
-
- loop.exec(QEventLoop::ExcludeUserInputEvents);
- disconnect(con);
- if (menu->actions().isEmpty()) {
- delete menu;
- return {};
- }
-
- auto menuaction = new QAction(parentWidget);
- menuaction->setText(helper->contextMenuTitle());
- menuaction->setIcon(QIcon(helper->clientIcon()));
- menuaction->setMenu(menu);
-
- return { menuaction };
- }
-
-
- QList legacyActions(const KFileItemListProperties &fileItemInfos, QWidget *parentWidget)
- {
- QList urls = fileItemInfos.urlList();
- if (urls.count() != 1)
- return {};
- QDir localPath(urls.first().toLocalFile());
- auto localFile = localPath.canonicalPath();
- auto helper = OwncloudDolphinPluginHelper::instance();
- auto menuaction = new QAction(parentWidget);
- menuaction->setText(helper->contextMenuTitle());
- auto menu = new QMenu(parentWidget);
- menuaction->setMenu(menu);
-
- auto shareAction = menu->addAction(helper->shareActionTitle());
- connect(shareAction, &QAction::triggered, this, [localFile, helper] {
- helper->sendCommand(QByteArray("SHARE:" + localFile.toUtf8() + "\n"));
- });
-
- if (!helper->copyPrivateLinkTitle().isEmpty()) {
- auto copyPrivateLinkAction = menu->addAction(helper->copyPrivateLinkTitle());
- connect(copyPrivateLinkAction, &QAction::triggered, this, [localFile, helper] {
- helper->sendCommand(QByteArray("COPY_PRIVATE_LINK:" + localFile.toUtf8() + "\n"));
- });
- }
-
- if (!helper->emailPrivateLinkTitle().isEmpty()) {
- auto emailPrivateLinkAction = menu->addAction(helper->emailPrivateLinkTitle());
- connect(emailPrivateLinkAction, &QAction::triggered, this, [localFile, helper] {
- helper->sendCommand(QByteArray("EMAIL_PRIVATE_LINK:" + localFile.toUtf8() + "\n"));
- });
- }
- return { menuaction };
- }
-
-};
-
-K_PLUGIN_FACTORY(OwncloudDolphinPluginActionFactory, registerPlugin();)
-
-#include "ownclouddolphinactionplugin.moc"
diff --git a/shell_integration/dolphin/ownclouddolphinactionplugin.desktop.in b/shell_integration/dolphin/ownclouddolphinactionplugin.desktop.in
deleted file mode 100644
index 9d8a062ca8f..00000000000
--- a/shell_integration/dolphin/ownclouddolphinactionplugin.desktop.in
+++ /dev/null
@@ -1,6 +0,0 @@
-[Desktop Entry]
-Type=Service
-Name=@APPLICATION_NAME@Action
-ServiceTypes=KFileItemAction/Plugin
-MimeType=application/octet-stream;inode/directory;
-X-KDE-Library=@APPLICATION_EXECUTABLE@dolphinactionplugin
diff --git a/shell_integration/dolphin/ownclouddolphinoverlayplugin.cpp b/shell_integration/dolphin/ownclouddolphinoverlayplugin.cpp
deleted file mode 100644
index 56300f4dfb0..00000000000
--- a/shell_integration/dolphin/ownclouddolphinoverlayplugin.cpp
+++ /dev/null
@@ -1,103 +0,0 @@
-/******************************************************************************
- * Copyright (C) 2014 by Olivier Goffart
-#include
-#include
-#include
-#include
-#include
-#include "ownclouddolphinpluginhelper.h"
-
-class OwncloudDolphinPlugin : public KOverlayIconPlugin
-{
- Q_PLUGIN_METADATA(IID "com.owncloud.ovarlayiconplugin" FILE "ownclouddolphinoverlayplugin.json")
- Q_OBJECT
-
- typedef QHash StatusMap;
- StatusMap m_status;
-
-public:
-
- OwncloudDolphinPlugin() {
- auto helper = OwncloudDolphinPluginHelper::instance();
- QObject::connect(helper, &OwncloudDolphinPluginHelper::commandRecieved,
- this, &OwncloudDolphinPlugin::slotCommandRecieved);
- }
-
- QStringList getOverlays(const QUrl& url) override {
- auto helper = OwncloudDolphinPluginHelper::instance();
- if (!helper->isConnected())
- return QStringList();
- if (!url.isLocalFile())
- return QStringList();
- QDir localPath(url.toLocalFile());
- const QByteArray localFile = localPath.canonicalPath().toUtf8();
-
- helper->sendCommand(QByteArray("RETRIEVE_FILE_STATUS:" + localFile + "\n"));
-
- StatusMap::iterator it = m_status.find(localFile);
- if (it != m_status.constEnd()) {
- return overlaysForString(*it);
- }
- return QStringList();
- }
-
-private:
- QStringList overlaysForString(const QByteArray &status) {
- QStringList r;
- if (status.startsWith("NOP"))
- return r;
-
- if (status.startsWith("OK"))
- r << "vcs-normal";
- if (status.startsWith("SYNC") || status.startsWith("NEW"))
- r << "vcs-update-required";
- if (status.startsWith("IGNORE") || status.startsWith("WARN"))
- r << "vcs-locally-modified-unstaged";
- if (status.startsWith("ERROR"))
- r << "vcs-conflicting";
-
- if (status.contains("+SWM"))
- r << "document-share";
-
- return r;
- }
-
- void slotCommandRecieved(const QByteArray &line) {
-
- QList tokens = line.split(':');
- if (tokens.count() != 3)
- return;
- if (tokens[0] != "STATUS" && tokens[0] != "BROADCAST")
- return;
- if (tokens[2].isEmpty())
- return;
-
- const QByteArray name = tokens[2];
- QByteArray &status = m_status[name]; // reference to the item in the hash
- if (status == tokens[1])
- return;
- status = tokens[1];
-
- emit overlaysChanged(QUrl::fromLocalFile(QString::fromUtf8(name)), overlaysForString(status));
- }
-};
-
-#include "ownclouddolphinoverlayplugin.moc"
diff --git a/shell_integration/dolphin/ownclouddolphinoverlayplugin.json b/shell_integration/dolphin/ownclouddolphinoverlayplugin.json
deleted file mode 100644
index a0e25f82f5e..00000000000
--- a/shell_integration/dolphin/ownclouddolphinoverlayplugin.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "KPlugin": {
- "Description": "Overlay icon for owncloud",
- "ServiceTypes": [
- "KOverlayIconPlugin"
- ]
- }
-}
\ No newline at end of file
diff --git a/shell_integration/dolphin/ownclouddolphinpluginhelper.cpp b/shell_integration/dolphin/ownclouddolphinpluginhelper.cpp
deleted file mode 100644
index 27c2daf3fdb..00000000000
--- a/shell_integration/dolphin/ownclouddolphinpluginhelper.cpp
+++ /dev/null
@@ -1,167 +0,0 @@
-/******************************************************************************
- * Copyright (C) 2014 by Olivier Goffart
-#include
-#include
-#include
-#include
-#include "ownclouddolphinpluginhelper.h"
-#include "config.h"
-#include
-#include
-
-Q_LOGGING_CATEGORY(lcPluginHelper, "owncloud.dolphin", QtInfoMsg)
-
-OwncloudDolphinPluginHelper* OwncloudDolphinPluginHelper::instance()
-{
- static OwncloudDolphinPluginHelper self;
- return &self;
-}
-
-OwncloudDolphinPluginHelper::OwncloudDolphinPluginHelper()
-{
- connect(&_socket, &QLocalSocket::connected, this, &OwncloudDolphinPluginHelper::slotConnected);
- connect(&_socket, &QLocalSocket::readyRead, this, &OwncloudDolphinPluginHelper::slotReadyRead);
- _connectTimer.start(45 * 1000, Qt::VeryCoarseTimer, this);
- tryConnect();
-}
-
-void OwncloudDolphinPluginHelper::timerEvent(QTimerEvent *e)
-{
- if (e->timerId() == _connectTimer.timerId()) {
- tryConnect();
- return;
- }
- QObject::timerEvent(e);
-}
-
-bool OwncloudDolphinPluginHelper::isConnected() const
-{
- return _socket.state() == QLocalSocket::ConnectedState;
-}
-
-void OwncloudDolphinPluginHelper::sendCommand(const char* data)
-{
- _socket.write(data);
- _socket.flush();
-}
-
-void OwncloudDolphinPluginHelper::sendGetClientIconCommand(int size)
-{
- const QByteArray cmd = QByteArrayLiteral("V2/GET_CLIENT_ICON:");
- const QByteArray newLine = QByteArrayLiteral("\n");
- const QJsonObject args { { QStringLiteral("size"), size } };
- const QJsonObject obj { { QStringLiteral("id"), QString::number(_msgId++) }, { QStringLiteral("arguments"), args } };
- const auto json = QJsonDocument(obj).toJson(QJsonDocument::Compact);
- sendCommand(QByteArray(cmd + json + newLine));
-}
-
-void OwncloudDolphinPluginHelper::slotConnected()
-{
- sendCommand("VERSION:\n");
- sendCommand("GET_STRINGS:\n");
-}
-
-void OwncloudDolphinPluginHelper::tryConnect()
-{
- if (_socket.state() != QLocalSocket::UnconnectedState) {
- return;
- }
-
- QString socketPath = QStandardPaths::locate(QStandardPaths::RuntimeLocation,
- APPLICATION_SHORTNAME,
- QStandardPaths::LocateDirectory);
- if(socketPath.isEmpty())
- return;
-
- _socket.connectToServer(socketPath + QLatin1String("/socket"));
-}
-
-void OwncloudDolphinPluginHelper::slotReadyRead()
-{
- while (_socket.bytesAvailable()) {
- _line += _socket.readLine();
- if (!_line.endsWith("\n")) {
- continue;
- }
- QByteArray line;
- qSwap(line, _line);
- line.chop(1);
- if (line.isEmpty())
- continue;
- const int firstColon = line.indexOf(':');
- if (firstColon == -1) {
- continue;
- }
- // get the command (at begin of line, before first ':')
- const QByteArray command = line.left(firstColon);
- // rest of line contains the information
- const QByteArray info = line.mid(firstColon + 1);
-
- if (command == QByteArrayLiteral("REGISTER_PATH")) {
- const QString file = QString::fromUtf8(info);
- _paths.append(file);
- continue;
- } else if (command == QByteArrayLiteral("STRING")) {
- auto args = QString::fromUtf8(info).split(':');
- if (args.size() >= 2) {
- _strings[args[0]] = args.mid(1).join(':');
- }
- continue;
- } else if (command == QByteArrayLiteral("VERSION")) {
- auto args = info.split(':');
- if (args.size() >= 2) {
- auto version = args.value(1);
- _version = version;
- }
- if (!_version.startsWith("1.")) {
- // Incompatible version, disconnect forever
- _connectTimer.stop();
- _socket.disconnectFromServer();
- return;
- }
- } else if (command == QByteArrayLiteral("V2/GET_CLIENT_ICON_RESULT")) {
- QJsonParseError error;
- auto json = QJsonDocument::fromJson(info, &error).object();
- if (error.error != QJsonParseError::NoError) {
- qCWarning(lcPluginHelper) << "Error while parsing result: " << error.error;
- continue;
- }
-
- auto jsonArgs = json.value("arguments").toObject();
- if (jsonArgs.isEmpty()) {
- auto jsonErr = json.value("error").toObject();
- qCWarning(lcPluginHelper) << "Error getting client icon: " << jsonErr;
- continue;
- }
-
- const QByteArray pngBase64 = jsonArgs.value("png").toString().toUtf8();
- QByteArray png = QByteArray::fromBase64(pngBase64);
-
- QPixmap pixmap;
- bool isLoaded = pixmap.loadFromData(png, "PNG");
- if (isLoaded) {
- _clientIcon = pixmap;
- }
- }
-
- emit commandRecieved(line);
- }
-}
diff --git a/shell_integration/dolphin/ownclouddolphinpluginhelper.h b/shell_integration/dolphin/ownclouddolphinpluginhelper.h
deleted file mode 100644
index 71388c651c4..00000000000
--- a/shell_integration/dolphin/ownclouddolphinpluginhelper.h
+++ /dev/null
@@ -1,77 +0,0 @@
-/******************************************************************************
- * Copyright (C) 2014 by Olivier Goffart
-#include
-#include
-#include
-#include
-#include "ownclouddolphinpluginhelper_export.h"
-
-class OWNCLOUDDOLPHINPLUGINHELPER_EXPORT OwncloudDolphinPluginHelper : public QObject {
- Q_OBJECT
-public:
- static OwncloudDolphinPluginHelper *instance();
-
- bool isConnected() const;
- void sendCommand(const char *data);
- void sendGetClientIconCommand(int size);
-
- QVector paths() const { return _paths; }
-
- QString contextMenuTitle() const
- {
- return _strings.value("CONTEXT_MENU_TITLE", "ownCloud");
- }
- QString shareActionTitle() const
- {
- return _strings.value("SHARE_MENU_TITLE", "Share...");
- }
- QPixmap clientIcon() const
- {
- return _clientIcon;
- }
-
- QString copyPrivateLinkTitle() const { return _strings["COPY_PRIVATE_LINK_MENU_TITLE"]; }
- QString emailPrivateLinkTitle() const { return _strings["EMAIL_PRIVATE_LINK_MENU_TITLE"]; }
-
- QByteArray version() { return _version; }
-
-signals:
- void commandRecieved(const QByteArray &cmd);
-
-protected:
- void timerEvent(QTimerEvent*) override;
-
-private:
- OwncloudDolphinPluginHelper();
- void slotConnected();
- void slotReadyRead();
- void tryConnect();
- QLocalSocket _socket;
- QByteArray _line;
- QVector _paths;
- QBasicTimer _connectTimer;
-
- QMap _strings;
- QByteArray _version;
- QPixmap _clientIcon;
- int _msgId = 1;
-};
diff --git a/shell_integration/icons/1024x1024/oC_error.png b/shell_integration/icons/1024x1024/oC_error.png
deleted file mode 100644
index dcde8e10d67..00000000000
Binary files a/shell_integration/icons/1024x1024/oC_error.png and /dev/null differ
diff --git a/shell_integration/icons/1024x1024/oC_error_shared.png b/shell_integration/icons/1024x1024/oC_error_shared.png
deleted file mode 100644
index 3869cda773c..00000000000
Binary files a/shell_integration/icons/1024x1024/oC_error_shared.png and /dev/null differ
diff --git a/shell_integration/icons/1024x1024/oC_ok.png b/shell_integration/icons/1024x1024/oC_ok.png
deleted file mode 100644
index 8ff64fb9b0f..00000000000
Binary files a/shell_integration/icons/1024x1024/oC_ok.png and /dev/null differ
diff --git a/shell_integration/icons/1024x1024/oC_ok_shared.png b/shell_integration/icons/1024x1024/oC_ok_shared.png
deleted file mode 100644
index 386e529dfa7..00000000000
Binary files a/shell_integration/icons/1024x1024/oC_ok_shared.png and /dev/null differ
diff --git a/shell_integration/icons/1024x1024/oC_sync.png b/shell_integration/icons/1024x1024/oC_sync.png
deleted file mode 100644
index 561d18abe75..00000000000
Binary files a/shell_integration/icons/1024x1024/oC_sync.png and /dev/null differ
diff --git a/shell_integration/icons/1024x1024/oC_sync_shared.png b/shell_integration/icons/1024x1024/oC_sync_shared.png
deleted file mode 100644
index 607718fd4f6..00000000000
Binary files a/shell_integration/icons/1024x1024/oC_sync_shared.png and /dev/null differ
diff --git a/shell_integration/icons/1024x1024/oC_warn.png b/shell_integration/icons/1024x1024/oC_warn.png
deleted file mode 100644
index 8b04b118f14..00000000000
Binary files a/shell_integration/icons/1024x1024/oC_warn.png and /dev/null differ
diff --git a/shell_integration/icons/1024x1024/oC_warn_shared.png b/shell_integration/icons/1024x1024/oC_warn_shared.png
deleted file mode 100644
index 40c5a97b089..00000000000
Binary files a/shell_integration/icons/1024x1024/oC_warn_shared.png and /dev/null differ
diff --git a/shell_integration/icons/128x128/oC_error.png b/shell_integration/icons/128x128/oC_error.png
deleted file mode 100644
index 84ba8779d09..00000000000
Binary files a/shell_integration/icons/128x128/oC_error.png and /dev/null differ
diff --git a/shell_integration/icons/128x128/oC_error_shared.png b/shell_integration/icons/128x128/oC_error_shared.png
deleted file mode 100644
index 112b849a868..00000000000
Binary files a/shell_integration/icons/128x128/oC_error_shared.png and /dev/null differ
diff --git a/shell_integration/icons/128x128/oC_ok.png b/shell_integration/icons/128x128/oC_ok.png
deleted file mode 100644
index 809673b74da..00000000000
Binary files a/shell_integration/icons/128x128/oC_ok.png and /dev/null differ
diff --git a/shell_integration/icons/128x128/oC_ok_shared.png b/shell_integration/icons/128x128/oC_ok_shared.png
deleted file mode 100644
index c17ae78ee4a..00000000000
Binary files a/shell_integration/icons/128x128/oC_ok_shared.png and /dev/null differ
diff --git a/shell_integration/icons/128x128/oC_sync.png b/shell_integration/icons/128x128/oC_sync.png
deleted file mode 100644
index d3c5a1b7376..00000000000
Binary files a/shell_integration/icons/128x128/oC_sync.png and /dev/null differ
diff --git a/shell_integration/icons/128x128/oC_sync_shared.png b/shell_integration/icons/128x128/oC_sync_shared.png
deleted file mode 100644
index 72a49ffe16f..00000000000
Binary files a/shell_integration/icons/128x128/oC_sync_shared.png and /dev/null differ
diff --git a/shell_integration/icons/128x128/oC_warn.png b/shell_integration/icons/128x128/oC_warn.png
deleted file mode 100644
index cc2359db7f9..00000000000
Binary files a/shell_integration/icons/128x128/oC_warn.png and /dev/null differ
diff --git a/shell_integration/icons/128x128/oC_warn_shared.png b/shell_integration/icons/128x128/oC_warn_shared.png
deleted file mode 100644
index b4968b5fcb7..00000000000
Binary files a/shell_integration/icons/128x128/oC_warn_shared.png and /dev/null differ
diff --git a/shell_integration/icons/16x16/oC_error.png b/shell_integration/icons/16x16/oC_error.png
deleted file mode 100644
index 3c45db60fb1..00000000000
Binary files a/shell_integration/icons/16x16/oC_error.png and /dev/null differ
diff --git a/shell_integration/icons/16x16/oC_error_shared.png b/shell_integration/icons/16x16/oC_error_shared.png
deleted file mode 100644
index d1418881d5b..00000000000
Binary files a/shell_integration/icons/16x16/oC_error_shared.png and /dev/null differ
diff --git a/shell_integration/icons/16x16/oC_ok.png b/shell_integration/icons/16x16/oC_ok.png
deleted file mode 100644
index f8a687c8234..00000000000
Binary files a/shell_integration/icons/16x16/oC_ok.png and /dev/null differ
diff --git a/shell_integration/icons/16x16/oC_ok_shared.png b/shell_integration/icons/16x16/oC_ok_shared.png
deleted file mode 100644
index 98f4e9bb64b..00000000000
Binary files a/shell_integration/icons/16x16/oC_ok_shared.png and /dev/null differ
diff --git a/shell_integration/icons/16x16/oC_sync.png b/shell_integration/icons/16x16/oC_sync.png
deleted file mode 100644
index e9361ca70e7..00000000000
Binary files a/shell_integration/icons/16x16/oC_sync.png and /dev/null differ
diff --git a/shell_integration/icons/16x16/oC_sync_shared.png b/shell_integration/icons/16x16/oC_sync_shared.png
deleted file mode 100644
index 8464afc9828..00000000000
Binary files a/shell_integration/icons/16x16/oC_sync_shared.png and /dev/null differ
diff --git a/shell_integration/icons/16x16/oC_warn.png b/shell_integration/icons/16x16/oC_warn.png
deleted file mode 100644
index 990aa4bd229..00000000000
Binary files a/shell_integration/icons/16x16/oC_warn.png and /dev/null differ
diff --git a/shell_integration/icons/16x16/oC_warn_shared.png b/shell_integration/icons/16x16/oC_warn_shared.png
deleted file mode 100644
index 944690cc1d1..00000000000
Binary files a/shell_integration/icons/16x16/oC_warn_shared.png and /dev/null differ
diff --git a/shell_integration/icons/256x256/oC_error.png b/shell_integration/icons/256x256/oC_error.png
deleted file mode 100644
index 1db988c5904..00000000000
Binary files a/shell_integration/icons/256x256/oC_error.png and /dev/null differ
diff --git a/shell_integration/icons/256x256/oC_error_shared.png b/shell_integration/icons/256x256/oC_error_shared.png
deleted file mode 100644
index 884f8d995e5..00000000000
Binary files a/shell_integration/icons/256x256/oC_error_shared.png and /dev/null differ
diff --git a/shell_integration/icons/256x256/oC_ok.png b/shell_integration/icons/256x256/oC_ok.png
deleted file mode 100644
index e01f13e76f9..00000000000
Binary files a/shell_integration/icons/256x256/oC_ok.png and /dev/null differ
diff --git a/shell_integration/icons/256x256/oC_ok_shared.png b/shell_integration/icons/256x256/oC_ok_shared.png
deleted file mode 100644
index 112e132ad47..00000000000
Binary files a/shell_integration/icons/256x256/oC_ok_shared.png and /dev/null differ
diff --git a/shell_integration/icons/256x256/oC_sync.png b/shell_integration/icons/256x256/oC_sync.png
deleted file mode 100644
index 571e86247c5..00000000000
Binary files a/shell_integration/icons/256x256/oC_sync.png and /dev/null differ
diff --git a/shell_integration/icons/256x256/oC_sync_shared.png b/shell_integration/icons/256x256/oC_sync_shared.png
deleted file mode 100644
index 100eaa13920..00000000000
Binary files a/shell_integration/icons/256x256/oC_sync_shared.png and /dev/null differ
diff --git a/shell_integration/icons/256x256/oC_warn.png b/shell_integration/icons/256x256/oC_warn.png
deleted file mode 100644
index 1ea61c97379..00000000000
Binary files a/shell_integration/icons/256x256/oC_warn.png and /dev/null differ
diff --git a/shell_integration/icons/256x256/oC_warn_shared.png b/shell_integration/icons/256x256/oC_warn_shared.png
deleted file mode 100644
index 026ae9ce5d1..00000000000
Binary files a/shell_integration/icons/256x256/oC_warn_shared.png and /dev/null differ
diff --git a/shell_integration/icons/32x32/oC_error.png b/shell_integration/icons/32x32/oC_error.png
deleted file mode 100644
index 9541677c5fa..00000000000
Binary files a/shell_integration/icons/32x32/oC_error.png and /dev/null differ
diff --git a/shell_integration/icons/32x32/oC_error_shared.png b/shell_integration/icons/32x32/oC_error_shared.png
deleted file mode 100644
index 4c916621327..00000000000
Binary files a/shell_integration/icons/32x32/oC_error_shared.png and /dev/null differ
diff --git a/shell_integration/icons/32x32/oC_ok.png b/shell_integration/icons/32x32/oC_ok.png
deleted file mode 100644
index 5565e57c990..00000000000
Binary files a/shell_integration/icons/32x32/oC_ok.png and /dev/null differ
diff --git a/shell_integration/icons/32x32/oC_ok_shared.png b/shell_integration/icons/32x32/oC_ok_shared.png
deleted file mode 100644
index f2cc4b9e3ff..00000000000
Binary files a/shell_integration/icons/32x32/oC_ok_shared.png and /dev/null differ
diff --git a/shell_integration/icons/32x32/oC_sync.png b/shell_integration/icons/32x32/oC_sync.png
deleted file mode 100644
index 7066c546bbc..00000000000
Binary files a/shell_integration/icons/32x32/oC_sync.png and /dev/null differ
diff --git a/shell_integration/icons/32x32/oC_sync_shared.png b/shell_integration/icons/32x32/oC_sync_shared.png
deleted file mode 100644
index e3c5db599fb..00000000000
Binary files a/shell_integration/icons/32x32/oC_sync_shared.png and /dev/null differ
diff --git a/shell_integration/icons/32x32/oC_warn.png b/shell_integration/icons/32x32/oC_warn.png
deleted file mode 100644
index 8766b93c012..00000000000
Binary files a/shell_integration/icons/32x32/oC_warn.png and /dev/null differ
diff --git a/shell_integration/icons/32x32/oC_warn_shared.png b/shell_integration/icons/32x32/oC_warn_shared.png
deleted file mode 100644
index e25e383b6ae..00000000000
Binary files a/shell_integration/icons/32x32/oC_warn_shared.png and /dev/null differ
diff --git a/shell_integration/icons/48x48/oC_error.png b/shell_integration/icons/48x48/oC_error.png
deleted file mode 100644
index 17db62122b3..00000000000
Binary files a/shell_integration/icons/48x48/oC_error.png and /dev/null differ
diff --git a/shell_integration/icons/48x48/oC_error_shared.png b/shell_integration/icons/48x48/oC_error_shared.png
deleted file mode 100644
index 6f206429aac..00000000000
Binary files a/shell_integration/icons/48x48/oC_error_shared.png and /dev/null differ
diff --git a/shell_integration/icons/48x48/oC_ok.png b/shell_integration/icons/48x48/oC_ok.png
deleted file mode 100644
index cb87c7b2d1a..00000000000
Binary files a/shell_integration/icons/48x48/oC_ok.png and /dev/null differ
diff --git a/shell_integration/icons/48x48/oC_ok_shared.png b/shell_integration/icons/48x48/oC_ok_shared.png
deleted file mode 100644
index 27db6f8b592..00000000000
Binary files a/shell_integration/icons/48x48/oC_ok_shared.png and /dev/null differ
diff --git a/shell_integration/icons/48x48/oC_sync.png b/shell_integration/icons/48x48/oC_sync.png
deleted file mode 100644
index 60b5a5d4773..00000000000
Binary files a/shell_integration/icons/48x48/oC_sync.png and /dev/null differ
diff --git a/shell_integration/icons/48x48/oC_sync_shared.png b/shell_integration/icons/48x48/oC_sync_shared.png
deleted file mode 100644
index ab244bb0070..00000000000
Binary files a/shell_integration/icons/48x48/oC_sync_shared.png and /dev/null differ
diff --git a/shell_integration/icons/48x48/oC_warn.png b/shell_integration/icons/48x48/oC_warn.png
deleted file mode 100644
index 1f993f29dd3..00000000000
Binary files a/shell_integration/icons/48x48/oC_warn.png and /dev/null differ
diff --git a/shell_integration/icons/48x48/oC_warn_shared.png b/shell_integration/icons/48x48/oC_warn_shared.png
deleted file mode 100644
index 150b693aa68..00000000000
Binary files a/shell_integration/icons/48x48/oC_warn_shared.png and /dev/null differ
diff --git a/shell_integration/icons/512x512/oC_error.png b/shell_integration/icons/512x512/oC_error.png
deleted file mode 100644
index b8aade12a50..00000000000
Binary files a/shell_integration/icons/512x512/oC_error.png and /dev/null differ
diff --git a/shell_integration/icons/512x512/oC_error_shared.png b/shell_integration/icons/512x512/oC_error_shared.png
deleted file mode 100644
index 8dad568055a..00000000000
Binary files a/shell_integration/icons/512x512/oC_error_shared.png and /dev/null differ
diff --git a/shell_integration/icons/512x512/oC_ok.png b/shell_integration/icons/512x512/oC_ok.png
deleted file mode 100644
index 9b274525a48..00000000000
Binary files a/shell_integration/icons/512x512/oC_ok.png and /dev/null differ
diff --git a/shell_integration/icons/512x512/oC_ok_shared.png b/shell_integration/icons/512x512/oC_ok_shared.png
deleted file mode 100644
index e3008168de0..00000000000
Binary files a/shell_integration/icons/512x512/oC_ok_shared.png and /dev/null differ
diff --git a/shell_integration/icons/512x512/oC_sync.png b/shell_integration/icons/512x512/oC_sync.png
deleted file mode 100644
index 41db98155cd..00000000000
Binary files a/shell_integration/icons/512x512/oC_sync.png and /dev/null differ
diff --git a/shell_integration/icons/512x512/oC_sync_shared.png b/shell_integration/icons/512x512/oC_sync_shared.png
deleted file mode 100644
index 12e5eb7e170..00000000000
Binary files a/shell_integration/icons/512x512/oC_sync_shared.png and /dev/null differ
diff --git a/shell_integration/icons/512x512/oC_warn.png b/shell_integration/icons/512x512/oC_warn.png
deleted file mode 100644
index cd61c04d161..00000000000
Binary files a/shell_integration/icons/512x512/oC_warn.png and /dev/null differ
diff --git a/shell_integration/icons/512x512/oC_warn_shared.png b/shell_integration/icons/512x512/oC_warn_shared.png
deleted file mode 100644
index d5439c1300a..00000000000
Binary files a/shell_integration/icons/512x512/oC_warn_shared.png and /dev/null differ
diff --git a/shell_integration/icons/64x64/oC_error.png b/shell_integration/icons/64x64/oC_error.png
deleted file mode 100644
index e56df7c3d19..00000000000
Binary files a/shell_integration/icons/64x64/oC_error.png and /dev/null differ
diff --git a/shell_integration/icons/64x64/oC_error_shared.png b/shell_integration/icons/64x64/oC_error_shared.png
deleted file mode 100644
index b43af69ecb0..00000000000
Binary files a/shell_integration/icons/64x64/oC_error_shared.png and /dev/null differ
diff --git a/shell_integration/icons/64x64/oC_ok.png b/shell_integration/icons/64x64/oC_ok.png
deleted file mode 100644
index 0eb21dd6bf9..00000000000
Binary files a/shell_integration/icons/64x64/oC_ok.png and /dev/null differ
diff --git a/shell_integration/icons/64x64/oC_ok_shared.png b/shell_integration/icons/64x64/oC_ok_shared.png
deleted file mode 100644
index 80aafa2aefd..00000000000
Binary files a/shell_integration/icons/64x64/oC_ok_shared.png and /dev/null differ
diff --git a/shell_integration/icons/64x64/oC_sync.png b/shell_integration/icons/64x64/oC_sync.png
deleted file mode 100644
index faf65f003dc..00000000000
Binary files a/shell_integration/icons/64x64/oC_sync.png and /dev/null differ
diff --git a/shell_integration/icons/64x64/oC_sync_shared.png b/shell_integration/icons/64x64/oC_sync_shared.png
deleted file mode 100644
index a62d5a3e293..00000000000
Binary files a/shell_integration/icons/64x64/oC_sync_shared.png and /dev/null differ
diff --git a/shell_integration/icons/64x64/oC_warn.png b/shell_integration/icons/64x64/oC_warn.png
deleted file mode 100644
index 11aab672522..00000000000
Binary files a/shell_integration/icons/64x64/oC_warn.png and /dev/null differ
diff --git a/shell_integration/icons/64x64/oC_warn_shared.png b/shell_integration/icons/64x64/oC_warn_shared.png
deleted file mode 100644
index de3181a6c3a..00000000000
Binary files a/shell_integration/icons/64x64/oC_warn_shared.png and /dev/null differ
diff --git a/shell_integration/icons/72x72/oC_error.png b/shell_integration/icons/72x72/oC_error.png
deleted file mode 100644
index e5fd84c8535..00000000000
Binary files a/shell_integration/icons/72x72/oC_error.png and /dev/null differ
diff --git a/shell_integration/icons/72x72/oC_error_shared.png b/shell_integration/icons/72x72/oC_error_shared.png
deleted file mode 100644
index 381a638d28e..00000000000
Binary files a/shell_integration/icons/72x72/oC_error_shared.png and /dev/null differ
diff --git a/shell_integration/icons/72x72/oC_ok.png b/shell_integration/icons/72x72/oC_ok.png
deleted file mode 100644
index fe1e85ea372..00000000000
Binary files a/shell_integration/icons/72x72/oC_ok.png and /dev/null differ
diff --git a/shell_integration/icons/72x72/oC_ok_shared.png b/shell_integration/icons/72x72/oC_ok_shared.png
deleted file mode 100644
index d7342f393ef..00000000000
Binary files a/shell_integration/icons/72x72/oC_ok_shared.png and /dev/null differ
diff --git a/shell_integration/icons/72x72/oC_sync.png b/shell_integration/icons/72x72/oC_sync.png
deleted file mode 100644
index 6fd229e5648..00000000000
Binary files a/shell_integration/icons/72x72/oC_sync.png and /dev/null differ
diff --git a/shell_integration/icons/72x72/oC_sync_shared.png b/shell_integration/icons/72x72/oC_sync_shared.png
deleted file mode 100644
index 3794be7f4c2..00000000000
Binary files a/shell_integration/icons/72x72/oC_sync_shared.png and /dev/null differ
diff --git a/shell_integration/icons/72x72/oC_warn.png b/shell_integration/icons/72x72/oC_warn.png
deleted file mode 100644
index 93fe8ce3348..00000000000
Binary files a/shell_integration/icons/72x72/oC_warn.png and /dev/null differ
diff --git a/shell_integration/icons/72x72/oC_warn_shared.png b/shell_integration/icons/72x72/oC_warn_shared.png
deleted file mode 100644
index 882740a7ca3..00000000000
Binary files a/shell_integration/icons/72x72/oC_warn_shared.png and /dev/null differ
diff --git a/shell_integration/icons/CMakeLists.txt b/shell_integration/icons/CMakeLists.txt
deleted file mode 100644
index 86f66da5cf4..00000000000
--- a/shell_integration/icons/CMakeLists.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-if( UNIX AND NOT APPLE )
-
- SET(ICON_DIR ${DATA_INSTALL_DIR}/icons/hicolor)
-
- FOREACH(size 128x128 16x16 256x256 32x32 48x48 64x64 72x72)
- file(GLOB files "${size}/*.png")
- FOREACH( file ${files} )
- # the GLOB returns a absolute path. Make it relative by replacing the current src dir by nothing
- STRING(REPLACE "${CMAKE_CURRENT_SOURCE_DIR}/${size}/" "" shortFile ${file})
- STRING(REPLACE "oC" ${APPLICATION_SHORTNAME} brandedName ${shortFile})
- install(FILES ${file} DESTINATION ${ICON_DIR}/${size}/apps RENAME ${brandedName})
- ENDFOREACH(file)
- ENDFOREACH(size)
-
-endif()
diff --git a/shell_integration/icons/SVG/Error.svg b/shell_integration/icons/SVG/Error.svg
deleted file mode 100644
index c258d3a5f7c..00000000000
--- a/shell_integration/icons/SVG/Error.svg
+++ /dev/null
@@ -1,3824 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-]>
-
diff --git a/shell_integration/icons/SVG/Error_Shared.svg b/shell_integration/icons/SVG/Error_Shared.svg
deleted file mode 100644
index 3e272205003..00000000000
--- a/shell_integration/icons/SVG/Error_Shared.svg
+++ /dev/null
@@ -1,4769 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-]>
-
diff --git a/shell_integration/icons/SVG/OK.svg b/shell_integration/icons/SVG/OK.svg
deleted file mode 100644
index fa47be1a9ed..00000000000
--- a/shell_integration/icons/SVG/OK.svg
+++ /dev/null
@@ -1,3781 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-]>
-
diff --git a/shell_integration/icons/SVG/OK_Shared.svg b/shell_integration/icons/SVG/OK_Shared.svg
deleted file mode 100644
index 9584801b60f..00000000000
--- a/shell_integration/icons/SVG/OK_Shared.svg
+++ /dev/null
@@ -1,4711 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-]>
-
diff --git a/shell_integration/icons/SVG/Sync.svg b/shell_integration/icons/SVG/Sync.svg
deleted file mode 100644
index fb696c4462d..00000000000
--- a/shell_integration/icons/SVG/Sync.svg
+++ /dev/null
@@ -1,3837 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-]>
-
diff --git a/shell_integration/icons/SVG/Sync_Shared.svg b/shell_integration/icons/SVG/Sync_Shared.svg
deleted file mode 100644
index cce9305b801..00000000000
--- a/shell_integration/icons/SVG/Sync_Shared.svg
+++ /dev/null
@@ -1,4802 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-]>
-
diff --git a/shell_integration/icons/SVG/Warning.svg b/shell_integration/icons/SVG/Warning.svg
deleted file mode 100644
index 4f761579d47..00000000000
--- a/shell_integration/icons/SVG/Warning.svg
+++ /dev/null
@@ -1,3787 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-]>
-
diff --git a/shell_integration/icons/SVG/Warning_Shared.svg b/shell_integration/icons/SVG/Warning_Shared.svg
deleted file mode 100644
index 90e88b6a05c..00000000000
--- a/shell_integration/icons/SVG/Warning_Shared.svg
+++ /dev/null
@@ -1,4730 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-]>
-
diff --git a/shell_integration/nautilus/CMakeLists.txt b/shell_integration/nautilus/CMakeLists.txt
deleted file mode 100644
index 3d9a7f6d1c2..00000000000
--- a/shell_integration/nautilus/CMakeLists.txt
+++ /dev/null
@@ -1,35 +0,0 @@
-# copy the python nautilus plugin to build dir as it is going to
-# be changed.
-if( UNIX AND NOT APPLE )
-
- configure_file(syncstate.py syncstate.py COPYONLY)
-
- # Call the setupappname.sh script to set the custom app name.
- set (cmd "${CMAKE_CURRENT_SOURCE_DIR}/setappname.sh")
- execute_process(COMMAND ${cmd} ${APPLICATION_SHORTNAME}
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
- ERROR_VARIABLE errors OUTPUT_VARIABLE out)
-
- # Create a nemo plugin script from the nautilus one.
- # nemocmd copies the syncstate.py and performs string replacement.
- set (nemocmd "${CMAKE_CURRENT_SOURCE_DIR}/createnemoplugin.sh")
- execute_process(COMMAND ${nemocmd}
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
- ERROR_VARIABLE errors OUTPUT_VARIABLE out)
-
- # Create a caja plugin script from the nautilus one.
- # cajacmd copies the syncstate.py and performs string replacement.
- set (cajacmd "${CMAKE_CURRENT_SOURCE_DIR}/createcajaplugin.sh")
- execute_process(COMMAND ${cajacmd}
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
- ERROR_VARIABLE errors OUTPUT_VARIABLE out)
-
-
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/syncstate.py DESTINATION ${DATA_INSTALL_DIR}/nautilus-python/extensions RENAME syncstate-${APPLICATION_SHORTNAME}.py)
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/syncstate_nemo.py DESTINATION ${DATA_INSTALL_DIR}/nemo-python/extensions RENAME syncstate-${APPLICATION_SHORTNAME}.py)
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/syncstate_caja.py DESTINATION ${DATA_INSTALL_DIR}/caja-python/extensions RENAME syncstate-${APPLICATION_SHORTNAME}.py)
-
-
-
-endif()
-
diff --git a/shell_integration/nautilus/createcajaplugin.sh b/shell_integration/nautilus/createcajaplugin.sh
deleted file mode 100755
index 8912d4a3f39..00000000000
--- a/shell_integration/nautilus/createcajaplugin.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-# this script creates a plugin for caja, just by replacing
-# all occurences of Nautilus with Caja (case sensitive).
-
-cp syncstate.py syncstate_caja.py
-sed -i.org -e 's/Nautilus/Caja/g' syncstate_caja.py
-sed -i.org -e 's/nautilus/caja/g' syncstate_caja.py
diff --git a/shell_integration/nautilus/createnemoplugin.sh b/shell_integration/nautilus/createnemoplugin.sh
deleted file mode 100755
index 0e08affc49f..00000000000
--- a/shell_integration/nautilus/createnemoplugin.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-# this script creates a plugin for nemo, just be replacing
-# all occurences of Nautilus with Nemo.
-
-cp syncstate.py syncstate_nemo.py
-sed -i.org -e 's/autilus/emo/g' syncstate_nemo.py
diff --git a/shell_integration/nautilus/setappname.sh b/shell_integration/nautilus/setappname.sh
deleted file mode 100755
index ed01328bd3c..00000000000
--- a/shell_integration/nautilus/setappname.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-# this script replaces the line
-# appname = 'ownCloud'
-# with the correct branding name in the syncstate.py script
-# It also replaces the occurences in the class name so several
-# branding can be loaded (see #6524)
-sed -i.org -e "s/ownCloud/$1/g" syncstate.py
diff --git a/shell_integration/nautilus/syncstate.py b/shell_integration/nautilus/syncstate.py
deleted file mode 100644
index 2b7fa8334aa..00000000000
--- a/shell_integration/nautilus/syncstate.py
+++ /dev/null
@@ -1,496 +0,0 @@
-#
-# Copyright (C) by Klaas Freitag
-#
-# This program is the core of OwnCloud integration to Nautilus
-# It will be installed on /usr/share/nautilus-python/extensions/ with the paquet owncloud-client-nautilus
-# (https://github.com/owncloud/client/edit/master/shell_integration/nautilus/syncstate.py)
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-# for more details.
-
-import sys
-python3 = sys.version_info[0] >= 3
-
-import os
-import urllib
-if python3:
- import urllib.parse
-import socket
-import tempfile
-import time
-
-from gi.repository import GObject, Nautilus
-
-# Note: setappname.sh will search and replace 'ownCloud' on this file to update this line and other
-# occurrences of the name
-appname = 'ownCloud'
-
-print("Initializing "+appname+"-client-nautilus extension")
-print("Using python version {}".format(sys.version_info))
-
-def get_local_path(url):
- if url[0:7] == 'file://':
- url = url[7:]
- if python3:
- return urllib.parse.unquote(url)
- else:
- return urllib.unquote(url).decode('utf-8')
-
-def get_runtime_dir():
- """Returns the value of $XDG_RUNTIME_DIR, a directory path.
-
- If the value is not set, returns the same default as in Qt5
- """
- try:
- return os.environ['XDG_RUNTIME_DIR']
- except KeyError:
- fallback = os.path.join(tempfile.gettempdir(), 'runtime-' + os.environ['USER'])
- return fallback
-
-
-class SocketConnect(GObject.GObject):
- def __init__(self):
- GObject.GObject.__init__(self)
- self.connected = False
- self.registered_paths = {}
- self._watch_id = 0
- self._sock = None
- self._listeners = [self._update_registered_paths, self._get_version]
- self._remainder = ''.encode('utf-8')
- self.protocolVersion = '1.0'
- self.nautilusVFSFile_table = {} # not needed in this object actually but shared
- # all over the other objects.
-
- # returns true when one should try again!
- if self._connectToSocketServer():
- GObject.timeout_add(5000, self._connectToSocketServer)
-
- def reconnect(self):
- self._sock.close()
- self.connected = False
- GObject.source_remove(self._watch_id)
- GObject.timeout_add(5000, self._connectToSocketServer)
-
- def sendCommand(self, cmd):
- # print("Server command: " + cmd)
- if self.connected:
- try:
- self._sock.send(cmd.encode('utf-8'))
- except:
- print("Sending failed.")
- self.reconnect()
- else:
- print("Cannot send, not connected!")
-
- def addListener(self, listener):
- self._listeners.append(listener)
-
- def _connectToSocketServer(self):
- try:
- self._sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
- sock_file = os.path.join(get_runtime_dir(), appname, "socket")
- try:
- self._sock.connect(sock_file) # fails if sock_file doesn't exist
- self.connected = True
- self._watch_id = GObject.io_add_watch(self._sock, GObject.IO_IN, self._handle_notify)
-
- self.sendCommand('VERSION:\n')
- self.sendCommand('GET_STRINGS:\n')
-
- return False # Don't run again
- except Exception as e:
- print("Could not connect to unix socket " + sock_file + ". " + str(e))
- except Exception as e: # Bad habbit
- print("Connect could not be established, try again later.")
- self._sock.close()
-
- return True # Run again, if enabled via timeout_add()
-
- # Reads data that becomes available.
- # New responses can be accessed with get_available_responses().
- # Returns false if no data was received within timeout
- def read_socket_data_with_timeout(self, timeout):
- self._sock.settimeout(timeout)
- try:
- self._remainder += self._sock.recv(1024)
- except socket.timeout:
- return False
- else:
- return True
- finally:
- self._sock.settimeout(None)
-
- # Parses response lines out of collected data, returns list of strings
- def get_available_responses(self):
- end = self._remainder.rfind(b'\n')
- if end == -1:
- return []
- data = self._remainder[:end]
- self._remainder = self._remainder[end+1:]
- return data.decode('utf-8').split('\n')
-
- # Notify is the raw answer from the socket
- def _handle_notify(self, source, condition):
- # Blocking is ok since we're notified of available data
- self._remainder += self._sock.recv(1024)
-
- if len(self._remainder) == 0:
- return False
-
- for line in self.get_available_responses():
- self.handle_server_response(line)
-
- return True # Run again
-
- def handle_server_response(self, line):
- # print("Server response: " + line)
- parts = line.split(':')
- action = parts[0]
- args = parts[1:]
-
- for listener in self._listeners:
- listener(action, args)
-
- def _update_registered_paths(self, action, args):
- if action == 'REGISTER_PATH':
- self.registered_paths[args[0]] = 1
- elif action == 'UNREGISTER_PATH':
- del self.registered_paths[args[0]]
-
- # Check if there are no paths left. If so, its usual
- # that mirall went away. Try reconnecting.
- if not self.registered_paths:
- self.reconnect()
-
- def _get_version(self, action, args):
- if action == 'VERSION':
- self.protocolVersion = args[1]
-
-socketConnect = SocketConnect()
-
-
-class MenuExtension_ownCloud(GObject.GObject, Nautilus.MenuProvider):
- def __init__(self):
- GObject.GObject.__init__(self)
-
- self.strings = {}
- socketConnect.addListener(self.handle_commands)
-
- def handle_commands(self, action, args):
- if action == 'STRING':
- self.strings[args[0]] = ':'.join(args[1:])
-
- def check_registered_paths(self, filename):
- topLevelFolder = False
- internalFile = False
- for reg_path in socketConnect.registered_paths:
- if filename == reg_path:
- topLevelFolder = True
- break
- if filename.startswith(reg_path):
- internalFile = True
- # you can't have a registered path below another so it is save to break here
- break
- return (topLevelFolder, internalFile)
-
- def get_file_items(self, window, files):
- # Show the menu extension to share a file or folder
-
- # Get usable file paths from the uris
- all_internal_files = True
- for i, file_uri in enumerate(files):
- filename = get_local_path(file_uri.get_uri())
-
- # Check if its a folder (ends with an /), if yes add a "/"
- # otherwise it will not find the entry in the table
- isDir = os.path.isdir(filename + os.sep)
- if isDir:
- filename += os.sep
-
- # Check if toplevel folder, we need to ignore those as they cannot be shared
- topLevelFolder, internalFile = self.check_registered_paths(filename)
- if not internalFile:
- all_internal_files = False
-
- files[i] = filename
-
- # Don't show a context menu if some selected files aren't in a sync folder
- if not all_internal_files:
- return []
-
- if socketConnect.protocolVersion >= '1.1': # lexicographic!
- return self.ask_for_menu_items(files)
- else:
- return self.legacy_menu_items(files)
-
- def ask_for_menu_items(self, files):
- record_separator = '\x1e'
- filesstring = record_separator.join(files)
- socketConnect.sendCommand(u'GET_MENU_ITEMS:{}\n'.format(filesstring))
-
- done = False
- start = time.time()
- # timeout is specified in seconds
- timeout = 0.5
- menu_items = []
- while not done:
- dt = time.time() - start
-
- if dt >= timeout:
- break
-
- if not socketConnect.read_socket_data_with_timeout(timeout - dt):
- break
-
- for line in socketConnect.get_available_responses():
- # if we're done with the menu items, we don't have to try to parse lines any more
- if not done:
- # using a bool to keep track of this eliminates duplicate code when parsing succeeded
- line_handled = False
-
- if line == 'GET_MENU_ITEMS:END':
- done = True
- line_handled = True
-
- elif line.startswith('MENU_ITEM:'):
- args = line.split(':')
- if len(args) >= 4:
- action = args[1]
- label = ':'.join(args[3:])
- enabled = 'd' not in args[2]
-
- item = Nautilus.MenuItem(name=action, label=label, sensitive=enabled)
- item.connect("activate", self.context_menu_action, action, filesstring)
-
- menu_items.append(item)
-
- line_handled = True
-
- if line_handled:
- # we don't have to have call the handler any more below
- continue
-
- # original comment: Process lines we don't care about
- socketConnect.handle_server_response(line)
-
- if not done:
- return self.legacy_menu_items(files)
-
- # if there are no items for the submenu, we don't have to create it at all
- if not menu_items:
- return []
-
- # Set up the 'ownCloud...' submenu
- item_owncloud = Nautilus.MenuItem(
- name='IntegrationMenu', label=self.strings.get('CONTEXT_MENU_TITLE', appname))
-
- submenu = Nautilus.Menu()
- item_owncloud.set_submenu(submenu)
-
- for item in menu_items:
- submenu.append_item(item)
-
- return [item_owncloud]
-
-
- def legacy_menu_items(self, files):
- # No legacy menu for a selection of several files
- if len(files) != 1:
- return []
- filename = files[0]
-
- entry = socketConnect.nautilusVFSFile_table.get(filename)
- if not entry:
- return []
-
- # Currently 'sharable' also controls access to private link actions,
- # and we definitely don't want to show them for IGNORED.
- shareable = False
- state = entry['state']
- state_ok = state and state.startswith('OK')
- state_sync = state and state.startswith('SYNC')
- if state_ok:
- shareable = True
- elif state_sync and isDir:
- # some file below is OK or SYNC
- for key, value in socketConnect.nautilusVFSFile_table.items():
- if key != filename and key.startswith(filename):
- state = value['state']
- if state.startswith('OK') or state.startswith('SYNC'):
- shareable = True
- break
-
- if not shareable:
- return []
-
- # Set up the 'ownCloud...' submenu
- item_owncloud = Nautilus.MenuItem(
- name='IntegrationMenu', label=self.strings.get('CONTEXT_MENU_TITLE', appname))
- menu = Nautilus.Menu()
- item_owncloud.set_submenu(menu)
-
- # Add share menu option
- item = Nautilus.MenuItem(
- name='NautilusPython::ShareItem',
- label=self.strings.get('SHARE_MENU_TITLE', 'Share...'))
- item.connect("activate", self.context_menu_action, 'SHARE', filename)
- menu.append_item(item)
-
- # Add permalink menu options, but hide these options for older clients
- # that don't have these actions.
- if 'COPY_PRIVATE_LINK_MENU_TITLE' in self.strings:
- item_copyprivatelink = Nautilus.MenuItem(
- name='CopyPrivateLink', label=self.strings.get('COPY_PRIVATE_LINK_MENU_TITLE', 'Copy private link to clipboard'))
- item_copyprivatelink.connect("activate", self.context_menu_action, 'COPY_PRIVATE_LINK', filename)
- menu.append_item(item_copyprivatelink)
-
- if 'EMAIL_PRIVATE_LINK_MENU_TITLE' in self.strings:
- item_emailprivatelink = Nautilus.MenuItem(
- name='EmailPrivateLink', label=self.strings.get('EMAIL_PRIVATE_LINK_MENU_TITLE', 'Send private link by email...'))
- item_emailprivatelink.connect("activate", self.context_menu_action, 'EMAIL_PRIVATE_LINK', filename)
- menu.append_item(item_emailprivatelink)
-
- return [item_owncloud]
-
-
- def context_menu_action(self, menu, action, filename):
- # print("Context menu: " + action + ' ' + filename)
- socketConnect.sendCommand(action + ":" + filename + "\n")
-
-
-class SyncStateExtension_ownCloud(GObject.GObject, Nautilus.InfoProvider):
- def __init__(self):
- GObject.GObject.__init__(self)
-
- socketConnect.nautilusVFSFile_table = {}
- socketConnect.addListener(self.handle_commands)
-
- def find_item_for_file(self, path):
- if path in socketConnect.nautilusVFSFile_table:
- return socketConnect.nautilusVFSFile_table[path]
- else:
- return None
-
- def askForOverlay(self, file):
- # print("Asking for overlay for "+file) # For debug only
- if os.path.isdir(file):
- folderStatus = socketConnect.sendCommand("RETRIEVE_FOLDER_STATUS:"+file+"\n");
-
- if os.path.isfile(file):
- fileStatus = socketConnect.sendCommand("RETRIEVE_FILE_STATUS:"+file+"\n");
-
- def invalidate_items_underneath(self, path):
- update_items = []
- if not socketConnect.nautilusVFSFile_table:
- self.askForOverlay(path)
- else:
- for p in socketConnect.nautilusVFSFile_table:
- if p == path or p.startswith(path):
- item = socketConnect.nautilusVFSFile_table[p]['item']
- update_items.append(p)
-
- for path1 in update_items:
- socketConnect.nautilusVFSFile_table[path1]['item'].invalidate_extension_info()
-
- # Handles a single line of server response and sets the emblem
- def handle_commands(self, action, args):
- # file = args[0] # For debug only
- # print("Action for " + file + ": " + args[0]) # For debug only
- if action == 'STATUS':
- newState = args[0]
- filename = ':'.join(args[1:])
-
- itemStore = self.find_item_for_file(filename)
- if itemStore:
- if( not itemStore['state'] or newState != itemStore['state'] ):
- item = itemStore['item']
-
- # print("Setting emblem on " + filename + "<>" + emblem + "<>") # For debug only
-
- # If an emblem is already set for this item, we need to
- # clear the existing extension info before setting a new one.
- #
- # That will also trigger a new call to
- # update_file_info for this item! That's why we set
- # skipNextUpdate to True: we don't want to pull the
- # current data from the client after getting a push
- # notification.
- invalidate = itemStore['state'] != None
- if invalidate:
- item.invalidate_extension_info()
- self.set_emblem(item, newState)
-
- socketConnect.nautilusVFSFile_table[filename] = {
- 'item': item,
- 'state': newState,
- 'skipNextUpdate': invalidate }
-
- elif action == 'UPDATE_VIEW':
- # Search all items underneath this path and invalidate them
- if args[0] in socketConnect.registered_paths:
- self.invalidate_items_underneath(args[0])
-
- elif action == 'REGISTER_PATH':
- self.invalidate_items_underneath(args[0])
- elif action == 'UNREGISTER_PATH':
- self.invalidate_items_underneath(args[0])
-
- def set_emblem(self, item, state):
- Emblems = { 'OK' : appname +'_ok',
- 'SYNC' : appname +'_sync',
- 'NEW' : appname +'_sync',
- 'IGNORE' : appname +'_warn',
- 'ERROR' : appname +'_error',
- 'OK+SWM' : appname +'_ok_shared',
- 'SYNC+SWM' : appname +'_sync_shared',
- 'NEW+SWM' : appname +'_sync_shared',
- 'IGNORE+SWM': appname +'_warn_shared',
- 'ERROR+SWM' : appname +'_error_shared',
- 'NOP' : ''
- }
-
- emblem = 'NOP' # Show nothing if no emblem is defined.
- if state in Emblems:
- emblem = Emblems[state]
- item.add_emblem(emblem)
-
- def update_file_info(self, item):
- if item.get_uri_scheme() != 'file':
- return
-
- filename = get_local_path(item.get_uri())
- if item.is_directory():
- filename += os.sep
-
- inScope = False
- for reg_path in socketConnect.registered_paths:
- if filename.startswith(reg_path):
- inScope = True
- break
-
- if not inScope:
- return
-
- # Ask for the current state from the client -- unless this update was
- # triggered by receiving a STATUS message from the client in the first
- # place.
- itemStore = self.find_item_for_file(filename)
- if itemStore and itemStore['skipNextUpdate'] and itemStore['state']:
- itemStore['skipNextUpdate'] = False
- itemStore['item'] = item
- self.set_emblem(item, itemStore['state'])
- else:
- socketConnect.nautilusVFSFile_table[filename] = {
- 'item': item,
- 'state': None,
- 'skipNextUpdate': False }
-
- # item.add_string_attribute('share_state', "share state") # ?
- self.askForOverlay(filename)
diff --git a/shell_integration/windows/3rdparty/nlohmann-json/LICENSE.MIT b/shell_integration/windows/3rdparty/nlohmann-json/LICENSE.MIT
deleted file mode 100644
index f0622d6dc24..00000000000
--- a/shell_integration/windows/3rdparty/nlohmann-json/LICENSE.MIT
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2013-2021 Niels Lohmann
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/shell_integration/windows/3rdparty/nlohmann-json/json.hpp b/shell_integration/windows/3rdparty/nlohmann-json/json.hpp
deleted file mode 100644
index a70aaf8cbcc..00000000000
--- a/shell_integration/windows/3rdparty/nlohmann-json/json.hpp
+++ /dev/null
@@ -1,25447 +0,0 @@
-/*
- __ _____ _____ _____
- __| | __| | | | JSON for Modern C++
-| | |__ | | | | | | version 3.9.1
-|_____|_____|_____|_|___| https://github.com/nlohmann/json
-
-Licensed under the MIT License .
-SPDX-License-Identifier: MIT
-Copyright (c) 2013-2019 Niels Lohmann .
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
-*/
-
-#ifndef INCLUDE_NLOHMANN_JSON_HPP_
-#define INCLUDE_NLOHMANN_JSON_HPP_
-
-#define NLOHMANN_JSON_VERSION_MAJOR 3
-#define NLOHMANN_JSON_VERSION_MINOR 9
-#define NLOHMANN_JSON_VERSION_PATCH 1
-
-#include // all_of, find, for_each
-#include // nullptr_t, ptrdiff_t, size_t
-#include // hash, less
-#include // initializer_list
-#include // istream, ostream
-#include // random_access_iterator_tag
-#include // unique_ptr
-#include // accumulate
-#include // string, stoi, to_string
-#include // declval, forward, move, pair, swap
-#include // vector
-
-// #include
-
-
-#include
-
-// #include
-
-
-#include // transform
-#include // array
-#include // forward_list
-#include // inserter, front_inserter, end
-#include