Jump to content

Frameworks/CreationGuidelines: Difference between revisions

From KDE Community Wiki
Dfaure (talk | contribs)
fix link
No edit summary
Line 8: Line 8:
* Ensure the module doesn't depend on deprecated or "portingAid" frameworks like kdelibs4support
* Ensure the module doesn't depend on deprecated or "portingAid" frameworks like kdelibs4support
* Ensure the module is in frameworks/ (in the projects.kde.org XML), otherwise ask for it to be moved there
* Ensure the module is in frameworks/ (in the projects.kde.org XML), otherwise ask for it to be moved there
* Adjust kde-build-metadata - in particular, add it to the deps for frameworks/kf5umbrella
* Adjust kde:kde-build-metadata - in particular, add it to the deps for frameworks/kf5umbrella
* Get the job set up on build.kde.org and added to the http://build.kde.org/view/Frameworks%20kf5-qt5/ view
* Get the CI jobs set up
* Ensure it is green
** Get the job set up on build.kde.org by filing a task towards https://phabricator.kde.org/tag/build.kde.org/
** Make sure to request it to be added to the relevant view: http://build.kde.org/view/Frameworks%20kf5-qt5/ view  
** Ensure it is green
* Add a new component for it on bugs.kde.org
* Add a new component for it on bugs.kde.org
* Add the repository to reviewboard.kde.org (by asking the sysadmins)
* Add the repository to reviewboard.kde.org (by filing a sysadmin ticket)
* Finally when it's all ready, change the yaml file to say release: true. The release scripts will then pick it up automatically for the next KF release.
* Finally when it's all ready, change the yaml file to say release: true. The release scripts will then pick it up automatically for the next KF release.



Revision as of 09:01, 9 November 2015

Guidelines for creating a new framework

If you are creating a new framework, this checklist can help you get it done correctly:

  • Make sure it follows all the active policies
  • The above includes many important things, make sure to read all of it. E.g. it includes the often forgotten rule for installing translations
  • If it is created by splitting code from an existing repository, the new repository should be created by using a script to create a graft point
  • Run astyle-kdelibs
  • Ensure the module doesn't depend on deprecated or "portingAid" frameworks like kdelibs4support
  • Ensure the module is in frameworks/ (in the projects.kde.org XML), otherwise ask for it to be moved there
  • Adjust kde:kde-build-metadata - in particular, add it to the deps for frameworks/kf5umbrella
  • Get the CI jobs set up
  • Add a new component for it on bugs.kde.org
  • Add the repository to reviewboard.kde.org (by filing a sysadmin ticket)
  • Finally when it's all ready, change the yaml file to say release: true. The release scripts will then pick it up automatically for the next KF release.

Template

The framework-template directory in the kdeexamples repository has a setup.sh script that generates a helpful skeleton framework that is a good starting point for creating a framework. For example, if you were creating the KConfig framework, you might run

./setup.sh KConfig ../../kconfig

then go to the newly created "kconfig" directory and start adding source files etc.