Skip to content

Commit ee6c542

Browse files
authored
Add MarkDown changelog; improve release process (#42)
* Add MarkDown changelog. * Copy over improvements for noxfile from other projects.
1 parent 51d018f commit ee6c542

File tree

6 files changed

+109
-6
lines changed

6 files changed

+109
-6
lines changed

CHANGELOG.md

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
# antsibull\-docs\-parser \-\- Python library for processing Ansible documentation markup Release Notes
2+
3+
**Topics**
4+
- <a href="#v1-0-0">v1\.0\.0</a>
5+
- <a href="#release-summary">Release Summary</a>
6+
- <a href="#v0-4-0">v0\.4\.0</a>
7+
- <a href="#release-summary-1">Release Summary</a>
8+
- <a href="#minor-changes">Minor Changes</a>
9+
- <a href="#bugfixes">Bugfixes</a>
10+
- <a href="#v0-3-0">v0\.3\.0</a>
11+
- <a href="#release-summary-2">Release Summary</a>
12+
- <a href="#minor-changes-1">Minor Changes</a>
13+
- <a href="#v0-2-0">v0\.2\.0</a>
14+
- <a href="#release-summary-3">Release Summary</a>
15+
- <a href="#minor-changes-2">Minor Changes</a>
16+
- <a href="#breaking-changes--porting-guide">Breaking Changes / Porting Guide</a>
17+
- <a href="#v0-0-1">v0\.0\.1</a>
18+
- <a href="#release-summary-4">Release Summary</a>
19+
20+
<a id="v1-0-0"></a>
21+
## v1\.0\.0
22+
23+
<a id="release-summary"></a>
24+
### Release Summary
25+
26+
First stable release\. This package is using semantic versioning\, so there will be no more breaking changes until the release of 2\.0\.0\.
27+
28+
<a id="v0-4-0"></a>
29+
## v0\.4\.0
30+
31+
<a id="release-summary-1"></a>
32+
### Release Summary
33+
34+
Feature and bugfix release\.
35+
36+
<a id="minor-changes"></a>
37+
### Minor Changes
38+
39+
* Adjust URL escaping to be more similar to JavaScript\'s <code>encodeURI\(\)</code> \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/24](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/24)\)\.
40+
* Also escape <code>\.</code> in MarkDown \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/24](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/24)\)\.
41+
42+
<a id="bugfixes"></a>
43+
### Bugfixes
44+
45+
* Fix URL escaping in MarkDown \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/24](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/24)\)\.
46+
47+
<a id="v0-3-0"></a>
48+
## v0\.3\.0
49+
50+
<a id="release-summary-2"></a>
51+
### Release Summary
52+
53+
Feature release\.
54+
55+
<a id="minor-changes-1"></a>
56+
### Minor Changes
57+
58+
* Add support for plain RST rendering \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/20](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/20)\)\.
59+
60+
<a id="v0-2-0"></a>
61+
## v0\.2\.0
62+
63+
<a id="release-summary-3"></a>
64+
### Release Summary
65+
66+
New major release that increases compatibility with the [TypeScript code in antsibull\-docs\-ts](https\://github\.com/ansible\-community/antsibull\-docs\-ts)\.
67+
68+
<a id="minor-changes-2"></a>
69+
### Minor Changes
70+
71+
* Add strict mode for parsing \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/15](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/15)\)\.
72+
* Add support for ansible\-doc like text output \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/17](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/17)\)\.
73+
* Add support for semantic markup in roles \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/9](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/9)\)\.
74+
* Allow to add markup source to every paragraph part \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/18](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/18)\)\.
75+
* Can switch between error messages containing a shortened version of the faulty markup or the full faulty markup command \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/19](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/19)\)\.
76+
* Create script to update/extend the test vectors automatically \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/16](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/16)\)\.
77+
78+
<a id="breaking-changes--porting-guide"></a>
79+
### Breaking Changes / Porting Guide
80+
81+
* All DOM named tuples now have a <code>source</code> entry before <code>type</code> \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/18](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/18)\)\.
82+
* By default\, the error messages now contain the full faulty markup command \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/19](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/19)\)\.
83+
* Extend <code>OptionNamePart</code> and <code>ReturnValuePart</code> named tuples by adding <code>entrypoint</code> after <code>plugin</code> \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/9](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/9)\)\.
84+
* Modify <code>LinkProvider\.plugin\_option\_like\_link</code> signature to include a new argument <code>entrypoint</code> after <code>plugin</code> \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/9](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/9)\)\.
85+
* <code>CommandParser\.parse</code> has a new <code>source</code> parameter \([https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/18](https\://github\.com/ansible\-community/antsibull\-docs\-parser/pull/18)\)\.
86+
87+
<a id="v0-0-1"></a>
88+
## v0\.0\.1
89+
90+
<a id="release-summary-4"></a>
91+
### Release Summary
92+
93+
Initial experimental release\.

CHANGELOG.md.license

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
2+
SPDX-License-Identifier: GPL-3.0-or-later
3+
SPDX-FileCopyrightText: 2023, Ansible Project

CHANGELOG.rst

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ antsibull-docs-parser -- Python library for processing Ansible documentation mar
44

55
.. contents:: Topics
66

7-
87
v1.0.0
98
======
109

changelogs/config.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# SPDX-License-Identifier: GPL-3.0-or-later
44
# SPDX-FileCopyrightText: 2023, Ansible Project
55

6-
changelog_filename_template: ../CHANGELOG.rst
6+
changelog_filename_template: ../CHANGELOG
77
changelog_filename_version_depth: 0
88
changes_file: changelog.yaml
99
changes_format: combined
@@ -12,6 +12,9 @@ keep_fragments: false
1212
mention_ancestor: true
1313
new_plugins_after_name: removed_features
1414
notesdir: fragments
15+
output_formats:
16+
- md
17+
- rst
1518
prelude_section_name: release_summary
1619
prelude_section_title: Release Summary
1720
sections:

noxfile.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -165,19 +165,20 @@ def bump(session: nox.Session):
165165
session.error(
166166
f"Either {fragment_file} must already exist, or two positional arguments must be provided."
167167
)
168-
install(session, "antsibull-changelog[toml]", "hatch")
168+
install(session, "antsibull-changelog[toml] >= 0.24.0", "hatch")
169169
current_version = session.run("hatch", "version", silent=True).strip()
170170
if version != current_version:
171171
session.run("hatch", "version", version)
172172
if len(session.posargs) > 1:
173173
fragment = session.run(
174174
"python",
175175
"-c",
176-
f"import yaml ; print(yaml.dump(dict(release_summary={repr(session.posargs[1])})))",
176+
"import sys, yaml ; "
177+
f"yaml.dump(dict(release_summary={repr(session.posargs[1])}), sys.stdout)",
177178
silent=True,
178179
)
179180
with open(fragment_file, "w") as fp:
180-
print(fragment, file=fp)
181+
fp.write(fragment)
181182
session.run(
182183
"git",
183184
"add",
@@ -186,10 +187,11 @@ def bump(session: nox.Session):
186187
external=True,
187188
)
188189
session.run("git", "commit", "-m", f"Prepare {version}.", external=True)
189-
session.run("antsibull-changelog", "release", "--version", version)
190+
session.run("antsibull-changelog", "release")
190191
session.run(
191192
"git",
192193
"add",
194+
"CHANGELOG.md",
193195
"CHANGELOG.rst",
194196
"changelogs/changelog.yaml",
195197
"changelogs/fragments/",

pyproject.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,9 @@ classifiers = [
3838

3939
[project.urls]
4040
"Source code" = "https://github.com/ansible-community/antsibull-docs-parser/"
41+
"Code of Conduct" = "https://docs.ansible.com/ansible/latest/community/code_of_conduct.html"
42+
"Bug tracker" = "https://github.com/ansible-community/antsibull-docs-parser/issues"
43+
"Changelog" = "https://github.com/ansible-community/antsibull-docs-parser/tree/main/CHANGELOG.md"
4144

4245
[project.optional-dependencies]
4346
codeqa = [

0 commit comments

Comments
 (0)