summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2023-03-070.19.0 release (#459)v0.19.0Joris Roovers
This release was primarily focussed on modernizing gitlint's build and test tooling (details: #378). General Python 3.6 no longer supported (EOL since 2021-12-23) (#379) This is the last release to support the sh library (used under-the-hood to execute git commands) by setting GITLINT_USE_SH_LIB=1. This is already disabled by default since v0.18.0. Features Allow for a single commit in the --commits cmd-line param (#412) Gitlint now separates FILE_ENCODING (always UTF-8) from TERMINAL_ENCODING (terminal dependent), this should improve issues with unicode. Use gitlint --debug to inspect these values. (#424) Bugfixes ignore-by-author-name crashes without --staged (#445) Various documentation fixes (#401, #433) - Thanks scop Development Adopted hatch for project management (#384). This significantly improves the developer workflow, please read the updated CONTRIBUTING page. Adopted ruff for linting, replacing pylint (#404) Gitlint now publishes dev builds on every commit to main (#429) Gitlint now publishes a latest_dev docker image on every commit to main (#451) (#452) Dependencies updated Many improvements to the CI/CD worfklows Improve unit test coverage (#453) Integration test fixes on windows (#392, #397) Devcontainer improvements (#428) Removal of Dockerfile.dev (#390) Fix most integration tests on Windows Fix Windows unit tests (#383) Introduce a gate/check GHA job (#375) Full Release details in CHANGELOG.md.
2023-03-07GHA: Minor tweaks (#458)v0.19.0rc2Joris Roovers
- Renamed checks.yml to ci.yml - Add concurrency control to ci to auto-cancel outdated ci runs - Publish releases to pypi instead of test.pypi.org
2023-03-07GHA: github release workflow (#457)v0.19.0rc1Joris Roovers
A new GHA workflow that publishes gitlint when new gitlint releases are created on github.
2023-02-28Fix coveralls reporting (#399)Joris Roovers
Fixes unit test coverage upload to coveralls.io Results: https://coveralls.io/github/jorisroovers/gitlint
2023-02-24Update test dependencies (#455)Joris Roovers
- pytest: 7.2.0 -> 7.2.1 - black: 22.10.0 -> 23.1.0 - ruff: 0.0.244 -> 0.0.252 - pdr: 0.7.5 -> 0.8.2
2023-02-24Changelog updates (#454)Joris Roovers
- Updated changelog for upcoming 0.19.0 release - Changed CHANGELOG format with more headers - Simple changelog.py script that generates rough changelog outline
2023-02-22Improve unit test coverage (#453)Joris Roovers
Improves and fixes some existing unit tests. Adds a few new tests.
2023-02-21GHA: publish-release pass secrets to publish-dockerJoris Roovers
The publish-release now passes its secrets to publish-docker which is required for the publish-docker workflow to access the docker login credentials.
2023-02-21GHA: publish-docker workflow improvements (#452)Joris Roovers
- Support for pushing to dockerhub - Testing of docker image post release - Separation of gitlint_version from docker_image_tag. This allows for pushing latest and latest_dev images. - Auto publish latest_dev image on every commit on main
2023-02-17GHA: publish-docker workflow (#451)Joris Roovers
This allows for the gitlint docker image to be build and pushed on-demand.
2023-02-16Integration Tests: remove harcoded UTF-8 terminal encoding (#450)Joris Roovers
Removing hardcoded UTF-8 terminal encoding in expected files.
2023-02-16GHA: Enable publishing packages to pypi.org (#449)Joris Roovers
Before only publishing to test.pypi.org was supported, now also to pypi.org. The automatic dev builds (on main) now get pushed to pypi.org. Also updates docs, and publish workflow runtime name.
2023-02-15Integration tests: test match regex and ignore rules (#448)Joris Roovers
Integration tests for rules that use regexes. The targetted rules don't really do anything unless they have a custom regex set. Since a default gitlint run doesn't meaningfully tests these rules, explicit tests for these rules ensure they work properly.
2023-02-15Integration tests: set git config commit.cleanup=verbatim (#447)Joris Roovers
Modern git does commit message cleanup by default (e.g. removing trailing whitespace). We disable this during integration testing by setting: git config commit.cleanup=verbatim
2023-02-14Bugfix: ignore-by-author-name crashes without --staged (#445)Joris Roovers
If the user has an ignore-by-author-name rule configured, and when manually passing a git commit message to gitlint using --msg-filename or via STDIN without also using the --staged flag, gitlint crashes because commit.author_name is unknown. This fix will print a warning instead and skip the rule. Fixes #403.
2023-02-14Remove outdated comment line in cli.py (#446)Joris Roovers
This comment no longer makes sense in the current codebase.
2023-02-13Docs: explain dev builds (#444)Joris Roovers
Adds a section to the Contributing docs that explains how to install dev builds.
2023-02-13Update ruff to 0.0.244 (#442)Joris Roovers
Fixed or supressed new violations.
2023-02-10Disable gitlint to gitlint-core versioning matching in dev env (#440)Joris Roovers
This allows for re-use of the 'dev' environment between different git branches.
2023-02-10Metadata urls to source commit for gitlint-core (#441)Joris Roovers
This enables traceability from the build to the source code for gitlint-core.
2023-02-10Add metadata urls to source commit (#439)Joris Roovers
This enables traceability from the build to the source code.
2023-02-10GHA: Increase post publish PYPI wait timeout to 10min (#438)Joris Roovers
By increasing the timeout to 10min, we further increase the odds that PYPI package replication to all servers has finished before triggering the test-release workflow.
2023-02-10Bump python from 3.11.1-alpine to 3.11.2-alpine (#436)dependabot[bot]
Bumps python from 3.11.1-alpine to 3.11.2-alpine. --- updated-dependencies: - dependency-name: python dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-09GHA: Additional sleep in wait-for-package (#435)Joris Roovers
This will increase the odds of PYPI package replication to all servers having finished.
2023-02-09Docs: example fixes (#433)Ville Skyttä
* Use same placeholder `rev` comment for both pre-commit examples * Fix `--commits` special references example
2023-02-09GHA: Wait for gitlint package to be available after publish (#434)Joris Roovers
It takes a short time for packages to show up on PyPI after publishing. Wait for the gitlint package to show up before starting the post-release test run by trying to install the gitlint package, and retrying after a timeout until the package is available.
2023-02-08Use absolute path for README screenshot (#430)Joris Roovers
This should ensure the screenshot is correctly displayed on PyPI.
2023-02-08GHA: Pass secrets to publish-release workflow (#431)Joris Roovers
When invoking the publish-release from the checks workflows on main, pass all secrets. This is required for PYPI secrets to be available.
2023-02-08GHA: Auto publish dev build on main (#429)Joris Roovers
Also perform hatch download before gitlint install in test-release workflow. This buys us a little more time for the package to show up on PyPI before trying to install and test it.
2023-02-08Debug: Add TERMINAL_ENCODING and FILE_ENCODING (#427)Joris Roovers
Renames DEFAULT_ENCODING to TERMINAL_ENCODING in the debug output. Adds FILE_ENCODING to the debug output.
2023-02-08Devcontainer improvements (#428)Joris Roovers
Added extra extensions, configured black.
2023-02-07Separate FILE_ENCODING from TERMINAL_ENCODING (#424)Joris Roovers
Distinguish between terminal encoding (now TERMINAL_ENCODING, renamed from DEFAULT_ENCODING) and file encoding (FILE_ENCODING). Before, gitlint always decoded files using the terminal encoding (DEFAULT_ENCODING) which can be problematic in cases where the terminal encoding is non UTF-8. File encoding is hard set to UTF-8.
2023-01-25Fixes for Publish Release workflow (#421)Joris Roovers
Fixes issues with calling the test-release.yml workflow after publishing.
2023-01-24GHA: Call test-release after publish-release workflow (#420)Joris Roovers
Automatically run integration tests on newly released packages.
2023-01-24Add missing metadata hook config in pyproject.toml (#419)Joris Roovers
Without this line, the gitlint wheel is missing it's dependency on gitlint-core.
2023-01-23GHA: Publish release to test.pypi.org on demand (#418)Joris Roovers
For now, this can only be used for publishing the main branch and publishing to test.pypi.org.
2023-01-23GHA: Publish release workflow (#417)Joris Roovers
Currently only builds packages, follow-up will also publish to test.pypi.org. Also renames the Test Release workflow (and some vars in it).
2023-01-23GHA: Test Release worfklow improvements (#416)Joris Roovers
Added workflow inputs for: - PyPI repository to use - Git reference to checkout for integration tests
2023-01-18Post-release GHA testing workflow (#415)Joris Roovers
Allows testing released gitlint versions.
2023-01-18Hatch vcs (#410)Joris Roovers
Use hatch-vcs for gitlint and gitlint-core versioning. Use a custom build hook in hatch_build.py to ensure the gitlint and gitlint-core versions always match.
2023-01-17GHA: Remove duplicate windows config (#414)Joris Roovers
Windows testing now also happens on all supported Python versions.
2023-01-16Bump actions/setup-python from 4.4.0 to 4.5.0 (#411)dependabot[bot]
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.4.0 to 4.5.0. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v4.4.0...v4.5.0) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-16Reformat pyproject.toml files (#413)Joris Roovers
Aligned with VSCode extension Even-Better-TOML which uses tamasfe/taplo.
2023-01-16cli: Allow for a single commit in the --commits cmd-line param (#412)Carles Cufí
In order to avoid applications needing to select between `--commit` and `--commits` based on the number of commits, allow for providing a single commit with `--commits` in the format: $ gitlint --commits <sha>, The trailing comma ensures that gitlint knows this is a commit list and not a refspec. Signed-off-by: Carles Cufi carles.cufi@nordicsemi.no
2023-01-11Docs: tweak contributing docs (#409)Joris Roovers
Mention of autoformat and autofix hatch scripts.
2023-01-10Remove pylint (#408)Joris Roovers
Ruff replaces pylint
2023-01-09Ruff: additional style enforcement (#407)Joris Roovers
Enable additional styling rules for ruff and fix related violations.
2023-01-06Bump actions/checkout from 3.2.0 to 3.3.0 (#406)dependabot[bot]
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.2.0 to 3.3.0. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3.2.0...v3.3.0) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-05Ruff: enable isort (#405)Joris Roovers
Enforcing imports to be sorted using ruff (isort).
2023-01-05Use ruff for linting (#404)Joris Roovers
Also fixes a few items that were marked as issues by ruff.