Thanks to all our contributors, users, and the many people that make detect-secrets
possible! ❤️
If you love detect-secrets
, please star our project on GitHub to show your support! ⭐
- Fixed a bug where the improved performance for high-entropy strings (#144) did not work on Python 2 (#147)
- Improved performance when scanning for high-entropy strings (#144, thanks @killuazhu)
- Added a
--keyword-exclude
argument toscan
(#132, thanks @hpandeycodeit)
- For the
KeywordDetector
plugin: made quotes required for secrets in.cls
and.java
files, and skipped{{secrets like this}}
in YAML files (#133/#145)
- Fixed an uncaught
UnicodeEncodeError
exception in ourini
file parser, when using Python 2 (#143)
- Fixed the example pre-commit configuration in the README (#135, thanks @nymous) (#138, thanks @neunkasulle)
- Refactored some
audit
code intoCodeSnippet
andCodeSnippetHighlighter
classes (#137)
- Added a
SlackDetector
plugin (#122, thanks @killuazhu) - Added a
--use-all-plugins
argument to--update
that adds all plugins to the baseline (#124, thanks @killuazhu) - Added
--exclude-files
and--exclude-lines
arguments toscan
(#127)
- Removed the
--exclude
CLI scan argument (#127)
- Reduced false-positives by excluding more characters (
!$&\';
) in theBasicAuthDetector
regex (#126, #123, thanks @killuazhu) - Added more to the
FALSE_POSITIVES
dict for theKeywordDetector
plugin, includingpassword
(#118)
- Fixed a bug where
--update
was adding all plugins to the baseline, instead of respecting the plugins used in the baseline (#124, thanks @killuazhu) - Fixed an uncaught
UnicodeEncodeError
exception when scanning non-ini files (e.g. markdown) containing unicode, when using Python 2 (#128, thanks @killuazhu) - Fixed a bug where non-ini files (e.g. markdown) containing unicode caused a
UnicodeEncodeError
exception in theaudit
functionality, when using Python 2 (#129, thanks @killuazhu) - Fixed a bug where non-posix end of line characters caused a "Secret not found on line...." error in the
audit
functionality (#120, thanks @killuazhu) - Fixed a bug where
scan_diff
, called bydetect-secrets-server
, was ignoring inlinepragma: whitelist secret
comments (#127)
- Relaxed the number of spaces before inline
pragma: whitelist secret
comment (#125, thanks @killuazhu] - Added Python 3.7 to Travis CI and
tox.ini
testing (#114, thanks @cclauss) - Increased minimum test coverage from 97% to 98%
- Fixed a bug where we were adding an extra-newline in
detect-secrets scan
output (#111)
- Reorganized the code, mainly creating a
common/
directory (#113)
- Added
null
to theFALSE_POSITIVES
tuple for theKeywordDetector
plugin, so we do not alert off of it
- Turned the
KeywordDetector
plugin back on, with new regexes and accuracy improvements (#86) - Added an
AWSAccessKeyDetector
plugin (#100) - Added the ability to scan
.ini
types files that do not have a header (#106)
- Add blacklisting of PGP private key headers in
PrivateKeyDetector
plugin (#104) - Reduced false-positives by improving
BasicAuthDetector
plugin regex (#98)
- Fixed a bug where we were not showing removed lines in the
audit
functionality (#98)
- Added whitelist directive regexes to match against inline comment syntaxes in more languages (#105)
- Refactored various detectors to use
RegexBasedDetector
(#103) - Refactored the
BashColor
singleton into thecolorize
function (#109) - Small improvements to existing file parsers (#107)
- Refactored the
BasePlugin
to use theWHITELIST_REGEX
(#99) - Removed
unidiff
from standard dependencies (#101)
- Made the pre-commit hook automatically update the baseline (#96)
- Added the
audit --diff
functionality (#95)
- Added display of secret type in audit functionality (#94)
- Added a "Please git add the baseline" message (#89)
- Improved the "Unable to open baseline file" message (#91)
- Update
scan --update
results to only propagateis_secret
of new secrets (#90)
- Disabled
KeywordDetector
plugin temporarily (#89)
- Ordered baseline hashes, for better diffs (#84)
- Added a "Please git add the baseline" message (#89)
- Improved error messages for pre-commit hook (#85)
- Fixed a couple bugs in the
audit
functionality, one for small files and the other case-sensitivity in theKeywordDetector
plugin (#83, thanks @jkozera)
- Added a
KeywordDetector
plugin, that was horrible and regretful (#76)
- Fixed a bug in
scan --update
where we would append the baseline exclude regex to itself (#78) - Fixed the regular expression in the
BasicAuthDetector
plugin so that it didn't run forever (#80) - Removed trailing whitespace from
scan
output (#78)
- Added command line hints and baseline clarification in the README (#81, thanks @JoshuaRLi)
- Added a (b)ack option to 'Is this a valid secret?' (#72, thanks @cleborys)
- Added a
BasicAuthDetector
plugin (#74) - Added CLI functionality to check strings in an adhoc manner (#73)
- Fixed a typo in the README (#68, thanks @whathejoe)
- Fixed a bug where we didn't skip sequential strings when we should have (#67)
- Changed
--audit
and--scan
toaudit
andscan
(#51) - Changed
scan --import <baseline>
toscan --update <baseline>
(#58)
- Reduced false-positives caused by sequential strings, e.g.
ABCDEF
(#64)
- Fixed a bug where the pre-commit code would remove the
is_secret
attribute from audited baselines (#65) - Fixed an
audit
bug where we would crash if a file in the baseline did not exist (#56) - Improved the
audit
functionality to handle short files better (#48)
- Fixed numbering system with interactive audit
- Fixed "leapfrog" edge case for audit functionality (#47)
- Added ability to migrate baselines from an older version to a newer version
- Added functionality to audit baseline, to distinguish difference between false and true positives in the baseline file (#44)
- Upgraded
PrivateKeyPlugin
: more search parameters, more lines searched, and secret hash created using payload (rather than the entire line content)
- Differentiate between
Base64HighEntropyStrings
andHexHighEntropyStrings
throughsecret_type
(#26) - Got rid of
SensitivityValues
as a means to store plugin configs
- Improved the heuristic for
HexHighEntropyStrings
, reducing the false positive rates for large numbers identified in code
- Baseline always outputs in sorted order now, to prevent unnecessary diffs (#25)
- Escape exclude regex statements before compilation (#39)
- Fixed case where details of plugins used were not included in the baseline, when the pre-commit hook updated it (#40)
- Simplified logging by removing
CustomLog
(#46)
- Allow scanning of non-git files (#18)
- Improved scanning of INI config files with
HighEntropyString
(#13, #17) - Improved scanning of YAML files with
HighEntropyString
(#16)
- Fixed
PrivateKeyDetector
plugin analyze results' representation (#15)