GithubHelp home page GithubHelp logo

isabella232 / release-notes-generator-2 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dolthub/release-notes-generator

0.0 0.0 0.0 30 KB

Automated release notes generation for GitHub project releases

License: Apache License 2.0

Perl 97.55% Shell 2.45%

release-notes-generator-2's Introduction

GitHub release notes generator

This tool generates release notes for a GitHub repository consisting of a summary of merged PRs and closed issues since the last release. With a release tag argument, it will generate release notes for an existing release so that you can backfill this information for previous releases.

Example:

./gen_release_notes.pl \
    -d dolthub/go-mysql-server \
    -d dolthub/vitess \
    dolthub/dolt v0.22.9

This tells the tool to generate release notes for dolthub/dolt for the release tagged v0.22.9, and to include any changes to the dependencies dolthub/go-mysql-server and dolthub/vitess that were built into this release. The end of this README contains an example of the output it produces.

Pre-requisites

This script requires several CPAN modules. Run install-deps.sh to install them. Depending on your perl installation, you may need to run this with sudo.

Alternately, install them yourself with cpan:

cpan> install DateTime::Format::ISO8601
cpan> install Getopt::Long
cpan> install JSON::Parse

Usage

The tool will clone the repo given unless a directory with the same name exists in the working directory. Therefore, if you intend to generate release notes for a project you already have checked out locally, it's recommended that you clone this repo alongside the one you want to generate release notes for. E.g.:

% find . -maxdepth 1
.
./dolt
./release-notes-generator
./my-other-project
% ./release-notes-generator/gen_release_notes.pl \
    -d dolthub/go-mysql-server \ 
    dolthub/dolt v0.22.9

Since dolt exists in the current working directory, the tool will assume that's the repository dolthub/dolt and not bother cloning it. It should be up to date with the GitHub remote or tag resolution may fail.

Requirements

Limitations

Dependencies are only supported for golang projects with a go.mod file. And dependency parsing in general is very limited.

GitHub Auth

GitHub limits anonymous RPCs to 60 per hour, and this could change in the future. If you hit the rate limit, you will need to provide a personal API token. Details and instructions for obtaining a token can be found in the file comment in the script.

Example output

The tool produces markdown output like the below that you can paste directly into your GitHub release.

Merged PRs

  • 1170: Updating to latest go-mysql-server
  • 1169: go/libraries/doltcore/sqle: Keyless tables don't have PK index -- fix describe panic
  • 1168: /.github/{scripts,workflows}: fix, pod to job, handle pod errors
  • 1167: C# test for alternate MySQL connector library, upgraded existing to u… …se dotnet 5 (up from 3)
  • 1165: /.github/workflows/ci-performance-benchmarks.yaml: fix id
  • 1163: Db/ci performance
  • 1162: unrolled decode varint decode loop 30% faster on the benchmark in this PR. BenchmarkUnrolledDecodeUVarint/binary.UVarint-8 1000000000 0.0372 ns/op BenchmarkUnrolledDecodeUVarint/unrolled-8 1000000000 0.0258 ns/op
  • 1147: Fixed indentiation in YAML syntax for Discord notifications
  • 1143: First cut of Discrod notifications This implements the following policy:
    • notify on cancellation or failure of any job
    • notify on release, including success Currently release notifications are broken by a shortcoming in GitHub Actions, namely that one workflow cannot kick of another when using GITHUB_TOKEN. We will devise a workaround.
  • 256: added describe queries for keyless tables
  • 255: This function implement an Naryfunction type. Allows you to define sqle functions that have multiple children.
  • 254: Fixed UNHEX/HEX roundtrip Simple fix but I ended up completely reevaluating our binary type implementation. Fixed a bug found in the cast package we were using to convert strings, and also changed UNHEX to return the proper SQL type.
  • 252: Added hash functions
  • 249: Alias bug fixes Fixes a number of buggy behaviors involving column indexes and table name resolution.
  • 248: additional tests add a table with multiple keys an index that has a subset of those keys in a different order a couple queries

Closed Issues

  • 1161: Primary keyless tables seem to break DESCRIBE
  • 1153: p.StopWithErr(err) is hanging on large imports

release-notes-generator-2's People

Contributors

coffeegoddd avatar zachmu avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.