Tags: developer-dashboard/codeclimate-duplication
Tags
Make it possible to actually set concurrency We were reading it from the top-level of config.json, but it's being filtered out from the yaml and not being included, so we always have the default of 2. I'd like to try going to 1 to help investigate something else, and now it will be possible. Also, now that we're able to set this value, we need to make sure it's not a string.
Update example yaml to use colon hash syntax Consistent with [Help Doc](https://docs.codeclimate.com/v1.0/docs/duplication#section-enable-the-engine).
add count_threshold option (codeclimate#142) * add count_threshold option adds the option to only check duplication if the code is found in more than just two locations. * make count_threshold_for less confusing * allow changing global default count threshold * make count threshold default no longer language-specific * spec for count_threshold_for
Disable debug output by default This was helpful for identifying potentially problematic files, and helped lead us to identify minified js files as a problem, but it hasn't been as helpful recently, and can actually lead to exceeding the maximum output limit for repos with many files!
Update to latest jruby This is motivated by a rare error which was fixed in 9.1.3. Some more context in this issue: jruby/jruby#1279
Double the stack memory limit We're seeing some reports that analysis is failing with output like this: ``` Error: Your application used more stack memory than the safety cap of 2048K. Specify -J-Xss####k to increase it (#### = cap size in KB). Specify -w for full StackOverflowError stack trace ```
Refactor away from OpenStruct for php AST I believe this is the root cause for many of the OOM errors we've been seeing. Our original analysis pointed toward: 1. repos with big minified js files (resolved by skipping those) 1. php-only repos (mysterious...) Since ripping off the bandaid Monday and surfacing OOM errors to end-users, we've been hearing about several PHP-only repos that are erroring, so I took some time to read through the php parsing code looking for a possible memory leak. Eventually I noticed that we're using OpenStruct to represent our "Node" concept for the php AST that we build. I've heard that OpenStruct isn't very memory-efficient or fast and decided to try refactoring away from it. I'm able to reproduce the OOM error via the CLI on my clone of etsy/phan, and the error no longer occurs with this refactor. :tada: :tada: :tada:
Guard against divide by zero error (codeclimate#145) * Guard against divide by zero error Fixes a bug where empty js file could cause an analysis to error
PreviousNext