From the changelog; issue in comments:
If you need to fall back to the old behavior you can use a type alias:
type Something = Vec<String>; // Not actually used
#[derive(StructOpt)]
struct Opt {
#[structopt(long)]
fruit: Option<Vec<String>>, // Shouldn't this be `Option<Something>`?
}