KDE Core/Platform 11/kdelibsDependencies: Difference between revisions

From KDE Community Wiki
No edit summary
m (some updates)
 
(13 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{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 =
* [https://spreadsheets.google.com/spreadsheet/ccc?key=0AhQ1BhQL6D9wdGpvOHN0N0xRZVBGU1c3ZmdiaXZORUE&hl=en_US&authkey=CKTcjdgP#gid=4 Class by class analysis] (tsdgeos says: Gave me a "spreadsheet has been removed" error in Konqueror, just try a different browser)
* [http://files.kde.org/sprints/platform11/kde-frameworks-matrix.pdf Frameworks matrix]
* [http://files.kde.org/sprints/platform11/kde-frameworks-dependencies-plan.pdf Partial overview of the intended KDE Frameworks dependency graph]
= What we're working on =
= 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.
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.
Line 5: Line 12:
www.kdab.com/~volker/kde/kdecore-usage-graph.ps
www.kdab.com/~volker/kde/kdecore-usage-graph.ps


= No Qt Dependencies =  
= Only Qt Dependencies =  
*KJS
*KJS
*Solid
*Solid
*Compression
*Compression
*Threadweaver


= Can we move out =
= Can we move out =
Line 18: Line 26:
**Small usage of kio/solid
**Small usage of kio/solid
*DNSSD
*DNSSD
**uses KUrl and KStandardDirs (to get the xdg configuration dir)


= Need some work=
= Need some work=
Line 24: Line 33:
**Isolate it into a lib
**Isolate it into a lib
**Create components such KAuthPushButton
**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=
=KDE Core=
[old list, see the google docs spreadsheet for more details]
*KStandardDirs
*KStandardDirs
**Remove KGlobals->dirs
**See QStandardPaths, Remove KGlobals->dirs
**Split between workspace/platform (wallpapers)
**Split between workspace/platform (wallpapers)
*KComponent
*KComponent
Line 34: Line 60:
**About dialog
**About dialog
*staticQString (Remove)
*staticQString (Remove)
*findDirectChild_helper (Move to Qt)
*KToolInvocation
**Platform plugins KDE = kdeinit, others=QProcess
*KLockFile
**Qt  (useful for QSettings at least)
*KDirWatch
**QFileSystemWatcher
*KDebug
**Add extra features to QDebug
** configurable debug areas -- depend on KConfig/QSettings issue
*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.'

Latest revision as of 15:09, 9 December 2011

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
    • See QStandardPaths, 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)
  • KToolInvocation
    • Platform plugins KDE = kdeinit, others=QProcess
  • KLockFile
    • Qt (useful for QSettings at least)
  • KDirWatch
    • QFileSystemWatcher
  • KDebug
    • Add extra features to QDebug
    • configurable debug areas -- depend on KConfig/QSettings issue
  • 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.'