Comments (4)
Can you elaborate a little more on you exact idea of:
a) What it check for? (Seems like if it's used you want to warn)
b) What you're going to suggest or state as the remediation for the developer.
from flake8-bugbear.
There's nothing inherently wrong with the use of eval
. What would you like the warning to say?
from flake8-bugbear.
I was taught to never use eval
, for the times that I thought I needed eval
, I instead went with ast.literal_eval
. I guess it depends what you're passing into the function.
from flake8-bugbear.
If someone uses eval
it is quite explicit that eval
is being used.
The original problems with eval
come from the old javascript days of developers having no idea how to code the language and using eval and copy-pasting the same code snippets everywhere.
In python so far, all use of eval
I've seen and that I've used myself has been solely to work around syntax that is invalid in Python2 or 3, e.g., print
or exec
being keywords and not functions, or the syntax differences of the raise
statement.
I do think eval
should be used sparingly, but I doubt there is a big benefit about warning about its use, since it is very explicit that eval
is being used somewhere.
from flake8-bugbear.
Related Issues (20)
- Couple new rule suggestions HOT 2
- Rule to detect changes to iterable object of loop HOT 5
- Error in latest version of flake8-bugbear 24.1.15 HOT 4
- B038 false positive in 24.1.15 + 24.1.16 HOT 5
- B018 doesn't trigger for useless expressions involving multiple variables HOT 3
- B909 improvements HOT 4
- B038 false positives HOT 5
- How to handle B015 within pytest.raises blocks
- B031 does not take into account if-else statements HOT 2
- B909 has several false positives on black codebase HOT 7
- B023: false positive for nested function inside loop HOT 1
- B024 false negative when there's a class var
- Incorrect version number 24.4.6? HOT 3
- Feature request: lint for dropped exception after `.add_note()` HOT 1
- Feature Request: expand B006 and B008 to also cover `ContextVar` defaults
- Type annotate code via mypy (strict) typechecking all flake8-bugbear code HOT 4
- B017 - assertRaises - ignore when msg param is passed HOT 2
- Suppress B901 if function explicitly returns Generator
- DeprecationWarning: The `hash` argument is deprecated in favor of `unsafe_hash` HOT 1
- Consider adding alru_cache to B019 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from flake8-bugbear.