Skip to content
This repository has been archived by the owner on Oct 22, 2023. It is now read-only.

The goal of this repository is to work out an easy to use, human readable and machine processable schema for release notes.

License

Notifications You must be signed in to change notification settings

release-notes/release-notes-spec

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Release Notes Schema Specification

Subscribe to Release Notes

About

The goal of this repository is to work out an easy to use, human readable and machine processable YAML schema specification for release notes.

The Specification

The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in RFC 2119.

The release notes MUST be defined in a release-notes.yml file on project root.

The format of that file MUST be YAML.

The document MUST provide a title.

The document SHOULD provide a description.

The document MUST prodive releases, an array of ReleaseDetails.

The releases SHOULD be ordered, the latest release comes first.

A release MUST provide a version.

A release MUST provide a date of type ISODate or ISODateTime.

A release MAY provide a title.

A release SHOULD provide a description.

The Upcoming Release

An upcoming release MUST have the version set to Unreleased, Next or Upcoming.

The upcoming release MAY omit the date info.

Modification Types

A release MAY provide a list of added functionality.

A release MAY provide a list of removed functionailty.

A release MAY provide a list of changed functionailty.

A release MAY provide a list of improved functionality.

A release MAY provide a list of deprecated functionality.

A release MAY provide a list of fixed functionality.

A release MAY provide a list of secured fixes.

All modification list items MUST be either string or an object with a title property.

Tags

A modification in object notation MAY provide a list of tags. Each tag MUST be a string that SHOULD be treated case insensitive.

Example

title: Release Notes of an awesome project
description: >
  Awesome project makes your cli a better place.

releases:
- version: Unreleased
  added:
  - Add more fancy stuff.
  deprecated:
  - Deprecate some "not so awesome" command.
- version: 0.1.1
  date: 2017-10-30
  fixed:
  - title: Do not crash on win32.
    tags: ["Windows"]
- version: 0.1.0
  date: 2017-10-30
  description: The first release
  added:
  - Introduce some awesomeness.

Project Repositories

The Release Notes project consists of the following repositories:


LICENSE

The files in this archive are released under MIT license. You can find a copy of this license in LICENSE.

About

The goal of this repository is to work out an easy to use, human readable and machine processable schema for release notes.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published