diff --git a/debpython/pydist.py b/debpython/pydist.py
index 5b9bc1241bc35bdd25794b2aec4bfec99c1a2735..919fd3d9518a9197c17d4a4704913dd31a3da1fa 100644
--- a/debpython/pydist.py
+++ b/debpython/pydist.py
@@ -116,7 +116,7 @@ def guess_dependency(req, version=None):
         version = getver(version)
 
     # some upstreams have weird ideas for distribution name...
-    name, rest = re.compile('([^><= ]+)(.*)').match(req).groups()
+    name, rest = re.compile('([^><= \[]+)(.*)').match(req).groups()
     req = safe_name(name) + rest
 
     data = load()
@@ -127,7 +127,7 @@ def guess_dependency(req, version=None):
                  'or your upstream author to fix requires.txt')
         exit(8)
     req_dict = req_dict.groupdict()
-    name = req_dict['name']  # drop "[features]"
+    name = req_dict['name']
     details = data.get(name.lower())
     if details:
         for item in details: