1<?xml version="1.0" encoding="UTF-8"?>
2<component type="desktop">
3  <id>org.davmail.DavMail.desktop</id>
4  <name>DavMail</name>
5  <metadata_license>CC0-1.0</metadata_license>
6  <summary>DavMail POP/IMAP/SMTP/Caldav/Carddav/LDAP Exchange Gateway</summary>
7  <description>
8    <p>
9      Ever wanted to get rid of Outlook ? DavMail is a
10      POP/IMAP/SMTP/Caldav/Carddav/LDAP Exchange and Office 365 gateway allowing
11      users to use any mail/calendar client (e.g. Thunderbird with
12      Lightning or Apple iCal) with an Exchange server, even from the
13      internet or behind a firewall through Outlook Web
14      Access. DavMail now includes an LDAP gateway to Exchange global
15      address book and user personal contacts to allow recipient
16      address completion in mail compose window and full calendar
17      support with attendees free/busy display. The main goal of
18      DavMail is to provide standard compliant protocols in front of
19      proprietary Exchange. This means LDAP for address book, SMTP to
20      send messages, IMAP to browse messages on the server in any
21      folder, POP to retrieve inbox messages only and Caldav for
22      calendar support. Thus any standard compliant client can be used
23      with Microsoft Exchange. DavMail gateway is implemented in java
24      and should run on any platform. Releases are tested on Windows,
25      Linux (Ubuntu) and Mac OSX. Tray does not work on MacOS and is
26      replaced with a full frame. Tested successfully with the Iphone
27      (gateway running on a server).
28    </p>
29  </description>
30  <url type="homepage">http://davmail.sourceforge.net</url>
31  <url type="donation">https://sourceforge.net/donate/index.php?group_id=184600</url>
32  <screenshots>
33    <screenshot type="default">
34      <image>https://screenshots.debian.net/screenshots/000/015/485/large.png</image>
35      <image>http://davmail.sourceforge.net/images/davmailArchitecture.png</image>
36    </screenshot>
37  </screenshots>
38  <project_license>GPL-2.0</project_license>
39  <developer_name>Mickaël Guessant</developer_name>
40  <content_rating type="oars-1.1" />
41  <releases>
42      <release version="6.0.1" date="2021-12-03">
43          <description>
44              <p>
45                  Bugfix release with a few Office 365 enhancements
46
47                  ### O365
48                  - O365: default to MSCAPI on windows for native client certificate access
49                  - O365: name button Send instead of OK in manual authenticator dialog
50                  - OS65: merge https://github.com/mguessan/davmail/pull/158 Added Copy to Clipboard button Manual auth dialog
51
52                  ### Linux
53                  - Linux: improve "davmail azul" error handling
54                  - Linux: Update changelog in RPM spec
55                  - Linux: Fix RPM spec, remote source does not work
56                  - Linux: Merge RPM spec contribution from michals on https://build.opensuse.org, check for systemd support and deploy the right service
57
58                  ### HC4
59                  - HC4: make DavMail Kerberos configuration provider
60
61                  ### EWS
62                  - EWS: merge https://github.com/mguessan/davmail/pull/106 Support servers only offering EWS/Services.wsdl instead of EWS/Exchange.asmx
63
64                  ### Documentation
65                  - Doc: Remove HttpClient migration warning
66                  - Doc: instructions on standalone setup on Linux for best O365 support
67                  - Update readme for Github home page
68              </p>
69          </description>
70      </release>
71      <release version="6.0.0" date="2021-07-05">
72          <description>
73              <p>
74                  First major release in a long time, main change is switch from HttpClient 3 to 4, please report any regression related to this major rewrite.
75                  DavMail now supports more O365 configurations, including access to client certificate to validate device trust.
76                  O365 refresh tokens can now be stored securely in a separate (writable) file.
77                  On Linux, in order to ensure the right java version is used, a command line option to download latest Azul JRE with OpenJFX support was added,
78                  on windows a standalone package contains Azul JRE FX 15, on OSX updated universalJavaApplicationStub to latest version.
79
80                  ### OSX:
81                  - OSX: completely drop Growl support
82                  - OSX: prepare possible path for an embedded jre mode
83                  - OSX: update universalJavaApplicationStub to latest version from https://github.com/tofi86/universalJavaApplicationStub/blob/master/src/universalJavaApplicationStub
84
85                  ### Documentation:
86                  - Doc: merge Clarify the usage of imapIdleDelay https://github.com/mguessan/davmail/pull/116
87                  - Doc: add comment on IDLE and timeout setting
88                  - Doc: link to standalone windows package
89                  - Doc: fix Zulu link
90                  - Doc: remove references to Java 6 in documentation
91
92                  ### Build:
93                  - Appveyor: update ant
94                  - Appveyor: build with jdk15
95                  - Appveyor: purge artifacts for all builds except jdk 8
96                  - Build: run Sonar with JDK 11
97                  - Update junit to 4.13.1 in Maven
98                  - Update junit to 4.13.1
99
100                  ### Linux:
101                  - Linux: Experimental: download Azul JRE FX with command 'davmail azul'
102                  - Linux: merge https://github.com/mguessan/davmail/pull/133 Linux Gnome Desktop: fix systray support
103                  - Linux: Update service file to allow 0-1023 ports binding (https://github.com/mguessan/davmail/pull/117)
104
105
106                  ### Windows:
107                  - Windows: switch standalone jre to Azul FX 15
108                  - Windows: create a standalone package with Azul JRE FX in order to have a working O365InteractiveAuthenticator
109                  - Winrun4J: prefer embedded VM for standalone package and export sun.net.www.protocol.https
110                  - Winrun4J: update binaries
111                  - Winrun4J: prepare standalone configuration
112                  - Windows: update winrun4j config to require Java >= 8
113
114                  ### IMAP:
115                  - IMAP: fix thread handling from audit
116                  - IMAP: Compute body part size with failover
117
118                  ### O365:
119                  - O365: log token file creation
120                  - O365: cleanup from audit
121                  - O365: Add davmail.oauth.tokenFilePath to sample properties file
122                  - O365: disable HTTP/2 loader on Java 14 and later to enable custom socket factory
123                  - O365: allow user agent override in O365InteractiveAuthenticator, switch default user agent to latest Edge
124                  - O365: with Java 15 url with code returns as CANCELLED
125                  - O365: MSCAPI and Java version 13 or higher required to access TPM protected client certificate on Windows
126                  - O365: merge first commit from https://github.com/mguessan/davmail/pull/134/ OAuth via ADFS with MFA support
127                  - O365: fix store refreshToken call
128                  - O365: introduce davmail.oauth.tokenFilePath setting to store Oauth tokens in a separate file
129                  - O365: switch to try with resource style
130                  - Drop explicit dependency to netscape.javascript package in O365InteractiveJSLogger
131                  - O365: follow redirects on ADFS authentication
132
133                  ### HC4:
134                  - Refactor ExchangeSessionFactory, create HttpClientAdapter in session
135                  - HC4: update winrun4j binaries
136                  - HC4: drop HttpClient 3 dependency in Maven, winrun4j binaries and nsi setup
137                  - HC4: drop remaining HttpClient 3 classes
138                  - HC4: drop DavMailCookieSpec and DavGatewaySSLProtocolSocketFactory (merge in SSLProtocolSocketFactory)
139                  - HC4: drop DavGatewayHttpClientFacade and RestMethod
140                  - HC4: default to Edge user agent
141                  - HC4: Do not enable NTLM in Kerberos mode
142                  - HC4: switch checkConfig to HttpClient 4
143                  - HC4: merge HC4DavExchangeSession to DavExchangeSession
144                  - HC4: cleanup HC4ExchangeFormAuthenticator references
145                  - HC4: merge HC4ExchangeFormAuthenticator to ExchangeFormAuthenticator, extend authenticator interface to return HttpClientAdapter, switch to DavExchangeSession
146                  - HC4: switch O365 authenticators test code to HttpClient 4
147                  - HC4: adjust CreateItemMethod chunked call
148                  - HC4: switch ExchangeSessionFactory to HttpClient 4
149                  - HC4: add a warning about HttpClient 4 migration
150                  - HC4: Enable ssl logging in addition to wire with HttpClient 4
151                  - HC4: switch EWS implementation to HttpClient 4
152
153                  ### EWS:
154                  - EWS: improve isItemId detection to match base 64 encoded id
155                  - EWS: drop NTLM as a failover logic
156                  - EWS: cleanup unused code now that we have a reliable way to retrieve email address with ConvertId
157                  - EWS: drop property davmail.caldavRealUpdate, no longer used
158                  - EWS: Improved uid handling from audit
159                  - EWS: Enable Woodstox workaround for malformed xml with latest Woodstox version
160
161                  ### Enhancements:
162                  - Clear session pool on DavMail restart
163                  - Upgrade to Woodstox 6.2.0 as it's now available on debian, drop Woodstox patched StreamScanner
164
165                  ### Caldav:
166                  - Caldav: merge https://github.com/mguessan/davmail/pull/139 Fix missing XML encode
167                  - Caldav: use Exchange timezone to compute event time in test case
168                  - Caldav: create test cases for recurring events
169              </p>
170          </description>
171      </release>
172      <release version="5.5.1" date="2019-04-19">
173      <description>
174          <p>
175              Fix regression on domain\username authentication over IMAP and some cleanup
176
177              ### IMAP:
178              - IMAP: fix https://github.com/mguessan/davmail/issues/100 regression with domain\username authentication
179
180              ### O365:
181              - O365: set jdk.http.ntlm.transparentAuth=allHosts to enable NTLM for ADFS support
182
183              ### Build:
184              - dist cleanup
185              - Update release guide with Fedora copr instructions
186              - Exclude .sonarwork from source package
187              - Build: fix release file name
188          </p>
189      </description>
190      </release>
191      <release version="5.5.0" date="2019-04-15">
192      <description>
193        <p>
194            This release contains a lot of bugfixes, enhancements and some user contributions from Github.
195            Most activity is related to HttpClient 4 refactoring, this will probably be the latest version based in HttpClient 3.
196            Minimum Java version is now 8, also dropped Growl support on MacOS.
197            Notable changes for end users are Oauth token persistence to avoid frequent O365 authentications and OIDC support for
198            personal outlook accounts.
199            Known issues: some users reported regressions with form authentication, please report such regressions with log files.
200
201            ### IMAP:
202            - IMAP: catch non IOException errors in FolderLoadThread
203            - IMAP: fix https://github.com/mguessan/davmail/pull/91 Allow user name to be specified as user@domain.com in addition to domain\user to access shared mailbox
204            - IMAP: unquote CHARSET in IMAP search
205            - IMAP: cleanup test cases
206
207            ### Documentation:
208            - Doc: describe new Office 365 authentication modes
209            - Doc: remove deprecated enableEWS reference
210            - Doc: Document new connection modes in template davmail.properties
211            - Doc: Add all time downloads badge
212            - Doc: push sonarcloud badges
213
214            ### Enhancements:
215            - Apply xml transformer settings recommended by Sonar
216            - dos2unix template davmail.properties file
217            - prepare migration to https://davmail.sourceforge.io
218            - Settings: cleanup from audit
219            - Latest edge user agent does not work, use Outlook 2013 instead
220            - Convert HTTP code to Java 8
221            - Cleanup from audit
222            - Fix sonar detected vulnerability
223            - Update to Java 8 and code cleanup
224            - Comment HttpURLConnectionWrapper
225            - Fix regression in AbstractServer
226            - Remove unused label
227            - Cleanup from audit at Java 8 language level
228
229            ### Security:
230            - Enable TLSv1.1 and TLSv1.2
231
232            ### HttpClient 4:
233            - HC4: httpClient is not shared between clients, do not track connection state to enable NTLM connection pooling
234            - HC4: set default connection per route to 5
235            - HC4: refactor Exchange 2007 test cases
236            - HC4: Prepare switch, create a temporary HC4WebDav mode
237            - HC4: ExchangeSession cleanup
238            - HC4: unit test cleanup
239            - HC4: make ExchangeSession independent of HttpClient implementation
240            - HC4: remove reference to old HttpStatus in HttpClientAdapter
241            - HC4: more HC4ExchangeFormAuthenticator refactoring and fixes
242            - HC4: test form authentication failure
243            - HC4: more DavExchangeSession refactoring
244            - HC4: more form authenticator fixes
245            - HC4: create ResponseWrapper interface for PostRequest and GetRequest
246            - HC4: new executeFollowRedirect implementation and get user agent from settings
247            - HC4: cleanup from audit and fix regression, need to follow redirect after OWA authentication
248            - HC4: more authentication test case
249            - HC4: Implement single thread connection evictor
250            - HC4: improve PostRequest and RestRequest
251            - HC4: implement executePostRequest with test case
252            - HC4: new GetRequest implementation with test case
253            - HC4: more request refactoring
254            - Refactor RestRequest to use ResponseHandler mode only
255            - Refactor TestHttpClientAdapter
256            - HC4: improve RestRequest
257            - HC4: remove old HttpException and move to HttpResponseException
258            - HC4: switch to HttpGet
259            - HC4: add buildHttpException to HttpClientAdapter
260            - HC4: cleanup from audit
261            - HC4: keep statusLine in request
262            - HC4: cleanup to finalize migration
263            - HC4: convert encodeAndFixUrl
264            - HC4: Remove old HttpStatus dependency
265            - Remove HttpException dependency
266            - HC4: convert Head and Post methods
267            - HC4: convert GetMethod to HttpGet
268            - HC4: convert remaining http client 3 methods
269            - HC4: Implement create/delete folder
270            - HC4: implement Exchange WebDav search request
271            - HC4: Fix initial uri in HttpClientAdapter
272            - HC4: convert internalGetFolder
273            - HC4: refactor TestCaldavHttpClient4
274            - HC4: more test cases on session creation
275            - HC4: convert getWellKnownFolders, first working version of session creation
276            - HC4: convert checkPublicFolder
277            - HC4: get httpClientAdapter from HC4ExchangeFormAuthenticator
278            - HC4: Main test case for HC4DavExchangeSession
279            - HC4: convert getEmailAndAliasFromOptions
280            - HC4: convert getMailpathFromWelcomePage
281            - HC4: baseline DavExchangeSession for HttpClient 4 migration
282            - HTTP: Improve HttpClientAdapter, enable kerberos support according to setting
283            - HttpClient4: improve HttpClientAdapter
284            - HttpClient4: Test timeouts with proxy
285            - Refactor TestHttpClient4 with try with resource
286
287            ### Caldav:
288            - Caldav: fix https://github.com/mguessan/davmail/pull/88 EXDATE timezone issue
289
290            ### O365:
291            - O365: fix https://github.com/mguessan/davmail/pull/92 failover for null query with non https URI
292            - O365: refactor O365Authenticator and fix regressions
293            - O365: switch to new executeFollowRedirect implementation
294            - O365: refactor O365Authenticator
295            - Refactor O365InteractiveJSLogger to work with more JDK versions
296
297            ### Test:
298            - Test: improve notification dialog test
299            - Test: Improve client certificate test
300            - Improve getReleasedVersion test case
301            - Test: Improve base test cases
302            - Add new harmcrest-core junit dependency ant enable IMAP test cases
303            - Test: update junit to 4.12
304            - Run a SSL server socket
305            - Test: cleanup code
306            - Improve TestDavGateway
307            - Make AbstractDavMailTestCase abstract
308            - HttpClient: improve test cases
309
310            ### Build:
311            - Fix file name for Appveyor trunk builds
312            - Fix git svn warning
313            - try to get svn revision from git
314            - Set jacoco path in sonar config
315            - fix test-compile language level
316            - Upload coverage report to sourceforge for AppVeyor
317            - Prepare Jacoco coverage report
318            - Cleanup unused ant check
319            - Exclude Sonar working directory from package
320            - Appveyor: try to run sonar from Appveyor build
321
322            ### EWS:
323            - EWS: make getPageSize static
324            - EWS: merge PR Allow to configure EWS folder fetch page size https://github.com/mguessan/davmail/pull/79
325            - EWS: fix response handling
326            - EWS: fix O365Authenticator
327            - EWS: fix regression in O365Token
328            - EWS: handle malformed id_token
329            - EWS: refactor authenticators to use davmail.enableOidc
330            - EWS: create a new davmail.enableOidc setting tp switch to new v2.0 OIDC compliant endpoint https://docs.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison
331            - EWS: Prepare OIDC support, add v2.0 url in interactive authenticator
332            - EWS: Prepare OIDC support, decode id_token
333            - EWS: enable davmail.oauth.persistToken by default
334
335            ### DAV:
336            - DAV: MOVE returns SC_CONFLICT on missing target folder
337            - Dav: Update to Java 8
338
339            ### SMTP:
340            - SMTP: improve error message handling
341            - SMTP: fix smtp test cases
342
343            ### LDAP:
344            - LDAP: clean test case
345            - LDAP: fix dn authentication
346            - LDAP: Ber code cleanup from audit
347            - LDAP: update LdapConnection to Java 8
348            - LDAP: make parseIntWithTag protected to call it from LdapConnection
349            - Use imported Ber implementation instead of com.sun.jndi.ldap
350            - Import Ber implementation from OpenJDK to avoid compilation warnings
351
352            ### OSX:
353            - OSX: drop Growl support
354        </p>
355      </description>
356    </release>
357  </releases>
358</component>
359