DEV Community

Romain Lespinasse
Romain Lespinasse

Posted on • Originally published at romainlespinasse.dev

Open Source Maintenance: Do I Need to Update My License Year?

If you’ve been maintaining a project since 2019 and have reached a milestone like v5.x, you might wonder if that "2019" in your LICENSE file makes your project look abandoned.

Here is a quick guide on how to handle license dates effectively without overthinking it.

The "First Publication" Rule

In an MIT or Apache license, the year (e.g., Copyright (c) 2019) marks the year of first publication.
It isn't an expiration date. However, as your project evolves through major versions, your code changes significantly.

Using the Copyright Range

Instead of choosing between the start year and the current year, the professional standard is to use a range.

  • Bad: Copyright (c) 2019 (Looks abandoned)
  • Better: Copyright (c) 2026 (Wipes out the history of the original work)
  • Best: Copyright (c) 2019-2026 (Protects the original v1.0 and the current v5.x)

When to Update (The SemVer Strategy)

If you follow Semantic Versioning, you don't need to touch the license for every patch.

Version Type Update License? Reason
Major (v5.0.0) Highly Recommended Significant refactors or breaking changes are new "works."
Minor (v5.1.0) Recommended New features should be covered under the latest year.
Patch (v5.1.1) Optional Bug fixes rarely require a copyright update.

Automation: The "Set and Forget" Method

If you find manual updates tedious, you can use a GitHub Action to check your license at the start of every year.

FantasticFiasco/action-update-license-year GitHub Action will handle it for you.

name: Update copyright year(s) in license file

on:
    schedule:
        - cron: '0 3 1 1 *' # 03:00 AM on January 1

jobs:
    update-license-year:
        runs-on: ubuntu-latest
        steps:
            - uses: actions/checkout@v6
              with:
                  fetch-depth: 0
            - uses: FantasticFiasco/action-update-license-year@v3
              with:
                  token: ${{ secrets.GITHUB_TOKEN }}
Enter fullscreen mode Exit fullscreen mode

This action will detect your 2019 start date and automatically transform it into 2019-2026, keeping your project looking active and professional.

Summary

For a project spanning several years, simply update your license header to:

Copyright (c) 2019-2026 [Your Name]
Enter fullscreen mode Exit fullscreen mode

This tells the world your project is established, battle-tested since 2019, and actively maintained in 2026.

💡 Note
This post was originally published on my personal blog.

Top comments (0)