Skip to content

Commit 6da596c

Browse files
committed
Refine release process description (and fix some typos)
1 parent a078db4 commit 6da596c

File tree

4 files changed

+34
-24
lines changed

4 files changed

+34
-24
lines changed

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
- Homepage: Contribute to `gh-pages` branch (using a pull request).
44
The `docs/` folder of the `gh-pages` branch is the base of the content of <https://adr.github.io/madr/>.
55
- Template: Contribute to `develop` branch (using a pull request).
6-
The subdirectory `docs/` will be new homepage of the release.
6+
The subdirectory `docs/` will be the new homepage after a release.
77
The current state is rendered at <https://develop--madr-develop.netlify.app/>.
88
- Older version of the template: `develop/v{x}`, where `{x}` is the major version you want to contribute.
99
In case no such branch exists, contribute to `release/v{x}`.

README.md

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
55
For user documentation, please head to <https://adr.github.io/madr/>.
66

7-
## Development Hints
7+
## Development hints
88

99
* MADR follows [Semantic Versioning 2.0.0](https://semver.org/) and documents changes in a `CHANGELOG.md` following [keep a changelog 1.0.0](http://keepachangelog.com/en/1.0.0/).
1010
* Issues can be reported at <https://github.com/adr/madr/issues>.
@@ -63,18 +63,19 @@ In case you get errors regarding `Gemfile.lock`, just delete `Gemfile.lock` and
6363
## Releasing a new version
6464

6565
1. Update the examples at `docs/index.md` and `docs/examples.md`.
66-
2. Update `docs/decisions/*` with the new template.
67-
3. Add link to `docs/index.md` (for the homepage).
68-
4. Commit and push.
69-
5. Update `CHANGELOG.md`.
70-
6. Check that the YAML front matter in `docs/decisions/adr-template.md` is kept.
71-
7. Copy `.markdownlint.yml` to `template/.markdownlint.yml`
72-
8. Adapt the version reference in `template/0000-use-madr.md`.
73-
9. Copy `template/0000-use-madr.md` to `docs/decisions/0000-use-madr.md`.
74-
10. Update `package.json`
75-
11. Publish to [npmjs](https://www.npmjs.com/package/madr) using [release-it](https://www.npmjs.com/package/release-it) (do not create a release on GitHub). This also does a commit.
76-
12. Create GitHub release using [github-release-from-changelog](https://www.npmjs.com/package/github-release-from-changelog).
77-
13. Merge `develop` into `gh-pages`
66+
2. Update the concrete decisions in `docs/decisions/*` with the new template.
67+
3. Commit ("Update examples and decisions") and push. Possibly as pull request.
68+
4. Adapt the version reference in `template/0000-use-madr.md`.
69+
5. Update "template" files in in `docs/decisions/`
70+
* Copy `template/0000-use-madr.md` to `docs/decisions/0000-use-madr.md`.
71+
* Adapt content of `docs/decisions/adr-template.md` based on `template/adr-template.md`.
72+
Thereby, ensure that the YAML front matter in `docs/decisions/adr-template.md` is kept.
73+
6. Add link to `docs/index.md` at "Older versions" (for the homepage).
74+
7. Update `CHANGELOG.md`.
75+
8. Copy `.markdownlint.yml` to `template/.markdownlint.yml`
76+
9. Update `package.json` and publish to [npmjs](https://www.npmjs.com/package/madr) using [release-it](https://www.npmjs.com/package/release-it) (do not create a release on GitHub). This also does a commit.
77+
10. Create GitHub release using [github-release-from-changelog](https://www.npmjs.com/package/github-release-from-changelog).
78+
11. Merge `develop` into `gh-pages`
7879

7980
## License
8081

docs/decisions/0000-use-madr.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ Which format and structure should these records follow?
1919

2020
## Decision Outcome
2121

22-
Chosen option: "MADR 3.0.0", because
22+
Chosen option: "MADR 4.0.0", because
2323

2424
* Implicit assumptions should be made explicit.
2525
Design documentation is important to enable people understanding the decisions later on.

docs/index.md

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ title: About MADR
1111
An Architectural Decision (AD) is a justified software design choice that addresses a functional or non-functional requirement of architectural significance.
1212
This decision is documented in an Architectural Decision Record (ADR), which details a single AD and its underlying rationale.
1313
To capture these records in a lean way, the Markdown Architectural Decision Records (MADRs) have been invented:
14-
MADR is a streamlined template for recording archictural significant decisions in a structured manner.
14+
MADR is a streamlined template for recording architectural significant decisions in a structured manner.
1515

1616
## Contents
1717

@@ -24,11 +24,13 @@ MADR is a streamlined template for recording archictural significant decisions i
2424
* [Lint ADRs](#lint-adrs)
2525
* [Using MADR in large projects and product developments](#using-madr-in-large-projects-and-product-developments)
2626
* [Usage of categories](#usage-of-categories)
27+
* [Full template](#full-template)
28+
* [Older versions](#older-versions)
2729
* [License](#license)
2830

2931
## News
3032

31-
* 2024-05-xx: Release of MADR 4.0.0
33+
* 2024-06-xx: Release of MADR 4.0.0-beta
3234
* To strengthen the importance for decisions in software architecture work, MADR spells out "Markdown Architectural Decision Records".
3335
They can still be used to sustain any decision, our focus is on architectural decisions.
3436
* 2023-04-05: Two new Medium stories ["How to create Architectural Decision Records (ADRs) — and how not to"](https://medium.com/olzzio/how-to-create-architectural-decision-records-adrs-and-how-not-to-93b5b4b33080) and ["How to review Architectural Decision Records (ADRs) — and how not to"](https://medium.com/olzzio/how-to-review-architectural-decision-records-adrs-and-how-not-to-2707652db196). Metaphors, patterns, anti-patterns, checklists applicable (but not limited) to MADRs.
@@ -61,10 +63,7 @@ There are debates about what is an architecturally-significant decision and whic
6163
Since we believe that any (important) decision should be captured in a structured way, we offer the MADR template to capture any decision.
6264

6365
This repository offers a solution to record any decisions.
64-
It provides files to document any decisions using **M**arkdown and **A**ny **D**ecision **R**ecords.
65-
66-
Before MADR 3.0.0, "MADR" stood for **M**arkdown and **A**rchitectural **D**ecision **R**ecords.
67-
Since MADR 3.0.0, "Architectural" was replaced by "Any".
66+
It provides files to document any decisions using **M**arkdown and **A**rchitectural **D**ecision **R**ecords.
6867

6968
## Example
7069

@@ -147,9 +146,9 @@ Some proposals from the community are presented in the following.
147146

148147
### Usage of categories
149148

150-
MADR logs may be categorized ADRs by defining sub directories and put the ADRs into these folders.
149+
MADR logs may be categorized ADRs by defining subdirectories and put the ADRs into these folders.
151150

152-
An examplary folder structure might follow the architectural structure of the system under construction:
151+
An exemplary folder structure might follow the architectural structure of the system under construction:
153152

154153
```tree
155154
.
@@ -160,7 +159,7 @@ An examplary folder structure might follow the architectural structure of the sy
160159
`-- 0001-use-vuejs.md
161160
```
162161

163-
This approach makes all categories explicit because the sub directory/folder names define the categories.
162+
This approach makes all categories explicit because the subdirectory/folder names define the categories.
164163
As a consequence, numbers of ADRs are no longer unique throughout the repository, but locally within a category only.
165164
Ideally, the ADR categorization the same organizing principles as other artifacts such as the code; using architectural structure breakdown is just one option and functional decomposition would be an additional one. This comes down to a meta-decision to be made rather early on.
166165

@@ -174,6 +173,16 @@ The current development version renders as follows:
174173
{% include_relative decisions/adr-template.md %}
175174
```
176175

176+
## Older versions
177+
178+
| Version | Branch | Homepage |
179+
| -- | -- | -- |
180+
| 1.x | [release/v1](https://github.com/adr/madr/tree/release/v1) | [README.md](https://github.com/adr/madr/blob/release/v1/README.md) |
181+
| 2.x | [release/v2](https://github.com/adr/madr/tree/release/v2) | [README.md](https://github.com/adr/madr/blob/release/v2/README.md) |
182+
| 3.x | [release/v3](https://github.com/adr/madr/tree/release/v3) | [index.md](https://github.com/adr/madr/blob/release/v3/docs/index.md) |
183+
184+
The branch name conventions follow the [git flow model](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow).
185+
177186
## License
178187

179188
This work is dual-licensed under [MIT](https://opensource.org/licenses/MIT) and

0 commit comments

Comments
 (0)