Middleware Documentation deprecated
Welcome to the documentation about the inner workings of the Java-based middleware platform of OX App Suite. This technical documentation covers articles about different topics and features, grouped by different subtopics on the left.
The latest notable changes of the middleware can be found below.All notable changes to this project will be documented in this file.
8.30.0 - 2024-09-25
Added
MW-1068
: Improve support for SCHEDULE-AGENT2fd626d0
SCR-1454
: New configuration property "com.openexchange.cache.v2.redis.disableHashExpiration"323c4fa1
Changed
- IIJMX-530: Don't fail if UNSUBSCRIBE fails for IMAP-backed POP3 folders
a13200d0
MW-2191
: Upgraded to Java v21baa040d1
MW-2309
: Use new caches for schema update states and db assignments0c626dd2
MW-2330
: Replaced old context cache with the new v23c718354
MW-2335
: Transform "MailAccount" Cache to Redis13c84cf9
MW-2338
: Removed "messaging"-related functionality and APIs8cc8df6f
705f5c82
MW-2347
: Use new cache for advertisement config caching60bacf4b
MW-2363
: Removed legacy SessionD and Hazelcast-backed session storage39d5b717
MW-2368
: Disable Hazelcast by Defaultde5e5633
- Breaking Change
MW-2614
: UseBadPassword
exception for failed decryption- Also, log legacy encryption warning only once per day
SCR-1452
: Moved Java Data Objects (JDO) API to target platformec8ad9d1
- Some refactoring for the code packages in c.o.cache.v2
64cb03b6
#17
: Reintroduced soap log filter for passwords - appsuite/platform/core#1792cdfb97
Fixed
- Avoid duplicate service instance for singleton LeanConfigurationService
66a48fbf
- Perform synchronous unregistration from Dovecot HTTP Notify plugin using a lowered socket read timeout
6a4f87bb
#23
: Reverted some checks for pretty old messages that should not occur - appsuite/platform/core#239fa35f10
#25
: Restored enhanced conflict checks during attendee update operation - appsuite/platform/core#257114c95f
#29
: Check mail messages reference retrieved from cache prior iterating - appsuite/platform/core#29ac674a24
#30
: Update local file storage account reference after remembering error in metadata - appsuite/platform/core#306677a246
#31
: Prevent NPE during shutdown. Ref.12413312
#32
: Added auto-expiration of possible write lock for table filestore2user - appsuite/platform/core#3246c2abb6
52c202c9
53873901
#33
: Throw proper error if mail is not found. Ref.251098c8
#36
: Properly apply HTTP client config for iCal timezone updater - appsuite/platform/core#36814c70a8
#39
: Don't retry login attempt by default (w/ exponential back-off wait policy) when IMAP server signals UNAVAILABLE response code - appsuite/platform/core#392b5a3191
#40
: Keep user-sensitive information for isSubscribed() and getUsedForSync() - /appsuite/platform/core#40e2ae5bac
#43
: Unregister user from Dovecot HTTP Notify plugin asynchronously - appsuite/platform/core#43f00456a1
#44
: Moved creation of reseller tables to accessing bundlesa6cad0b7
#48
: Retry fetching thread-sorted messages if an inconsistent received date is detected - appsuite/platform/core#488270853b
381f39c5
#49
: Prevent possible NPE when replacing organizer in a calendar event - appsuite/platform/core#4958fbb18f
#54
: Added missing org.xml.sax dependency to MANIFEST.MFbbe6bf28
#562
: Differentiate between deputy feature being 'enabled' and 'available' - appsuite/web-apps/ui#56283447b85
Removed
8.29.0 - 2024-08-28
Added
MW-2319
: Token Login Variant for PWA Onboarding99832baa
MW-2323
: Adjust Helm Charts for Redis 7.49ca0b47f
MW-2339
: Deputy-Management via Provisioning APIc2073664
MW-2353
: Documentation for Redis and Active/Active3409b456
Changed
MW-2043
: Upgraded scribe library to v8.3.38918dd8a
MW-2360
: Added support for a special Redis instance dedicated for cache data78ef57c2
MW-2365
: Adjusted hazelcast documentationf6780571
MWB-2698
: Introduced aliases for sieve script names418def09
SCR-1425
: Removed Replacement of "email 1" by "default sender address"1c15bd25
SCR-1428
: Deprecation of JCS-based "CacheService"792aee72
SCR-1432
: Updated Netty libraries from v4.1.111 to v4.1.112c19e0a6f
SCR-1433
: Updated lettuce library from v6.3.2 to v6.4.0173351e1
SCR-1440
: Updated OSGi target platform bundles5f2c4c34
SCR-1441
: New Configuration Property "com.openexchange.oidc.staySignedIn"e254b475
- Inject 'preferred' hint for user's primary mail address within
9b32b026
SCR-1448
: Upgraded dnsjava from v3.5.3 to v3.6.177bdeed6
SCR-1450
: Removed org.eclipse.osgi.services helper bundle200225de
SCR-1451
: Updated Google Guava from v33.2.1 to v33.3.094b1f970
- Avoid recursive delete calls if PluginException occurred (2) -
194688e3
- Use compact representation for folder user properties
6e59f30d
- Use reverse order in
CalDAV:calendar-user-address-set
property for Thunderbird/Lightningdf5ffa78
Fixed
- Added checks for pretty old messages that should not occur
#23
bbb60b00
- Consider possible MX records on ISPDB look-up for a possible mail account setup
#24
a305df9b
- Optimized reading schema state (update tasks)
#10
8cb20be4
2ecd9d47
- Defer dependent capability checks
47f8b86d
- Inject fallback display name for *DAV-based subscriptions if missing
#22
a6e0cbe0
MWB-2512
: Use 'no-reply' account for synthetic push sessions6a623131
MWB-2530
: Orderly compile path to a shared folder from target user's point of view5898d475
MWB-2667
: Deny writing rules requiring unsupported capabilities55dfa3ba
8c0c8602
MWB-2701
: Replace possible space characters in URLs with appropriate URL encoded representation (%20)ec8a08f4
MWB-2702
: Properly compare user mail aliases with punycode0f78cb94
MWB-2705
: Fixed writing JSlob IDs as JSON array to channelf8178b31
- Orderly track new cache service in IMAP bundle
#8
6a991f77
Removed
MW-2367
: Remove Xing integration52ec3fa3
SCR-1426
: Removed "FilteringObjectStreamFactory" Service and parent Bundle "com.openexchange.serialization"3e051826
8.28.0 - 2024-07-31
Added
Changed
App-suite-platform-1/provisioning#2
: Avoid recursive delete calls if PluginException occurredd2e17ef2
MW-1746
: Redis Pub/Sub for Inter-Node Communicationb6cba2af
MW-2329
: Use new cache for filestores6c414a99
MW-2341
: Transform "UserSettingMail" and "UserPermissionBits" Cache to Redisa13444a5
MW-2342
: Transform "User" Cache to Redis1958a34e
MW-2344
: Replaced jcs cache with google cache13b86258
MWB-2674
: Try to add further information to createdMAIL_FILTER-0002
error to signal why authentication attempt failed7b659b20
MWB-2690
: Avoid "CopyPartRequest" and ensurex-amz-meta-x-amz-unencrypted-content-length
is set when S3 client-side encryption is enabledd922d83a
SCR-1415
: Updated Google Guava fromv33.0.0
tov33.2.1
2ba7b1d6
SCR-1419
: Upgraded ROME library for RSS and Atom feeds fromv1.0
tov1.19.0
199a4b1f
1c6e5dcd
bb4a7e40
SCR-1421
: Deprecation of "FilteringObjectStreamFactory" Service2bfd73cb
- Consolidated *DAV capability checks
bb6bb3ce
- Use logback-extension
v3.0.3
to have removal of details in superior class8dbdab0c
db5854e9
- Added retry-after header to 429 soap errors
4121cf95
- Alternative caching approach for file storage accounts
5416cd99
- Change the color and font of property fields in the http-api documentation
c6cbabfb
Fixed
IAE-59
: Include client IP address in meta information for a scheduled mail97b12d03
b6b09a38
MWB-2645
: Abort auto-login if user/context in session not founda808257e
MWB-2664
: Don't log job's execution duration if nothing has been performed63dbf1cf
3144c949
0695d5df
54646f35
7fd6139e
MWB-2681
: Properly initialize hash map8e284bfa
10032ed6
MWB-2682
: Consider configuration when writing cookie in generic *DAV servlet45be1d86
MWB-2686
: Restore previous behaviour in case non-existent context is passed2ed9d00a
MWB-2687
: Extended propertyKey column to 256 chars5c123570
MWB-2692
: Check specified iCal feed URI has a valid host componentf45df772
Core#12
: Added missing update tasks (and changesets) to documentatione723395d
Core#9
: Use proper field name for configurationsad496e4c
- Allow duplicate properties in an admin path
93ce80ba
Removed
SCR-1420
: Removed unused xmlbeans library78d2c577
- Replaced 'subscription' permission availability with capability checker
cdc1836f
8.27.0 - 2024-07-03
Added
MW-2325
: Multi-Database Support for Redisda3e7525
SCR-1383
: New Propertycom.openexchange.redis.resilientDatabase
SCR-1402
: New Columnpriority
for Database Tablescalendar_event
andcalendar_event_tombstone
b235659d
SCR-1403
: New fieldpriority
in Event model of HTTP API48e3ffef
Changed
MW-2309
: Transform Next Caches to Redis58109405
- Previous regions
FileStorageAccount
andUserAlias
are now backed by Redis cache
- Previous regions
MW-2328
: Additional (configurable) logging for some SOAP API requests36705091
MW-2337
: TransformMessagingAccount
,c.o.messaging.json.messageCache
,LDAPHostname
and Reseller-related Caches to Redis114878b4
MW-2340
: TransformFolderUserProperty
Cache to Redis9b1e0ff2
MW-2651
: Use canonical hostname when accessing distributed managed files3cc5dafd
MWB-2641
: Enhanced logging when copying a database table row fails during 'movecontextdatabase'ec85db90
SCR-1393
: Updated Netty libraries fromv4.1.106
tov4.1.111
918566ac
SCR-1394
: Updated lettuce library fromv6.3.1
tov6.3.2
97520f3d
SCR-1395
: Updated Apache Commons IO library fromv2.15.1
tov2.16.1
5add29cf
SCR-1396
: Updated Apache Commons Codec library fromv1.16.1
tov1.17.0
7c98d03e
SCR-1404
: Updated JCTools (Java Concurrency Tools for the JVM) fromv4.0.3
tov4.0.5
986656d6
SCR-1411
: Added an account index to various calendar tables for improved look-up40aaf3b0
- Preparations to selectively invalidate caches after changing
2b3be06c
- Updated integrated timezone definitions to tzdata2023d
256754a3
Fixed
MWB-2639
: Don't filterw:sdt
elements during sanitizing5cf45632
MWB-2644
: Added config option to specify whether to use HTML on reply/forward to/of text-only E-Mails if HTML is chosen as preferred message format1fa4aa99
MWB-2649
: Avoid NPEdb5c060e
MWB-2650
: Wrong FCM Push documentation03419906
MWB-2657
: Consistent value 200 for propertyAVERAGE_CONTEXT_SIZE
dce8905b
MWB-2659
: Use proper i18n service to use best-fitting translation for a user's locale06307248
MWB-2664
: Lowered periodic log message about completion status of a database clean-up job to DEBUG log level220ef5f9
MWB-2666
: Added missing import5ce65bb4
MWB-2670
: Redirect to configured logout page as fallback if session no longer exists91dc5373
MWB-2676
: Dropdetails
(aka MDC) from JSON-formatted log message ifDropMDC
marker is present in log event742918c4
8a65fcfc
Removed
MW-2245
: Web Socket Support20b517b4
MW-2265
: Removed PropertyMapManagement from user cc layercb6f485c
MW-2318
: Apache Commons Lang v2.689d0be5f
SCR-1388
: Removed obsolete bundlecom.google.gdata
0c24e04b
SCR-1389
: Remove javax.jms library7a7165bb
8.26.0 - 2024-06-05
Added
Changed
MW-2326
: Re-implemented put-if-absent for KeyDB; e.g. replaced special SET(GET) command with PX and NX option setea34eba6
MW-2332
: Export SimpleMeterRegistry4724b21f
- add io.micrometer.core.instrument.simple to the list of exported
- packages in the bundle com.openexchange.metrics.micrometer, to allow
- using it in unit tests
MWB-2622
: Added logging when events w/o recurrence are encountered during 'needs-action' generationae17204a
Fixed
- CP-514: Let authentication plugin signal to ignore the call to it - 2
da54dce7
MW-926
: Resolve user aliases in picture search, too750a0a99
9e2740d0
MWB-1582
: Use term "address book" in favor of generic "folder" when sharing contacts32cbed8c
MWB-2544
: Use the SMTP extension for transmission of large messages through chunking9d4dbeae
028fb732
6ffc33c7
37f3e930
MWB-2584
: Corrected documentationdf4d72a3
MWB-2585
: Updated documentation21c7ab76
MWB-2598
: Orderly load a transport-only mail account on user deletione0daddd4
MWB-2602
: Unable to load FCM configurationae96b8a8
MWB-2607
: Don't start immediate processing of data export task if not enabled on node/pod7c1cbf55
MWB-2616
: No extra.
if chunking of SMTP data is enabledb2e17a6c
MWB-2617
: Introducedusers_per_context
table in ConfigDB to have a direct access how many users use a certain file storagec4813b22
fca810ac
25556522
88bf687d
MWB-2626
: Drops foreign key from "infostore_document" table due to missing unique key in the referenced table "infostore" and adds an appropriate index instead51bf6cb5
MWB-2630
: Enhanced detection for potentially long running file operations07012cea
MWB-2634
: Avoid NPE when JSON data is missingff700145
MWB-2635
: Throw exception on session miss6d5ca447
Removed
8.25.0 - 2024-05-08
Added
MW-2224
: Added smtp metric collectiona5b212c1
MW-2246
: Added Special Sorting by First Name in Contacts Moduleb65da7a1
MW-2300
: Exclusive Pre-Assembly across Sites633f6b01
MW-2308
: Logout from IDP for Sessions fromDirect Grants
b254b595
MWB-2554
: Added permission documentationff950193
Changed
MW-2222
: DB TLS encryption for k8sfc64b729
MW-2263
: Introduced Redis-backed cache service having its own cache event framework (based on Redis pub/sub) and refactored existent stand-alone cache invalidation classes to that new service/framework05ea475b
MW-2264
: Transform First Caches to Redisb04537ed
MW-2266
: "Upgrading without Downtimes" in a Kubernetes clusterd032a637
MW-2314
: Removed dependency from logback-extensions to Apache Commons Lang 2.67b007ce4
- Identify sproxyd clients
95ccd0b4
Deprecated
SCR-1373
: Deprecation of Apache Commons Lang 2.6
Fixed
- CP-514: Let authentication plugin signal to ignore the call to it
7f3b0757
MWB-1957
: Grafana dashboard shows multiple server versionscac3800f
MWB-2204
: Missing API documentation for oidcLogin and oidcLogout actions of Login module516239c2
MWB-2435
: CredstoragePasscrypt not picked up in templates/typeSpecific/secret-envvars.tpl1d0578df
MWB-2530
: Added propertycom.openexchange.imap.assumeUserLocalPartForSharedFolderPath
to control if user's local part should be assumed when determining a shared folder path; e.g. assume "jane.doe" instead of "jane.doe@invalid.com"c33caa7e
- Synchronize all operations on ListLsubCollection objects
- Removed IgnoreDeprecated methods as they became obsolete with synchronous operations (see Bug#41742)
MWB-2552
: Decrypt mail prior if neededfdfa0087
MWB-2555
: Deny scheduling a mail for transport if Guard-protectedaa2c61c3
MWB-2556
: Fixed typoac08c82f
MWB-2562
: Avoid issuing unused events for last gone session of a context/user876e33b3
MWB-2563
: Ensure JSON data is orderly flushed to output streamc11400a0
MWB-2564
: Corrected property names in documentation articlef8399bd3
MWB-2567
: Introduced configurable file appender for logback.xml60e230fb
MWB-2571
: Use full-fledged HTML parser to locate possible <img> tags inside HTML content22f36c8e
MWB-2577
: Com.openexchange.gdpr.dataexport.impl bundle does not start without additional configurationb7e8e048
MWB-2582
: Do not transform transparent GIF images4d9afa36
Removed
MW-2042
: Removed Internal OAuth Authorization Server557f2931
SCR-1378
: Removal of Propertycom.openexchange.redis.enabled
c29f0fe2
ae91dee6
8.24.0 - 2024-04-03
Added
MW-2174
: Makecom.openexchange.user.contactCollectOnMailAccess
andcom.openexchange.user.contactCollectOnMailTransport
config-cascade aware.624c22e1
MW-2251
: Added REST-API and job to create pre-assembled contexts. Expose metrics for currently existing pre-assembled contexts66712325
MW-2261
: Optionally Exclude Disabled Contexts inlistcontext
e48282e1
Changed
MW-2109
: Migrated from GCM to FCM for drive events and generic PNSa9a09231
- Added the Firebase SDK
- Removed old GCM implementation and bundles
MW-2220
: Improve example script to create certificates5e87d0a8
MWB-1582
: Preliminary introduce new strings when sharing address books4e350ef4
MWB-1800
: Enforce table order in JOINs if applicablee66c994f
3ef9f828
MWB-2488
: Documentation for on behalf scheduling3f26516d
SCR-1366
: Updated Spring Framework from v5.3.21 to v6.1.44edac9b1
5e76a6a3
SCR-1367
: Allow implementations of BasicAuthenticatorPluginInterface to signal commencing with the next candidate06647235
SCR-1370
: Added option to Redis configuration to specify a compression method068abc53
c49c7115
da2cc680
Fixed
MWB-2525
: Fixed wrong imports in commons compress. Will be fixed upstream with 1.27.091d657d9
MWB-2545
: Use correct variable to pass number of contexts to pre-assembleebd3ee38
Removed
8.23.0 - 2024-03-07
Added
MW-2220
: Add Helm chart support for running Grizzly with TLS531d36a6
MW-2223
: Add weakforced package per default4df6655f
MW-2225
: Add missing services health check64258357
SCR-1351
: New propertycom.openexchange.health.noServicesMissing.enabled
3097661d
Changed
MW-2144
: Deprecate the in-memory SessionD and Hazelcast session storage #20b5c8a91
MW-2238
: Plugin Handling for Pre-Assembled Contexts63e82bdf
MW-2250
: Have vital login infos available throughout sitesdcec9938
MW-2253
: Use Pre-Assembled Contexts in Automated Testsda30530c
MWB-2482
: Specify timeout in milliseconds to avoid excessive memory usage in unit testad969e29
SCR-1345
: Update Google Guava from v32.1.3 to v33.0.0057dbbe8
SCR-1348
: Update Amazon Java SDK from v1.12.487 to v1.12.66177de9570
688017ce
SCR-1354
: Update Apache Commons Codec library from v1.15 to v1.16.1b7eaa81b
b54dc90c
SCR-1355
: Update Apache Commons Codec library from v1.5.0 to v1.6.0ebc6b449
SCR-1356
: Update Apache Commons Exec library from v1.3 to v1.4.0cfe36b15
SCR-1357
: Update Apache Commons Codec library from v2.11.0 to v2.15.1077b4d52
SCR-1358
: Update Apache Commons Lang3 library from v3.12.0 to v3.14.07dda379d
SCR-1359
: Update a bunch of bundles in target platform8a0d9575
701781e3
SCR-1361
: Update Pushy library from v0.15.2 to v0.15.453df5b64
SCR-1362
: Update metadata-extractor from v2.18.0 to v2.19.0ed9b5d99
SCR-1365
: Support new property to specify connection lease timeout when waiting for a free connection in poolf4987873
- Update Gotenberg image to 8.1.0
2efb0c98
- Update Gotenberg image to 8.2.0 and chart to 1.1.0
a2707740
Fixed
MWB-2398
: Periodically check and remove orphaned cookies referencing no longer existing sessions from requests35ec1789
MWB-2420
: Support parsing address string with multiple opening angles '<'; e.g. "<jane@nowhere.com>"c0c6edcf
MWB-2482
: Avoid excessive HTML processing w/ Jericho HTML parser814cb61d
MWB-2485
: Specify core-mw chart resources limits and maxHeapSizeea29bf46
MWB-2496
: Mitigate with possiblejava.io.IOException: Resetting to invalid mark
when writing ZIP entries to file storage location. Added possibility to have ZIP archive compiled for a certain module being spooled to a local disk.6a7d3d67
MWB-2497
: Ensure schema option is not set for pre-assembled contexts94b73757
MWB-2499
: Add archive + schedule to mail/folder paths89361c4a
- This is necessary to support the permanent switch to these paths
MWB-2502
: Add missing archive httpi api docue6aea42e
MWB-2504
: Fix personal parts not in quotes in email addresse9593fd5
MWB-2509
: Don't mess-up MIME structure by adding multipart/* parts through attachment API343cb2f8
MWB-2511
: Look-up draft mail by cached association if possiblefd2421dc
MWB-2515
: Better handling of aborted attachment upload when composing a mail92f40134
MWB-2516
: Track SMS provider implementation as optional service1c027e50
MWB-2517
: Upgraded MaxMind GeoIP Libraries (SCR-1349)f1b1f9be
MWB-2525
: Update Apache Commons Compress library from v1.21 to v1.26.027f90d39
478d4606
MWB-2528
: Release acquired connection as soon as possible (e.g. prior to loading file storage data)2d6d4663
MWB-2531
: Filter possible parent folder from subfolder listing70a9d207
2440686f
MWB2503
: Unmangle folder id before parsing it to int9c3e089a
8.22.0 - 2024-02-07
Added
MW-2022
: Tests for Helm Charts27853eb2
e56b0e0a
MW-2088
: Additional Analyzers for the App Suite Advanced Routing Stack5d17f425
MW-2125
: Moved helper methods to utility classeed2d786
- UI-125: Set
plugins/upsell//driveAd
toprotected
7f045ea8
Changed
MW-2145
: Use cluster map service throughout Middleware code9bcfd1f9
MW-2216
: Dropped AJP route and need for JSESSIONID cookie (and HTTP session respectively)66647c56
MW-2226
: Remove ignore action for unknown CU3f1d0227
MW-2229
: Use pre-assembled contexts on context creation814bf8ea
MW-2268
: Change copyright headers back to Open-Xchange GmbH6a15c8d6
c68c8e61
b4b7616f
MWB-2430
: Don't retry deleting the same events repeatedly when clearing a folderdfaa4dbf
MWB-2466
: Improved error message in case cryptographic functionalities are requested, but no appropriate features/modules (OX Guard) are installed/availablede3b459b
OXUIB-2704
: Apply requested range when merging results from808821fa
- Log some repeatedly occurring messages only once per day
0d141908
a8aea518
9fc93733
SCR-1340
: Updated Jackson & Fabric8 libraries11643ffe
SCR-1341
: Added new lean property to possibly add Open-Xchange server information to HTTP responses080a0c13
SCR-1343
: Updated Netty libraries from v4.1.97 to v4.1.106baa9755a
SCR-1344
: Updated lettuce library from v6.2.6 to v6.3.14a61b713
- Updated logback-extensions from v2.1.10 to v2.1.11
1c3444db
2807ac93
- Updated Gotenberg image from v7.9.2 to v8.0.3 to a custom image without MS fonts and chart from v0.6.0 to v1.0.1
Fixed
MWB-2250
: Send proper notification mail to user in case data export failed due to missing content in selected module(s)3957b8c0
MWB-2311
: Include events with unset TRANSP when loading overlapping events from storage5bcc8210
MWB-2401
: Send REPLY if comment is removedd8646ca8
MWB-2414
: Use default object metadata when initializing CopyObjectRequest3b991f6c
MWB-2420
: Don't advertise empty address string on corrupt address0d2475a5
MWB-2425
: Improved SQL statement and added loggingf42fe4d3
MWB-2434
: Don't empty trash folder in "fire & forget" fashion if processing takes place through (AJAX) job queue. Orderly await completion then.279bde05
MWB-2439
: Ensure attendee comment is set on REPLY50febc36
MWB-2444
: Support for arbitrary settings in PodSpec is missingbb464b2a
MWB-2452
: Specify reasonable timeout when checking for possible shared attachment folders or scheduled mail referencesc755a394
MWB-2456
: More lenient insert into database on duplicate attempt014115e3
MWB-2458
: Properly apply UID conflict strategyd552d3bb
MWB-2460
: Advertise proper error message to client on exceeded quota18a5dd56
MWB-2461
: Updated restricted scopes in "Drive Sync App" example6a793fc4
MWB-2464
: Restored "Upgrading Without Downtimes" article92b32f13
MWB-2467
: Use context id as fall-back if no context name setd358aead
MWB-2470
: Adjust 'login2user' table when using preassembled ctx6aea8bb2
SCR-1339
: Added methods in 'com.openexchange.admin.storage.interfaces.OXUserStorageInterface' for using pre-assembled contexts
MWB-2471
: No replacement of illegal Content-Id identifiers9a70859a
MWB-2482
: Avoid excessive HTML processing w/ Jericho HTML parserf04860db
8.21.0 - 2024-01-10
Added
MW-2118
: Implementation: REST Interface for Log Configurationed20e40d
MW-2119
: Extend Log Configuration with "includestacktrace" and "socketLogging"6776d5a2
MW-2190
: New metrics for provisioning aspects (PluginInterfaces, storage- and API-calls)b0b135a6
MW-2226
: Send CANCEL Message when Declining Party Crasherfb9fd9e1
Changed
DOCS-5156
: Changed registry location for pdftool40d95a78
MW-2143
: Improve user update workflow7bd853b9
MW-2192
: Restrict Cleanup Jobs to Site-local DB Schemas3f89ea99
MWB-2422
: Optimistically gather updateable references in database when moving context file storages9ae9d6fb
Fixed
MWB-1653
: Support for ox_props debug flagf3b8f1ac
MWB-2285
: Avoid NPEfb269b44
MWB-2379
: Fixed attachment references in HTTP API documentation1fce8b44
MWB-2392
: Avoid excessive look-up by regular expression3ba026f4
248f53fb
MWB-2393
: No regex-based processing on invalid Content-Id056219b9
d6b8f40e
MWB-2395
: Avoid setting NULL parameter for NOT NULL column in table 'del_user'1fc2d875
MWB-2399
: Only announce "scheduled_mail" capability for a composition space if all preconditions are metb177d6f2
MWB-2403
: Ensure to only re-assign "changed_from" column upon user deletione8141bbb
MWB-2410
: Added config option to avoid using IMAP entity's display name when listing shared folders1d05f312
MWB-2415
: Correctly hand down initialized connection to database24f5743c
MWB-2416
: Guarded access to mail structure's content-type and -dispositionae507b3a
MWB-2417
: Write mailbox name as UTF-8 if IMAP server advertises "UTF8=ACCEPT" capability8308f025
MWB-2421
: Ensure that warnings are of exception category WARNING6e5c2d72
MWB-2432
: Orderly pay respect to possible UTF8 support when writing mailbox names to crafted IMAP commands6ba3f6d6
- Added missing yaml docu files
ebfa6550
8.20.0 - 2023-11-29
Added
MW-1994
: Introduced scheduled mail feature318e13b9
40809864
1ca1ede2
MW-2056
: "Forward" Appointments via Email0372cb66
MW-2088
: Additional Analyzers for the App Suite Advanced Routing Stack4b5d6d31
MW-2112
: Request Analyzer Implementation for Tokens Login and Drive JumpMW-2135
: Request Analyzer for "Advertisement" REST endpointMW-2133
: Request Analyzer for Dovecot PushMW-2136
: Request Analyzer for config-related "Preliminary" endpointsMW-2134
: Request Analyzer for "Admin" REST endpointsSCR-1302
: Added context_id field to TokenLogin json responseSCR-1284
: Add parameters to drive jump redirect for request analyzing
MW-2173
: Add logging for writeable database access to non-local segments6387936e
SCR-1309
: Added lean propertycom.openexchange.database.logWritesToNonLocalSegments
Changed
- DOCS-4961: Adjusted default of "maxSize" for image transformations to 20MB (
SCR-1316
)ecace03a
MW-1595
: Update documentation articles for v8ff5fdb37
MW-2139
: Restrict Pre-Upgrade for Groupdware DB Schemas to Site-local DB Schemase17a00d7
MW-2144
: Deprecate the in-memory SessionD and Hazelcast session storage8aa2d519
MW-2170
: Updated gotenberg chart dependency and enabled read-only filesystemf04d8c8c
MWB-2345
: Reduced amount of session parameter names in log message187887a7
- Enhanced error response for *DAV requests
0bc4811a
SCR-1317
: Added configuration options to enable debugging/profiling SQL queries535206ed
SCR-1325
: Updated Google Guava from v31.1.1 to v32.1.3b0339982
SCR-1326
: Updated Hazelcast from v3.5.1 to v3.5.6f05c206c
SCR-1328
: Removed CPU Resource Limit91efe276
Fixed
MWB-1730
: Orderly check if organizer event copy is targeted by scheduling messages (2)cfd168d4
MWB-2328
: Use proper MySQL v8 compatible syntax on user creationa86108c0
MWB-2354
: Ordlery deal with shared folders from different owners with the same display name50143d91
MWB-2358
: Drop PRIMARY KEY prior to modifying column belonging to PK, then re-create PRIMARY KEY6592349d
MWB-2360
: Mailfilter module not accessible via OAuth (cherry picked from commit 49f1551cc56bbe06bf422a7a6dbeaabb50d38842)552a0d3f
MWB-2366
: Respond with "Search too complex" error if applying a wildcard pattern to a mail search expression takes excessively long93eeba9b
MWB-2367
: Use simple glob matching for file/directory exclusions, use guarded matcher for regex patterns sent by legacy clientsa8f6643f
MWB-2368
: Advertise "search_in_folder_name" and "search_by_term" for "infostore" database foldersc00a21b0
MWB-2370
: Propagate master changes only into exception events the user actually attendsbafc8cd1
MWB-2372
: Folder API requests are not working with "Application Specific Passwords"99a61a51
MWB-2374
: Orderly handle Unified Mail messages when examining a message for scheduling informatione45cabd5
MWB-2376
: Indicate correct part number in multipart upload to S3f6e52b17
MWB-2380
: Generate exception events as needed for unsolicited REPLYs to recurring event instances0abda2b6
MWB-2382
: Select proper recipient addresses on reply to own mailsa9f10444
SAZ-4
: Use singleton connection to user database for all write accesseseb0836a5
8.19.0 - 2023-10-24
Added
MW-2088
: Middleware components for the App Suite Advanced Routing Stack- Added new bundles for the request analyzer feature (
SCR-1241
) - New properties for Segmenter Client Service (
SCR-1277
) - Upgraded the gson library from 2.9.0 to 2.10.1 (
SCR-1266
) - New REST endpoint exposed at
/request-analysis/v1/analyze
to analyze client requests and associate them with segment markers - Added first batch of request analyzer implementations covering the most common client requests
- Introduced
request-analyzer
service role to deploy and scale conainers independently - Implemented segmenter client API to determine active site for a certain segment
a2705aa2
- Added new bundles for the request analyzer feature (
Changed
MW-2094
: Added the 'LastModified' and 'ModifiedBy' metadata to each Sieve rule.5197be2a
MWB-2296
: Only allow certain URI schemes for external calendar attachments (SCR-1307
)5277863a
MWB-2345
: Enhanced logging, added fallback for missing response error code from auth server3da0018d
e2332e6a
- Removed vulnerable lib sqlite-jdbc and provided needed dependencies by plain snappy-java lib
3d9e92d3
- Updated core-mw chart dependencies and enabled read-only filesystem for gotenberg
075e07d3
- Updated vulnerable lib commons-fileupload 1.4 to latest version 1.5
353845aa
- Updated vulnerable lib jackrabbit-webdav 2.19.1 to version 2.21.19
408e8dd3
- Updated vulnerable lib net.minidev:json-smart and (its dependency accessors-smart) 2.4.8 to version 2.4.11
3b7dae91
- Updated vulnerable lib snakeyaml 1.33 to version 2.2. Depending libraries (e. g. jackson-*) required an update too
d48c6679
- Updated vulnerable okio-jvm 2.8.0 lib to latest 3.5.0 and cleaned up dependencies (added okio, updated okhttp + kotlin*, test dependencies)
0aae47f3
- Removed default values for chart dependencies and link to source
9861882b
Fixed
MWB-2220
: use existing functionality for secret properties3e12ce12
MWB-2250
: No success notification if there are no result files263f92eb
MWB-2283
: Don't try to assign a new category when moving to "general" category10e99977
MWB-2296
: Check potential UID conflicts for newly added attendeesd075d98f
MWB-2297
: Prefer display name for object permission validation errors43e8d4b8
MWB-2300
: Optimized moving folder (and its subtree) to trash8ef3f975
0b68cc47
MWB-2309
: Cross-check resource attendees when evaluating 'all others declined' flag in list responses154ae880
MWB-2310
: "infostore?action=upload" fails with "EOF" error on Appsuite 8269accfb
c2840ffa
MWB-2322
: Probe for name of the function for geo conversion (3)12d7d73f
MWB-2333
: Sanitize broken/corrupt Content-Type string when parsing multipart content22a9393b
MWB-2336
: Aligned naming of settings to the ones used by UI86bf97bd
MWB-2337
: Ignore possible "NO [NOPERM]" response when issuing a METADATA command to retrieve deputy information from all IMAP folders3ce1f58a
MWB-2339
: Ensure privisioning related log properties are dropped once message has been logged35022c92
MWB-2343
: Preferably consider 'X-MICROSOFT-CDO-INTENDEDSTATUS' when parsing event transparency from iTIP2e04a819
MWB-2349
: Orderly display plain-text mail w/ alternative text partsbaefd0a8
711ea55b
MWB-2352
: More user-readable error message in case message flags cannot be changed due to insufficient folder permissions91188e1e
- Enhanced detection for images with data URIs
997ed5ff
MWB-2353
: No global lock when initializing in-memory folder mapf7fef269
Removed
MW-2169
: Removed preliminary sharding extensionSCR-1311
: Removed obsolete Rhino Scriptingebef2cd8
SCR-1312
: Removed obsolete bundle07bc8d6c
8.18.0 - 2023-09-27
Added
MW-2010
: Support for Webhooks8f93c95f
79d3fc0a
39b017d3
MW-2116
: Added option to use session parameter as a secret source.0c1b50d4
- Mail: Support dedicated column for user flags to be queried by action=all or action=list request
86c22aa5
Changed
MW-2120
: Convert Mail User Flags to/from UTF-8b130a436
MW-2124
: allow subscribe/unsubscribe actions via oauth1df8ddf8
MWB-2315
: Remove user-specific templates9ef5570d
SCR-1283
: Enhanced redis hosts configurationc6f1ef04
SCR-1285
: Updated Netty NIO libraries from v4.1.94 to v4.1.97ca90cc77
d1f792bf
SCR-1286
: Updated lettuce library from v6.2.5 to v6.2.646e37ee3
- Don't require 'infostore' module permission for mail pdf export
1afcccae
Fixed
MWB-1730
: Process CUs without calendar accessefce0922
MWB-1781
: Set MySQL client protocol to SOCKET for localhost connectionsf2cff023
MWB-2286
: not very helpful error message in case features.definitions is not defined77afac3d
MWB-2287
: Orderly detect possible "mail not found" error while checking for referenced mail on reply/forward643153ce
MWB-2290
: Ensure "INBOX" folder is translated, too682f34a4
MWB-2294
: Socket Logging not working108ea815
MWB-2298
: Changed column 'propertyValue' of table 'subadmin_config_properties' to be of type TEXTaa35c6d8
MWB-2299
: Handle unsupported image format as illegal image upload89635a00
MWB-2306
: Extend the "login" column for "user_mail_account" and "user_transport_account" tables2fe842ac
MWB-2307
: Don't use config-cascade cache if scope preference has been setb4f7aa7b
MWB-2313
: Check queried in-compose draft messages against cached onescb82807f
a6ed27f4
MWB-2316
: Broken link in "Export PDF" documentationf87b10e8
MWB-2317
: Capability is missing in "Export PDF" documentation0e96d602
MWB-2319
: Don't limit POP3 server response when querying UIDLs of available messages55899950
MWB-2320
: Updated JUnit to 5.10.0 to support Eclipse 2023-09e5d2942f
MWB-2321
: Removed persistence section in values.yaml41b31013
MWB-2324
: Restored parsing of erroneous token refresh responsesafaad652
Removed
Security
8.17.0 - 2023-08-30
Added
Changed
MW-2003
: Handle Time Transparency of Appointments per User- Added
transp
field to attendee - Handle transparencies set via CalDAV clients
12aee31
- Added
SCR-1270
: Updated Google API Client libraries800dc9f
MWB-2259
: Added more DEBUG and INFO logging for GDPR data export39f74ae
ab77d3e
SCR-1275
: Upgraded MySQL Connector for Java from v8.0.29 to v8.0.3376146ce
Fixed
MWB-2266
: Extremely long-running requests are not terminatedf9e86fc
4bce9cd
e434d32
4f05fa1
cc0833b
38fea46
2be0655
d3bd8f2
f85638f
d494263
- Hard timeout of 1h for tracked requests of any kind & hard timeout of 60 seconds for mail compose related communication with primary mail backend
- Introduced wait time for concurrent operations. If elapsed, the operation is aborted
- Use Apache FreeMarker template engine with safe configuration
MWB-2242
: Take over selected filestore id properly during user creationMWB-2249
: properly disable context during filestore move92e1649
MW-2094
: Backwards compatibility for extra metadata in sieve scriptsdfee773
MWB-2275
: Yield cloned objects from Caching LDAP Contacts Accessf4d0b36
MWB-2250
: Added sanity check for Task Status.1858544
MWB-2272
: Explicitly LIST a folder once not contained inLIST "" "*"
queried from IMAP serverab95588
MWB-2265
: Prefer to use config-cascade-wise configured value forcom.openexchange.imap.imapSupportsACL
c01a70a
MWB-2274
: Properly encode dynamically inserted part of LDAP folder filters91fe39e
MWB-2277
: Changed displayed error messages according to customer's suggestion7754cad
MWB-2242
: Corrected invocation for 'list_unassigned' in filestore08481d7
MWB-2280
: Reset attendee transparency on rescheduling2f13573
Security
8.16.0 - 2023-08-01
Added
ASP-131
: Implemented a MailExportService that converts e-mails to PDFsSCR-1235
: Introduced a new action to the 'mail' module for exporting mails as PDFsSCR-1236
: Introduced new properties for the MailExportServiceSCR-1237
: Introduced new properties for the CollaboraMailExportConverterSCR-1238
: Introduced new properties for the GotenbergMailExportConverterSCR-1239
: Introduced new properties for the CollaboraPDFAConverterSCR-1240
: Introduced a new capability to activate the PDF MailExportService4d0de04
MW-2036
: added contact collector documentation5441175
MW-2073
: Log any HTTP header852548b
MWB-2238
: allow to configure a purge folder for trash deletion- The property com.openexchange.imap.purgeFolder allows to configure a parent folder for renamed trash folder. If one of those folders is configured then the trash is not deleted by the middleware itself.
f870dcc
- The property com.openexchange.imap.purgeFolder allows to configure a parent folder for renamed trash folder. If one of those folders is configured then the trash is not deleted by the middleware itself.
- Add missing configuration for new packages
c8651ec
Changed
- Improve markdown for core-mw chart
6518c42
MW-1862
: Upgrade encrypted data dynamically during usage- Throw exception if legacy encryption is detected in CryptoService
- Services/storages detect legacy encryption by this exception and recrypt secrets themselves (by using async task)
- If shared item protected by secret with legacy encryption is accessed, use LegacyCrypto and log this event (not possible to recrypt here)
- When users logs in, all items shared by him are collected and checked if secrets needs to be recrypted
SCR-1233
: Update encryption for passwords of anonymous guest usersd5843c4
MW-1840
: Reworked the CryptoService- changed the encrypting algorithm to AES/GCM/NoPadding
- deprecated the encrypt and decrypt methods with the old mechanisms
- removed default salting - Now callers are responsible for their salts
- introduced fallbacks for the old mechanics
MW-1894
: moved CryptoUtil to c.o.java, replaced all instances of SecureRandom with the centralised version7a3e3e5
MW-1861
: Use Implicit Salt in CryptoService- Utilise argon2i for password hashing
- Use the legacy crypto for the Key-based methods
- Let the callers dictate the byte size for salt and iv
- Use a 96bit key for IV
- Re-create secure random after a specified amount of time
- Use implicit salt and IV in CryptoService
2faf2ca
SCR-1252
: Updated Netty NIO libraries from v4.1.89 to v4.1.948c7eb32
SCR-1247
: Updated pushy library from v0.15.1 to v0.15.28365cff
SCR-1245
: Updated metadata-extractor from v2.17.0 to v2.18.0bd4e29c
SCR-1253
: Updated lettuce library from v6.2.3 to v6.2.5731ca0b
SCR-1246
: Updated Google Guava from v31.1 to v32.1.11cbe1a4
SCR-1231
: Updated OSGi target platform bundles2a0ea4e
MWB-2208
: Do log possible IMAP protocol errors while trying to acquire a part's content8867c1b
SCR-1255
: Updated Apache Tika library from v2.6.0 to v2.8.0d19b0fc
SCR-1256
: Upgraded Javassist to 3.29.2-GA6a6ac84
SCR-1244
: Updated htmlcleaner from v2.22 to v2.29ee140df
SCR-1243
: Updated dnsjava from v3.5.1 to v3.5.2558227a
Removed
Fixed
MWB-2258
: Adjust 'credentials' table for enhanced crypto serviceSCR-1267
: Extend password columns in db to store encrypted passwordse6cdc21
MWB-2253
: removed unused import804a806
- to fix not working imageconverter and documentconverter
MWB-2252
: Keep possible HTML comment markers when examining CSS62add69
MWB-2251
: Prefer configured call-back URL regardless ofdf0ed24
- applicable dispatcher prefix
MWB-2186
: The upload of big files gets slower and slower (against MW 8.x)d55359b
0efa733
- properly load reseller service on demand
3166ed3
MWB-2228
: Move EventsContactHalo into com.openexchange.halo.chronos bundle8171cd7
MWB-2221
: Append additionally available plain text content to existent one738b68c
MWB-2184
: Add support for extraStatefulSetProperties and make use of ox-common.pods.podSpec92f6ce9
MWB-2240
: Don't output inline images as attachment8de296c
MW-2203
: Omit OS version for web clientsfca25d2
MWB-2228
: Move contact halo into com.openxchange.server bundle691da48
MWB-2231
: Confirmation buttons not working when inviting a person to a series exception19f8753
MWB-2248
: Pass proper range when querying messages from contained sub-accounts if Unified Mailf9c8829
MWB-2227
: Attendee cannot be re-invited to occurrence of event series553bb34
MWB-2233
: Removed ulimit configuration from start script128ba0b
MWB-2241
: Lowered log level to DEBUG when moving active/idle sessions to first short-term session container82938e9
MWB-2223
: convert all images with CID for the html bodyc7776e1
MWB-2210
: Consider virtual folders when getting attachments through chronos moduled992d75
8.15.0 - 2023-07-05
Added
MW-2045
: Introduced separate bundle for parsing a schedule expression and for initiating periodic tasks. Refactored database clean-up framework to have a "maintenance" window, in which execution of general clean-up jobs is permitted. It also accepts custom clean-up jobs having their own schedule.8b9bb19
MW-2020
: Dedicated simple HTTP liveness end-point for early access to liveness check & await availability of database during start-upa476d76
MW-1084
: Added support for segmented updates with OIDC2277d3a
MW-2073
: Log any HTTP header6bdd0d5
Changed
MWB-2212
: Allow specifying deferrer URL with pathcab25e7
MWB-2200
: Output JSON session representation if it becomes too big118f0db
MWB-2059
: Improved access to queried message range in case IMAP server does not support SORT capabilityfffe20c
DOCS-4766
: Include pdftool from docker image4d9d0ad
- Enhance session representation managed in Redis storage by user database schema
3798214
- Enhance session representation managed in Redis storage by segment marker (that is the target database schema by now)
c008e24
MWB-2214
: Improved error handling in case ajavax.mail.FolderNotFoundException
occurseb5a9f1
Fixed
MWB-2193
: missed to remove deprecated servlet path to admin API.- removed servlet path registration for obsolete path
- removed obvious parts related to AXIS2
017321e
MW-2050
: Refactored message alarm delivery worker to orderly use database locksc99b0b5
MWB-2130
: Try to perform hard-delete by delete-through-renamedb8afce
MWB-2182
: Fixed typo "(E|e)xcpetion" in codeb054b35
MWB-2130
: Try to perform hard-delete by delete-through-rename54ac301
MWB-2201
: Do translate standard folders of secondary accounts as wellb549cf4
MWB-2196
: Pay respect to order parameter when sorting contacts by special sorting1db09a3
MWB-2168
: Support AWS S3 IMAP role usingAWS_WEB_IDENTITY_TOKEN_FILE
environment variable2b35ea8
2d9ad76
MWB-2187
: Add necessary imports61dd61e
51eb12f
MWB-2181
: Fixed possible null dereference15519ca
f059c8d
MWB-2187
: Assume configured IMAP host for IMAP authentication does not need to be checked against blocked hosts (seecom.openexchange.mail.account.blacklist
)0971c88
MWB-2189
: Orderly close database statements083f2c3
MWB-2199
: Mention the affected YAML file if an invalid format is detected1b4a086
MWB-2178
: Handle possible null session on account retrieval357cc79
MWB-2045
: Omit specific OS version for macOS clients (2)78a60c1
MWB-2194
: Fixed typo in property descriptionb71221f
MWB-2179
: Orderly handle iTip request without method58fbf02
MWB-2180
: Check for possible null return value when looking-up a user with invalid user identifier44c3ede
MWB-2185
: Use SMTP default settings when changing a user's assigned SMTP serverd1c73cb
MWB-1764
: Don't check against blocked hosts/allowed ports when obtaining status for subscribed mail accounts2e7f30a
MWB-2214
: Try to re-open folder in case ajavax.mail.FolderNotFoundException
occurs (IMAP folder not LISTed, but SELECTable)d60a70c
8.14.0 - 2023-06-06
Added
MW-1545
: Option to hide own Free/Busy time- Users can now configure whether their free/busy data is exposed to others (values
all
,none
,internal-only
) - Appointments that are visible by other means (shared folder, common participation) continue to be visible
- Default value of setting is
all
, configurable and protectable (SCR-1197
), and exposed to clients in JSlob (SCR-1198
)e5d91c8
- Users can now configure whether their free/busy data is exposed to others (values
MW-1981
: Added caching to the resource storageed81544
SCR-1213
: Introduced event flag 'all_others_declined' to indicate if one might be alone in a meetingae51f2c
Changed
MW-2007
: Remove man pages from image85e335d
SCR-1219
: Upgraded JSoup library in target platform (con.openexchange.bundles) from v1.15.3 to v1.16.14d3cbc5
INF-173
: Disableopen-xchange-dataretention-csv
by default9048c7d
Fixed
MWB-2160
: Avoid excessive parsing of E-Mail addresses possibly containing CFWS personal names; e.g.<bob@example.com> (Bob Smith)
2fb55a6
2ed855c
MWB-2150
: Don't expunge messages from POP3 storage that could not be added to backing primary mail storage6cf89a7
MWB-2156
: Make DAV UserAgents configurableMWB-2158
: Allow all folder names for iCAL feeds94c0f36
MWB-2149
: Prepare refreshing of subscriptions in a blocking manner to avoid having underlying HTTP being being recycled1bb9343
MWB-2171
: Split orphan instances on import2db7d02
MWB-2167
: Offered parameter and config option for sanitizing CSV cell content on contact export8b1d684
MWB-2137
: Unable to Delete Contacts Account if Implementation Missing883b9bd
- Redis Session Storage: Use
tags
to differentiate between common and brand-specific session metrics6655f6f
MWB-2144
: Disabled Hazelcast-based session test since Hazelcast has been replaced by Rediscab9736
MWB-2161
: Allow relative paths in yaml file names9dd17f3
MWB-2162
: Limit number of considered filestore candidates to a reasonable amount when determining the filestore to use for a new context/usereb9e0ca
c9b4b4d
MWB-2139
: Check a session's origin for both - guest and application-specific authentication - prior to validating mail access' authentication data43229c2
MWB-2153
: Test forapplication/x-pkcs7-signature
as well asapplication/pkcs7-signature
e99052d
MWB-2165
: Keep quotes in local part of an E-Mail address when extracted from ENVELOPE fetch itemafdece9
57df52f
- Prevent invalid Resource Names for new CalDAV Collections
c7fae63
MWB-2143
: Acceptharddelete
parameter to let client instantly delete a previously opened composition spaceec80711
8ad2a99
MWB-2159
: Avoid unnecessary error in case of attempting to remove an already dropped sessiona9e1914
c4ef016
MWB-2138
: DAV file upload fails with redis session storage364df81
MWB-2149
: Prepare refreshing of subscriptions in a blocking manner to avoid having underlying HTTP being being recyclede5da60b
MWB-2164
: Use header for authorization instead of query string4634856
MWB-2150
: Follow up, reset parameter index before re-using6370ec6
MWB-2145
: NumberFormatException on partial file upload1feeed1
8.13.0 - 2023-05-03
Added
MW-1909
: iTIP Analysis and Apply actions for Resource Notification Mails- Scheduling mails to/from booking delegates of managed resources are sent as iMIP messages
- Introduced additional header
X-OX-ITIP
for quick identification of such mails, obeying unique server id (MW-1405
) - Existing iTIP analysis and apply workflows were extended accordingly
- Consolidated notifications and scheduling messages and their transport providers
- Introduced property
com.openexchange.calendar.useIMipForInternalUsers
to switch to full iMIP messages for internal receivers generally (SCR-1191
)91c0491
MW-1908
: Send Calendar Notifications to Resource Owners- Booking delegates now receive mails upon new, modified, deleted events with the resource
- Organizers now receive mails upon replies for their booking requests
SENT-BY
property of originator/recipient as well as mail'sFrom
/Sender
header are set appropriatelyc9b28c4
MW-1405
: Introduced a unique server identifierd891c9d
Changed
MW-1913
: Changed mail push config to prevent multiple notifications
Deprecated
Fixed
MWB-2124
: Change PRIMARY KEY through creation of a temporary table if the attempt to drop PRIMARY KEY is prohibited by MySQL server78d6f9a
- IMAP: Allow fast
EXPUNGE
of trash folder in "fire & forget" fashion29c12f9
3fc0079
MWB-2118
: No Option to prevent creation of Guest Users with Specific Email Addresses595c926
MWB-2110
: Proper imports of Netty IO packagese1a850d
MWB-2125
: Do not batch-delete more than 1,000 objects from S3 storage using DeleteObjects request204ef8e
MWB-2045
: Omit specific OS version for macOS clientsb0c9b40
MWB-2129
: Orderly surround column name with backpack characters '`'bfc75b7
MWB-2121
: Properly check master authentication first for getData calldcca450
MWB-1893
: Error when deleting appointment series with multiple different organizersa9dbced
MWB-2122
: Update lastmodified timestamp when decrementing use count917e8a0
MWB-2119
: Optimized cleanup job & settings52068af
MWB-2128
: CalDAV: Unexpected runtime exception on REPORTf3bda8b
MWB-2116
: Correctly use commands for POP36b8749c
- IMAP: Set proper status for IMAP
AUTHENTICATE
command89c0766
MWB-2095
: Conflicting folder "Userstore" exposed to Drive Clients29c3373
MWB-2127
: Re-adding a resource leads to a permission error33b804d
MWB-2103
: Missing the verb in calendar invitation email template for it_IT822aafc
MWB-2120
: Fixed the documented default value forcom.openexchange.oidc.hosts
5427c82
MWB-2134
: Don't return an unmodifiable instance of java.util.Map186e9b1
MWB-2030
: Orderly do set session- and share-cookie when resolving share linka417c17
MWB-2090
: Enhanced the documentation to warn about potentially vulnerable password change scripts42334a4
- Removed duplicate dot in internal password change notification
c9d1baa
Security
8.12.0 - 2023-04-03
Added
MW-1747
: Introduce Redis-backed sessions service988cb4e
c3c7177
b257128
434eecd
MW-2029
: Introduced metrics for Redis session storage12f8ebc
MW-1841
: Allow enforcing 'STARTTLS' for IMAP, POP3, SMTP & sieveMW-2029
: Introduced metrics for Redis session storagebbc8f11
MW-2023
: introduced possibility to block commands from apply59402e4
MW-1986
: added login_hint and target_link_uri as parameter for oidc loginadc2f10
- made multiple servlet oauth capable
91b3699
MWB-2073
: Introduced new property to disable adding a Sproxyd end-point to blacklist8617d91
SCR-1181
: New Properties to Control 'used-for-sync" Behavior of Calendar Folders94c4251
MW-2002
: Publish Changelog at documentation.open-xchange.com3f0b316
Changed
MW-1864
: lost and found tests- fixed, refactored or deleted several tests
- refactored SoapUserService and linked classes
- deleted outdated indexedSearch
7f57ae9
MW-1516
: Use IDBasedContactsAccess for CardDAV- Refactored to have gnu.trove as a bundle in target platform
0ebe8ff
MW-1947
: Updated vulnerable librariesMW-1955
: Hand-through possible Redis connectivity/communication errors to client during runtime & probe Redis end-point until available during start-upaae4f1c
MW-1955
: Disable max. number of sessions by default for Redis session storage1b65ceb
MW-1947
: Updated vulnerable librariescb95cbe
MWB-2059
: Removed corrupt sort by UIDd316136
MWB-2059
: Fast sorting by IMAP UID in case sort by received date (INTERNALDATE) is requested776449b
Fixed
MWB-1982
: Timeouts for external content do not cancel the connection- The fix allows to interrupt client connects and InputStream reads by having hardConnectTimeout and hardReadTimeout parameters that are used for external connections
- Defaults to 0 (disabled)
- The following services have a defined default of 120000 for 'hardReadTimeout' and 30000 for 'hardConnectTimeout': autoconfig-server, davsub, icalfeed, rssfeed, snippetimg, vcardphoto
63b60eb
MWB-2040
: Concurrency issue when moving a touched session to first session container. The moved session might not be "visible" for a short time.52069a4
MWB-2061
: Organizer URI not preserved when creating Appointment7b3e574
MWB-2094
: Yield a modifiable list instance from messages to copy3aacd7a
MWB-2056
: Include all overridden instances in scheduling object resource3bd7550
MWB-1975
: start report generation in parallel to task generation72047d7
MWB-2101
: Unnecessary Data Retrieved from Filestore when Servingd262bd1
MWB-2081
: Check table existence prior to deletion attempt (and recognize if developer accidentally passed the cause as last argument)2372064
MWB-2054
: Auto-delete guests when owner of per-user filestore is deleted (SCR-1193
)a296656
MWB-1985
: delete all tasks in folders owned by deleted user5f26d66
MWB-2055
: Skip unrelated events when iterating events needing98b8140
MWB-2086
: Potentially malicious SQL injection when using full-text autocomplete408fcda
MWB-2022
: Generate a generic error response providing SMTP server response information in case an SMTP error code occurs while attempting to send a message0d43966
MWB-2091
: Mark each messages of a multiple mail forward as forwarded2cde555
MWB-2089
: Quite old 3rd party library uses weakly accessible sun.nio.ch package. User newer library making use of up-to-date JRE tools instead.4ff5296
- Fixed reading alias from settings
840d937
MWB-2080
: Added details about 'baseDN' setting in LDAP client configuration7668409
MWB-2058
: Populate 'uuid' column when registering a new server as692222c
MWB-1982
: Timeouts for external content do not cancel the connection75086ca
Security
8.11.0 - 2023-03-08
Added
- Generic watcher for input stream read processes
85699c6
fd49709
b8dcbad
129749c
- Added possibility to filter mail drive files
651999c
MWB-1959
: added possibility to filter http api metric labelsa75d3e0
- Support hard timeout for processor tasks
8f1b1b9
SCR-1190
: Added property accepting to define a timeout in milliseconds when reading responses from IMAP server after a command has been issuede2ef0ef
023c13c
6e81751
- Add missing packages to cloud-plugins helm definition
935005a
Changed
- Updated shipped VTIMEZONE resources
4fd83de
MWB-2049
: Ensure no wrong push match has been determined for a certain push notification307d766
f314ec7
ad17da7
cfc57a8
9564229
5dadcfb
508879f
70efa61
MWB-2063
: Lenient parsing for DTSTAMP property6401516
MWB-2039
: Improved concurrency when loading time zone information2ac192a
MWB-2059
: Let /mail?action=all end-point support "allow_enqueue=true" parameter70cf31d
273c592
c7b656f
MWB-2040
: Added some logging and introduced a session-list mutator lockc625aef
702e171
845d03c
e6938e0
MW-1964
: optimizations referring to spectral findingsa9ba5ed
MWB-1845
: Ensure a reasonable size for buffers, which will be allocated for writing data to a connectionb47f248
679df5a
- Use only one AtomicLong to generate request number
8f34cbc
- Uses timestamp to generate a unique name for the pre-update job so the helm chart can be applied multiple times in a row if needed. Also adds a (configurable) ttl to expire the job after 24hrs.
cfcb71a
MWB-2061
: Prepare entity processor decoding for internal organizers270fe7e
- Upgraded logback-extension to 2.1.5
eed8bf3
MWB-2031
: Accept new property to disable black-listing of end-point for which an I/O error or HTTP protocol error was encountered8efbc56
MWB-2039
: Set missing log message argumentd3fd63a
- Assume property "logback.threadlocal.put.duplicate" is "false" by default to use concurrent MDC property map
6d84989
Removed
MW-1974
: Drop Hazelcast Upgrade Packages46a7063
MW-1774
: Removed ClusterTimeService940239e
MW-1778
: Disabled/deprecated the 'ramp-up' json actione20b7c4
36107b9
MW-1767
: Enqueued the drop ldap ids update taskd839294
Fixed
MWB-2054
: Auto-delete guests when owner of per-user filestore is deleted (SCR-1193
)eaec0e9
MWB-2048
: Limit accepted POP3 server response to reasonable length/size478b986
MWB-1877
: Avoid DNS rebinding attacks where possible (check against possible block-list on connection establishment)2bf40e2
MWB-2038
: Respect possible IPV4-mapped IPv6 addresses when checking if contained in a block-liste4566e4
3a97e40
MWB-2047
: Limit accepted IMAP server response to reasonable length/size9033774
MWB-2037
: Drop FOREIGN KEYs from several Groupware tables8a5ac87
MWB-2057
: Add XCLIENT extension support for sieveb5e1320
MWB-2046
: Limit accepted SMTP server response to reasonable length/size1f8c5e2
MWB-1395
: Introduced limitation for number of queued image transformation tasks9c17e53
MWB-2020
: only apply sanitizing to certain fieldsac8c67c
MWB-2019
: Sanitize non whitespace control character5e1bf5d
MWB-2025
: Fixed avoidable exception on DEBUG loggingdd4514a
MWB-1967
: Don't set i18n name for public IMAP namespace if there are multiple ones configuredd26a8a5
MWB-2071
: Indicate conflicting calendar object resource in different collection via CALDAV:unique-scheduling-object-resource precondition3e20448
MWB-2041
: Fixed "file not exists" errors for single shared filesc95b330
MWB-1790
: Orderly complain about missing command-line argumentsb0a4cf9
MWB-2068
: Orderly accept connect parameters when updating a mail account's attributesf78c307
MWB-2069
: Yield "unsupported" result when analyzing links pointing to own shares1dbc012
MWB-2030
: Orderly set session- and share-cookie when resolving share link212bed8
MWB-2044
: Only update folder last-modified if permissions are sufficientf14cf42
MW-1778
: Added missing annotation7b29de7
8.10.0 - 2023-02-08
Added
MW-1910
: Extended "needsAction" action to include Delegated Resources- Lookup for events needing action is now also done for attendees the user has delegated access to (resources and other users)
- Introduced new parameter "includeDelegates" for "chronos?action=needsAction" (
SCR-1162
) - Adjusted method signature of "getEventsNeedingAction" throughout chronos stack (
SCR-1163
)546c406
MW-1898
: On-behalf management for Managed Resources- Actions 'updateAttendee' and 'update' in module 'chronos' can now be performed on behalf of a resource attendee
- This can be indicated by targeting the virtual resource folder id
- Added 'own_privilege' into 'resource' model to reflect the user's scheduling privilege for a certain resource (
SCR-1154
) - Participation status of managed resources will now be 'NEEDS-ACTION' if confirmation is pending
- Initial hooks for subsequent notification messages are prepared
ca32f9c
MW-1944
: New Action "getRecurrence" in Module "chronos"MW-1931
: Extended provisioning for managed resourcesMW-1969
: Accept "mail" as original to add attachments to a composition space referring to file attachments of existent mails #2599a83d
SCR-1181
: New Properties to Control 'used-for-sync" Behavior of Calendar Folders821254b
INF-80
: Activate additional languages in default App uite 8 installationsb186a1d
MW-1969
: Accept "mail" as original to add attachments to a composition space referring to file attachments of existent mailsfdbd9d6
MW-1888
: Upgraded Socket.IO server components to support Engine.IO v4 and Socket.IO v3512d654
(https://gitlab.open-xchange.com/appsuite/platform/core/commit/0cb2b2f041236ea8c90b1e5863d8bf922f14a442)57f4869
Changed
MWB-2024
: Upgraded logback-extension to 2.1.4MW-1912
: Allow multiple Password-Change Services0ad74d8
- Fixed new warning since Eclipse 2022-06 "Project 'PROJECT_NAME' has no explicit encoding set"
05797c1
MW-1957
: referring to RFC5455-3.8.5.3, shift start/end date of recurrence master to the first occurrence1ef8fd9
- Don't build log message if log level does not fit #2
35ba26f
MWB-1970
: Use active database connection when loading enhanced entity data for events5e20d9b
MWB-1970
: Don't advertise 'count' capability for database-backed folderscdc6973
MWB-1970
: Maintain cached list of file storage account identifiers per service9d8a301
MWB-1970
: Use active database connection when loading enhanced entity data for events (2)7efa8fc
- Added special HTTP protocol exception signaling that a certain URI is denied being accessed
0200041
- Enrich calendar results with contact details for internal organizers if requested via 'extendedEntities=true'
e5950b7
MW-1830
: Generation of mandatory Secret Values through Helm Chart9dbb102
- Indicate 'optional' participants in notification mails
e1b31f0
- Fixed logging & some thread visibility issues
8fa7246
MWB-1991
: upgraded micrometer from 1.5.1 to 1.10.363d112c
MWB-2001
: Added logging for periodic attachment storage cleaner55cc090
- Use thread-safe classes
b606631
MW-1985
: Improve DB warning/error logs9945242
- Removed unused Apache POI library from JavaMail bundle
f42b86d
- Fixed some issues announced by Eclipse IDE
e1b054b
- Improved logged error message
9417579
- Removed remnants
cb9b85d
- Resolved warnings
9778c66
ba04ee4
9fea797
5781986
2dbdc9d
06e0f60
2f2a31f
5e6de37
d206ac0
cf2ad17
e48753a
- Don't build log message if log level does not fit #3
b55c826
Removed
MW-1946
- removed org.apache.tika (and com.openexchange.textxtraction). The required functionality is now provided through the new bundle com.openexchange.tika.utilf7076fa
MW-1930
: Removed direct links from notification maila2e29a9
- Removed obsolete test
3733b38
Fixed
MWB-1983
: Limit line length and header count when fetching HTTP headers of an HTTP message + Replaced usage ofjava.net.HttpURLConnection
with Apache HttpClient where necessary1d12911
MWB-2026
: Try to handle possible connection loss errors during mail export operation6ff82b6
MW-1840
-8x-patch: Encrypt with old engine, try decrypt with new if possible0f8a3f3
MWB-1999
: impp type other than work or home is set properlye3f0d3c
MWB-2023
: Fixes to pre-update job for installations with multiple complex rolesc0bf897
MWB-2021
: Return proper value for "com.openexchange.subscribe.subscriptionFlag" on folder retrieval0d186b1
MWB-2027
: Specify missing error message argument on SQL errorbeb2904
OXUIB-2162
: wrong translation for calendar change23ff72e
MWB-1997
: API access not fully restricted when requiring 2FAbd67a4e
MWB-1983
: Limit line length and header count when fetching HTTP headers of an HTTP message + Replaced usage ofjava.net.HttpURLConnection
with Apache HttpClient where necessary #2c0e345b
MWB-2005
: Fixed retrieving RSS feedfc07069
MWB-2028
: Fixed look-up of attachments in case IMAP message has TNEF content5934db4
MWB-2008
: Don't allow to access snippets/signatures from other users if not shared00957b4
MWB-1991
: properly remove metrics in case pool is destroyed38286d9
MWB-2020
: added sanitizing to filter rules + improved the sanitizing regex21ca22e
MWB-1981
: properly check returned ical size5bea149
MWB-2025
: Fixed avoidable exception on DEBUG loggingcf950d6
MWB-1939
: Print exposure time as fraction if possible8de8cb3
MWB-2006
: use owc only on feature branches65b1aa9
MWB-2007
: Only set "domain" parameter when dropping a cookie if value is considered as valid: Not "localhost". Not an IPv4 identifier. Not an IPv6 identifier22f9029
MWB-1928
: Only check usage (space capacity) of destination storage when moving from user-associated file storage to context-associated one since no entity assignment takes place #2f76537b
MWB-2036
: Do escape column names when building database statements for context move89c9a1f
MWB-1991
: adjusted 3rdPartyLibs.properties0fa654a
MWB-2021
: Return proper value for "com.openexchange.subscribe.subscriptionFlag" on folder retrieval (2)a1775e7
MWB-2000
: Only query fields necessary to construct contact image URI10856cc
MWB-2010
: Set correct compression level for data exportsfb07ee6
- Fixed importing and exporting the same package
db5cd45
MWB-2000
: Only query fields necessary to construct contact image URI (2)96bfe2d
8.9.0 - 2023-01-10
Added
Changed
- Refactored context restore for better readability and maintenance
197a237
- Change for
MWB-1962
: Upgraded Hazelcast from v5.1.2 to v5.2.1bfe140b
- IMAP: Check via ID command if IMAP server appears to be a Dovecot server
f639fa4
- Avoid unnecessary creation of byte array when outputting thumbnail content to client
6777845
- Avoid unnecessary SELECT statement and use "INSERT ... ON DUPLICATE KEY UPDATE" instead
1b47613
a4f414d
- Direct initialisation of "AttributeChangers" instances
6c4bf47
- Use singleton w/ dedicated initialisation/dropping
48accd9
- Thread-safe collection
48d858c
- Use proper URL for HttpContext when trying 2nd time
2984c65
- Use singleton w/ dedicated initialisation/dropping #2
edeff71
- Removed unnecessary variable
749e77b
- bump helm chart version
- This is for the new configurable helm chart deployment type
0cf0eb3
- This is for the new configurable helm chart deployment type
- Cache as immutable set
0033fd3
Removed
- removed unnecessary join (to be compatible with guest users)
d46976c
Fixed
- fixed some variables in the translation
26065e5
MWB-1947
:- Introduced map for storing/managing state during authentication flow
- Added property
com.openexchange.oidc.mail.immediateTokenRefreshOnFailedAuth
to enable/disable immediate refresh of OIDC OAuth tokens on failed authentication against mail/transport service - Implemented immediate refresh of OIDC OAuth tokens in case of failed authentication against mail/transport service
276670e
MWB-1966
: Use proper error code to advertise resource exceptions to client0e2e389
MWB-1995
: Check if distribution list members are accessible prior to adding them #28beba6a
MWB-1963
: More reasonable default value of 2GB (2147483648 bytes) forcom.openexchange.servlet.maxBodySize
property, which now effectively limits file uploads (no chunked HTTP upload anymore due to omission of Apache Web Server that is replaced by Istio). Moreover, introduced new property "com.openexchange.servlet.maxFormPostSize" with default value of 2MB (2097152 bytes) to have a dedicated property to control max. size for form data sent via POST.bd6fe39
MWB-1972
: Correctly indicate resource type in principal resources1ef0a13
MWB-1995
: Check if distribution list members are accessible prior to adding them153909b
MWB-1936
: Revisited transport checks8542d55
MW-1989
: Don't let delete operation fail upon malformed change exception data while tracking changes3d47d7e
MWB-1985
: properly handle public tasks folder in case no-reassign is set036afcc
MWB-1984
: Prefer address from EMAIL parameter when deciding if iMIP mails from iCloud are considered as 'known' sender543dbcc
- Change for
DOV-4625
: Detect missing space character in case of corrupt NIL value for PREVIEW fetch item; e.g. "PREVIEW NILUID 1"d2ca600
MWB-1956
: Apple Mail flag taken over even though Open-Xchange color flag has been explicitly set to NONE9f18684
MWB-1964
: Let guest inherit sharing user's filestore if applicablee82657b
MWB-1961
: throw proper error in case user is missingd682bf8
MWB-1934
: Don't allow empty "From" address on mail transporte64de8a
MWB-1820
: only removes guests in case of real failures110596f
MWB-1971
: improved matching of distribution list members1218c53
MWB-1851
: Return proper folder identifier when saving draft to POP3 account05e59fc
MWB-1951
: Use unicode address to resolve mail recipient7fb1c8c
MWB-1986
: Fixed SQL error in SELECT statement (Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause)91105d0
MWB-1978
: Prevent changes of object id when generating delta event7de23e6
8.8.0 - 2022-12-14
Added
MW-1857
: Option to disable SMTP for 3rd party Mail Accountsa6d5a0b
- Added a new middleware property
com.openexchange.mail.smtp.allowExternal
which defaults to true - Utilise that property to filter the transport details in the mail account POJOs
- Introduced a new read-only JSLob entry under
io.ox/mail//features/allowExternalSMTP
which reflects the middleware's property - Forbid sending mail from an external SMTP server as long as the setting is set to false
- Forbid creating/updating mail accounts with transport information as long as the setting is set to false
- Added a new warning for preflight/validity checks which reflect this
- Added a new middleware property
MW-1831
: Push configuration for macOS drive clientd2a9903
SCR-1157
: Introduced properties for macOS client push notification configuration
SCR-1165
: Added options to specify socket read timeout when applying filter to existent messages53f3023
MW-1938
: New Templates and Examples section for documentation and adapted jenkins workflow to dynamically point to the correct version of the files11bbcbc
Changed
- MAL: Enhanced
MSG-1016
error code by actual connect timeout valuee194eb1
- Mail Auto-Config: Let auto-config attempt fail immediately in case login attempt encounters failed authentication due to wrong credentials/authentication data
f1fea90
45b68d0
MWB-1943
: Apply consistent configuration to mail auto-config as used when connecting to the account during runtime1d682ef
- Don't build log message if log level does not fit
4b55202
MW-1941
: Updated and re-structured documentation373dce4
OXUIB-2066
: Propagate configured mail fetch limit via JSlob under "io.ox/mail//mailfetchlimit"895d606
- Database: Utility method to re-execute DB operation on transaction roll-back error
bb47eab
MW-1904
: Adjust for Reserved Words in MariaDB 10.6d713340
- Using back-ticks in SQL statements to handle new reserved words in MariaDB 10.6
- Only the keyword
OFFSET
had to be adjusted in SQL statements
- Don't build log message if log level does not fit #2
37dd1ad
- JavaMail: Optimized creation of FetchResponse instances through remembering if RFC8970 "PREVIEW" capability is advertised by IMAP server
cb17cd5
- MAL: Enhanced "
MSG-1016
" error code by actual connect timeout value #2c108082
MWB-1909
: Extended information in case an error occurs470911d
Fixed
MWB-1902
: Use localized display name for groups towards clients27f0a50
MWB-1857
: Incomplete response when requesting /infostore?action=list0d4ddce
- Change for
OXUIB-2067
: Avoid alternative MIME part look-up by Content-Id in case no such part is contained in IMAP message's BODYSTRUCTURE information49f3b9e
MWB-1944
: Don't cache user-sensitive non-file-backed propertiese7d0385
MWB-1904
: Properly indicate 'DAV:need-privilege' precondition with HTTP 403 for PUT requests w/o sufficient privileges65e64e6
MWB-1940
: Only inject a valid image URI into mail body's HTML part if such an inline image seems to exist in parental maild70ce12
MWB-1887
: Delete folders chunk-wise to avoid excessively big database transaction244847d
MWB-1901
: Disable usage of XCLIENT SMTP extension by default4452098
MWB-1948
: Perform alternative SASL long against SMTP server if initial response exceeds max. line length of 99890b9477
MWB-1899
: Accept escaped wild-card characters in search pattern141e691
MWB-1912
: aligned checks with documentation8de34a9
USM-36
: Re-introduce CUD actionse83189b
MWB-1928
: Only check usage (space capacity) of destination storage when moving from user-associated file storage to context-associated one since no entity assignment takes place06f177b
MWB-1909
: Handle possible NULL result value when querying countsa64eb82
MWB-1950
: Do not check the user while resolving mail recipients in recipientOnly modus263a2b5
MWB-1929
: Remove sessions from remote nodes during backchannel logout synchronously82d4253
- Fix connection leak in test clients
a415e8e
MWB-1931
: Don't allow empty passwordsd506a00
MWB-1944
: Don't cache user-sensitive non-file-backed propertieseb74ebf
MWB-1887
: Don't forget to finish Infostore instancef1d4fc4
MWB-1923
: Avoid premature closing of attachmentsa9a5174
- Use proper fall-back for "com.openexchange.imap.folderCacheTimeoutMillis" setting
87d9b67
MWB-1941
: Deleteuser fails with invalid CU035a397
MWB-1949
: fixed wrong option within the documentation of the command line tool357d263
GUARD-391
: Split lines only on newline during normalization8873cfd
Security
OXUIB-2034
: Deny setting certain jslob core subtreesa603fa8
929b9a
- See also
MWB-1784
- See also
8.7.0-8.7.19 - 2022-11-11
Added
MW-1877
: Permissions for Resources- Introduced resource scheduling privileges 'ask_to_book', 'book_directly' and 'delegate'
- By default, group 0 has 'book_directly' privileges for each resource("unmanaged mode"), unless defined differently ("managed mode")
- Extended resource model by a corresponding permissions array, storing privileges per entity
- HTTP API is adjusted accordingly (
SCR-1154
) - New database table resource_permissions to store resource privileges of users/groups (
SCR-1153
)4de788f
MWB-1871
: added possibility to parse images of nested messages- Added new lean property com.openexchange.mail.handler.image.parseNested with defaults to true
b42dfec
- Added new lean property com.openexchange.mail.handler.image.parseNested with defaults to true
MW-1903
: introduced CORE_TEST param to Jenkinsfile6a4a0ba
MW-1507
: Calendars for Resources- Introduced virtual folder identifiers for resource calendars (
SCR-1149
) - Folder ids can be used in typical "chronos?action=all" requests to get the contained events, actions "advancedSearch", "get" and "list" are supported as well
- Events returned under the perspective of a virtual resource folder will also have this virtual identifier assigned within the folder field
- The requesting user will either get all details of an event in a resource folder, or only an anonymized version - depending on whether the event is visible for the user in another folder view or not.
6fbc61a
- Introduced virtual folder identifiers for resource calendars (
MW-1792
: Allow changing of "includeSubfolders" flag through link permission entitye326340
Changed
- Minor changes for mail auto-config
8221066
MWB-1901
: Do not issue XCLIENT command if no XCLIENT parameter is supportedc915650
MWB-666
: Send "431 - Request Header Fields Too Large" HTTP error response instead of "400 - Bad Request" when HTTP packet header is too largea7cc43c
- JavaMail: Check appropriate capability "SEARCH=X-MIMEPART" prior to performing a file name search
3cc2ce8
OXUIB-2025
: Added support for TEXT search term to filter messages that contain a specified string in the header or body of the messagef775905
OXUIB-2025
: Added support for TEXT search term to filter messages that contain a specified string in the header or body of the message #2910eb69
MW-1915
: Migrated helm lint/publish and docu build/publish to jenkins391bc2b
MW-1813
: New approach for centralized version informationcf6d801
MWB-1826
: Added some logging49c0b33
MWB-1891
: Don't validate distribution list member's mail address during user copye3c0f22
MW-1914
: Extend Webhook integration for Jitsi ConferencesINF-30
: Use globally configured appRoot16853d6
Removed
- Removed c.o.dav.push leftovers
4369c69
- Removed c.o.mail.authenticity leftovers
c753f59
- Removed c.o.oauth.linkedin leftovers
638988b
- Removed c.o.halo.linkedin leftovers
121f054
- Removed c.o.subscribe.linkedin leftovers
01d80d1
- Removed c.o.mail.authentication leftover
2a846b0
- Removed no more required folder
d57ee8c
- Removed no more required folder
1a482ee
- Removed obsolete o-x-test-bundles
dd513de
- Removed c.o.printing leftovers
a2f7b3e
- Removed no more required folder
5ee810f
- Removed redundant/obsolete folder implementations
102032c
Fixed
MWB-1907
: Restored previous SOAP behaviour by accepting individual parameters instead of a wrapping parameter objectd1c2de4
MWB-1876
: Check redirect location against blacklisted hosts when creating an iCal subscription.e219389
MWB-1911
: Do not require deputy service in case user replies to a message residing in a shared mail folder4377dff
- JavaMail: Add the ability to the API consumers to load the API implementations by using a different protection domain when the API is used with security manager enabled
12f4647
- JavaMail: Implement equals() and hashcode() on jakarta.mail.Header (#597)
8294cf2
MWB-1908
: Keep remembering OIDC -> OX session id mapping in state after auto-loginc11a94d
- JavaMail: j.m.u.FactoryFinder.factoryFromServiceLoader needs PrivilegedAction #621 (#622)
83d9c14
MWB-1909
: Adjusted queries issued by datamining tool to obey MySQL's ONLY_FULL_GROUP_BY modea4e293e
- JavaMail: Fix630 2 (#633)
75b7136
MWB-1893
: Don't let delete operation fail upon malformed change exception data while tracking changes78615b9
MWB-1887
: Fire events with a separate thread avoiding unnecessary occupation of deletion-performing main thread0cbd10c
MWB-1887
: Allow /folders?action=clear being performed as enqueuable operationcc226a7
MWB-1898
: Added documentation examples for mapping context-/user-id properties to LDAP attributes properly3be7f84
MW-1813
: bug fixed by which the version was not resolved correctlyaa0d040
MWB-1889
: Drive mail with expiry date / with password can not be send7b462f4
MWB-1892
: Don't filter "com.openexchange.grizzly.serverName" property from log event4d342b8
MWB-1878
: Handle empty Disposition-Notification-To header on deletecf06c47
MWB-1882
: Upgraded Apache Commons Text from v1.9 to v1.10.07a911be
MWB-1890
: Do obey folder types restriction when constructing search term for looking up events of user87ec00e
MWB-1874
: Remove references to contact in distribution list member when contact's email is cleareddb7ef9e
MWB-1695
: Introduced "requiredCapabilities" for App-specific Password ApplicationsSCR-1155
ec439e9
MWB-1865
: Use internal resources for image build #2320b808
MWB-1834
: Check command line options before accessing the reseller servicee94ab2a
MWB-1865
: Use internal resources for image builda48433d
- use proper fallback property for exclude file pattern
0eadd7d
MWB-1866
: Orderly consider public folder mode when userizing event data in result tracker15274d9
MWB-1719
: Don't forget to reassign returned Stream instance when applying filtera76a018
MWB-1870
: Multifactor Webauthn provider throws UnsupportedOperationException8c8a2b7
8.5.0-8.6.3 - 2022-10-05
Added
MW-1785
: Introduce pre-upgrade task framework6396946
MW-1815
: Attach files from drive to chronos eventsfabeec5
MW-1647
: Handle linked attachments for appointmentsfc5477c
- Externally hosted attachments can now be stored for appointments, with an URI pointing to the data
- Introduced new field
uri
forAttachmentData
object (HTTP API), with column id891
- Added new field
uri
forc.o.groupware.attach.AttachmentMetadata
DTO as well - Adjusted interface
c.o.chronos.storage.AttachmentStorage
and implementation to reference non-managed attachments properly during deletions - Breaking Change Update task
com.openexchange.groupware.update.tasks.AttachmentAddUriColumnTask
to add columnuri
in tableprg_attachment
- Externally hosted attachments can now be stored for appointments, with an URI pointing to the data
MW-1817
: Integrate upgrade preparation bundle into core-mw helm chart997fb26
MW-1607
: Add domain support for push payloade924d1b
- Drive clients can now subscribe for push notifications using domains 'myFiles', 'sharedFiles' and 'publicFiles'
- The domain value gets re-inserted into push payload for transport 'apn2'
- Removed configuration property com.openexchange.drive.events.apn2.ios.pushDomain
- Drive clients can now subscribe for push notifications using domains 'myFiles', 'sharedFiles' and 'publicFiles'
Changed
MWB-1849
: Improved parsing of OAuth provider error message31933c5
MWB-1826
: Added useful DEBUG log messages when adding an image to a signature1f1e8f9
MWB-1828
: Improved handling ofjavax.net.ssl.SSLException
5180c7b
MWB-1849
: Improved parsing of OAuth provider error message #2c950617
MWB-1830
: Improved error message in case of denied requeste0d3c94
MWB-1759
: Deny requesting large message chunk in case client queries more than only identifier fields8e6ddb4
MWB-1800
: Introduced configuration option4e95327
- "com.openexchange.calendar.storage.rangeIndexHint" to allow insertion of index hints into typical database queries of the calendar module
MWB-1776
: Utility method to clear DNS cacheb9c7ff3
MWB-1759
: Don't query flags if not required24729be
MWB-1716
: Added some helpful logging about bundle status1918165
MWB-1716
: Added some helpful logging about bundle status #2d056354
MWB-1764
: Added DEBUG logging when checking status of a mail account yields an error2119413
MWB-1750
: Improved handling of possible javax.net.ssl.SSLException "Unsupported or unrecognized SSL message"0af276a
MWB-1776
: Added logging when DNS cache has been clearedfe93ae2
MWB-1759
: Delay initialization of TLongObjectHashMapbbb6a9f
MWB-1759
: Nullify intermediate result103f70f
Removed
MW-1866
: Remove bundle com.openexchange.quartzc1975fc
MW-1817
: Remove parallel container execution for update joba04115f
Fixed
MWB-1842
: Prophylactically decode potentially MIME-encoded strings in property values in iCalendar files from MS Exchange24af8ec
MWB-1848
: removed fallback value for manifest version field8b468a8
MWB-1839
: Use dedicated introductions for forwarded meeting requests the user is not invited toe03a09e
MWB-1608
: Fixed RuntimeExceptions in calendar stackbd422ac
MWB-1808
: properly detect reminders with missing permissionsbb3f1e6
MWB-1813
: Added documentation for mail?action=expunge56bff39
MWB-1811
: Ensure internal entity is admin, prevent permission57ca47b
00b7702
1358b10
MWB-1838
: Yield no result when auto-processing REQUEST with party crasher, let client re-apply iTip independently of message status flag8ec6208
MWB-1840
: Return empty ajax respone if no event was found during resolve action81be74c
- Add missing com.openexchange.gab import in bundle com.openexchange.admin.plugin.hosting
9749ecb
MWB-1805
: Use URL-decoded variant of username in Authorization header for macOS Contacts client if applicable7d805e8
MWB-1735
: Fixed links in Command Line Tools articlesb9ac1ac
MWB-1711
: Removed obsolete ContextDbLookupPluginInterfaced9309b1
MWB-1721
: Evaluate 'X-Device-User-Agent' and pretty print common EAS devices in active clients overview7b197c1
MWB-1702
: Skip premature cache invalidations to prevent race conditions upon folder update7e643b8
MWB-1787
: Prefix download URI with current scheme/host if no absolute URI is configured in manifest5424d16
MWB-1737
: Removed obsolete ETag check after HTTP 409 errorseac8317
MW-1817
: Proper yaml in overwrite configmap if no properties are set7c4f3c8
MWB-1760
: Properly indicate "share not found" status for invalid targets of anonymous shares152f332
- Apply maxHeapSize to init containers
493c5e4
MWB-1722
: Do not convert aperture value, because we already read the f-number from exif datac5d97dc
- Disable hz update bundle by default
01c5d7d