Please see the fragment files in the changelog.d directory.
- Support CSS
@charset
prologues.
- Log relevant information where many exceptions are raised.
- Catch exceptions instead of letting them bubble up as a crash.
- Use hashbang lines to determine the interpreter identity for extension-less scripts.
- Support encoding comments near the tops of files for Python and Ruby.
- Support Perl file extensions.
- Allow exclusions to match directories, too.
- Support a top-level
exclusions
key to exclude specific files.
- Rename the
"extension"
configuration key to"extensions"
.
- Add Changelog, License, and Colophon pages.
- Fix TOML syntax in a code sample.
- Add a link to the Chipshot repository.
- Add a Dependabot configuration to auto-update GitHub action versions.
- Add more check-jsonschema pre-commit hooks.
- Fix file writing, which wasn't rendering newlines correctly.
- Determine the configured file encoding only if the file has content.
- Document how to create a new custom style.
- Fix a bug that prevented existing headers from being found if they followed a document prologue.
Standardize how configurations for styles, prologues, and templates are found.
This helps ensure that the most specific configuration for a given file is always used. For example, code interacting with a file with two extensions (like
.jinja.html
) will consistently find a configuration for.jinja.html
before.html
.Rename
prolog
toprologue
everywhere.Rename the configuration keys
style
andprolog
tostyles
andprologues
.Eliminate the
"default"
config key.
- Add a workflow that tests Chipshot using GitHub actions.
- Add two pre-commit hooks:
check-headers
andupdate-headers
.
Allow template literals in the config file using the
template
key.Paths to template files can be defined in the
template_path
key.When no configuration file is specified,
.chipshot.toml
will be loaded first (if it exists).pyproject.toml
will still be loaded as a fallback if.chipshot.toml
doesn't exist.Rename the
--debug
flag to--verbose
.
- Add initial documentation.
- Support Python 3.8 and higher.
- Detect and retain existing byte order marks in files.
- Detect and retain existing newlines in files.
- Detect and retain existing headers in files that are sufficiently dissimilar to the rendered header.
- Detect and retain existing prologues in files (like hashbangs in scripts, or XML declarations).
- Support custom header styles by file extension.