Skip to content

Information for developers#

Subpages#

  • Requirements: the set of rules regarding which versions of operating systems, compilers etc. we support
  • Development setup: which tools to install for working on the planner
  • Git: our Git workflow and Git tips and tricks
  • Coding conventions: coding conventions for C++ code
  • Whitespace: how to indent, where to break lines, where to put spaces etc. in C++ code
  • Uncrustify: using the uncrustify source code pretty printer
  • Code review: how to use Github pull requests for code reviews
  • Github actions: information on Github actions
  • Implementation details: more in-depth descriptions on how some classes are implemented
  • Long term plans: long-term wishlist of changes with broader scope
  • Problem Transformations: problem transformations performed by the planner that might trip up users interested in non-classical planning
  • CMake: Usage of CMake (custom builds, tips and tricks)
  • Profiling: on using valgrind and friends
  • Release workflow: how to create a release version
  • Changelog format: description of the changelog format
  • Sprint: information, statistics, and news about our Fast Downward sprints
  • Blog: articles describing parts of the code base

Other bits and pieces#