Getting Started Documentation Glish Learn More Programming Contact Us
Version 1.9 Build 1556
News FAQ
Search Home


next up previous contents index
Next: doover Up: Code management Previous: ax

Subsections



buildchangelog

Process AIPS++ changelog files and transform them to html files containing the selected changes.

Synopsis

buildchangelog [-dir[ectory] directory] [-split[file] area|package|module] [
select-options
<directory>

Description

All AIPS++ changelog files found in the given directory and its subdirectories are processed and the selected changes are written to html files. Also a few html files containing an overview of the changes are generated with links to the detailed html files.
The given directory has to be a code directory; i.e. it has to end in /code.
The changes can be selected in various ways using the command options. By default the changes in the currently developed release are selected.
The output directory can be specified in the options, which defaults to the working directory.

buildchangelog is run by the sneeze (p[*]) script if the appropriate makedefs (p[*]) variable is set. In that case it builds html files for the changes in the currently developed release. The AIPS++ documentation pages have links to the overview files generated in this way, so at all times the achievements in the currently developed release can be seen on the AIPS++ web pages.

One can also use buildchangelog to find, for example, all changes made to glish in the last year.

Options

-dir[ectory] directory
The directory of the generated html files. Default is the working directory.

-split[file] value
This case insensitive option determines how many html files are written.
If not given, all changes are combined in one html file.
-split area generates an html file per area with name changelog_<area>.html.
- split package generates an html file per package with name
changelog_<area>_<package>.html.
-split module generates an html file per module with name
changelog_<area>_<package>_<module>.html.
If the split option is given (and not blank), a summary file per area ia generated with name changelog_<area>_summary.html.
In any case an overview file is generated with name changelog_summary.html.

-date ranges
Select changes matching the given date range(s). Multiple ranges can be given separated by commas. Each range is a start date optionally followed by a colon and an end date. Each date can be given as yyyy-mm-dd or as dd-mm-yyyy, but an end date has to be given in the same order as its start date. The month can be given as a number or as a 3 letter case insensitive name. It is not necessary to give all parts of a date, so it is possible to select a given year or range of years (or days or months for that matter). Again, an end date and start date have to match in that respect.
For example,
   -date 2000
   -date 1-Jan-2000:31-Dec-2000
   -date 1995,1996,1997,1998,1999,2000
   -date 1995:2000
The first 2 examples are equivalent; select all of the year 2000.
The latter 2 examples are also equivalent; select all of years 1995 to 2000 (inclusive).

-nodate ranges
Select all changes NOT matching the given date range(s).

-id ranges
Select all changes matching the given id range(s). Multiple ranges can be given separated by commas. Each range is a start id optionally followed by a colon and an end id.
For example,
   -id 1:10,20,24:30

-noid ranges
Select all changes NOT matching the given id range(s).

-area names
Select all changes matching the given area name(s). Multiple areas can be given separated by commas. Note that the names are case sensitive.
For example,
   -area System,Glish,Tool,Library,LearnMore
This eaxmple shows all available areas.

-noarea names
Select all changes NOT matching the given area name(s).

-package names
Select all changes matching the given package name(s). Multiple packages can be given separated by commas. Note that the names are case sensitive.
For example,
   -package aips
Note that only areas Library and Tool have multiple packages.

-nopackage packages
Select all changes NOT matching the given package(s).

-module names
Select all changes matching the given module (or tool) name(s). Multiple modules can be given separated by commas. Note that the names are case sensitive.
For example,
   -module Tables,Arrays
Note that the word module is also used for the tool name, so a specific tool is selected in the same way.

-nomodule names
Select all changes NOT matching the given module name(s).

-avers ranges
Select all changes matching the given AIPS++ version range(s). Multiple ranges can be given separated by commas. Each range is a start version optionally followed by a colon and an end version. Note that the version is treated as a float number (like 1.4).
By default only the currently developed AIPS++ release is selected. Therefore the special (case insensitive) value all can be given to indicate that all versions have to be selected.
For example,
   -avers all
   -avers 1.4:1.9

-noavers ranges
Select all changes NOT matching the given AIPS++ version range(s).

-type types
Select all changes matching the given type(s). Multiple types can be given separated by commas. Note that the type names are case insensitive.
For example,
   -type code,documentation,test,review
This example shows all available types.

-notype types
Select all changes NOT matching the given type(s).

-category categories
Select all changes matching the given categories. Multiple categories can be given separated by commas. Note that the category names are case insensitive.
For example,
   -category new,change,bugfix,removed,other
This example shows all available categories.

-nocategory categories
Select all changes NOT matching the given categories.

Notes

Diagnostics

Status return values
0: success
1: invalid option given

Examples

The command

   buildchangelog -split module
     -dir $(AIPSROOT)/docs/project/releasenotes/changelogs
     $(AIPSROOT)/code
is used in the code makefile to generate the html files when building the system.

   buildchangelog -avers all -area Glish /aips++/code
can be used to find all changes ever made to glish. It will generate the files ./changelog.html and ./changelog_summary.html.

Bugs

See also

ac (p[*]) AIPS++ changelog maintenance.

Author

Original: 2000/06/05 by Ger van Diepen, NFRA


next up previous contents index
Next: doover Up: Code management Previous: ax   Contents   Index
Please send questions or comments about AIPS++ to aips2-request@nrao.edu.
Copyright © 1995-2000 Associated Universities Inc., Washington, D.C.

Return to AIPS++ Home Page
2006-10-15