<commit_before>homepage: https://github.com/vaclavsvejcar/headroom
changelog-type: markdown
hash: 9f75c3b780f43d8e33c8805617756318a701caed94048b15d771f025ac66ce03
test-bench-deps:
  rio: '>=0.1.15.1'
  headroom: -any
  pcre-light: '>=0.4.1.0'
  base: '>=4.7 && <5'
  hspec: '>=2.7.1'
  doctest: '>=0.16.3'
  optparse-applicative: '>=0.15.1.0'
  QuickCheck: '>=2.13.2'
  aeson: '>=1.4.7.1'
maintainer: <EMAIL>
synopsis: License Header Manager
changelog: |
  # Changelog
  All notable changes to this project will be documented in this file.

  ## 0.2.2.1 (released 2020-05-08)
  - Minor improves in generated `.headroom.config` in `init` mode

  ## 0.2.2.0 (released 2020-05-04)
  - [#45] Add `-c|--check-headers` command line option
  - Bump _LTS Haskell_ to `15.11`

  ## 0.2.1.1 (released 2020-04-30)
  - [#47] Make possible to build Headroom with GHC 8.10
  - Remove unused dependency on `text` package.

  ## 0.2.1.0 (released 2020-04-29)
  - [#41] Add `--dry-run` option to allow test run without changing files.
  - [#44] Don't touch files whose contents have not changed.
  - [#46] Add `-e|--excluded-path=REGEX` option to exclude source paths.
  - Bump _LTS Haskell_ to `15.10`.
  - Remove unused dependencies.

  ## 0.2.0.0 (released 2020-04-25)
  - [#28] Allow license headers to be anywhere in the file, not only at the very beginning.
  - [#31] Render templates for each source file instead of once (blocker for [#25])
  - [#32] Allow custom user configuration for license headers.
  - [#34] Support for [Rust](https://www.rust-lang.org/)
  - [#35] Support for [Bash](https://www.gnu.org/software/bash/)
  - [#36] Support for _C/C++_
  - [#38] Add `-a|--add-headers` command-line option
  - bump _LTS Haskell_ to `15.9`

  ## 0.1.3.0 (released 2020-03-23)
  - [#24] Added _Init_ command that automatically creates initial _Headroom_ configuration and set of templates.
  - bump _LTS Haskell_ to `15.5`

  ## 0.1.2.0 (released 2020-03-06)
  - FIXED: missing `test-data/` folder in dist tarball prevents tests execution
  - bump _LTS Haskell_ to `15.2`

  ## 0.1.1.0 (released 2020-02-26)
  - FIXED: missing `embedded/` folder in dist tarball for _Hackage_ prevents successful build using _Cabal_
  - bump _LTS Haskell_ to `15.1`

  ## 0.1.0.0 (released 2020-02-20)
  - initial release
basic-deps:
  rio: '>=0.1.15.1'
  headroom: -any
  either: '>=5.0.1.1'
  pcre-light: '>=0.4.1.0'
  base: '>=4.7 && <5'
  time: '>=1.9.3'
  mustache: '>=2.3.1'
  file-embed: '>=0.0.11.2'
  optparse-applicative: '>=0.15.1.0'
  aeson: '>=1.4.7.1'
  yaml: '>=0.11.3.0'
all-versions:
- 0.1.0.0
- 0.1.1.0
- 0.1.2.0
- 0.1.3.0
- 0.2.0.0
- 0.2.1.0
- 0.2.1.1
- 0.2.2.0
- 0.2.2.1
author: <NAME>
latest: 0.2.2.1
description-type: markdown
description: |-
  Would you like to have nice, up-to-date license/copyright headers in your source code files but hate to manage them by hand? Then __Headroom__ is the right tool for you! Now you can define your license header as [Mustache][web:mustache] template, put all the variables (such as author's name, year, etc.) into the [YAML][wiki:yaml] config file and Headroom will take care to add such license headers to all your source code files.

  [![asciicast](https://asciinema.org/a/4Pfxdss0V4msFjjt2z6mgCZCp.svg)](https://asciinema.org/a/4Pfxdss0V4msFjjt2z6mgCZCp)

  See the [GitHub project page](https://github.com/vaclavsvejcar/headroom/) for more details.

  [web:mustache]: https://mustache.github.io
license-name: BSD-3-Clause<commit_msg>Update from Hackage at 2020-06-28T18:34:41Z<commit_after>homepage: https://github.com/vaclavsvejcar/headroom
changelog-type: markdown
hash: 7b1bcbb34cb1a7a2c7d80c038414ca738d584965acd95cb05ddff0adc2ddfe90
test-bench-deps:
  rio: '>=0.1.17.0'
  headroom: -any
  pcre-light: '>=0.4.1.0'
  base: '>=4.7 && <5'
  time: '>=1.9.3'
  hspec: '>=2.7.1'
  doctest: '>=0.16.3'
  optparse-applicative: '>=0.15.1.0'
  QuickCheck: '>=2.13.2'
  aeson: '>=1.4.7.1'
maintainer: <EMAIL>
synopsis: License Header Manager
changelog: |
  # Changelog
  All notable changes to this project will be documented in this file.

  ## 0.3.0.0 (released 2020-06-28)
  - [#25] Extract _dynamic variables_ from Haskell source code files
  - [#29] Add _dynamic variable_ for current year and add support for updating years
  - [#30] Allow workflow without configuration and template files
  - [#49] Microsite for documentation ([https://doc.norcane.com/headroom/latest/](https://doc.norcane.com/headroom/latest/))
  - [#51] Allow template variable values to be templates itself
  - [#52] Post-processing functions for _license headers_
  - Various bugfixes and performance improvements
  - Bump _LTS Haskell_ to `16.2`

  ## 0.2.2.1 (released 2020-05-08)
  - Minor improves in generated `.headroom.yaml` in `init` mode

  ## 0.2.2.0 (released 2020-05-04)
  - [#45] Add `-c|--check-headers` command line option
  - Bump _LTS Haskell_ to `15.11`

  ## 0.2.1.1 (released 2020-04-30)
  - [#47] Make possible to build Headroom with GHC 8.10
  - Remove unused dependency on `text` package.

  ## 0.2.1.0 (released 2020-04-29)
  - [#41] Add `--dry-run` option to allow test run without changing files.
  - [#44] Don't touch files whose contents have not changed.
  - [#46] Add `-e|--excluded-path=REGEX` option to exclude source paths.
  - Bump _LTS Haskell_ to `15.10`.
  - Remove unused dependencies.

  ## 0.2.0.0 (released 2020-04-25)
  - [#28] Allow license headers to be anywhere in the file, not only at the very beginning.
  - [#31] Render templates for each source file instead of once (blocker for [#25])
  - [#32] Allow custom user configuration for license headers.
  - [#34] Support for [Rust](https://www.rust-lang.org/)
  - [#35] Support for [Bash](https://www.gnu.org/software/bash/)
  - [#36] Support for _C/C++_
  - [#38] Add `-a|--add-headers` command-line option
  - bump _LTS Haskell_ to `15.9`

  ## 0.1.3.0 (released 2020-03-23)
  - [#24] Added _Init_ command that automatically creates initial _Headroom_ configuration and set of templates.
  - bump _LTS Haskell_ to `15.5`

  ## 0.1.2.0 (released 2020-03-06)
  - FIXED: missing `test-data/` folder in dist tarball prevents tests execution
  - bump _LTS Haskell_ to `15.2`

  ## 0.1.1.0 (released 2020-02-26)
  - FIXED: missing `embedded/` folder in dist tarball for _Hackage_ prevents successful build using _Cabal_
  - bump _LTS Haskell_ to `15.1`

  ## 0.1.0.0 (released 2020-02-20)
  - initial release
basic-deps:
  rio: '>=0.1.17.0'
  microlens-th: '>=0.4.3.5'
  headroom: -any
  either: '>=5.0.1.1'
  pcre-light: '>=0.4.1.0'
  pcre-heavy: '>=1.0.0.2'
  base: '>=4.7 && <5'
  data-default-class: '>=0.1.2.0'
  time: '>=1.9.3'
  mustache: '>=2.3.1'
  file-embed: '>=0.0.11.2'
  optparse-applicative: '>=0.15.1.0'
  microlens: '>=0.4.11.2'
  aeson: '>=1.4.7.1'
  template-haskell: '>=2.15.0.0'
  yaml: '>=0.11.4.0'
all-versions:
- 0.1.0.0
- 0.1.1.0
- 0.1.2.0
- 0.1.3.0
- 0.2.0.0
- 0.2.1.0
- 0.2.1.1
- 0.2.2.0
- 0.2.2.1
- 0.3.0.0
author: <NAME>
latest: 0.3.0.0
description-type: markdown
description: |-
  Would you like to have nice, up-to-date license/copyright headers in your source code files but hate to manage them manually? Then __Headroom__ is the right tool for you. Define your license header as [Mustache][web:mustache] template, put any template variables into [YAML][wiki:yaml] configuarion file, and you're ready to go!

  __Headroom__ also offers much more than just [adding, replacing or dropping][doc:running-headroom] license headers. It can also [update years in copyrights][doc:post-processing] for you, provides [extended functionality][doc:extended-functionality] for some source code file types, and much more!

  [![asciicast](https://asciinema.org/a/4Pfxdss0V4msFjjt2z6mgCZCp.svg)](https://asciinema.org/a/4Pfxdss0V4msFjjt2z6mgCZCp)

  ## Main Features
  - __License Header Management__ - [Add, replace or drop license headers][doc:running-headroom] in your source code files with a single command. What's more, contrary to many similar tools, _Headroom_ allows you to also replace/drop headers that weren't previously generated by _Headroom_, using smart header auto-detection.
  - __Powerful Customization__ - Default [configuration][doc:configuration] should cover most use-cases, but if you need to put empty lines before/after generated header, use different comment style of headers, you can customize the configuration to match exactly your needs.
  - __Built-in OSS License Headers__ - If you want to use license header for one of the popular OSS licenses, then __Headroom__ can [generate them for you][doc:running-headroom#gen-command] - no need to search for them on web.
  - __Automatic Initialization for OSS Projects__ - Setting up external tools like _Headroom_ for your project can be boring. Fortunately, _Headroom_ can [initialize itself][doc:running-headroom#init-command] for your project, by generating configuration file and template files.
  - __Extended Functionality__ - _Headroom_ supports [extended functionality][doc:extended-functionality] for selected types of source code files, such as extracting extra data from processed source code files.
  - __Copyright Year Updater__ - _Headroom_ is good not only for basic license header management, but also for further processing of generated headers. Do you need to [update years in your copyrights][doc:post-processing]? No problem!

  ## Adopters
  Here is the list of projects using _Headroom_. If you're using _Headroom_ and aren't on the list, feel free to [submit new issue][meta:new-issue] or [pull request][meta:pulls].

  - [kowainik/hit-on](https://github.com/kowainik/hit-on) - Kowainik Git Workflow Helper Tool
  - [kowainik/summoner](https://github.com/kowainik/summoner) - Tool for scaffolding batteries-included production-level Haskell projects
  - [wireapp/wire-server](https://github.com/wireapp/wire-server) - Wire back-end services (https://wire.com)

  ## Documentation
  * for end-user documentation, [official project microsite][web:headroom]
  * for _Haskell API_ documentation, see [Headroom on Hackage][hackage:headroom]

  [i25]: https://github.com/vaclavsvejcar/headroom/issues/25
  [hackage:headroom]: https://hackage.haskell.org/package/headroom
  [meta:new-issue]: https://github.com/vaclavsvejcar/headroom/issues/new
  [meta:pulls]: https://github.com/vaclavsvejcar/headroom/pulls
  [web:headroom]: https://doc.norcane.com/headroom/latest/
  [doc:configuration]: https://doc.norcane.com/headroom/latest/documentation/configuration/
  [doc:extended-functionality]: https://doc.norcane.com/headroom/latest/documentation/extended-functionality/
  [doc:post-processing]: https://doc.norcane.com/headroom/latest/documentation/post-processing/
  [doc:running-headroom]: https://doc.norcane.com/headroom/latest/documentation/running-headroom/
  [doc:running-headroom#gen-command]: https://doc.norcane.com/headroom/latest/documentation/running-headroom/#gen-command
  [doc:running-headroom#init-command]: https://doc.norcane.com/headroom/latest/documentation/running-headroom/#init-command
  [web:mustache]: https://mustache.github.io
  [wiki:yaml]: https://en.wikipedia.org/wiki/YAML
license-name: BSD-3-Clause
{'fraction_non_alphanumeric': 0.14040911537771397, 'fraction_numerical': 0.06441772833303427, 'mean_word_length': 3.7353440951571795, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 49, 'https://': 31, 'lorem ipsum': 0, 'www.': 4, 'xml': 0}, 'pii_count': 67, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '741084', 'n_tokens_mistral': 4447, 'n_tokens_neox': 3978, 'n_words': 1129}