Showing the changes to git-features (2 of 4 files). Show all
Unified · Split
| @@ -17,6 +17,7 @@ fast-sha1 = ["fastsha1"] · 16 unmodified lines | ||
| 17 | 17 | interrupt-handler = ["ctrlc"] |
| 18 | 18 | disable-interrupts = [] |
| 19 | 19 | io-pipe = ["bytes"] |
| 20 | +crc32 = ["crc"] | |
| 20 | 21 | |
| 21 | 22 | [[test]] |
| 22 | 23 | name = "parallel" |
| @@ -51,7 +52,7 @@ walkdir = { version = "2.3.1" } # used when parallel is off · 28 unmodified lines | ||
| 51 | 52 | |
| 52 | 53 | # hashing and 'fast-sha1' feature |
| 53 | 54 | sha1 = "0.6.0" |
| 54 | −crc = "1.8.1" | |
| 55 | +crc = { version = "1.8.1", optional = true } | |
| 55 | 56 | fastsha1 = { package = "sha-1", version = "0.9.1", optional = true } |
| 56 | 57 | |
| 57 | 58 | # progress |
| @@ -55,6 +55,7 @@ pub use _impl::Sha1; · 54 unmodified lines | ||
| 55 | 55 | /// When calling this function for the first time, `previous_value` should be `0`. Otherwise it |
| 56 | 56 | /// should be the previous return value of this function to provide a hash of multiple sequential |
| 57 | 57 | /// chunks of `bytes`. |
| 58 | +#[cfg(feature = "crc32")] | |
| 58 | 59 | pub fn crc32_update(previous_value: u32, bytes: &[u8]) -> u32 { |
| 59 | 60 | crc::crc32::update(previous_value, &crc::crc32::IEEE_TABLE, bytes) |
| 60 | 61 | } |
| @@ -62,6 +63,7 @@ pub fn crc32_update(previous_value: u32, bytes: &[u8]) -> u32 { · 1 unmodified line | ||
| 62 | 63 | /// Compute a CRC32 value of the given input `bytes`. |
| 63 | 64 | /// |
| 64 | 65 | /// In case multiple chunkes of `bytes` are present, one should use [`crc32_update()`] instead. |
| 66 | +#[cfg(feature = "crc32")] | |
| 65 | 67 | pub use crc::crc32::checksum_ieee as crc32; |
| 66 | 68 | |
| 67 | 69 | /// Compute the hash of `kind` for the bytes in the file at `path`, hashing only the first `num_bytes_from_start` |