Bowler
Bowler copied to clipboard
Safe code refactoring for modern Python.
.add_argument() should also have the ability to add kwargs to callsites to perform codemods where a callsite's kwarg differs from the function definition's default for that arg. The doc for...
Hi I tried to rename a function method but only the calls to the method were replaced-not the method declaration (leading to a `pylint` error). Did I do anything wrong?...
Using latest version from git as of today. When trying to chain two remove_argument() functions I get the following error: ``` File "/home/jlvillal/.local/lib/python3.7/site-packages/bowler-0.8.0-py3.7.egg/bowler/query.py", line 892, in remove_argument_transform spec.explode() File "/home/jlvillal/.local/lib/python3.7/site-packages/bowler-0.8.0-py3.7.egg/bowler/imr.py",...
Hello, I am trying to apply changes also on some notebooks from databricks stored as `.py` files, from time to time, there is %pip install or %magic command, could you...
Not at all sure where something like this belongs, so I'm creating an issue in the hope that the team can give some guidance. When first starting with bowler, I...
Hi, bowler/README.md documents `rename_function` however this functionality does not appear to exist. 'hope to see it added soon! Happy New Year, Nicholas
Hi, I'm packaging Bowler for Debian, and while working on the man page I wasn't able to find documentation for `bowler test`. Is it: **test** [path | module] [-- options]...
Dephell needs this fix to work with bowler: https://github.com/dephell/dephell/pull/474 Otherwise: ``` ========================================= test session starts ========================================= platform linux -- Python 3.8.5, pytest-6.0.1, py-1.9.0, pluggy-0.13.1 rootdir: /home/abuild/rpmbuild/BUILD/dephell-0.8.3, configfile: setup.cfg plugins: requests-mock-1.8.0...
Simple typehints seem to be supported, but others cause bowler to crash. For example, foo.py: import typing def foo(bar: typing.List[str]): pass Running bowler.Query('foo.py').select_function('foo').add_argument('baz', 1).diff() Produces Skipping foo.py: failed to transform...
Input file: ```python import attr @attr.s() class A: ... ``` Code: ```python import bowler bowler.Query('tmp.py').select_module('attr').rename('testme').execute(write=True, silent=True) ``` Output file: ```python import testme @attr.s() class A: ... ``` Attr was renamed...