May/June KDE PIM summary blog post

Volker Krause vkrause at kde.org
Mon Jun 27 16:06:49 BST 2022


Hello everyone,

it's time for the bi-monthly blog post again :)

If you have contributed in May or June, a summary of your most
noteworthy changes would be helpful, bonus points for corresponding
screenshots or links to already existing blog posts. If you noticed something
noteworthy during the past two months, feel free to add that as well of
course!

To help refresh your memories and to make sure we aren't missing anything
important, there's two files attached here, an auto-generated detailed
changelog (this tends to be 30-50% of the commits, using David F's changelog
scripts for KF5 releases), and basic commit stats for the PIM repositories.

Additionally, we need help with compiling, editing and eventually publishing 
the blog post. Ideally this rotates between a number of people so that 
everyone has to do that only once per year or so.

I did the previous one (https://volkerkrause.eu/2022/05/04/kde-pim-march-april-2022.html) , who wants to do this one?

Thanks for you help!
Volker
-------------- next part --------------
### Akonadi #

* Add missing Q_REQUIRED_RESULT
* Don't delete mariadb log files (bug 454948)
* Use cmakedefine01
* install plugins in pim<version>
* Fix install plugin in pim<version>
* Install version header in include/KF*/AkonadiCore
* QSqlQuery::boundValues() returns a QList<QVariant> in Qt6
* Fix infinite recursion in QStringList DataStream operator with Qt6
* Fix adapt arguments to qt6
* Explicitly construct a QByteArray here
* Add include needed with Qt6
* Rely on automatic pair type deduction
* Adapt AkRanges to Qt6 container changes
* Make it compile without deprecated methods
* Add KF5::KIOCore only to private link interfaces
* Follow BinaryUnitDialect option (bug 454182)
* Add a QGadget to collection
* Remove namespace
* Disable warning
* Close memory leak (bug 423575)
* enforce using $database_akonadi AppArmor profiles
* Add CollectionUtils::fromIndex()
* Remove unimplemented constructor
* Port QNetworkConfigurationManager in qt6


### KContacts

* Re-enable vCard CATEGORIES export


### KCalendarCore

* Add calendar loading state property
* Fix UTC offset timezone loading with latest Qt 5.15.x
* Change the xCalFormat classes to use a hierarchical dptr
* Make the Calendar::accessMode property actually accessible from QML
* Don't heap allocate ICalFormatImpl in ICalFormat::Private
* Remove unnecessary and largely unused d pointers in the Compat* classes
* Remove ICalFormatImpl d pointer and vtable
* Don't remove the hasGeo property for Qt6, just make it read-only
* Change Calendar::sortX() methods to work in-place
* Initialize all fields in a default constructed Attendee object
* Add Duration <-> iCal string conversion methods to ICalFormat
* Deprecate largely unused rawEventsForDate overload


### KHolidays #

* Work around qmlplugindump crashing on gadget singletons



### KMime #

* Use cmakedefine01
* Fix potential out-of-bounds access in unfoldHeaders() for invalid input
* Make sizetest pass with Qt6
* Make it compile without deprecated methods


### KIMAP #

* Make #include <kimaptest/faskserver.h> work with KF6
* Add Qt6 Linux CI
* Make int to QChar conversion explicit
* Replace QMap::unite with QMap::insert
* Make it compile without deprecated methods
* Port to PMF signal/slot syntax


## ksmtp

* Make it compile without deprecated methods
* Fix spelling of the Delivery Status Notification (DSN) abbreviation



### KLDAP #

* Cleanup ldap_extended_operation/_s related buildsystem code
* Use cmakedefine01
* Make it compile without deprecated methods


## kpimtextedit

* Port one QRegExp to QRegularExpression
* Make it compile without deprecated methods
* We depend against 5.94 now
* Remove duplicate header between header cpp file
* Use QStandardPaths


### Akonadi Mime #

* Move mdnstateattribute here
* Report error but continue
* It's not necessary to use Q_SLOTS here
* Fix bug 453969 Only small amount of emails can be marked as read (bug 453969)
* Fix automoc warnings
* Use helper class
* Start to fix bug 453969
* Make Akonadi::MessageStatus a QGadget
* Make it compile without deprecated methods
* Fix follow BinaryUnitDialect (bug 454182)
* const'ify variable
* Use pointer directly


### Akonadi Contacts #

* install in pim<version>
* fix plugin path
* Move plugins in pim<version>
* convert to json
* Fix porting error
* Make it compile without deprecated methods
* Use KDatePickerPopup from KWidgetAddons
* Remove old code
* Store tags names rather than tag IDs in KContacts::Addressee (bug 332358)


### Akonadi Calendar #

* Add "Remind in 1 hour" option
* Search plugin in pim<version>
* add missing connect for the "Dismiss" action (bug 453567)
* Handle empty incidence (bug 453395)
* Handle empty incidence (bug 453395)
* Explicitly link against KConfigCore
* Make it compile without deprecated methods
* Don't make notifications for already ended events persistent
* Add translation context for the "Dismiss" action (bug 452264)
* Set the Bugzilla product/component in the reminder daemon about data
* Use Akonadi::CollectionUtils::fromIndex()
* Move CalendarSupport::displayName to Akonadi::CalendarUtils
* Remove duplicate header between header cpp file
* don't store url when it's not valid


### Akonadi Notes #

* Make it compile without deprecated methods


### Akonadi Search

* Fix path
* install plugin in pim<version>
* Port to json format
* Explicitly link against KConfigCore
* Make it compile without deprecated methods
* Make compile in qt6
* Remove duplicate header between header cpp file


## libkdepim

* Make it compile without deprecated methods
* auto * -> auto


## kidentitymanagement

* Make it compile without deprecated methods
* Remove duplicate header between header cpp file


## pimcommon

* Move in own directory for plugins
* Use instance here
* Port to qregularexpression
* Now as I can build akonadi* in local I can set as required
* Make it compile without deprecated methods
* Fix i18n
* Disable warning
* We depend against kf5.94 now
* Make compile without deprecated kf5.94 method


### LibKGAPI

* Compile on macOS
* Make it compile without deprecated methods
* Add ecm_install_po_files_as_qm
* auto * -> auto
* Remove duplicate header between header cpp file


## kmailtransport

* Make it compile without deprecated methods
* Fix some compile error against qt6
* Remove duplicate header between header cpp file
* Add separator


## libkleo

* Bump library version
* Use a custom date format for screen readers
* Make functions returning string/accessible string for QDate public
* Allow customization of string for no expiration
* Remove duplicate header between cpp/h
* Bump library version
* Add QDebug stream operator for GpgME::Key
* Remove usage of std::unary_function and std::binary_function
* Bump library version
* Move enum KeyUsage to KeyCache
* Bump library version
* Make oidmap a std::vector
* Namespace the functions
* Add function for mapping OID to attribute name
* Port to QRegularexpression (allow to build libkleo to qt6)
* now all can be build without deprecated methods
* Remove KDHorizontalLine
* Use QLabel plus KSeparator instead of KDHorizontalLine
* Port deprecated setTime_t method
* Port filterRegExp to filterRegularExpression
* Port QApplication deprecated method
* Fix includes for fixing some qt6 compile error
* Port to QRegularExpression
* Port QDirModel to QFileSystemModel
* Revert "Fix includes/forward declaration for helping to build against qt6"
* Fix includes/forward declaration for helping to build against qt6
* We need qt6compact lib for qregexp
* Return null subkey if there are no subkeys with the given key grip
* Fix findSubkeyByKeygrip for unknwon protocol


### GrantleeTheme #

* Don't use deprecated variable
* Use non-deprecated install location variables
* Try to install plugin
* Fix plugin name
* Make it compile without deprecated methods
* We depend against kf5.94
* Remove duplicate header between header cpp file
* Fix crash
* Make compile against deprecated methods


### KCalUtils #

* Use ktexttemplate_adjust_plugin_name
* Use non-deprecated install location variables
* Make it compile without deprecated methods
* auto * -> auto
* Display year of exception to yearly recurrence
* A QDrag owner no longer needs to be a wiget, an QObject is enough


### KMBox #

* Port to QRegularExpression
* Make it compile without deprecated methods
* auto * -> auto


### Gravatar

* Make it compile without deprecated methods


## messagelib

* Check if we can start job
* Show mdnwarning
* Fetch Akonadi::MDNStateAttribute
* Fix export mdnwarningwidget class
* Use mdnstateattribute from akonadi-mime
* Simplify code
* Fix includes
* Fix namespace
* Fix mdnwarningwidgetjob class
* Add mdnwarningwidgetjob
* Extract method for mdn text
* Allow to add information
* When we don't found info => it's ok
* Remove unused debug
* Allow to get MDNWarningWidget
* Remove duplicate header from cpp/h
* Add support for mdnwarning
* Fix warnings when building against qt6
* Install plugins in pim<version>
* Fix plugin path
* Install bodypartformatter in pim<version>
* install plugins in pim<version>
* Install plugins in pim<version>
* Fix some qt6 compile error
* Don't use cmake deprecated method
* install plugin in specific directory
* Make it compile without deprecated methods
* Use WebEngineWidgets as WebEngine is not define in qt6
* Fix includes
* Fix some compile error
* fix link to qca-qt<version>
* Fix some qt6 compile error
* Fix some includes
* Fix some compile error against qt6
* Remove unused KFormat
* Fix bug 454182: message (part) size display: please follow BinaryUnitDialect everywhere (bug 454182)
* Reactivate code
* Remove it (moved in mailcommon)
* We need qt6compat (QRegExp)
* it's enabled by default in qt6
* Fix some qt6 compile error
* Fix qt<version>
* It's enable by default in qt6
* Fix cmake variable
* We depend against kf5.94 now
* Use align=center in favor of align="center"
* Use keyID instead of shortID
* Add tests for NearExpiryChecker
* Move private class to _p.h to be able to use it in tests
* register metatypes for tests
* Refactor KeyNearExpiryChecker into own class
* Continue to create job
* auto * -> auto
* Add delete job
* Export symbol
* Add tooltip
* We only need a close button here
* Remove duplicate code
* Fix import rules
* Allow to enabled/disabled export button
* Add canStart method
* Start to implement MDNWarningWidgetJob
* TODO--
* Use default destructor
* hide it when we click on button
* Add support for 'can deny'
* Verify emit signal
* don't show close button
* Add signal
* Use namespace + export symbol
* Move mdn code here
* Make compile mdn support here
* More code from mailcommon here (need by mdn widget)
* Add send/ignore action
* Prepare to implement mdnwarningwidget
* Use auto directly
* [cleanup] use consistently setupEnv and not bare functions
* objecttreeparsertest, rendertest, unencryptedmessagetest: set en_US locale
* [mimetreeparser] (tests): Is user is able to override the encoding
* Allow to set overrideCodec
* Fix encoding when decoding inline encrypted data
* EncryptedBodyPartFormatter::process(): fix use of encoding on decrypting
* Use QStandardPaths


## mailimporter

* Make it compile without deprecated methods


## mailcommon

* Adapt api : 'MDNStateAttribute' moved to akonadi-mime
* Fix 455273: "From <end-with>" filter fails to identify sender when they also have a name (bug 455273)
* Remove duplicate from header/cpp
* Make it compile without deprecated methods
* Remove not necessary
* Fix some qt6 compile error
* Add signal
* Rename class
* Add mdnwarningwidgetjob
* We depend against kf5.94 now
* code moved to messagelibs


### Calendar Support #

* Use Q_REQUIRED_RESULT + const'ify pointer
* Use kcalendarcore_version.h => we can build against qt6 too
* Make it compile without deprecated methods
* Remove KDatePickerPopup copy
* Use Akonadi::CollectionUtils::fromIndex()
* Implement findMostCommonType using type enums rather than type names
* Adapt to displayName() having been moved to akonadi-calendar
* Remove unused createMimeData() overload
* Use calendar item access utility methods from akonadi-calendar
* Use standaloneMonthName in the printed month's header (bug 453292)
* Remove plugin class


## kontactinterface

* initialize pointer
* It builds against qt6
* aboutData is unused in kontact
* Adapt plugin api to allow to build without deprecated methods
* Make it compile without deprecated methods
* Remove PimUniqueApplication::activateApplication
* Fix activating running pimuniqueapps on Wayland


## eventviews

* not necessary namespace in qt5 too
* Install plugins in pim<version>
* Fix warning when building against qt6
* Use kcalendarcore_version.h as we can build in qt6
* Make it compile without deprecated methods
* Make it compile without deprecated methods
* Use KDatePickerPopup from KWidgetAddons
* Make compile against qt6
* Simplify TodoModelPrivate
* TodoViewQuickAddLine: fix adding a todo using the quick add line
* Compilation error
* Edit start dates in the Todo view
* Adapt to displayName() moving to akonadi-calendar
* Add i18n
* Use standaloneMonthName in the Month View's header (bug 453292)
* Remove some SIGNAL and SLOT macros
* Remove unneeded superclass from decoration class
* Port decoration plugin loading away from KServiceTypeTrader
* Keep dtStart valid when moving a todo


## incidenceeditor

* Fix order
* const'ify pointer
* Search plugins in pim<version>
* not necessary namespace in qt5 too
* Unchecking the "Due" checkbox of a recurring to-do had no effect
* Make it compile without deprecated methods
* Fix cppcheck warning


## libksieve

* Add missing icons
* It's a boolean
* Fix menu position
* Rename method as setWordWrap
* Install version header in include/KF*/KSieve
* Check is not necessary as we depend against new kf5
* Add missing licence
* Install plugins in pim<version>
* Make it compile without deprecated methods
* We depend against kf5.94 now


### KPkPass

* Make it compile without deprecated methods


### KItinerary

* Add Trenitalia ical extractor script
* Match extractor filters against gadget properties recursively
* Add Trainline ical extractor script
* Deal with timespec UTC and timezone UTC being two different things
* Add GWR ical extractor script
* Consider empty variant lists as semantically null as well
* Consider more variations for merging train reservations
* Add ical extractor for Swiss booking confirmations
* Multiply results when encountering reservationFor arrays
* Add extractor script for DB ical events
* Handle more transport modes for filtering triangle elements
* Filter out combined train reservation elements if we have individual legs
* Make KF5::CalendarCore a required dependency
* Remove long unused and deprecated method
* Extend trigger conditions for DB tickets/seat reservation emails
* Remove extra ';'
* Don't choke on DB tickets without a booking reference in the PDF
* Make UIC 918.3 ticket key cleaning a lot less aggressive
* Strip trailing null bytes in fixed-width UIC 918.3 string fields
* Extend trigger pattern for connect.sncf emails (bug 404451)
* Ensure we are always dealing with positive aspect rations
* Augment arrival time from ZSSK PDF tickets when present
* Add extractor script for ZSSK domestic ticket barcodes
* Generate a return trip for RCT2 return tickets as well
* Add access to the return trip line in RCT2 tickets
* Add RCT2 ticket type pattern for ZSSK
* Produce correct reservation numbers for ZSSK RCT2 tickets
* Add findEvents overload taking a raw calendar pointer
* Use cmakedefine01
* Add custom extractor script to produce meaningful ticket names for BVG PDFs
* Use ÖBB vendor blocks to determine ticket validity intervals as well
* Determine ticket names for RCT2 tickets
* Add better diagnostics for the RCT2 parser test
* Emit top-level Ticket objects for VDV eTickets
* Implement top-level Ticket merging
* Extend SNCF Carte Advantage extractor to cover the validity interval
* Extend the BahnCard extractor to also provide the validity interval
* Add validity interval to generically generated UIC 918.3 Ticket objects
* Support QDate properties in JsonLD::readQDateTime as well
* Make 0080BL UIC 918.3 order blocks JS-accessible
* Extend Ticket and ProgramMembership by a validity time interval
* Generate top-level Ticket results for UIC 918.3 containers
* Add validation filter for top-level ticket elements
* Rely on trigger node content, not their incomplete extractor results
* Fix hex vs decimal mix-up in barcode content detection
* Extend Ticket to cover more properties specified in schema.org
* Try to fix Android ARM64 linker errors with Qt6
* Slightly relax the square barcode aspect ratio threshold
* Emulated Qt5 behavior in dumping the object tree for Qt6
* Don't attempt to dump raw binary in the script engine test
* Normalize opaque KCalendarCore shared pointer type name
* Qt6 doesn't ignore spaces when parsing ISO-formatted date/times anymore
* Fix Android ARM64 CI build
* Adapt to Qt6 no longer doing "deep" variant comparison by default
* Adapt to QVariant::isNull semantics change in Qt6
* Check a meta type is a gadget before treating it as such
* Make flag construction explicit
* Adapt generic QVariant creation to Qt6 API
* Explicitly truncate strings at the first null byte
* Port QByteArray -> JS ArrayBuffer conversion to Qt6
* Make it compile without deprecated methods
* Try harder to clean Eventbrite street addresses
* Resolve HTML entities in names
* Extract UK railway station codes from Stansted Express pkpass files
* Resolve UK railway station codes during post-processing
* Rebuild train station database to include UK railway station codes
* Generate UK railway station code lookup table
* Add extractor script for UK national rail PDF tickets
* Add extractor script for Thalys PDF tickets
* Use non-deprecated ticket token enum values
* Add PDF extractor stage for SNCF discount cards (bug 453322)
* Extract SNCF discount card barcodes (bug 453322)
* Extract SNCF discount program information from tickets (bug 453322)
* Fix reservation number propagation from barcode to PDF extracted data
* Only search the OpenSSL component we actually use
* Remove conditionals used for building without Poppler
* Fix some qt6 compile error
* Ensure RCT2 dumps are treated as binary files by Git everywhere


## ktnef

* Make it compile without deprecated methods


## akonadi-import-wizard

* install plugins in pim<version>
* install plugin in pim<version>
* Fix import ldap settings
* Make it compile without deprecated methods


## akonadi-calendar-tools

* Make it compile without deprecated methods


## akonadiconsole

* Port to QRegularExpression
* Use cmakedefine01
* Install plugins in pim<version>
* Make it compile without deprecated methods


## kaddressbook

* Modernize code
* Increase plugin version
* Adapt to new plugin api
* Install plugins in pim<version>
* Install plugin in pim<version>
* Convert to json
* Convert to json directly
* Install plugins in pim<version>
* install plugin in kontact<version>
* Make it compile without deprecated methods
* Add Open Age Rating
* Use openStateConfig for storing dialog size
* Implement tag name search
* Avoid having two "color scheme" menu in kontact


## akregator

* const'ify pointer + use Q_REQUIRED_RESULT
* Remove duplicate from header/cpp
* Make compile against qt6
* Add missing lib in qt6
* Increase plugin version
* Adapt to new plugin api
* Install plugins in pim<version>
* Install plugin in pim<version>
* install plugin in kontact<version>
* Don't enter event loop in akregatorstorageexporter
* Make it compile without deprecated methods
* Revert this part as it breaks compile
* Add missing gpgme version
* Syndication lib is needed when building against qt6
* Allow to search gpgme (need in qt6)
* Fix some qt6 compile errors
* Fix some qt6 compile error
* Follow BinaryUnitDialect option (bug 454182)
* Fix cmake variable (fix qt6 configure)
* Drop plugin system
* Re-format css (no functional change)
* More html tweaks
* Fix document structure
* Font size is supposed to be in points, not pixels
* Hide progress widget when inactive


## grantlee-editor

* Make it compile without deprecated methods


## kalarm

* Port some deprecated methods
* Port some qregexp code
* Move plugin in pim<version>
* Make it compile without deprecated methods
* Fix some qt6 compile error
* Add Open Age Rating
* We can use KAuthCore (need for building against qt6)
* Remove duplicate header between header cpp file
* Don't show volume fade controls if Phonon backend doesn't support fade
* Fix sound files not playing after previously playing with fade
* Bug 453193: Fix crash in font chooser after deselecting default font (bug 453193)


## kdepim-addons

* Remove unused json argument
* Convert to json
* install plugins in pim<version>
* Fix install plugin in pim<version>
* Install plugin in pim<version>
* Port QTextStream::setCodec to qt6
* install plugin in pim<version>
* Install bodypartformatter plugin in pim<version>
* Install plugins in pim<version>
* Install plugins in pim<version>
* install in pim<version>
* install in pim<version>
* Don't use deprecated cmake macro
* install plugins in pim<version>
* Make it compile without deprecated methods
* Fix porting
* fix headers
* Fix some compile qt6 error
* fix some qt6 compile error
* Use ApplicationLauncherJob to open KOrganizer
* Use KService and ApplicationLauncherJob for handling Itinerary
* modernize code
* We need Qt6Core5Compat
* We depend against kf5.94 now
* Use context here too
* Get rid of the plural message disambiguation
* Add edit/remove/add rule buttons
* Add button for add/remove/modify rule
* auto * -> auto
* Remove duplicate header between header cpp file
* [korganizer/plugins] Embed JSON metadata and install to korganizer namespace


## kdepim-runtime

* Use cmakedefine01
* Let CMake Define HAVE_BYTESWAP_H
* install in pim<version>
* Guard qtxmlpatterns dependency under BUILD_TESTING option
* install plugins in pim<version>
* Convert to json
* Fix qt_add_dbus_interface usage
* Add desktop file for IMAP resource
* Fix some compile qt6 error
* Use kcalendarcore_version.h => we can build against qt6 too
* Make compile without deprecated methods
* Make it compile without deprecated methods
* It wrote by default in "utf-8" in qt6
* Fix property info
* Port some qt6 compile error
* fix configure against qt6
* const'ify variable
* Use const + add missing Q_REQUIRED_RESULT
* Add more Q_REQUIRED_RESULT
* Const'ify++
* Add more Q_REQUIRED_RESULT
* Add missing q_required_result + const'ify variables
* const'ify variables
* Rename header file


## kleopatra

* Help screen readers with reading the finger print
* Make creation date and expiration date easier to understand
* Give the property action buttons a useful accessible name
* Make certificate properties accessible
* Remove useless signal connection
* Add button for showing the issuer certificate
* Remove unused "Publish Certificate" widgets
* Simplify the layout of the certificate details widget
* Create the widgets in the correct order
* Ensure that focus for link is announced after focus for label
* Reuse HtmlLabel for UrlLabel
* Factor the anchor cache out into a separate class
* Remove workaround for missing focus indicator for text labels
* Add a focus frame to labels that receive keyboard focus
* Use our HtmlLabel for the Welcome message
* Make "select label text on focus" workaround customizable
* Implement the action interface for AccessibleLink
* Make links in label text accessible
* Require C++20
* Avoid deprecation warning
* Avoid deprecation warning
* Make lambdas used in std::accumulate compatible with C++20
* Remove duplicate from header/cpp
* Add a Reload button to the smart card placeholder widget
* Focus first child widget when switching the main view
* Initialize pointers in-class and pass parent to all widgets
* Factor certificate view out of MainWindow into separate widget
* Fix the tab order on the Welcome page
* Add two helpers for debugging focus chain problems
* Make the tool bar buttons accessible
* Change maximum expiration date to 2106-02-05
* Remove the margins around the name and email widget
* Use customized labels and hints in Add User ID dialog
* Allow customization of name and email input field labels
* Allow setting a custom hint for name and email address
* Use separate dialogs instead of the wizard when creating OpenPGP keys
* Allow getting the parentWId of a command
* Add default c'tor for KeyParameters
* Do not set key size or curve type to invalid values
* Set the initial focus just before showing the dialog for the first time
* Make the EmptyPassphraseProvider available to other classes
* Factor invokeMailer helper from ResultPage
* Install plugin in pim<version>
* Fix invoking email client with given recipient address
* Use debug stream operator provided by libkleo
* Replace some static QMaps with std::array
* Store the rest of the key parameters with their native types
* Set and store the usage flags of key and subkey using new KeyUsage
* Store type of key and subkey with native type
* Add class wrapping the key usage flags
* Make KeyParameters copyable and movable
* Remove unused page ID
* Required new version of libkleo
* Fix wrong connections
* Optimize containers' usage
* src/uiserver/*command: port to PMF signal/slot syntax
* Use simple struct with two Keys instead of a QMap
* src/view/key* : port to PMF signal/slot syntax
* Use std::find_if instead of Q_FOREACH
* Port Q_FOREACH to range-for
* Remove obsolete Choose Protocol page of NewCertificateWizard
* Use simple push buttons instead of QCommandLinkButtons
* Extract "Choose Protocol" dialog from NewCertificateWizard
* Modernize code
* Port QDirModel to QFileSystemModel
* Make it compile without deprecated methods
* Port to QMetaType
* Port QStringRef
* Make static lib POSITION_INDEPENDENT_CODE (need to link against qt6)
* Make compile against qt6 (in qt6 it returns qsizeint)
* use no deprecated cmake variable
* Sort source files alphabetically
* Remove reference to undefined variable
* Fix show headers in qtc6
* Factor name and email input into separate widget
* Fix check for empty user ID
* std::unary/binary_function have been deprecated and removed in C++17
* Add homepage
* Add Open Age Rating
* action_data: use enums instead of bool members to improve reability
* Port signal/slot that use action_data struct to PMF/Functor syntax
* We can store size in KSharedConfig::openStateConfig
* SMimeValidationConfigurationWidget: move connect() calls to Private's constructor
* SMimeValidationConfigurationWidget: port to PMF singal/slot syntax
* Fix name clash between wizard page classes and page enum values
* ReaderStatus: use a std::function in Transaction struct
* Manage lifetime of validators with shared pointers
* Manage lifetime of validator with shared pointer
* ChecksumsUtils: split the implementation to .cpp file
* Checksum Controller: port to QRegularExpression
* VerifyChecksumsController: use static methods from checksumsutils_p.h
* CreateChecksumsController: move static util methods to a private header
* Keep the old contents margins
* Never shrink the window when adjusting its size
* Allow scrolling the tabs of the Advanced Settings dialog vertically
* Create UI of Advanced Settings dialog in code
* Create UI of Key Creation page in code
* Give the scroll area a bit more vertical space
* Allow scrolling the Result page vertically
* Create UI of Result page in code
* Allow scrolling the Enter Details page vertically
* Reduce the height of the minimum size hint of our scroll area
* Create UI of Enter Details page in code
* Move ResultPage to file of its own
* Remove unused code
* Move KeyCreationPage to file of its own
* Make WizardPage independent of NewCertificateWizard's Private class
* SetInitialPinCommand: port to PMF signal/slot syntax
* SetInitialPinCommand: ensureDialogCreated() shouldn't be const
* GenRevokeCommand: create a QMetaObject::Connection in the base class..
* ImportCertificatesCommand: importResult() is still used in one SLOT()
* src/commands/*: use PMF/Functor signal/slot syntax
* Add helper for reporting success to the user
* Remove superfluous window caption of error dialogs
* Remove KDAB from copyright notice
* Use member variable for wksJob
* Dropped -provider icon and proper action text
* Drop feature when Akonadi is unavailable
* Cancel running job, if any
* Rewrite as `Kleo::Commands::Command`
* Evaluate error of mail creation job
* Refactor access to identity's transport name
* Refactor and const IdentityManager
* Refactored sender address evaluation
* Added WKS publishing support
* Move EnterDetailsPage and AdvancedSettingsDialog to files of their own
* Move ChooseProtocolPage to file of its own
* Move WizardPage to file of its own
* Allow scrolling the page vertically if the UI elements do not fit
* Create UI of Choose Protocol page in code
* Make the automatic size adjustment work as expected
* Enable word wrapping of the labels of a form text input
* Enable word wrapping of the labels
* Use a scroll area in the Add User ID dialog
* Ensure that the first child widget is visible when it gets focus
* Automatically adjust the height of the scroll area to its contents
* ListWidget: port to QRegularExpression
* Port from QRegExp to QRegularExpression
* Wait for KeyCache in Readerstatus thread
* Do not build kcm for gnupgsystem on windows
* Fix crash when reopening mainwindow
* Use KeyCache::instance() in connect() calls
* src/{utils,view}: port to PMF/Functor signal/slot syntax
* File name extension can be longer than 3 character
* Alternative way to make signals private
* Disable word wrap for certificate dump
* Enable "Change Passphrase" action only for secret keys in local keyring
* Remove unused MustNotBeSecretKey flag
* Fix evaluation of NeedSecretKey flag
* Fix enable state of commands that need access to the secret key data
* Convert values of Restriction enum to hex literals
* Force the entered expiration date into the allowed range
* Reword UI texts for refresh command
* Use RefreshOpenPGPKeysJob for OpenPGP and show detailed result
* Remove duplicate header between header cpp file
* Add possibility to refresh an individual certificate
* Remove ServiceTypes from context menu services
* Do not always enable action after error
* Do not always enable crypt in notepad for de-vs
* Always start gpg-agent on startup
* Move AutoLoadP15Certs to Smartcard group
* p15: Change load CMS certs btn to automatic
* Make setShowsOutputWindow public for GnuPG CMD


## kmail

* Start to implement mdnwarningwidget
* Adapt to new api
* Create variable on stack here too
* Fix includes
* const'ify
* const'ify pointer
* Remove mem leak. Create widget on stack
* Create on stack
* Create on stack directly
* Use auto directly
* Increase plugin version
* Fix plugin api
* Install plugins in pim<version>
* Install plugin in pim<version>
* Fix update menu when we switch tab
* install plugins in pim<version>
* Install plugins in pim<version>
* Fix install in kontact<version>
* It's enabled by default in qt6
* Make it compile without deprecated methods
* It's enabled by default in qt6
* Fix some qt6 compile error
* Fix some compile error against qt6
* Follow BinaryUnitDialect option (bug 454182)
* Add Open Age Rating
* const'ify
* Fix crash when we add/edit/remove not
* const'ify
* Fix cmake variable (fix qt6 configure)
* We depend against kf5.94
* Use QStandardPath
* Fix activating already running instance
* Add missing Q_REQUIRED_RESULT
* const'ify variable
* Not necessary to check if list is empty
* Add separator
* Use =default
* Adapt code to new api
* Remove duplicate header between header cpp file
* Add export header in #ifdef
* const'ify
* Use auto
* USe QStandardPaths
* Add missing space
* Fix Bug 453194: Manual linebreaks in tooltip strings (bug 453194)


## kmail-account-wizard

* Set oauth2 authentication type for smtp
* Allow oauth2 for non-imap as well (bug 445229)
* Use cmakedefine01
* Make it compile without deprecated methods


## knotes

* const'ify pointer
* Increase plugin version
* Adapt to new plugins api
* Install plugins in pim<version>
* Install plugin in pim<version>
* install plugin in kontact<version>
* Make it compile without deprecated methods
* Add Open Age Rating
* Fix some qt6 compile errors
* Fix linking against qt6
* Don't use old cmake variable
* We depend against kf5.94
* Make compile without deprecated methods


## kontact

* Fix some qt6 compile error
* Fix dependancy
* Install plugins in pim<version>
* Install plugin in pim<version>
* Fix json path
* Convert to json directly
* Use kontact<version>
* Make it compile without deprecated methods


### KOrganizer #

* Constify some pointer
* Increase plugin version
* Adapt to new plugin api
* Install plugins in pim<version>
* Install plugin in pim<version>
* install plugin in kontact<version>
* Use kcalendarcore_version.h => we can build against qt6 too
* Make it compile without deprecated methods
* Fix some qt6 compile error
* Add Open Age Rating
* We depend against kf5.94
* Use Akonadi::CollectionUtils::fromIndex()
* Adapt to displayName() moving to akonadi-calendar
* Don't show twice colorscheme menu in kontact
* Port from KNS3::QtQuickDialogWrapper to KNSWidgets::Action
* Port decoration plugin loading away from KServiceTypeTrader


## mbox-importer

* Make it compile without deprecated methods


## pim-data-exporter

* Remove duplicate headers between .cpp/.h
* Fix copy file
* Use mkpath here
* Fix reactivate action when we cancel sync
* Check if we can extract file/directory
* Exclude akonadi_google_resource too for setPath
* Add qWarning here
* Add debug
* Check error
* Fix info
* Fix export default maildir folder
* Add debug info
* Add more info
* Use more emitError methods
* We need to keep order
* Create on stack
* These resources doesn't have setPath method
* Add debug info
* Fix i18n
* Use emit<method> here too
* Add emitError too
* Use more emitInfo
* Show apps name
* Make it compile without deprecated methods
* Add homepage
* const'ify pointer
* Fix some warnings
* Add folder attribute import/export
* Add Open Age Rating
* Add favorite folder support
* Remove duplicate code
* Simplify import data
* Fix store attribute folder
* fetch next folder
* implement import attributes
* Generate list
* Create list of folder to import
* Use directly friend class
* Continue to implement import folder attributes
* Fix install file
* Use archiveDirectory
* Continue to implement importmailfolderattribute job
* Prepare to implement import folder attribute
* Add info about mailfolderattributes
* Convert akonadi id to full path
* Export attributes
* Create base class
* Comment debug
* Show error when we can't store file
* Improve export folder attributes
* We need a job for importing folder attributes
* Use archive
* Prepare to store data
* Get attributes info
* Rename signals
* Add warning
* Specify that we need only message folder
* Store Akonadi::EntityDisplayAttribute too
* Implement exportmailfolderattributejob
* Add TODO here
* Add export mail folder attribute
* Prepare to backup folder attributes
* Modernize code
* auto * -> auto
* Show all headers in qtc6
* use auto directly
* const'ify variable
* USe auto foo directly
* Const'ify variable
* const'ify variables
* const'ify pointer
* Show headers in qtc6
* Remove it
* Fix install variable
* Prepare to use custom install dir PIMDATAINSTALL_DIR
* Fix some compile warnings
* Show all headers in qtc6
* Fix export reminder agent config
* Fix update buttons
* Comment for the moment
* fix import/export colors
* Fix import kalendar config


## pim-sieve-editor

* Adapt to new api
* Make it compile without deprecated methods
* Add Open Age Rating


## Kalendar

* Remove unused forward declaration
* Remove duplicate headers between cpp/h
* Add a contact and contact group editor
* Const'ify methods
* Remove ';' here
* Remove extra ';'
* Stop the madness with infinitecalendarviewmodel, let views manage their own incidence models
* Add license
* Remove duplicate headers between .cpp/.h
* Make sure itemChanged sets item and not just ptr
* Add a date parser that works around JS dumb handling of shortened year strings
* Display super/sub tasks in the incidence info drawer
* Fix duration strings
* Fix the delete dialog always closing the incidence info drawer
* Fix open todo data retention
* Ensure edit mode sets incidence item too
* Fix function `todoDateTimeLabel`
* Fix create button in tasks view
* Fix the 'Enable calendar' button in the task view
* Remove duplicated include which breaks build on pre 5.19.40
* Fix 'Create' task button in placeholder message for tasks view
* Stop overusing signals everywhere
* Make incidences which are in the past a bit more transparent
* Improve our use of and simplify the NavigationMouseArea
* Add Open Age Rating
* Fix the hourly view's all day header shadow
* Fix FilteHeaderBar collection name colouring
* Fix QML error messages
* Fix filter header bar
* Rename QML files to give them more accurate and intuitive names
* Fix CI
* Add more contact field
* Change way how the vertical scoll position is calculated
* Make compile with unity
* remove unused forward declaration
* Remove warning
* We have a specific Message.sh in contacts/applet => don't extract twice
* Add Qr code to contact module
* Remove functions from main.qml and move to new KalendarUiUtils singleton
* Code formatting
* Fixed the collection picker page
* Fixed collection picker in incidence editor
* Fixes and updates to our README
* Update README.md
* Add contact applet
* Move contacts integration inside a qml plugin
* Move week view 'scales' from independent entries in sidebar to toggleable header buttons
* Use release service versioning
* Properly parse commandline args when activating running instance
* Move parameter processing earlier in kalendar startup (bug 453807)
* Fix crash when switching out of the contact view
* Make contact header fixed in the top of the pagMake contact header
* Simplify window activation code
* Don't call window->show() on a visible window
* Update flatpak FAQ part
* Fix global menu breakage introduced by MR 214
* Adapt menu for the new contact integration
* Allow adding new address book sources
* Use modern include
* Use Akonadi::CollectionUtils::fromIndex() when available
* Add heading to contact sections
* Add email address model to contact detail
* Add phone number selection
* Add a simple contact view
* REmove duplicate header between header/file
* It compiles without deprecated methods
* Add debug category
* Use directly isEmpty
* Const'ify
* Fix mem leak
-------------- next part --------------
      1 Albert Astals Cid_aacid at kde.org
      1 Carlo Vanini_silhusk at gmail.com
      1 David Faure_faure at kde.org
      1 Eastern Li_easternli at outlook.com
      1 Joao Santos_jsantos at gamblit.org
      1 Martin Koller_kollix at aon.at
      1 Max Leiter_maxwell.leiter at gmail.com
      1 Xaver Hugl_xaver.hugl at gmail.com
      2 Christian Boltz_kde-bugs at cboltz.de
      2 Kishore Gopalakrishnan_kishore96 at gmail.com
      2 Matthias Mailänder_matthias at mailaender.name
      2 Slawek Kaplonski_slawomir.kaplonski at gmail.com
      3 Antonio Rojas_arojas at archlinux.org
      3 Glen Ditchfield_gjditchfield at acm.org
      3 Max von Buelow_max at m9x.de
      4 David Jarvie_djarvie at kde.org
      4 Yuri Chornoivan_yurchor at ukr.net
      6 Friedrich W. H. Kossebau_kossebau at kde.org
      7 Alexander Miller_alex.miller at gmx.de
      7 Glen Ditchfield_GJDitchfield at acm.org
     10 Andre Heinecke_aheinecke at gnupg.org
     10 Felix Tiede_kde at pc-tiede.de
     11 Sandro Knauß_sknauss at kde.org
     22 Carl Schwan_carl at carlschwan.eu
     24 Nicolas Fella_nicolas.fella at gmx.de
     28 Claudio Cambra_claudio.cambra at gmail.com
     30 Heiko Becker_heiko.becker at kde.org
     60 Ahmad Samir_a.samirh78 at gmail.com
    131 Volker Krause_vkrause at kde.org
    141 Ingo Klöcker_dev at ingo-kloecker.de
    811 Laurent Montel_montel at kde.org
Committer: 31
Total: 1331
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-pim/attachments/20220627/6432b2b2/attachment-0001.sig>


More information about the kde-pim mailing list