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

bpo-38741: Definition of multiple ']' in header configparser #17129

Merged
merged 4 commits into from Jul 13, 2021

Conversation

@jsnklln
Copy link
Contributor

@jsnklln jsnklln commented Nov 12, 2019

I've changed up the regex for finding section headers.
I don't know if this covers every case but it covers
all the cases I could come up with. The docs don't really
call out if ] should be allowed in section headers but
I can't think of any reason it shouldn't be.

This change keeps the existing failure if you try and
define a section with no name, like [].

https://bugs.python.org/issue38741

I've changed up the regex for finding section headers.
I don't know if this covers every case but it covers
all the cases I could come up with.  The docs don't really
call out if ] should be allowed in section headers but
I can't think of any reason it shouldn't be.

This change keeps the existing failure if you try and
define a section with no name, like [].
@brandtbucher
Copy link
Member

@brandtbucher brandtbucher commented Nov 12, 2019

Thanks @jsnklln!

Copy link
Member

@brandtbucher brandtbucher left a comment

The patch itself looks good, but I don't know enough about this module to decide if this behavior is technically correct or not. @ambv, thoughts?

Also, this probably needs a test or two. Can you include them in test_configparser.py?

@jsnklln
Copy link
Contributor Author

@jsnklln jsnklln commented Nov 12, 2019

@brandtbucher adding some tests sounds like fun. I'm totally open to opinions on how to best handle it.

@mark99i
Copy link

@mark99i mark99i commented Nov 13, 2019

its is a my commit!
46751c6
or was it not customary to point to the source?

@jsnklln
Copy link
Contributor Author

@jsnklln jsnklln commented Nov 13, 2019

@mark99i I didn't realize we were working on the same bug. There's not a PR on the bug tracker and I'm pretty sure I pulled from changes master yesterday but I hay not have.

One note. Using .* allows [] to be considered valid where with the previous version it threw an exception. ConfigParser doesn't allow definitions without a section, I'm pretty sure that's still true, so I don't know where those would go if they were allowed.

Jason Killen added 2 commits Nov 13, 2019
read correctly.  Included a check for key=value because
the original issue mentioned that it might not be working.
@jsnklln
Copy link
Contributor Author

@jsnklln jsnklln commented Nov 13, 2019

@brandtbucher tests have been pushed.

Copy link
Member

@brandtbucher brandtbucher left a comment

Thanks @jsnklln! I recommended that #17086 be closed in favor of this, since it contains tests and handles the empty case.

@jsnklln
Copy link
Contributor Author

@jsnklln jsnklln commented Nov 13, 2019

@brandtbucher thanks. @mark99i sorry we got our wires crossed up, I'll gladly split the credit.

@jsnklln
Copy link
Contributor Author

@jsnklln jsnklln commented Dec 4, 2019

@brandtbucher is this waiting on something to be merged? Not being pushy just want to make sure I've got all my t's dotted.

@brandtbucher brandtbucher requested a review from ambv Feb 21, 2020
@brandtbucher
Copy link
Member

@brandtbucher brandtbucher commented Jul 17, 2020

Closing and reopening to trigger CI.

@brandtbucher
Copy link
Member

@brandtbucher brandtbucher commented Jul 17, 2020

@ambv This patch is simple and looks fine to me. Do you mind clearing up whether or not it is correct to allow ] in header names? If so, it can probably be merged.

@ambv ambv merged commit 2924bb1 into python:main Jul 13, 2021
10 checks passed
@miss-islington
Copy link
Contributor

@miss-islington miss-islington commented Jul 13, 2021

Thanks @jsnklln for the PR, and @ambv for merging it 🌮🎉.. I'm working now to backport this PR to: 3.10.
🐍🍒🤖

@bedevere-bot
Copy link

@bedevere-bot bedevere-bot commented Jul 13, 2021

GH-27110 is a backport of this pull request to the 3.10 branch.

miss-islington added a commit to miss-islington/cpython that referenced this issue Jul 13, 2021
…H-17129)

Co-authored-by: Jason Killen <jason.killen@windsorcircle.com>
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
(cherry picked from commit 2924bb1)

Co-authored-by: jsnklln <jsnklln@gmail.com>
@ambv
Copy link
Contributor

@ambv ambv commented Jul 13, 2021

Sorry for taking so long to look at this 🤦🏻‍♂️

ambv pushed a commit that referenced this issue Jul 13, 2021
… (#27110)

Co-authored-by: Jason Killen <jason.killen@windsorcircle.com>
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
(cherry picked from commit 2924bb1)

Co-authored-by: jsnklln <jsnklln@gmail.com>
JuniorJPDJ added a commit to JuniorJPDJ/cpython that referenced this issue Aug 12, 2021
…H-17129)

Co-authored-by: Jason Killen <jason.killen@windsorcircle.com>
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
7 participants