You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When running woke at the root of a large repository, it takes substantially longer to run due to searching for ignore files.
Running woke at the root of my repository (some text omitted with *):
T:\****>Tools\Woke\windows\woke.exe T:\****\Tools\Woke\windows\test.txt --debug2022-10-18T13:12:39-07:00 DBG woke version 0.19.0 built from e588a3e on 2022-07-28T22:46:26Z2022-10-18T13:12:39-07:00 DBG Adding custom ruleset from filename="T:\\****\\.woke.yaml"2022-10-18T13:12:39-07:00 DBG loaded config file config="T:\\****\\.woke.yaml"2022-10-18T13:12:39-07:00 DBG config rules rules=["blacklist","dummy","fluffer","grandfather","male/female connector","man-hours","master","master-slave","slave","whitelist"]2022-10-18T13:12:39-07:00 DBG default rules rules=["whitelist","blacklist","master-slave","slave","grandfathered","man-hours","sanity","dummy","guys","whitebox","blackbox"]2022-10-18T13:12:39-07:00 DBG all enabled rules rules=["blacklist","dummy","fluffer","grandfather","male/female connector","man-hours","master","master-slave","slave","whitelist","grandfathered","sanity","guys","whitebox","blackbox"]2022-10-18T13:12:39-07:00 DBG Could Not Find Root Git Folder2022-10-18T13:13:10-07:00 DBG finished compiling ignores durationMS=30881.23722022-10-18T13:13:10-07:00 DBG created new printer printer=text2022-10-18T13:13:10-07:00 DBG process files path="T:\\****\\Tools\\Woke\\windows\\test.txt" type=parallel2022-10-18T13:13:10-07:00 DBG finished processing findings durationMS=0.5496 file=T:/****/Tools/Woke/windows/test.txtT:/****/Tools/Woke/windows/test.txt:1:0-5: `slave` may be insensitive, use `follower`, `replica`, `standby`, `secondary`, `worker`, `passive`, `child`, `agent`, `node`, `helper`, `responder`, `subscriber` instead (error)slave^T:/****/Tools/Woke/windows/test.txt:2:0-6: `master` may be insensitive, use `primary`, `main`, `parent`, `leader`, `central`, `active` instead (error)master^2022-10-18T13:13:10-07:00 DBG woke completed durationMS=30896.5485
vs running inside the some nested folders:
T:\****\Tools\Woke>windows\woke.exe T:\****\Tools\Woke\windows\test.txt --debug2022-10-18T13:15:17-07:00 DBG woke version 0.19.0 built from e588a3e on 2022-07-28T22:46:26Z2022-10-18T13:15:17-07:00 DBG Adding custom ruleset from filename="T:\\****\\Tools\\Woke\\.woke.yaml"2022-10-18T13:15:17-07:00 DBG loaded config file config="T:\\****\\Tools\\Woke\\.woke.yaml"2022-10-18T13:15:17-07:00 DBG config rules rules=["blacklist","dummy","fluffer","grandfather","male/female connector","man-hours","master","master-slave","slave","whitelist"]2022-10-18T13:15:17-07:00 DBG default rules rules=["whitelist","blacklist","master-slave","slave","grandfathered","man-hours","sanity","dummy","guys","whitebox","blackbox"]2022-10-18T13:15:17-07:00 DBG all enabled rules rules=["blacklist","dummy","fluffer","grandfather","male/female connector","man-hours","master","master-slave","slave","whitelist","grandfathered","sanity","guys","whitebox","blackbox"]2022-10-18T13:15:17-07:00 DBG Could Not Find Root Git Folder2022-10-18T13:15:17-07:00 DBG finished compiling ignores durationMS=0.52142022-10-18T13:15:17-07:00 DBG created new printer printer=text2022-10-18T13:15:17-07:00 DBG process files path="T:\\****\\Tools\\Woke\\windows\\test.txt" type=parallel2022-10-18T13:15:17-07:00 DBG finished processing findings durationMS=0.5231 file=T:/****/Tools/Woke/windows/test.txtT:/****/Tools/Woke/windows/test.txt:1:0-5: `slave` may be insensitive, use `follower`, `replica`, `standby`, `secondary`, `worker`, `passive`, `child`, `agent`, `node`, `helper`, `responder`, `subscriber` instead (error)slave^T:/****/Tools/Woke/windows/test.txt:2:0-6: `master` may be insensitive, use `primary`, `main`, `parent`, `leader`, `central`, `active` instead (error)master^2022-10-18T13:15:17-07:00 DBG woke completed durationMS=13.8008
As you can see, it takes about a full 30 seconds each time woke runs to compile the ignores. The repository is quite large (about 400 GB) so this is an unusual use case. I'd also like to note that using woke version 0.17.1 does not have this issue.
Also could potentially be another issue, but I'm having troubles with .wokeignore not properly ignoring some paths in 0.19.0 which doesn't seem to occur in 0.17.1. It looks like directories specifically aren't properly ignored if you specify full paths, meaning a difference in running command line like this:
Not properly ignored and will find my test.txt with non-inclusive language:
I think the performance issues are caused by #117. An alternative possibly is to make this optional with a flag since we don't use nested ignores currently.
Lots of bugs reported because of this feature 😞. Yea I like the idea of opt-in (suggested it too #117 (review)). Since it's already a feature, opt-out might be better to avoid breaking existing usages until improvements can be made to deal with these issues
@armanrahman22 @KSLHacks @jeremydelacruz since you were all involved in the #117 I wonder if you would be interested at taking a stab at addressing these performance issues?
Thank you for creating the issue!
Please include the following information:
Version of woke
Config file
No config file.
Go environment
Some characters omitted with *.
When running woke at the root of a large repository, it takes substantially longer to run due to searching for ignore files.
Running woke at the root of my repository (some text omitted with *):
vs running inside the some nested folders:
As you can see, it takes about a full 30 seconds each time woke runs to compile the ignores. The repository is quite large (about 400 GB) so this is an unusual use case. I'd also like to note that using woke version 0.17.1 does not have this issue.
Also could potentially be another issue, but I'm having troubles with .wokeignore not properly ignoring some paths in 0.19.0 which doesn't seem to occur in 0.17.1. It looks like directories specifically aren't properly ignored if you specify full paths, meaning a difference in running command line like this:
Not properly ignored and will find my test.txt with non-inclusive language:
T:\****>Tools\Woke\windows\woke.exe T:\****\Woke\windows
Properly ignored by .wokeignore:
T:\****>Tools\Woke\windows\woke.exe Tools\Woke\windows
The text was updated successfully, but these errors were encountered: