Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revert to treating exclude in .ini as single string #11881

Merged

Conversation

posita
Copy link
Contributor

@posita posita commented Jan 1, 2022

Partially reverts #11329 (with respect to .ini documentation).
Modifies existing unit tests.

Fixes #11830.

Partially reverts python#11329 (with respect to `.ini` documentation).
Modifies existing unit tests.

Fixes python#11830.
@posita
Copy link
Contributor Author

posita commented Jan 1, 2022

Screen Shot 2021-12-31 at 19 44 35

Docs build cleanly with no broken links associated with this change.

Copy link
Contributor

@mawillcockson mawillcockson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks so much for doing all the hard work!

docs/source/config_file.rst Outdated Show resolved Hide resolved
which mypy should ignore while recursively discovering files to check.
Use forward slashes on all platforms.

.. code-block:: ini

[mypy]
exclude =
exclude = (?x)(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It might be worth it to note that the x flag causes whitespace, and lines beginning with #, to be ignored inside the pattern. A link to https://docs.python.org/3/library/re.html#re.X would save having to include further explanations.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Something like:

(?x) can be used as the first part of a regular expression. This corresponds to setting the re.X flag, which causes most witespace in the pattern to be ignored. Everything after an unescaped # is also ignored, allowing for comments. The Python re module has more information.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tinkered with it a bit. Let me know what you think.

Screen Shot 2022-01-01 at 19 12 39

The hyperlink goes to https://docs.python.org/3/library/re.html#re.X.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I love it! Thanks for accepting feedback.

posita and others added 2 commits January 1, 2022 18:26
Co-authored-by: Matthew W <matthew@willcockson.family>
Add explanation of regex in ``.ini`` example per @mawillcockson's suggestion.
@JukkaL JukkaL mentioned this pull request Jan 4, 2022
Copy link
Collaborator

@JukkaL JukkaL left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR and the detailed documentation update!

@JukkaL JukkaL merged commit ba0e9d6 into python:master Jan 4, 2022
JukkaL pushed a commit that referenced this pull request Jan 5, 2022
Partially reverts #11329 (with respect to `.ini` documentation).
Modifies existing unit tests.

Fixes #11830.

Co-authored-by: Matthew W <matthew@willcockson.family>
@hauntsaninja
Copy link
Collaborator

Hooray, thanks for fixing this!

@posita posita deleted the posita/0/multiple-excludes-in-ini-fix-11830 branch January 6, 2022 14:34
tushar-deepsource pushed a commit to DeepSourceCorp/mypy that referenced this pull request Jan 20, 2022
Partially reverts python#11329 (with respect to `.ini` documentation).
Modifies existing unit tests.

Fixes python#11830.

Co-authored-by: Matthew W <matthew@willcockson.family>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

handling of exclude configuration changed in an incompatible way in 0.930
4 participants