KDevelop/Meeting2011

From KDE Community Wiki
Revision as of 10:20, 6 June 2011 by Milianw (talk | contribs)

Randa 2011 KDevelop Meeting

Agenda

Tue

  • arrive

Wed

  • get up with an agenda

Plugins

requirements for plugins in extragear/kdevelop/*:

  • kdereview
  • maintainer
  • releasable
  • unit tests (and none failing)

plugins to merge:

  • kdevplatform/
    • controlflowgraph
      • TODO: investigate status, get out of kdereview
    • execute script
      • TODO: investigate status, get into kdereview
  • kdevelop/
    • qmake
      • TODO: Milian: investigate status, get into kdereview
  • kdevelop/plugins/
    • merge php/php-docs
      • TODO: Milian
    • css
      • TODO: investigate status, get into kdereview
    • execute browser
      • TODO: investigate status, get into kdereview
    • xdebug
      • TODO: investigate status, get into kdereview

notes on /plugins:

  • not a single big repo (devs against it)
  • TODO: document easy "build-all" process on techbase

note for developers: kdevplatform API breakages must be fixed in every stable repo, i.e. everything in https://projects.kde.org/projects/extragear/kdevelop must be compiling

Build Bot & Unit Testing

  • TODO: Get a build bot running
    • either on every commit (much work)
    • or at least once a day (single to implement)
  • TODO: Get a unit test bot running
    • requirements:
      • no failing unit tests (XFAIL is OK)
      • no agressive performance tests (time limit, memory limit, ...)
  • TODO: investigate cdash
    • kdelibs dashboard is down, not a good impression
  • TODO: ask PovAddict on his experience with build bot + unit tests

Gluon

  • try to rebase gluoncreator on kdevplatform
  • put improvements into the platform
    • plugin based diff-viewer (i.e. to compare designer files, images, ...)
    • improved history viewer (timeline, ...)
  • alternatively try to reuse parts of kdevplatform in gluoncreator
    • problem: kdevplatform (rightly so!) expect full kdevplatform availability

Unit Tests

developers:

  • never submit failing unit tests (use QEXPECT_FAIL)
  • try to run unit tests regularily

Thu

Project Dashboard

saving/sharing:

  • opt-in 'save to project file' which is shared to users via project.kdev4
    • good for users opening the project the first time in kdevelop
  • by default save changes to dashboard in .kdev4/ folder

plasmoids:

  • vcs commit log (provided by vcs plugin)
  • file contents view
  • webslide
  • feedreader

use cases:

  • project website news (feed reader)
  • project resources: bugtracker, mailing list, ... (webslide / file contents view)
  • recent commits (vcs plugin)

Session Dashboard

  • read-only
  • only shown when no view exists, esp. on first start
  • contents:
    • recent sessions
    • recent projects
    • recent files
    • open new file/session/project

Browser-Like Tabs

  • niko pushed the rebased branches
  • various feedback already implemented, still some stuff to-do

Fri

VCS

  • get rid of diff to HEAD/BASE, integrate them to single action
  • when calling 'show diff' from annotation bar, show full commit, i.e. including commit message and all changed files

Sat

Sun

Mon

Mass-Reload

  • reload all action in file menu
    • dialog showing all changed files
  • also show one dialog for all when multiple files are modified/deleted, i.e. when switching branches / checkout -f, ...
  • maybe improve inside kate

D&D

  • adymo fixed it for toolviews
  • we need it for projectmanager view

Areas

  • when workingsets are plugin, make areas just list of toolviews, not also of documents
  • switching between code<->debug should reuse workingset by default
  • when activating review area, show diff or at least integrate with aleix's vcs view
  • review area needs UI love
  • toolbars must stay area dependent, there seems to be a bug on startup

Kate Plugins

  • some useful plugins we want in kdevelop
    • sql?
    • xml?
  • most are not useful, or simply duplicate stuff in kdevelop
  • requires new ktexteditor interface most probably, question is whether this is accepted by kate guys

only two plugins, not really useful?

Quanta / External Plugins

  • executescript kdevplatform
  • dissolve quanta, sorry guys - my bad :-/ (milian)
    • kdereview -> kdevelop/plugins: (with alpha release afterwards)
      • executebrowser -> Niko maintainer
      • css -> Milian/Niko maintainer
      • xdebug -> Niko maintainer, needs to be checked first
      • qmake -> Milian maintainer, stabilize first
      • phpformatter into PHP repo -> Milian maintainer, review first
    • playground/kdevelop:
      • move rest out of quanta on-demand
      • most can be built stand-alone from quanta sources anyways
      • upload?? look at it, maybe release it as well

TODO: milian ask nicolas about moving out the plugins into own repo

Targets in ProjectManagerView

  • project view filter can be used
  • special ctest handling in cmake might be useful
    • cdash property?
    • milian: ask neundorf about it

Sessions UI

  • menu does scale
    • like recent files, limit to N last sessions
    • session picker as fallback for other sessions
  • session picker:
    • needs UI love
    • hide QUUid
    • integrate delete/rename simpler
      • QDBus querying for whether it's possible to delete/rename
  • krunner gets merged, yay

Output View

  • try to use konsole for output
    • needs work in konsole
    • pros:
      • performance
      • colors
      • ...
    • cons:
      • f4/jump to error
      • portability?
    • make it as GSOC project?


Thu

  • wrap up & leave home

Discussion TODO

not so controversial

  • [DONE] merge control flow into kdevplatform
  • [DONE] merge qmake into kdevelop
  • [DONE] extra-plugins module: css, execute-script, execute-browser, andreas' custom project manager, ...
  • gluon integration
  • handle rename/delete of file in editor view
  • handle switching branch -> reload open (changed) files
  • port mailing list to kde infrastructure
  • improve website / wikis / ...
    • promotion part
  • integrate wiki documentation

controversial

  • browser-like tabs
  • welcome page
  • drag&drop
  • merge aliex's thesis work

very controversial

  • destroy areas
  • chromium-like UI

Hacking TODO

  • remove/disable/fix failing unit tests
  • [DONE] fix QWarnings (esp. timer issues etc.)
  • go through review requests
  • extended cli support (open in existing instance)
    • requires extended dbus interface
    • note David's kdevelop_attach
  • krunner integration (session)

Browser-like Tabs TODO

  • remove Ctrl-T or bind it to what Ctrl-N does
  • Ctrl-N should open new file in a new tab