pylint
pylint copied to clipboard
Support fixme's in docstrings
Type of Changes
| Type | |
|---|---|
| :bug: Bug fix | |
| ✓ | :sparkles: New feature |
| :hammer: Refactoring | |
| :scroll: Docs |
Description
Closes #9255
Previous PR discussion here: https://github.com/pylint-dev/pylint/pull/9281
- now an enhancement of existing
fixmerather than a new message check-fixme-in-docstringis the setting that enables it and defaults to false- also suggestions to improve the existing description: https://github.com/pylint-dev/pylint/pull/9281#discussion_r1415102708. I kind of like how the message is the TODO itself. As for the "Used when a warning note..." is that for a tooltip? I believe almost all checker messages have something like this, right?
Appreciate any feedback!
When running pylint -h, I get
Miscellaneous:
BaseChecker for encoding issues.
--notes <comma separated values>
List of note tags to take in consideration, separated by a comma. (default:
('FIXME', 'XXX', 'TODO'))
--notes-rgx <regexp> Regular expression of note tags to take in consideration. (default: )
--check-fixme-in-docstring <y or n>
Whether or not to search for fixme's in docstrings. (default: False)
Thoughts on updating the docstring to be "Checker for encoding issues and fixme notes"? instead of "BaseChecker for encoding issues."
🤖 According to the primer, this change has no effect on the checked open source code. 🤖🎉
This comment was generated for commit 2cd64924d2f1ccd1552e964a7736be54937505bf
When running
pylint -h, I getMiscellaneous: BaseChecker for encoding issues. --notes <comma separated values> List of note tags to take in consideration, separated by a comma. (default: ('FIXME', 'XXX', 'TODO')) --notes-rgx <regexp> Regular expression of note tags to take in consideration. (default: ) --check-fixme-in-docstring <y or n> Whether or not to search for fixme's in docstrings. (default: False)Thoughts on updating the docstring to be "Checker for encoding issues and fixme notes"? instead of "BaseChecker for encoding issues."
Fine with me!
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 95.80%. Comparing base (
c0ecd70) to head (51a2a14). Report is 71 commits behind head on main.
Additional details and impacted files
@@ Coverage Diff @@
## main #9744 +/- ##
=======================================
Coverage 95.80% 95.80%
=======================================
Files 174 174
Lines 18934 18946 +12
=======================================
+ Hits 18140 18152 +12
Misses 794 794
| Files with missing lines | Coverage Δ | |
|---|---|---|
| pylint/checkers/misc.py | 90.41% <100.00%> (+1.88%) |
:arrow_up: |
🤖 According to the primer, this change has no effect on the checked open source code. 🤖🎉
This comment was generated for commit c07134e3b953ac595daffff503b87f9cdf8ff5eb
🤖 According to the primer, this change has no effect on the checked open source code. 🤖🎉
This comment was generated for commit ec19e0ac9366dc07dfdc9d1d05a68f1fd861d4fe
🤖 According to the primer, this change has no effect on the checked open source code. 🤖🎉
This comment was generated for commit 002d8043866c006dd5ca5a8dbbd55944d0d711cd
Apologies for the glacial pace of this PR 😬, really appreciate all the feedback! Some updates:
- previously we were taking the token line and using string manipulation to get the fixme message, then rebuilding it so the regex could find it. I've since changed the logic to use just regex with capture groups instead. I've made this change for both docstrings and comments
- To do this, I also had to split the docstring regex pattern between single and multiline. I tried it with just a single regex, but it got really ugly and I think the logic is much cleaner/intuitive if there's two. There's 3 regex patterns total now.
- correct me if I'm wrong, but we were previously using
re.search(). It seems if we're only searching the beginning of a string, then we can usere.match()which has better performance.
Let me know your thoughts!
🤖 Effect of this PR on checked open source code: 🤖
Effect on astroid: The following messages are no longer emitted:
- fixme: # TODO: This should return an Uninferable as this would raise https://github.com/pylint-dev/astroid/blob/fb6f5bc535e92471158333feddfa93e3614683bb/astroid/brain/brain_dataclasses.py#L186
Effect on black: The following messages are no longer emitted:
- fixme: #assert ilabel not in first # XXX failed on <> ... != https://github.com/psf/black/blob/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0/src/blib2to3/pgen2/pgen.py#L80
Effect on music21: The following messages are no longer emitted:
- fixme: # TODO: attach \noBeam to note if it is the last note https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/lily/translate.py#L1174
- fixme: # TODO: write https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/stream/base.py#L13034
- fixme: # TODO: write https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/stream/base.py#L13038
- fixme: # TODO: this file does not import correctly due to first/second https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/test/test_repeat.py#L475
- fixme: # TODO: use the linter, reference DOESN'T have to be passed in https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/alpha/analysis/hasher.py#L485
- fixme: # TODO: Turn back on when a smaller work is found... https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/musedata/translate.py#L584
- fixme: # TODO: column 17 self.src[16] defines the graphic note type https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/musedata/init.py#L339
- fixme: # TODO: Something with 4.2 Repetitions; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2602
- fixme: # TODO: Find out what timeBase means; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2606
- fixme: # TODO: make staff numbers relevant; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2610
Effect on pytest: The following messages are no longer emitted:
- fixme: # XXX https://github.com/pytest-dev/pytest/blob/82e407187c6ed1b6d7e97945ba194e4d9aa693ed/src/_pytest/_code/code.py#L913
- fixme: path.strpath # XXX svn? https://github.com/pytest-dev/pytest/blob/82e407187c6ed1b6d7e97945ba194e4d9aa693ed/src/_pytest/_py/path.py#L193
Effect on pandas: The following messages are no longer emitted:
- fixme: e.g. Sparse[bool, False] # TODO: no test cases get here https://github.com/pandas-dev/pandas/blob/236d89b8565df844da0badfbc9f2db7084883933/pandas/core/algorithms.py#L158
Effect on sentry: The following messages are no longer emitted:
- fixme: type: ignore[assignment] # XXX: clobbers Serializer.fields https://github.com/getsentry/sentry/blob/566f4a0a04d9a9dd6f1a56d13808ea715b913e8b/src/sentry/discover/endpoints/serializers.py#L33
- fixme: type: ignore[assignment] # XXX: clobbers Serializer.fields https://github.com/getsentry/sentry/blob/566f4a0a04d9a9dd6f1a56d13808ea715b913e8b/src/sentry/discover/endpoints/serializers.py#L156
- fixme: type: ignore[assignment] # XXX: clobbering Serializer.fields https://github.com/getsentry/sentry/blob/566f4a0a04d9a9dd6f1a56d13808ea715b913e8b/src/sentry/api/serializers/rest_framework/dashboard.py#L143
This comment was generated for commit 767881377cbaf9182a9e5b80f3bc70b4b580328c
Those primer tests are awesome! They thankfully caught something I missed when refactoring the comment regex pattern. I was no longer supporting cases like:
# # TODO: something something
which is kind of curious as I wonder if that should've been supported in the first place? Regardless, I've updated it so it's supported and added that as an additional functional test.
🤖 Effect of this PR on checked open source code: 🤖
Effect on astroid: The following messages are now emitted:
- fixme: TODO: This should return an Uninferable as this would raise https://github.com/pylint-dev/astroid/blob/fb6f5bc535e92471158333feddfa93e3614683bb/astroid/brain/brain_dataclasses.py#L186
The following messages are no longer emitted:
- fixme: # TODO: This should return an Uninferable as this would raise https://github.com/pylint-dev/astroid/blob/fb6f5bc535e92471158333feddfa93e3614683bb/astroid/brain/brain_dataclasses.py#L186
Effect on black: The following messages are no longer emitted:
- fixme: #assert ilabel not in first # XXX failed on <> ... != https://github.com/psf/black/blob/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0/src/blib2to3/pgen2/pgen.py#L80
Effect on music21: The following messages are now emitted:
- fixme: TODO: attach \noBeam to note if it is the last note https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/lily/translate.py#L1174
- fixme: TODO: write https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/stream/base.py#L13034
- fixme: TODO: write https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/stream/base.py#L13038
- fixme: TODO: this file does not import correctly due to first/second https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/test/test_repeat.py#L475
- fixme: TODO: use the linter, reference DOESN'T have to be passed in https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/alpha/analysis/hasher.py#L485
- fixme: TODO: Turn back on when a smaller work is found... https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/musedata/translate.py#L584
- fixme: TODO: column 17 self.src[16] defines the graphic note type https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/musedata/init.py#L339
- fixme: TODO: Something with 4.2 Repetitions; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2602
- fixme: TODO: Find out what timeBase means; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2606
- fixme: TODO: make staff numbers relevant; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2610
The following messages are no longer emitted:
- fixme: # TODO: attach \noBeam to note if it is the last note https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/lily/translate.py#L1174
- fixme: # TODO: write https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/stream/base.py#L13034
- fixme: # TODO: write https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/stream/base.py#L13038
- fixme: # TODO: this file does not import correctly due to first/second https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/test/test_repeat.py#L475
- fixme: # TODO: use the linter, reference DOESN'T have to be passed in https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/alpha/analysis/hasher.py#L485
- fixme: # TODO: Turn back on when a smaller work is found... https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/musedata/translate.py#L584
- fixme: # TODO: column 17 self.src[16] defines the graphic note type https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/musedata/init.py#L339
- fixme: # TODO: Something with 4.2 Repetitions; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2602
- fixme: # TODO: Find out what timeBase means; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2606
- fixme: # TODO: make staff numbers relevant; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2610
Effect on pytest: The following messages are now emitted:
- fixme: XXX https://github.com/pytest-dev/pytest/blob/82e407187c6ed1b6d7e97945ba194e4d9aa693ed/src/_pytest/_code/code.py#L913
The following messages are no longer emitted:
- fixme: # XXX https://github.com/pytest-dev/pytest/blob/82e407187c6ed1b6d7e97945ba194e4d9aa693ed/src/_pytest/_code/code.py#L913
- fixme: path.strpath # XXX svn? https://github.com/pytest-dev/pytest/blob/82e407187c6ed1b6d7e97945ba194e4d9aa693ed/src/_pytest/_py/path.py#L193
Effect on pandas: The following messages are no longer emitted:
- fixme: e.g. Sparse[bool, False] # TODO: no test cases get here https://github.com/pandas-dev/pandas/blob/236d89b8565df844da0badfbc9f2db7084883933/pandas/core/algorithms.py#L158
Effect on sentry: The following messages are no longer emitted:
- fixme: type: ignore[assignment] # XXX: clobbers Serializer.fields https://github.com/getsentry/sentry/blob/566f4a0a04d9a9dd6f1a56d13808ea715b913e8b/src/sentry/discover/endpoints/serializers.py#L33
- fixme: type: ignore[assignment] # XXX: clobbers Serializer.fields https://github.com/getsentry/sentry/blob/566f4a0a04d9a9dd6f1a56d13808ea715b913e8b/src/sentry/discover/endpoints/serializers.py#L156
- fixme: type: ignore[assignment] # XXX: clobbering Serializer.fields https://github.com/getsentry/sentry/blob/566f4a0a04d9a9dd6f1a56d13808ea715b913e8b/src/sentry/api/serializers/rest_framework/dashboard.py#L143
This comment was generated for commit d408f09afdce51fefdf5bebf8ca59b373ada9a5e
🤖 According to the primer, this change has no effect on the checked open source code. 🤖🎉
This comment was generated for commit 40d5ed89d60a5f35c9a597b938f8a2eb8c30a6ab
In my last few messages, I mentioned updating how the message was extracted in comment-based fixme's so we wouldn't have to use string manipulation(https://github.com/pylint-dev/pylint/pull/9744/commits/198fd93ca02ba16b9619d2a42d218ad09b5cfa6d, https://github.com/pylint-dev/pylint/pull/9744/commits/1ce441c7960421ddd36fb71ea7c346e5652da978). I've decided to revert that change because it was causing a lot of primer test failures. I think this is due to how comment-based fixme's might be a little inconsistent in its current state:
# TODO: msg1
# # TODO: msg2
# something # TODO: msg3
# something TODO: msg4
results in:
test.py:1:1: W0511: TODO: msg1 (fixme)
test.py:2:1: W0511: # TODO: msg2 (fixme)
test.py:3:1: W0511: something # TODO: msg3 (fixme)
I wasn't able to replicate what we're doing today using regex capture groups so in favor of not causing any disruptions, I decided to go back to the current method.
If we're open to standardizing some of the decided behavior maybe in the future and allowing changes to the primer tests, I'm also down to discuss!
@badsketch With the danger of introducing more back and forth: would you be willing to create a proposal for this standardization and apply it to this PR? We can then see the test output and determine whether we are okay with that. That makes it a lot easier to discuss such standardization (with having some examples).
@DanielNoord Sure thing, is there a formal way of making these proposals for Pylint features and do I submit it somewhere? Or do you mean try to consider all the usage out there and come back with a more detailed comment?
No, I meant: just write the code as you would want and make the tests pass. If the test output is acceptable I would be okay with accepting your proposed code.
I don't think we need a full proposal, just the code as you would propose to write it and then being able to see what changes that would give to the test output.
🤖 Effect of this PR on checked open source code: 🤖
Effect on astroid: The following messages are no longer emitted:
- fixme: # TODO: This should return an Uninferable as this would raise https://github.com/pylint-dev/astroid/blob/6db3a60553ff538a936d5dda23d67a3924a57f45/astroid/brain/brain_dataclasses.py#L186
Effect on black: The following messages are no longer emitted:
- fixme: #assert ilabel not in first # XXX failed on <> ... != https://github.com/psf/black/blob/721dff549362f54930ecc038218dcc40e599a875/src/blib2to3/pgen2/pgen.py#L80
Effect on music21: The following messages are no longer emitted:
- fixme: # TODO: this file does not import correctly due to first/second https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/test/test_repeat.py#L475
- fixme: # TODO: use the linter, reference DOESN'T have to be passed in https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/alpha/analysis/hasher.py#L485
- fixme: # TODO: attach \noBeam to note if it is the last note https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/lily/translate.py#L1174
- fixme: # TODO: Something with 4.2 Repetitions; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2602
- fixme: # TODO: Find out what timeBase means; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2606
- fixme: # TODO: make staff numbers relevant; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2610
- fixme: # TODO: Turn back on when a smaller work is found... https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/musedata/translate.py#L584
- fixme: # TODO: column 17 self.src[16] defines the graphic note type https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/musedata/init.py#L339
- fixme: # TODO: write https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/stream/base.py#L13034
- fixme: # TODO: write https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/stream/base.py#L13038
Effect on pytest: The following messages are no longer emitted:
- fixme: path.strpath # XXX svn? https://github.com/pytest-dev/pytest/blob/16cdacc5a373984bc22c300d76e633c3a44bcd35/src/_pytest/_py/path.py#L193
- fixme: # XXX https://github.com/pytest-dev/pytest/blob/16cdacc5a373984bc22c300d76e633c3a44bcd35/src/_pytest/_code/code.py#L913
Effect on pandas: The following messages are no longer emitted:
- fixme: e.g. Sparse[bool, False] # TODO: no test cases get here https://github.com/pandas-dev/pandas/blob/61e209e4e9b628e997a648e12e24ac47fa3e1e26/pandas/core/algorithms.py#L158
Effect on sentry: The following messages are no longer emitted:
- fixme: type: ignore[assignment] # XXX: clobbers Serializer.fields https://github.com/getsentry/sentry/blob/2a3aacf5227abdc6026b2a0d4c19649b7fd665ca/src/sentry/discover/endpoints/serializers.py#L33
- fixme: type: ignore[assignment] # XXX: clobbers Serializer.fields https://github.com/getsentry/sentry/blob/2a3aacf5227abdc6026b2a0d4c19649b7fd665ca/src/sentry/discover/endpoints/serializers.py#L156
- fixme: type: ignore[assignment] # XXX: clobbering Serializer.fields https://github.com/getsentry/sentry/blob/2a3aacf5227abdc6026b2a0d4c19649b7fd665ca/src/sentry/api/serializers/rest_framework/dashboard.py#L143
This comment was generated for commit eea95d23a71ae38441ce17a753b7f3a5a4b3d705
@DanielNoord Gotcha, I've updated the functional tests for both comment and docstring fixme's to serve as my final proposal. The latest primer test results also align with what I've proposed. They boil down to:
- comment fixme's must start with a
#then any number of spaces (and only spaces), the fixme keyword, followed by a message
# TODO valid
# TODO valid
# invalid TODO msg
- single line docstring fixme's must start with 3 single/double quotes, then any number of spaces (and only spaces), the fixme keyword, followed by a message
'''TODO valid'''
""" TODO valid """
''' invalid TODO msg """
- multi-line docstring fixme's are within a docstring block, but must be at the beginning of the line. Any number of indentations before it are okay.
'''
TODO valid
invalid TODO msg
'''
def foo():
"""
TODO valid
"""
The majority of changed primer tests are for comment fixme's that no longer emit. They appear to be fixme's that are part of a larger section of code that was commented out, suggesting the fixme is no longer valid. I think it makes sense for those to no longer be emitted.
@Pierre-Sassoulas
That's a fair point. I think I can optimize it a little by making the((\"\"\")|(\'\'\')) non-capture groups. Would that suffice?
My intuition would be that we could just search for the user defined "TODO" regex in comments and docstrings ? Is this because we want the option to not raise for docstring (for semver/compat with the old behavior) so we need to distinguish the two internally ?
Hm, I'm little unclear what you mean. We're using 3 regexes (comment, single-line docstring, multi-line docstring) for clarity since it's hard to capture all of it in one regex. Also, so that, yes, we don't need to execute a more expensive docstring regex if the option is switched off. Not sure if I answered your question :/
To your point above, we could check if a TODO is present so we don't bother checking for a regex if that keyword isn't there:
def _is_multiline_docstring(self, token_info: tokenize.TokenInfo) -> bool:
return (
token_info.type == tokenize.STRING
and (token_info.line.lstrip().startswith(('"""', "'''")))
+ and 'TODO' in token_info.line
and "\n" in token_info.line.rstrip()
)
What might complicate this is note-rgx is enabled, then we'd be executing a regex anyways
def _is_multiline_docstring(self, token_info: tokenize.TokenInfo) -> bool:
return (
token_info.type == tokenize.STRING
and (token_info.line.lstrip().startswith(('"""', "'''")))
+ and 'TODO' in token_info.line.search(TODO|XXX|FIXME|{notes.rgx|)
and "\n" in token_info.line.rstrip()
)
I didn't make any benchmarks for this but I think this kind of regex executed on each token can have huge performance impact.
I'd be willing to run a profile to make a more convincing argument. Would following this guide https://pylint.readthedocs.io/en/stable/development_guide/contributor_guide/profiling.html be what you had in mind?
Sorry for the delay, busy week.
We're using 3 regexes (comment, single-line docstring, multi-line docstring) for clarity since it's hard to capture all of it in one regex.
Ok I understand now.
If we consider that fixme not being detected in docstring is a false negative that we're fixing now, we can remove the new check-fixme-in-docstring option. I don't see who would want to track TODO in comments but not in docstring so forcing user to activate the option make pylint worse. What are your thoughts on the matter @DanielNoord ?
I was wondering if the distinction between the 3 regexes, can be removed if we remove the check-fixme-in-docstring option (and only search for notes after detecting that we have a comment or a docstring without making any distinction). Tbf the less regex we have to maintain the happier I am (especially since we need to consider thing like catastrophic backtracking that can bring CVE and are hard to catch with blind benchmarks).
Would following this guide https://pylint.readthedocs.io/en/stable/development_guide/contributor_guide/profiling.html be what you had in mind?
Yes.
I think we previously decided that we didn't want to consider the docstring case a false negative to make the change not too disruptive for exciting comments. I already approved merging this into the fixme warning, I would be okay with going further and not even creating the option but that gives more work to @badsketch again..
Right, how about taking a decision based on the benchmark results ? (If making a distinction is slower we remove the distinction)
🤖 Effect of this PR on checked open source code: 🤖
Effect on astroid: The following messages are no longer emitted:
- fixme: # TODO: This should return an Uninferable as this would raise https://github.com/pylint-dev/astroid/blob/a93018e12e4992fa3a6d8ebd053c5d3aae70659e/astroid/brain/brain_dataclasses.py#L186
Effect on home-assistant: The following messages are no longer emitted:
- unsubscriptable-object: Value 'self.hass.data[DOMAIN]' is unsubscriptable https://github.com/home-assistant/core/blob/975cfa6457e051c5a58054e03046493baa96e7d6/homeassistant/components/media_source/models.py#L89
- unsupported-assignment-operation: 'self.hass.data[DOMAIN]' does not support item assignment https://github.com/home-assistant/core/blob/975cfa6457e051c5a58054e03046493baa96e7d6/homeassistant/components/system_health/init.py#L228
Effect on black: The following messages are no longer emitted:
- fixme: #assert ilabel not in first # XXX failed on <> ... != https://github.com/psf/black/blob/8827accf560c7be418000962565f1fd6fa7b01cb/src/blib2to3/pgen2/pgen.py#L80
Effect on music21: The following messages are now emitted:
- invalid-name: Attribute name "id" doesn't conform to '[a-z_][A-Za-z0-9_]{2,30}$' pattern https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/base.py#L577
The following messages are no longer emitted:
- invalid-name: Attribute name "id" doesn't conform to '[a-z_][A-Za-z0-9_]{2,30}$' pattern https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/prebase.py#L293
- fixme: # TODO: this file does not import correctly due to first/second https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/test/test_repeat.py#L475
- fixme: # TODO: use the linter, reference DOESN'T have to be passed in https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/alpha/analysis/hasher.py#L485
- fixme: # TODO: attach \noBeam to note if it is the last note https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/lily/translate.py#L1174
- fixme: # TODO: Something with 4.2 Repetitions; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2602
- fixme: # TODO: Find out what timeBase means; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2606
- fixme: # TODO: make staff numbers relevant; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2610
- fixme: # TODO: Turn back on when a smaller work is found... https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/musedata/translate.py#L584
- fixme: # TODO: column 17 self.src[16] defines the graphic note type https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/musedata/init.py#L339
- fixme: # TODO: write https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/stream/base.py#L13034
- fixme: # TODO: write https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/stream/base.py#L13038
Effect on pytest: The following messages are no longer emitted:
- fixme: path.strpath # XXX svn? https://github.com/pytest-dev/pytest/blob/643845feb76f99d7619655609e34e78b6a628b32/src/_pytest/_py/path.py#L193
- fixme: # XXX https://github.com/pytest-dev/pytest/blob/643845feb76f99d7619655609e34e78b6a628b32/src/_pytest/_code/code.py#L913
Effect on pandas: The following messages are no longer emitted:
- fixme: e.g. Sparse[bool, False] # TODO: no test cases get here https://github.com/pandas-dev/pandas/blob/67a58cddc2f8c0e30cb0123589947d9b3f073720/pandas/core/algorithms.py#L158
Effect on sentry: The following messages are now emitted:
- no-name-in-module: No name 'executor' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/runner/commands/migrations.py#L34
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/middleware/auth.py#L3
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/middleware/customer_domain.py#L7
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/auth_logout.py#L1
- import-error: Unable to import 'django.middleware.csrf' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/react_page.py#L10
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/base.py#L10
- import-error: Unable to import 'django.middleware.csrf' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/base.py#L19
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/auth_login.py#L9
- import-error: Unable to import 'django.middleware.csrf' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/csrf_failure.py#L5
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/accounts.py#L5
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/accounts.py#L6
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/forms/accounts.py#L10
- no-member: Instance of 'FlexibleForeignKey' has no 'proxy_user' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/sentry_apps/installations.py#L52
- no-member: Instance of 'FlexibleForeignKey' has no 'application' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/sentry_apps/installations.py#L53
- no-member: Instance of 'FlexibleForeignKey' has no 'scope_list' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/sentry_apps/installations.py#L54
- no-member: Instance of 'FlexibleForeignKey' has no 'slug' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/sentry_apps/installations.py#L85
- no-member: Instance of 'OneToOneField' has no 'save' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/sentry_apps/apps.py#L237
- no-member: Instance of 'FlexibleForeignKey' has no 'absolute_url' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/data_export/models.py#L106
- no-member: Instance of 'FlexibleForeignKey' has no 'slug' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/data_export/models.py#L107
- abstract-method: Method 'prepare_default' is abstract in class 'BaseDatabaseSchemaEditor' but is not overridden in child class 'SafePostgresDatabaseSchemaEditor' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/postgres/schema.py#L65
- no-member: Super of 'DatabaseWrapper' has no '_set_isolation_level' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/postgres/base.py#L104
- abstract-method: Method 'defer' is abstract in class 'BaseQuerySet' but is not overridden in child class 'ParanoidQuerySet' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/paranoia.py#L18
- abstract-method: Method 'only' is abstract in class 'BaseQuerySet' but is not overridden in child class 'ParanoidQuerySet' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/paranoia.py#L18
- abstract-method: Method 'get_cache_name' is abstract in class 'FieldCacheMixin' but is not overridden in child class 'FlexibleForeignKey' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/foreignkey.py#L11
- abstract-method: Method 'get_cache_name' is abstract in class 'FieldCacheMixin' but is not overridden in child class 'OneToOneCascadeDeletes' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/onetoone.py#L9
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'NoPrepareMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L125
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'NoPrepareMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L125
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'NoPrepareMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L125
- abstract-method: Method 'as_sql' is abstract in class 'BaseExpression' but is not overridden in child class 'NoPrepareMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L125
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldExactLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L130
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldExactLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L130
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldExactLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L130
- too-many-ancestors: Too many ancestors (8/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L130
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldIExactLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L135
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldIExactLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L135
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldIExactLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L135
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldInLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L140
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldInLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L140
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldInLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L140
- too-many-ancestors: Too many ancestors (9/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L140
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'ContainsLookupMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L148
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'ContainsLookupMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L148
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'ContainsLookupMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L148
- abstract-method: Method 'as_sql' is abstract in class 'BaseExpression' but is not overridden in child class 'ContainsLookupMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L148
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldContainsLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L160
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldContainsLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L160
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldContainsLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L160
- too-many-ancestors: Too many ancestors (8/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L160
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldIContainsLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L164
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldIContainsLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L164
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldIContainsLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L164
- too-many-ancestors: Too many ancestors (9/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L164
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'IdOrSlugLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/slug.py#L15
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'IdOrSlugLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/slug.py#L15
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'IdOrSlugLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/slug.py#L15
- no-name-in-module: No name 'loader' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/management/commands/makemigrations.py#L6
- no-member: Instance of 'FlexibleForeignKey' has no 'slug' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L635
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L636
- no-member: Instance of 'FlexibleForeignKey' has no 'slug' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L656
- no-member: Instance of 'FlexibleForeignKey' has no 'get_option' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L659
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L679
- no-member: Instance of 'FlexibleForeignKey' has no 'flags' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L698
- no-member: Instance of 'FlexibleForeignKey' has no 'version' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L839
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L890
- no-member: Instance of 'FlexibleForeignKey' has no 'organization_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L915
- no-member: Instance of 'FlexibleForeignKey' has no 'organization_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/authidentity.py#L36
- no-member: Instance of 'FlexibleForeignKey' has no 'get_display_name' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/authidentity.py#L71
- no-member: Instance of 'FlexibleForeignKey' has no 'get_label' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/authidentity.py#L74
- no-member: Instance of 'ManyToManyField' has no 'all' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/release.py#L606
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/release.py#L791
- no-member: Instance of 'ManyToManyField' has no 'values_list' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/release.py#L962
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/release.py#L990
- no-member: Instance of 'FlexibleForeignKey' has no 'key' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/auditlogentry.py#L98
- no-member: Instance of 'FlexibleForeignKey' has no 'get_display_name' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/auditlogentry.py#L164
- no-member: Instance of 'FlexibleForeignKey' has no 'key' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/auditlogentry.py#L166
- no-member: Instance of 'FlexibleForeignKey' has no 'member_set' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/team.py#L224
- no-member: Instance of 'FlexibleForeignKey' has no 'email' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/useremail.py#L98
- no-member: Instance of 'FlexibleForeignKey' has no 'organization_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L46
- no-member: Instance of 'FlexibleForeignKey' has no 'slug' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L75
- no-member: Instance of 'FlexibleForeignKey' has no 'get_email' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L77
- no-member: Instance of 'FlexibleForeignKey' has no 'role' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L87
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L90
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L103
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L104
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L105
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L107
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L109
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/projectcodeowners.py#L123
- no-member: Instance of 'FlexibleForeignKey' has no 'type' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/identity.py#L216
- redefined-variable-type: Redefinition of qs type from sentry.db.models.manager.base_query_set.BaseQuerySet to django.db.models.query.QuerySet https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/projectkey.py#L61
- no-member: Instance of 'FlexibleForeignKey' has no 'organization_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/projectkey.py#L219
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/projectkey.py#L223
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/projectkey.py#L292
- no-member: Instance of 'FlexibleForeignKey' has no 'organization_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/projectkey.py#L304
- no-member: Instance of 'FlexibleForeignKey' has no 'issue_category' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/groupsnooze.py#L124
- no-member: Instance of 'FlexibleForeignKey' has no 'project' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/groupsnooze.py#L128
- no-member: Instance of 'FlexibleForeignKey' has no 'issue_category' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/groupsnooze.py#L185
- no-member: Instance of 'FlexibleForeignKey' has no 'project' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/groupsnooze.py#L189
- no-member: Instance of 'FlexibleForeignKey' has no 'absolute_url' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmember.py#L344
- no-member: Instance of 'FlexibleForeignKey' has no 'slug' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmember.py#L375
- no-member: Instance of 'FlexibleForeignKey' has no 'get_scopes' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmember.py#L508
- no-member: Instance of 'FlexibleForeignKey' has no 'get_option' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmember.py#L522
- no-member: Instance of 'FlexibleForeignKey' has no 'get_scopes' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmember.py#L610
- no-member: Instance of 'FlexibleForeignKey' has no 'get_members_with_org_roles' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmember.py#L619
- no-member: Instance of 'FlexibleForeignKey' has no 'headers' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/debugfile.py#L151
- no-member: Instance of 'FlexibleForeignKey' has no 'delete' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/debugfile.py#L199
- no-member: Instance of 'FlexibleForeignKey' has no 'get_allowed_origins' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/apitoken.py#L281
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/dynamicsampling.py#L256
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationaccessrequest.py#L32
- no-member: Instance of 'FlexibleForeignKey' has no 'user_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationaccessrequest.py#L33
- no-member: Instance of 'FlexibleForeignKey' has no 'user_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationaccessrequest.py#L35
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationaccessrequest.py#L71
- no-member: Instance of 'FlexibleForeignKey' has no 'user_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationaccessrequest.py#L81
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationaccessrequest.py#L83
- no-member: Instance of 'ManyToManyField' has no 'all' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/project.py#L452
- no-member: Instance of 'FlexibleForeignKey' has no 'update' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/activity.py#L174
- no-member: Instance of 'FlexibleForeignKey' has no 'update' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/activity.py#L187
- no-member: Instance of 'ManyToManyField' has no 'values_list' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/userrole.py#L48
- no-member: Instance of 'FlexibleForeignKey' has no 'email' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/authenticator.py#L195
- no-member: Instance of 'FlexibleForeignKey' has no 'application_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/sentry_app_installation.py#L175
- no-member: Instance of 'OneToOneField' has no 'outboxes_for_update' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/sentry_app_installation.py#L204
- no-member: Instance of 'OneToOneField' has no 'user_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/sentry_app_installation.py#L234
- no-member: Instance of 'OneToOneField' has no 'client_secret' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/sentry_app.py#L215
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/external_actor.py#L73
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/external_actor.py#L77
- no-member: Instance of 'FlexibleForeignKey' has no 'outboxes_for_update' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/sentry_app_installation_token.py#L81
- abstract-method: Method 'defer' is abstract in class 'BaseQuerySet' but is not overridden in child class 'ReleaseQuerySet' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/releases/util.py#L41
- abstract-method: Method 'only' is abstract in class 'BaseQuerySet' but is not overridden in child class 'ReleaseQuerySet' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/releases/util.py#L41
- no-member: Instance of 'QuerySet' has no 'annotate_prerelease_column' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/releases/util.py#L111
- no-member: Instance of 'FlexibleForeignKey' has no 'alertruletrigger_set' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/incidents/models/alert_rule_activations.py#L96
- no-member: Instance of 'FlexibleForeignKey' has no 'snuba_query' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/incidents/models/alert_rule_activations.py#L106
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L11
- import-error: Unable to import 'django.contrib.auth.backends' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L12
- missing-function-docstring: Missing function or method docstring https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L414
- unused-argument: Unused argument 'request' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L415
- no-self-use: Method could be a function https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L414
- missing-function-docstring: Missing function or method docstring https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L433
- unused-argument: Unused argument 'user' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L433
- no-self-use: Method could be a function https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L433
- missing-function-docstring: Missing function or method docstring https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L436
- no-self-use: Method could be a function https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L436
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/auth/providers/saml2/provider.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0632_apitoken_backfill_last_chars.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0645_backfill_add_uuid_to_all_rule_actions.py#L7
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0677_unpickle_project_options_again.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0711_backfill_group_attributes_to_self_hosted.py#L13
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0680_unpickle_options_again.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0514_migrate_priority_saved_searches.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0670_monitor_incident_cleanup_duplicates.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0641_backfill_group_attributes.py#L11
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0507_delete_pending_deletion_rules.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0492_pickle_to_json_sentry_groupedmessage.py#L6
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0634_backfill_github_webhook_outbox_shard_ids.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0654_rename_priority_sort_to_trends.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0674_monitor_clear_missed_timeout_as_error.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0702_alert_rule_project_backfill_migration_2.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0528_truncate_flat_index.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0550_migrate_no_action_dupe_issue_alerts.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0546_backfill_fix_bad_xactors.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0566_remove_cron_missed_margins_zero.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0515_slugify_invalid_monitors.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0681_unpickle_authenticator_again.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0619_monitors_migrate_is_muted.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0537_backfill_xactor_team_and_user_ids.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0675_dashboard_widget_query_rename_priority_sort_to_trends.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0517_backfill_pagerdutyservices_into_org_integrations.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0522_migrate_discover_savedquery_worldmaps.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0644_backfill_priority_for_groups.py#L9
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0587_remove_unused_neglectedrule_rows.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0493_pickle_to_json_sentry_activity.py#L6
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0500_set_none_date_last_modified_to_date_uploaded.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0568_monitors_fix_next_checkin_latest.py#L7
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0521_migrate_world_map_widgets.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0561_backfill_new_notification_tables.py#L9
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0527_backfill_next_checkin_latest.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0502_savedsearch_update_me_myteams.py#L6
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0672_backfill_ukraine_timezone_name.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0687_alert_rule_project_backfill_migration.py#L7
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0660_fix_cron_monitor_invalid_orgs.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0739_backfill_group_info_to_group_attributes.py#L13
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0565_fix_diff_env_dupe_alerts.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0538_remove_name_data_from_rule.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0726_apitoken_backfill_hashes.py#L9
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0742_backfill_alertrule_detection_type.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0511_pickle_to_json_sentry_rawevent.py#L6
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0574_backfill_weekly_report_settings.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0729_backfill_groupsearchviews_with_pinned_searches.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0621_set_muted_monitors_to_active.py#L5
- no-member: Instance of 'FlexibleForeignKey' has no 'aggregates' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/sentry_metrics/models/spanattributeextractionrules.py#L38
- no-name-in-module: No name 'executor' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/new_migrations/monkey/executor.py#L6
- no-name-in-module: No name 'fields' in module 'django.db.migrations.operations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/new_migrations/monkey/executor.py#L9
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/new_migrations/monkey/executor.py#L11
- no-name-in-module: No name 'executor' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/new_migrations/monkey/init.py#L82
- no-name-in-module: No name 'writer' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/new_migrations/monkey/init.py#L82
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/api/exceptions.py#L3
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/api/endpoints/auth_config.py#L2
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/api/endpoints/auth_index.py#L3
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/api/endpoints/user_details.py#L6
- no-member: Instance of 'ManyToManyField' has no 'set' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/api/serializers/rest_framework/notification_action.py#L361
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L26
- no-name-in-module: No name 'executor' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L31
- no-name-in-module: No name 'client' in module 'django.test' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L827
- too-many-ancestors: Too many ancestors (10/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2042
- no-member: Instance of 'MetricsEnhancedPerformanceTestCase' has no 'features' member; maybe 'feature'? https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2111
- no-member: Instance of 'MetricsEnhancedPerformanceTestCase' has no 'url' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2112
- too-many-ancestors: Too many ancestors (8/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2422
- no-member: Instance of 'ActivityTestCase' has no 'org' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2794
- no-member: Instance of 'ActivityTestCase' has no 'org' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2802
- no-member: Instance of 'ActivityTestCase' has no 'org' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2804
- no-member: Instance of 'ActivityTestCase' has no 'org' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2810
- no-member: Instance of 'ActivityTestCase' has no 'project2' member; maybe 'project'? https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2825
- no-member: Instance of 'ActivityTestCase' has no 'org' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2827
- too-many-ancestors: Too many ancestors (8/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2839
- too-many-ancestors: Too many ancestors (8/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L3019
- too-many-ancestors: Too many ancestors (8/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/helpers/backups.py#L847
The following messages are no longer emitted:
- fixme: type: ignore[assignment] # XXX: clobbers Serializer.fields https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/discover/endpoints/serializers.py#L33
- fixme: type: ignore[assignment] # XXX: clobbers Serializer.fields https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/discover/endpoints/serializers.py#L156
- import-error: Unable to import 'django.db.models.deletion' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0516_switch_pagerduty_silo.py#L3
- no-name-in-module: No name 'deletion' in module 'django.db.models' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0516_switch_pagerduty_silo.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0516_switch_pagerduty_silo.py#L4
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0516_switch_pagerduty_silo.py#L38
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0516_switch_pagerduty_silo.py#L11
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0694_db_index_alert_rule_actions.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0694_db_index_alert_rule_actions.py#L8
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0565_fix_diff_env_dupe_alerts.py#L6
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0565_fix_diff_env_dupe_alerts.py#L8
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0565_fix_diff_env_dupe_alerts.py#L75
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0498_typed_bitfield.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0498_typed_bitfield.py#L9
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0525_add_next_checkin_latest.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0525_add_next_checkin_latest.py#L8
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0529_remove_pagerduty_service.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0529_remove_pagerduty_service.py#L8
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0609_remove_notification_setting_model.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0609_remove_notification_setting_model.py#L8
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0487_add_indexes_to_bundles.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0487_add_indexes_to_bundles.py#L8
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0724_discover_saved_query_dataset.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0724_discover_saved_query_dataset.py#L9
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0674_monitor_clear_missed_timeout_as_error.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0674_monitor_clear_missed_timeout_as_error.py#L5
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0674_monitor_clear_missed_timeout_as_error.py#L26
- import-error: Unable to import 'django.apps.registry' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0701_backfill_alertrule_user_team.py#L3
- no-name-in-module: No name 'apps' in module 'django' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0701_backfill_alertrule_user_team.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0701_backfill_alertrule_user_team.py#L4
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0701_backfill_alertrule_user_team.py#L30
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0671_enforce_unqiue_active_incidents.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0671_enforce_unqiue_active_incidents.py#L8
- import-error: Unable to import 'django.db.models.deletion' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0652_alert_rule_activation_condition.py#L3
- no-name-in-module: No name 'deletion' in module 'django.db.models' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0652_alert_rule_activation_condition.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0652_alert_rule_activation_condition.py#L5
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0652_alert_rule_activation_condition.py#L45
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0652_alert_rule_activation_condition.py#L12
- import-error: Unable to import 'django.apps.registry' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0706_grouphistory_userteam_backfill.py#L4
- no-name-in-module: No name 'apps' in module 'django' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0706_grouphistory_userteam_backfill.py#L4
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0706_grouphistory_userteam_backfill.py#L5
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0706_grouphistory_userteam_backfill.py#L34
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0654_rename_priority_sort_to_trends.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0654_rename_priority_sort_to_trends.py#L5
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0654_rename_priority_sort_to_trends.py#L23
- import-error: Unable to import 'django.db.models.deletion' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0690_remove_project_team_avatar.py#L3
- no-name-in-module: No name 'deletion' in module 'django.db.models' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0690_remove_project_team_avatar.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0690_remove_project_team_avatar.py#L4
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0690_remove_project_team_avatar.py#L33
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0690_remove_project_team_avatar.py#L44
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0690_remove_project_team_avatar.py#L10
- import-error: Unable to import 'django.db.models.deletion' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L3
- no-name-in-module: No name 'deletion' in module 'django.db.models' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L5
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L52
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L72
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L79
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L12
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0742_backfill_alertrule_detection_type.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0742_backfill_alertrule_detection_type.py#L5
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0742_backfill_alertrule_detection_type.py#L32
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0645_backfill_add_uuid_to_all_rule_actions.py#L5
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0645_backfill_add_uuid_to_all_rule_actions.py#L7
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0645_backfill_add_uuid_to_all_rule_actions.py#L57
- import-error: Unable to import 'django.db.models.deletion' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L5
- no-name-in-module: No name 'deletion' in module 'django.db.models' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L5
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L6
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L8
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L73
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L48
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0610_remove_notification_setting_table.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0610_remove_notification_setting_table.py#L8
- no-name-in-module: *No name 'mi...
This comment was truncated because GitHub allows only 65536 characters in a comment.
This comment was generated for commit cec41a25f1277c384cb67617ca8a57f5c345e4e6
Please let me know if the following is an accurate profiling case. I ran it on the pylint base and measured cumulative time of process_tokens() in misc.py
main without check-fixme-in-docstring
ncalls tottime percall cumtime percall filename:lineno(function)
175 0.011 0.000 0.013 0.000 /Users/moss/projects/pylint/pylint/checkers/misc.py:131(process_tokens)
Previously this PR with check-fixme-in-docstring on
ncalls tottime percall cumtime percall filename:lineno(function)
175 0.073 0.000 0.120 0.001 /Users/moss/projects/pylint/pylint/checkers/misc.py:150(process_tokens)
Considering total cumtime has almost 10x, I assume this isn't insignificant.
BUT I just made a change in the most recent commit (https://github.com/pylint-dev/pylint/pull/9744/commits/d06c5622a9b9ffa6f977807c827b2c1eb027f551) and was able to shave it down to
ncalls tottime percall cumtime percall filename:lineno(function)
175 0.048 0.000 0.077 0.000 /Users/moss/projects/pylint/pylint/checkers/misc.py:150(process_tokens)
I think this is a bit more reasonable since cumulative percall is back down to 0.000?
I was wondering if the distinction between the 3 regexes, can be removed if we remove the check-fixme-in-docstring option (and only search for notes after detecting that we have a comment or a docstring without making any distinction). Tbf the less regex we have to maintain the happier I am (especially since we need to consider thing like catastrophic backtracking that can bring CVE and are hard to catch with blind benchmarks).
Forgive me if I'm still misunderstanding, but I'm not sure if removing the distinction would help. I tried using one regex originally for both comments and docstrings, but having a one-size fits all regex becomes unwieldy. Most of the complexity arises when trying to extract the TODO message to be outputted. The multi-line docstrings have some edge scenarios when there are multiple on different lines with different spacings.
TokenInfo(type=3 (STRING), string='""" TODO: do this """', start=(2, 0), end=(2, 21), line='""" TODO: do this """\n')
TokenInfo(type=3 (STRING), string='"""\n TODO: do this\n TODO: do that\n"""', start=(3, 0), end=(6, 3), line='"""\n TODO: do this\n TODO: do that\n"""')
I'm worried I'd produce a regex that's harder to understand with greater risk of potential catastrophic backtracking.
EDIT The latest primer tests are now no longer emitting completely different messages like unsubscriptable-object and unsupported-assignment-operation. Could be false negatives, will look into this.
🤖 Effect of this PR on checked open source code: 🤖
Effect on astroid: The following messages are no longer emitted:
- fixme: # TODO: This should return an Uninferable as this would raise https://github.com/pylint-dev/astroid/blob/a93018e12e4992fa3a6d8ebd053c5d3aae70659e/astroid/brain/brain_dataclasses.py#L186
Effect on home-assistant: The following messages are no longer emitted:
- unsubscriptable-object: Value 'self.hass.data[DOMAIN]' is unsubscriptable https://github.com/home-assistant/core/blob/975cfa6457e051c5a58054e03046493baa96e7d6/homeassistant/components/media_source/models.py#L89
- unsupported-assignment-operation: 'self.hass.data[DOMAIN]' does not support item assignment https://github.com/home-assistant/core/blob/975cfa6457e051c5a58054e03046493baa96e7d6/homeassistant/components/system_health/init.py#L228
Effect on black: The following messages are no longer emitted:
- fixme: #assert ilabel not in first # XXX failed on <> ... != https://github.com/psf/black/blob/8827accf560c7be418000962565f1fd6fa7b01cb/src/blib2to3/pgen2/pgen.py#L80
Effect on music21: The following messages are now emitted:
- invalid-name: Attribute name "id" doesn't conform to '[a-z_][A-Za-z0-9_]{2,30}$' pattern https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/base.py#L577
The following messages are no longer emitted:
- invalid-name: Attribute name "id" doesn't conform to '[a-z_][A-Za-z0-9_]{2,30}$' pattern https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/prebase.py#L293
- fixme: # TODO: this file does not import correctly due to first/second https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/test/test_repeat.py#L475
- fixme: # TODO: use the linter, reference DOESN'T have to be passed in https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/alpha/analysis/hasher.py#L485
- fixme: # TODO: attach \noBeam to note if it is the last note https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/lily/translate.py#L1174
- fixme: # TODO: Something with 4.2 Repetitions; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2602
- fixme: # TODO: Find out what timeBase means; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2606
- fixme: # TODO: make staff numbers relevant; not in hum2xml https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/humdrum/spineParser.py#L2610
- fixme: # TODO: Turn back on when a smaller work is found... https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/musedata/translate.py#L584
- fixme: # TODO: column 17 self.src[16] defines the graphic note type https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/musedata/init.py#L339
- fixme: # TODO: write https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/stream/base.py#L13034
- fixme: # TODO: write https://github.com/cuthbertLab/music21/blob/204e9d0b9eec2f2d6ff8d8d3b13c41f912050604/music21/stream/base.py#L13038
Effect on pytest: The following messages are no longer emitted:
- fixme: path.strpath # XXX svn? https://github.com/pytest-dev/pytest/blob/643845feb76f99d7619655609e34e78b6a628b32/src/_pytest/_py/path.py#L193
- fixme: # XXX https://github.com/pytest-dev/pytest/blob/643845feb76f99d7619655609e34e78b6a628b32/src/_pytest/_code/code.py#L913
Effect on pandas: The following messages are no longer emitted:
- fixme: e.g. Sparse[bool, False] # TODO: no test cases get here https://github.com/pandas-dev/pandas/blob/67a58cddc2f8c0e30cb0123589947d9b3f073720/pandas/core/algorithms.py#L158
Effect on sentry: The following messages are now emitted:
- no-name-in-module: No name 'executor' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/runner/commands/migrations.py#L34
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/middleware/auth.py#L3
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/middleware/customer_domain.py#L7
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/auth_logout.py#L1
- import-error: Unable to import 'django.middleware.csrf' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/react_page.py#L10
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/base.py#L10
- import-error: Unable to import 'django.middleware.csrf' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/base.py#L19
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/auth_login.py#L9
- import-error: Unable to import 'django.middleware.csrf' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/csrf_failure.py#L5
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/accounts.py#L5
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/frontend/accounts.py#L6
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/web/forms/accounts.py#L10
- no-member: Instance of 'FlexibleForeignKey' has no 'proxy_user' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/sentry_apps/installations.py#L52
- no-member: Instance of 'FlexibleForeignKey' has no 'application' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/sentry_apps/installations.py#L53
- no-member: Instance of 'FlexibleForeignKey' has no 'scope_list' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/sentry_apps/installations.py#L54
- no-member: Instance of 'FlexibleForeignKey' has no 'slug' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/sentry_apps/installations.py#L85
- no-member: Instance of 'OneToOneField' has no 'save' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/sentry_apps/apps.py#L237
- no-member: Instance of 'FlexibleForeignKey' has no 'absolute_url' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/data_export/models.py#L106
- no-member: Instance of 'FlexibleForeignKey' has no 'slug' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/data_export/models.py#L107
- abstract-method: Method 'prepare_default' is abstract in class 'BaseDatabaseSchemaEditor' but is not overridden in child class 'SafePostgresDatabaseSchemaEditor' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/postgres/schema.py#L65
- no-member: Super of 'DatabaseWrapper' has no '_set_isolation_level' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/postgres/base.py#L104
- abstract-method: Method 'defer' is abstract in class 'BaseQuerySet' but is not overridden in child class 'ParanoidQuerySet' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/paranoia.py#L18
- abstract-method: Method 'only' is abstract in class 'BaseQuerySet' but is not overridden in child class 'ParanoidQuerySet' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/paranoia.py#L18
- abstract-method: Method 'get_cache_name' is abstract in class 'FieldCacheMixin' but is not overridden in child class 'FlexibleForeignKey' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/foreignkey.py#L11
- abstract-method: Method 'get_cache_name' is abstract in class 'FieldCacheMixin' but is not overridden in child class 'OneToOneCascadeDeletes' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/onetoone.py#L9
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'NoPrepareMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L125
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'NoPrepareMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L125
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'NoPrepareMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L125
- abstract-method: Method 'as_sql' is abstract in class 'BaseExpression' but is not overridden in child class 'NoPrepareMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L125
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldExactLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L130
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldExactLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L130
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldExactLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L130
- too-many-ancestors: Too many ancestors (8/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L130
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldIExactLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L135
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldIExactLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L135
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldIExactLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L135
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldInLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L140
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldInLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L140
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldInLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L140
- too-many-ancestors: Too many ancestors (9/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L140
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'ContainsLookupMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L148
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'ContainsLookupMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L148
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'ContainsLookupMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L148
- abstract-method: Method 'as_sql' is abstract in class 'BaseExpression' but is not overridden in child class 'ContainsLookupMixin' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L148
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldContainsLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L160
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldContainsLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L160
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldContainsLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L160
- too-many-ancestors: Too many ancestors (8/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L160
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldIContainsLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L164
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldIContainsLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L164
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'JSONFieldIContainsLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L164
- too-many-ancestors: Too many ancestors (9/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/jsonfield.py#L164
- abstract-method: Method 'rand' is abstract in class 'Combinable' but is not overridden in child class 'IdOrSlugLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/slug.py#L15
- abstract-method: Method 'ror' is abstract in class 'Combinable' but is not overridden in child class 'IdOrSlugLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/slug.py#L15
- abstract-method: Method 'rxor' is abstract in class 'Combinable' but is not overridden in child class 'IdOrSlugLookup' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/db/models/fields/slug.py#L15
- no-name-in-module: No name 'loader' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/management/commands/makemigrations.py#L6
- no-member: Instance of 'FlexibleForeignKey' has no 'slug' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L635
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L636
- no-member: Instance of 'FlexibleForeignKey' has no 'slug' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L656
- no-member: Instance of 'FlexibleForeignKey' has no 'get_option' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L659
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L679
- no-member: Instance of 'FlexibleForeignKey' has no 'flags' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L698
- no-member: Instance of 'FlexibleForeignKey' has no 'version' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L839
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L890
- no-member: Instance of 'FlexibleForeignKey' has no 'organization_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/group.py#L915
- no-member: Instance of 'FlexibleForeignKey' has no 'organization_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/authidentity.py#L36
- no-member: Instance of 'FlexibleForeignKey' has no 'get_display_name' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/authidentity.py#L71
- no-member: Instance of 'FlexibleForeignKey' has no 'get_label' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/authidentity.py#L74
- no-member: Instance of 'ManyToManyField' has no 'all' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/release.py#L606
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/release.py#L791
- no-member: Instance of 'ManyToManyField' has no 'values_list' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/release.py#L962
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/release.py#L990
- no-member: Instance of 'FlexibleForeignKey' has no 'key' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/auditlogentry.py#L98
- no-member: Instance of 'FlexibleForeignKey' has no 'get_display_name' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/auditlogentry.py#L164
- no-member: Instance of 'FlexibleForeignKey' has no 'key' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/auditlogentry.py#L166
- no-member: Instance of 'FlexibleForeignKey' has no 'member_set' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/team.py#L224
- no-member: Instance of 'FlexibleForeignKey' has no 'email' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/useremail.py#L98
- no-member: Instance of 'FlexibleForeignKey' has no 'organization_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L46
- no-member: Instance of 'FlexibleForeignKey' has no 'slug' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L75
- no-member: Instance of 'FlexibleForeignKey' has no 'get_email' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L77
- no-member: Instance of 'FlexibleForeignKey' has no 'role' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L87
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L90
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L103
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L104
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L105
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L107
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmemberteam.py#L109
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/projectcodeowners.py#L123
- no-member: Instance of 'FlexibleForeignKey' has no 'type' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/identity.py#L216
- redefined-variable-type: Redefinition of qs type from sentry.db.models.manager.base_query_set.BaseQuerySet to django.db.models.query.QuerySet https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/projectkey.py#L61
- no-member: Instance of 'FlexibleForeignKey' has no 'organization_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/projectkey.py#L219
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/projectkey.py#L223
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/projectkey.py#L292
- no-member: Instance of 'FlexibleForeignKey' has no 'organization_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/projectkey.py#L304
- no-member: Instance of 'FlexibleForeignKey' has no 'issue_category' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/groupsnooze.py#L124
- no-member: Instance of 'FlexibleForeignKey' has no 'project' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/groupsnooze.py#L128
- no-member: Instance of 'FlexibleForeignKey' has no 'issue_category' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/groupsnooze.py#L185
- no-member: Instance of 'FlexibleForeignKey' has no 'project' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/groupsnooze.py#L189
- no-member: Instance of 'FlexibleForeignKey' has no 'absolute_url' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmember.py#L344
- no-member: Instance of 'FlexibleForeignKey' has no 'slug' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmember.py#L375
- no-member: Instance of 'FlexibleForeignKey' has no 'get_scopes' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmember.py#L508
- no-member: Instance of 'FlexibleForeignKey' has no 'get_option' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmember.py#L522
- no-member: Instance of 'FlexibleForeignKey' has no 'get_scopes' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmember.py#L610
- no-member: Instance of 'FlexibleForeignKey' has no 'get_members_with_org_roles' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationmember.py#L619
- no-member: Instance of 'FlexibleForeignKey' has no 'headers' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/debugfile.py#L151
- no-member: Instance of 'FlexibleForeignKey' has no 'delete' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/debugfile.py#L199
- no-member: Instance of 'FlexibleForeignKey' has no 'get_allowed_origins' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/apitoken.py#L281
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/dynamicsampling.py#L256
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationaccessrequest.py#L32
- no-member: Instance of 'FlexibleForeignKey' has no 'user_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationaccessrequest.py#L33
- no-member: Instance of 'FlexibleForeignKey' has no 'user_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationaccessrequest.py#L35
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationaccessrequest.py#L71
- no-member: Instance of 'FlexibleForeignKey' has no 'user_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationaccessrequest.py#L81
- no-member: Instance of 'FlexibleForeignKey' has no 'organization' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/organizationaccessrequest.py#L83
- no-member: Instance of 'ManyToManyField' has no 'all' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/project.py#L452
- no-member: Instance of 'FlexibleForeignKey' has no 'update' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/activity.py#L174
- no-member: Instance of 'FlexibleForeignKey' has no 'update' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/activity.py#L187
- no-member: Instance of 'ManyToManyField' has no 'values_list' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/userrole.py#L48
- no-member: Instance of 'FlexibleForeignKey' has no 'email' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/authenticator.py#L195
- no-member: Instance of 'FlexibleForeignKey' has no 'application_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/sentry_app_installation.py#L175
- no-member: Instance of 'OneToOneField' has no 'outboxes_for_update' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/sentry_app_installation.py#L204
- no-member: Instance of 'OneToOneField' has no 'user_id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/sentry_app_installation.py#L234
- no-member: Instance of 'OneToOneField' has no 'client_secret' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/sentry_app.py#L215
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/external_actor.py#L73
- no-member: Instance of 'FlexibleForeignKey' has no 'id' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/external_actor.py#L77
- no-member: Instance of 'FlexibleForeignKey' has no 'outboxes_for_update' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/integrations/sentry_app_installation_token.py#L81
- abstract-method: Method 'defer' is abstract in class 'BaseQuerySet' but is not overridden in child class 'ReleaseQuerySet' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/releases/util.py#L41
- abstract-method: Method 'only' is abstract in class 'BaseQuerySet' but is not overridden in child class 'ReleaseQuerySet' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/releases/util.py#L41
- no-member: Instance of 'QuerySet' has no 'annotate_prerelease_column' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/models/releases/util.py#L111
- no-member: Instance of 'FlexibleForeignKey' has no 'alertruletrigger_set' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/incidents/models/alert_rule_activations.py#L96
- no-member: Instance of 'FlexibleForeignKey' has no 'snuba_query' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/incidents/models/alert_rule_activations.py#L106
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L11
- import-error: Unable to import 'django.contrib.auth.backends' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L12
- missing-function-docstring: Missing function or method docstring https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L414
- unused-argument: Unused argument 'request' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L415
- no-self-use: Method could be a function https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L414
- missing-function-docstring: Missing function or method docstring https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L433
- unused-argument: Unused argument 'user' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L433
- no-self-use: Method could be a function https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L433
- missing-function-docstring: Missing function or method docstring https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L436
- no-self-use: Method could be a function https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/utils/auth.py#L436
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/auth/providers/saml2/provider.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0632_apitoken_backfill_last_chars.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0645_backfill_add_uuid_to_all_rule_actions.py#L7
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0677_unpickle_project_options_again.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0711_backfill_group_attributes_to_self_hosted.py#L13
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0680_unpickle_options_again.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0514_migrate_priority_saved_searches.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0670_monitor_incident_cleanup_duplicates.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0641_backfill_group_attributes.py#L11
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0507_delete_pending_deletion_rules.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0492_pickle_to_json_sentry_groupedmessage.py#L6
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0634_backfill_github_webhook_outbox_shard_ids.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0654_rename_priority_sort_to_trends.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0674_monitor_clear_missed_timeout_as_error.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0702_alert_rule_project_backfill_migration_2.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0528_truncate_flat_index.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0550_migrate_no_action_dupe_issue_alerts.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0546_backfill_fix_bad_xactors.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0566_remove_cron_missed_margins_zero.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0515_slugify_invalid_monitors.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0681_unpickle_authenticator_again.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0619_monitors_migrate_is_muted.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0537_backfill_xactor_team_and_user_ids.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0675_dashboard_widget_query_rename_priority_sort_to_trends.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0517_backfill_pagerdutyservices_into_org_integrations.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0522_migrate_discover_savedquery_worldmaps.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0644_backfill_priority_for_groups.py#L9
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0587_remove_unused_neglectedrule_rows.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0493_pickle_to_json_sentry_activity.py#L6
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0500_set_none_date_last_modified_to_date_uploaded.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0568_monitors_fix_next_checkin_latest.py#L7
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0521_migrate_world_map_widgets.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0561_backfill_new_notification_tables.py#L9
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0527_backfill_next_checkin_latest.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0502_savedsearch_update_me_myteams.py#L6
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0672_backfill_ukraine_timezone_name.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0687_alert_rule_project_backfill_migration.py#L7
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0660_fix_cron_monitor_invalid_orgs.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0739_backfill_group_info_to_group_attributes.py#L13
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0565_fix_diff_env_dupe_alerts.py#L8
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0538_remove_name_data_from_rule.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0726_apitoken_backfill_hashes.py#L9
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0742_backfill_alertrule_detection_type.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0511_pickle_to_json_sentry_rawevent.py#L6
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0574_backfill_weekly_report_settings.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0729_backfill_groupsearchviews_with_pinned_searches.py#L5
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0621_set_muted_monitors_to_active.py#L5
- no-member: Instance of 'FlexibleForeignKey' has no 'aggregates' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/sentry_metrics/models/spanattributeextractionrules.py#L38
- no-name-in-module: No name 'executor' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/new_migrations/monkey/executor.py#L6
- no-name-in-module: No name 'fields' in module 'django.db.migrations.operations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/new_migrations/monkey/executor.py#L9
- no-name-in-module: No name 'state' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/new_migrations/monkey/executor.py#L11
- no-name-in-module: No name 'executor' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/new_migrations/monkey/init.py#L82
- no-name-in-module: No name 'writer' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/new_migrations/monkey/init.py#L82
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/api/exceptions.py#L3
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/api/endpoints/auth_config.py#L2
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/api/endpoints/auth_index.py#L3
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/api/endpoints/user_details.py#L6
- no-member: Instance of 'ManyToManyField' has no 'set' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/api/serializers/rest_framework/notification_action.py#L361
- import-error: Unable to import 'django.contrib.auth' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L26
- no-name-in-module: No name 'executor' in module 'django.db.migrations' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L31
- no-name-in-module: No name 'client' in module 'django.test' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L827
- too-many-ancestors: Too many ancestors (10/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2042
- no-member: Instance of 'MetricsEnhancedPerformanceTestCase' has no 'features' member; maybe 'feature'? https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2111
- no-member: Instance of 'MetricsEnhancedPerformanceTestCase' has no 'url' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2112
- too-many-ancestors: Too many ancestors (8/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2422
- no-member: Instance of 'ActivityTestCase' has no 'org' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2794
- no-member: Instance of 'ActivityTestCase' has no 'org' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2802
- no-member: Instance of 'ActivityTestCase' has no 'org' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2804
- no-member: Instance of 'ActivityTestCase' has no 'org' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2810
- no-member: Instance of 'ActivityTestCase' has no 'project2' member; maybe 'project'? https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2825
- no-member: Instance of 'ActivityTestCase' has no 'org' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2827
- too-many-ancestors: Too many ancestors (8/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L2839
- too-many-ancestors: Too many ancestors (8/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/cases.py#L3019
- too-many-ancestors: Too many ancestors (8/7) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/testutils/helpers/backups.py#L847
The following messages are no longer emitted:
- fixme: type: ignore[assignment] # XXX: clobbers Serializer.fields https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/discover/endpoints/serializers.py#L33
- fixme: type: ignore[assignment] # XXX: clobbers Serializer.fields https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/discover/endpoints/serializers.py#L156
- import-error: Unable to import 'django.db.models.deletion' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0516_switch_pagerduty_silo.py#L3
- no-name-in-module: No name 'deletion' in module 'django.db.models' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0516_switch_pagerduty_silo.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0516_switch_pagerduty_silo.py#L4
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0516_switch_pagerduty_silo.py#L38
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0516_switch_pagerduty_silo.py#L11
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0694_db_index_alert_rule_actions.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0694_db_index_alert_rule_actions.py#L8
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0565_fix_diff_env_dupe_alerts.py#L6
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0565_fix_diff_env_dupe_alerts.py#L8
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0565_fix_diff_env_dupe_alerts.py#L75
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0498_typed_bitfield.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0498_typed_bitfield.py#L9
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0525_add_next_checkin_latest.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0525_add_next_checkin_latest.py#L8
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0529_remove_pagerduty_service.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0529_remove_pagerduty_service.py#L8
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0609_remove_notification_setting_model.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0609_remove_notification_setting_model.py#L8
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0487_add_indexes_to_bundles.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0487_add_indexes_to_bundles.py#L8
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0724_discover_saved_query_dataset.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0724_discover_saved_query_dataset.py#L9
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0674_monitor_clear_missed_timeout_as_error.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0674_monitor_clear_missed_timeout_as_error.py#L5
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0674_monitor_clear_missed_timeout_as_error.py#L26
- import-error: Unable to import 'django.apps.registry' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0701_backfill_alertrule_user_team.py#L3
- no-name-in-module: No name 'apps' in module 'django' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0701_backfill_alertrule_user_team.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0701_backfill_alertrule_user_team.py#L4
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0701_backfill_alertrule_user_team.py#L30
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0671_enforce_unqiue_active_incidents.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0671_enforce_unqiue_active_incidents.py#L8
- import-error: Unable to import 'django.db.models.deletion' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0652_alert_rule_activation_condition.py#L3
- no-name-in-module: No name 'deletion' in module 'django.db.models' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0652_alert_rule_activation_condition.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0652_alert_rule_activation_condition.py#L5
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0652_alert_rule_activation_condition.py#L45
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0652_alert_rule_activation_condition.py#L12
- import-error: Unable to import 'django.apps.registry' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0706_grouphistory_userteam_backfill.py#L4
- no-name-in-module: No name 'apps' in module 'django' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0706_grouphistory_userteam_backfill.py#L4
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0706_grouphistory_userteam_backfill.py#L5
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0706_grouphistory_userteam_backfill.py#L34
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0654_rename_priority_sort_to_trends.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0654_rename_priority_sort_to_trends.py#L5
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0654_rename_priority_sort_to_trends.py#L23
- import-error: Unable to import 'django.db.models.deletion' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0690_remove_project_team_avatar.py#L3
- no-name-in-module: No name 'deletion' in module 'django.db.models' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0690_remove_project_team_avatar.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0690_remove_project_team_avatar.py#L4
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0690_remove_project_team_avatar.py#L33
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0690_remove_project_team_avatar.py#L44
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0690_remove_project_team_avatar.py#L10
- import-error: Unable to import 'django.db.models.deletion' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L3
- no-name-in-module: No name 'deletion' in module 'django.db.models' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L5
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L52
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L72
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L79
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0559_custom_dynamic_sampling_rule.py#L12
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0742_backfill_alertrule_detection_type.py#L3
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0742_backfill_alertrule_detection_type.py#L5
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0742_backfill_alertrule_detection_type.py#L32
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0645_backfill_add_uuid_to_all_rule_actions.py#L5
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0645_backfill_add_uuid_to_all_rule_actions.py#L7
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0645_backfill_add_uuid_to_all_rule_actions.py#L57
- import-error: Unable to import 'django.db.models.deletion' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L5
- no-name-in-module: No name 'deletion' in module 'django.db.models' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L5
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L6
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L8
- no-member: Module 'django.db.models' has no 'deletion' member https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L73
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0730_add_subscription_fk_to_incident.py#L48
- no-name-in-module: No name 'migrations' in module 'django.db' https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0610_remove_notification_setting_table.py#L3
- too-few-public-methods: Too few public methods (1/2) https://github.com/getsentry/sentry/blob/30e501a9b64dafdec9391605b193197b87321213/src/sentry/migrations/0610_remove_notification_setting_table.py#L8
- no-name-in-module: *No name 'mi...
This comment was truncated because GitHub allows only 65536 characters in a comment.
This comment was generated for commit d06c5622a9b9ffa6f977807c827b2c1eb027f551
Could be false negatives, will look into this.
The primer tests still suffer from a fluctuating baseline, so you'll see unrelated messages moving in and out from time to time. We haven't yet identified the source of the indeterminacy. Surely it's a lack of a fixed ordering somewhere. Don't worry about it.
FYI @badsketch, thanks to some ace detective work by @akamat10, the primer is more stable now, so if you merge main you should see a more informative primer diff.
🤖 Effect of this PR on checked open source code: 🤖
Effect on astroid: The following messages are no longer emitted:
- fixme: # TODO: This should return an Uninferable as this would raise https://github.com/pylint-dev/astroid/blob/62c5badc838419090ee319acfcef3b651ffb1e94/astroid/brain/brain_dataclasses.py#L186
Effect on black: The following messages are no longer emitted:
- fixme: #assert ilabel not in first # XXX failed on <> ... != https://github.com/psf/black/blob/f1a2f92bba7f1b8e4407e89d71a18fd1d6c61a91/src/blib2to3/pgen2/pgen.py#L69
Effect on music21: The following messages are no longer emitted:
- fixme: # TODO: attach \noBeam to note if it is the last note https://github.com/cuthbertLab/music21/blob/e05fc53dfef7b2c9ac974c0cacb8b85e9c4d4605/music21/lily/translate.py#L1174
- fixme: # TODO: this file does not import correctly due to first/second https://github.com/cuthbertLab/music21/blob/e05fc53dfef7b2c9ac974c0cacb8b85e9c4d4605/music21/test/test_repeat.py#L475
- fixme: # TODO: Turn back on when a smaller work is found... https://github.com/cuthbertLab/music21/blob/e05fc53dfef7b2c9ac974c0cacb8b85e9c4d4605/music21/musedata/translate.py#L584
- fixme: # TODO: column 17 self.src[16] defines the graphic note type https://github.com/cuthbertLab/music21/blob/e05fc53dfef7b2c9ac974c0cacb8b85e9c4d4605/music21/musedata/init.py#L339
- fixme: # TODO: Something with 4.2 Repetitions; not in hum2xml https://github.com/cuthbertLab/music21/blob/e05fc53dfef7b2c9ac974c0cacb8b85e9c4d4605/music21/humdrum/spineParser.py#L2602
- fixme: # TODO: Find out what timeBase means; not in hum2xml https://github.com/cuthbertLab/music21/blob/e05fc53dfef7b2c9ac974c0cacb8b85e9c4d4605/music21/humdrum/spineParser.py#L2606
- fixme: # TODO: make staff numbers relevant; not in hum2xml https://github.com/cuthbertLab/music21/blob/e05fc53dfef7b2c9ac974c0cacb8b85e9c4d4605/music21/humdrum/spineParser.py#L2610
- fixme: # TODO: write https://github.com/cuthbertLab/music21/blob/e05fc53dfef7b2c9ac974c0cacb8b85e9c4d4605/music21/stream/base.py#L13037
- fixme: # TODO: write https://github.com/cuthbertLab/music21/blob/e05fc53dfef7b2c9ac974c0cacb8b85e9c4d4605/music21/stream/base.py#L13041
- fixme: # TODO: use the linter, reference DOESN'T have to be passed in https://github.com/cuthbertLab/music21/blob/e05fc53dfef7b2c9ac974c0cacb8b85e9c4d4605/music21/alpha/analysis/hasher.py#L485
Effect on pytest: The following messages are no longer emitted:
- fixme: path.strpath # XXX svn? https://github.com/pytest-dev/pytest/blob/6486c3f3a858a0c8043f5c3f7c24297b82a0abe4/src/_pytest/_py/path.py#L193
- fixme: # XXX https://github.com/pytest-dev/pytest/blob/6486c3f3a858a0c8043f5c3f7c24297b82a0abe4/src/_pytest/_code/code.py#L913
Effect on pandas: The following messages are no longer emitted:
- fixme: e.g. Sparse[bool, False] # TODO: no test cases get here https://github.com/pandas-dev/pandas/blob/d538a1cd1ad5d1e506c2dc36144e4cac5534858a/pandas/core/algorithms.py#L158
Effect on sentry: The following messages are no longer emitted:
- fixme: type: ignore[assignment] # XXX: intentional resetting pk https://github.com/getsentry/sentry/blob/6564a46b4e5cf2e447cd2bfb725fbc29c4c583c2/src/sentry/reprocessing2.py#L550
- fixme: type: ignore[assignment] # XXX: clobbers Serializer.fields https://github.com/getsentry/sentry/blob/6564a46b4e5cf2e447cd2bfb725fbc29c4c583c2/src/sentry/discover/endpoints/serializers.py#L34
- fixme: type: ignore[assignment] # XXX: clobbers Serializer.fields https://github.com/getsentry/sentry/blob/6564a46b4e5cf2e447cd2bfb725fbc29c4c583c2/src/sentry/discover/endpoints/serializers.py#L191
- fixme: type: ignore[assignment] # TODO: make BitField a mypy plugin https://github.com/getsentry/sentry/blob/6564a46b4e5cf2e447cd2bfb725fbc29c4c583c2/src/sentry/organizations/services/organization/impl.py#L502
- fixme: type: ignore[misc] # TODO: make BitField a mypy plugin https://github.com/getsentry/sentry/blob/6564a46b4e5cf2e447cd2bfb725fbc29c4c583c2/src/sentry/organizations/services/organization/impl.py#L545
- fixme: type: ignore[assignment] # XXX: clobbering Serializer.fields https://github.com/getsentry/sentry/blob/6564a46b4e5cf2e447cd2bfb725fbc29c4c583c2/src/sentry/api/serializers/rest_framework/dashboard.py#L146
This comment was generated for commit 51a2a1418da540a2bb36803da7e2d423780c0caf
@jacobtylerwalls That's fantastic, appreciate the update! I merged from main and pushed just now.
As a refresher, since it's been a while, the performance profiling results are in this comment: https://github.com/pylint-dev/pylint/pull/9744#issuecomment-2249498558
Also, the latest primer diff above makes sense to me. Most of the instances are where a TODO is part of a section that has been commented out. It would make sense for those to no longer alert as a fixme. The other instances are where a TODO is behind another comment like "# some note # TODO: xyz", which I would also like to propose as an acceptable primer test output change for the sake of consistency. Let me know if there are any issues 👍
@badsketch Sorry I didn't catch this before merge, but would you add a short breaking changes news fragment to indicate that we no longer emit fixme when contained in a commented out block? Thanks!