Skip to content

Releases: PyCQA/flake8-bugbear

23.11.26

27 Nov 03:56
Compare
Choose a tag to compare
  • B035: add check for static keys in dict-comprehension (#426)
  • B902: Add exceptions for standard library metaclasses (#415)
  • B017: Modify to no longer have a false negative when raises() is imported
    directly from pytest (#424)
  • B026: Fix bug where the check was not triggered for calls where the caller
    is an attribute (#420)

23.9.16

16 Sep 20:25
Compare
Choose a tag to compare
  • add --classmethod-decorators (#405)
  • fix name collision for node_stack on python 3.12 (#406)
  • Use pypa/build to build the package (#404)

23.7.10

10 Jul 16:29
Compare
Choose a tag to compare
  • Add B034: re.sub/subn/split must pass flags/count/maxsplit as keyword arguments.
  • Fix a crash and several test failures on Python 3.12, all relating to the B907
    check.
  • Declare support for Python 3.12.

23.6.5

05 Jun 16:20
Compare
Choose a tag to compare
  • Include tox.ini in MANIFEST.in for sdist. (#389)
  • Improve B033 (duplicate set items) (#385)

23.5.9

09 May 23:57
Compare
Choose a tag to compare
  • Add B033: Detect duplicate items in sets
  • Add B908: Detect assertRauses like contexts only has top level statements that could throw
  • Add B028: Allow stacklevel to be explicitly assigned as a positional argument
  • Remove more < 3.8 checks / assertions

23.3.23

23 Mar 14:45
Compare
Choose a tag to compare
  • flake8-bugbear is now >= 3.8.1 project like flake8>=6.0.0
    • This has allowed some more modern AST usage cleanup and less CI running etc.
  • B030: Fix crash on certain unusual except handlers (e.g. except a[0].b:)

23.3.12

12 Mar 21:30
Compare
Choose a tag to compare
  • B950: now ignores 'noqa' and 'type: ignore' comments.
  • B005: Do not flag when using the strip() method on an imported module.
  • B030: Allow calls and starred expressions in except handlers.

23.2.13

13 Feb 18:02
Compare
Choose a tag to compare
  • B906: Add visit_Bytes, visit_Num and visit_Str to the list of visit_*
    functions that are ignored by the B906 check. The ast.Bytes, ast.Num and
    ast.Str nodes are all deprecated, but may still be used by some codebases in
    order to maintain backwards compatibility with Python 3.7.
  • B016: Warn when raising f-strings.
  • Add B028: Check for an explicit stacklevel keyword argument on the warn method from the warnings module.
  • Add B029: Check when trying to use except with an empty tuple i.e. except: ().
  • Add B032: Check for possible unintentional type annotations instead of assignments.

23.1.20

20 Jan 21:18
Compare
Choose a tag to compare
  • B024: now ignores classes without any methods. (#336)
  • B017: Don't warn when pytest.raises() has a match argument. (#334)
  • B906: Ignore visit_ functions with a _fields attribute that can't contain ast.AST subnodes. (#330)

23.1.17

18 Jan 00:38
Compare
Choose a tag to compare
  • Rename B028 to B907, making it optional/opinionated.