fixes
diff --git a/python/whl.bzl b/python/whl.bzl
index 7a19947..45c08d5 100644
--- a/python/whl.bzl
+++ b/python/whl.bzl
@@ -24,7 +24,10 @@
   ]
 
   if repository_ctx.attr.extras:
-    args += ["--extras", ",".join(repository_ctx.attr.extras)]
+    args += [
+      "--extras=%s" % extra
+      for extra in repository_ctx.attr.extras
+    ]
 
   result = repository_ctx.execute(args)
   if result.return_code:
diff --git a/rules_python/whl.py b/rules_python/whl.py
index b4556a7..e3829bd 100644
--- a/rules_python/whl.py
+++ b/rules_python/whl.py
@@ -110,10 +110,6 @@
     name_pattern = re.compile('Name: (.*)')
     return { 'name': name_pattern.search(content).group(1) }
 
-class SplitByCommaAndAppend(argparse._AppendAction):
-  def __call__(self, parser, namespace, values, option_string=None):
-    for val in values.split(','):
-      super(SplitByCommaAndAppend, self).__call__(parser, namespace, val, option_string)
 
 parser = argparse.ArgumentParser(
     description='Unpack a WHL file as a py_library.')
@@ -127,7 +123,7 @@
 parser.add_argument('--directory', action='store', default='.',
                     help='The directory into which to expand things.')
 
-parser.add_argument('--extras', action=SplitByCommaAndAppend,
+parser.add_argument('--extras', action='append',
                     help='The set of extras for which to generate library targets.')
 
 def main():