VirusTotal / yara-python

The Python interface for YARA
http://virustotal.github.io/yara/
Apache License 2.0
646 stars 179 forks source link

Non match perf #175

Closed wxsBSD closed 3 years ago

wxsBSD commented 3 years ago

My apologies as this branch also includes the fix for macos builds that I am proposing in #173.

The other part of this PR is to address a performance problem documented in #170. The crux of this PR is that if we have a non-matching and the user has not requested to see non-matches in their callback we can return from this function early and not have to do all the steps to create the dictionary because we aren't going to store it in the matches list (it is a non-match) and we aren't going to pass it to the python callback.

If you would prefer I split this out to not include #173 I'm happy to do so.