summaryrefslogtreecommitdiffstats
path: root/doc/sphinx/Pacemaker_Development/general.rst
blob: 94015c9b8f15c5a5ac9b187a1a22901c5857abb6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
.. index::
   single: guidelines; all languages

General Guidelines for All Languages
------------------------------------

.. index:: copyright

Copyright
#########

When copyright notices are added to a file, they should look like this:

.. note:: **Copyright Notice Format**

   | Copyright *YYYY[-YYYY]* the Pacemaker project contributors
   | 
   | The version control history for this file may have further details.

The first *YYYY* is the year the file was *originally* published. The original
date is important for two reasons: when two entities claim copyright ownership
of the same work, the earlier claim generally prevails; and copyright
expiration is generally calculated from the original publication date. [1]_

If the file is modified in later years, add *-YYYY* with the most recent year
of modification. Even though Pacemaker is an ongoing project, copyright notices
are about the years of *publication* of specific content.

Copyright notices are intended to indicate, but do not affect, copyright
*ownership*, which is determined by applicable laws and regulations. Authors
may put more specific copyright notices in their commit messages if desired.

.. rubric:: Footnotes

.. [1] See the U.S. Copyright Office's `"Compendium of U.S. Copyright Office
       Practices" <https://www.copyright.gov/comp3/>`_, particularly "Chapter
       2200: Notice of Copyright", sections 2205.1(A) and 2205.1(F), or
       `"Updating Copyright Notices"
       <https://techwhirl.com/updating-copyright-notices/>`_ for a more
       readable summary.

Terminology
###########

Pacemaker is extremely complex, and it helps to use terminology consistently
throughout documentation, symbol names and comments in code, and so forth. It
also helps to use natural language when practical instead of technical jargon
and acronyms.

For specific recommendations, see the :ref:`glossary`.