-
-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Consider adding support for extras_require
#76
Comments
works fine for me: from setuptools import setup
setup(
name='wat',
extras_require={
'foo': ['cfgv'],
'bar': ['astpretty', 'pyupgrade'],
},
) $ setup-py-upgrade .
./setup.py and ./setup.cfg written! [metadata]
name = wat
[options.extras_require]
foo = cfgv
bar =
astpretty
pyupgrade |
@asottile Ummm, you are right. However, it doesn't support explicitly changing this section. Take the following as an example: from setuptools import setup
extra_requires = {
'foo': ['cfgv'],
'bar': ['astpretty', 'pyupgrade'],
}
extra_requires['bar'] += extra_requires['foo']
setup(
name='wat',
extras_require=extra_requires,
) $ setup-py-upgrade .
Traceback (most recent call last):
File ".venv/bin/setup-py-upgrade", line 8, in <module>
sys.exit(main())
visitor.visit(tree)
File "/usr/lib/python3.8/ast.py", line 371, in visit
return visitor(node)
File "/usr/lib/python3.8/ast.py", line 379, in generic_visit
self.visit(item)
File "/usr/lib/python3.8/ast.py", line 371, in visit
return visitor(node)
File "/usr/lib/python3.8/ast.py", line 381, in generic_visit
self.visit(value)
File "/usr/lib/python3.8/ast.py", line 371, in visit
return visitor(node)
File ".venv/lib/python3.8/site-packages/setup_py_upgrade.py", line 128, in visit_Call
raise NotImplementedError(f'unparsable: {kwd.arg}=')
NotImplementedError: unparsable: extras_require= |
yeah it cannot solve the halting problem -- your code needs to be identifiable statically |
Got it! I think It would be great to add support for this dynamic case. |
the halting problem is unsolvable |
... by any Turing machine. However, I think we, as human species, are not able to determine whether or not a given Turing machine will halt... |
This project is kinda cool. Unfortunately, the current version doesn't support the
extras_require
section. Apparently, the most extreme case is ethereum/web3.py#2355 wheredev
depends upon previously defined directives(tester
,linter
,docs
).Syntax for
extras_require
is documented here.The text was updated successfully, but these errors were encountered: