Skip to content
This repository has been archived by the owner on Jul 18, 2022. It is now read-only.

Releases: fbiville/headache

Getting Better Everyday πŸ’ͺ

03 Jan 17:48
Compare
Choose a tag to compare
Pre-release

Lots of internal improvements in this release 🍾

  • [#33] Migrate to Go modules
  • [#47] Define build in Makefile
  • Enable Dependabot (or as I call it: dπŸΌπŸ€–) for the few deps headache has
  • [#69] Adhere to Go standard layout
  • [#49] Improve execution tracking by directly serializing configuration and template to the tracker file

And now, on new features and user-facing improvements:

  • [#22] The DashDash (--) style has been added, thanks @redpanda
  • [#22] The SemiColon (;) style has been added, thanks @redpanda
  • [#22] The REM style has been added, thanks @Psycokwet
  • [#22] The SlashStarStar (/**) style has been added, thanks @AElMehdi
  • Various efforts (#50, #64 and other commits) to make header matching (especially at the first-ever run) more lenient on punctuation, newline and whitespace differences (this is a huge and ongoing effort πŸ˜…)
  • [#37] The comment styles can now be configured in aNy CaSe YoU LikE πŸ•ΊπŸ’ƒ. Thanks @dialaya for the suggestion!
  • More logs now, so what is going on is now (hopefully) clearer 🌲

❗️ incompatible change ❗️
go get github.com/fbiville/headache won't work anymore 😿
You need to run go get github.com/fbiville/headache/cmd/headache instead πŸ₯³

I hope you will give headache a try! A new bug report template will help you summarize any issue you encounter when running headache on your project πŸ€“

And if you want to contribute, there is still a lot of work ahead.
If you live around Paris πŸ‡«πŸ‡·, you can also pair-program with me on headache every month at Hackergarten Paris ❀️

A More Flexible Way To Handle Dates... and more!

03 Apr 14:17
Compare
Choose a tag to compare
  • [#27] Track used configuration file path so it can be read at the next execution to match existing headers
  • [#22] Add the new comment style Hash (#) - thanks @dialaya! πŸ”₯
  • Upgrade to Go 1.12 πŸ†™
  • Ignore pure copies and renames when processing changed files
  • [#41] Discard copyright year in the future πŸ•
  • [#43] Introduce StartYear and EndYear, rename Year to YearRange πŸ“† (check out the README for more information)
  • [#45] Assume current configuration path if the previous one was not tracked
  • Improve logs 🌲

Note that #43 introduced a schema change, this version of headache references https://fbiville.github.io/headache/v1.0.0-M03/schema.json.

If you want to contribute, there are a bunch of "good first issues" waiting for ya! πŸ’ͺ

A Tiny Yet Embarrassing Mistake -- Fixed!

24 Jan 21:00
Compare
Choose a tag to compare

Sadly, 1.0.0-M01 was broken due to a very stupid mistake in the schema loading implementation 😭
Upgrade now!

Here are a few changes of note: πŸ•΅οΈβ€β™€οΈ

  • [#11] internal: all tests are now migrated to Ginkgo
  • [#35] Fix schema location and tolerate loading errors

And that's it for now. Stay tuned for the next milestone release! πŸ‘‚

A Massive Improvement

28 Dec 17:23
Compare
Choose a tag to compare
A Massive Improvement Pre-release
Pre-release

Due to my stupid mistake related to the configuration schema loading, this release is broken. Upgrade to https://github.com/fbiville/headache/releases/tag/1.0.0-M02 at least!

A lot has been done since the last version:

  • [8372f00] there is now a code of conduct
  • [#5][#9] Copyright years are now based on versioning information and the lowest bound, if found, is always preserved
  • [#14] headache tracks its last execution and only consider source files that have changed since
  • [#20] Contributing new comment styles should now be easier (see #22 - help much appreciated)
  • [#16] A first step towards license switch has been implemented, although a big question (#29) remains open (input much appreciated as well)
  • [#3] Several improvements have been gradually pushed to enhance header detection (although it's still a big ball of regex 😱)
  • dry-run mode has been implemented and finally removed as it has been deemed too complex and without much value (project maintainers can discard the changes they do not want!)
  • [#24] headache configuration is now validated against a JSON schema

The objectives to reach for 1.0.0 are about (at least for now):

  • [#3] moving towards a reliable header detection
  • [#22] supporting more comment styles
  • [#16] improving the license switch journey (depends on #29)
  • [#23] allowing to co-locate multiple configurations for polyglot projects

They will be released in subsequent milestones.

Any help is welcome and much appreciated, make sure to watch the issues and grab the low hanging fruits 🌴

Not Quite There Yet

28 Dec 17:05
Compare
Choose a tag to compare
Pre-release

Glob syntax is now supported in patterns.

However, copyright years are still based on configuration and not on versioning information. As you probably know by now, this is not correct!

Getting closer than last time, but still a long way to go πŸ˜…

A Youthful Mistake

28 Dec 17:02
Compare
Choose a tag to compare
A Youthful Mistake Pre-release
Pre-release

This first release introduces the first configuration blocks of headache.
However, it suffers from several limitations:

  • glob syntax is not supported in inclusion/exclusion patterns
  • the whole approach of blindlessly generating the copyright years is wrong, as explained here

We Must Do Better πŸ’ͺ