------------------------------------------------------------------- Fri Apr 28 08:01:57 UTC 2023 - Dirk Müller - update to 23.3.23: * 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:``) * 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. ------------------------------------------------------------------- Wed Feb 15 19:44:55 UTC 2023 - Dirk Müller - update to 23.2.13: * B906: Add visit_Bytes, visit_Num and visit_Str to the list of visit_* functions that are ignored by the B906 check. * 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. * 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) * Rename B028 to B907, making it optional/opinionated. * Add B906: ``visit_`` function with no further calls to a ``visit`` function. (#313) * Add B028: Suggest ``!r`` when formatted value in f-string is surrounded by quotes. (#319) ------------------------------------------------------------------- Thu Dec 15 20:59:46 UTC 2022 - Dirk Müller - update to 22.12.6 (bsc#1206225): * Add B905: `zip()` without an explicit `strict=` parameter. (#314) * B027: ignore @overload when typing is imported with other names (#309) ------------------------------------------------------------------- Thu Oct 27 07:26:17 UTC 2022 - Martin Liška - Update to 22.10.27: * B027: Ignore @overload decorator (#306) * B023: Also fix map (#305) * B023: Avoid false alarms with filter, reduce, key= and return. Added tests for functools (#303) ------------------------------------------------------------------- Wed Oct 26 07:13:13 UTC 2022 - Martin Liška - Update to 22.10.25: * Make B015 and B018 messages slightly more polite (#298) * Add B027: Empty method in abstract base class with no abstract decorator * Multiple B024 false positive fixes * Move CI to use tox (#294) * Move to using PEP621 / pyproject.toml package (#291) * Tested in 3.11 ------------------------------------------------------------------- Fri Aug 26 17:51:42 UTC 2022 - Martin Liška - Update 22.8.23: * Add B024 error code to message for B024 (#276) * Add B024: abstract base class with no abstract methods (#273) * Implement late-binding loop check (#265) * late-binding closures are a classic gotcha. * Don't crash when select / extend_select are None (#261) * Ignore lambda arguments for B020 (#259) * Fix missing space typos in B021, B022 error messages (#257) * Ignore black formatting for b013 test case (#251) * B010 Fix lambda flase positive (#246) * B008 Fix edge case with lambda functions (#243) * B006 and B008: Detect function calls at any level of the default expression (#239) * B020: Fix comprehension false postives (#238) * Tweak B019 desc (#237) * B022: No arguments passed to contextlib.suppress (#231) * B021: f-string used as docstring. (#230) * B020: ensure loop control variable doesn't overrides iterable it iterates (#220) * B019: check to find cache decorators on class methods (#218) * Fix crash on long empty string (#223) * B018: Ignore JoinedStr (#216) * Build universal Python 3 wheels (#214) * B950: Add same special cases as E501 (#213) * B018: Disable strings from check for now (#209) * B904: ensure the raise is in the same context with the except (#191) * Add Option to extend the list of immutable calls (#204) * Update B014: binascii.Error is now treated as a subclass of ValueError (#206) * add simple pre-commit config (#205) * Test with 3.10 official * Add B018 check to find useless declarations (#196, #202) * Fix crash on call in except statement in _to_name_str (#187) * Update B006: list, dictionary, and set comprehensions are now also disallowed (#186) * Update B008: Whitelist more immutable function calls (#173) * Remove Python Compatibility Warnings (#182) * Add B904: check for raise without from in an except clause (#181) * Add Python 3.10 tests to ensure we pass (#183) * Verify the element in item_context.args is of type ast.Name for b017 * Add another hasattr() check to b017 visit for .func * Add B017: check for gotta-catch-em-all assertRaises(Exception) * Fix crash on tuple expansion in try/except block (#161) * Fix grammar in B015 (#150) * Make sure float infinity/NaN does not trigger B008 (#155) * Handle positional-only args in class methods (#158) * Support exception aliases properly in B014 (#129) * Add B015: Pointless comparison (#130) * Remove check for # noqa comments (#134) * Ignore exception classes which are not types (#135) * Introduce B016 to check for raising a literal. (#141) * Exclude types.MappingProxyType() from B008. (#144) ------------------------------------------------------------------- Thu Apr 16 11:09:56 UTC 2020 - Tomáš Chvátal - Update to 20.1.4: * Ignore keywords for B009/B010 * Silence B009/B010 for non-identifiers * State an ignore might be needed for optional B9x checks * Fix error on attributes-of-attributes in except (...): clauses * Allow continue/break within loops in finally clauses for B012 * For B001, also check for except (): * Introduce B013 and B014 to check tuples in except (..., ): statements * Warn about continue/return/break in finally block (#100) * Removed a colon from the descriptive message in B008. (#96) ------------------------------------------------------------------- Fri Sep 13 07:31:10 UTC 2019 - Tomáš Chvátal - Update to 19.8.0: * Fix .travis.yml syntax + add Python 3.8 + nightly tests * Fix black formatting + enforce via CI * Make B901 not apply to __await__ methods ------------------------------------------------------------------- Mon Apr 1 13:29:24 UTC 2019 - Tomáš Chvátal - Update to 19.3.0: * allow 'mcs' for metaclass classmethod first arg (PyCharm default) * Introduce B011 * Introduce B009 and B010 * Exclude immutable calls like tuple() and frozenset() from B008 * For B902, the first argument for metaclass class methods can be "mcs", matching the name preferred by PyCharm. ------------------------------------------------------------------- Fri Nov 2 21:34:53 UTC 2018 - Matej Cepl - Update to 18.8.0: * Exclude immutable calls like tuple() and frozenset() from B008 * Examine kw-only args for mutable defaults * Black all the .py files - Like one should (#48) * Add testing and document support for the Python 3.7 release * Avoid adding the visitor as an __init__ parameter (Fixes #39) (#40) * Add trove classifier 'Programming Language :: Python :: 3 :: Only' * Fix pathlib link in readme (#36) ------------------------------------------------------------------- Wed Jul 18 11:36:14 UTC 2018 - tchvatal@suse.com - This module requires py3.5+ thus restrict the build ------------------------------------------------------------------- Tue Jul 10 12:59:04 UTC 2018 - dmueller@suse.com - Initial package (18.2)