table of contents
other versions
- jessie 4.24.3-3
aede-policy(1) | aede-policy(1) |
NAME¶
aede-policy - check change set is ready for aedeSYNOPSIS¶
aede-policy [ option... ][ policy... ]DESCRIPTION¶
The aede-policy command is used to verify that a change set is ready to end development. This is intended to be used by the develop_end_policy_command field of the project configuration file.develop_end_policy_command =
"aede-policy -p $project -c $change all";
If any of the pilies should fail, the aede-policy command will fail with
an exit status of 1. This, in turn, will cause the aede(1) command to
leave the change in the being developed state.
Note that the aede(1) command sets the appropriate environment variables,
so the -Project and -Change options are rarely necessary.
If no policies appear on the command line, the aede-policy project
specific attribute will be checked. If it exists, it contains a list of space
separated policy names.
"aede-policy -p $project -c $change all";
POLICIES¶
There are a range of policies that can be selected.- all
- Check all of the copyright, crlf, description and printable policies.
- copyright
This policy checks that each file in the change set
contains a copyright notice of the form
Copyright (C) year something
where year is the current year (you can have a range of years, too).
Binary files are ignored. Change sets marked with a
foreign-copyright=true attribute are ignored, as are files similarly
marked. The something part is either the project specific
copyright-owner attribute, or the executing users full name.- crlf
- This policy cheks that all files are using UNIX line termination (NL), not DOS line termination (CRLF). Binary files are ignored.
- description
- This policy checks that the change set brief_description and description attributes have been updated to something other than the defaults.
- fsf-address
- This policy checks that the FSF address, if present in source files, is up-to-date. This is useful for Free Software projects.
- gpl-version
- gpl-version=nn
- This policy checks files that cite the GNU GPL in their file headers, to be sure they contain the correct version of the GNU GPL. Defaults to version 3 if no version number specified.
- line-length
- line-length=nn
- This policy checks that files have this maximum line length. Defaults to 80 if no width is specified. Can be overridden per file using the aede-policy-line-length file attribute.
- merge-fhist
- This policy requires that there be no fmerge(1) conflict lines present in any source files. The name comes from the name of the package containing this tool: fhist.
- merge-rcs
- This policy requires that there be no merge(1) conflict lines present in any source files. The name comes from the name of the package containing this tool: rcs.
- no-tabs
This policy checks that files have no tabs characters in
them. This is useful when a team of developers all use different editors and
differnt tab stops. By only using spaces, the code is presented to all
developers the same way.
This check is not applied to change sets with a Iforeign-copyright=true
attribute, because you have little control over them (change the tabs
in a later change set, if at all).
This check is not applied to files which are called Makefile or similar, and it
is not applied to files carrying a aede-policy-tabs-allowed=true
attribute.
- printable
- This policy checks that each file in the change set contains only printable text characters and white space. The content-type file attribute is taken into account; if there is no content-type file attribute, or there is no charset specified by the content-type file attribute, plain 7-bit ASCII text is assumed.
- text
- This policy checks that each file in the change set contains only text, although international character sets are acceptable. This is basically a test for NUL characters, because everything else could be part of a valid character encoding of some international character set.
- white-space
- This policy checks that there is no white space on the ends of lines, that there are no blank lines at the ends of files.
OPTIONS¶
The following options are understood:- -Change number
- This option may be used to specify a particular change within a project. See aegis(1) for a complete description of this option.
- -Help
-
- -List
- List all of the available validations.
- -Project name
- This option may be used to select the project of interest. When no -Project option is specified, the AEGIS_PROJECT environment variable is consulted. If that does not exist, the user's $HOME/.aegisrc file is examined for a default project field (see aeuconf(5) for more information). If that does not exist, when the user is only working on changes within a single project, the project name defaults to that project. Otherwise, it is an error.
EXIT STATUS¶
The aede-policy command will exit with a status of 1 on any error. The aede-policy command will only exit with a status of 0 if there are no errors.ENVIRONMENT VARIABLES¶
See aegis(1) for a list of environment variables which may affect this command. See aepconf(5) for the project configuration file's project_specific field for how to set environment variables for all commands executed by Aegis.SEE ALSO¶
- aede(1)
- end development of a change
- aepconf(5)
- project configuration file
COPYRIGHT¶
aede-policy version 4.24.3.D001AUTHOR¶
Peter Miller | E-Mail: | millerp@canb.auug.org.au |
/\/\* | WWW: | http://www.canb.auug.org.au/~millerp/ |
Aegis | Reference Manual |