Skip to content

Commit 5ec126b

Browse files
author
Michele Tessaro
committed
new: dev: added automatically generated changelog
The `CHANGELOG.md` is now generate from commits with the greate `gitchangelog` tool.
1 parent 1270909 commit 5ec126b

File tree

2 files changed

+339
-0
lines changed

2 files changed

+339
-0
lines changed

.gitchangelog.rc

Lines changed: 202 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,202 @@
1+
##
2+
## Format
3+
##
4+
## ACTION: [AUDIENCE:] COMMIT_MSG [!TAG ...]
5+
##
6+
## Description
7+
##
8+
## ACTION is one of 'chg', 'fix', 'new'
9+
##
10+
## Is WHAT the change is about.
11+
##
12+
## 'chg' is for refactor, small improvement, cosmetic changes...
13+
## 'fix' is for bug fixes
14+
## 'new' is for new features, big improvement
15+
##
16+
## AUDIENCE is optional and one of 'dev', 'usr', 'pkg', 'test', 'doc'
17+
##
18+
## Is WHO is concerned by the change.
19+
##
20+
## 'dev' is for developpers (API changes, refactors...)
21+
## 'usr' is for final users (UI changes)
22+
## 'pkg' is for packagers (packaging changes)
23+
## 'test' is for testers (test only related changes)
24+
## 'doc' is for doc guys (doc only changes)
25+
##
26+
## COMMIT_MSG is ... well ... the commit message itself.
27+
##
28+
## TAGs are additionnal adjective as 'refactor' 'minor' 'cosmetic'
29+
##
30+
## They are preceded with a '!' or a '@' (prefer the former, as the
31+
## latter is wrongly interpreted in github.) Commonly used tags are:
32+
##
33+
## 'refactor' is obviously for refactoring code only
34+
## 'minor' is for a very meaningless change (a typo, adding a comment)
35+
## 'cosmetic' is for cosmetic driven change (re-indentation, 80-col...)
36+
## 'wip' is for partial functionality but complete subfunctionality.
37+
##
38+
## Example:
39+
##
40+
## new: usr: support of bazaar implemented
41+
## chg: re-indentend some lines !cosmetic
42+
## new: dev: updated code to be compatible with last version of killer lib.
43+
## fix: pkg: updated year of licence coverage.
44+
## new: test: added a bunch of test around user usability of feature X.
45+
## fix: typo in spelling my name in comment. !minor
46+
##
47+
## Please note that multi-line commit message are supported, and only the
48+
## first line will be considered as the "summary" of the commit message. So
49+
## tags, and other rules only applies to the summary. The body of the commit
50+
## message will be displayed in the changelog without reformatting.
51+
52+
53+
##
54+
## ``ignore_regexps`` is a line of regexps
55+
##
56+
## Any commit having its full commit message matching any regexp listed here
57+
## will be ignored and won't be reported in the changelog.
58+
##
59+
ignore_regexps = [
60+
r'@minor', r'!minor',
61+
r'@cosmetic', r'!cosmetic',
62+
r'@refactor', r'!refactor',
63+
r'@wip', r'!wip',
64+
r'^([cC]hg|[fF]ix|[nN]ew)\s*:\s*[p|P]kg:',
65+
r'^([cC]hg|[fF]ix|[nN]ew)\s*:\s*[d|D]ev:',
66+
r'^(.{3,3}\s*:)?\s*[fF]irst commit.?\s*$',
67+
r'^[Uu]pdating .*poms .*$',
68+
r'^[mM]erging .*$',
69+
r'.* prepare release .*'
70+
]
71+
72+
73+
## ``section_regexps`` is a list of 2-tuples associating a string label and a
74+
## list of regexp
75+
##
76+
## Commit messages will be classified in sections thanks to this. Section
77+
## titles are the label, and a commit is classified under this section if any
78+
## of the regexps associated is matching.
79+
##
80+
section_regexps = [
81+
('New', [
82+
r'^[nN]ew\s*:\s*((dev|use?r|pkg|test|doc)\s*:\s*)?([^\n]*)$',
83+
r'^[aA]dded\s+',
84+
]),
85+
('Changes', [
86+
r'^[cC]hg\s*:\s*((dev|use?r|pkg|test|doc)\s*:\s*)?([^\n]*)$',
87+
r'^[cC]hange[\w]\s+.*$',
88+
]),
89+
('Fix', [
90+
r'^[fF]ix\s*:\s*((dev|use?r|pkg|test|doc)\s*:\s*)?([^\n]*)$',
91+
r'\b[fF]ix(ed|es)?\b',
92+
r'\b[cC]orrect\w*\b',
93+
]),
94+
95+
('Other', None ## Match all lines
96+
),
97+
98+
]
99+
100+
101+
## ``body_process`` is a callable
102+
##
103+
## This callable will be given the original body and result will
104+
## be used in the changelog.
105+
##
106+
## Available constructs are:
107+
##
108+
## - any python callable that take one txt argument and return txt argument.
109+
##
110+
## - ReSub(pattern, replacement): will apply regexp substitution.
111+
##
112+
## - Indent(chars=" "): will indent the text with the prefix
113+
## Please remember that template engines gets also to modify the text and
114+
## will usually indent themselves the text if needed.
115+
##
116+
## - Wrap(regexp=r"\n\n"): re-wrap text in separate paragraph to fill 80-Columns
117+
##
118+
## - noop: do nothing
119+
##
120+
## - ucfirst: ensure the first letter is uppercase.
121+
## (usually used in the ``subject_process`` pipeline)
122+
##
123+
## - final_dot: ensure text finishes with a dot
124+
## (usually used in the ``subject_process`` pipeline)
125+
##
126+
## - strip: remove any spaces before or after the content of the string
127+
##
128+
## Additionally, you can `pipe` the provided filters, for instance:
129+
#body_process = Wrap(regexp=r'\n(?=\w+\s*:)') | Indent(chars=" ")
130+
#body_process = Wrap(regexp=r'\n(?=\w+\s*:)')
131+
#body_process = noop
132+
body_process = (ReSub(r'((^|\n)[A-Z]\w+(-\w+)*: .*(\n\s+.*)*)+$', r'') |
133+
ReSub(r' @\d+(h|m|min)?', r'') |
134+
strip)
135+
136+
137+
## ``subject_process`` is a callable
138+
##
139+
## This callable will be given the original subject and result will
140+
## be used in the changelog.
141+
##
142+
## Available constructs are those listed in ``body_process`` doc.
143+
subject_process = (strip |
144+
ReSub(r'^([cC]hg|[fF]ix|[nN]ew)\s*:\s*((dev|use?r|pkg|test|doc)\s*:\s*)?(.*)$', r'\4') |
145+
ReSub(r' @\d+(h|m|min)?', r'') |
146+
ucfirst | final_dot)
147+
148+
149+
## ``tag_filter_regexp`` is a regexp
150+
##
151+
## Tags that will be used for the changelog must match this regexp.
152+
##
153+
tag_filter_regexp = r'^[0-9]+\.[0-9]+(\.[0-9]+)?$'
154+
155+
156+
## ``unreleased_version_label`` is a string
157+
##
158+
## This label will be used as the changelog Title of the last set of changes
159+
## between last valid tag and HEAD if any.
160+
unreleased_version_label = "development (unreleased)"
161+
162+
163+
## ``output_engine`` is a callable
164+
##
165+
## This will change the output format of the generated changelog file
166+
##
167+
## Available choices are:
168+
##
169+
## - rest_py
170+
##
171+
## Legacy pure python engine, outputs ReSTructured text.
172+
## This is the default.
173+
##
174+
## - mustache(<template_name>)
175+
##
176+
## Template name could be any of the available templates in
177+
## ``templates/mustache/*.tpl``.
178+
## Requires python package ``pystache``.
179+
## Examples:
180+
## - mustache("markdown")
181+
## - mustache("restructuredtext")
182+
##
183+
## - makotemplate(<template_name>)
184+
##
185+
## Template name could be any of the available templates in
186+
## ``templates/mako/*.tpl``.
187+
## Requires python package ``mako``.
188+
## Examples:
189+
## - makotemplate("restructuredtext")
190+
##
191+
#output_engine = rest_py
192+
#output_engine = mustache("restructuredtext")
193+
#output_engine = mustache("textile")
194+
output_engine = mustache("markdown")
195+
#output_engine = makotemplate("restructuredtext")
196+
197+
198+
## ``include_merge`` is a boolean
199+
##
200+
## This option tells git-log whether to include merge commits in the log.
201+
## The default is to include them.
202+
include_merge = False

CHANGELOG.md

Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
# Changelog
2+
3+
## 1.2.5 (2018-08-27)
4+
5+
### Fix
6+
7+
* Fixed running on Windows (refs #11) [Michele Tessaro]
8+
9+
Thanks to henn1001 to pointing out a problem on Windows. See
10+
https://github.com/mikitex70/plantuml-markdown/issues/11#issuecomment-414057579
11+
for details.
12+
13+
14+
## 1.2.4 (2018-07-15)
15+
16+
### New
17+
18+
* Added configuration for deployment to pypi and install with pip. [Michele Tessaro]
19+
20+
* Added configuration for deployment to pypi and install with pip. [Michele Tessaro]
21+
22+
### Changes
23+
24+
* Changes python-markdown project URL. [Fred Z]
25+
26+
### Fix
27+
28+
* Fixed package build for pip installation. [Michele Tessaro]
29+
30+
31+
## 1.2.3 (2018-04-19)
32+
33+
### New
34+
35+
* Added some test. [Michele Tessaro]
36+
37+
* Added title macro option. [Michele Tessaro]
38+
39+
Added a title option which would be used for generating the title
40+
(tooltip) of the diagrams in HTML rendering.
41+
42+
* Added GitLab compatibility (closes #7) [Michele Tessaro]
43+
44+
Now the block diagram may be delimited also with the triple backtick
45+
character used in GitLab and others to delimit code blocks.
46+
See the README.md for more details.
47+
48+
* Added output path existence check. [Michele]
49+
50+
* Added source code. [Michele]
51+
52+
Python-Markdown plugin for PlantUML.
53+
54+
### Fix
55+
56+
* Fixed running wiith Python 2.7. [Michele Tessaro]
57+
58+
* Fixed test execution with travis-ci. [Michele Tessaro]
59+
60+
* Fixed working with the fenced_code plugin (refs #8) [Michele Tessaro]
61+
62+
Fixed diagram generation when used together with the fenced_code plugin.
63+
64+
* Fixed one-block diagrams parsing (fixes #9, #10) [Michele Tessaro]
65+
66+
One block diagrams (without at least one empty line inside) were not
67+
correctly recognised.
68+
69+
* Minor fix in documentation. [Michele Tessaro]
70+
71+
* Fixed unicode characters in the macro options. [Michele Tessaro]
72+
73+
Macro options parsing now will work correctly when using unicode
74+
characters (for example in the alt options).
75+
76+
* Fixed generation of class and alt image attributes. [Michele Tessaro]
77+
78+
Images in the generated HTML were missing for the class and alt
79+
attributes.
80+
81+
* Fix an error with svg format. [jumpei-miyata]
82+
83+
* Fix regular expression. [jumpei-miyata]
84+
85+
* Some minor fixes. [Michele Tessaro]
86+
87+
* base64 encoded SVGs, as Firefox doesn&#x27;t handles plain SVGs
88+
* fixed the need of 2 empty lines for &#x27;txt&#x27; diagrams
89+
* fixed newlines converted into br tags for &#x27;txt&#x27; diagrams
90+
91+
* Correct path exists test. [Benjamin Henriet]
92+
93+
* Small documentation correction. [Michele]
94+
95+
* Little correction in documentation. [Michele]
96+
97+
* Some correction in markdown documentation syntax. [Michele]
98+
99+
* Some correction to documentation. [Michele]
100+
101+
### Other
102+
103+
* Removed the (useless) remove of the last line of source text block. [Michele Tessaro]
104+
105+
* Use inline images, NO MORE TEMPFILES! Experimental &#x27;txt&#x27; support. [kubilus1]
106+
107+
* Implemented a sort of caching for generated images. [Michele Tessaro]
108+
109+
Image names are build from an hash code based on the diagram source.
110+
If the source diagram changes, the image maybe different and will be
111+
re-generated.
112+
Now images are generated only if not already present.
113+
114+
* Remove self from static method. [Benjamin Henriet]
115+
116+
* Remove self param from static method, diable image renaming/removing. [arye]
117+
118+
* Updated documentation for installation. [Michele]
119+
120+
Added details on installing locally or globally.
121+
122+
* Adapted to work with Python 3. [Michele]
123+
124+
* Registered plugin after code block parser. [Michele]
125+
126+
Registering the plugin after the code parser gives the possibility to
127+
write source uml code without being handled by this plugin and to
128+
present it as any other source code example.
129+
130+
* Keep temporary file if PlantUML fails. [Michele]
131+
132+
The temporary file containing the PlantUML script can be used to
133+
identify syntax errors in the source MD document
134+
135+
* Initial commit. [Michele Tessaro]
136+
137+

0 commit comments

Comments
 (0)