KDE Core/Platform 11/kdelibsDependencies

From KDE Community Wiki

Warning

This page contains rough working notes from discussion sessions at Platform 11, the contents of which may not accurately reflect any decisions made. Please do not infer anything from these notes, official summaries of the conclusions reached will be made available for discussion as soon as possible.


Results

What we're working on

We're evaluating all the KDELIBS libs and classes and organizing them different groups depending of how much effort we will need to move them outside kdelibs.

KDE-Core dependencies: www.kdab.com/~volker/kde/kdecore-usage-graph.ps

Only Qt Dependencies

  • KJS
  • Solid
  • Compression
  • Threadweaver

Can we move out

  • KHTML
  • Plasma
    • DNSSD
  • Kross
  • KUnitConversion
    • Small usage of kio/solid
  • DNSSD
    • uses KUrl and KStandardDirs (to get the xdg configuration dir)

Need some work

  • KAuth
    • Remove it from components such KPushButton
    • Isolate it into a lib
    • Create components such KAuthPushButton

Modularization

  • Functional framework
  • KDE Integration framework -> should be as small as possible.
 Integration between KDE applications: styleguide, defaults, etc.
  ui_standards.rc
  • Interface (= platform abstraction)
 KWallet, Solid
  • Platform (OS-dependent implementation; should be in kde-runtime, not kdelibs)
 E.g. wallet of the platform.

KDE Core

[old list, see the google docs spreadsheet for more details]

  • KStandardDirs
    • Remove KGlobals->dirs
    • Split between workspace/platform (wallpapers)
  • KComponent
    • We use mainly the name, so maybe we can move or get that to/from Qt
    • This is a perfect candidate for KDECoreCore
    • About dialog
  • staticQString (Remove)
  • findDirectChild_helper (Move to Qt)
  • KToolInvocation
    • Platform plugins KDE = kdeinit, others=QProcess
  • KMimeType (Move to Qt)
  • KLockFile
    • Qt (useful for QSettings at least)
  • KDirWatch
    • QFileSystemWatcher
  • KDebug
    • Sdd extra features to QDebug
    • configurable debug areas -- depend on KConfig/QSettings issue
  • KTemporaryFile:
    • Replace with platform plugin for QTemporaryFile
  • KLocalSocket
    • only used by KIO::Connection, and should be replaced with QLocalSocket
  • KSocketFactory
    • Seems to be about proxy support, but isn't fully implemented.
    • Maybe remove, but proxy support needs to be fixed somehow.'