1*54fd6939SJiyong Park/* 2*54fd6939SJiyong Park * Copyright (c) 2021, Arm Limited. All rights reserved. 3*54fd6939SJiyong Park * 4*54fd6939SJiyong Park * SPDX-License-Identifier: BSD-3-Clause 5*54fd6939SJiyong Park */ 6*54fd6939SJiyong Park 7*54fd6939SJiyong Park/* eslint-env es6 */ 8*54fd6939SJiyong Park 9*54fd6939SJiyong Park"use strict"; 10*54fd6939SJiyong Park 11*54fd6939SJiyong Parkconst cz = require("./.cz.json"); 12*54fd6939SJiyong Park 13*54fd6939SJiyong Park/* 14*54fd6939SJiyong Park * Convert the Commitizen types array into the format accepted by the Conventional Changelog 15*54fd6939SJiyong Park * Conventional Commits plugin (which our own plugin extends). 16*54fd6939SJiyong Park */ 17*54fd6939SJiyong Parkconst types = cz.types.map(type => { 18*54fd6939SJiyong Park if (!type.hidden) { 19*54fd6939SJiyong Park /* 20*54fd6939SJiyong Park * Conventional Changelog prevents each section from appearing only if it has no designated 21*54fd6939SJiyong Park * title, regardless of the value of the `hidden` flag. 22*54fd6939SJiyong Park */ 23*54fd6939SJiyong Park type.section = type.title; 24*54fd6939SJiyong Park } 25*54fd6939SJiyong Park 26*54fd6939SJiyong Park delete type.title; 27*54fd6939SJiyong Park delete type.description; 28*54fd6939SJiyong Park 29*54fd6939SJiyong Park return type; 30*54fd6939SJiyong Park}); 31*54fd6939SJiyong Park 32*54fd6939SJiyong Parkmodule.exports = { 33*54fd6939SJiyong Park "header": "# Change Log & Release Notes\n\nThis document contains a summary of the new features, changes, fixes and known\nissues in each release of Trusted Firmware-A.\n", 34*54fd6939SJiyong Park "preset": { 35*54fd6939SJiyong Park "name": "tf-a", 36*54fd6939SJiyong Park "commitUrlFormat": "https://review.trustedfirmware.org/plugins/gitiles/TF-A/trusted-firmware-a/+/{{hash}}", 37*54fd6939SJiyong Park "compareUrlFormat": "https://review.trustedfirmware.org/plugins/gitiles/TF-A/trusted-firmware-a/+/{{previousTag}}..{{currentTag}}", 38*54fd6939SJiyong Park "userUrlFormat": "https://github.com/{{user}}", 39*54fd6939SJiyong Park 40*54fd6939SJiyong Park "types": types, 41*54fd6939SJiyong Park "sections": cz.sections, 42*54fd6939SJiyong Park }, 43*54fd6939SJiyong Park "bumpFiles": [ 44*54fd6939SJiyong Park { 45*54fd6939SJiyong Park "filename": "Makefile", 46*54fd6939SJiyong Park "updater": { 47*54fd6939SJiyong Park "readVersion": function (contents) { 48*54fd6939SJiyong Park const major = contents.match(/^VERSION_MAJOR\s*:=\s*(\d+?)$/m)[1]; 49*54fd6939SJiyong Park const minor = contents.match(/^VERSION_MINOR\s*:=\s*(\d+?)$/m)[1]; 50*54fd6939SJiyong Park 51*54fd6939SJiyong Park return `${major}.${minor}.0`; 52*54fd6939SJiyong Park }, 53*54fd6939SJiyong Park 54*54fd6939SJiyong Park "writeVersion": function (contents, version) { 55*54fd6939SJiyong Park const major = version.split(".")[0]; 56*54fd6939SJiyong Park const minor = version.split(".")[1]; 57*54fd6939SJiyong Park 58*54fd6939SJiyong Park contents = contents.replace(/^(VERSION_MAJOR\s*:=\s*)(\d+?)$/m, `$1${major}`); 59*54fd6939SJiyong Park contents = contents.replace(/^(VERSION_MINOR\s*:=\s*)(\d+?)$/m, `$1${minor}`); 60*54fd6939SJiyong Park 61*54fd6939SJiyong Park return contents; 62*54fd6939SJiyong Park } 63*54fd6939SJiyong Park } 64*54fd6939SJiyong Park } 65*54fd6939SJiyong Park ] 66*54fd6939SJiyong Park}; 67