Commit Graph

2788 Commits

Author SHA1 Message Date
Matthieu Gallien
fcd5a86349 signals/slots need to have fully qualified arguments
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-10-17 09:32:34 +02:00
Matthieu Gallien
242135d9d9 remove deprecated openssl 3.0 warnings
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-10-16 22:00:00 +02:00
Matthieu Gallien
15a45a21c1 when sync is completed and data fingerprint changed, update it
in case sync would complete after a data fingerprint change, we should
tolerate some errors

a file being blacklisted for whatever reason should not block the
propagation of data fingerprint

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-10-16 22:00:00 +02:00
Matthieu Gallien
27b807d164 ensure we do not restore unselected folders from selective sync
we should not try to restore files/folders no longer synced because of
selective sync when detecting a data fingerprint change

in case the user deselect a folder from selective sync list, we would do
a local delete

in case the client is also detecting a change of data fingerprint (or is
stuck in restore mode) then instead of applying the new set of selected
folders to sync, it would upload unselected files/folders

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-10-16 22:00:00 +02:00
Claudio Cambra
f6140f5b5f Also add destination header to initial chunk folder MKCOL
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-10-16 10:11:00 +02:00
Claudio Cambra
2b9b182204 Move destination header build to own method
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-10-16 10:11:00 +02:00
Claudio Cambra
a29af562de Provide full url for chunked upload destination header
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-10-16 10:11:00 +02:00
alex-z
623fe40c36 Unhide discovery logs for file deleted on the server and for discovered file.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-10-05 10:48:06 +02:00
alex-z
fde7933585 Optimize CaseConflictRecords search in local DB during the sync.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-09-25 10:37:10 +02:00
Claudio Cambra
a045dd71ae
Fix Chunk v2 upload headers
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-22 16:45:20 +08:00
Claudio Cambra
6cf04d660b Remove OAuth authentication method as it is now unused
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-19 14:58:17 +08:00
Dimitri Papadopoulos
8a73a9a6f5 Fix new typos found by codespell
Signed-off-by: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com>
2023-09-17 10:41:38 +02:00
Dimitri Papadopoulos
09521edbac Fix residual typos found by codespell
Signed-off-by: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com>
2023-09-16 20:36:56 +02:00
Matthieu Gallien
a17b3608d9
do not check every 5 seconds files with infinite timeout (= 0)
we want to schedule a new sync attempt if a file is likely to have been
unlocked due to timeout expiring on server

but if the timeout is null (equal to 0), there will be no timeout on
server and no automated unlocking, so do not schedule a sync every 5
seconds to check for it

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-09-14 18:33:24 +02:00
alex-z
cc99b0ae45 Remove unused function 'revertPlaceholder'.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-09-14 16:00:14 +02:00
alex-z
3831d8b462 Do not attempt to convert .lnk files to placeholder. Also do not modify folders' metadata.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-09-14 16:00:14 +02:00
Matthieu Gallien
a3303bc70b once we call done on a sync file item, return is needed
will avoid calling done method multiple times on a signle file item
causing a crash via ENFORCE function

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-09-14 11:58:00 +02:00
Claudio Cambra
97301e3a55 Use a standardised locale to create log file filenames, fixing issues with certain locales
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-09-13 17:16:56 +08:00
alex-z
c6978be904 Store the new etag into local database when opening with auto-locking/manual locking the file locally.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-09-07 17:43:43 +02:00
alex-z
f8a2826f7f Remove locketimeout condition.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-09-06 12:12:08 +02:00
alex-z
3815919aa5 Fix a crash when saving the locked Word document file due to unnecessary spam to the lock state change from folder watcher logic.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-09-05 15:52:04 +02:00
alex-z
0f7d29bce6 Ignore upload error items and schedule a new sync in case there are removed items that need to be downsynced.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2023-09-04 10:02:05 +02:00
Camila
9dbb072858
Migrate legacy user defined exclude file.
- Refactor ConfigFile::setupDefaultExcludeFilePaths.
- Refactor ConfigFile::excludeFile.
- Fix code style.

Signed-off-by: Camila <hello@camila.codes>
2023-09-01 15:09:29 +02:00
Claudio Cambra
a0c528a190 Replace comments about relevancy of chunk to propagat v1 with variable name change
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
f46d71fdf6 Ensure default min and max chunk sizes are multiplied as long longs
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
eadb458ae6 Use [[nodiscard]] for new syncoptions and propagateupload functions
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
2f5c164534 Enforce Chunk V2 API chunk size limits at the sync options level
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
7cb8640352 Clarify use of ProgressInfo _chunk
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
7d90641722 Ensure chunkUploadFolder components are QStrings
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
a8a2a86316 Assert that chunk num passed to chunkUrl is at least 1
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
a647ee1911 Sent destination header per chunking v2 api
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
fbb513a26d Start numbering chunks from 1 per chunking v2 api
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
cbbb4c87b8 Conform to chunk sizing restrictions introduced in Chunking V2
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
c29181e997 Fix http error code uint warning
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
614d48bf2a Split getting chunk upload folder from chunkUrl as this was previously misleading and unclear
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
12827d1746 Clean up declaration of propagateuploadng
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
d99d35e9ac Refactor startChunkUpload, move upload finalisation to separate method
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
795cd8cf16 Const autofy startChunkUpload in propagatuploadng
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-31 15:25:00 +02:00
Claudio Cambra
01cb5d7e22 Do not include theme header in account header
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-24 08:34:41 +08:00
Claudio Cambra
362118eafc Use QColorConstants for white instead of manually creating QColor
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-24 08:34:41 +08:00
Claudio Cambra
135b235568 Only update private colors if received capabilities colors are valid
Signed-off-by: Claudio Cambra <developer@claudiocambra.com>
2023-08-24 08:34:41 +08:00
Claudio Cambra
9253016d00 Store server color in private member of account when capabilities fetched
Signed-off-by: Claudio Cambra <developer@claudiocambra.com>
2023-08-24 08:34:41 +08:00
Matthieu Gallien
c015fa00fd only flush debug log files when closing them
do not force a flush every time a log line is added to a file to speed
up the logging process

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-08-23 10:50:16 +02:00
Matthieu Gallien
a7c163968a update read-only status of virtual files when needed for lock state
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-08-21 12:57:16 +02:00
Matthieu Gallien
f90cb239f3
on windows file names can always be encoded: fix wrong test
inspired by https://github.com/owncloud/client/pull/6820

Close #5935

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-08-16 10:44:37 +02:00
Claudio Cambra
812e696d53 Set modificationHappened to also depend on file size change
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-07 16:25:19 +08:00
Claudio Cambra
4681d27de5 Ensure file modification time is set if item modtime differs from journal modtime
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-07 16:25:19 +08:00
Claudio Cambra
961033efc1 Only attempt conversion to placeholder on new file if VFS enabled in SyncEngine::slotItemDiscovered
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-07 16:25:19 +08:00
Claudio Cambra
fe829e2693 Only change modification time if any modifications were actually made on downsynced file
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-07 16:25:19 +08:00
Claudio Cambra
32145342c8 Unify else and if in SyncEngine::slotItemDiscovered for filesystem setmodtime check
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2023-08-07 16:25:19 +08:00