aboutsummaryrefslogtreecommitdiff
path: root/releaselog/format/gnu.py
blob: 503a7deaaea7ea64e3cc928d9e420c39f943e2e5 (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
# -*- coding: utf-8 -*-
"""
Implementation of the GNU-style 'NEWS' history format.

Usage:

  from releaselog import ReleaseLog, gnu
  ReleaseLog.regformat('GNU', gnu.ReleaseLogFormat)

NOTE: DON'T DO IT. This is normally done as a part of initialization of
the releaselog module.
"""

import re
from releaselog import ReleaseHistory

class ReleaseLogFormat(ReleaseHistory):
    format = ['GNU', 'NEWS']
    filename = 'NEWS'
    header = re.compile(r"""^(?:\*\s+)?    # optional initial section
          (?:(?i)version)\s+
          (?P<version>\d(?:[.,]\d+){1,2}  # At least MAJOR.MINOR
            (?:[\d._-])*)    # Optional patchlevel
          (?:.*[-,:]\s+(?P<date>.+))""", re.X)

Return to:

Send suggestions and report system problems to the System administrator.