Open ghost opened 7 years ago
@johnjbarton It's not entirely clear to me which two pieces of configuration are being merged by the code in question. I assume this isn't about task options vs task data, but something else rather. Is that right?
Looks like this is grunt task data (specified in gruntfile) merging with command line 'options'. If the PR had tests this would be clearer (and I would ask for one).
Please have a look at https://github.com/LoveIsGrief/grunt-karma-poc-246 for an example of the behavior I was talking about. It's a contrived example since I cannot remember the exact scenario. It's been too long.
As for writing tests, I think it's out of scope for this bug. Tests don't exist for this repo and it would be a different task to add them just to test my PR. I hope the repo I created is enough.
When overriding options e.g the plugins and frameworks, the default behavior of
_.merge
returns (for me) surprising results (see below). Therfore I believe it should either be possible toa. customize merges using a new option e.g
mergeCustomizer
b. extend array by default e.g
_.merge behavior