changed

Change log generator which fetches the list of bugfixes from the D Bugzilla between the given dates. Moreover manual changes are accumulated from raw text files in the Dlang repositories. It stores its result in DDoc form to a text file.

Members

Functions

escapeParens
string escapeParens(string input)

Replace '(' and ')' with macros to avoid closing down macros by accident.

getBugzillaChanges
auto getBugzillaChanges(string revRange)

Generate and return the change log as a string.

getIssues
auto getIssues(string revRange)

Get a list of all bugzilla issues mentioned in revRange

readChangelog
ChangelogEntry readChangelog(string filename, string repoName)

Reads a single changelog file.

readTextChanges
auto readTextChanges(string changelogDir, string repoName)

Looks for changelog files (ending with .dd) in a directory and parses them.

writeBugzillaChanges
void writeBugzillaChanges(Entries entries, Writer w)

Writes the fixed issued from Bugzilla in the ddoc format as a single list.

writeTextChangesBody
void writeTextChangesBody(Entries changes, Writer w, string headline)

Writes the long description of the manually listed changes in the ddoc format as list.

writeTextChangesHeader
void writeTextChangesHeader(Entries changes, Writer w, string headline)

Writes the overview headline of the manually listed changes in the ddoc format as list.

Meta

Authors

Dmitry Olshansky, Andrej Mitrovic, Sebastian Wilzbach

Example usage:

rdmd changed.d "v2.071.2..upstream/stable"

It is also possible to directly preview the generated changelog file:

rdmd changed.d "v2.071.2..upstream/stable" && dmd ../dlang.org/macros.ddoc ../dlang.org/html.ddoc ../dlang.org/dlang.org.ddoc ../dlang.org/doc.ddoc ../dlang.org/changelog/changelog.ddoc changelog.dd -Df../dlang.org/web/changelog/pending.html

If no arguments are passed, only the manual changes will be accumulated and Bugzilla won't be queried (faster).

A manual changelog entry consists of a title line, a blank separator line and the description.