Awesome C++ has a "changelog" section under all projects. You can find it next to the "Repo" button in the header. There are two features that make it unique.

  1. It is an aggregation of parsed "CHANGELOG.md" files and releases information from Github. This way, it is easier to see all changes in a single place and a uniform style.
  2. All changelogs are "emojified". This helps with identifying each change easier. Emojification is achieved by parsing each line and applying a specific emoji based on the first word or some other tokens.

The combination of the above two makes library changelogs on Awesome C++ unique.

As you know, an example is worth a 1,000 words 🚀

Changelog examples

  • Nameof C++ 0.9.2 (October 19, 2019)

    🚀 Release v0.9.2

    ➕ Add documentation.

    nameof and nameof_type returns nameof::cstring - constexpr implementation of an string.

    🛠 Fix nameof_enum cvref regression.

    🛠 Fix nameof_enum bug signed casts to unsigned in min()/max().

    🛠 Fix nameof_enum calculate reflected range.

    Improving nameof_enum compile times.

  • Apache Thrift 0.13.0 (October 16, 2019)

    🆕 New Languages

    • (none)

    🗄 Deprecated Languages

    • 🚀 THRIFT-4723 - CSharp and Netcore targets are deprecated and will be removed with the next release - use NetStd instead.

    ✂ Removed Languages

    • 🚚 THRIFT-4719 - Cocoa language was removed - use swift instead.

    💥 Breaking Changes

    • 🚚 THRIFT-4743 - compiler: removed the plug-in mechanism
    • 🚚 THRIFT-4720 - cpp: C++03/C++98 support has been removed; also removed boost as a runtime dependency
    • 🚚 THRIFT-4730 - cpp: BoostThreadFactory, PosixThreadFactory, StdThreadFactory removed
    • THRIFT-4732 - cpp: CMake build changed to use BUILD_SHARED_LIBS
    • 🚚 THRIFT-4735 - cpp: Removed Qt4 support
    • THRIFT-4740 - cpp: Use std::chrono::duration for timeouts
    • THRIFT-4762 - cpp: TTransport::getOrigin() is now const
    • THRIFT-4702 - java: class org.apache.thrift.AutoExpandingBuffer is no longer public
    • THRIFT-4709 - java: changes to UTF-8 handling require JDK 1.7 at a minimum
    • THRIFT-4712 - java: class org.apache.thrift.ShortStack is no longer public
    • THRIFT-4725 - java: change return type signature of 'process' methods
    • THRIFT-4805 - java: replaced TSaslTransportException with TTransportException
    • THRIFT-2530 - java: TIOStreamTransport's "isOpen" now returns false after "close" is called
    • THRIFT-4675 - js: now uses node-int64 for 64 bit integer constants
    • THRIFT-4841 - delphi: old THTTPTransport is now TMsxmlHTTPTransport
    • THRIFT-4536 - rust: convert from try-from crate to rust stable (1.34+), re-export ordered-float

    🚑 Known Issues (Blocker or Critical)

    • THRIFT-3877 - C++: library don't work with HTTP (csharp server, cpp client; need cross test enhancement)

    As3

    • THRIFT-4784 - Thrift should throw when skipping over unexpected data

    🏗 Build Process

    • 🏗 THRIFT-2333 - RPMBUILD: Abort build if user did not disable ruby but ruby build will fail later on
    • 🚀 THRIFT-4689 - Pull changes from 0.12.0 release branch into master
    • 🚀 THRIFT-4690 - Update dlang deimos for OpenSSL 1.1 (use 1.1.0h tagged release instead of master)
    • ⬆️ THRIFT-4694 - Upgrade Java to Java 1.8
    • 🚀 THRIFT-4716 - Create a version alignment tool to make releases easier
    • THRIFT-4760 - Install pkgconfig when using cmake
    • 📦 THRIFT-4769 - Change NuGet package to use netstd artifact
    • THRIFT-4811 - Add cmake config module
    • 👷 THRIFT-4855 - go CI fails with "cannot find package "golang.org/x/tools/go/packages" in any of ..."
    • 👷 THRIFT-4864 - CI fails at netstd
    • THRIFT-4874 - Thrift 0.12.0 Source Distribution (.tar.gz) Contains Hardlinks - Extract Fails
    • 🏗 THRIFT-4896 - cpp and c_glib include paths are added to source files when building
    • 🏗 THRIFT-4966 - Git ignore files generated by the build

    C glib

    • THRIFT-4842 - Multiplexed protocol has a memory leak in set c_glib
    • 👍 THRIFT-4878 - c_glib ThriftSocket support for unix domain sockets
    • THRIFT-4950 - fix bind print error and Macro call errors thrift_server_socket

    C

    • THRIFT-3587 - C# TTLSSocket does not use timeout for opening the socket
    • THRIFT-4024 - Skip() should throw on unknown data types
    • THRIFT-4684 - Missing namespace and un-used private fields in WCF fault classes when enable WCF in C# code generation
    • THRIFT-4715 - C# union "data" should be strongly-typed
    • 🗄 THRIFT-4723 - Consolidate C# and netcore into new netstd language target (and finally deprecate both C# and netcore bindings)
    • THRIFT-4741 - Missing "inner" argument from one CTOR
    • 📦 THRIFT-4769 - Change NuGet package to use netstd artifact
    • THRIFT-4859 - Enables changing 'UserAgent'
    • THRIFT-4907 - strong named assemblies wanted

    C++

    • THRIFT-4384 - Using a concurrent client with cpp async is not safe.
    • 🏗 THRIFT-4441 - C++: support building lib without Boost
    • 🏁 THRIFT-4487 - gettimeofday: windows implementation not quoting source, applying license to foreign code
    • 🐧 THRIFT-4593 - Unit Tests failing on Alpine Linux due to non-portable mutex initializers
    • THRIFT-4678 - add noexcept cpp generator option
    • ♻️ THRIFT-4720 - Drop support for C++03/C++98 and begin refactoring
    • 🚚 THRIFT-4730 - Remove pthread and boost::thread library support and use std::thread for C++11
    • 🚚 THRIFT-4735 - Remove C++ Qt4 support (leave Qt5) - Qt4 LTS ended in 2014
    • 🏁 THRIFT-4739 - Good old concurrency_test failing on windows builds again with some regularity
    • 🚚 THRIFT-4740 - Use std::chrono for timeout and remove old structures.
    • ♻️ THRIFT-4762 - C++: Applied some C++11 refactorings to the runtime library and compiler
    • THRIFT-4776 - Modernize c++11 code by clang-tidy
    • THRIFT-4830 - Add to_string function for enum in C++ file generate
    • 🚚 THRIFT-4861 - Fix use of deprecated boost endian header; move to minimum boost 1.56.0
    • 👻 THRIFT-4936 - add depth limit type exception description
    • THRIFT-4962 - Deadlock in TimerManager::stop

    cocoa

  • OpenCV 3.4.8 (October 10, 2019)

    🚀 OpenCV 3.4.8 has been released.