Skip to content

Releases: frgfm/validate-python-headers

v0.5.0

05 Jul 20:55
689de76
Compare
Choose a tag to compare

This minor release improves the remediation message and speeds up the action.

Highlights

Better remediation 🔈

When any header was invalid, we were showing you one of the accepted headers. Let's say you created a file in 2020, your organization is named Pyronear and you picked the Apache 2 license. Now we're in 2024, you would have received this message:

Your header should look like:

# Copyright (C) 2023-2024, Pyronear.

# This program is licensed under the Apache License 2.0.

this is not correctly updated to:

Your header should look like:

# Copyright (C) <FILE_CREATION_YEAR>-2024, Pyronear.

# This program is licensed under the Apache License 2.0.

Python 3.11 ⚡

We upgrade the python version from 3.8 to 3.11 for the action's docker which should save you some CI minutes!

What's Changed

New Features 🚀

  • style(ruff): switched from flake8, isort, bandit & black to ruff by @frgfm in #18

Improvements

  • fix(src): update the suggestion when headers are invalid by @frgfm in #20
  • perf(docker): bump python from 3.8 to 3.11 by @frgfm in #21
  • docs(readme): update the message example by @frgfm in #22

Full Changelog: v0.4...v0.5.0

v0.4: Adds a new option for custom license notice

16 Jan 15:55
4946fa6
Compare
Choose a tag to compare

This minor release adds the possibility to have a custom license notice.

Highlights

Custom license notice 🤫

When developing software, you might sometimes not be able to share your work in open source. This is understandable and implies that you have a custom license notice. This release allows you to do so:

uses: frgfm/validate-python-headers@main
with:
  owner: 'François-Guillaume Fernandez'
  starting-year: 2022
  license-notice: '.github/license-notice.txt'
  ignore-folders: '.github/'

Enjoy!

What's Changed

New Features 🚀

  • feat: Adds possibility to have a custom license notice by @frgfm in #15

Improvements

  • ci: Adds a test case in the CI by @frgfm in #16

Full Changelog: v0.3...v0.4

v0.3: Adds a new option to ignore folders

20 Dec 20:34
d80cf77
Compare
Choose a tag to compare

This minor release adds the possibility to ignore folders & renames a previous option.

Highlights

Folder ignoring 🙈

Until now you could ignore files, but let's be honest: most tools allow you to ignore folders. While patterns are not supported yet, one feature was added to ignore entire folders:

uses: frgfm/validate-python-headers@main
with:
  license: 'Apache-2.0'
  owner: 'François-Guillaume Fernandez'
  starting-year: 2022
  ignore-folders: '.github/'

Enjoy!

Tighter cleaning 🧹

In order to improve the quality of the project, the following tools were added:

  • autoflake: to automatically apply flake8
  • bandit: spots vulnerabilities in the code

Additionally, precommit hooks were added to minimize the forth-and-forth with the CI and have clean commits upfront 😄

Breaking changes

Renamed parameter

The ignores option was renamed into ignore-files to have a more explicit naming and better align with new features. The following action:

uses: frgfm/validate-python-headers@main
with:
  license: 'Apache-2.0'
  owner: 'François-Guillaume Fernandez'
  starting-year: 2022
  ignores: '__init__.py,version.py'

now needs to be modified as follows if you use the latest version:

uses: frgfm/validate-python-headers@main
with:
  license: 'Apache-2.0'
  owner: 'François-Guillaume Fernandez'
  starting-year: 2022
  ignore-files: '__init__.py,version.py'

What's Changed

Breaking Changes 🛠

  • feat: Adds the option to ignore folders by @frgfm in #11

New Features 🚀

Bug Fixes 🐛

Improvements

  • style: Adds autoflake, bandit & precommit by @frgfm in #12

Full Changelog: v0.2...v0.3

v0.2: Added support for all SPDX licenses

27 Jun 14:10
895ada9
Compare
Choose a tag to compare

This minor release fixes the Docker orchestration of the action and adds support for all SPDX-referenced licenses.

Highlights

Broad support of licenses 📖

Instead of manually adding the reference for all licenses, this release adds support for all SPDX-referenced licenses using their identifier. This should help for various projects with their own license requirements.

Minimal effort, insightful report 🤓

The action was designed to have minimal input from the user, as shown below:

uses: frgfm/validate-python-headers@main
with:
  license: 'Apache-2.0'
  owner: 'François-Guillaume Fernandez'
  starting-year: 2022
  ignores: 'version.py,__init__.py'

Using this in your workflow will allow you to have a wary assistant for your headers 🙌

What's Changed

New Features 🚀

  • feat: Extended supported licenses by @frgfm in #9

Bug Fixes 🐛

  • docs: Updated README by @frgfm in #2
  • fix: Fixed the Dockerfile and updated README by @frgfm in #3
  • fix: Fixed entrypoint by @frgfm in #4
  • fix: Fixed Dockerfile orchestration by @frgfm in #5
  • fix: Fixed entrypoint of the action Docker by @frgfm in #6
  • fix: Fixed validation script path by @frgfm in #7
  • fix: Fixed workdir access to the script by @frgfm in #8

Improvements

  • docs: Added contributing tools by @frgfm in #10

Full Changelog: v0.1...v0.2

v0.1: Header validator for your Python files

26 Jun 22:50
7bd413f
Compare
Choose a tag to compare

This minor release provides a light GitHub action to check your Python headers for copyright and license notices.

Highlights

License check ✔️

Using the license identifier, the action will automatically fetch the full license name and its URL so that your headers include all necessary mentions for your project to be correctly licensed.

Dynamic copyright year ⏳

Complex projects have parts that have been designed years apart. This means that your code may have different starting copyright years and needs to be incorporated as such in the header. You only have to specific the starting year of your project, the action will take care of the rest 👍

What's Changed

New Features 🚀

  • feat: Added basic action setup by @frgfm in #1

New Contributors

  • @frgfm made their first contribution in #1

Full Changelog: https://github.com/frgfm/validate-python-headers/commits/v0.1.0