nextcloud-desktop.git
8 years agocsync_vio_local: merge readdir and stat in the same call
Olivier Goffart [Fri, 22 Sep 2017 07:51:22 +0000 (09:51 +0200)]
csync_vio_local: merge readdir and stat in the same call

For the remote this was already done long time ago
For windows, this was already partially done

The goal is to avoid needless conversion of the path to local encoding.

8 years agocsync_update/reconcile: replace CSYNC_LOG with qDebug/qInfo
Olivier Goffart [Thu, 21 Sep 2017 13:45:56 +0000 (15:45 +0200)]
csync_update/reconcile: replace CSYNC_LOG with qDebug/qInfo

CSYNC_LOG has quite an overhead as it uses vsprintf and it might
be run even if the category is disabled

8 years agoSyncEngine: Adjust free space messaging
Christian Kamm [Fri, 22 Sep 2017 09:06:29 +0000 (11:06 +0200)]
SyncEngine: Adjust free space messaging

Before, the way the info message was phrased implied a failure. And
since the large numbers can be hard to compare that can be confusing.

8 years agocsync: remove unused type
Olivier Goffart [Fri, 22 Sep 2017 07:32:29 +0000 (09:32 +0200)]
csync: remove unused type

8 years agoRemotePermissions: Store in a class rather than in a QByteArray to save memory
Olivier Goffart [Tue, 19 Sep 2017 08:53:51 +0000 (10:53 +0200)]
RemotePermissions: Store in a class rather than in a QByteArray to save memory

Create a specific type that parses the permissions so we can store
it in a short rather than in a QByteArray

Note: in RemotePermissions::toString, we make sure the string is not
empty by adding a space, this was already existing before commit
e8f7adc7cacd4f55e26b2dd14464654e82204307 where it was removed by mistake.

8 years ago[tx-robot] updated from transifex
Jenkins for ownCloud [Fri, 22 Sep 2017 00:18:30 +0000 (02:18 +0200)]
[tx-robot] updated from transifex

8 years agoPort to new signal-slot syntax what cannot be done automatically
Olivier Goffart [Wed, 20 Sep 2017 09:48:13 +0000 (11:48 +0200)]
Port to new signal-slot syntax what cannot be done automatically

Some slot were protected or private but needed to be public.
Some needed a static_cast (can't use qOverload because it is in Qt 5.7)

This is not only a partial change.

8 years agoDiscoveryPhase: use the new syntax in disconnect
Olivier Goffart [Wed, 20 Sep 2017 16:45:00 +0000 (18:45 +0200)]
DiscoveryPhase: use the new syntax in disconnect

Since we used the new syntax in connect, we need to use it in disconnect

8 years agoUse the Qt5 connection syntax (automated with clazy)
Olivier Goffart [Wed, 20 Sep 2017 08:14:48 +0000 (10:14 +0200)]
Use the Qt5 connection syntax (automated with clazy)

This is motivated by the fact that QMetaObject::noralizeSignature takes 7.35%
CPU of the LargeSyncBench. (Mostly from ABstractNetworkJob::setupConnections and
PropagateUploadFileV1::startNextChunk). It could be fixed by using normalized
signature in the connection statement, but i tought it was a good oportunity
to modernize the code.

This commit only contains calls that were automatically converted with clazy.

8 years agotest/stub: add some call required by the next patches
Olivier Goffart [Wed, 20 Sep 2017 14:50:34 +0000 (16:50 +0200)]
test/stub: add some call required by the next patches

As we use the new connection syntax in folderman.cpp, some more symbol
need to be mocked

8 years agoInclude <QAuthenticator> from code that connect to signal that uses it
Olivier Goffart [Wed, 20 Sep 2017 15:14:33 +0000 (17:14 +0200)]
Include <QAuthenticator> from code that connect to signal that uses it

The new connection syntax will need that

8 years agoGui: Use lambda instead of QSignalMapper
Olivier Goffart [Wed, 20 Sep 2017 14:49:41 +0000 (16:49 +0200)]
Gui: Use lambda instead of QSignalMapper

It's simpler, and QSignalMapper is deprecated in Qt 5.10

8 years agoRemove settingsdialog.cpp.Rbt431
Olivier Goffart [Wed, 20 Sep 2017 15:18:37 +0000 (17:18 +0200)]
Remove settingsdialog.cpp.Rbt431

8 years ago[tx-robot] updated from transifex
Jenkins for ownCloud [Thu, 21 Sep 2017 00:18:30 +0000 (02:18 +0200)]
[tx-robot] updated from transifex

8 years agoChangeLog: More 2.4.0 changes
Markus Goetz [Wed, 20 Sep 2017 12:44:33 +0000 (14:44 +0200)]
ChangeLog: More 2.4.0 changes

8 years ago[tx-robot] updated from transifex
Jenkins for ownCloud [Wed, 20 Sep 2017 00:18:35 +0000 (02:18 +0200)]
[tx-robot] updated from transifex

8 years agoFix compile with bad strrchr signature
Christian Kamm [Tue, 19 Sep 2017 10:44:59 +0000 (12:44 +0200)]
Fix compile with bad strrchr signature

8 years agoConflicts: Upload them files if env variable says so
Christian Kamm [Mon, 18 Sep 2017 08:23:20 +0000 (10:23 +0200)]
Conflicts: Upload them files if env variable says so

Set OWNCLOUD_UPLOAD_CONFLICT_FILES=1 to trigger this behavior.

Note that this is experimental and unsupported. The real feature is
likely to end up in 2.5.

Uploading conflict files is simply done by removing the pattern from
csync_exclude. The rest here deals with making the conflict notification
ui approximately work.

There are still some concerns about where an uploaded conflict file
appears in the sync protocol and issues list (it should be in both, but
is only in one of them currently!).

See #4557.

8 years agoPrivate links: Retrieve link through propfind property #6020
Christian Kamm [Fri, 15 Sep 2017 12:24:34 +0000 (14:24 +0200)]
Private links: Retrieve link through propfind property #6020

* The sharing ui does a propfind anyway: use that to query the new
property as well!
* For the socket api, asynchronously query the server for the right url
when an action that needs it is triggered.

The old, manually generated URL will be used as fallback in case the
server doesn't support the new property or the property can't be
retrieved for some reason.

Depends on owncloud/core#29021

8 years ago[tx-robot] updated from transifex
Jenkins for ownCloud [Tue, 19 Sep 2017 00:18:38 +0000 (02:18 +0200)]
[tx-robot] updated from transifex

8 years agoFix the build (make install)
Jocelyn Turcotte [Mon, 18 Sep 2017 13:30:35 +0000 (15:30 +0200)]
Fix the build (make install)

8 years agoGui: Allow to add multiple sync folder connection of the same folder
Olivier Goffart [Thu, 14 Sep 2017 13:09:21 +0000 (15:09 +0200)]
Gui: Allow to add multiple sync folder connection of the same folder

... or child folders

There is also no real reason to forbid the user from syncing the same
folder to multiple location on its hardrive.
A real use case is when the user uncheck a big directory using "choose
what to sync", but would still like to sync a folder within this disabled
tree. The user can now do this with the "add folder" feature

Since 2.3, we even support syncing the same local folder to multiple
remote folder, so why not allow syncing the same remote folder several
times?

Relates to issue #3645

8 years agoSyncJournalDB: Only reset_and_clear_bindings once
Jocelyn Turcotte [Wed, 6 Sep 2017 09:36:45 +0000 (11:36 +0200)]
SyncJournalDB: Only reset_and_clear_bindings once

We only need to do it once between each query execution and
that can be right before the first bind.

8 years agocsync_update: Remove the check for csync_get_statedb_exists
Jocelyn Turcotte [Thu, 14 Sep 2017 11:30:57 +0000 (13:30 +0200)]
csync_update: Remove the check for csync_get_statedb_exists

This always returns true since _csync_statedb_is_empty also always
returns true. This function was initially intended to be a shortcut
in case the database doesn't contain any row, but has been broken since
27fb5d9128c3d326191d5f9f01dac4f715000682 and now won't return false
unless the statement fails.

The _last_db_return_error in _csync_detect_update would take care
of that code path in a more direct and clearer way anyway.

8 years agoMove SyncJournalDB to src/common
Jocelyn Turcotte [Fri, 1 Sep 2017 16:11:43 +0000 (18:11 +0200)]
Move SyncJournalDB to src/common

8 years agoReverse the dependency between SyncJournalFileRecord and SyncFileItem
Jocelyn Turcotte [Wed, 30 Aug 2017 09:17:23 +0000 (11:17 +0200)]
Reverse the dependency between SyncJournalFileRecord and SyncFileItem

This will allow us to also use the SyncJournalDB in csync.

8 years agoMove non-csync-dependent parts of FileSystem to src/common
Jocelyn Turcotte [Wed, 30 Aug 2017 17:34:41 +0000 (19:34 +0200)]
Move non-csync-dependent parts of FileSystem to src/common

This keep the csync-dependent parts in src/libsync, slitting the namespace
over two files.
This will allow moving SyncJournalDB to src/common as well.

8 years agoUpdate sync-algorithm.md
Jocelyn Turcotte [Fri, 15 Sep 2017 10:35:40 +0000 (12:35 +0200)]
Update sync-algorithm.md

The rbtree was replaced by a std::map.

8 years agoChecksums: Clearer behavior and added testing
Christian Kamm [Fri, 15 Sep 2017 11:30:29 +0000 (13:30 +0200)]
Checksums: Clearer behavior and added testing

8 years agoRemove SyncFileItem::_isDirectory
Jocelyn Turcotte [Thu, 24 Aug 2017 15:31:46 +0000 (17:31 +0200)]
Remove SyncFileItem::_isDirectory

It's always equivalent to _type == SyncFileItem::Directory.

8 years agoRemove SyncFileItem::log
Jocelyn Turcotte [Thu, 24 Aug 2017 15:07:22 +0000 (17:07 +0200)]
Remove SyncFileItem::log

This remove the remaining "other" fields of the sync log to save a
bit of memory.

other_etag and other_fileId don't give much information to the users
and other_instruction will always be INST_NONE anyway.

other_modtime and other_size are kept since they are sometimes used.
They were renamed to have a bit more meaningful name.

SyncEngine::checkPermissions will now fetch its information from the
csync trees since they are now preserved until right after this point.

Fixes #3213

8 years agoRemove SyncEngine::_remotePerms
Jocelyn Turcotte [Thu, 24 Aug 2017 14:48:40 +0000 (16:48 +0200)]
Remove SyncEngine::_remotePerms

Now that csync is using a more convenient data structure for
its file trees, wait a little bit longer before destroying them and
fetch the remote permissions from the remote tree there instead.

8 years agoRemove the usage of phash in csync
Jocelyn Turcotte [Wed, 23 Aug 2017 17:30:55 +0000 (19:30 +0200)]
Remove the usage of phash in csync

Only store the path since they represent the same thing, and do the
phash conversion during DB lookup like done in libsync.
We could get rid of everything since we also have an index on the path
column, but since it's the primary key this makes the migration non-trivial.

8 years agoReplace the custom rbtree by a std::map
Jocelyn Turcotte [Wed, 23 Aug 2017 17:16:12 +0000 (19:16 +0200)]
Replace the custom rbtree by a std::map

8 years agocsync: Keep the csync_file_stat_t instances created during discovery
Jocelyn Turcotte [Thu, 17 Aug 2017 17:06:58 +0000 (19:06 +0200)]
csync: Keep the csync_file_stat_t instances created during discovery

Now that they use the same structure, avoid _csync_detect_update
having to recreate another instance and transfer everything manually.
Any instance created during discovery should now be used all the way
up to SyncEngine::treewalkFile.

This also makes sure that the path and types are properly set in that
object instead of having to pass everything as separate parameters.

This gets rid of csync_ftw_flags_e which was now converted from,
and to csync_ftw_type_e, already in the csync_file_stat_t.

Issue #1817

8 years ago[tx-robot] updated from transifex
Jenkins for ownCloud [Mon, 18 Sep 2017 00:18:30 +0000 (02:18 +0200)]
[tx-robot] updated from transifex

8 years ago[tx-robot] updated from transifex
Jenkins for ownCloud [Sun, 17 Sep 2017 00:18:29 +0000 (02:18 +0200)]
[tx-robot] updated from transifex

8 years ago[tx-robot] updated from transifex
Jenkins for ownCloud [Sat, 16 Sep 2017 00:18:35 +0000 (02:18 +0200)]
[tx-robot] updated from transifex

8 years agoAbstractNetworkJob: Allow relative redirect
Christian Kamm [Fri, 15 Sep 2017 07:24:56 +0000 (09:24 +0200)]
AbstractNetworkJob: Allow relative redirect

Previously all redirects were considered absolute.

8 years agoReduce timeout for some admin jobs
Christian Kamm [Fri, 15 Sep 2017 07:11:52 +0000 (09:11 +0200)]
Reduce timeout for some admin jobs

The oauth token jobs and the wizard redirect check job shouldn't have
5min timeouts.

8 years agoWizard: Handle url-shortener redirects #5954
Christian Kamm [Mon, 11 Sep 2017 11:45:01 +0000 (13:45 +0200)]
Wizard: Handle url-shortener redirects #5954

Grab any permanent redirects from the base url the user entered
before attempting to connect to a modified url (with status.php
added).

8 years agoHttpCreds: Remove migration code from 1.7
Christian Kamm [Thu, 14 Sep 2017 12:45:46 +0000 (14:45 +0200)]
HttpCreds: Remove migration code from 1.7

8 years agoCredentials: Use per-account keychain entries #5830
Christian Kamm [Tue, 12 Sep 2017 15:15:22 +0000 (17:15 +0200)]
Credentials: Use per-account keychain entries #5830

This requires a lot of migration code: the old entries need to be read,
saved to the new locations and then deleted.

8 years agoJournal: Second attempt at journal mode fallback #5723
Christian Kamm [Wed, 13 Sep 2017 07:27:07 +0000 (09:27 +0200)]
Journal: Second attempt at journal mode fallback #5723

Some filesystems, vms or other limitations make using the WAL journal
mode impossible. We are notified of this problem through an sqlite
IOERR for SHMMAP. In that case We want to attempt to fall back to the
DELETE journal mode.

8 years agoOAuth: Don't use implicit POST bodies
Christian Kamm [Mon, 11 Sep 2017 10:24:29 +0000 (12:24 +0200)]
OAuth: Don't use implicit POST bodies

The query args of POST requests become the request body. If there's a
redirect, the redirected url will therefore not contain the query
arguments. Use an explicit request body to make the redirection work.

8 years agoOAuth: Pass client auth in header instead of url
Christian Kamm [Mon, 11 Sep 2017 10:23:52 +0000 (12:23 +0200)]
OAuth: Pass client auth in header instead of url

To play more nicely with redirects.

8 years agoOAuth: Use redirectable jobs for oauth token management
Christian Kamm [Fri, 8 Sep 2017 14:43:59 +0000 (16:43 +0200)]
OAuth: Use redirectable jobs for oauth token management

8 years agoPropagateUpload: Model of remote quota, avoid some uploads #5537
Christian Kamm [Wed, 12 Jul 2017 07:58:15 +0000 (09:58 +0200)]
PropagateUpload: Model of remote quota, avoid some uploads #5537

When we see a 507 error, assume that quota is < uploaded size.

8 years agoSyncOptions/Propagator: Parallelism as an option
Christian Kamm [Wed, 12 Jul 2017 11:19:58 +0000 (13:19 +0200)]
SyncOptions/Propagator: Parallelism as an option

Very useful for changing it on a per-test basis.

8 years agoMake DetailError different from BlacklistedError
Christian Kamm [Wed, 12 Jul 2017 10:38:53 +0000 (12:38 +0200)]
Make DetailError different from BlacklistedError

It's quite different in regard to blacklist handling and overall
sync failure changes.

8 years agoremove qt4 code
Helmut K. C. Tessarek [Wed, 13 Sep 2017 04:26:56 +0000 (00:26 -0400)]
remove qt4 code

8 years ago[tx-robot] updated from transifex
Jenkins for ownCloud [Fri, 15 Sep 2017 00:18:32 +0000 (02:18 +0200)]
[tx-robot] updated from transifex

8 years agoExcludes: Allow escaping # #6012
Christian Kamm [Wed, 13 Sep 2017 11:03:40 +0000 (13:03 +0200)]
Excludes: Allow escaping # #6012

Otherwise adding patterns that start with # are impossible to add, since
they get treated as comments. Also add this escaping for patterns added
in the ui.

8 years ago[tx-robot] updated from transifex
Jenkins for ownCloud [Thu, 14 Sep 2017 00:18:30 +0000 (02:18 +0200)]
[tx-robot] updated from transifex

8 years ago[tx-robot] updated from transifex
Jenkins for ownCloud [Wed, 13 Sep 2017 00:18:31 +0000 (02:18 +0200)]
[tx-robot] updated from transifex

8 years agoChunkingNgTest: CI debuggability #6015
Markus Goetz [Tue, 12 Sep 2017 15:07:19 +0000 (17:07 +0200)]
ChunkingNgTest: CI debuggability #6015

8 years agoJournal: Fall back to DELETE on IO error #5723
Christian Kamm [Tue, 12 Sep 2017 11:39:45 +0000 (13:39 +0200)]
Journal: Fall back to DELETE on IO error #5723

Also add logging of extended error codes for this IO error, maybe we can
become more specific about which situations should trigger a journal
mode switch.

8 years agoFolder: Check etag again after active sync #4116
Christian Kamm [Tue, 12 Sep 2017 11:02:00 +0000 (13:02 +0200)]
Folder: Check etag again after active sync #4116

Maybe more things were happening on the server?

8 years ago[tx-robot] updated from transifex
Jenkins for ownCloud [Tue, 12 Sep 2017 00:18:30 +0000 (02:18 +0200)]
[tx-robot] updated from transifex

8 years agoUpdate server url in case of permanent redirection #5972
Christian Kamm [Fri, 8 Sep 2017 09:59:45 +0000 (11:59 +0200)]
Update server url in case of permanent redirection #5972

This is the first time the account url may update outside of
account setup.

Summary of redirection handling:
1. During account setup (wizard)
   - status.php gets permanently redirected -> adjust url
   - authed PROPFIND gets *any* redirection -> adjust url
2. During connectivity ping (ConnectionValidator)
   - status.php gets permanently redirected -> adjust url (new!)

All other redirections should be followed transparently and
don't update the account url in the settings.

8 years agoUse DetermineAuthTypeJob in HttpCredentials
Christian Kamm [Thu, 7 Sep 2017 12:58:45 +0000 (14:58 +0200)]
Use DetermineAuthTypeJob in HttpCredentials

* Move it to networkjobs
* Minor adjustments to its logic
* Fixes redirect handling for oauth/basic http auth check #6003

8 years agoAdd clean_tarball.sh #6005
Markus Goetz [Mon, 11 Sep 2017 16:53:51 +0000 (18:53 +0200)]
Add clean_tarball.sh #6005

8 years ago[tx-robot] updated from transifex
Jenkins for ownCloud [Mon, 11 Sep 2017 14:03:15 +0000 (16:03 +0200)]
[tx-robot] updated from transifex

8 years agoWindows: Make sure that the folder and Desktop.ini have the right attributes (#6018)
Jocelyn Turcotte [Mon, 11 Sep 2017 13:32:42 +0000 (15:32 +0200)]
Windows: Make sure that the folder and Desktop.ini have the right attributes (#6018)

When created from scratch, the owncloud icon won't be picked-up by
explorer unless the right attributes are set on both the sync root and the
Desktop.ini file.

Issue #2446

8 years agoEnable DEP & ASLR on Windows
rockihack [Mon, 4 Sep 2017 11:42:20 +0000 (13:42 +0200)]
Enable DEP & ASLR on Windows

8 years agoRemove qtkeychain submodule #6004
Markus Goetz [Fri, 8 Sep 2017 13:23:01 +0000 (15:23 +0200)]
Remove qtkeychain submodule #6004

8 years agoFix the macOS Sparkle build
Jocelyn Turcotte [Fri, 8 Sep 2017 11:54:04 +0000 (13:54 +0200)]
Fix the macOS Sparkle build

8 years agoHttp credentials: Fix behavior for bad password #5989
Christian Kamm [Thu, 7 Sep 2017 09:10:23 +0000 (11:10 +0200)]
Http credentials: Fix behavior for bad password #5989

When the GET request from askFromUser is scheduled on the QNAM inside
the slot that handles the QNetworkReply::finished signal, it seems to
not get processed at all.

This workaround moves the sending of the new GET to the event loop,
sidestepping the problem.

8 years agoFix compile errors
Christian Kamm [Thu, 7 Sep 2017 09:02:05 +0000 (11:02 +0200)]
Fix compile errors

cmocka seems to #define fail to something inappropriate.

8 years agocsync_statedb: (really) Make sure children of non-synced items aren't read from the DB
Jocelyn Turcotte [Thu, 7 Sep 2017 08:26:19 +0000 (10:26 +0200)]
csync_statedb: (really) Make sure children of non-synced items aren't read from the DB

No tests are covering this and I reversed the original logic.

8 years agocsync_statedb: Make sure children of non-synced items aren't read from the DB
Jocelyn Turcotte [Thu, 7 Sep 2017 08:16:16 +0000 (10:16 +0200)]
csync_statedb: Make sure children of non-synced items aren't read from the DB

Fix a regression during C++ conversion from 704ca366b38391c0ef56e090561b4a3a158307fb

8 years agoFix build after C++ conversion of csync
Jocelyn Turcotte [Mon, 4 Sep 2017 15:40:56 +0000 (17:40 +0200)]
Fix build after C++ conversion of csync

Use the same macro as in SyncFileItem for bitfields on enums.

Fixes #5993

8 years agoUse a C++ contructor and destructor for CSYNC
Jocelyn Turcotte [Mon, 4 Sep 2017 17:06:13 +0000 (19:06 +0200)]
Use a C++ contructor and destructor for CSYNC

Merge csync_create and csync_init into the constructor and
replace csync_destroy with the destructor.

Also use a QByteArray for csync_s::root_perms and flatten
csync_rename_s as a rename sub-struct of csync_s since it
can now handle C++ types.

8 years agoRemove csync_s::replica
Jocelyn Turcotte [Mon, 4 Sep 2017 13:09:09 +0000 (15:09 +0200)]
Remove csync_s::replica

The only difference with csync_s::current is that it's
assigned the value of csync_s::local::type and
csync_s::remote::type, which never change. So might as
well only use the "current" field with constants.

8 years agoReplace TREE_WALK_FILE with csync_file_stat_t
Jocelyn Turcotte [Thu, 17 Aug 2017 12:39:23 +0000 (14:39 +0200)]
Replace TREE_WALK_FILE with csync_file_stat_t

Just expose csync_file_stat_t since we don't need an abstraction layer
anymore. Also pass the nodes of both trees directly to the visitor
function.

Issue #1817

8 years agoReplace csync_vio_file_stat_t with csync_file_stat_t
Jocelyn Turcotte [Tue, 5 Sep 2017 14:12:32 +0000 (16:12 +0200)]
Replace csync_vio_file_stat_t with csync_file_stat_t

Also move csync_normalize_etag to common/utility since we
don't need the char* function anymore.

Remove the single space file_stat->remotePerm codepath since
this won't be used in csync anymore since
8de3bda0b1f900ab183698454740fd979f7ab9d7.

Issue #1817

8 years agoFix link to download the ownCloud client
Matthew Setter [Mon, 4 Sep 2017 13:01:29 +0000 (15:01 +0200)]
Fix link to download the ownCloud client

This was requested in https://github.com/owncloud/documentation/issues/3354.

8 years agoFix broken images in FAQ
Matthew Setter [Mon, 4 Sep 2017 12:55:12 +0000 (14:55 +0200)]
Fix broken images in FAQ

This relates to https://github.com/owncloud/documentation/issues/3354.

8 years agoUpdate ChangeLog
Jürgen Weigert [Tue, 5 Sep 2017 16:20:03 +0000 (18:20 +0200)]
Update ChangeLog

8 years agoMake csync_file_stat_t public and partly convert to C++
Jocelyn Turcotte [Thu, 17 Aug 2017 08:06:14 +0000 (10:06 +0200)]
Make csync_file_stat_t public and partly convert to C++

This is the first commit trying to unify csync_file_stat_s,
csync_vio_file_stat_s and csync_tree_walk_file_s. Use QByteArray
and unique_ptr already since I'm not used to track memory allocations
and this will make the transition easier.

Issue #1817

8 years agoMove Utility to a new common static library
Jocelyn Turcotte [Wed, 16 Aug 2017 06:36:52 +0000 (08:36 +0200)]
Move Utility to a new common static library

Now that csync builds as C++, this will avoid having to implement
functionalities needed by csync mandatorily in csync itself.

This library is built as part of libocsync and symbols exported
through it.
This requires a relicense of Utility as LGPL. All classes moved into
this library from src/libsync will need to be relicensed as well.

8 years agoAdd minor unittest for numeric id extraction #5933
Christian Kamm [Tue, 5 Sep 2017 11:40:26 +0000 (13:40 +0200)]
Add minor unittest for numeric id extraction #5933

8 years agoStatusTracker: Fix different case paths not matching (#5981)
Jocelyn Turcotte [Thu, 31 Aug 2017 11:32:00 +0000 (13:32 +0200)]
StatusTracker: Fix different case paths not matching (#5981)

Use a custom std::map comparator functor to do all comparisons
on contained QStrings using Qt::CaseInsensitive on macOS and Windows.

Issue #5257

8 years agofix branded nemo and caja shell integration (#5966)
Jürgen Weigert [Thu, 31 Aug 2017 11:16:34 +0000 (13:16 +0200)]
fix branded nemo and caja shell integration (#5966)

* Update createcajaplugin.sh

* first apply branding, then create copies. Better.
Fixes https://github.com/owncloud/ownbrander/issues/753

* fix https://github.com/owncloud/ownbrander/issues/752 too.

8 years agoFix cmocka deprecation warnings
Jocelyn Turcotte [Mon, 21 Aug 2017 18:05:00 +0000 (20:05 +0200)]
Fix cmocka deprecation warnings

Just use cmocka_run_group_tests like we already use in
some of those tests.

8 years agoEnable csync logs in unit tests
Jocelyn Turcotte [Thu, 17 Aug 2017 16:32:03 +0000 (18:32 +0200)]
Enable csync logs in unit tests

Go through the Logger to enable the csync-QDebug bridge.

8 years agoCompile almost all of csync as C++
Jocelyn Turcotte [Mon, 14 Aug 2017 14:19:52 +0000 (16:19 +0200)]
Compile almost all of csync as C++

This will allow us to unify data structures between csync and libsync.

Utility functions like csync_time and c_std are still compiled as C
since we won't need to be coupled with Qt in the short term.

8 years agoUse .cpp for existing csync .cc files
Jocelyn Turcotte [Mon, 14 Aug 2017 12:32:11 +0000 (14:32 +0200)]
Use .cpp for existing csync .cc files

Make this consistent with the rest of the client code.

8 years agoMove csync to src/csync
Jocelyn Turcotte [Mon, 14 Aug 2017 17:19:52 +0000 (19:19 +0200)]
Move csync to src/csync

8 years agoMove csync/tests to test/csync
Jocelyn Turcotte [Mon, 14 Aug 2017 16:49:44 +0000 (18:49 +0200)]
Move csync/tests to test/csync

8 years agoMove csync/tests/ownCloud to test/scripts/txpl
Jocelyn Turcotte [Mon, 14 Aug 2017 15:45:49 +0000 (17:45 +0200)]
Move csync/tests/ownCloud to test/scripts/txpl

8 years agoMerge pull request #2 from nextcloud/update-readme
Roeland Jago Douma [Wed, 27 Sep 2017 12:03:23 +0000 (14:03 +0200)]
Merge pull request #2 from nextcloud/update-readme

Update README

8 years agoRemove templates for now
Roeland Jago Douma [Wed, 27 Sep 2017 12:02:49 +0000 (14:02 +0200)]
Remove templates for now

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
8 years agoUpdate README
Christoph Wurst [Wed, 27 Sep 2017 12:00:02 +0000 (14:00 +0200)]
Update README

Adjust branding and remove some sections

8 years agoMerge pull request #48 from nextcloud-gmbh/master-oc
Roeland Jago Douma [Fri, 25 Aug 2017 13:06:26 +0000 (15:06 +0200)]
Merge pull request #48 from nextcloud-gmbh/master-oc

Bump to oc master

8 years agoMerge remote-tracking branch 'oc/master' into master-oc
Roeland Jago Douma [Wed, 23 Aug 2017 13:40:35 +0000 (15:40 +0200)]
Merge remote-tracking branch 'oc/master' into master-oc

8 years agoMerge pull request #5974 from owncloud/Documentation_Activity_Update
Martin [Sun, 20 Aug 2017 19:09:42 +0000 (21:09 +0200)]
Merge pull request #5974 from owncloud/Documentation_Activity_Update

Documentation improvement for #5969

8 years agoDocumentation improvement for #5969
Martin [Sun, 20 Aug 2017 16:17:58 +0000 (18:17 +0200)]
Documentation improvement for #5969

8 years agoHardcode Desktop.ini in the exclude list
Jocelyn Turcotte [Mon, 14 Aug 2017 09:42:30 +0000 (11:42 +0200)]
Hardcode Desktop.ini in the exclude list

This prevents it from being removed from the exclude list, which
would be an issue since the client itself creates this file in a way
that wouldn't match on machines with different installation paths.

8 years agoWindows: Use the application icon for the sidebar
Jocelyn Turcotte [Fri, 11 Aug 2017 15:19:02 +0000 (17:19 +0200)]
Windows: Use the application icon for the sidebar

By setting the icon in Desktop.ini of the root folder, this adds the icon
both when browsing the folder directly and to the sidebar shortcut.

To avoid overwriting any user setting that could exist in Desktop.ini,
only do this if the file doesn't exist. Editing .ini files on Windows
isn't trivial and isn't worth it given that this file won't exist most
of the time.

Fixes #2446