Releases: cypht-org/cypht
Release list
v2.11.1
Security fixes only
- fix(module/imap): improve MSTNEF attachment parsing safety and temp file handling by @mercihabam in #2027
We greatly appreciate Ki1ro for identifying and reporting the security concerns addressed in this release. Thank you for your collaboration and commitment!
Full Changelog: v2.11.0...v2.11.1
v2.11.0
57 changes from 6 contributors (1 new contributor). 33 files were affected.
What's Changed
Bug fixes
- fix(frontend): css: mobile and theme specific fixes by @pom2ter in #2002
- fix(other): block CSS-based email tracking and restore external resource privacy UI by @IrAlfred in #2008
- fix(other): fix cache return default when memcached get is not successful by @IrAlfred in #2010
- fix(module/carddav_contacts): preserve port in url_concat when building CardDAV URLs by @boomboompower in #2014
- fix(module/carddav_contacts): use carddav config instead of full config dump for carddav_sources by @boomboompower in #2013
- fix(backend): combined pages not loading because
enable_exclude_auto_bcc_settingis mishandled by @mercihabam in #2015 - fix(backend): prevent
enable_exclude_auto_bccfrom remaining disabled when toggled by @mercihabam in #2016
Maintenance & Infrastructure
- fix(docker): point docker compose to latest Cypht release 2.10.0 by @IrAlfred in #2006
- fix(other): update version reference to 2.10.1 for upcoming release by @IrAlfred in #2009
- fix(other): point docker compose to latest Cypht release 2.10.1 by @IrAlfred in #2011
- fix(release): update permissions and change upload action for release assets by @Shadow243 in #2005
- fix(other): update version reference to 2.11.0 for upcoming release by @IrAlfred in #2021
Dependency Updates
- build(deps): bump guzzlehttp/guzzle from 7.10.0 to 7.12.1 by @dependabot[bot] in #2017
- build(deps): bump guzzlehttp/psr7 from 2.11.0 to 2.12.1 by @dependabot[bot] in #2018
- build(deps): bump guzzlehttp/psr7 from 2.9.0 to 2.11.0 by @dependabot[bot] in #2001
Tests & Quality Assurance
- test(unit): add comprehensive unit test suites for core library classes & lib by @Shadow243 in #1696
New Contributors
- @boomboompower made their first contribution in #2014
Full Changelog: v2.10.0...v2.11.0
v2.10.1
v2.10.0
81 changes from 7 contributors (2 new contributors). 44 files were affected.
What's Changed
- fix(docker): point docker compose to latest Cypht release 2.9.0 by @IrAlfred in #1968
- fix(workflow): fix coverage report failing due to wrong SQLite DSN and phpunit binary by @IrAlfred in #1969
- fix(workflow): remove duplicate --testdox flag causing coverage job exit code 1 by @IrAlfred in #1972
- fix(workflow): validate dependabot PR titles and add deps scopes by @IrAlfred in #1973
- fix(other): uncaught TypeError: array_merge(): Argument #1 must be of type array, false given by @IrAlfred in #1976
- build(deps): bump idna from 3.7 to 3.15 in /tests/selenium by @dependabot[bot] in #1971
- fix(frontend): improve responsive layout and truncate long labels by @Grandi0z in #1970
- refactor(frontend): fix mobile layout for advanced search results and truncate long list labels by @Grandi0z in #1965
- fix(frontend): remove duplicate DSN badge on SMTP server change with each server when DSN is unsupported by @IrAlfred in #1977
- fix(backend): php fatal error: Uncaught TypeError: array_merge(): Argument #1 must be of type array, true given by @mercihabam in #1978
- build(deps): update symfony/yaml to 6.4.40 to fix CVE-2026-45304/45305/45133 by @IrAlfred in #1980
- fix(backend): handle undefined array key name by @Baraka24 in #1844
- fix(module/smtp): resolve scheduled message send issues by @IrAlfred in #1984
- fix(module/profiles): fix table responsiveness and improve delete UX by @IrAlfred in #1985
- fix(frontend): init markdown editor on SPA compose navigation by @IrAlfred in #1986
- fix(backend): guard undefined POST keys (update and pop) in privacy_setting_callback by @IrAlfred in #1987
- fix(other): prevent unread total from resetting to zero by @FrizkyTrixter in #1988
- fix(frontend): use attr() over data() to prevent Cash.js hex coercion by @IrAlfred in #1990
- fix(docs): fix IMAP_AUTH_TLS comment behavior by @IrAlfred in #1992
- fix(frontend): reset markdown compose body after scheduled send success by @IrAlfred in #1993
- fix(frontend): pass sidebar search_terms on SPA search icon click by @IrAlfred in #1994
- fix(backend): ews exclude contact items from FindItem results to prevent GetItem crash by @IrAlfred in #1995
- fix(other): fix some GitHub module issues by @IrAlfred in #1739
- fix(module/inline_message): enable inline reading pane in combined, search, tag and feed views by @michaelsmolka in #1997
- fix(frontend): render extra header buttons properly without third-party override by @mercihabam in #1996
- fix(other): show nav menu on change password page after refresh by @IrAlfred in #2000
- fix(backend): "Uncaught Error: Cannot use object of type stdClass as array" thrown when deleting a folder from a mailbox with active Sieve support by @mercihabam in #1999
- fix(other): update version reference to 2.10.0 for upcoming release by @IrAlfred in #2003
New Contributors
- @FrizkyTrixter made their first contribution in #1988
- @michaelsmolka made their first contribution in #1997
Full Changelog: v2.9.0...v2.10.0
v2.9.0
126 changes from 8 contributors (0 new contributor). 87 files were affected.
What's Changed
New features
- feat(module/scheduled_sends): list scheduled messages in a combined view by @mercihabam in #1943
- feat(backend): add option to exclude auto BCC from messages by @Shadow243 in #1740
- feat(backend): add brute force login lockout protection by @Danelif in #1938
- feat(frontend/backend): show recipient MTA-STS and TLS-RPT policy status by @Danelif in #1736
- feat(backend): update php-ews dependency version to >=0.11.2 in composer files by @kambereBr in #1953
- feat(frontend): revamp contacts page design by @Shadow243 in #1728
- feat(backend): allow search flagged in all folders if enabled in settings by @Shadow243 in #1582
Bug fixes
- fix(docker): point docker compose to latest Cypht release 2.8.0 by @IrAlfred in #1947
- fix(frontend): extra headers buttons missalignment by @camilevahviraki in #1952
- fix(frontend): css fixes for the advanced search on mobile by @pom2ter in #1946
- fix(backend): fix errors related to EWS when manipulating folders by @Shadow243 in #1937
- fix(other): remove php 7.1 7.2 and 7.4 deprecations by @IrAlfred in #1949
- fix(e2e): resolve intermittent test failures in search and servers by @IrAlfred in #1948
- build(deps): bump urllib3 from 2.6.3 to 2.7.0 in /tests/selenium by @dependabot[bot] in #1954
- fix(frontend/backend): clear cached mailbox on any cache type, clearing also subfolders, and reset cache when triggering folders reload from client by @mercihabam in #1955
- test(unit): add tests for sievefilters by @camilevahviraki in #1920
- fix(other): correct 'booelan' typo to 'boolean' in Hm_MessagesStore to respect "Don't flag message as read on open" setting by @IrAlfred in #1958
- fix(module/smtp): correct SCRAM authentication command and mechanism selection by @IrAlfred in #1959
- fix(frontend): prevent SPA navigation from overriding inline message click by @IrAlfred in #1930
- fix(module/inline_message): closing right-style message panel redirects to home instead of restoring list view by @IrAlfred in #1963
- fix(other): update version reference to 2.9.0 for upcoming release by @IrAlfred in #1966
Full Changelog: v2.8.0...v2.9.0
v2.8.0
187 changes from 9 contributors (of which 1 is a new contributor). 124 files were affected.
What's Changed
New features
- feat(other): search by nickname and company in recipient autocomplete by @IrAlfred in #1890
- feat(other): add Monolog for structured logging with environment-based configuration by @IrAlfred in #1891
- feat(other): allow HTML signature in the profile by @IrAlfred in #1896
- feat(frontend): add configurable/custom action buttons by @camilevahviraki in #1764
- feat(other): add module-aware PHP dependency checker to build script by @IrAlfred in #1830
- feat(backend): add possibility to send php errors to glitchtip by @josaphatim in #1901
- feat(frontend): add complete Polish interface translation by @szporwolik in #1907
- feat(backend): implement support for application/ms-tnef message by @mercihabam in #1902
- feat(module/2fa): auto-generate APP_2FA_SECRET in config_gen when unset by @IrAlfred in #1925
- feat(frontend/backend): support configurable page query parameter name by @mercihabam in #1919
- feat(backend): disable archive button when ews In-Place Archive is not provisioned by @kambereBr in #1936
- feat(frontend): show collapsed nav subitems on hover by @mercihabam in #1932
Bug fixes
- fix(other): point docker compose to latest Cypht release 2.7.0 by @IrAlfred in #1887
- fix(backend): ensure that css-hidden content in messages is not shown in Cypht as well and no HTML head content embedded in the output by @mercihabam in #1888
- fix(backend): prioritize exact, case-insensitive match over substring-based when searching for a message body struct. Preventing falsy match of subtype (e.g., 'x-amp-html' to 'html') by @mercihabam in #1889
- fix(workflow): allow underscores and digits in module scope pattern by @IrAlfred in #1893
- fix(other): update commonmark to version 2.8.1 to fix CVE-2026-30838 by @IrAlfred in #1892
- fix(other): fix "TRANSLATION NOT FOUND" warnings by @IrAlfred in #1895
- fix(frontend): css: visual fixes to the calendar and contacts page by @pom2ter in #1894
- fix(other): only init KindEditor for signature in HTML compose mode by @IrAlfred in #1898
- fix(backend): allow custom sources by @josaphatim in #1899
- build(deps): bump league/commonmark from 2.8.1 to 2.8.2 by @dependabot[bot] in #1900
- fix(backend): correct cache path for folder names in message list type handler by @Shadow243 in #1910
- fix(module/imap): fix snooze feature by @josaphatim in #1908
- fix(other): align league/commonmark version between composer.json and lock file by @IrAlfred in #1915
- fix(other): remove custom log file path and default to empty from env config to use default PHP error log by default by @IrAlfred in #1916
- fix(backend): gmail_contacts - migrate to Google People API v1 by @szporwolik in #1905
- fix(frontend): stabilize filter editing, custom actions, and ux by @camilevahviraki in #1912
- fix(module/sievefilters): avoid duplicate modal bindings and invalid main_sc… by @camilevahviraki in #1921
- fix(other): show nav menu on save page by adding missing route entry and supporting handler-less routes by @IrAlfred in #1922
- fix(frontend): message page had a title Filter by @camilevahviraki in #1926
- fix(frontend): visual fixes for message list and mobile by @pom2ter in #1927
- fix(other): use db_name for SQLite DSN instead of db_socket by @IrAlfred in #1929
- fix(module/highlights): fix highlights module bugs by @IrAlfred in #1931
- fix(module/imap_folders): clear parent folder cache on subfolder creation by @IrAlfred in #1934
- fix(other): run composer install before setup.sh in Test-phpunit job by @IrAlfred in #1933
- fix(docker): remove misleading unused nginx default site config by @IrAlfred in #1940
- fix(backend): ensure Hm_Mailbox is constructed with a connection type by @mercihabam in #1941
- fix(other): update version reference to 2.8.0 for upcoming release by @IrAlfred in #1939
- fix(e2e): fix CI sqlite setup and replace flaky navigation wait with deterministic counter + AJAX idle check by @IrAlfred in #1942
Refactoring
- refactor(frontend/backend): propose sieve filter actions according to server extensions by @josaphatim in #1897
- refactor(frontend): maintain a dedicated logout page to separate session termination from navigation handling, preventing related issues by @mercihabam in #1750
- refactor(frontend): move some JS code of the sievefilter module for execution in route handlers instead of a global execution by @mercihabam in #1903
- refactor(frontend): imap folders page to show wich folder is being edited by @camilevahviraki in #1923
New Contributors
- @szporwolik made their first contribution in #1907
Full Changelog: v2.7.0...v2.8.0
v2.7.0
89 changes from 11 contributors (of which 3 are new contributors). 69 files were affected.
What's Changed
New features
- feat(frontend): add backspace key support for deleting recipient bubbles in compose form by @IrAlfred in #1835
- feat(frontend/backend): adding restore button for trash messages in trash folder by @christer77 in #1717
- feat(other): add context-aware delete warning messages by @IrAlfred in #1859
- feat(frontend): improve message list checkbox visibility with clear checkmark indicator by @IrAlfred in #1864
- feat(backend): implement OPML import functionality for RSS/ATOM subscri… by @Sean10 in #1865
- feat(frontend): start from one or many emails , create an action filter by @camilevahviraki in #1726
Bug fixes
- fix(other): point docker compose to latest Cypht release 2.6.0 by @IrAlfred in #1839
- fix(other): decompression-bomb safeguards bypassed when following HTT redirects (streaming API) by @Shadow243 in #1833
- fix(frontend): fix some issues with theme colors by @pom2ter in #1834
- fix(backend): skip servers with failed connections in IMAP message list handler by @Grandi0z in #1701
- fix(other): improve automated Docker build workflows with proper tagging and multi-platform support by @IrAlfred in #1836
- fix(frontend): correct typo and invalid html in email screening ui by @christer77 in #1837
- fix(other): update README.md by @DistrictOperator in #1841
- fix(backend): handle undefined array keys username and password by @Baraka24 in #1805
- refactor(frontend): update layout of settings forms to use flexbox for improved responsiveness by @Grandi0z in #1697
- fix(frontend): more changes to theme colors by @pom2ter in #1843
- fix(backend): at least correct the wrong version upgrade alert on master by @mercihabam in #1849
- fix(frontend/backend): reload folders list state when auto-creating the "Screen Emails" folder & ensure that screen buttons always work by @mercihabam in #1850
- fix(frontend): fix incorrect unsaved changes count when adding multip… by @espoirbaraka in #1825
- refactor(module/sievefilters): show sieve filter UX by making things more conditinnal by @camilevahviraki in #1661
- fix(other): fix "TRANSLATION NOT FOUND" warnings appearing in logs by @IrAlfred in #1852
- fix(other): update PHPUnit to 10.5.62 to fix CVE-2026-24765 by @IrAlfred in #1855
- fix(other): fix Save Settings links for subdirectory installations by @IrAlfred in #1857
- fix(other): fix PHP 8.2+ deprecation mb_convert_encoding HTML-ENTITIES by @IrAlfred in #1856
- fix(other): fix typo by @IrAlfred in #1860
- fix(frontend): re-arrange incorrect
</div>on 'folders' page by @mercihabam in #1858 - fix(frontend): css: visual bugs fixes by @pom2ter in #1862
- fix(frontend): fix reCAPTCHA(v2) positioning on login form by @IrAlfred in #1870
- fix(other): session lifetime after browser restart for long sessions by @IrAlfred in #1877
- fix(frontend): visual bugs fixes for the compose message page by @pom2ter in #1880
- fix(other): use user email as IMAP account name instead of static config by @IrAlfred in #1879
- fix(other): fix missing KindEditor assets to production site directory and HTML draft issues by @IrAlfred in #1881
- fix(other): duplicate default SMTP servers created on each login by @IrAlfred in #1883
- fix(other): email validation require fqdn tld by @IrAlfred in #1817
- fix(other): add User-Agent header to outgoing emails for better clien… by @camilevahviraki in #1884
- fix(other): update version reference to 2.7.0 for upcoming release by @IrAlfred in #1885
New Contributors
- @DistrictOperator made their first contribution in #1841
- @espoirbaraka made their first contribution in #1825
- @Sean10 made their first contribution in #1865
Full Changelog: v2.6.0...v2.7.0
v2.6.0
151 changes from 12 contributors (of which 4 are new contributors). 164 files were affected.
What's Changed
New features
- feat(frontend/backend): adding calendar icon to emails with a calendar invitation by @christer77 in #1516
- feat(other): persist Bcc header in sent and draft messages by @IrAlfred in #1755
- feat(other): integrate advanced search into saved searches module set by @IrAlfred in #1738
- feat(frontend): prevent duplicate email suggestions in To/Cc/Bcc autocompletion by @davmaene in #1794
- feat(other): make database configuration for tests environment-based by @IrAlfred in #1798
- feat(other): improve Github message list view and details by @IrAlfred in #1743
- feat(frontend/backend): improve the external resources alert UI, and make it possible to block resources from a sender by @mercihabam in #1804
- feat(frontend/backend): alert end users when potential upgrades are detected by @mercihabam in #1799
- feat(frontend): improve email ui with unread counts, responsive images, and clean previews by @primoco in #1811
- feat(other): add Active Directory UPN and domain\user authentication support by @IrAlfred in #1826
Bug fixes
- fix(other): fix typo in various files by @IrAlfred in #1767
- fix(frontend): change incorrect colors of some input fields by @pom2ter in #1769
- fix(frontend): site.js generation comments mixup by @Shadow243 in #1770
- fix(module/smtp): honor starttls mode instead of implicit tls by @affinitytechworks in #1771
- fix(unit): selenium tests hardening by @kroky in #1760
- fix(other): fix coverage test issue by @IrAlfred in #1773
- fix(frontend/backend): restore search in combined views by @mercihabam in #1774
- fix(other): fix missing translations related to save advanced search by @IrAlfred in #1775
- fix(other): improve user feedback for saved searches to include settings save reminder by @IrAlfred in #1777
- fix(frontend): mobile tweaks to the user and site settings by @pom2ter in #1778
- fix(other): point docker compose to latest Cypht release by @IrAlfred in #1784
- fix(backend): ews display attachment filenames for received messages by @kambereBr in #1761
- fix(other): prevent container startup failure by handling existing users in create script by @IrAlfred in #1782
- fix(other): point docker compose to latest Cypht release 2.5.1 by @IrAlfred in #1785
- fix(other): apply cache-first strategy to accelerate folder browsing by @IrAlfred in #1779
- fix(other): remove MySQL port and socket defaults to support all database drivers by @IrAlfred in #1788
- fix(other): adding a proper check for the existence of the keyword key before accessing it by @Baraka24 in #1789
- fix(other): fix PostgreSQL BYTEA resource handling in user config loading by @IrAlfred in #1790
- fix(backend): compose error Uncaught Error: Call to undefined method Hm_EWS::supports_dsn() by @Shadow243 in #1795
- fix(frontend): realign search bar in message list on mobile by @pom2ter in #1797
- refactor(frontend): harmonize special folders selection on the advanced search page, allowing to select all folders or each individually by @mercihabam in #1792
- fix(other): fix asset download links when Cypht is installed outside web root by @IrAlfred in #1801
- fix(backend): handle undefined special_imap_folders in user_settings by @IrAlfred in #1803
- fix(other): fix Bootstrap Icons not visible in production mode (DEBUG=false) by @IrAlfred in #1802
- fix(unit): update urllib3 to version 2.6.0 in requirements by @Shadow243 in #1807
- fix(docker): issue #1780 about docker images platform by @dreamstarsky in #1813
- fix(other): allow sending emails with only Cc/Bcc recipients by @IrAlfred in #1816
- fix(other): fix multi line signature support by @IrAlfred in #1821
- fix(frontend): enter key validation issue after autocomplete in compose form by @IrAlfred in #1823
- fix(backend): prevent undefined array key 0 warnings when copying messages to folders of the same server by @mercihabam in #1824
- fix(other): local contacts not being tracked as unsaved changes on save page by @IrAlfred in #1819
- fix(other): sieve: missing required parameter: mailbox by @christer77 in #1827
- fix(other): fix adding screen_emails param in searching request by @christer77 in #1828
- fix(frontend): improve draft folder error message when not configured by @IrAlfred in #1822
- fix(other): fix DEBUG_MODE in production and resolve debug button visibility/positioning issues by @IrAlfred in #1829
- fix(frontend): false alert on the existence of the mail address in the block list by @christer77 in #1820
New Contributors
- @affinitytechworks made their first contribution in #1771
- @davmaene made their first contribution in #1794
- @primoco made their first contribution in #1811
- @dreamstarsky made their first contribution in #1813
Full Changelog: v2.5.0...v2.6.0
v2.5.1
Bug fix
- fix(frontend): site.js generation comments mixup by @Shadow243 in #1770
Many thanks to @kevinend51 who reported this in #1768
Full Changelog: v2.5.0...v2.5.1
v2.5.0
881 changes from 32 contributors (of which 12 are new contributors). 330 files were affected.
Main Changes
What's Changed
- Correct undefined const DEFAULT_NO_PASSWORD_SAVE in Docker by @Shadow243 in #1243
- Update docker image to latest version released v2.4.0 by @Shadow243 in #1248
- Allow the execution of a presave draft handler, enabling third-party software integrating with Cypht to customize how a draft is stored by @mercihabam in #1247
- [FIX]setup_database.php: Check if the required MySQL extensions are loaded by @Baraka24 in #1251
- [FIX]hm-smtp.php: Initialize to avoid undefined variable warning by @Baraka24 in #1250
- [FIX]Imap quota: fixing quota appears more than once by @Baraka24 in #1218
- [FIX] Make server page responsive by @Bienvenumoringa in #1240
- Fix reload_folder_list browser test by @indridieinarsson in #1253
- [Fix]Extension check introduced for Docker builds by @goldenmean58 in #1258
- [FIX] Make the send button enabled on compose page by @GedeonTS in #1246
- Improve messages caching to ensure a message isn't fetched more than once when viewing its content by @mercihabam in #1252
- Add linux/arm64 and linux/386 architectures building by @rodriguezny in #1261
- Fixed AllInkl provider in Cypht V2 by @josaphatim in #1260
- Add linux/arm/v7 and linux/arm/v6 building by @rodriguezny in #1262
- Automate running local tests by @jonocodes in #1042
- Fix phpunit command according to 1042 by @Shadow243 in #1263
- Include js_modules files content in the final generated site.js by @mercihabam in #1264
- Added code to raise exception on database errors by @josaphatim in #1257
- Should be off by default | Address the controversial part in read rec… by @Shadow243 in #1181
- [FIX]Blocklist:can not edit a block by @christer77 in #1079
- [FIX]hm-smtp.php: Declare properties to avoid deprecated dynamic prop… by @Baraka24 in #1249
- Fix executing handler sieve filters enabled message content when server is configured without sieve by @josaphatim in #1268
- [FIX]apache errors in its log:Already registered module for compose re-attempted: load_contacts AND Already registered module for contacts re-attempted: process_import_contact by @christer77 in #1167
- [FIX]hm-mime-message.php: Replace the mb_convert_encoding() function … by @Baraka24 in #1272
- [FIX] output_modules.php : fixing Call to a member function get() on null by @Bienvenumoringa in #1276
- [ENH] Implement Expose IMAP capabilities for sharing folders by @Shadow243 in #1270
- [FIX] modules.php PHP Warning Undefined array key of redirect uri and… by @amaninyumu1 in #1254
- Correct ajax_imap_accept_special_folders condition on quick_servers_setup by @Shadow243 in #1283
- Disable duplicate redis extension from Github actions by @Shadow243 in #1284
- Implement browser history API based navigation, preventing page reloads between routings by @mercihabam in #1266
- [FIX]Imap quota: Fixing quota appears only once folders are expanded by @Baraka24 in #1275
- Correct settings.py & tags.py selenium tests and uncomment it by @Shadow243 in #1193
- Fix selenium load_settings_page test by @josaphatim in #1286
- Correct sieve connection when using scheme by @Shadow243 in #1199
- Correct imap buttons on servers page & trigger change sieve_mode_tls checkbox on edit server by @Shadow243 in #1289
- [ENH] Added functionality to enable or disable Sieve Filters with toggle button by @amaninyumu1 in #1104
- Fix some page handlers issues by @mercihabam in #1288
- Edit Tag module readme by @Shadow243 in #1293
- Correct pagination while displaying contacts by @Shadow243 in #1125
- Indicate session-limited actions via a popover by @mercihabam in #1295
- [FIX] Move email: Enable drag-and-drop feature to move messages betwe… by @GedeonTS in #1233
- Change the frequency at which messages are prefetched by @mercihabam in #1297
- [FIX]Fix deprecated warnings for preg_match() and mb_strtolower() in Webmail sieve filters by @Baraka24 in #1281
- Fix sieve tls on Quickly add an account from popular E-mail providers by @Shadow243 in #1303
- Allow the exclusion of certain JS libraries from being bundled when integrating Cypht with third-party software by @mercihabam in #1301
- Remove the duplicate of cash.min.js and fix js libs exclusion by @mercihabam in #1305
- Add a privacy settings section with the external images whitelist config by @mercihabam in #1299
- Slight adjustements to the menu on mobile viewports to work properly with the routing system by @mercihabam in #1309
- [FIX]Bulk-import accounts using yaml or csv template: Allow both text/csv and text/plain files to be parsed as CSV, accommodating Tiki’s MIME type handling by @Baraka24 in #1310
- [FIX].env.example: DISABLE_ORIGIN_CHECK assigns twice by @Baraka24 in #1316
- Removed forget/save actions by @josaphatim in #1311
- [ENH]message list: Preview of message when viewing message list by @christer77 in #1241
- [FIX]Displaying multiple messages with the same content for a given a… by @christer77 in #1106
- Tweak the sidebar for a modern look and feel by @mercihabam in #1313
- Fix css on privacy setting by @josaphatim in #1324
- Fix the combined inbox not excluding content from folders removed by the user by @mercihabam in #1327
- [ENH] Remove duplicate SMTP display names in dropdown by @DKing2222 in #1326
- Sort combined messages list chronologically and adjust the tag data request and handler by @mercihabam in #1329
- Fix smtp test server action by @josaphatim in #1343
- Allow performing a search operation in all folders by @mercihabam in #1337
- Use date as the default sorting field for all message lists by @mercihabam in #1345
- Fix the display of the unread folder counters and re-adjust the layout to have the sidebar fixed on the view by @mercihabam in #1346
- [UX]Renamed 'add_contact' to 'add_contact_responsive' to improve resp… by @amaninyumu1 in #1335
- [FIX]DEFAULT_TEXT_ONLY value must be false by @Baraka24 in #1317
- Enhance the sidebar's collapsible/expandable behavior by ensuring that only the minimum necessary content is shown and the layout remains intact when the sidebar is collapsed by @mercihabam in #1347
- Prevent external links from trying to navigate internally by @mercihabam in #1352
- [ENH]DragAndDrop: add drag and drop functionality on touchscreens by @GedeonTS in #1356
- [DOC]Dev Page: Reviewing documentation links by @Baraka24 in #1357
- make sieve data format automatic on connect by @Shadow243 in #1331
- Fix the sieve filters page which is duplicating the modal content by @mercihabam in #1358
- Reduce left menu height to make it appealing by @josaphatim in #1363
- Fix accessing keys when server was not found by @josaphatim in #1364
- Fixed tag display content by @Shadow243 in #1339
- Revert "Fixed tag display content" by @mercihabam in #1365
- Edit Contact: Cleaning up fields after editing the contact by @...