CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-conventional-changelog-writer

Write logs based on conventional commits and templates.

85

1.00x
Overview
Eval results
Files

task.mdevals/scenario-2/

Changelog Commit Sorter

A tool that generates changelogs from conventional commit data with customizable sorting behavior for commits within each group.

Capabilities

Sorting commits by property name

  • Given commits grouped by type, when sorting by the "hash" property, commits within each group should be ordered alphabetically by hash. @test
  • Given commits grouped by type, when sorting by the "header" property, commits within each group should be ordered alphabetically by header. @test

Multi-level sorting

  • Given commits grouped by type, when using an array of properties ["scope", "subject"], commits should be sorted first by scope, then by subject within each group. @test

Custom sorting function

  • Given a custom comparator function, commits within groups should be sorted according to the custom logic. @test

Implementation

@generates

API

/**
 * Generates a changelog string from an array of commits with custom sorting.
 *
 * @param {Array} commits - Array of commit objects with conventional commit structure
 * @param {Object} options - Configuration options including sorting behavior
 * @returns {Promise<string>} The generated changelog string
 */
async function generateChangelog(commits, options) {
  // IMPLEMENTATION HERE
}

module.exports = { generateChangelog };

Dependencies { .dependencies }

conventional-changelog-writer { .dependency }

Provides changelog generation and commit sorting capabilities.

Install with Tessl CLI

npx tessl i tessl/npm-conventional-changelog-writer

tile.json