cketti
8436b07153
IMAP: Add support for the \NonExistent LIST response attribute
2024-03-28 15:19:16 +01:00
cketti
1414dde598
Merge pull request #7729 from thunderbird/missing_alarm_permission
...
Notify user if permission to schedule exact alarms is missing
2024-03-27 13:29:05 +01:00
cketti
423f7553a7
Remove now unnecessary code to check if exact alarms can be scheduled
2024-03-27 12:54:44 +01:00
cketti
e59839c21e
Change EXPUNGE behavior after moving a message
2024-03-15 17:00:12 +01:00
cketti
3439662446
Add ImapStoreConfig.isExpungeImmediately()
2024-03-15 16:37:56 +01:00
cketti
32f847622c
Don't wrap IOException
in RealImapStore.checkSettings()
...
Also adds logging for exceptions being thrown while checking server settings.
2024-02-12 13:57:16 +01:00
cketti
4486988c9d
Remove unnecessary test server operation
2024-01-26 12:57:49 +01:00
Wolf-Martell Montwé
69010f478f
Rename isSameAs/isNotSameAs
to isSameInstanceAs/isNotSameInstanceAs
2024-01-03 15:02:15 +01:00
cketti
928b18422e
Add more errors to ServerSettingsValidationResult
2023-12-08 15:18:29 +01:00
cketti
07c97cd039
Simplify CertificateValidationException
to only be used when there's a certificate chain
2023-12-06 15:53:10 +01:00
cketti
891294f926
Merge pull request #7403 from thunderbird/move_copyuid_response
...
IMAP: Add support for untagged COPYUID responses
2023-12-04 14:28:11 +01:00
cketti
462736e0d6
IMAP: Add support for untagged COPYUID responses
2023-12-02 18:31:53 +01:00
cketti
4e344b13b9
Convert UidCopyResponseTest
to Kotlin
2023-12-02 00:51:25 +01:00
cketti
68c1180e77
Rename .java to .kt
2023-12-02 00:51:25 +01:00
cketti
fdbfb06d07
Convert UidCopyResponse
to Kotlin
2023-12-02 00:51:22 +01:00
cketti
2516846945
Rename .java to .kt
2023-12-02 00:15:48 +01:00
cketti
2160a759e4
Don't start ImapBackendPusher
when the app doesn't have permission to schedule exact alarms
2023-12-01 15:23:14 +01:00
cketti
6500e16fd9
Remove unused import
2023-11-28 14:02:35 +01:00
cketti
68eec72c7b
Merge pull request #7381 from thunderbird/add_MissingCapabilityException
...
Add `MissingCapabilityException`
2023-11-28 12:21:09 +01:00
cketti
f79db8e28d
Add MissingCapabilityException
2023-11-27 18:49:52 +01:00
cketti
122eac0b57
Use AuthenticationFailedException
when appropriate
2023-11-27 15:29:37 +01:00
cketti
b4ef2fb15b
IMAP: Use MOVE command if available
2023-11-20 17:39:46 +01:00
cketti
8b66b04692
IMAP move operation should ignore expunge policy
...
Because the original IMAP specification doesn't include a move operation, we implement it as copy, followed by deleting the source message. Deleting messages in IMAP is a two stage process. First a message is marked as deleted, then the EXPUNGE command is issued. However, the EXPUNGE command will remove all messages in a folder marked as deleted. For a move operation, we don't want to remove other messages, and therefore won't issue the EXPUNGE command. However, if the server supports the UIDPLUS extension, we can specify which messages exactly should be expunged. So if that extension is available, we will use the UID EXPUNGE command on the source message of a move operation.
Since the EXPUNGE command removes all messages marked as deleted, K-9 Mail has a setting that controls when the command is issued (when deleting a message, when polling, manually via a menu option). Previously this setting was also used for move operations. However, that probably should have never been the case.
2023-11-18 18:09:08 +01:00
cketti
1de41d9177
Add FolderFetcher
2023-11-10 22:24:15 +01:00
Wolf-Martell Montwé
7565bb8e66
Fix max-line-length issues manually as auto format does fail
2023-11-07 10:40:08 +01:00
cketti
77ff16bcf7
IMAP: Add app version to ID command
2023-11-02 17:56:55 -04:00
Wolf-Martell Montwé
e9535ecdaa
Bump Spotless 6.14.0 -> 6.21.0 and KtLint 0.48.2 -> 0.50.0, and reformat/fix code
2023-09-06 18:13:23 +02:00
cketti
8e7a5f3541
Add an AuthStateStorage
parameter to ServerSettingsValidator
...
Typically we use `Account` to hold the (OAuth 2.0) authorization state. But during account setup we don't have an `Account` instance yet. So we allow a `ServerSettingsValidator` caller to pass an `AuthStateStorage` that we then use with `OAuth2TokenProviderFactory` to create an `OAuth2TokenProvider` instance. When setting up an account we can use an `AuthStateStorage` implementation that will simply hold the state in memory.
2023-07-29 23:36:02 +02:00
cketti
2706107519
Add ImapServerSettingsValidator
2023-06-23 17:20:06 +02:00
cketti
1e42e92b1b
Include more information in IMAP-specific ServerSettings
...
The additional properties are necessary to validate server settings.
2023-06-23 17:13:22 +02:00
cketti
8143ae53ec
Add responseText
property to NegativeImapResponseException
2023-06-23 14:11:30 +02:00
cketti
3abe666bd3
Convert NegativeImapResponseException
to Kotlin
2023-06-23 14:11:30 +02:00
cketti
289eadd575
Rename .java to .kt
2023-06-23 14:11:30 +02:00
cketti
ff31f79dc2
Fetch List-Post
header when downloading partial message
2023-06-20 15:04:43 +02:00
cketti
ef498c60e4
Update assertk to version 0.26
2023-05-16 17:20:25 +02:00
cketti
5498567bf2
Switch assertions to assertk
2023-05-14 13:00:28 +02:00
cketti
07d2a42a4d
Add tests for sending the IMAP ID command
2023-04-26 14:58:44 +02:00
Self Not Found
f2ce1fe344
IMAP: Add support for sending ID command with app name
2023-04-26 14:58:44 +02:00
Wolf Montwé
71079908aa
Bump Gradle 8.0.2 -> 8.1.1 and remove suppress dsl scope violation
2023-04-25 17:21:58 +02:00
cketti
98b59f1709
Fix bugs in ImapResponseParser
2023-04-19 19:36:31 +02:00
cketti
7ba404dd21
Clean up ImapResponseParserTest
2023-04-11 14:37:23 +02:00
cketti
5d030c0ccd
Convert ImapResponseParserTest
to Kotlin
2023-04-05 21:00:55 +02:00
cketti
aeedd17e1c
Rename .java to .kt
2023-04-05 21:00:55 +02:00
Wolf Montwé
cbf1a8fa78
Change imap module to assertk
2023-03-21 14:00:23 +01:00
Wolf Montwé
b4b6b841a0
Convert ImapCommandSplitterTest to Kotlin
2023-03-21 13:57:58 +01:00
Wolf Montwé
6059ca9c54
Rename ImapCommandSplitterTest.java to ImapCommandSplitterTest.kt
2023-03-21 13:57:58 +01:00
cketti
76b52d17ac
IMAP: Ignore errors during LOGIN fallback and throw original exception
2023-03-17 14:37:53 +01:00
cketti
7e5022ef36
IMAP: Put server response text in AuthenticationFailedException
2023-03-15 19:04:50 +01:00
Wolf Montwé
00b7bf45d7
Change truth testing library to legacy and only allow usage in old modules
2023-03-14 12:20:55 +01:00
Wolf Montwé
22d8e4b924
Change build files from Groovy to Kotlin
2023-02-23 14:52:16 +01:00