All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Removed
glob_scanner()
andglob_filter()
functions.
- Removed
black
badge from documentation. - Rewrited
docs/release.py
script usingclick
.
- Removed
pyupgrade
. - Removed
black
. - Adopted
ruff format
.
- Preferred
exclude_also
overexclude_lines
forcoverage
.
6.1 - 2023-11-30
- Added
expand_path()
function. - Added
auto_glob()
function. - Added
--auto
option to provide an alternative file selection method.
- Now
--sync
option supports nanoseconds timestamp without precision loss.
- Removed
PathWithSuffix
class.
- Added
--no-clean
and--no-dist
options todocs/release.py
script.
- Adopted more
ruff
rules.
- Added test cases for
gethash.utils.strxor
. - Improved tox config.
- Now store
hypothesis
andpytest
cache in.cache
directory.
6.0 - 2023-11-19
- Added
AggOutput
,SepOutput
andNullOutput
classes.
- Changed
Output
to abstract base class. - Refactored
CRC32
class. - Now
CheckHashLineError
requires hexadecimal hash value string. - Refactored
format_hash_line()
andparse_hash_line()
.
- Added Python 3.12 support.
- Dropped Python 3.8 support.
- Updated project links.
- Adopted
check-case-conflict
andcheck-merge-conflict
forpre-commit-hooks
. - Updated
mymy
configuration. - Now store
ruff
andmypy
cache in.cache
directory.
- Added test cases for
gethash.wrappers.crc32
. - Added more test data.
- Adopted
more-itertools
for testing. - Improved tox config.
5.9 - 2023-10-30
- Now
Hasher
supportspathlib.Path
. - Now
HashFileReader
andHashFileWriter
supportpathlib.Path
. - Now
format_hash_line()
,parse_hash_line()
,generate_hash_line()
andcheck_hash_line()
supportpathlib.Path
.
- Migrated build system from
setuptools
tohatch
. - Now use
hatch
to setup development environment. - Now require
importlib-metadata>=4.10
. - Now require
natsort>=8.4
. - Now require
tqdm>=4.66
. - Now require
typing-extensions>=4.4
.
- Improved documentation.
- Improved changelog.
5.8 - 2023-10-24
- Now allow to setup development environment via
tox devenv -e dev .venv
. - Adopted
typing-extensions
.
- Migrated documentation dependencies to
setup.cfg
. - Updated
docs/release.py
script. - Updated
docs/source/conf.py
. - Refactored root doc from
index.rst
toindex.md
. - Added
pre-commit
andruff
badges to documentation. - Removed
isort
badge from documentation. - Changed title for HTML documentation to
{project} {release}
. - Improved changelog.
- Now require
tox>=4.4
. - Fixed and improved configuration for
tox
. - Added exclude lines for
coverage
. - Added more test cases.
5.7 - 2023-10-21
- Migrated development dependencies to
setup.cfg
. - Now require
importlib-metadata>=4.4
.
- Now require
pre-commit>=3.0
. - Adopted
ruff
. - Removed
isort
,flake8
andyesqa
.
5.6 - 2022-10-19
- Migrated development dependencies to
requirements-dev.txt
. - Now require
click>=8.1
.
- Added
docs/release.py
script for building documentation. - Improved documentation.
- Adopted
yesqa
.
- Adopted
coverage
,pytest
,pytest-cov
andtox
for testing.
5.5 - 2022-07-17
- Added
gethash.wrappers
package. - Added
WrappersBackend
class for loading commands fromgethash.wrappers
.
- Moved
crc32
module fromgethash.utils
togethash.wrappers
. - Improved type annotations.
- Adopted
pyupgrade
.
5.4 - 2022-06-24
- Added
HashContext
protocol class for annotating hash context type. - Added
gethash.backends
entry points.
- Changed type annotation of
ctx
argument fromAny
toHashContext
. - Now load backends via entry points.
- Added Python 3.11 support.
- Adopted
flake8-comprehensions
andflake8-simplify
. - Migrated
mypy
configuration topyproject.toml
.
5.3 - 2022-06-05
- Changed type annotations for
Hasher.__init__()
. - Renamed argument of
Hasher.__init__()
fromtqdm_class
totqdm_type
. --start
and--stop
options now require non-negative integers.
- Fixed a reading error when
chunksize < 0
forHasher._hash_file()
.
- Dropped Python 3.7 support.
- Adopted
pre-commit
for running linters automatically. - Adopted
flake8-bugbear
andflake8-implicit-str-concat
.
5.2 - 2022-05-16
- Added
root
argument toHashFileReader.iter_hash()
.
- Now require
natsort>=8.1
. - Removed
setup.py
. Now usepython -m build
.
5.1 - 2022-01-18
- Now require
tqdm>=4.60
. - Now require
importlib-metadata>=4.4; python_version < "3.10"
.
- Adopted
myst-parser
for writing Markdown documentation. - Added changelog to documentation.
5.0 - 2021-12-24
- Added backends for
hashlib
andpycryptodome
.
- Removed
sorted_locale()
function. - Removed entry points for legacy commands.
- Now require
click>=8.0
. - Removed
colorama>=0.4; platform_system == "Windows"
dependency. - Switched dependency from
pycryptodomex
topycryptodome
. - Added PyPI classifier
Intended Audience :: Developers
.