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

Stop using the cgi module, deprecated in Python 3.11 per PEP 594 #6708

Merged
merged 3 commits into from
Apr 23, 2022

Conversation

scop
Copy link
Contributor

@scop scop commented Apr 20, 2022

What do these changes do?

Removes use of the cgi module which is deprecated in 3.11+ per https://peps.python.org/pep-0594/#cgi

Are there changes in behavior for the user?

No

Related issue number

No

Checklist

  • I think the code is well written
  • Unit tests for the changes exist
  • Documentation reflects the changes
  • If you provide code modification, please add yourself to CONTRIBUTORS.txt
    • The format is <Name> <Surname>.
    • Please keep alphabetical order, the file is sorted by names.
  • Add a new news fragment into the CHANGES folder
    • name it <issue_id>.<type> for example (588.bugfix)
    • if you don't have an issue_id change it to the pr id after creating the pr
    • ensure type is one of the following:
      • .feature: Signifying a new feature.
      • .bugfix: Signifying a bug fix.
      • .doc: Signifying a documentation improvement.
      • .removal: Signifying a deprecation or removal of public API.
      • .misc: A ticket has been closed, but it is not of interest to users.
    • Make sure to use full sentences with correct case and punctuation, for example: "Fix issue with non-ascii contents in doctest text files."

@scop scop requested a review from asvetlov as a code owner April 20, 2022 19:41
@scop
Copy link
Contributor Author

scop commented Apr 20, 2022

Untested and mostly for discussion purposes for now, quite likely some refinements would be in order.

scop added a commit to scop/pytekukko that referenced this pull request Apr 20, 2022
@codecov
Copy link

codecov bot commented Apr 20, 2022

Codecov Report

Merging #6708 (b2c51ac) into master (65bf205) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master    #6708   +/-   ##
=======================================
  Coverage   93.36%   93.36%           
=======================================
  Files         104      104           
  Lines       30628    30631    +3     
  Branches     3077     3077           
=======================================
+ Hits        28596    28599    +3     
  Misses       1859     1859           
  Partials      173      173           
Flag Coverage Δ
unit 93.28% <100.00%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
aiohttp/helpers.py 95.78% <100.00%> (+0.02%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 65bf205...b2c51ac. Read the comment docs.

scop added a commit to scop/pytekukko that referenced this pull request Apr 20, 2022
scop added a commit to scop/pylttoaine that referenced this pull request Apr 20, 2022
aiohttp/helpers.py Outdated Show resolved Hide resolved
scop and others added 2 commits April 23, 2022 10:23
Co-authored-by: Sam Bull <aa6bs0@sambull.org>
@psf-chronographer psf-chronographer bot added the bot:chronographer:provided There is a change note present in this PR label Apr 23, 2022
@Dreamsorcerer Dreamsorcerer merged commit a045480 into aio-libs:master Apr 23, 2022
@patchback
Copy link
Contributor

patchback bot commented Apr 23, 2022

Backport to 3.9: 💔 cherry-picking failed — conflicts found

❌ Failed to cleanly apply a045480 on top of patchback/backports/3.9/a0454809e3fd15f70c95d794addf005d9bd95b23/pr-6708

Backporting merged PR #6708 into master

  1. Ensure you have a local repo clone of your fork. Unless you cloned it
    from the upstream, this would be your origin remote.
  2. Make sure you have an upstream repo added as a remote too. In these
    instructions you'll refer to it by the name upstream. If you don't
    have it, here's how you can add it:
    $ git remote add upstream https://github.com/aio-libs/aiohttp.git
  3. Ensure you have the latest copy of upstream and prepare a branch
    that will hold the backported code:
    $ git fetch upstream
    $ git checkout -b patchback/backports/3.9/a0454809e3fd15f70c95d794addf005d9bd95b23/pr-6708 upstream/3.9
  4. Now, cherry-pick PR Stop using the cgi module, deprecated in Python 3.11 per PEP 594 #6708 contents into that branch:
    $ git cherry-pick -x a0454809e3fd15f70c95d794addf005d9bd95b23
    If it'll yell at you with something like fatal: Commit a0454809e3fd15f70c95d794addf005d9bd95b23 is a merge but no -m option was given., add -m 1 as follows intead:
    $ git cherry-pick -m1 -x a0454809e3fd15f70c95d794addf005d9bd95b23
  5. At this point, you'll probably encounter some merge conflicts. You must
    resolve them in to preserve the patch from PR Stop using the cgi module, deprecated in Python 3.11 per PEP 594 #6708 as close to the
    original as possible.
  6. Push this branch to your fork on GitHub:
    $ git push origin patchback/backports/3.9/a0454809e3fd15f70c95d794addf005d9bd95b23/pr-6708
  7. Create a PR, ensure that the CI is green. If it's not — update it so that
    the tests and any other checks pass. This is it!
    Now relax and wait for the maintainers to process your pull request
    when they have some cycles to do reviews. Don't worry — they'll tell you if
    any improvements are necessary when the time comes!

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

@Dreamsorcerer
Copy link
Member

If you could also handle the backport, that would be great.

scop added a commit to scop/aiohttp that referenced this pull request May 5, 2022
…-libs#6708)

* Stop using the cgi module, deprecated in Python 3.11 per PEP 594

https://peps.python.org/pep-0594/#cgi

* Simplify creating params dict

Co-authored-by: Sam Bull <aa6bs0@sambull.org>

* Create 6708.misc

Co-authored-by: Sam Bull <aa6bs0@sambull.org>
(cherry picked from commit a045480)
@scop scop deleted the refactor/cgi-deprecated branch May 5, 2022 18:03
@scop
Copy link
Contributor Author

scop commented May 5, 2022

#6734

scop added a commit to scop/aiohttp that referenced this pull request May 5, 2022
…-libs#6708)

* Stop using the cgi module, deprecated in Python 3.11 per PEP 594

https://peps.python.org/pep-0594/#cgi

* Simplify creating params dict

Co-authored-by: Sam Bull <aa6bs0@sambull.org>

* Create 6708.misc

Co-authored-by: Sam Bull <aa6bs0@sambull.org>
(cherry picked from commit a045480)
Dreamsorcerer pushed a commit that referenced this pull request May 6, 2022
…) (#6734)

* Stop using the cgi module, deprecated in Python 3.11 per PEP 594

https://peps.python.org/pep-0594/#cgi

* Simplify creating params dict

Co-authored-by: Sam Bull <aa6bs0@sambull.org>

* Create 6708.misc

Co-authored-by: Sam Bull <aa6bs0@sambull.org>
(cherry picked from commit a045480)
@patchback
Copy link
Contributor

patchback bot commented Sep 10, 2022

Backport to 3.8: 💔 cherry-picking failed — conflicts found

❌ Failed to cleanly apply a045480 on top of patchback/backports/3.8/a0454809e3fd15f70c95d794addf005d9bd95b23/pr-6708

Backporting merged PR #6708 into master

  1. Ensure you have a local repo clone of your fork. Unless you cloned it
    from the upstream, this would be your origin remote.
  2. Make sure you have an upstream repo added as a remote too. In these
    instructions you'll refer to it by the name upstream. If you don't
    have it, here's how you can add it:
    $ git remote add upstream https://github.com/aio-libs/aiohttp.git
  3. Ensure you have the latest copy of upstream and prepare a branch
    that will hold the backported code:
    $ git fetch upstream
    $ git checkout -b patchback/backports/3.8/a0454809e3fd15f70c95d794addf005d9bd95b23/pr-6708 upstream/3.8
  4. Now, cherry-pick PR Stop using the cgi module, deprecated in Python 3.11 per PEP 594 #6708 contents into that branch:
    $ git cherry-pick -x a0454809e3fd15f70c95d794addf005d9bd95b23
    If it'll yell at you with something like fatal: Commit a0454809e3fd15f70c95d794addf005d9bd95b23 is a merge but no -m option was given., add -m 1 as follows intead:
    $ git cherry-pick -m1 -x a0454809e3fd15f70c95d794addf005d9bd95b23
  5. At this point, you'll probably encounter some merge conflicts. You must
    resolve them in to preserve the patch from PR Stop using the cgi module, deprecated in Python 3.11 per PEP 594 #6708 as close to the
    original as possible.
  6. Push this branch to your fork on GitHub:
    $ git push origin patchback/backports/3.8/a0454809e3fd15f70c95d794addf005d9bd95b23/pr-6708
  7. Create a PR, ensure that the CI is green. If it's not — update it so that
    the tests and any other checks pass. This is it!
    Now relax and wait for the maintainers to process your pull request
    when they have some cycles to do reviews. Don't worry — they'll tell you if
    any improvements are necessary when the time comes!

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

webknjaz pushed a commit that referenced this pull request Sep 11, 2022
…) (#6734)

* Stop using the cgi module, deprecated in Python 3.11 per PEP 594

https://peps.python.org/pep-0594/#cgi

* Simplify creating params dict

Co-authored-by: Sam Bull <aa6bs0@sambull.org>

* Create 6708.misc

Co-authored-by: Sam Bull <aa6bs0@sambull.org>
(cherry picked from commit a045480)
@webknjaz
Copy link
Member

Backported to 3.8 as cb79f0d