-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Windows support #52
Comments
Hi, the reason the project does not support Windows is that there is a library (hyperscan) that is essential for the scanner but that is not supported by Windows systems. From the home page of python-hyperscan:
That's why we decided to provide docker containers: this way it is possible to use Credential Digger (with the UI) also from Windows. |
Hi @marcorosa, My solution, which is in progress(+), targets the core of the project (the GitScanner module) with the hope to deliver an OS independent python module, taking us one step closer to plug-and-play. |
So, if I understand correctly, are you trying to replace these lines? Hyperscan was the best performing library we tested, I hope that performance will stay reasonably close also using another library. In the meantime, I stay tuned for your PR ;) |
I agree, Hyperscan is the best when it comes to performance for our usecase and I believe that removing it from the project is not a good choice. This can be achieved by performing a platform test to check whether we are on Windows or not. Using this test we can decide what class to use + what library to load. As for the dependencies, we will install Hyperscan on Linux and Regex on Windows. These following changes will be included within the requirements.txt file:
In other terms, Linux users will not experience any performance loss, whereas Windows users will now have access to the tool (with a slight performance loss as a result of not using Hyperscan). It is somewhat similar to what we've done with Sqlite & postgres clients. |
The module does not support the Windows OS, it would be great to add such a feature to make the project OS independent.
State: Work in progress... ⌛
The text was updated successfully, but these errors were encountered: