Commit graph

1,453 commits

Author SHA1 Message Date
abraunegg
96a3c2d7c9
Fix path calculation for Client Side Filtering evaluations (#3106)
* Correct the path calculation for 'skip_dir' evaluations to correctly cater for Shared Folders and the 'root' object
* Add debug logging if 'newItemPath' and requires calculation again before use
2025-02-08 05:32:35 +11:00
abraunegg
1c78078df7
Release files for 2.5.4 (#3098) v2.5.4
* Release files for 2.5.4
2025-02-03 17:55:39 +11:00
abraunegg
7f2d981683
Add './' sync_list rule check (#3097)
* Add './' sync_list rule check as this does not align to the documentation and these rules will not get matched correctly. The user needs to take corrective action.
2025-02-03 08:55:51 +11:00
abraunegg
ad22952167 Fix log output when generating a /delta response
* Fix log output when generating a /delta response
2025-02-03 08:14:03 +11:00
abraunegg
518b152c4c
Add code to support 'display_processing_time' use (#3095)
* Add code to support using 'display_processing_time' for functional performance
* Cleanup use of getFunctionName() so this is only called once and re-used
2025-02-02 08:18:15 +11:00
abraunegg
84a141b1d6
Calculate file transfer metrics in a consistent manner (#3091)
* Add back file transfer metrics which was available in v2.4.x (regression) 
* Calculate file transfer metrics in a consistent manner for all uploads and downloads
2025-01-29 06:38:21 +11:00
abraunegg
e392722b5e
Fix testInternetReachability function (#3087)
* Function should always return a boolean value and not throw an exception
2025-01-25 18:23:48 +11:00
abraunegg
defcd8bf2d
Update usage.md (#3084)
* Update usage.md
2025-01-24 20:15:31 +11:00
abraunegg
15656d31c8
Add OneDrive Personal Drive ID and Remote Drive ID length check (#3086)
* Add a check to ensure that OneDrive Personal Drive ID and Remote Drive ID values are 16 characters, padded by leading zeros if the provided JSON data has dropped these leading zeros
* If OneDrive Personal Account, validate all use of 'onedriveJSONItem["parentReference"]["driveId"].str' within application to ensure consistency in use and application
2025-01-24 19:59:09 +11:00
abraunegg
c60a889397
Fix --single-directory Shared Folder DB entry creation (#3082)
* Ensure that when using --single-directory that if the destination is a Shared Folder, the database records are created in a consistent manner
* Remove 'sea8cc6beffdb43d7976fbc7da445c639' due to 'non-alpha-in-dictionary' code scan result
2025-01-20 18:01:34 +11:00
abraunegg
4418d0d636
Support the moving of Shared Folder Links to other folders (#3052)
* Implement Feature Request #2824 to support the moving of Shared Folder Links to other folders
* Be consistent in log output for Personal Accounts, despite personal accounts not supporting relocatable Shared Folder links
* Update /delta generation message to include the driveId
* Code / Technical change was merged into https://github.com/abraunegg/onedrive/pull/3051 and committed to 'master' via 5a20154726
2025-01-20 10:48:09 +11:00
abraunegg
27a25bef4e
Fix Upload|Download Loop for AIP Protected File in Monitor Mode (#3071)
* Fix Upload|Download Loop for AIP Protected File in Monitor Mode
2025-01-18 07:46:56 +11:00
abraunegg
d0354fff94
Add account root id check for Microsoft OneDrive Personal account issue (#3077)
* Specifically add a check for the 'sea8cc6beffdb43d7976fbc7da445c639' string in the Microsoft OneDrive Personal Account Root ID response that denotes that the account cannot access Microsoft OneDrive at this point in time.
* Make sure the error gets flagged in the GUI so the user is aware of the problem
2025-01-17 12:17:18 +11:00
abraunegg
0247902d08 Update install.md
* Remove Ubuntu 23.04
* Add LTS designation for the Ubuntu Long Term Stuffed platforms
2025-01-17 09:53:14 +11:00
abraunegg
1d00a5228e Update install.md
* Add 'systemd-dev' due to Ubuntu 24.10 changes that now requires this package so that pkg-config can detect systemd
2025-01-15 07:00:15 +11:00
abraunegg
04a3ab32c0
Change dynamic linker to Linux only to correctly support FreeBSD and OpenBSD (#3069)
* Change dynamic linker to Linux only to correctly support FreeBSD and OpenBSD
* Add OpenBSD support to 'configure'
2025-01-13 19:37:38 +11:00
abraunegg
a402d1ea1d
Fix Alpine Docker build post FreeBSD support (#3068)
* Fix Alpine Docker build post FreeBSD support
2025-01-13 16:08:58 +11:00
abraunegg
260be9496a
Support FreeBSD - Code and documentation changes to support FreeBSD (#3048)
* Code and documentation changes to support FreeBSD
2025-01-13 15:32:18 +11:00
abraunegg
c7037f83dc
Fix issue #3057 where timestamp is not set when using --disable-download-validation (#3064)
* When --disable-download-validation is used, we still need to set the file timestamp correctly to avoid integrity checking issues
* Implement setFileTimestamp() as a common function so that when setting a file timestamp this is done in a consistent manner
* Update debug logging to be more agnostic to support either file or directory use
* Use same function for files and directories to ensure consistency
* Update function to detail what is being set, when it is set, and when it is successful
2025-01-12 20:11:27 +11:00
abraunegg
5a20154726
Support adding SharePoint Libraries as Shared Folder Links (#3051)
* Support adding SharePoint Libraries as Shared Folder Links
* Remove section of code that is no longer used
* Be consistent in log output for Personal Accounts, despite personal accounts not supporting relocatable Shared Folder links
* Update /delta generation message to include the driveId
* Ensure 'skip_dir' rules are correctly applied to remote shared folder links
2025-01-10 16:46:22 +11:00
abraunegg
71a71da1e0
Fix that the root Personal Shared Folder is not handled due to missing API data (#3047)
* Handle the 'root' folder of a OneDrive Personal Shared Folder in a more direct manner due to OneDrive API inconsistency in European Data Centres
2024-12-17 04:11:29 +11:00
abraunegg
c7af2186bd
Fix that item deleted after events of IN_MOVED_FROM & IN_CLOSE_WRITE (#3045)
* Update inotify logging output for deletion events to include the path that is being attempted to be deleted, to allow for easier event analysis of what is going on
* Fix path got deleted in handling of move & close_write event when using 'vim'. Refer to https://github.com/abraunegg/onedrive/issues/2586 and 2afbc17c12 (diff-6e533f0067)
2024-12-13 07:05:52 +11:00
abraunegg
77416841d4
Fix moving online files inside directories when using 'sync_list' (#3042)
* Fix issue that when using 'sync_list' if a file is moved to a newly created online folder, whilst the folder is created database wise, ensure this folder exists on local disk  to support included files from 'sync_list' entries
2024-12-13 05:17:30 +11:00
abraunegg
ea7ed66b21
Fix skip_dir logic when reverse traversing folder structure (#3034)
* Fix skip_dir logic when reverse traversing folder structure
* Update what path is used for logging output if skipped
2024-12-11 05:48:27 +11:00
abraunegg
6634284efa
Fix regression in handling uploading new and modified content to OneDrive Business and SharePoint (#3032)
* Fix regression from v2.4.x in handling uploading new and modified content to OneDrive Business and SharePoint to not create new versions of files post upload which adds to user quota
* Ad configuration option 'create_new_file_version' to create new versions if that is the desire
2024-12-09 14:24:33 +11:00
abraunegg
279057962c
Update Arch Linux instructions (#3036)
* Update Arch Linux instructions
* Re-order list
2024-12-08 14:32:40 +11:00
abraunegg
39377515a6
Fix regression of --display-config use (#3035)
* Fix regression of --display-config use after fast failing if --sync or --monitor has not been used
2024-12-07 17:42:29 +11:00
Ben
eade671215
correct minor typo (#3033)
I noticed this small typo when looking at a PR, hope you don't mind!
2024-12-07 09:57:17 +11:00
abraunegg
900ffa814f
Update docker.md (#3028)
* Fix details on docker compose process to clearly articulate that the client must be manually authenticated before running using docker compose file
2024-12-05 06:15:12 +11:00
abraunegg
53c74c4a63
Update --dry-run authentication message (#3022)
* Update --dry-run authentication message based on question raised in #3021
2024-12-02 10:59:09 +11:00
abraunegg
2ef6d4739d Update .gitignore
Update .gitignore to exclude all the spelling items
2024-11-30 09:11:53 +11:00
abraunegg
f7af328229
Update isValidUTF8 function with further validation (#3016)
* Update isValidUTF8 function to use 'validate' rather than individual character checking. The isValidUTF8 is only used to check a UTC timestamp in isValidUTCDateTime
* Enhance isValidUTF8 to check for empty strings, length constraints of UTC timestamps
* Add further logging in the event UTC validation fails
* Update allow.txt - add FFFD
2024-11-30 08:21:01 +11:00
Pieter Scheffers
c7f1b7f407
feat: optionally use standalone mode for syncing using Docker container (#3018)
* feat: optionally use standalone mode for syncing using Docker container

* Update podman.md
* Update podman.md

---------

Co-authored-by: abraunegg <alex.braunegg@gmail.com>
2024-11-29 06:29:30 +11:00
abraunegg
44d639cbe1
Fix download error of an updated file leads to online file deletion (#3017)
* Fix issue when downloading a file, and this fails due to an API error (400, 401, 5xx) - if the file existed in the database, the file will be deleted locally due to the download failure. Ensure that post this failure, we delete the relevant database record as per other download failures to avoid cascading an online deletion that should not occur.
2024-11-29 05:11:52 +11:00
abraunegg
b06b6238d8
Check for no --sync | --monitor earlier to fail fast if not used (#3011)
* Check for no --sync | --monitor earlier to fail fast here to avoid setting up all the other components, database, initialising the API as this is all pointless if we just fail out later
2024-11-27 07:50:28 +11:00
abraunegg
228e7db188
Implement Feature Request: Support Permanent Delete on OneDrive (#2999)
* Implement Feature Request: Support Permanent Delete on OneDrive (#2803)
2024-11-26 19:30:41 +11:00
abraunegg
e5de5a29e7
Add quota status messages based on OneDrive Account API response (#3008)
* Add quota status messages for nearing | critical | exceeded based on OneDrive Account API response
* Fix space calculations due to using ulong variable type to ensure that if calculation is negative, value is negative
2024-11-25 11:29:22 +11:00
abraunegg
701c30bf0b
Cleanup debug logging output (#3007)
* Use debugHTTPSResponse as a global variable
* Only output HTTP response headers if using --debug-https
2024-11-25 06:43:39 +11:00
abraunegg
c9591b3e46
Fix regression that sync_list does not traverse shared directories (#3004)
* Fix regression that sync_list does not traverse shared directories
2024-11-24 19:53:38 +11:00
abraunegg
5d45e24a1e
Fix that Business Shared Items shortcuts are skipped (#3001)
* Fix that Business Shared Items shortcuts are skipped as being incorrectly detected as Microsoft OneNote Notebook items
* Update allowed spelling for 'onetoc' file extension
2024-11-24 09:10:18 +11:00
abraunegg
e7dbf8e16c
Fix --display-config when dealing with empty sync_list (#2998)
* When using --display-config ensure that when a sync_list file is being used, that this actually is a valid file with applicable contents to display
* If 'sync_list' line is empty, skip this first before performing any other check
2024-11-23 13:09:52 +11:00
abraunegg
2caa497673
Fix import of 'sync_list' and rule application (#2996)
* The OneDriveGUI creates an empty sync_list file. If this file exists, and we loaded zero valid lines from it, flag that sync_list is not configured and not being used.
2024-11-23 11:24:33 +11:00
abraunegg
c74e008c9b Update usage.md
* Add note about Debian 12 / LMDE6 and installing curl from backports
2024-11-21 21:26:37 +11:00
abraunegg
01da452ae4
Update usage.md (#2990)
* Give more context around curl bugs, impacted distributions
2024-11-21 07:59:03 +11:00
abraunegg
8c1938f400
Add curl bugs to documentation (#2987)
* Add curl bugs to documentation
* If user makes configuration file remediation, dont send a gui notification
2024-11-20 06:52:28 +11:00
abraunegg
d956318b18
Fix unable to parse SSL version (#2981)
* On some systems OpenSSL version cannot be parsed. When this cannot be parsed, do not force exit, allow the client to continue operations. If the OpenSSL version string is not empty, display the unparsable string when using --verbose for future debugging if required.
2024-11-17 08:30:35 +11:00
abraunegg
22695dee7e
Fix build error on OpenBSD (#2978)
* Add OS version handler for OpenBSD in the same way as FreeBSD is handled in cgi.d
2024-11-17 07:42:39 +11:00
abraunegg
512ba3f874
Release files for 2.5.3 (#2976) v2.5.3
* Release files for 2.5.3
2024-11-16 08:37:29 +11:00
abraunegg
273bcbfbb1
Allow no-sync operations to complete online account checks (#2943)
* Allow no-sync operations to complete online account checks so that the client does not exit prematurely when account details cannot be sourced if we are performing a no-sync operation such as --get-sharepoint-drive-id

  This then allows errors such as the issue in #2941 to be displayed to assist in tracking down why the client is not working for these no-sync operation queries
2024-11-16 07:13:44 +11:00
abraunegg
5dc851ba06
Ensure bypass_data_preservation operates as intended (#2967)
* Ensure that if bypass_data_preservation is set to true, local file backups are not created when replacing local files.

* Refactor use of safeBackup passing in bypassDataPreservation to determine if the backup should be taken to ensure consistency in messaging
2024-11-14 09:20:15 +11:00