aboutsummaryrefslogtreecommitdiff
path: root/doc/Development.asciidoc
diff options
context:
space:
mode:
Diffstat (limited to 'doc/Development.asciidoc')
-rw-r--r--doc/Development.asciidoc58
1 files changed, 34 insertions, 24 deletions
diff --git a/doc/Development.asciidoc b/doc/Development.asciidoc
index 41c832d..2968b7c 100644
--- a/doc/Development.asciidoc
+++ b/doc/Development.asciidoc
@@ -1,42 +1,52 @@
== Guidelines
=== Qt
-* Check pointers with Q_CHECK_PTR before using or returning them.
-* Avoid using connect SIGNAL and SLOT. Instead use &Class::method. This way, connects are checked during the compile,
- not at runtime.
-* Where possible, use QVector over QList: http://lists.qt-project.org/pipermail/development/2017-March/029040.html
+* Check pointers with Q_CHECK_PTR.
+* Avoid using connect SIGNAL and SLOT. Instead use &Class::method. This way
+ connects are checked during the compile, not at runtime.
+* Where possible, prefer QVector over QList: http://lists.qt-project.org/pipermail/development/2017-March/029040.html
=== clazy
-You can use [clazy](https://github.com/KDE/clazy) to check Qt semantics.
-Requires clang.
+You can use https://github.com/KDE/clazy[clazy] to check Qt semantics.
-To set check levels, set the CLAZY_CHECKS environment variable to 'level0,level1', etc.
-
-==== Setting up in QtCreator
-The simplest way to set it up is to use _clazy_ instead of _clang_.
-
-1. Go to Tools » Options » Build & Run » Compilers
-2. Clone the clang compiler of your choice
-3. Set _Compiler path_ to _/usr/bin/clazy_
+clazy is a drop-in replacement for clang. To set check levels, set the
+CLAZY_CHECKS environment variable to 'level0,level1', etc.
== Licensing
-Smolbote is licensed under GPLv3 _only_. Your code needs to be compatible with it, and have a license header in the
-style used by the project.
-
-- No self-updating "-or-later" licensing.
+Smolbote is licensed under GPLv3 _only_, and explicitly does not use any
+self-updating "-or-later" licensing. Your code needs to be compatible with it,
+and have a license header in the style used by the project.
=== SPDX-License-Identifier
-A full list of license identifiers can be found on [the SPDX website](https://spdx.org/licenses/).
+A full list of license identifiers can be found on https://spdx.org/licenses/[the SPDX website].
== Style
There is a clang-format style in .clang-format.
== Format patch for email
-~~~ sh
-hg export -r startcommit[:endcommit] -o patchname.txt
-~~~
+[source, sh]
+----
+git format-patch $from..$to
+----
+
+This will give you one patch per commit. If you want to merge all of them into
+a single patch, you can merge the commits using rebase:
+
+[source, sh]
+----
+git rebase --interactive
+----
+
+Alternatively, replay all your commits from the commit before $from on a new
+branch:
-to export the from _startcommit_ until tip or optionally _endcommit_.
+[source, sh]
+----
+git branch delivery X
+git checkout delivery
+git merge --squash master
+git format-patch HEAD
+----
-Email the patch file to _aqua at iserlohn dash fortress dot net_.
+Email patches to _aqua at iserlohn dash fortress dot net_.