Skip to content

What's new in v0.4.3.0?

Version 0.4.3.0 is minor release that brings some improvements and bugfixes, without any breaking changes in CLI interface or configuration.

New & Noteworthy

Support for Dart language

This version adds basic support for managing license/copyright headers in Dart source code files. Default configuration assumes that licence/copyright header is the first single-line comment (or more, but not separated by newline), such as:

// Super Awesome App
// Copyright (c) 2021 John Smith
// this is still copyright header

// this is not copyright header anymore

void main() {
  /* another comment */
  print('Hello, World!');
}

Support for Kotlin language

This version adds support for Kotlin programming language. Default configuration assumes that license/copyright header is the very first block comment, such as:

/*
 * This is copyright header
 */

package foo

/** this is not license header */
fun main(args : Array<String>) {
    println("Hello, World!")
}

Also support includes extracting additional info from processed Java source code file and exposing it using following dynamic variables:

  • _kotlin_package_name - Contains package name of the currently processed Kotlin source code file.

For more info about how dynamic variables and content-aware templates work, see Templates chapter.

Support for PHP language

This version adds support for managing license/copyright headers in PHP source code files. Default configuration assumes that license/copyright header is the very first DocBlock comment present in PHP file, such as:

<?php

/**
 * This is a file-level DocBlock, considered as license/copyright header
 * 
 * A warning will be raised, saying that to document the define, use
 * another DocBlock
 * @package SomePackage
 */

define('foo', 'bar');

At this moment, only basic support is present (i.e. no dynamic variables are extracted from the header), but this might change in future releases.

Global Configuration

Since this release, apart from usual per-project configuration that Headroom uses (.headroom.yaml files), it also adds global configuration, stored in user's home directory (~/.headroom), where some global config values can be changed, such as how often (and if) Headroom should check for updates. See Configuration Overview chapter for more details.

Automatically check for updates

This release adds functionality that automatically checks whether new version of Headroom is available and if yes, it notifies user in command line. By default, this happens once a week and it can be changed (or disabled) in global configuration. See Configuration Overview chapter for more details.

Note

Info about new version is retrieved using GitHub REST API from project releases page, no personal info is collected and no tracking is done. Your privacy is priority for us and always will be respected.

Other bugfixes and improvements

  • [#83] - Update Copyright post-processor incorrectly updates years in some cases
  • minor tweaks and performance improvements