changelog.dart provides a library and a command-line application to manage in the correct way the git metadata to build the changelog between two release

Overview

changelog.dart

🎯 changelog.dart: a collection of tools to manages in a fashion way a repository as maintainer. 🎯

GitHub Workflow Status

Project Homepage

Table of Content

  • Introduction
  • How to Use
  • How Contribute
  • License

Introduction

changelog.dart is a collection of tools to manage in a fashion way a repository as maintainer.

In particular one of the issue if a maintainer works with different project in different language, is the standard that a community may use.

For example, dart community has a very defined standard to generate the changelog.

With these tools you can forget to create your own script for each language, or project, but you can use a single command line tools, or you can develop your own command line tools with the changelog_lib package that provided all the building blocks to create a well-defined changelog.

How to Use

You can find in the repository two different package, that are:

  • changelog_cmd: That provide a command line application to interface with Github API or git command line (WIP) to extract the metadata from commits;
  • changelog_lib: That provide a library to build a changelog generator without rewrite the own logic.

To see how to use tha package, please see the package homepage.

How Contribute

TODO

License

Copyright 2022 Vincenzo Palazzo <[email protected]>. All rights reserved.

Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:

    * Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.
    * Redistributions in binary form must reproduce the above
      copyright notice, this list of conditions and the following
      disclaimer in the documentation and/or other materials provided
      with the distribution.
    * Neither the name of Google Inc. nor the names of its
      contributors may be used to endorse or promote products derived
      from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Comments
  • add the possibility to track the breaking change in the changelog

    add the possibility to track the breaking change in the changelog

    Currently, it is not possible to do something like that https://github.com/zino-hofmann/graphql-flutter/blob/main/packages/graphql/CHANGELOG.md#breaking-changes

    Also if I preferer to this the deprecated filed, also the bug should stay at least some X period

    enhancement 
    opened by vincenzopalazzo 0
  • changelog_lib: fixed section duplication when there is a complex filter

    changelog_lib: fixed section duplication when there is a complex filter

    Changelog-Fixed: changelog_lib: fixed section duplication when there is a complex filter.

    Fixes https://github.com/vincenzopalazzo/changelog.dart/issues/16

    Signed-off-by: Vincenzo Palazzo [email protected]

    opened by vincenzopalazzo 0
  • Section duplicated when two filter succided

    Section duplicated when two filter succided

    This is the example generated by changelog

    # v5.1.1.beta.1
    
    ## New Feature
    - added query onError & onComplete callbacks ([commit](https://github.com/zino-hofmann/graphql-flutter/commit/8342d245ececc6007744d963c9a5d7ff8ed83f13)).  22-04-2022
    
    ## New Feature
    - Decouple GraphQLClient Provider ([commit](https://github.com/zino-hofmann/graphql-flutter/commit/750ca051f25a89df0b2a69176feab1499426f9b9)).  19-04-2022
    

    This is the configuration file

    {
      "package_name": "graphql_flutter",
      "version": "v5.1.0",
      "api": {
        "name": "github",
        "repository": "zino-hofmann/graphql-flutter",
        "branch": "main"
      },
      "generation_method": {
        "name": "header",
        "header_filter": true
      },
      "serialization_method": {
        "name": "md"
      }
    }
    
    bug 
    opened by vincenzopalazzo 0
  • changelog_cmd: fixed changelog generator conf

    changelog_cmd: fixed changelog generator conf

    Changelog-Fixed: changelog generator configuration, take the correct package name from conf.

    Signed-off-by: Vincenzo Palazzo [email protected]

    opened by vincenzopalazzo 0
  • improve API to the changelog-lib and adding a new generation method to the cmd

    improve API to the changelog-lib and adding a new generation method to the cmd

    To changelog-lib, we add the strict variable to have a better filter method between rules and add the package name to the ChangelogGenerator.

    To changelog-cmd, we add a metadata generator method to improve the usage of metadata inside the commit message and make the commit header more human-friendly.

    opened by vincenzopalazzo 0
  • changelog_cmd: improve the changelog generator semver-v2

    changelog_cmd: improve the changelog generator semver-v2

    When inside the conf the filter header is disabled, but there are filter commits we can improve the item that we generate by adding a format like:

    filter: message

    From the commit header like

    feat(fileter): message

    enhancement 
    opened by vincenzopalazzo 0
  • give the possibility to check out the PRs

    give the possibility to check out the PRs

    With this will be possible to make a CI action that is able to check if there s at least one commit that contains the specification that the changelog generator rules required.

    This required also how to specify some rules in the changelog to be able to fail the generation.

    enhancement hacktoberfest 
    opened by vincenzopalazzo 0
Releases(v0.0.2)
  • v0.0.2(Dec 3, 2022)

  • v0.0.1-beta.4(Jul 13, 2022)

  • v0.0.1-beta.3(Apr 28, 2022)

    changelog_cmd

    Added

    • changelog_cmd: update the changelog_lib version (commit). @vincenzopalazzo 28-04-2022

    changelog_lib

    Fixed

    • changelog_lib: fixed section duplication when there is a complex filter. (commit). @vincenzopalazzo 28-04-2022
    Source code(tar.gz)
    Source code(zip)
  • v0.0.1-beta.2(Apr 4, 2022)

    changelog_cmd v0.0.1-beta.2

    Added

    • add conf file to load all the changelog settings (commit). @vincenzopalazzo 02-04-2022

    Fixed

    • changelog generator configuration, take the correct package name from conf. (commit). @vincenzopalazzo 04-04-2022
    Source code(tar.gz)
    Source code(zip)
  • v0.0.1-beta.1(Apr 1, 2022)

    changelog-cmd v0.0.1-beta.1

    The new tools included the following changes

    Added

    • add a metadata generator method to improve the usage of metadata inside the commit message and make the commit header more human-friendly. (https://github.com/vincenzopalazzo/changelog.dart/commit/f09ee932e559640a3cb3b501985361b810a1291c). @vincenzopalazzo 30-03-2022

    Fixed

    • fixed bug when we specify the variable for package filter. (https://github.com/vincenzopalazzo/changelog.dart/commit/8cb00f0af650000e2c3180234dc316237e347399). @vincenzopalazzo 30-03-2022

    In addition, this release includes the following changes in the changelog-lib

    Added

    • we add the strict variable to have a better filter method between rules and add the package name to the ChangelogGenerator. (https://github.com/vincenzopalazzo/changelog.dart/commit/e18ee755dccbe8ad2ae06879db06b92826b81415). @vincenzopalazzo 30-03-2022

    Fixed

    • FilerRule now remove the prefix when we have a match in the commit body (https://github.com/vincenzopalazzo/changelog.dart/commit/90edb092081b8d43c4beca8143cb1b4e1e5aec56). @vincenzopalazzo 30-03-2022
    Source code(tar.gz)
    Source code(zip)
    changelog-cli-linux(7.18 MB)
    changelog-cli-osx(6.30 MB)
    changelog-cli.exe(6.24 MB)
  • v0.0.1-alpha.2(Mar 30, 2022)

    changelog-cmd v0.0.1-alpha.2

    The new tools included the following changes

    Added

    • add a metadata generator method to improve the usage of metadata inside the commit message and make the commit header more human-friendly. (https://github.com/vincenzopalazzo/changelog.dart/commit/f09ee932e559640a3cb3b501985361b810a1291c). @vincenzopalazzo 30-03-2022

    Fixed

    • fixed bug when we specify the variable for package filter. (https://github.com/vincenzopalazzo/changelog.dart/commit/8cb00f0af650000e2c3180234dc316237e347399). @vincenzopalazzo 30-03-2022

    In addition, this release includes the following changes in the changelog-lib

    Added

    • we add the strict variable to have a better filter method between rules and add the package name to the ChangelogGenerator. (https://github.com/vincenzopalazzo/changelog.dart/commit/e18ee755dccbe8ad2ae06879db06b92826b81415). @vincenzopalazzo 30-03-2022

    Fixed

    • FilerRule now remove the prefix when we have a match in the commit body (https://github.com/vincenzopalazzo/changelog.dart/commit/90edb092081b8d43c4beca8143cb1b4e1e5aec56). @vincenzopalazzo 30-03-2022
    Source code(tar.gz)
    Source code(zip)
    changelog-cli-linux(7.18 MB)
    changelog-cli-osx(6.30 MB)
    changelog-cli.exe(6.24 MB)
  • v0.0.1-alpha.1(Mar 22, 2022)

Owner
Vincenzo Palazzo
Programs must be written for people to read, and only incidentally for machines to execute.
Vincenzo Palazzo
Flutter bloc infinite list - A sample application to learn flutter bloc the correct way

flutter_bloc_infinite_list A sample application to learn flutter bloc the correc

Anoop TM 2 Aug 22, 2022
🎨 An opinionated, effective and correct way to provide multiple themes to your app.

theming This is an opinionated and effective way to provide multi-theme choice for your app. theming depends on provider and shared_preference for sta

Chinyeaka Chinonso 3 Nov 28, 2022
This application was created using the Dart language and it is an application that contains a set of different questions and at the end shows you the number of correct answers you have answered , made by flutter

exams_app A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if thi

null 0 Dec 28, 2021
Listen to remote Flutter GTK application instances' command-line arguments and file open requests.

gtk_application This package allows the primary Flutter GTK application instance to listen to remote application instances' command-line arguments and

null 12 Dec 15, 2022
Scaff is a simple command-line utility for generating Dart and Flutter components from template files.

Introduction Scaffold Generator for Dart and Flutter. scaff is a simple command-line utility for generating Dart and Flutter components from template

Ganesh Rathinavel Medayil 29 Jul 17, 2022
A command-line application provide an load optimization solution for flutter web

一个命令行工具,针对flutter web加载慢和缓存问题提供了一套解决方案。 功能 通过大文件分片和资源文件cdn化方式,优化flutter web页面加载慢问题。 通过资源文件hash化,解决浏览器强缓存导致功能无法更新问题。 开始 局部安装 dev_dependencies: flutte

Barry 10 Dec 29, 2022
Package your Flutter app into OS-specific bundles (.dmg, .exe, etc.) via Dart or the command line.

flutter_distributor Package your Flutter app into OS-specific bundles (.dmg, .exe, etc.) via Dart or the command line. The flutter_distributor source

LeanFlutter 416 Dec 24, 2022
A Nerolab Command Line Interface for Dart created by Nerolab

Nerolab CLI Nerolab Command Line Interface for Dart. Special thanks to GroovinChip with groovin_cli and very_good_cli. Installing dart pub global acti

Nerolab 1 Jan 19, 2022
This is a command-line app written on dart language for flutter applications that will help you to generate some boilerplate code

dart-generator Manual installation: 1- generate a platform executable from code dart compile exe main.dart -o generator this will generate a new gene

One Studio 11 Oct 26, 2022
Interactive command line interface Couchbase Lite REPL utility built with the Dart

Couchbase Lite Dart CLI Interactive command line interface Couchbase Lite REPL utility built with the Dart programming language. This code uses the cb

Pieter Greyling 2 Jul 20, 2022
This is a simple Gantt chart generator written as Dart command line tool.

Gantt Chart Generator This is a simple Gantt chart generator written as Dart command line tool. Currently the tool generates an HTML/CSS Gantt chart.

John Lyon-Smith 1 Apr 26, 2022
A Flutter widget that simply balances the lines of two-line text

Flutter Balanced Text ⚖️ A Flutter widget that simply balances the lines of two-line text, especially useful on long titles or short descriptions. Doe

Raşit Ayaz 3 Nov 10, 2022
Screenshots - A command line utility and package for capturing screenshots for Flutter

A screenshot image with overlaid status bar placed in a device frame. For an example of images generated with Screenshots on a live app in both stores

Maurice McCabe 258 Nov 22, 2022
Command Line Interface (CLI) for Lucifer

Lucy Command Line Interface (CLI) for Lucifer. Installation Activate command line from your terminal with this command. pub global activate lucy Usage

Salman S 1 Dec 16, 2021
An incredible command line interface for Flutter.

Fast CLI An incredible command line interface for Flutter. It allows you to create your own CLI without coding a line. With this CLI, you can create y

Pedro Bissonho 41 Jul 12, 2022
☄ Anime/Manga command-line interface backed up by Tenka.

Yukimi ☄ Anime/Manga command-line interface backed up by Tenka. By using this project, you agree to the usage policy. Installation Pre-built binaries

Yukino Org 28 Jan 6, 2023
shared_versions is a command line tool that allow share the versions for multiple packages in Flutter

shared_versions shared_versions is a CLI tool that allow share the versions for multiple packages in Flutter. Usage shared_versions will match the pac

Littlegnal 6 Sep 20, 2022
Icons Launcher - A command-line tool that simplifies the task of updating your Flutter app's launcher icon.

Icons Launcher - A command-line tool that simplifies the task of updating your Flutter app's launcher icon. Full flexibility allows you to only update the launcher icon for specific platforms as needed.

Mrr Hak 48 Nov 17, 2022
Get git information from within the Flutter application

git_info_plus Get git information from within the Flutter application. Usage Dart final String branchName = await GitInfo.branchName; final DateTime l

Akira Aratani 4 May 17, 2022