- TO-DO list of niceties for the future of Git::Hooks.
- Support the WIN32 Platform
- Improve documentation
- L10N pt_BR
- In CheckAcls implement DENY for ACL operations
- Implement equivalents for the SVN::Hooks plugins
- In CheckLog allow for stop words
- CheckLog should check the footer of the commit log message
- Turn t/test-functions.pl into a module
- pre-commit or pre-push
- Use the post-rewrite hook in CheckRewrite
- Use Test::Requires::Git in the test suite
- Think (again) about substituting Git::Repository for the Git module
- COPYRIGHT AND LICENSE
TODO - Ideas for future versions of Git::Hooks
TO-DO list of niceties for the future of Git::Hooks.
The following list is no order whatsoever. Any comments or other suggestion are welcome at gnustavo AT cpan.org.
Support the WIN32 Platform
Currently we abort the build on
A plugin developer tutorial
Revise documentation and make it more uniform
Follow the advice in 13 Things People Hate about Your Open Source Docs
Use Locale::TextDomain to internationalize it?
As a first job after i18n I intend to nationalize it to Brazilian Portuguese.
In CheckAcls implement DENY for ACL operations
Along the lines of NFSv4 ACLs (http://tools.ietf.org/html/rfc5661#section-6). I'm thinking about prefixing the what component with a '!'.
Implement equivalents for the SVN::Hooks plugins
Currently we're missing UpdateConfFile. Actually, I'm thinking that UpdateConfFile is too much specific. Perhaps something along the lines of this post-update hook would be more interesting: http://stackoverflow.com/questions/279169/deploy-a-project-using-git-push.
In CheckLog allow for stop words
CheckLog.spelling should have a way to register stop words. I'd have to ask for a change in Text::SpellChecker.
CheckLog should check the footer of the commit log message
The Gerrit default
commit-msg implements some checks that could be used here. Some other things to check:
- Require Signed-off-by lines (https://github.com/icefox/git-hooks/blob/master/git_hooks/commit-msg/signed-off-by)
- Duplicate Signed-off-by lines (https://github.com/icefox/git-hooks/blob/master/contrib/commit-msg/duplicate-signedoffby)
Turn t/test-functions.pl into a module
Idea provided by Skye Shaw to make its functions usable by third-party plugins. Something like Git::Hooks::Test.
pre-commit or pre-push
It would be nice to let the user decide in which of these two hooks he'd like to have his checks run. The idea would be to have a (default and per-plugin) configuration option called
*.hook accepting the options
pre-push (defaulting for the former). This way the user would be able to make his checks run on any one of the hooks.
Use the post-rewrite hook in CheckRewrite
The CheckRewrite plugin was written without resort to the post-rewrite hook, which I think was implemented later. It seems that it would make the implementation easier and more efficient. I would still use the pre-rebase hook to detect unsafe rebases before they're done, however there should exist an option to choose to postpone the check to after the rebase.
The pre-commit and post-commit hooks would be replaced by the post-rewrite though.
Use Test::Requires::Git in the test suite
Think (again) about substituting Git::Repository for the Git module
The Git::Repository module seems to be better maintained than the standard Git module. In the past I chose the latter mainly because it was faster. However, I'd like to review them again.
Gustavo L. de M. Chaves <email@example.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2016 by CPqD <www.cpqd.com.br>.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.