Rello
0ccba7edfb
fix(ignore-list): skip star pattern
...
Signed-off-by: Rello <Rello@users.noreply.github.com>
2025-07-18 08:48:34 +02:00
Claudio Cambra
f5fb6994b4
feat(libsync): Add method to get list of unique exclude patterns from ExcludedFiles
...
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2025-05-15 12:10:44 +02:00
Andy Scherzinger
7655efa230
docs(reuse): Migrate to SPDX header
...
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2025-05-06 09:49:30 +02:00
Claudio Cambra
87b6b3cfbd
Use matchView instead of match
...
match is deprecated
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-12-20 16:26:57 +01:00
alex-z
f70d1c1079
Support Windows .lnk files with VFS Cf API.
...
Signed-off-by: alex-z <blackslayer4@gmail.com>
2024-07-10 10:29:21 +02:00
Matthieu Gallien
ba00c50022
avoid accessing a temp QString via QStringView after it is deleted
...
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-05-15 14:34:46 +02:00
Matthieu Gallien
3099628770
header changes needed for clang/vs2022 compilers
...
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-04-26 09:05:12 +02:00
Matthieu Gallien
fa766c02ac
properly use QStringView to avoid copies
...
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-04-26 09:05:12 +02:00
Matthieu Gallien
1f0279e1c1
remove usage of QStringRef due to it being missing in Qt6
...
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-04-26 09:05:12 +02:00
tomdereub
39e59a1c79
windows reserved word silently excluded - csync exclude.cpp
...
Proposal to solve https://github.com/nextcloud/desktop/issues/3826 , by excluding silently windows reserved word like $RECYCLE.BIN.
Signed-off-by: tomdereub <pbtom@lamonerie.net>
2023-07-18 10:57:17 +02:00
Matthieu Gallien
8bd69ad941
fully hide some logs from release builds
...
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-06-12 17:54:03 +02:00
Matthieu Gallien
602b8db5e2
handle case clash conflicts in a similar way to content conflicts
...
introduce a new type of conflict for case clash filename conflicts
add proper handling including a new utility class to solve them and a
new dialog for the user to pick a fix
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-01-25 16:37:35 +01:00
Matthieu Gallien
a8025dc06a
use .nextcloudsync.log to perform file monitoring test at start
...
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-12-15 11:11:20 +01:00
Matthieu Gallien
5f6277b3ee
if an exclude file is deleted, skip it and remove it from internal list
...
ignore files can be removed: not an error so adjust tests
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-05-16 21:00:52 +02:00
alex-z
53654b2a50
Allow manual renaming of files and folders with spaces. Allow uploading invalid file name via the InvalidFileName dialog.
...
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-05-16 18:07:26 +03:00
Camila
5788f35e82
Skip sync exclude file from list of exclude files if it doesn't exist.
...
The file might not exist anymore because the user deleted it by hand or
the folder where it was located got unchecked in the selective sync
view. It is a fix for #2632 .
Signed-off-by: Camila <hello@camila.codes>
2021-10-28 11:37:56 +02:00
Felix Weilbach
a663d235ef
Add .sync-exclude.lst to exclude files
...
Previously the .sync-exclude.lst file of the sync root directory was
not added to the exclude files, because the current logic did only
recognize .sync-exclude.lst files when their containing directory was
discovered during the discovery phase. Therefore the sync root
.sync-exclude.lst file was never discovered. See also
ExcludedFiles::traversalPatternMatch().
Fix : #3830 , #2728
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-10-14 14:02:29 +00:00
Felix Weilbach
fb1b3481d1
Fix warnings
...
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-09-17 13:32:26 +00:00
Klaas Freitag
73549a0529
Ignore the desktop.ini file in every directory, not only in top dir. ( #8299 )
...
* Ignore the desktop.ini file in every directory, not only in top dir.
See https://github.com/owncloud/client/issues/8298 for reasons.
* Fix test for ignoring desktop.ini everywhere.
Co-authored-by: Hannah von Reth <hannah.vonreth@owncloud.com>
2021-08-23 09:40:26 +02:00
Hannah von Reth
98655ef28b
Fix warning by using qsizetype instead of size_t
...
Signed-off-by: Matthieu Gallien <matthieu_gallien@yahoo.fr>
2021-05-06 07:35:59 +00:00
Nicolas Fella
ab064c92b6
Fix build against Qt 5.15.3
...
Use QLatin1Char to prevent build error due to stricter QT_NO_CAST_FROM_ASCII
Signed-off-by: Nicolas Fella <nicolas.fella@gmx.de>
2021-01-25 08:19:49 +00:00
Kevin Ottens
0756497c3e
Get the excluded files test to pass again on Windows
...
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 11:01:53 +01:00
Kevin Ottens
2cf76bbcbf
Repair the Windows Build
...
We now enforce the use of QStringLiteral and friends in some places,
but that feel through the cracks for some of the Windows specific code.
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:59:21 +01:00
Hannah von Reth
f220151527
Remove the use of goto from src/csync/csync_exclude.cpp
2020-12-15 10:59:19 +01:00
Hannah von Reth
563b347567
csync: apply strict QString handling
2020-12-15 10:59:16 +01:00
Hannah von Reth
47dc7e6c49
Remove custome string functions
2020-12-15 10:59:15 +01:00
Christian Kamm
575935ded0
Windows: Forbid chars 0-31 in filenames #6987
2020-12-15 10:58:42 +01:00
Olivier Goffart
6da96cd026
Port the exclude test to the QTest Framework
...
This is just a port to QtTest, I did not change the layout of the test.
I did search and replace to replace the assert with QCOMPARE/QVERIFY
I still call setup and setup_init like before (only explicitly, now)
Also ported the preformence tests to QBENCHMAK because windows don't have
gettimeofday.
Relates #6358
2020-12-15 10:58:29 +01:00
Kevin Ottens
cce3d6f6fc
Excludes: switch all the path handling to QString
...
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-12-15 10:58:20 +01:00
Olivier Goffart
f0c24cb6f9
Remove csync_misc: The code no longer use fnmatch
2020-12-15 10:58:20 +01:00
Olivier Goffart
3c3619f99a
Exclude: do everything with QString wiuthout converting to char*
2020-12-15 10:58:19 +01:00
Christian Kamm
4f6f706f40
Excludes: drop csyncTraversalMatchFun()
...
The new discovery can call the traversal match function directly.
2020-12-15 10:58:13 +01:00
Olivier Goffart
ca32eb1cf7
More cleanup of csync remains
2020-12-15 10:58:01 +01:00
Christian Kamm
4e3f2f755a
Placeholder: Stop adding ignore pattern
...
Because we can't make older clients preserve the version directive that
was attached to it.
See #6504 and #6498
2020-12-15 10:57:52 +01:00
Christian Kamm
12d6f680f2
Placeholders: Ignore placeholder files in older clients
...
To do this, we add the placeholder extension to the user exclude file
automatically. However, newer clients shouldn't use that exclude
pattern: so we also add version directives that allow making exclude
patterns dependent on the client version.
2020-12-15 10:57:49 +01:00
Camila
bdd3465e7b
Check if there are patterns associated with a sync exclude file.
...
The previous check didn't take into the account that .sync-exclude.lst
might be empty which would crash at Q_ASSERT(_allExcludes.contains(basePath))
in the prepare function. It also takes into account that
_allExcludes[basePath] was creating new items in the list.
Signed-off-by: Camila <hello@camila.codes>
2020-11-26 12:12:04 +01:00
Camila
998e93ac13
Add last / to exclude list file path.
...
This Q_ASSERT(this->endsWith('/')) in BasePathByteArray was the reason
for bug report #1458 .
Signed-off-by: Camila <hello@camila.codes>
2020-11-26 12:11:57 +01:00
Kevin Ottens
a73a1f3927
Use = default for trivial ctors and dtors
...
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-05-25 21:33:24 +02:00
Kevin Ottens
dea6ebaa35
Use nullptr when appropriate
...
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-05-20 02:21:26 +02:00
Nicolas Fella
1afda2b875
Fix container detaching
...
Found by clazy
Signed-off-by: Nicolas Fella <nicolas.fella@gmx.de>
2020-03-21 01:24:37 +01:00
Camila Ayres
6c56811636
Merge branch 'master' into testSyncFileStatusTracker-winPath
2019-10-17 13:37:01 +02:00
Dominique Fuchs
7750d2198d
Don't need a second if for non-Windows, using Qt macro for platform check
...
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
2019-10-08 08:44:08 +02:00
Dominique Fuchs
f993e7c555
Fixed typo preventing successful path rename on Win and modified ASSERT for Window path styles
...
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
2019-10-08 08:31:31 +02:00
asapelkin
17f39bd09d
little loops optimization
...
Signed-off-by: asapelkin <asapelkin0x01@ya.ru>
2019-10-07 01:29:55 +03:00
Camila San
481d8d3a0b
Checks if exclude file is empty before creating the regular expressions.
...
The default file created by the application it is not empty.
Signed-off-by: Camila San <hello@camila.codes>
2019-09-30 20:38:56 +02:00
Dominique Fuchs
82fa10c227
Corrected namespace when calling convertSizetoUint
...
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
2019-09-08 10:21:59 +02:00
Dominique Fuchs
46e0a05078
Renamed conversion function to make intention more clear. Also defaulted to 'controlled truncation' to not stupidly crash. TBD/TODO: Better handling for such things.
...
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
2019-09-08 02:20:24 +02:00
Samir Benmendil
5e3c2d2a96
Fix fullPath matching
...
Signed-off-by: Samir Benmendil <me@rmz.io>
2019-08-15 03:00:26 +01:00
Samir Benmendil
7a9b13a563
Manual exclude are anchored to _localPath by default
...
This makes a lot of sense, since there should be no file to be synced
outside of _localPath.
Signed-off-by: Samir Benmendil <me@rmz.io>
2019-08-15 03:00:26 +01:00
Samir Benmendil
e27645cb00
Extract loadExcludeFile and use it when discovering new exclude files
...
Signed-off-by: Samir Benmendil <me@rmz.io>
2019-08-15 03:00:26 +01:00