pantsbuild/pants — pull request #749 by jinfeng (2014-10-30 17:05:46+00:00)
Title: Fix the regression introduced in https://rbcommons.com/s/twitter/r/1186/

The original code in benchmark_run.py was:

option_group.add_option(mkflag("target"), dest="target_class", action="append",
help="Name of the benchmark class.")
...
...
self.caliper_args = self.context.options.target_class
self.caliper_args += [ str1, str2 ]
self.caliper_args.extend([str3, str4])
...
...
# eventually deep in the callstack, a maybe_list(caliper_args) is called.

For whatever reason, we used "append" and the target_class is a list (even though
it should be a single string argument). But anyhow, it works, since the it was an
assignment "self.caliper_args = self.context.options.target_class"

Now the change introduced in the RB, while keeping the target still a list, it
changes the line "self.caliper_args = self.context.options.target_class" to

self.args.insert(0, self.get_options().target)

Note even though it's called "target", it's actually an list. Thus we're inserting
a list as an element into a list. Later the maybe_list failed.