Project

General

Profile

Actions

Guidelines » History » Revision 23

« Previous | Revision 23/24 (diff) | Next »
Greg Burri, 08/21/2012 08:48 PM


Guidelines

Documentation

  • Use of ' when referencing a name like 'myVar'
  • Use of " when referencing a value like "my string"

Libraries and tools

  • GCC, Qt and libraries shall only be updated to a new major revision in the master branch and never in a version branch.

Coding

See the prototypes for code reference : source:/prototypes.

Some random rules

  • We use Allman style whith three spaces indentation, no tabulation.
  • Try to minimize the use of dynamic allocation. Use constructor initializer to set non-pointer members.
  • Use parameter references variable passing instead of pointers.
  • Always have the design pattern RAII in mind.
  • Avoid exception specification, see : http://www.ddj.com/architect/184401544
  • Class and method documentation headers are put in cpp files.

Version number

A version number has three numbers plus a tag and some other information :
<a>.<b>.<c> <tag> <date+time> <tree hash>

<a> : Major version
<b> : Evolution
<c> : Revision (bugfixes)
<tag> : alpha | beta<num> | <nothing>
<date+time> : Date and time of the built tree, for example : 2009-08-01 17:42Z. See ISO8601
<tree hash> : The hash of the built tree, for example : b53118220bb28abf649df43fc144cc21919b512e

For example (date, time and hash are omitted) :
  • 1.0.0 alpha (first version)
  • 1.0.0 beta1
  • 1.0.0 beta2
  • 1.0.0 beta3
  • 1.0.0 (stable version)
  • 1.0.1 (first revision)
  • 1.0.2 (second revision)
  • 1.1.0 alpha (first evolution)
  • 1.1.0 beta
  • 1.1.0
  • 1.1.1
  • etc..

Beta and alpha versions

The alpha is a development version not yet finished only for developers.
The beta is an almost released version that can be public.

Only Alpha versions are built in Debug with full log enabled. All other versions are built in release mode.

Updated by Greg Burri over 11 years ago · 23 revisions