-
-
Notifications
You must be signed in to change notification settings - Fork 32.3k
bpo-46794: Bump up the libexpat version into 2.4.6 #31487
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
Conversation
@hartwork Please take a look |
This comment was marked as resolved.
This comment was marked as resolved.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@hartwork Please take a look
Hi @corona10, I had a look at it now. I used an approach similar to #31022 (comment) except with Docker automation, details below.
Technically, the first commit bpo-46794: Bump up the libexpat version into 2.4.6
drops the pyexpatns.h
integration, so it does more than advertized (and would fail in git bisect
context), and then that "regression" is reverted in a new commit. While that's likely considered picky, I would suggest to either
- a) squash the two commits together to resolve the semantic mismatch and bisect failure situation or
- b) turn it into a 3-commit sandwich where first
pyexpatns.h
integration is dropped to yield vanilla Expat 2.4.4, then an update to 2.4.6, and then bringingpyexpatns.h
integration back.
Just my 2 cents. For my Dockerfile
, it's this:
# Copyright (c) 2022 Sebastian Pipping <sebastian@pipping.org>
# Licensed under the Apache license version 2.0
FROM alpine
RUN apk add --update \
diffutils \
git \
sed \
&& \
git clone --depth 1 https://github.com/python/cpython cpython-main \
&& \
( cd cpython-main && git rev-parse HEAD ) \
&& \
git clone --depth 1 --branch bpo-46794 https://github.com/corona10/cpython corona10-bpo-46794 \
&& \
( cd corona10-bpo-46794 && git rev-parse HEAD ) \
&& \
git config --global advice.detachedHead false \
&& \
git clone --depth 1 --branch R_2_4_4 https://github.com/libexpat/libexpat libexpat_2_4_4 \
&& \
git clone --depth 1 --branch R_2_4_6 https://github.com/libexpat/libexpat libexpat_2_4_6 \
&& \
diff -r -u libexpat_2_4_4/expat/lib/ cpython-main/Modules/expat/ | tee 2-4-4.diff \
&& \
diff -r -u libexpat_2_4_6/expat/lib/ corona10-bpo-46794/Modules/expat/ | tee 2-4-6.diff \
&& \
sed -e '/^Only in /d' -e '/^\(+++\|---\) /d' -e '/^diff /d' -i 2-4-4.diff 2-4-6.diff \
&& \
diff -u 2-4-4.diff 2-4-6.diff \
&& \
echo 'Diff is good.'
Best, Sebastian
Note that CPython PRs are squashed when merged. |
@hroncok I assume that's an "always" then. Excellent point 👍 |
Thanks @corona10 for the PR 🌮🎉.. I'm working now to backport this PR to: 3.7, 3.8, 3.9, 3.10. |
GH-31518 is a backport of this pull request to the 3.10 branch. |
(cherry picked from commit 1935e1c) Co-authored-by: Dong-hee Na <donghee.na@python.org>
GH-31519 is a backport of this pull request to the 3.9 branch. |
(cherry picked from commit 1935e1c) Co-authored-by: Dong-hee Na <donghee.na@python.org>
(cherry picked from commit 1935e1c) Co-authored-by: Dong-hee Na <donghee.na@python.org>
GH-31520 is a backport of this pull request to the 3.8 branch. |
GH-31521 is a backport of this pull request to the 3.7 branch. |
(cherry picked from commit 1935e1c) Co-authored-by: Dong-hee Na <donghee.na@python.org>
(cherry picked from commit 1935e1c) Co-authored-by: Dong-hee Na <donghee.na@python.org>
https://bugs.python.org/issue46794