Awesome Python 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 package changelogs on Awesome Python unique.

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

Changelog examples

  • hypothesis 4.33.0 (August 20, 2019)

    🚀 This release improves the "domains()" strategy, as well as the
    "urls()" and the "emails()" strategies which use it. These strategies
    now use the full IANA list of Top Level Domains and are correct as per
    RFC 1035.

    ✅ Passing tests using these strategies may now fail.

    Thanks to TechDragon for this improvement.

    The canonical version of these notes (with links) is on readthedocs.

  • Panda3D 1.10.4 (August 19, 2019)

    🚀 Read the announcement on our blog, or go straight to the download page for the binary builds.

    🚀 This release fixes a regression with DirectScrolledList in 1.10.3, fixes various other bugs, and introduces a few minor features.

    • 🛠 Fix exception trying to create DirectScrolledList
    • 🛠 Fix flickering in DirectScrolledFrame and other scissor issues (#681)
    • 👍 Experimental support for Python 3.8
    • 👌 Support adding icons to deployed applications
    • Support non-affine (eg. projective) transforms in calc_tight_bounds
    • 👍 Allow setting notify-output after initial import
    • 🛠 Fix macOS issue locating Panda3D using Python 2.7.13+ from python.org
    • 👌 Support for Maya 2019
    • 🏁 On Windows, pip is now installed by the installer (#690)
    • 🛠 Fix Actor.makeSubpart on models with pre-bound animations (#647)
    • Properly interrupt task manager if first task chain raises error (#692)
    • 🛠 Fix return value of encrypt_string in Python 3 (#684)
    • 👌 Support writing loader plug-ins in Python
    • 🛠 Fix reading multiple p3d_TextureMatrix[] values from GLSL shaders
    • 🛠 Fix shader error flag not being set if GLSL compilation failed (#622)
    • ➕ Add NodePath.replace_texture() convenience method
    • 🛠 Fix deadlock when building with SIMPLE_THREADS=1 (#704)
    • 🛠 Fix DirectOptionMenu cancelFrame not working inside scrolled frame (#658)
    • 🛠 Fix assertion when calling analyze() on geometry with strip cut index
    • 👍 Implement fallback in GL renderer when F_sluminance is not supported (#693)
    • Set reasonable limits for sliders in ParticlePanel
    • 🛠 Fix for DirectEntry autoCapitalize feature on Python 3 (#628)
    • 🛠 Fix various DirectGUI items not working before ShowBase is instantiated
    • 🚀 Work around an MSVC compiler bug in the release build
    • PythonUtil.weightedChoice now raises IndexError on empty list
    • 👌 Support changing DirectScrollBar width after initialiation (#699)
    • ↪ Workaround for Bullet deadlock when adding shape to a scaled body (#689)
    • 👌 Support setting DirectEntryScroll entry after initialization (#702)
    • 🛠 Fix some missing imports in directtools (#698)
    • 🛠 Fix undefined behavior issue when using musl-libc
    • ⚡️ Update Eigen in Windows thirdparty packages to 3.3.7
    • 📇 Update metadata of pip wheels
  • pywebview 3.0.2 (August 17, 2019)

    🚀 Released 17/08/2019

    • Fix [All] Prevent JSON like strings being converted to JSON objects when returning JS API calls. #352
    • 🏁 Fix [Windows] HTTP server is now used by default for local URLs and HTML for EdgeHTML. This fixes a PermissionDenied error, when the directory the executable is in is not writable.
    • Fix [Tests] Tests now fail on an exception occuring in a thread.